############ gd.copula #################### # # ## A brief account of the copula in Gaelic ## Colin Batchelor, June 2011 # ####################### Features ####################### # ## here's a sample feature declaration (commented out) ## NB: only use *one* feature declaration per grammar # feature { ## case<2>: nom acc; NUM<2>: sg pl; GEND<2>: masc fem; PERS<2>: 1st 2nd 3rd; EMPH<2>: emph unemph; PROP<2>: proper common; EXIS<2>: exis+ exis-; } ## tense: past pres; ## ontology: sem-obj { ## phys-obj {animate-being {person animal} ## thing } ## situation {change {action} state} ## }; ## } # ######################### Words ######################### # ## word declarations include the lexical item, the ## family/category, the semantic sort, and any ## associated features # word is:Cop; word s:Cop; word tidsear:N; word ball-parlamaid:N; word annam:PP; word Calum:Name; word Somhairle:Name; word Sine:Name; word th:Bi; word tha:Bi; word a:Rel; word pre:P { ann: exis+; air: exis-; } word pro1:Pro { mi: 1st sg unemph; thu: 2nd sg unemph; e: 3rd sg unemph masc; i: 3rd sg unemph fem; } word pro2:ProEmph { mise: 1st sg emph; thusa: 2nd sg emph; esan: 3rd sg emph masc; } ## def noun(Sing, Plur, Class) { ## word Sing:N(Class) { ## *: sg sg-X; ## Plur: pl pl-X; ## } ## } ## ## noun(policeman, policemen, person) ## noun(peach, peaches, thing) # # # ######################### Rules ######################### # ################## Lexicon/Categories #################### # ## same example lexical families for English ## these examples show use of features and semantics # ## family IntransV(V) { ## entry: s<1> [E] \ np<2> [X nom] : E:action(* X:animate-being); ## } ## family Bi(V) { entry: s<1>/pp<2>; } family P { entry: pp<2>/np<2>; } family Pro {entry: np<2>[unemph];} family ProEmph { entry: np<2>[emph]; } family N { entry: np<2>[common]; } family Name { entry: np<2>[proper]; } family Cop(V) { entry: (s<1>/np<2>[emph])/np<2>[proper]; entry: (s<1>/np<2>[unemph 3rd masc sg])/np<2>[exis+]; } family NP { entry: np<2>/np<2>; } family PP { entry: pp<2>; } family Rel { entry: (np\np)/s; } ####################### Testbed ######################### # ## use just one testbed per grammar ## here's a sample testbed -- the number after the sentence ## is the expected number of parses # testbed { is mise Calum:1; is mise tidsear:0; s e tidsear a th annam:1; s e Calum a th annam:0; }