[ Weiter ] [ Seitenende ] [ Überkapitel ] [ Bitte Skript-Fehler melden ]
Komponente 1: Stämme ▸▸▸
|
Komponente 2: Definition der lexikalischen Grammatik
Welche Werte sind für welche Merkmale erlaubt? Welche Symbole grenzen Stamminformation, Werte
von Merkmale und mehrere Merkmalwertpaare voneinander ab?
Komponente 3: Regel für Imperfekt
Hänge ein te (an den Stamm), falls das Merkmal Tns den Wert Past hat. Beispiel: sag → sag-te- ; rede
→ rede-te- ; laus → laus-te-
#Rule Block 1
define R101 [ [..] -> {te} || _ "," [$[Tns":"Past]] ] ; define RB1 [R101]; |
Transduktor für Imperfektregel
|
Komponente 3: Regeln für Personalendungen
Hänge diejenige Personalendung an, welche der Merkmalsspezifikation von Person und Numerus
entspricht!
Beispiel: sag → sag-st ; rede-te → rede-te-n
#Rule Block 2 - Person/Number
define R201 [ [..] -> {e} || _ "," [$[Per ":" 1 " " Num ":" Sg]] ] ; define R202 [ [..] -> {st} || _ "," [$[Per ":" 2 " " Num ":" Sg]] ] ; define R203 [ [..] -> {t} || _ "," [$[Per ":" 3 " " Num ":" Sg]] ] ; define R204 [ [..] -> {en} || _ "," [$[Per ":" 1 " " Num ":" Pl]] ] ; define R205 [ [..] -> {t} || _ "," [$[Per ":" 2 " " Num ":" Pl]] ] ; define R206 [ [..] -> {en} || _ "," [$[Per ":" 3 " " Num ":" Pl]] ] ; define RB2 [ R201 .o. R202 .o. R203 .o. R204 .o. R205 .o. R206 ]; |
Komponente 4: Korrektur von Übergeneralisierung
# Im Imperfekt hat 3. Person kein -t am Wortende.
define M01 [ {tet} -> {te} || _ [$[Per":"3" "Num":"Sg" "Tns":"Past]] ] ; # In Stämmen mit e am Schluss fällt das e in der Personalendung weg. define M02 [ {ee} -> {e} ]; define MP [ M01 .o. M02 ]; |
Beispiel: rede-et; mal-te-t
Vor-Montage: Zusammenfügen von Stämmen und Regeln
xfst[0]: read regex VerbNC ;
xfst[1]: random-lower 5 zeigten,Per:3 Num:Pl Tns:Past lachen,Per:3 Num:Pl Tns:Pres lachtest,Per:2 Num:Sg Tns:Past hoffen,Per:1 Num:Pl Tns:Pres zeigte,Per:1 Num:Sg Tns:Past |
Komponente 5: Wortformen ausfiltern
# Zulässige Zeichen auf der Wortformen-Ebene
define L [ a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z|ä|ö|ü|ß ]; # define Cleanup [ \L -> 0 ]; # Bereinige die untere Sprache des Transduktors! define Verb [ VerbNC .o. Cleanup ]; |
[ Weiter ] [ Seitenbeginn ] [ Überkapitel ] [ Bitte Skript-Fehler melden ]