added EmptyRelSlash in ExtraBul and ExtraGer. For Bulgarian and German the function simply inserts the default relative pronoun

This commit is contained in:
kr.angelov
2012-09-27 09:28:31 +00:00
parent 1b571d69ff
commit 6084647328
5 changed files with 24 additions and 12 deletions

View File

@@ -22,6 +22,11 @@ concrete ExtraBul of ExtraBulAbs = CatBul **
spec = Indef
} ;
EmptyRelSlash slash = {
s = \\t,a,p,agr => slash.c2.s ++ whichRP ! agr.gn ++ slash.s ! agr ! t ! a ! p ! Main ;
role = RObj Acc
} ;
i8fem_Pron = mkPron "àç" "ìåí" "ìè" "ìîé" "ìîÿ" "ìîÿò" "ìîÿ" "ìîÿòà" "ìîå" "ìîåòî" "ìîè" "ìîèòå" (GSg Fem) P1 ;
i8neut_Pron = mkPron "àç" "ìåí" "ìè" "ìîé" "ìîÿ" "ìîÿò" "ìîÿ" "ìîÿòà" "ìîå" "ìîåòî" "ìîè" "ìîèòå" (GSg Neut) P1 ;

View File

@@ -47,6 +47,13 @@ concrete ExtraGer of ExtraGerAbs = CatGer **
isPron = False
} ;
EmptyRelSlash slash = {
s = \\m,t,a,p,gn =>
appPrep slash.c2 (\\k => usePrepC k (\c -> relPron ! gn ! c)) ++
slash.s ! m ! t ! a ! p ! Sub ;
c = (prepC slash.c2.c).c
} ;
lincat
VPS = {s : Order => Agr => Str} ;
[VPS] = {s1,s2 : Order => Agr => Str} ;

View File

@@ -1,6 +1,6 @@
abstract ExtraGerAbs = Extra [
VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,
VPS,ListVPS,BaseVPS,ConsVPS,ConjVPS,MkVPS,PredVPS,
VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,ClSlash,RCl,
VPS,ListVPS,BaseVPS,ConsVPS,ConjVPS,MkVPS,PredVPS,EmptyRelSlash,
Temp,Tense,Pol,S,NP,VV,VP,Conj,IAdv,IComp,ICompAP,IAdvAdv,Adv,AP] ** {
fun

View File

@@ -36,14 +36,4 @@ concrete RelativeGer of Relative = CatGer ** open ResGer in {
IdRP = {s = relPron ; a = RNoAg} ;
oper
relPron : GenNum => Case => Str = \\gn,c =>
case <gn,c> of {
<GSg Fem,Gen> => "deren" ;
<GSg g,Gen> => "dessen" ;
<GPl,Dat> => "denen" ;
<GPl,Gen> => "deren" ;
_ => artDef ! gn ! c
} ;
}

View File

@@ -749,4 +749,14 @@ resource ResGer = ParamX ** open Prelude in {
{s : PCase => Str ; a : Agr} -> {s : PCase => Str ; a : Agr ; isPron : Bool} = \np ->
np ** {isPron = False} ;
oper
relPron : GenNum => Case => Str = \\gn,c =>
case <gn,c> of {
<GSg Fem,Gen> => "deren" ;
<GSg g,Gen> => "dessen" ;
<GPl,Dat> => "denen" ;
<GPl,Gen> => "deren" ;
_ => artDef ! gn ! c
} ;
}