diff --git a/lib/resource/bulgarian/CatBul.gf b/lib/resource/bulgarian/CatBul.gf index c5cd6f5b7..9291779b1 100644 --- a/lib/resource/bulgarian/CatBul.gf +++ b/lib/resource/bulgarian/CatBul.gf @@ -37,7 +37,7 @@ concrete CatBul of Cat = open ResBul, Prelude, (R = ParamX) in { -- Question QCl = {s : ResBul.Tense => Anteriority => Polarity => QForm => Str} ; - IP = {s : Str ; gn : GenNum} ; + IP = {s : Case => Str; gn : GenNum} ; IComp = {s : Str} ; IDet = {s : GenNum => Str; n : Number} ; diff --git a/lib/resource/bulgarian/ExtraBul.gf b/lib/resource/bulgarian/ExtraBul.gf index 02cf60e1c..8071cef10 100644 --- a/lib/resource/bulgarian/ExtraBul.gf +++ b/lib/resource/bulgarian/ExtraBul.gf @@ -9,11 +9,11 @@ concrete ExtraBul of ExtraBulAbs = CatBul ** i8fem_Pron = mkNP "аз" "мен" "мой" "моя" "моят" "моя" "моята" "мое" "моето" "мои" "моите" (GSg Fem) P1 ; i8neut_Pron = mkNP "аз" "мен" "мой" "моя" "моят" "моя" "моята" "мое" "моето" "мои" "моите" (GSg Neut) P1 ; - whatSg8fem_IP = mkIP "каква" (GSg Fem) ; - whatSg8neut_IP = mkIP "какво" (GSg Neut) ; + whatSg8fem_IP = mkIP "каква" "каква" (GSg Fem) ; + whatSg8neut_IP = mkIP "какво" "какво" (GSg Neut) ; - whoSg8fem_IP = mkIP "коя" (GSg Fem) ; - whoSg8neut_IP = mkIP "кое" (GSg Neut) ; + whoSg8fem_IP = mkIP "коя" "кого" (GSg Fem) ; + whoSg8neut_IP = mkIP "кое" "кого" (GSg Neut) ; youSg8fem_Pron = mkNP "ти" "теб" "твой" "твоя" "твоят" "твоя" "твоята" "твое" "твоето" "твои" "твоите" (GSg Fem) P2 ; youSg8neut_Pron = mkNP "ти" "теб" "твой" "твоя" "твоят" "твоя" "твоята" "твое" "твоето" "твои" "твоите" (GSg Neut) P2 ; diff --git a/lib/resource/bulgarian/QuestionBul.gf b/lib/resource/bulgarian/QuestionBul.gf index e962a729a..5a9297ece 100644 --- a/lib/resource/bulgarian/QuestionBul.gf +++ b/lib/resource/bulgarian/QuestionBul.gf @@ -22,10 +22,10 @@ concrete QuestionBul of Question = CatBul ** open ResBul, Prelude in { QuestIComp icomp np = mkQuestion icomp (mkClause (np.s ! Nom) np.a (predV auxBe)) ; - PrepIP p ip = {s = p.s ++ ip.s} ; + PrepIP p ip = {s = p.s ++ ip.s ! Nom} ; AdvIP ip adv = { - s = ip.s ++ adv.s ; + s = \\c => ip.s ! c ++ adv.s ; gn = ip.gn } ; diff --git a/lib/resource/bulgarian/ResBul.gf b/lib/resource/bulgarian/ResBul.gf index a752d595e..c7f3553be 100644 --- a/lib/resource/bulgarian/ResBul.gf +++ b/lib/resource/bulgarian/ResBul.gf @@ -420,9 +420,12 @@ resource ResBul = ParamX ** open Prelude in { DNeutDef => addDef dve } ; - mkIP : Str -> GenNum -> {s : Str ; gn : GenNum} = - \s,gn -> { - s = s ; + mkIP : Str -> Str -> GenNum -> {s : Case => Str ; gn : GenNum} = + \koi,kogo,gn -> { + s = table { + Nom => koi ; + Acc => kogo + } ; gn = gn } ; diff --git a/lib/resource/bulgarian/StructuralBul.gf b/lib/resource/bulgarian/StructuralBul.gf index 897593cf4..9cc56dc72 100644 --- a/lib/resource/bulgarian/StructuralBul.gf +++ b/lib/resource/bulgarian/StructuralBul.gf @@ -131,8 +131,8 @@ concrete StructuralBul of Structural = CatBul ** want_VV = P.mkVV (P.regV "want") ; -} we_Pron = mkNP "ние" "нас" "наш" "нашия" "нашият" "наша" "нашата" "наше" "нашето" "наши" "нашите" GPl P1 ; - whatPl_IP = mkIP "какви" GPl ; - whatSg_IP = mkIP "какъв" (GSg Masc) ; + whatPl_IP = mkIP "какви" "какви" GPl ; + whatSg_IP = mkIP "какъв" "какъв" (GSg Masc) ; when_IAdv = ss "кога" ; {- when_Subj = ss "when" ; @@ -140,8 +140,8 @@ concrete StructuralBul of Structural = CatBul ** where_IAdv = ss "къде" ; whichPl_IDet = {s = table GenNum ["кой";"коя";"кое";"кои"]; n = Pl} ; whichSg_IDet = {s = table GenNum ["кой";"коя";"кое";"кои"]; n = Sg} ; - whoSg_IP = mkIP "кой" (GSg Masc) ; - whoPl_IP = mkIP "кои" GPl ; + whoSg_IP = mkIP "кой" "кого" (GSg Masc) ; + whoPl_IP = mkIP "кои" "кого" GPl ; why_IAdv = ss "защо" ; without_Prep = ss "без" ; with_Prep = ss (pre { "с" ;