! Uebung 18:  
!
! Satzgrammatik fuer einfache deutsche Saetze und Wortgrammatik fuer Nomen 
!-------------------------------------------------------------------------

!====== Satzgrammatik ====================================================

:GRAMMAR grammatik

S ==> SA *
S ==> SF *
S ==> SWF *

! Aussagesatz
SA ==> NG(nom,?num,?gen) VG(?num) *
SA ==> NG(nom,?num,?gen) VG(?num) NGO *
SA ==> NG(nom,?num,?gen) VG(?num) AdvG NGO *
SA ==> NG(nom,?num,?gen) VG(?num) NGO AdvG *
SA ==> NG(nom,?num,?gen) VG(?num) Neg*
SA ==> PNG VG(?num) NG(nom,?num,?gen) *
SA ==> PNG VG(?num) NG(nom,?num,?gen) NGO *
SA ==> AdvG VG(?num) NG(nom,?num,?gen) *
SA ==> AdvG VG(?num) NG(nom,?num,?gen) NGO *
SA ==> AdvG VG(?num) NG(nom,?num,?gen) NGO PNG *
SA ==> NG(nom,?num,?gen) VG(?num) PNG NGO *
SF ==> VG(?num) NG(nom,?num,?gen) *
SF ==> VG(?num) NG(nom,?num,?gen) NGO *
SF ==> VG(?num) NG(nom,?num,?gen) PNG *
SF ==> VG(?num) NG(nom,?num,?gen) PNG NGO *
SWF ==> WFP SF *

NGO ==> NG(dat,?num,?gen) *
NGO ==> NG(akk,?num,?gen) *


! Nominalphrase
NG(?kas,?num,?gen) ==> N(?kas,?num,?gen) *
NG(?kas,?num,?gen) ==> Pers(?kas,?num,?gen) *
NG(?kas,?num,?gen) ==> Art(?kas,?num,?gen) N(?kas,?num,?gen) *
NG(?kas,?num,?gen) ==> Art(?kas,?num,?gen) AdjG(?kas,?num,?gen) 
                       N(?kas,?num,?gen) *
NG(?kas,?num,?gen) ==> AdjG(?kas,?num,?gen) N(?kas,?num,?gen) *
NG(?kas,?num,?gen) ==> NG(?kas,?num,?gen) NG(gen,?,?) * 
NG(?kas,?num,?gen) ==> NG(?kas,?num,?gen) PNG * 

NG(?kas,?num,?gen) ==> NG(?kas,?num,?gen1) Conj NG(?kas,?num,?gen2) *
NG(?kas,?num,?gen) ==> NG(?kas,?num,?gen1) Conj Neg NG(?kas,?num,?gen2) *
NG(?kas,pl,?gen) ==> NG(?kas,?num1,?gen1) Conj NG(?kas,?num2,?gen2) *
NG(?kas,pl,?gen) ==> NG(?kas,?num1,?gen1) Conj Neg NG(?kas,?num2,?gen2) *


! Praepositionalphrase
PNG ==> Praep(?kas) NG(?kas,?num,?gen) *


! Adjektivephrase
AdjP(?kas,?num,?gen) ==> Adj(?kas,?num,?gen) * 
AdjP(?kas,?num,?gen) ==> Adv Adj(?kas,?num,?gen) *  

AdjG(?kas,?num,?gen) ==> AdjP(?kas,?num,?gen) *
AdjG(?kas,?num,?gen) ==> AdjP(?kas,?num,?gen) Conj 
                         AdjP(?kas,?num,?gen) *
AdjG(?kas,?num,?gen) ==> AdjP(?kas,?num,?gen) Punct(c)
                         AdjP(?kas,?num,?gen) *
AdjG(?kas,?num,?gen) ==> AdjP(?kas,?num,?gen) Punct(c)
                         AdjP(?kas,?num,?gen) Conj 
                         AdjP(?kas,?num,?gen) *


! Verbalphrase
VG(?num) ==> V(?num) *


