From e9b8637f0dd539bb72cb793b024a40e523cd97c3 Mon Sep 17 00:00:00 2001 From: aarne Date: Thu, 19 May 2005 14:18:50 +0000 Subject: [PATCH] building Romance resource --- lib/resource/abstract/Clause.gf | 1 + lib/resource/doc/gf-resource.html | 28 +++++++++++ lib/resource/romance/ClauseRomance.gf | 68 +++++++++++++++++++++++++++ lib/resource/romance/SyntaxRomance.gf | 6 +++ 4 files changed, 103 insertions(+) diff --git a/lib/resource/abstract/Clause.gf b/lib/resource/abstract/Clause.gf index f26fd11d1..03892943d 100644 --- a/lib/resource/abstract/Clause.gf +++ b/lib/resource/abstract/Clause.gf @@ -37,6 +37,7 @@ fun QPredV : IP -> V -> QCl ; -- "who walks" QPredPassV : IP -> V -> QCl ; -- "who is seen" QPredV2 : IP -> V2 -> NP -> QCl ; -- "who sees Mary" +---- QPredV3 : IP -> V3 -> NP -> NP -> QCl ; -- "who gives Mary food" QPredReflV2 : IP -> V2 -> QCl ; -- "who loves himself" QPredVS : IP -> VS -> S -> QCl ; -- "who says that Mary runs" QPredVV : IP -> VV -> VPI -> QCl ; -- "who must walk" diff --git a/lib/resource/doc/gf-resource.html b/lib/resource/doc/gf-resource.html index 71b61a5b8..da97b8f7c 100644 --- a/lib/resource/doc/gf-resource.html +++ b/lib/resource/doc/gf-resource.html @@ -680,6 +680,34 @@ In two language families: Swedish X X X X X + + +

Known bugs and limitations

+ +(The listed limitations are ones that do not follow from the table on +the previous page.) +

+Danish +

+English +

+Finnish +

+French: no inverted questions +

+German +

+Italian: no omission of unstressed subject pronouns +

+Norwegian +

+Russian +

+Spanish: no omission of unstressed subject pronouns +

+Swedish + +

Obtaining it

diff --git a/lib/resource/romance/ClauseRomance.gf b/lib/resource/romance/ClauseRomance.gf index 093a41e74..e0485ce41 100644 --- a/lib/resource/romance/ClauseRomance.gf +++ b/lib/resource/romance/ClauseRomance.gf @@ -70,6 +70,74 @@ incomplete concrete ClauseRomance of Clause = CategoriesRomance ** SPredAdv subj adv = sats2clause (mkSatsCopula subj adv.s) ; +-------- + + QPredV np v = + sats2quest (mkSats (intNounPhrase np) v) ; + + QPredPassV subj v = + sats2quest (mkSatsCopula (intNounPhrase subj) (v.s ! VPart subj.g subj.n)) ; + QPredV2 np v y = + sats2quest (mkSatsObject (intNounPhrase np) v y) ; +-- QPredV3 subj verb obj1 obj2 = +-- sats2quest (insertObject (mkSatsObject (intNounPhrase subj) verb obj1) verb.c3 verb.s3 obj2) ; + + QPredReflV2 subj verb = + sats2quest ( + mkSatsObject (intNounPhrase subj) + {s = verb.s ; s2 = [] ; c = accusative ; aux = AEsse} + ---- {s = verb.s ; s2 = verb.s2 ; c = verb.c ; aux = AEsse} + ---- this produces huge cf - find out why! AR 16/3/2005 + (reflPronNounPhrase subj.g subj.n P3)) ; + + QPredVS subj verb sent = + sats2quest ( + insertExtrapos (mkSats (intNounPhrase subj) verb) + (\\b => embedConj ++ sent.s ! subordMode verb b)) ; ---- mn + QPredVQ subj verb quest = + sats2quest ( + insertExtrapos (mkSats (intNounPhrase subj) verb) (\\_ => quest.s ! IndirQ)) ; + QPredV2S subj verb obj sent = + sats2quest ( + insertExtrapos + (mkSatsObject (intNounPhrase subj) verb obj) + (\\b => embedConj ++ sent.s ! subordMode verb b) + ) ; ---- mn ; + QPredV2Q subj verb obj quest = + sats2quest ( + insertExtrapos + (mkSatsObject (intNounPhrase subj) verb obj) + (\\_ => quest.s ! IndirQ)) ; + QPredVA subj verb adj = + sats2quest ( + insertExtrapos (mkSats (intNounPhrase subj) verb) (\\_ => adj.s ! AF subj.g subj.n)) ; + + QPredVV subj verb vp = + sats2quest ( + insertExtrapos + (mkSats (intNounPhrase subj) verb) + (\\_ => prepCase verb.c ++ vp.s ! VIInfinit ! subj.g ! (intNounPhrase subj).n ! P3) + ) ; + +-- QPredObjV2V + +-- QPredProgVP + +-- QPred(IntNounPhrase Subj)V2V + +-- QPredV2A + + + QPredAP subj adj = + sats2quest (mkSatsCopula (intNounPhrase subj) (adj.s ! AF subj.g subj.n)) ; + QPredCN subj cn = + sats2quest (mkSatsCopula (intNounPhrase subj) (indefNoun subj.n cn)) ; + QPredNP subj np = + sats2quest (mkSatsCopula (intNounPhrase subj) (np.s ! stressed nominative)) ; + QPredAdv subj adv = + sats2quest (mkSatsCopula (intNounPhrase subj) adv.s) ; + + {- -- Use VPs diff --git a/lib/resource/romance/SyntaxRomance.gf b/lib/resource/romance/SyntaxRomance.gf index 0a085b05a..1b43f3759 100644 --- a/lib/resource/romance/SyntaxRomance.gf +++ b/lib/resource/romance/SyntaxRomance.gf @@ -1560,4 +1560,10 @@ oper negNe, negPas : Str ; + + sats2quest : Sats -> Question = \x -> + let cl = sats2clause x + in + {s = \\b,f,_ => cl.s ! b ! f} ; + }