reflexive possessives in Fin and Ger ; in Fin, it also makes a difference in the recognized strings, because it always involves pro-drop unlike ordinary possessives

This commit is contained in:
aarne
2016-06-07 13:59:09 +00:00
parent 9a83e683a3
commit b528a5b4a9
5 changed files with 70 additions and 2 deletions

View File

@@ -270,4 +270,27 @@ concrete ExtraFin of ExtraFinAbs = CatFin **
h = Back ; ---- TODO should be ap.h, which does not exist
} ;
lincat
RNP = {s : Agr => NPForm => Str ; isPron : Bool} ;
lin
ReflRNP vps rnp = insertObjPre False
(\fin,b,agr -> appCompl fin b vps.c2
{s = \\npf => rnp.s ! agr ! npf ; a = agr ; isPron = rnp.isPron})
vps ;
ReflPoss num cn = {
s = \\agr, npf =>
let
quant : NounFin.Quant = lin Quant { -- possessive pronoun with suffix only
s2 : Harmony => Str = \\harm => possSuffixGen harm agr ;
s1,sp = \\_,_ => [] ; isNum,isNeg = False ; isPoss,isDef = True
} ;
det = NounFin.DetQuant quant num
in
(NounFin.DetCN det cn).s ! npf ;
isPron = False
} ;
}

View File

@@ -4,7 +4,9 @@ abstract ExtraFinAbs = Extra [
PassVPSlash, PassAgentVPSlash,
VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,
VPS,ListVPS,BaseVPS,ConsVPS,ConjVPS,MkVPS,PredVPS,ConjVPS,Tense,Temp,Pol,S,
VV,VP,Conj,NP,Quant,IAdv,IComp,ICompAP,IAdvAdv,Adv,AP, Pron, RP, ProDrop, AdjAsCN] ** {
VV,VP,Conj,NP,Quant,IAdv,IComp,ICompAP,IAdvAdv,Adv,AP, Pron, RP, ProDrop, AdjAsCN,
RNP,ReflRNP,ReflPoss
] ** {
flags coding=utf8 ;
fun