! Adverbialphrase
AdvG ==> AdvGP *
AdvG ==> AdvGN *
AdvGP ==> Adv *
AdvGP ==> Adv Adv *
AdvGN ==> Neg *
AdvGN ==> Neg Adv *

:END


!====== Wortgrammatik ====================================================

:GRAMMAR wortgrammatik

W ==> N(?kas,?num,?gen) *
W ==> Adj(?kas,?num,?gen) *
W ==> V(?num) *

N(?kas,?num,?gen) ==> NOM(?kas,?num,?gen) TERM *
N(?kas,?num,?gen) ==> NOM(?,?,?) SYL NOM(?kas,?num,?gen) TERM *

NOM(?kas,?num,?gen) ==> NS(?sk,?pk,?gen) NE(?sk,?kas,?num) *
NOM(?kas,?num,?gen) ==> NS(?sk,?pk,?gen) NE(?pk,?kas,?num) *

Adj(?kas,?num,?gen) ==> AdjS() AdjE(?kas,?num,?gen) *

V(?num) ==> VS() VE(?num) *
V(?num) ==> GermS() VE(?num) *

!------ Stammgrammatik ---------------------------------------------------

GermS ==> IKons LVok FKon1 *
GermS ==> IKons SVok FKons *

:END


!====== Morphemlexikon ===================================================

:LEXICON morphemlexikon

!------ Nomenstaemme ------------------------------------------------------

NS(sk1,pk4,f)  "ausstellung+"  "'?a_us,StElUN+"
NS(sk2,pk0,m)  "baum+"     "'ba_um+" 
NS(sk0,pk3,m)  "baeum+"     "'bO_ym+" 
NS(sk3,pk9,n)  "bild+"     "'bIld+"  
NS(sk1,pk1,f)  "blume+"    "'blu:m@+" 
NS(sk4,pk9,n)  "feld+"     "'fEld+" 
NS(sk2,pk0,m)  "fluss+"    "'flUs+" 
NS(sk0,pk3,m)  "fluess+"   "'flYs+"
NS(sk1,pk2,f)  "frau+"     "'fra_u+"
NS(sk3,pk0,m)  "grund+"    "'grUnd+"  
NS(sk0,pk7,m)  "gruend+"   "'grYnd+"
NS(sk2,pk0,n)  "haus"      "'ha_uz+"
NS(sk0,pk4,n)  "haeus"     "'hO_yz+"
NS(sk2,pk6,m)  "keller+"   "'kEl@r+"
NS(sk2,pk4,n)  "kind+"     "'kInd+"
NS(sk1,non,f)  "kunst+"	   "'kUnst+"  
NS(non,pk7,f)  "kuenst+"   "'kYnst+"
NS(sk2,pk0,m)  "mann+"     "'man+" 
NS(sk0,pk4,m)  "maenn+"    "'mEn+" 
NS(sk2,pk6,m)  "meister+"  "'ma_ist@r+"  
NS(sk2,non,n)  "museum+"   "mu'ze:Um+"
NS(non,pk1,n)  "musee+"	   "mu'ze:@+"  
NS(sk1,non,f)  "sucht+"	   "'zUxt+"  
NS(sk1,pk1,f)  "kugel+"	   "'ku:g@l+"
NS(sk1,pk1,f)  "wiese+"    "'vi:z@+"
NS(sk1,pk2,f)  "natur+"    "'natu:r+"


!------ Nomen-Proprium-Staemme -----------------------------------------

NS(sk2,pk2,m)  "heinrich+"  "'ha_inrIC+"
 
!------ Nomenendungen --------------------------------------------------

TERM()          "#"    "#"      ! Wortterminierung
SYL()           "$"    "-"      ! Silbengrenze

