DEMO ENGLISH CONFIG (1.0) ROOTCAT S. FILES . LEXENTRIES (DEMO ENGLISH). TEMPLATES (DEMO ENGLISH). RULES (DEMO ENGLISH). GOVERNABLERELATIONS SUBJ OBJ OBJ2 COMP XCOMP OBL OBL-?+. SEMANTICFUNCTIONS ADJUNCT TOPIC FOCUS POSS STANDARD. NONDISTRIBUTIVES NUM PERS CONJ-FORM. EPSILON e. OPTIMALITYORDER NOGOOD. ---- DEMO ENGLISH RULES (1.0) S --> NP: (^ SUBJ)=! (! CASE)=NOM; VP: ^=!. VP --> (AUX) V: ^=!; (NP: (^ OBJ)=! "direct object" (! CASE)=ACC) (NP: (^ OBJ2)=! "secondary object" (! CASE)=DAT) PP*: { ! $ (^ ADJUNCT) " (! PTYPE) =c sem " "see if we need it" | (^ OBL) = !}; (PP: (^ OBL-TO) = ! "example of a constraining equation: require a value with =c" (! PFORM) =c to) (PP: (^ OBL-AG) = ! "example of a constraining equation: require a value with =c" (! PFORM) =c by ). NP --> (D) Adj*: ! $ (^ ADJUNCT); N. PP --> { P: ^ = ! "head of PP" (! PTYPE) =c sem; NP: (^ OBJ) = ! |P: ^ = ! "head of PP" (! PTYPE) =c nosem; NP: ^ = !} . ---- DEMO ENGLISH TEMPLATES (1.0) OPT-TRANS(P) = "template for verbs that can be trans or intrans" { @(TRANS P) | @(INTRANS P) }. INTRANS(P) = (^ PRED) = 'P<(^SUBJ)>'. INTRANS-OBL(P) = (^ PRED) = 'P<(^SUBJ)(^OBL)>'. "new TRANS Template allowing Passive Lexical Rule" TRANS (P) = @(PASS (^ PRED)='P<(^ SUBJ) (^ OBJ)>'). "new DITRANS template, allowing Dative Shift and Passive" "DITRANS (P) = @(PASS @(DAT-SHIFT (^ PRED)='P<(^ SUBJ) (^ OBJ) (^ OBJ2)>'))." DITRANS (P) = @(PASS @(DAT-SHIFT (^ PRED)='P<(^ SUBJ) (^ OBJ) (^ OBL-TO)>')). PASS(SCHEMATA) = { SCHEMATA |SCHEMATA (^ PASSIVE) = + (^ PARTICIPLE)=c past (^ OBJ)-->(^ SUBJ) (^ OBJ2) --> (^ OBJ) "for dative shift" { (^ SUBJ)-->(^ OBL-AG) |(^ SUBJ)-->NULL}}. DAT-SHIFT(SCHEMATA) = { SCHEMATA |SCHEMATA (^ OBJ)-->(^ OBJ2) (^ OBL-TO)-->(^ OBJ)}. VPRES = @(TENSE pres) @(MOOD indicative). VPAST = @(TENSE past) @(MOOD indicative). PASTP = (^ PARTICIPLE) = past. BARE-AGR = { (^ SUBJ NUM) = pl "either it is plural" | (^ SUBJ PERS) ~= 3 "or singular and not 3rd person" (^ SUBJ NUM) = sg}. S-AGR = (^ SUBJ PERS) = 3 "for verbs in -s" (^ SUBJ NUM) = sg. TENSE(T) = (^ TENSE) = T. MOOD(M) = (^ MOOD) = M. PRED(P) = (^ PRED) = 'P'. COUNT-NOUN(P N) = @(PRED P) (^ NUM) = N (^ PERS) = 3 (^ NTYPE) = count. ---- DEMO ENGLISH LEXICON (1.0) "all nouns here" girl N * @(COUNT-NOUN girl sg). bench N * @(COUNT-NOUN bench sg). bone N * @(COUNT-NOUN bone sg). bones N * @(COUNT-NOUN bone pl). "bones N * (^ PRED) = 'bone' (^ NUM) = pl (^ PERS) = 3. " homework N * @(COUNT-NOUN homework sg). zookeeper N * @(COUNT-NOUN zookeeper sg). gorilla N * @(COUNT-NOUN gorilla sg). gorillas N * @(COUNT-NOUN gorilla pl). banana N * @(COUNT-NOUN banana sg). bananas N * @(COUNT-NOUN banana pl). dog N * @(COUNT-NOUN dog sg). dogs N * @(COUNT-NOUN dog pl). "all adjectives here" small Adj * @(PRED small). smart Adj * @(PRED smart). "all verbs here" walk V * @(INTRANS walk) @VPRES @BARE-AGR; N * @(COUNT-NOUN walk sg). "do NOT have duplicate headwords/lexical entries!!!" "walk N * @(COUNT-NOUN walk sg)." ate V * @(OPT-TRANS eat) "optionally transitive verbs" @VPAST. eats V * @(OPT-TRANS eat) v @VPRES @S-AGR. drinks V * @(OPT-TRANS drink) @VPRES @S-AGR. devour V * @(TRANS devour) "don't do this, do Lexical Rules instead" "{ (^ PRED) = 'devour<(^SUBJ)(^OBJ)>' | (^ PRED) = 'devour<(^OBJ)(^OBL)>' }" @VPRES @BARE-AGR. devours V * @(TRANS devour) @VPRES @S-AGR. devoured V * @(TRANS devour) @VPAST @PASTP. gave V * @(DITRANS give) @VPAST. gives V * @(DITRANS give) @VPRES @S-AGR. given V * @(DITRANS give) @VPAST @PASTP. sleeps V * @(INTRANS sleep) @VPRES @S-AGR. sleep V * @(INTRANS sleep) @VPRES @BARE-AGR. slept V * @(INTRANS sleep) @VPAST @PASTP. waited V * {@(INTRANS wait) | @(INTRANS-OBL wait)} @VPAST @PASTP. "prepositions" by P * (^ PFORM) = by "needs to be more complicated" (^ PTYPE) = nosem. to P * (^ PFORM) = to (^ PTYPE) = nosem. on P * { (^ PRED) = 'on<(^OBJ)>' (^ PTYPE) = sem | (^ PTYPE) = nosem (^ PFORM) = on}. "auxiliaries" was AUX * @(TENSE past) @S-AGR. "determiners here" the D * (^DEF) = +. a D * (^DEF) = - (^ NUM) = sg. ----