diff --git a/lib/resource-1.4/bulgarian/CatBul.gf b/lib/resource-1.4/bulgarian/CatBul.gf index 7bd466dd6..1587aa535 100644 --- a/lib/resource-1.4/bulgarian/CatBul.gf +++ b/lib/resource-1.4/bulgarian/CatBul.gf @@ -39,10 +39,10 @@ concrete CatBul of Cat = open ResBul, Prelude, (R = ParamX) in { -- Question QCl = {s : ResBul.Tense => Anteriority => Polarity => QForm => Str} ; - IP = {s : Role => Species => Str; gn : GenNum} ; - IComp = {s : Species => Str} ; - IDet = {s : DGender => Species => Str; n : Number ; nonEmpty : Bool} ; - IQuant = {s : GenNum => Species => Str} ; + IP = {s : Role => QForm => Str; gn : GenNum} ; + IComp = {s : QForm => Str} ; + IDet = {s : DGender => QForm => Str; n : Number ; nonEmpty : Bool} ; + IQuant = {s : GenNum => QForm => Str} ; -- Relative @@ -65,7 +65,7 @@ concrete CatBul of Cat = open ResBul, Prelude, (R = ParamX) in { Adv = {s : Str} ; CAdv = {s : Str; sn : Str} ; - IAdv = {s : Species => Str} ; + IAdv = {s : QForm => Str} ; AdA = {s : Str} ; -- Noun diff --git a/lib/resource-1.4/bulgarian/MorphoFunsBul.gf b/lib/resource-1.4/bulgarian/MorphoFunsBul.gf index bf625bdcf..f32cc9ce1 100644 --- a/lib/resource-1.4/bulgarian/MorphoFunsBul.gf +++ b/lib/resource-1.4/bulgarian/MorphoFunsBul.gf @@ -178,5 +178,5 @@ oper -- mkIAdv : Str -> IAdv ; - mkIAdv s = {s = table {Indef=>s;Def=>s+"то"}; lock_IAdv = <>} ; + mkIAdv s = {s = table {QDir=>s;QIndir=>s+"то"}; lock_IAdv = <>} ; } \ No newline at end of file diff --git a/lib/resource-1.4/bulgarian/PhraseBul.gf b/lib/resource-1.4/bulgarian/PhraseBul.gf index 954f378d4..fb2ab25fe 100644 --- a/lib/resource-1.4/bulgarian/PhraseBul.gf +++ b/lib/resource-1.4/bulgarian/PhraseBul.gf @@ -9,8 +9,8 @@ concrete PhraseBul of Phrase = CatBul ** open Prelude, ResBul in { UttImpPl pol imp = {s = pol.s ++ imp.s ! pol.p ! GPl} ; UttImpPol pol imp = {s = pol.s ++ imp.s ! pol.p ! GPl} ; - UttIP ip = {s = ip.s ! RSubj ! Indef} ; - UttIAdv iadv = {s = iadv.s ! Indef} ; + UttIP ip = {s = ip.s ! RSubj ! QDir} ; + UttIAdv iadv = {s = iadv.s ! QDir} ; UttNP np = {s = np.s ! RSubj} ; UttVP vp = {s = daComplex vp ! Perf ! agrP3 (GSg Neut)} ; UttAdv adv = adv ; diff --git a/lib/resource-1.4/bulgarian/QuestionBul.gf b/lib/resource-1.4/bulgarian/QuestionBul.gf index c07e9f2ba..cadd1a2b2 100644 --- a/lib/resource-1.4/bulgarian/QuestionBul.gf +++ b/lib/resource-1.4/bulgarian/QuestionBul.gf @@ -15,7 +15,7 @@ concrete QuestionBul of Question = CatBul ** open ResBul, Prelude in { QuestVP ip vp = { s = \\t,a,b,qform => - (mkClause (ip.s ! RSubj ! (case qform of {QDir=>Indef; QIndir=>Def})) {gn = ip.gn ; p = P3} vp).s ! t ! a ! b ! Main + (mkClause (ip.s ! RSubj ! qform) {gn = ip.gn ; p = P3} vp).s ! t ! a ! b ! Main } ; QuestSlash ip slash = diff --git a/lib/resource-1.4/bulgarian/ResBul.gf b/lib/resource-1.4/bulgarian/ResBul.gf index 6482b440a..6d9f4a3c1 100644 --- a/lib/resource-1.4/bulgarian/ResBul.gf +++ b/lib/resource-1.4/bulgarian/ResBul.gf @@ -522,13 +522,13 @@ resource ResBul = ParamX ** open Prelude in { DNeutDef => addDef dve } ; - mkIP : Str -> Str -> GenNum -> {s : Role => Species => Str ; gn : GenNum} = + mkIP : Str -> Str -> GenNum -> {s : Role => QForm => Str ; gn : GenNum} = \koi,kogo,gn -> { s = table { - RSubj => table {Indef=>koi; Def=>koi+"то"} ; - RObj Acc => table {Indef=>kogo; Def=>kogo+"то"} ; - RObj Dat => table {Indef=>"на" ++ kogo; Def=>"на" ++ kogo+"то"} ; - RVoc => table {Indef=>koi; Def=>koi+"то"} + RSubj => table QForm [koi; koi+"то"] ; + RObj Acc => table QForm [kogo; kogo+"то"] ; + RObj Dat => table QForm ["на" ++ kogo; kogo+"то"] ; + RVoc => table QForm [koi; koi+"то"] } ; gn = gn } ; @@ -575,15 +575,15 @@ resource ResBul = ParamX ** open Prelude in { Preposition : Type = {s : Str; c : Case}; mkQuestion : - {s : Species => Str} -> Clause -> + {s : QForm => Str} -> Clause -> {s : Tense => Anteriority => Polarity => QForm => Str} = \wh,cl -> { - s = \\t,a,p => + s = \\t,a,p,qform => let cls = cl.s ! t ! a ! p ; - in table { - QDir => wh.s ! Indef ++ cls ! Inv ; - QIndir => wh.s ! Def ++ cls ! Main - } + in wh.s ! qform ++ cls ! case qform of { + QDir => Inv ; + QIndir => Main + } } ; whichRP : GenNum => Str diff --git a/lib/resource-1.4/bulgarian/StructuralBul.gf b/lib/resource-1.4/bulgarian/StructuralBul.gf index 5a6b24cad..c8e92365f 100644 --- a/lib/resource-1.4/bulgarian/StructuralBul.gf +++ b/lib/resource-1.4/bulgarian/StructuralBul.gf @@ -35,7 +35,7 @@ concrete StructuralBul of Structural = CatBul ** here7to_Adv = ss ["до тук"] ; here7from_Adv = ss ["от тук"] ; how_IAdv = mkIAdv "как" ; - how8many_IDet = {s = \\_ => table Species ["колко";"колкото"]; n = Pl; nonEmpty = False} ; + how8many_IDet = {s = \\_ => table QForm ["колко";"колкото"]; n = Pl; nonEmpty = False} ; if_Subj = ss "ако" ; in8front_Prep = mkPrep "пред" Acc ; i_Pron = mkPron "аз" "мен" "ми" "мой" "моя" "моят" "моя" "моята" "мое" "моето" "мои" "моите" (GSg Masc) P1 ; @@ -101,10 +101,10 @@ concrete StructuralBul of Structural = CatBul ** when_IAdv = mkIAdv "кога" ; when_Subj = ss "когато" ; where_IAdv = mkIAdv "къде" ; - which_IQuant = {s = table GenNum [table Species ["кой";"който"]; - table Species ["коя";"която"]; - table Species ["кое";"което"]; - table Species ["кои";"които"]]} ; + which_IQuant = {s = table GenNum [table QForm ["кой";"който"]; + table QForm ["коя";"която"]; + table QForm ["кое";"което"]; + table QForm ["кои";"които"]]} ; whoSg_IP = mkIP "кой" "кого" (GSg Masc) ; whoPl_IP = mkIP "кои" "кои" GPl ; why_IAdv = mkIAdv "защо" ;