NE(sk1,?kas,sg) "$"    "$"      ! SK1: Blume, Frau, Wiese
NE(sk2,nom,sg)  "$"    "$"      ! SK2: Baum, Fluss, Haus, Kind, Mann
NE(sk2,gen,sg)  "es"   "@s"
NE(sk2,gen,sg)  "s"    "s"
NE(sk2,dat,sg)  "$"    "$"
NE(sk2,dat,sg)  "e"    "@"
NE(sk2,akk,sg)  "$"    "$"
NE(sk3,nom,sg)  "$"    "$"      ! SK3: Bild, Grund
NE(sk3,gen,sg)  "s"    "s"
NE(sk3,dat,sg)  "$"    "$"
NE(sk3,akk,sg)  "$"    "$"
NE(sk4,nom,sg)  "$"    "$"  
NE(sk4,gen,sg)  "s"    "s"  
NE(sk4,gen,sg)  "es"   "@s"  
NE(sk4,dat,sg)  "$"    "$"  
NE(sk4,dat,sg)  "e"    "@"  
NE(sk4,akk,sg)  "$"    "$"  

NE(pk1,?kas,pl) "n"   "n"      ! PK1: Blumen, Wiesen
NE(pk2,?kas,pl) "en"  "@n"     ! PK2: Frauen
NE(pk3,nom,pl)  "e"   "@"      ! PK3: Baeume, Fluesse
NE(pk3,gen,pl)  "e"   "@"
NE(pk3,dat,pl)  "en"  "@n"
NE(pk3,akk,pl)  "e"   "@"
NE(pk4,nom,pl)  "er"  "@r"     ! PK4: Haeuser, Kinder, Maenner, 
NE(pk4,gen,pl)  "er"  "@r"
NE(pk4,dat,pl)  "ern" "@rn" 
NE(pk4,akk,pl)  "er"  "@r" 
NE(pk6,nom,pl)  "$"   "$"
NE(pk6,gen,pl)  "$"   "$"
NE(pk6,dat,pl)  "n"   "n"
NE(pk6,akk,pl)  "$"   "$"
NE(pk7,nom,pl)  "e"   "@"
NE(pk7,gen,pl)  "e"   "@"
NE(pk7,dat,pl)  "en"  "@n"
NE(pk7,akk,pl)  "e"   "@"
NE(pk9,nom,pl)  "er"  "@r"
NE(pk9,gen,pl)  "er"  "@r"
NE(pk9,dat,pl)  "ern" "@rn"
NE(pk9,akk,pl)  "er"  "@r"

!------ Adjektivstaemme ------------------------------------------------

AdjS()  "alt+"        "'?alt+"  
AdjS()  "gross+"      "'gro:s+"
AdjS()  "gruen+"      "'gry:n+"
AdjS()  "gebaut+"     "g@'ba_ut+"
AdjS()  "klein+"      "'kla_in+"
AdjS()  "modern+"     "mo'dErn+"  
AdjS()  "neu+"        "'nO_y+"  
AdjS()  "praktisch+"  "'praktIS+"
AdjS()  "rechtlich+"  "'rECtlIC+"
AdjS()  "schwarz+"    "'Svart_s+"
AdjS()  "theologisch+"  "teo'lo:gIS+"

!------ Adjektivendungen -----------------------------------------------

AdjE(nom,sg,?gen)   "e#"   "@#"
AdjE(gen,sg,?gen)   "en#"  "@n#"
AdjE(dat,sg,?gen)   "en#"  "@n#"
AdjE(akk,sg,m)      "en#"  "@n#"
AdjE(akk,sg,f)      "e#"   "@#"
AdjE(akk,sg,n)      "e#"   "@#"
AdjE(?kas,pl,?gen)  "en#"  "@n#"

AdjE(?kas,pl,?gen)  "e#"  "@#"

!------ Verbstaemme ----------------------------------------------------

VS()  "blueh+"  "'bly:+"
VS()  "fuehr+"  "'fy:r+"  
VS()  "moder+"  "'mo:d@r+"  
VS()  "sing+"   "zIN+"
VS()  "steh+"   "'Ste:+"
VS()  "such+"   "'zu:x+"  
VS()  "besuch+" "b@'zu:x+"  
VS()  "spiel+"  "'Spi:l+"  

!------ Verbendungen ---------------------------------------------------

