diff --git a/grammars/database/RestaurantEng.gf b/grammars/database/RestaurantEng.gf index d0dc304fe..af19b0aee 100644 --- a/grammars/database/RestaurantEng.gf +++ b/grammars/database/RestaurantEng.gf @@ -28,4 +28,4 @@ lin LaCoupole = pnReg ["La Coupole"] ; BurgerKing = pnReg ["Burger King"] ; -} ; +} diff --git a/grammars/health/ExtraRus.gf b/grammars/health/ExtraRus.gf index 0158a1384..6bccb1b4a 100644 --- a/grammars/health/ExtraRus.gf +++ b/grammars/health/ExtraRus.gf @@ -4,7 +4,7 @@ --1 Functions that are not in the API, but common in Russian -- -- Aarne Ranta, Janna Khegai 2003 -resource ExtraRus = open ResourceRus, Prelude, SyntaxRus in { +resource ExtraRus = open PredicationRus, ResourceRus, ParadigmsRus, SyntaxRus in { flags coding=utf8 ; @@ -32,5 +32,5 @@ oper lock_S = <> } ; - tvHave : TV = mkDirectVerb (extVerb have Act Present) ** { lock_TV = <>}; + tvHave : TV = mkDirectVerb (extVerb have active present) ** { lock_TV = <>}; }; diff --git a/grammars/health/HealthRus.gf b/grammars/health/HealthRus.gf index ac72a9044..9f2ee73ea 100644 --- a/grammars/health/HealthRus.gf +++ b/grammars/health/HealthRus.gf @@ -1,7 +1,7 @@ -- use this path to read the grammar from the same directory --# -path=.:../newresource/abstract:../prelude:../newresource/russian -concrete HealthRus of Health = open PredicationRus, ResourceRus, Prelude, SyntaxRus, ExtraRus, ResourceExtRus, ParadigmsRus in { +concrete HealthRus of Health = open PredicationRus, ResourceRus, SyntaxRus, ExtraRus, ResourceExtRus, ParadigmsRus in { flags coding=utf8 ; @@ -71,21 +71,21 @@ lin Pregnant = PosVG (PredAP (AdjP1 (beremenen ** {lock_Adj1 = <>}))) ; TakeMedicine = predV2 (mkDirectVerb - (extVerb verbPrinimat Act Present)**{lock_TV = <>}) ; + (extVerb verbPrinimat active present)**{lock_TV = <>}) ; Injured patient painkiller = predV2 (mkDirectVerb - (extVerb verbPoranit Act Past)**{lock_TV = <>}) patient (mkNounPhrase patient.n painkiller ** {lock_NP = <>}) ; + (extVerb verbPoranit active past)**{lock_TV = <>}) patient (mkNounPhrase patient.n painkiller ** {lock_NP = <>}) ; Broken patient painkiller = predV2 (mkDirectVerb - (extVerb verbSlomat Act Past)**{lock_TV = <>}) patient (mkNounPhrase patient.n painkiller ** {lock_NP = <>}) ; + (extVerb verbSlomat active past)**{lock_TV = <>}) patient (mkNounPhrase patient.n painkiller ** {lock_NP = <>}) ; - HaveIllness patient symptom = U_predTransVerb True tvHave + HaveIllness patient symptom = U_predTransVerb true tvHave patient (mkNounPhrase Sg symptom ** {lock_NP = <>}) ; - Complain = U_predTransVerb True tvHave ; + Complain = U_predTransVerb true tvHave ; - NeedDoctor = predNeedShortAdjective True ; - NeedMedicine = predNeedShortAdjective True ; + NeedDoctor = predNeedShortAdjective true ; + NeedMedicine = predNeedShortAdjective true ; - PainIn patient head = U_predTransVerb True (mkDirectVerb - (extVerb verbBolet_2 Act Present ) ** {lock_TV =<>}) patient (mkNounPhrase patient.n head ** {lock_NP =<>}) ; + PainIn patient head = U_predTransVerb true (mkDirectVerb + (extVerb verbBolet_2 active present ) ** {lock_TV =<>}) patient (mkNounPhrase patient.n head ** {lock_NP =<>}) ; Head = UseN ( golova**{lock_N = <>}); Leg = UseN ( noga**{lock_N = <>}); @@ -103,7 +103,7 @@ lin -- Terrible = AdjP1 (extAdjective uzhasnuj ** {lock_Adj1 = <>}); -- FeverMod degree = mkNounPhrase Sg -- (ModAdj degree (UseN ( temperatura**{lock_N = <>}))) ** {lock_NP = <>}; --- PainInMod patient head degree = U_predTransVerb True (mkDirectVerb +-- PainInMod patient head degree = U_predTransVerb true (mkDirectVerb -- (extVerb have Act Present) ** {lock_TV =<>}) patient -- (mkNounPhrase Sg (ModAdj degree --(AppFun (mkFun bol "в" Prepos ** {lock_Fun = <>}) diff --git a/lib/resource-0.6/russian/ParadigmsRus.gf b/lib/resource-0.6/russian/ParadigmsRus.gf index 7c5eacec1..ddc2bddef 100644 --- a/lib/resource-0.6/russian/ParadigmsRus.gf +++ b/lib/resource-0.6/russian/ParadigmsRus.gf @@ -51,6 +51,10 @@ oper --2 Nouns -- Best case: indeclinabe nouns: "кофе", "пальто", "ВУЗ". + Animacy: Type ; + + animate: Animacy; + inanimate: Animacy; mkIndeclinableNoun: Str -> Gender -> Animacy -> N ; @@ -183,6 +187,21 @@ oper -- rather than verbs. Aspect regarded as an inherent parameter of a verb. -- Notice, that some forms are never used for some verbs. Actually, -- the majority of verbs do not have many of the forms. +Voice: Type; +Aspect: Type; +Tense : Type; +Bool: Type; + +true: Bool; +false: Bool; + +active: Voice ; +passive: Voice ; +imperfective: Aspect; +perfective: Aspect ; +present : Tense ; +past : Tense ; + -- The worst case need 6 forms of the present tense in indicative mood -- ("я бегу", "ты бежишь", "он бежит", "мы бежим", "вы бежите", "они бегут"), @@ -228,7 +247,14 @@ oper Gender = SyntaxRus.Gender ; Case = SyntaxRus.Case ; Number = SyntaxRus.Number ; + Animacy = SyntaxRus.Animacy; + Aspect = SyntaxRus.Aspect; + Voice = SyntaxRus.Voice ; + Tense = SyntaxRus.Tense ; + Bool = Prelude.Bool ; + true = True; + false = False ; masculine = Masc ; feminine = Fem ; neuter = Neut ; @@ -240,6 +266,18 @@ oper prepositional = Prepos ; singular = Sg ; plural = Pl ; + animate = Animate ; + inanimate = Inanimate ; + active = Act ; + passive = Pass ; + imperfective = Imperfective ; + perfective = Perfective ; + present = Present ; + past = Past ; + -- Degree = Pos | Comp | Super ; + -- Person = P1 | P2 | P3 ; + -- AfterPrep = Yes | No ; + -- Possessive = NonPoss | Poss GenNum ; -- Noun definitions