Files
gf-core/lib/src/mongolian/CatMon.gf
hallgren 7c1be91839 Fix -path directives for Mongolian
+ Remove references to alltenses.
+ Remove references to ../../prelude
+ Add missing reference to ../common in mongolian/SymbolMon.gf
2015-03-13 14:41:30 +00:00

114 lines
3.1 KiB
Plaintext

--# -path=.:../abstract:../common:../prelude
concrete CatMon of Cat = CommonX - [CAdv,Temp,Tense] ** open ResMon, Prelude in {
flags optimize=all_subs ; coding=utf8 ;
lincat
-- Tensed/Untensed
S = {s : SType => Str} ;
QS = {s : QForm => Str} ;
RS = {s : ComplType => Str ; existSubject : Bool} ;
SSlash = {s : Str ; c2 : Complement} ;
-- Clause (variable tense) e.g. "John walks"/"John walked"
Cl = {s : ClTense => Anteriority => Polarity => SType => Str} ;
ClSlash = {s : ClTense => Anteriority => Polarity => SType => Str ; c2 : Complement} ;
Imp = {s : Polarity => ImpForm => Str} ;
-- Question
QCl = {s : ClTense => Anteriority => Polarity => QForm => Str} ;
IP = {s : RCase => Str} ;
IComp = {s : Str} ;
IDet = {s : RCase => Str ; n : Number} ;
IQuant = {s : RCase => Str} ;
-- Relative
-- Mongolian lacks relative pronouns: a relative clause consists of a truncated sentence
-- (desentential phrase) in apposition to. The verbs of relative clauses in Mongolian take
-- verbal nominal endings (NDS). The subject goes into the genitive case, which transforms the RP.
-- (Binnick, 1979:89; Kullmann 2005:392)
RCl = {s : ClTense => Anteriority => Polarity => SType => Str ; existSubject : Bool} ;
RP = {s : Str} ;
-- Verb
VP = VerbPhrase ;
Comp = {s : RCase => Str} ;
VPSlash = VerbPhrase ** {c2 : Complement} ;
-- Adjective
AP = { s : Str } ;
CAdv = {s : Str} ** {c2 : Complement} ;
-- Noun (Mongolian common nouns have neither gender nor animacy):
CN = {s : Number => NCase => Str} ;
NP = NounPhrase ;
Pron = { s : PronForm => Str ; n : Number ; p : Person} ;
-- Determiners
-- The determined noun has the case parameter specific for the determiner
Det = {
s : Str ;
sp : RCase => Str ; -- substantival form
isNum : Bool ; -- true, if a numeral is present
isPoss : Bool ; -- true, if a possessive is present
isDef : Bool ; -- when definite, is true
isPre : Bool
} ;
Ord = { s : Str } ;
Predet = {
s : Str ;
isPre : Bool ;
isDef : Bool
} ;
Quant = {
s : Number => Str ;
sp : Number => NCase => Str ;
isPoss : Bool ;
isDef : Bool
} ;
-- Numeral
Num = {s : Str ; sp : RCase => Str ; n : Number ; isNum : Bool} ;
Card = {s : Str ; sp : RCase => Str ; n : Number} ;
Numeral = {s : CardOrd => Str; n : Number} ;
Digits = {s : CardOrd => Str ; n : Number} ;
-- Structural
Conj = {s1,s2 : Str} ;
Subj = {s : Str ; isPre : Bool} ;
Prep = {s : Str ; rc : RCase} ;
-- Open lexical classes, e.g. Lexicon
V,VA,VS,VQ = Verb ;
VV = Aux ;
V2,V2S,V2A,V2Q,V2V = Verb ** {c2 : Complement} ;
V3 = Verb ** {c2,c3 : Complement} ;
A = Adjective ;
A2 = Adjective ** {c2 : Complement} ;
N = Noun ;
N2 = Noun ** {c2 : Complement} ;
N3 = Noun ** {c2,c3 : Complement} ;
PN = {s : RCase => Str} ;
Temp = {s : Str ; t : ClTense ; a : Anteriority} ;
Tense = {s : Str ; t : ClTense} ;
}