From d329d3b9d80c90adf914e704f1aa621d297d7922 Mon Sep 17 00:00:00 2001 From: aarne Date: Fri, 27 Aug 2010 15:14:06 +0000 Subject: [PATCH] embedded questions in phrasebook --- examples/phrasebook/Sentences.gf | 9 ++++----- examples/phrasebook/SentencesCat.gf | 4 +++- examples/phrasebook/SentencesFin.gf | 5 +++-- examples/phrasebook/SentencesFre.gf | 2 ++ examples/phrasebook/SentencesI.gf | 2 ++ examples/phrasebook/SentencesIta.gf | 3 +++ examples/phrasebook/SentencesRon.gf | 3 +++ examples/phrasebook/SentencesSpa.gf | 5 ++++- 8 files changed, 24 insertions(+), 9 deletions(-) diff --git a/examples/phrasebook/Sentences.gf b/examples/phrasebook/Sentences.gf index 031253b9e..a58728d4a 100644 --- a/examples/phrasebook/Sentences.gf +++ b/examples/phrasebook/Sentences.gf @@ -70,7 +70,8 @@ abstract Sentences = Numeral ** { -- This is the way to build propositions about inanimate items. - Is : Item -> Quality -> Proposition ; -- this pizza is good + Is : Item -> Quality -> Proposition ; -- this pizza is good + IsMass : MassKind -> Quality -> Proposition ; -- Belgian beer is good -- To use propositions on higher levels. @@ -146,10 +147,8 @@ abstract Sentences = Numeral ** { ByTransp : Transport -> ByTransport ; -- by bus AKnowSentence : Person -> Sentence -> Action ; -- you know that I am in the bar - AKnowPerson : Person -> Person -> Action ; -- you know me - --- in Words, as long as Lexicon doesn't have it --- AKnowQuestion : Person -> Question -> Action ; -- you know how far the bar is + AKnowPerson : Person -> Person -> Action ; -- you know me + AKnowQuestion : Person -> Question -> Action ; -- you know how far the bar is } diff --git a/examples/phrasebook/SentencesCat.gf b/examples/phrasebook/SentencesCat.gf index 7f2d65a0a..a02641b91 100644 --- a/examples/phrasebook/SentencesCat.gf +++ b/examples/phrasebook/SentencesCat.gf @@ -1,4 +1,5 @@ concrete SentencesCat of Sentences = NumeralCat ** SentencesI - [ + IsMass, IFemale, YouFamFemale, YouPolFemale, IMale, YouFamMale, YouPolMale, WherePlace, WherePerson, ABePlace, Superlative @@ -15,6 +16,7 @@ lincat Superlative = OrdSuperlative ; -- {ord: Ord ; isPre: Bool} lin + IsMass m q = mkCl (mkNP the_Det m) q ; -- le vin allemand est bon IFemale = {name = mkNP (ProDrop i8fem_Pron) ; isPron = True ; poss = mkQuant i_Pron} ; @@ -61,4 +63,4 @@ oper at = SyntaxCat.mkAdv kind.at name ; to = SyntaxCat.mkAdv kind.to name ; }; -} \ No newline at end of file +} diff --git a/examples/phrasebook/SentencesFin.gf b/examples/phrasebook/SentencesFin.gf index a0dd4940a..62ccf7247 100644 --- a/examples/phrasebook/SentencesFin.gf +++ b/examples/phrasebook/SentencesFin.gf @@ -1,5 +1,5 @@ concrete SentencesFin of Sentences = NumeralFin ** SentencesI - - [Is, NameNN, ObjMass, + [Is, IsMass, NameNN, ObjMass, IFemale, YouFamFemale, YouPolFemale, IMale, YouFamMale, YouPolMale ] with (Syntax = SyntaxFin), @@ -7,7 +7,8 @@ concrete SentencesFin of Sentences = NumeralFin ** SentencesI - (Lexicon = LexiconFin) ** open SyntaxFin, ExtraFin, (P = ParadigmsFin), (V = VerbFin) in { lin - Is item prop = mkCl item (V.UseComp (CompPartAP prop)) ; -- pizza on herkullista + Is item prop = mkCl item (V.UseComp (CompPartAP prop)) ; -- tämä pizza on herkullista + IsMass mass prop = mkCl (mkNP a_Det mass) (V.UseComp (CompPartAP prop)) ; -- pizza on herkullista NameNN = mkNP (P.mkPN (P.mkN "NN" "NN:iä")) ; IMale, IFemale = diff --git a/examples/phrasebook/SentencesFre.gf b/examples/phrasebook/SentencesFre.gf index 5c9cbb94e..73c4043ec 100644 --- a/examples/phrasebook/SentencesFre.gf +++ b/examples/phrasebook/SentencesFre.gf @@ -1,4 +1,5 @@ concrete SentencesFre of Sentences = NumeralFre ** SentencesI - [ + IsMass, QProp, IFemale, YouFamFemale, YouPolFemale, PYesToNo, @@ -14,6 +15,7 @@ concrete SentencesFre of Sentences = NumeralFre ** SentencesI - [ lincat Superlative = {s : Ord ; isPre : Bool} ; lin + IsMass m q = mkCl (mkNP the_Det m) q ; -- le vin allemand est bon QProp a = lin QS {s = \\_ => (EstcequeS (mkS a)).s} ; IFemale = diff --git a/examples/phrasebook/SentencesI.gf b/examples/phrasebook/SentencesI.gf index 334b7e92a..e123eed97 100644 --- a/examples/phrasebook/SentencesI.gf +++ b/examples/phrasebook/SentencesI.gf @@ -63,6 +63,7 @@ incomplete concrete SentencesI of Sentences = Numeral ** PYesToNo = mkPhrase yes_Utt ; Is = mkCl ; + IsMass m q = mkCl (mkNP m) q ; SProp = mkS ; SPropNot = mkS negativePol ; @@ -134,6 +135,7 @@ incomplete concrete SentencesI of Sentences = Numeral ** ByTransp t = t.by ; AKnowSentence p s = mkCl p.name Lexicon.know_VS s ; + AKnowQuestion p s = mkCl p.name Lexicon.know_VQ s ; AKnowPerson p q = mkCl p.name Lexicon.know_V2 q.name ; oper diff --git a/examples/phrasebook/SentencesIta.gf b/examples/phrasebook/SentencesIta.gf index 157e18b2f..80e0fc70f 100644 --- a/examples/phrasebook/SentencesIta.gf +++ b/examples/phrasebook/SentencesIta.gf @@ -1,4 +1,5 @@ concrete SentencesIta of Sentences = NumeralIta ** SentencesI - [ + IsMass, IFemale, YouFamFemale, YouPolFemale, IMale, YouFamMale, YouPolMale, mkPerson, Superlative, SHaveNoMass ] @@ -13,6 +14,8 @@ concrete SentencesIta of Sentences = NumeralIta ** SentencesI - [ Superlative = {s : A ; isPre : Bool} ; lin + IsMass m q = mkCl (mkNP the_Det m) q ; -- le vin allemand est bon + IFemale = {name = mkNP (ProDrop i8fem_Pron) ; isPron = True ; poss = PossFamQuant i_Pron} ; YouFamFemale = diff --git a/examples/phrasebook/SentencesRon.gf b/examples/phrasebook/SentencesRon.gf index f604de218..70d3e34d0 100644 --- a/examples/phrasebook/SentencesRon.gf +++ b/examples/phrasebook/SentencesRon.gf @@ -1,5 +1,6 @@ concrete SentencesRon of Sentences = NumeralRon ** SentencesI - [ + IsMass, IFemale, YouFamFemale, YouPolFemale, IMale, YouFamMale, YouPolMale, ThePlace, Nationality, CitiNat, Citizenship, ACitizen, PCitizenship, PropCit ] @@ -39,6 +40,8 @@ lincat Citizenship = CitizenshipRon ; lin + IsMass m q = mkCl (mkNP the_Det m) q ; -- le vin allemand est bon + IFemale = {name = mkNP i8fem_Pron ; isPron = True ; poss = mkQuant i_Pron} ; YouFamFemale = {name = mkNP youSg8fem_Pron ; isPron = True ; poss = mkQuant youSg_Pron} ; YouPolFemale = {name = mkNP youPol8fem_Pron ; isPron = True ; poss = mkQuant youPol_Pron}; diff --git a/examples/phrasebook/SentencesSpa.gf b/examples/phrasebook/SentencesSpa.gf index 0fcf185e8..fcb6e0a7e 100644 --- a/examples/phrasebook/SentencesSpa.gf +++ b/examples/phrasebook/SentencesSpa.gf @@ -1,4 +1,5 @@ concrete SentencesSpa of Sentences = NumeralSpa ** SentencesI - [ + IsMass, IFemale, YouFamFemale, YouPolFemale, IMale, YouFamMale, YouPolMale, WherePlace, WherePerson, ABePlace, Superlative @@ -16,6 +17,8 @@ flags coding = utf8 ; lin + IsMass m q = mkCl (mkNP the_Det m) q ; -- le vin allemand est bon + IFemale = {name = mkNP (ProDrop i8fem_Pron) ; isPron = True ; poss = mkQuant i_Pron} ; YouFamFemale = @@ -69,4 +72,4 @@ oper at = SyntaxSpa.mkAdv kind.at name ; to = SyntaxSpa.mkAdv kind.to name ; }; -} \ No newline at end of file +}