summaryrefslogtreecommitdiff
path: root/examples/phrasebook/SentencesRon.gf
diff options
context:
space:
mode:
authorramona.enache <ramona.enache@chalmers.se>2010-05-15 13:35:50 +0000
committerramona.enache <ramona.enache@chalmers.se>2010-05-15 13:35:50 +0000
commitd1748049aaa5cb193cff11707e767308bca231e8 (patch)
treeed2aecfe053f12aba033478b3d03e306dfeed22f /examples/phrasebook/SentencesRon.gf
parent77fb23fdbc0a453e2d1913c95c3386ae416e72d0 (diff)
q
Diffstat (limited to 'examples/phrasebook/SentencesRon.gf')
-rw-r--r--examples/phrasebook/SentencesRon.gf16
1 files changed, 13 insertions, 3 deletions
diff --git a/examples/phrasebook/SentencesRon.gf b/examples/phrasebook/SentencesRon.gf
index 7f8437f36..f604de218 100644
--- a/examples/phrasebook/SentencesRon.gf
+++ b/examples/phrasebook/SentencesRon.gf
@@ -45,14 +45,24 @@ lin
IMale = {name = mkNP i_Pron ; isPron = True ; poss = mkQuant i_Pron} ;
YouFamMale = {name = mkNP youSg_Pron ; isPron = True ; poss = mkQuant youSg_Pron} ;
YouPolMale = {name = mkNP youPol_Pron ; isPron = True ; poss = mkQuant youPol_Pron} ;
- ThePlace kind = let name : NP = mkNP the_Quant kind.name in {
+ ThePlace kind = let name : NP = mkNP the_Quant kind.name ;
+ condAt : Bool = needIndefPlace kind.name kind.at ;
+ condTo : Bool = needIndefPlace kind.name kind.to in {
name = name ;
- at = if_then_else Adv kind.at.needIndef (mkAdv kind.at name) (mkAdv kind.at (mkNP kind.name));
- to = if_then_else Adv kind.at.needIndef (mkAdv kind.to name) (mkAdv kind.at (mkNP kind.name))
+ at = if_then_else Adv condAt (mkAdv kind.at (mkNP the_Art kind.name)) (mkAdv kind.at name);
+ to = if_then_else Adv condTo (mkAdv kind.at (mkNP the_Art kind.name)) (mkAdv kind.to name)
} ;
CitiNat n = {pers = n.propPers; prop = n.propObj} ;
ACitizen p n = mkCl p.name (PR.mkAdv (n.pers ! (p.name.a.g) ! (p.name.a.n))) ;
PCitizenship x = mkPhrase (mkUtt (mkAP x.prop)) ;
PropCit p = p.prop ;
+
+
+oper needIndefPlace : CN -> Prep -> Bool = \cn,prep ->
+ case <cn.isComp,prep.needIndef> of
+ {<True,_> => True ;
+ <False,True> => False ;
+ _ => True
+ };
}