Der Text einer PATR-Grammatik ist vergleichbar mit dem "Quellkode" eines Computer-Programmes. Der PATR-Formalismus ist quasi eine Programmiersprache für eine maschinelle synaktische Analyse. Für diese Sprache gelten strenge syntaktische Regeln, die beachtet werden müssen, damit das Programm korrekt arbeiten kann. Eine Grammatik besteht zunächst aus einer Menge von Phrasenstruktur-Regeln (PS-Regeln).
Eine Grammatik-Regel in PC-PATR besteht aus folgenden Teilen (in der angegebenen Reihenfolge):
{}
) ->
) oder Gleichheitszeichen (=
)
.
) Rule | {Derivation} | |||
Stamm | -> | Wurzel Suffix | . |
Das Layout ist unwichtig. Man könnte alles auch hintereinander schreiben, z.B.:
Rule {Derivation} Stamm -> Wurzel Suffix .
Damit mit unserer Grammatik Sätze analysiert werden können, brauchen wir ein Lexikon, das die in den Daten vorkommenden Wortformen und deren Eigenschaften enthält. Das Lexikon besteht aus einer Folge von Lexikoneinträgen, die in der einfachsten Form folgende Gestalt haben:
\w Wortform \c Kategorie
z.B.
\w Mary \c NP
Nachdem Grammatik und Lexikon erstellt worden sind, müssen wir testen, ob die Grammatik auch die Daten, von denen wir ausgegangen sind, korrekt analysieren kann.
Jetzt sind wir soweit, dass wir Sätze analysieren lassen können. Natürlich können nur Sätze analysiert werden, die den Regeln unsere Grammatik entsprechen und die Wortformen aus dem Lexikon enthalten.
Wenn alles richtig gelaufen ist, müsste dann in dem Textfeld Parse Output folgende Ausgabe erscheinen:
1: S ____|____ NP VP Mary laughed S: [ cat: S ] 1 parse found
;Grammatik psg0.grm Rule {Einfacher Satz} S -> NP VP: ;Lexikon psg0.lex \w Mary \c NP \w John \c NP \w Susan \c NP \w Tom \c NP \w laughed \c VP \w jumped \c VP \w cried \c VP \w ran \c VP