From dc58a51c4fafff4c13f608e8b27bb18298badf37 Mon Sep 17 00:00:00 2001 From: aarne Date: Thu, 29 Apr 2010 05:55:59 +0000 Subject: [PATCH] added Question.AdvIAdv and correcponding entry of mkIAdv in API --- src/abstract/Question.gf | 4 ++++ src/api/Constructors.gf | 11 +++++++++-- src/bulgarian/QuestionBul.gf | 2 ++ src/english/QuestionEng.gf | 2 ++ src/finnish/QuestionFin.gf | 2 ++ src/german/QuestionGer.gf | 2 ++ src/polish/QuestionPol.gf | 2 ++ src/romance/QuestionRomance.gf | 1 + src/romanian/QuestionRon.gf | 4 ++-- src/russian/QuestionRus.gf | 2 ++ src/scandinavian/QuestionScand.gf | 2 ++ src/urdu/QuestionUrd.gf | 2 ++ 12 files changed, 32 insertions(+), 4 deletions(-) diff --git a/src/abstract/Question.gf b/src/abstract/Question.gf index 6b2e3c01..a5d43d70 100644 --- a/src/abstract/Question.gf +++ b/src/abstract/Question.gf @@ -30,6 +30,10 @@ abstract Question = Cat ** { PrepIP : Prep -> IP -> IAdv ; -- with whom +-- They can be modified with other adverbs. + + AdvIAdv : IAdv -> Adv -> IAdv ; -- where in Paris + -- Interrogative complements to copulas can be both adverbs and -- pronouns. diff --git a/src/api/Constructors.gf b/src/api/Constructors.gf index 91f14292..9e3c074e 100644 --- a/src/api/Constructors.gf +++ b/src/api/Constructors.gf @@ -767,7 +767,10 @@ incomplete resource Constructors = open Grammar in { -- In addition to the interrogative adverbs defined in the $Structural$ lexicon, they -- can be formed as prepositional phrases from interrogative pronouns. - mkIAdv : Prep -> IP -> IAdv ; -- 1. in which city --# notminimal + mkIAdv : overload { --# notminimal + mkIAdv : Prep -> IP -> IAdv ; -- 1. in which city --# notminimal + mkIAdv : IAdv -> Adv -> IAdv ; -- 2. where in Paris --# notminimal + } ; --# notminimal -- More interrogative adverbs are given in $Structural$. @@ -1435,7 +1438,11 @@ incomplete resource Constructors = open Grammar in { who_IP : IP = whoSg_IP ; which_IDet : IDet = whichSg_IDet ; --# notminimal - mkIAdv : Prep -> IP -> IAdv = PrepIP ; --# notminimal + mkIAdv = overload { --# notminimal + mkIAdv : Prep -> IP -> IAdv = PrepIP ; -- 1. in which city --# notminimal + mkIAdv : IAdv -> Adv -> IAdv = AdvIAdv ; -- 2. where in Paris --# notminimal + } ; --# notminimal + mkRCl = overload { --# notminimal mkRCl : Cl -> RCl -- such that John loves her --# notminimal diff --git a/src/bulgarian/QuestionBul.gf b/src/bulgarian/QuestionBul.gf index da789719..009cda5b 100644 --- a/src/bulgarian/QuestionBul.gf +++ b/src/bulgarian/QuestionBul.gf @@ -59,5 +59,7 @@ concrete QuestionBul of Question = CatBul ** open ResBul, Prelude in { nonEmpty = num.nonEmpty } ; + AdvIAdv i a = {s = i.s ++ a.s} ; + CompIP ip = {s = ip.s ! RSubj} ; } diff --git a/src/english/QuestionEng.gf b/src/english/QuestionEng.gf index 0fce813d..81f51c6e 100644 --- a/src/english/QuestionEng.gf +++ b/src/english/QuestionEng.gf @@ -49,6 +49,8 @@ concrete QuestionEng of Question = CatEng ** open ResEng, Prelude in { n = num.n } ; + AdvIAdv i a = ss (i.s ++ a.s) ; + CompIAdv a = a ; CompIP p = ss (p.s ! Nom) ; diff --git a/src/finnish/QuestionFin.gf b/src/finnish/QuestionFin.gf index f1dbc21f..096ae519 100644 --- a/src/finnish/QuestionFin.gf +++ b/src/finnish/QuestionFin.gf @@ -90,6 +90,8 @@ concrete QuestionFin of Question = CatFin ** open ResFin, Prelude in { isNum = isn } ; + AdvIAdv i a = {s = i.s ++ a.s} ; + CompIAdv a = {s = \\_ => a.s} ; CompIP ip = {s = \\_ => ip.s ! NPCase Nom} ; diff --git a/src/german/QuestionGer.gf b/src/german/QuestionGer.gf index d94742c5..280f8f88 100644 --- a/src/german/QuestionGer.gf +++ b/src/german/QuestionGer.gf @@ -92,6 +92,8 @@ concrete QuestionGer of Question = CatGer ** open ResGer in { s = \\g,c => idet.s ! n ! g ! c ++ num.s!g!c ; n = n } ; + + AdvIAdv i a = {s = i.s ++ a.s} ; CompIAdv a = {s = \\_ => a.s} ; diff --git a/src/polish/QuestionPol.gf b/src/polish/QuestionPol.gf index ccc9a223..c0b0f9a6 100644 --- a/src/polish/QuestionPol.gf +++ b/src/polish/QuestionPol.gf @@ -69,6 +69,8 @@ lin -- PrepIP : Prep -> IP -> IAdv ; -- with whom PrepIP prep ip = { s = prep.s ++ ip.dep !prep.c}; + AdvIAdv i a = {s = i.s ++ a.s} ; + -- CompIAdv : IAdv -> IComp ; -- where (is it) CompIAdv ia = ia; diff --git a/src/romance/QuestionRomance.gf b/src/romance/QuestionRomance.gf index 28f9e410..9c1d5fe4 100644 --- a/src/romance/QuestionRomance.gf +++ b/src/romance/QuestionRomance.gf @@ -93,6 +93,7 @@ incomplete concrete QuestionRomance of Question = n = n } ; + AdvIAdv i a = {s = i.s ++ a.s} ; CompIAdv a = {s = \\_ => a.s} ; diff --git a/src/romanian/QuestionRon.gf b/src/romanian/QuestionRon.gf index aae1bac2..76c7616a 100644 --- a/src/romanian/QuestionRon.gf +++ b/src/romanian/QuestionRon.gf @@ -100,11 +100,11 @@ concrete QuestionRon of Question = n = n } ; - + AdvIAdv i a = {s = i.s ++ a.s} ; CompIAdv a = {s = \\_ => a.s} ; CompIP p = {s = \\_ => p.s ! No} ; -} \ No newline at end of file +} diff --git a/src/russian/QuestionRus.gf b/src/russian/QuestionRus.gf index e3506aef..27ada61d 100644 --- a/src/russian/QuestionRus.gf +++ b/src/russian/QuestionRus.gf @@ -67,6 +67,8 @@ concrete QuestionRus of Question = CatRus ** open ResRus, Prelude in { c = kakoj.c } ; + AdvIAdv i a = {s = i.s ++ a.s} ; + CompIAdv a = a ; CompIP ip = {s = ip.s ! PF Nom No NonPoss} ; } diff --git a/src/scandinavian/QuestionScand.gf b/src/scandinavian/QuestionScand.gf index 23379df4..762a19b1 100644 --- a/src/scandinavian/QuestionScand.gf +++ b/src/scandinavian/QuestionScand.gf @@ -93,6 +93,8 @@ incomplete concrete QuestionScand of Question = det = idet.det } ; + AdvIAdv i a = {s = i.s ++ a.s} ; + CompIAdv a = {s = \\_ => a.s} ; CompIP ip = {s = \\_ => ip.s ! nominative} ; diff --git a/src/urdu/QuestionUrd.gf b/src/urdu/QuestionUrd.gf index 6450895d..fcd33ec1 100644 --- a/src/urdu/QuestionUrd.gf +++ b/src/urdu/QuestionUrd.gf @@ -67,6 +67,8 @@ concrete QuestionUrd of Question = CatUrd ** open ResUrd, Prelude in { n = num.n } ; + AdvIAdv i a = {s = i.s ++ a.s} ; + CompIAdv a = a ; CompIP p = ss (p.s ! Dir) ;