VE(sg)  "e#"   "@#"
VE(sg)  "st#"  "st#"
VE(sg)  "t#"   "t#"
VE(sg)  "te#"  "t@#"
VE(pl)  "en#"  "@n#"
VE(pl)  "n#"   "n#"
VE(pl)  "t#"   "t#"
VE(pl)  "ten#" "t@n#"

!------ initiale und finale Konsonanten; Lang- und Kurzvokale ----------

IKons   "r"     "'r"  
IKons   "s"     "'z"  
IKons   "w"     "'v"  
IKons   "fl"    "'fl"  
IKons   "sp"    "'Sp"  
IKons   "schl"  "'S"  
SVok    "i"     "I" 
LVok    "a"     "a:" 
LVok    "ae"    "E:" 
LVok    "ie"    "i:"
LVok    "oe"    "2:"
LVok    "u"     "u:" 
FKon1   "f+"    "f+" 
FKon1   "g+"    "g+" 
FKon1   "l+"    "l+" 
FKons   "ng+"   "N+" 
FKons   "nk+"   "Nk+" 

:END


!====== Vollformenlexikon =============================================

:LEXICON lexikon

WFP  "wo"   "'vo:"
WFP  "was"  "'vas"

Art(nom,sg,m)     "der"  "de:r" 
Art(gen,sg,m)     "des"  "dEs" 
Art(dat,sg,m)     "dem"  "de:m"
Art(akk,sg,m)     "den"  "de:n" 
Art(nom,sg,f)     "die"  "di:"
Art(gen,sg,f)     "der"  "de:r" 
Art(dat,sg,f)     "der"  "de:r" 
Art(akk,sg,f)     "die"  "di:"
Art(nom,sg,n)     "das"  "das"
Art(gen,sg,n)     "des"  "dEs" 
Art(dat,sg,n)     "dem"  "de:m"
Art(akk,sg,n)     "das"  "das"
Art(nom,pl,?gen)  "die"  "di:"
Art(gen,pl,?gen)  "der"  "de:r" 
Art(dat,pl,?gen)  "den"  "de:n" 
Art(akk,pl,?gen)  "die"  "di:"

Pers(nom,sg,m)    "er"   "'?e:r"
Pers(dat,sg,m)    "ihm"  "'?i:m"      
Pers(akk,sg,m)    "ihn"  "'?i:n"      
Pers(nom,sg,f)    "sie"  "'zi:"      
Pers(dat,sg,f)    "ihr"  "'?i:r"      
Pers(akk,sg,f)    "sie"  "'zi:"      
Pers(nom,sg,n)    "es"   "'?Es"      
Pers(dat,sg,n)    "ihm"  "'?i:m"      
Pers(akk,sg,n)    "es"   "'?Es"      
Pers(nom,pl,?gen) "sie"  "'zi:"      

Praep(dat)        "an"   "?an"
Praep(dat)        "auf"  "?a_uf"
Praep(akk)        "auf"  "?a_uf"
Praep(dat)        "aus"  "?a_us"
Praep(akk)        "fuer"  "'fy:r"  
Praep(dat)        "im"   "'?Im"  
Praep(akk)        "in"   "'?In"  
Praep(akk)        "ins"  "'?Ins"  
Praep(dat)        "mit"  "'mIt"

Conj()            "und"  "?Unt"

Punct(c)          ","    "$"

V(sg)             "sieht"    "'zi:t"
V(pl)             "sehen"    "'ze:@n"

Adv()             "abends"       "'?a:b@nt_s"  
Adv()             "fruehmorgens" ",fry:'mOrg@ns"  
Adv()             "ganz"         "'gant_s"  
Adv()             "gestern"      "'gEst@rn"  
Adv()             "heute"        "'hO_yt@"
Adv()             "modern"       "mo'dErn"
Adv()             "morgen"       "'mOrg@n"
Adv()             "morgens"      "'mOrg@ns"  
Adv()             "wieder"       "'vi:d@r"  

Neg()             "nicht"       "'nICt"  

:END


