Relativsätze

Relativsätze

Relativsätze können innerhalb einer NP (Beispiele 1-3) und am Satzende (extraponiert) (Beispiel 4) auftauchen

  1. Der Astronom, der lacht, entdeckt den Planeten
  2. Der Astronom entdeckt den Planeten, der lacht
  3. Der Astronom hat den Planeten, der lacht, entdeckt.
  4. Der Astronom hat den Planeten entdeckt, der lacht.
%Regeln
s --> np([nom,Num],MoeglicheRs1), vp(Num,MoeglicheRs2),
{append(MoeglicheRs1,MoeglicheRs2,MoeglicheRs)},
optionaler_rs(MoeglicheRs,_).

optionaler_rs(Mm,Mm) --> [].
optionaler_rs(MoeglicheMerkmale,[]) -->
{member(Mm,MoeglicheMerkmale)}, rs(Mm).

%Relativsätze erhalten Numerus und Genus von der NP, zu der sie gehören
%Kasus wird vom Verb des Relativsatzes dem Relativpronomen zugewiesen
rs([Num,Gen]) --> rp([nom,Num,Gen|_]), vi(Num).
rs([Num,Gen]) --> rp([nom,Num,Gen|_]), np([akk|_],_), vt(Num).
rs([Num,Gen]) --> rp([nom,Num,Gen|_]), np([akk,NumV|_],_), vt(NumV).

np([Kas,Num],MmRels) --> art([Kas,Num,Gen]), n([Kas,Num,Gen]), optionaler_rs([[Num,Gen]],MmRels).

vp(Num,[]) --> vi(Num).
vp(Num,MoeglicheRs) --> vt(Num), np([akk,_],MoeglicheRs).


%lexikonregeln
vi(sing) --> [weint].
vi(sing) --> [lacht].

vt(sing) --> [entdeckt].

art([nom,sing,mask]) --> [der].
art([akk,sing,mask]) --> [den].

n([nom,sing,mask]) --> [astronom].
n([akk,sing,mask]) --> [planeten].

rp([nom,sing,mask]) --> [der].
rp([akk,sing,mask]) --> [den].



Kurs-Startseite