(Ger) Some lincats changed to remove number in plural; DetQuant and DetQuantOrd reimplemented

This commit is contained in:
Hans Leiss
2023-12-22 22:44:28 +01:00
parent c365d802fe
commit 21db782ef5
17 changed files with 224 additions and 181 deletions
+11 -12
View File
@@ -29,7 +29,7 @@ concrete CatGer of Cat =
IP = {s : Case => Str ; n : Number} ;
IComp = {s : Agr => Str ; ext : Str} ;
IDet = {s : Gender => Case => Str ; n : Number} ;
IQuant = {s : Number => Gender => Case => Str} ;
IQuant = {s : GenNum => Case => Str} ;
-- Relative
@@ -59,17 +59,16 @@ concrete CatGer of Cat =
g : Gender
} ;
NP = ResGer.NP ;
Pron = {s : NPForm => Str ; a : Agr} ;
Pron = {s : NPForm => Str ; a : Agr ; sp : PossForm => Str} ;
Det = {s,sp : Bool => Gender => Case => Str ; -- True if DefArt is dropped, HL 8/22
n : Number ; a : Adjf ; isDef, hasDefArt : Bool} ;
DAP = {s,sp : Gender => Case => Str ; n : Number ; a : Adjf ; isDef,hasDefArt : Bool} ;
-- HL 7/2022: first Bool = True if used to glue in Sg with preposition
-- second Bool is True if a cardinal number is present
Quant = {
s, sp : Bool => Bool => Number => Gender => Case => Str ;
a : Adjf ;
aPl : Adjf ; --- to distinguish "meine guten Freunde" / "gute Freunde"
hasDefArt : Bool
s,sp : GenNum => Case => Str ;
a : Adjf ;
hasDefArt : Bool ;
delCardOne : Bool -- delete following cardinal 1 (IndefArt and no_Quant)
} ;
Predet = {
s : Number => Gender => Case => Str ;
@@ -77,8 +76,8 @@ concrete CatGer of Cat =
a : PredetAgr -- if an agr is forced, e.g. jeder von uns ist ...
} ;
Num = {s : Gender => Case => Str ; n : Number ; isNum : Bool} ;
Card = {s : Gender => Case => Str ; n : Number} ;
Num = {s,sp : AForm => Str ; n : Number ; isNum : Bool} ; -- Num,Card.s AForm HL 12/23
Card = {s : AForm => Str ; n : Number} ; -- inflection mainly for: einer,eine,eines
Ord = {s : AForm => Str} ;
-- Numeral
@@ -140,7 +139,7 @@ concrete CatGer of Cat =
Conj = \c -> c.s1 ++ c.s2 ;
Det = \det -> det.s ! False ! Masc ! Nom ;
Prep = \prep -> case prep.isPrep of {isPrepDefArt => prep.s ! GSg Masc ;
_ => prep.s ! GPl } ;
Prep = \prep -> case prep.t of {isPrepDefArt => prep.s ! GSg Masc ;
_ => prep.s ! GPl } ;
}