スキーマとプリンシプルは,"enju/schema.lil" で実装されています. スキーマの名前は,"enju/types.lil" で実装されています.
HPSG 標準の以下のスキーマが実装されています.
スキーマ | プログラムでの型名 | 説明 |
---|---|---|
Head-Subject Schema | subj_head_schema | 動詞などが主語をとる |
Head-Complement Schema | head_comp_schema | 動詞や前置詞が目的語をとる |
Head-Specifier Schema | spec_head_schema | 名詞が指定詞(冠詞など)をとる |
Head-Modifier Schema (left head) | head_mod_schema | 主辞を右側から修飾する |
Head-Modifier Schema (right head) | mod_head_schema | 主辞を左側から修飾する |
Head-Filler Schema | filler_head_schema | 主辞が関係代名詞などをとる |
これに加えて,その他の構文をサポートするために以下のスキーマが実装され ています.
プログラムでの型名 | 説明 |
---|---|
head_relative_schema | 関係詞節が先行詞を修飾する |
coord_right_schema | 並列接続詞が右側の句をとる |
coord_left_schema | 並列接続詞が左側の句をとる |
empty_filler_head_schema | 空の関係代名詞をとる |
empty_spec_head_schema | 空の指定詞をとる |
free_relative_schema | 関係詞節を自由関係詞節にする |
プリンシプルは,以下のものが実装されています.
プログラムでの型名 | 説明 |
---|---|
head_feature_principle | 主辞の HEAD が親に伝わる |
nonlocal_feature_principle | 親の INHER:{QUE,REL,SLASH} のうち,実際に制約が存在するのは最大1個である |
semantic_binary_principle | 主辞の CONT が親に伝わり,非主辞の CONT は RELS に入る |
semantic_unary_principle | 娘の CONT が親に伝わる |
phonology_principle | 親の PHON は娘たちの PHON をつなげたものになる |
adjacency_principle | PROB_FEATURE:{L_ADJAC/R_ADJAC}はそれぞれ左/右側の娘から伝わる |
その他に,確率モデルの素性として使う情報を伝えるためのプリンシプルが実装されています.
HPSG 理論におけるその他のプリンシプル(Valence Principle など)は, それぞれのスキーマの実装の中にハードコードされています.