STANDARD COMMON FEATURES (1.0) ANIM: -> $ {+ -}. AQUANT: -> << [ ADJUNCT PRED QUANT-TYPE DEGREE DEG-DIM ]. ATYPE: -> $ {"adverbial" attributive predicative}. CASE: -> $ {acc dat erg gen inst loc nom obl}. CLAUSE-TYPE: -> $ { adv cond decl imp int nom pol-int rel wh-int}. "need to be trimmed down" COMMON: -> $ { count gerund mass measure partitive }. DEG-DIM: -> $ {equative neg pos}. DEGREE: -> $ {comparative positive superlative}. DET: --> << [ DEIXIS DET-TYPE PRED ]. DET-TYPE: -> $ {article def demon indef int rel}. "check article value" GEND: { -> $ {fem masc neut} | -> << [ FEM MASC NEUT ] }. GEND-SEM: -> $ {female male nonhuman}. LOCATION-TYPE: -> $ { city country }. MOOD: -> $ {imperative indicative subjunctive successive}. NAME-TYPE: -> $ {first_name last_name }. NSEM: -> << [ COMMON NUMBER-TYPE PROPER TIME ]. NSYN: -> $ { common pronoun proper }. NTYPE: -> << [ CHECK NSEM NSYN ]. NUM: -> $ {pl sg}. NUMBER: -> << [NUMBER-TYPE PRED ADJUNCT CLASSIFIER-FORM MOD]. NUMBER-TYPE: -> $ {card fract ord percent}. PASSIVE: -> $ {+ -}. PERF: -> $ {+ - +_ -_}. PERS: -> $ {1 2 3}. PROG: -> $ {+ - +_ -_}. PRON-TYPE: -> $ {demon expl_ free inh-refl_ int locative null pers quant poss recip refl rel}. PROPER: -> << [ PROPER-TYPE LOCATION-TYPE NAME-TYPE ]. PROPER-TYPE: -> $ { addr_form location name organization title }. PSEM: -> $ {ag ben compar dir inst loc manner num part poss purp temp }. PTYPE: -> $ {nosem sem}. QUANT: -> << [ADJUNCT QUANT-TYPE POL PRED DEGREE DEG-DIM ]. QUANT-TYPE: -> $ {comparative equative existential gen negative superlative universal}. SPEC: -> << [ADJUNCT AQUANT DET NUMBER POSS QUANT SPEC-TYPE]. STMT-TYPE: -> $ { decl header imp int }. TENSE: -> $ {fut null past pres}. TIME: -> $ { date day hour minute month season second week year}. TNS-ASP: -> << [MOOD PERF PROG TENSE]. VTYPE: -> $ {aux copular main modal noncopular predicative raising}. ---- BOKMAL NORSK FEATURES (1.0) "Grammatical Functions:" XCOMP. PREDLINK. COMP.NULL. OBJ. OBJben. OBL. "OBL-?*." OBL-COMPAR. OBJth. SUBJ. X. "Semantic functions:" ADJUNCT. ADJ-COMPAR. FOCUS. TOPIC. XADJUNCT. "Features:" _ABSTRACT: -> $ {+ -}. ADDRESS: -> $ {respect}. ADET. ADJUNCT-TYPE: -> $ {degree}. ADV-TYPE: -> $ {degree loc manner neg temp reason focus root quantmod}. _ADVERBIAL: -> $ {+ -}. _ADVQUANT: -> $ {+ -}. AGRGEND: -> << [FEM MASC NEUT]. AGRNUM: -> $ {sg pl}. "For use in literal numeral expressions" !ANIM: -> $ {}. _ANIM: -> $ {+ -}. _ANTECED: -> << [NUM PERS ADDRESS ARG0 ind]. APP. !AQUANT: -> << [ ADJUNCT PRED DEGREE DEG-DIM DEF CHECK]. _ARITH: -> $ {+ -}. ASEM: -> $ {temp}. ASP: -> $ {continuous progressive durative inchoative}. _ASPVERB: -> $ {+_ -}. _ATTR: -> $ {+ -}. _AUX-SELECT: -> $ {be}. _AUX1COMP: -> $ {+ -}. &CASE: -> $ {gen nom obl}. CHECK: -> << [_ABSTRACT _ADVERBIAL _ADVQUANT _ANIM _ANTECED _ARITH _ASPVERB _ATTR _AUX-SELECT _AUX1COMP _CIRCP-FORM _CLKEXPR _CONJREL _CONJUNCT _DEF-MORPH _DEG-MORPH _DEPON _DER-HEAD _FLOATING _GUESS _HEAD _HUMAN _IMPSUBJNUM _INITCOMMA _ISLAND _MAIN-CL _MOVED-BEN _MOVED-OBJ _MRSPTR _MSRBL _NEGATED _NONARG _NOUN _NUMLIT _OBJINSITU _OTHERQUANT _P-SELFORM _PADV _PARTITIVE _POSTFINADV _PREDEF _PREDET _PREDICATIVE _PREPEXISTS _PREPOSS _PREQ _PART _PRT-VERB _PRTasp-VERB _PRTasp-FORM _PSEUDOPASS _QUOTED _REFL _ROOT _SEL _SUPINE _TOPVP _TOUGH _UNIQUEOCCURRENCE _VCONSTR OUTSCPD RELS _CONJCORR _WHSUBJ]. _CIRCP-FORM. !CLAUSE-TYPE: -> $ {adv nominal pol-int rel wh-int}. _CLKEXPR: -> $ {+_ -}. COLLECTIVE: -> $ {+ -}. COMP-FORM: -> $ {at bare da da-caus der dersom enten etterat ettersom etter` som etter` hvert` som for forat for` at for-å fordi før hvis hvorav hvoretter hvorfra hvorvidt idet i` tilfelle innen inntil mens når om selv` om som siden slik` at samtidig` som slik` som skjønt straks så såfremt å til uansett` om}. _CONJUNCT: -> $ {+ -}. COORD-FORM: -> $ {eller og men for comma colon ampersand hyphen samt pluss og` så så}. COORD-POL: -> $ {pos neg}. DEF: -> $ {+ -}. _DEF-MORPH: -> $ {+ -}. _DEG-MORPH: -> $ {positive comparative superlative}. DEIXIS: -> $ {distal proximal}. _DEPON: -> $ {+}. _DER-HEAD: -> $ {+ -}. +DET: -> << [DET-FORM]. DET-FORM: -> $ {hvilken}. !DET-TYPE: -> $ {article demon int nonspec}. DIGVALUE. EXPL-TYPE: -> $ {presentative}. FEM: -> $ {+ -}. FIRST. _FLOATING: -> $ {+ -}. FOCUS-INT. FREEPRED. FST-EL. "Experimental - to analyse compounds." &GEND: -> << [FEM MASC NEUT]. &GEND-SEM: -> $ {female male}. _GUESS: -> $ {+ -}. GVN-TOP. _HEAD. HEADNUM: -> $ {sg pl}. "For use in literal numeral expressions" HIGHER. "For number intervals." _HUMAN: -> $ {+ -}. _IMPSUBJNUM: -> $ {sg pl}. _INITCOMMA: -> $ {+ -}. _ISLAND: -> $ {+ -}. !LOCATION-TYPE: -> $ {}. LOWER. "For number intervals." _MAIN-CL: -> $ {+ -}. MASC: -> $ {+ -}. MEASDIM: -> $ {age length weight}. MEASURE. MEASURENOUN: -> $ {+ -}. MOD-TYPE: -> $ {root epistemic}. &MOOD: -> $ {imperative indicative}. _MOVED-BEN: -> $ {+ -}. _MOVED-OBJ: -> $ {+ -}. _MSRBL: -> $ {+ -}. !NAME-TYPE: -> $ {}. _NEGATED: -> $ {+ -}. NEUT: -> $ {+ -}. _NONARG: -> $ {+ -}. _NOUN: -> $ {+ -}. !NSEM: -> << [ COMMON PROPER MEASDIM MEASURENOUN COLLECTIVE TIME SEASON]. !NTYPE: -> << ["GRAIN" NSEM NSYN "MEASURENOUN MEASDIM TEMPNOUN WEEKDAY TOFD"]. +NUM: -> $ {nonum}. !NUMBER: -> << [NUMBER-TYPE PRED HIGHER LOWER]. !NUMBER-TYPE: -> $ {card ord interval}. NUMCOMP. _NUMLIT: -> $ {+ -}. NUMPRECOMP. NUMSPEC. _OBJINSITU: -> $ {+ -}. ORD. _OTHERQUANT: -> $ {+ -}. "To distinguish between quantifier and adjective-like reading of 'annen'" _PARTITIVE: -> $ {+ -}. _PADV: -> $ {+ -}. PASS-TYPE: -> $ {morph periph complex ptc}. &PERF: -> $ {+ -}. +PERS: -> $ {nopers}. PFORM": -> $ {av av` for av` fra av` med av` på bak bakover blant bort bort` fra borti etter etter` for fast` i for før foran forbi fra fra` om fram fram` med fram` til framover frampå` om frem frem` med frem` til fremfor frempå` om gjennom hos i igjennom imot inn inn` blant inn` i inn` på inn` til inne` i inne` med innom innover innpå løs` på med mellom mot ned ned` i ned` mot ned` på nedover om opp opp` etter opp` for opp` i opp` med opp` mot opp` om opp` på opp` til opp` under oppover over over` av overfor på på` med per rett` opp rundt rundt` med sammen siden som sørover til til` med under unna unna` for ut ut` av ut` for ut` gjennom ut` i ut` med ut` mot ut` om uten utover ved vekk` fra}". POSS. "has f-structure of a nominal phrase as its value, see POSSP rule" POSS-TYPE: -> $ {1pers 2pers 3pers 3persrefl pp}. _POSTFINADV: -> $ {+ -}. PRECOORD-FORM: -> $ {både enten hverken verken først}. _PREDEF: -> $ {+ -}. _PREDET: -> $ {+ -}. _PREDICATIVE: -> $ {+ -}. _PREPEXISTS: -> $ {+ -}. _PREPOSS: -> $ {+ -}. _PREQ: -> $ {+ -}. PRESENTATIVE: -> $ {+ -}. PRESENTATIVE-TYPE: -> $ {passive}. "Passive presentative" PRON-FORM" -> $ {det hva hvem der}". !PRON-TYPE: -> $ {expl_ free int null pers refl refrefl recip rel quant}. !PROPER: -> << [ PROPER-TYPE ]. !PROPER-TYPE: -> $ {name}. PROSODY: -> $ {questioning exclamatory}. _PART: -> $ {+_ -_}. PRT-FORM: -> $ {akterut an av av` på bort borti etter fast fatt for forbi fore fra frem frempå fri gjennom hen i ifra i` gang i` hop igang igjen igjennom imot inn inn` i inne innom innpå istykker i` stykker i` vei løs med mot ned ned` i ned` på nær om omkring opp opp` for over på rede rundt sammen sund tak til til` syne tilbake under unna ut ut` av ute utfor utover vare ved vekk}. _PRTasp-FORM: -> $ {på}. _PRT-VERB: -> $ {+}. _PRTasp-VERB: -> $ {+}. &PSEM: -> $ {ag ben inst part poss}. _PSEUDOPASS: -> $ {+}. _P-SELFORM. !QUANT: -> << [CHECK PRED QUANT-TYPE ADJUNCT]. &QUANT-TYPE: -> $ {existential negative universal}. _QUOTED: -> $ {+ -}. REF: -> $ {+ -}. REF-COORD: -> $ {+ -}. _REFL: -> $ {+ -}. REST. RESTR: -> $ {+ -}. _ROOT: -> $ {+ -}. _SEL. SEASON: -> $ {+ -}. SEMPL: -> $ {+ -}. !SPEC: -> << [AQUANT DET NUMBER POSS QUANT MEASURE TITLE ADET ORD]. &STMT-TYPE: -> $ {decl int imp}. _SUPINE: -> $ {+ -}. NAME-MOD. TEMPNOUN: -> $ {+ -}. !TENSE: -> $ {past pres fut non-past notense}. !TIME: -> << [TEMPNOUN WEEKDAY TOFD]. TITLE: -> << [TITLEFORM ADJUNCT PRED]. TITLEFORM. !TNS-ASP: -> << [MOOD TENSE ASP]. TOFD: -> $ {+ -}. TOKEN. TOPCP: -> $ {+ -}. TOPIC-REL: -> << [PRED NUM GEND PERS ADV-TYPE PRON-TYPE]. _TOPVP: -> $ {+ -}. _TOUGH: -> $ {+ -}. _UNIQUEOCCURRENCE: -> $ {+_}. _VCONSTR: -> $ {cleft extrapos}. VFORM: -> $ {fin inf pastpart prespart}. &VTYPE: -> $ {aux main}. WEEKDAY: -> $ {+ -}. WEIGHT. _WHSUBJ: -> $ {+ -}. o::."" m::. TOP. LTOP. RELS. RELS_EL. H-CONS. H-CONS_EL. LBL. ARG0. RSTR. BODY. CARG. SC_ARG. OUTSCPD. ARG. MARG. DARG. INDEX. EVENT. DIM. NATGEND: -> $ {m f n animate gender}. PRONTYPE. C-ARG. L-INDEX. R-INDEX. DIV: -> $ {+ -}. GRIND: -> $ {+ -}. PSVTYPE: -> $ {morph periph ptc}. SF: -> $ {prop ques comm}. LNK. HI. LO. _MSG. _POTMSG. _SUPMSG. _SUPPTR. _TOPLBL. _CAT. _CATSUFF. _COMPAR. _PRT. _PRT2. _SUBJNCT. _MRSPTR. _ANTECEDVAR. _TTL. _LOCAL. "Attribute for storing EPs that need to be referred to elsewhere." _LOCLBL. _LOCARG0. _QUANT. _ADET. _AQUANT. _PQUANT. _TOPHNDL. _CARD. _CONJCORR: -> $ {+ -}. _CONJREL: -> $ {'both_and' 'either_or' 'neither_nor'}. _FSTEL. _SECEL. _XCLUDERELS: -> $ {+ -}. _ARG1HATCH. _MSGQEQ. _SBJQEQ. _PPARG1. _LEFTSCOPE. _RIGHTSCOPE. handle. first. rest. next. type. relation. ASPECT. &PROG: -> $ {+ -}. "PROG: -> $ {+ -}. Only used for MRSs, listed under COMMON FEATURES." INCH: -> $ {+ -}. TPC. PSV. ASPECT-PROTRACTED: -> $ {+ -}. ASPECT-STATIVE: -> $ {+ -}. ASPECT-TELIC: -> $ {+ -}. ASPECT-BOUNDED: -> $ {+ -}. ASPECT-INCHOATIVE: -> $ {+ -}. FIRST-FRAGM. REST-FRAGM. L-HNDL. R-HNDL. MAIN. SUBORD. "" ---- BOKMAL NORSK RULES (1.0) "Rules for nominal phrases:" NP --> { ( { [ AP: ! $ (^ ADJUNCT) { ~(! VFORM) @UPDOWNAGR | (! VFORM) ^ = (! SUBJ) @UPDOWNVPAGR } @(COMPLETE (! VFORM)) (^ CHECK _ATTR)=+ ~(! CHECK _ADVERBIAL)=+ (^ DEF)=(! DEF) (^ REF)=(! REF) (! ATYPE)=attributive { (^ DEF)=+ ~(^ NTYPE NSYN)=proper { ~(! DEGREE)=superlative (^ CHECK _PREDEF)=c + | (! DEGREE)=c superlative { (^ CHECK _DEF-MORPH)=c + | ~(^ CHECK _DEF-MORPH)=+ @MRS-DEF } } | (^ DEF)=+ (^ NTYPE NSYN)=c proper | (^ DEF)=- }; (COMMA)]+ | APcoord: ! $ (^ ADJUNCT) @UPDOWNAGRcoord ^ = (! CHECK _HEAD) (^ CHECK _ATTR)=+ ~(! CHECK _ADVERBIAL)=+ (^ DEF)=(! DEF) (^ REF)=(! REF) (! ATYPE)=attributive { (^ DEF)=+ ~(^ NTYPE NSYN)=proper { ~(! DEGREE)=superlative (^ CHECK _PREDEF)=c + | (! DEGREE)=c superlative { (^ CHECK _DEF-MORPH)=c + | ~(^ CHECK _DEF-MORPH)=+ @MRS-DEF } } | (^ DEF)=+ (^ NTYPE NSYN)=c proper | (^ DEF)=- } }), "if the NP (and the adjective) are +DEF, then _PREDEF must be +, unless the A is superlative. +_PREDEF is introduced by def. determiners, including possessives." VPattr*: ! $ (^ ADJUNCT) @UPDOWNVPAGR (^ CHECK _ATTR)=+ (^ DEF)=(! CHECK _DEF-MORPH) ^ = (! SUBJ) { (^ DEF)=+ (^ CHECK _PREDEF)=c + | (^ DEF)=- } @(COMPLETE (! DEGREE)); { NCMPL: ^=! @(COMPLETENOMFEATS) | PROPP: ^=! { (^ CHECK _PREDET)=c + | ~(^ CHECK _PREDET)=+ (^ ADJUNCT $ ATYPE)}} { CPnullc: @RESTREL; (COMMA) "Null-som relative clauses cannot have intervening complements before them." | ({ POSS: ^=! (^ CHECK _DEF-MORPH)=c + "" @MRS-POSS "" | PPtil: @POSSPP}) ({ (COMMA) PPCMPL: @NPADJUNCTPP @(OT-MARK Mark6) | PARpp: @NPADJUNCTPP | ADVP: ! $ (^ ADJUNCT) "" @MRS-ADNOMADVSYNT ""}) (PPsel: @NSELPP) (CONJPcomp: @COMPCLAUSE) (VP': @INFREL) (VPpart:! $ (^ ADJUNCT) ^ = (! SUBJ) @MRS-PTCREL) ({ ADVPloc: !$(^ ADJUNCT) "@(OT-MARK Mark6)" ""@MRS-ADJUNCTPP"" | (COMMA) CPloc: @LOCREL2; (COMMA) | CPtmprel: (! COMP-FORM)=c da (^ NTYPE NSEM TIME TEMPNOUN)=c + @LOCREL3; (COMMA) }) ({ CPrel: @RESTREL | CPnom: { (^ COMP)=! ~(! CHECK _P-SELFORM) "To ensure CPnom only within PPsel in such cases." | @NOMCOMPCLAUSE }} (COMMA)) (ADVpar: !$(^ ADJUNCT) ""@MRS-PARADVSYNTAX""), (ParP: !$(^ ADJUNCT) ""@MRS-ADJUNCTPP"") } | ({ AP+: ! $ (^ ADJUNCT) "This second conjunct is for headless NPs" { ~(! VFORM) @UPDOWNAGR | (! VFORM) ^ = (! SUBJ) @UPDOWNVPAGR } (^ CHECK _ATTR)=+ ~(! CHECK _ADVERBIAL)=+ (^ DEF)=(! DEF) (^ REF)=(! REF) (! ATYPE)=attributive { (^ DEF)=+ { ~(! DEGREE)=superlative (^ CHECK _PREDEF)=c + | (! DEGREE)=c superlative { (^ CHECK _DEF-MORPH)=c + | ~(^ CHECK _DEF-MORPH)=+ @MRS-DEF } } | (^ DEF)=- } | APcoord: ! $ (^ ADJUNCT) "This second conjunct is for headless NPs" @UPDOWNAGRcoord ^ = (! CHECK _HEAD) (^ CHECK _ATTR)=+ ~(! CHECK _ADVERBIAL)=+ (^ DEF)=(! DEF) (^ REF)=(! REF) (! ATYPE)=attributive { (^ DEF)=+ { ~(! DEGREE)=superlative (^ CHECK _PREDEF)=c + | (! DEGREE)=c superlative { (^ CHECK _DEF-MORPH)=c + | ~(^ CHECK _DEF-MORPH)=+ @MRS-DEF } } | (^ DEF)=- } }), "if the NP (and the adjective) are +DEF, then _PREDEF must be +. +_PREDEF is introduced by def. determiners, including possessives." VPattr*: ! $ (^ ADJUNCT) @UPDOWNVPAGR (^ CHECK _ATTR)=+ (^ DEF)=(! CHECK _DEF-MORPH) ^ = (! SUBJ) { (^ DEF)=+ (^ CHECK _PREDEF)=c + | (^ DEF)=- } @(COMPLETE (! DEGREE)); e: (^ PRED)='pro' { (^ CHECK _PREDET)=c + | ~(^ CHECK _PREDET)=+ (^ CHECK _ATTR)=c + (^ ADJUNCT) (^ NUM)=pl } @MRS-NELLIPSIS; { CPnullc: @RESTREL; (COMMA) | (VP': @INFREL (^ CHECK _PREDET)=c + ) (CPrel: @RESTREL; (COMMA))} }. NPgen --> ({ AP+: ! $ (^ ADJUNCT) { ~(! VFORM) @UPDOWNAGR | (! VFORM) ^ = (! SUBJ) @UPDOWNVPAGR } (^ CHECK _ATTR)=+ ~(! CHECK _ADVERBIAL)=+ (^ DEF)=(! DEF) (! ATYPE)=attributive { (^ DEF)=+ { ~(! DEGREE)=superlative (^ CHECK _PREDEF)=c + | (! DEGREE)=c superlative { (^ CHECK _DEF-MORPH)=c + | ~(^ CHECK _DEF-MORPH)=+ @MRS-DEF } } | (^ DEF)=- } | APcoord: ! $ (^ ADJUNCT) @UPDOWNAGRcoord ^ = (! CHECK _HEAD) (^ CHECK _ATTR)=+ ~(! CHECK _ADVERBIAL)=+ (^ DEF)=(! DEF) (! ATYPE)=attributive { (^ DEF)=+ { ~(! DEGREE)=superlative (^ CHECK _PREDEF)=c + | (! DEGREE)=c superlative { (^ CHECK _DEF-MORPH)=c + | ~(^ CHECK _DEF-MORPH)=+ @MRS-DEF } } | (^ DEF)=- } }), "if the NP (and the adjective) are +DEF, then _PREDEF must be +. +_PREDEF is introduced by def. determiners, including possessives." VPattr*: ! $ (^ ADJUNCT) @UPDOWNVPAGR (^ CHECK _ATTR)=+ (^ DEF)=(! CHECK _DEF-MORPH) ^ = (! SUBJ) { (^ DEF)=+ (^ CHECK _PREDEF)=c + | (^ DEF)=- } @(COMPLETE (! DEGREE)); { Ngen: ^=! @(COMPLETENOMFEATS) | PROPgen: ^=! (^ CHECK _PREDET)=c + }. "Rule for questioning the degree of an adjective, such as 'Hvor store hus liker du?':" NPint --> APint+: ! $ (^ ADJUNCT) @UPDOWNAGR ~(! CHECK _ADVERBIAL)=+ ~(^ DEF)=+ ~(! DEF)=+; N: ^=! ~(^ CHECK _PREDET)=+ @(COMPLETENOMFEATS); (PPCMPL: @ADJUNCTPP @(OT-MARK Mark6)) ({ CPrel: @RESTREL |CPnullc: @RESTREL} (COMMA)). NPsit --> POSSCOMP: (^ OBJ)=! "POSSCOMP: phrase type restricted to QuantP and NP." (^ PRED)='SIT-INVOLVES<(^ OBJ)>' (^ NUM)=sg (! CASE)=nom @NEUT ~(! DEF)=+ ""@MRS-NPSIT""; ({ CPrel: @RESTREL |CPnullc: @RESTREL} (COMMA)). "Non-agreeing subjects: 'Bil er dyrt'." NPtemp --> A: ! $ (^ ADJUNCT) (! ASEM)=temp; N: ^=! (^ NTYPE NSEM TIME TEMPNOUN)=c +. "A top-level category in nominal phrases just for the purpose of introducing non-restrictive relative clauses:" DescP --> REFP: @(COMPLETENOMFEATS); COMMA CPrel: @NONRESTREL; (COMMA). "All determiners are c-structure functional heads, and their c-structure complements are f-structure co-heads with them: the complete nominal phrase has one global f-structure. ALLQP is top level:" ALLQP --> { (ADVdeg: (! PRED FN)=c nesten !$(^ SPEC QUANT ADJUNCT) "" @MRS-QUANTDEGADVSYNT "") ALLQ: ^=! (^ CHECK _PREDET)=+ (^ CHECK _PREQ)=+ "@COMPLETENOMFEATS" "_PREQ is referred to by DP and POSSP rules"; NPCMPL: ^=! ~(! CHECK _DEF-MORPH)=+ @COMPLETENOMFEATS | (ADVdeg: (! PRED FN)=c nesten !$(^ SPEC QUANT ADJUNCT) "" @MRS-QUANTDEGADVSYNT "") ALLQ: (^ PRED)='pro' ""@(MRS-OBJECTGVN generic-nom)"" "{ (^ NUM)=c pl | ~(^ NUM)=pl (^ GEND NEUT)=c +}" "Remove this -it only applies to 'all'." @COMPLETENOMFEATS; (PPCMPL: @ADJUNCTPP @(OT-MARK Mark6)) ({ CPrel: @RESTREL |CPnullc: @RESTREL} "Relative clause as daughter of ALLQP only if the ALLQP has no c-str. complement: restrictive relclauses always attach to the lowest phrase in a nominal phrase complex." (COMMA)) | (ADVdeg: (! PRED FN)=c nesten !$(^ ADJUNCT) "" @MRS-QUANTDEGADVSYNTpart "") ALLQ: ^=! (^ CHECK _PREDET)=+ (^ CHECK _PREQ)=+; { ALLQPARTCOMP: (^ OBL)=! (^ NTYPE)=(! NTYPE) @PARTPERCOLATEANT "" @MRS-COVPART "" | PPpart: @PARTITIVEPP1 } (CONJPcomp: @QUANTPARTCOMPCLAUSE)}. ALLQPgen --> { (ADVdeg: (! PRED FN)=c nesten !$(^ SPEC QUANT ADJUNCT) "" @MRS-QUANTDEGADVSYNT "") ALLQ: ^=! (^ CHECK _PREDET)=+ (^ CHECK _PREQ)=+ "@COMPLETENOMFEATS" "_PREQ is referred to by DP and POSSP rules"; NPgen: ^=! ~(! CHECK _DEF-MORPH)=+ @COMPLETENOMFEATS | (ADVdeg: (! PRED FN)=c nesten !$(^ SPEC QUANT ADJUNCT) "" @MRS-QUANTDEGADVSYNT "") ALLQgen: (^ PRED)='pro' ""@(MRS-OBJECTGVN generic-nom)"" @COMPLETENOMFEATS | (ADVdeg: (! PRED FN)=c nesten !$(^ ADJUNCT) "" @MRS-QUANTDEGADVSYNTpart "") ALLQ: ^=! (^ CASE)=gen (^ CHECK _PREDET)=+ (^ CHECK _PREQ)=+; ALLQPARTCOMPgen: (^ OBL)=! (^ NTYPE)=(! NTYPE) @PARTPERCOLATEANT "" @MRS-COVPART "" }. DP --> { D: (^ CHECK _PREDET)=+; DCOMP: (^ CHECK _PREDEF)=+ { (^ CHECK _PREQ)=c + | ~(^ CHECK _PREQ)=+ @(COMPLETENOMFEATS)} | D: (^ PRED)='pro' { (^ CHECK _PREQ)=c + | ~(^ CHECK _PREQ)=+ @(COMPLETENOMFEATS)} (^ CHECK _PREDET)=+ ""@(MRS-OBJECTGVN generic-nom)""; (PPtil: @POSSPP2) (PPCMPL: @ADJUNCTPP @(OT-MARK Mark6)) ({ CPrel: @RESTREL |CPnullc: @RESTREL} (COMMA)) | D: ^=! { (^ CHECK _PREQ)=c + | ~(^ CHECK _PREQ)=+ @(COMPLETENOMFEATS)} (^ CHECK _PREDET)=+; PPpart: @PARTITIVEPP2; ({ CPrel: @RESTREL (^ SPEC DET DEIXIS)=c distal |CPnullc: @RESTREL (^ SPEC DET DEIXIS)=c distal} "Restr. relclause after partitive PP" (COMMA))}. "only possible with 'den', not 'denne'" DPgen --> { D: (^ CHECK _PREDET)=+; DCOMPgen: (^ CHECK _PREDEF)=+ { (^ CHECK _PREQ)=c + | ~(^ CHECK _PREQ)=+ @(COMPLETENOMFEATS)} | Dgen: (^ PRED)='pro' { (^ CHECK _PREQ)=c + | ~(^ CHECK _PREQ)=+ @(COMPLETENOMFEATS)} (^ CHECK _PREDET)=+ ""@(MRS-OBJECTGVN generic-nom)"" }. DPint --> { Dint: (^ CHECK _PREDET)=+ "@(COMPLETENOMFEATS)"; DCOMP: (^ CHECK _PREDEF)=+ @(COMPLETENOMFEATS) | Dint: (^ PRED)='pro' @(COMPLETENOMFEATS) ""@(MRS-OBJECTGVN generic-nom)""; (PPCMPL: @ADJUNCTPP @(OT-MARK Mark6)) ({ CPrel: @RESTREL |CPnullc: @RESTREL} (COMMA)) | Dint: ^=! (^ CHECK _PREDET)=+ @(COMPLETENOMFEATS); PPpart: @PARTITIVEPP2; ({ CPrel: @RESTREL |CPnullc: @RESTREL} (COMMA))}. DPintgen --> Dint: (^ CHECK _PREDET)=+ "@(COMPLETENOMFEATS)"; DCOMPgen: (^ CHECK _PREDEF)=+ @(COMPLETENOMFEATS). POSSP --> { { POSS: (^ CHECK _PREDET)=+ "" @MRS-POSS "" | NOMgen: (^ SPEC POSS)=! "Genitive phrases as alternative specifiers." (! CASE)=c gen @(COMPLETE (! CASE)) @COMPLETECHECKFEATS "~(^ CHECK _PREQ)=+" (^ CHECK _PREDET)=+ (^ DEF)=+ @REFERENTIAL? "" @MRS-POSS "" | POSSPgarp:(^ SPEC POSS)=! (^ NUM)=(! NUM) "Not constraining equations because of guessed nouns" (^ GEND)=(! GEND) (^ PERS)=(! PERS) "~(^ CHECK _PREQ)=+" (^ CHECK _PREDET)=+ (^ DEF)=+ "" @MRS-POSS ""} POSSCOMP: ~(^ CHECK _DEF-MORPH)=+ (^ CHECK _PREDEF)=+ (^ CHECK _PREPOSS)=+ "'Samme' needs this feature." | { POSS: (^ PRED)='pro' (^ DEF)=+ "" @MRS-POSSGVN "(m::^ TOP)=(m::^ RELS_EL LBL)" "" | NOMgen: (^ PRED)='pro' (^ SPEC POSS)=! "Genitive phrases as alternative specifiers." (! CASE)=c gen ~(^ CHECK _PREQ)=+ (^ CHECK _PREDET)=+ (^ DEF)=+ @COMPLETECHECKFEATS "" @MRS-POSSGVN "" | POSSPgarp: (^ PRED)='pro' (^ SPEC POSS)=! ~(^ CHECK _PREQ)=+ (^ CHECK _PREDET)=+ (^ DEF)=+ "" @MRS-POSSGVN "" } (PPCMPL: @ADJUNCTPP @(OT-MARK Mark6)) }. POSSPgen --> { POSS: (^ CHECK _PREDET)=+ "" @MRS-POSS "" | NOMgen: (^ SPEC POSS)=! "Genitive phrases as alternative specifiers." (! CASE)=c gen @(COMPLETE (! CASE)) "~(^ CHECK _PREQ)=+" (^ CHECK _PREDET)=+ (^ DEF)=+ @COMPLETECHECKFEATS @REFERENTIAL? "" @MRS-POSS "" | POSSPgarp:(^ SPEC POSS)=! (^ NUM)=c (! NUM) (^ GEND)=(! GEND) (^ PERS)=c (! PERS) "~(^ CHECK _PREQ)=+" (^ CHECK _PREDET)=+ (^ DEF)=+ "" @MRS-POSS ""} POSSCOMPgen: ~(^ CHECK _DEF-MORPH)=+ (^ CHECK _PREDEF)=+ (^ CHECK _PREPOSS)=+. "'Samme' needs this feature." POSSPint --> { POSSint:(^ CHECK _PREDET)=+ "" @MRS-POSS ""; POSSCOMP: ~(^ CHECK _DEF-MORPH)=+ (^ CHECK _PREDEF)=+ | POSSint: (^ PRED)='pro' (^ DEF)=+ "" @MRS-POSSGVN "" ; (PPCMPL: @ADJUNCTPP @(OT-MARK Mark6)) }. POSSPintgen --> POSSint: (^ CHECK _PREDET)=+ "" @MRS-POSS ""; POSSCOMPgen: ~(^ CHECK _DEF-MORPH)=+ (^ CHECK _PREDEF)=+. "Hvem sin gutts..." POSSPgenint ---> { QuantPintgen: (^ SPEC POSS)=! "Genitive phrases as alternative specifiers." (! CASE)=c gen @(COMPLETE (! CASE)) "~(^ CHECK _PREQ)=+" (^ CHECK _PREDET)=+ (^ DEF)=+ @REFERENTIAL "" @MRS-POSS ""; POSSCOMP: ~(^ CHECK _DEF-MORPH)=+ (^ CHECK _PREDEF)=+ (^ CHECK _PREPOSS)=+ "'Samme' needs this feature." | QuantPintgen: (^ SPEC POSS)=! (^ PRED)='pro' (! CASE)=c gen @(COMPLETE (! CASE)) "~(^ CHECK _PREQ)=+" (^ CHECK _PREDET)=+ (^ DEF)=+ @REFERENTIAL "" @MRS-POSSGVN "" }. QuantP --> { { (ADVqntneg: ! $ (^ ADJUNCT) ""@MRS-FOCADVSYNT"") QUANTF: ^=! @DEFIFPREDEF (^ CHECK _PREDET)=+ | DIGF: ^=! @DEFIFPREDEFnum (^ CHECK _PREDET)=+ | NUMP: (^ SPEC NUMBER)=! @DEFIFPREDEFnum @LITNUM (^ CHECK _PREDET)=+ } QUANTCOMP ({ CONJPcomp: @QUANTCOMPCLAUSE | ADVqnt: @QUANTADVSYNT }) | { (ADVqntneg: ! $ (^ ADJUNCT) ""@MRS-FOCADVSYNT"") QUANTF: ^=! (^ PRED)='pro' @DEFIFPREDEF "" @MRS-PROOBJECT"" | DIGF: ^=! (^ PRED)='pro' @DEFIFPREDEFnum "" @MRS-PROOBJECT"" | NUMP: (^ PRED)='pro' (^ SPEC NUMBER)=! @DEFIFPREDEFnum @LITNUM ""@(MRS-OBJECTGVN generic-nom)""} (PPtil: @POSSPP2) (PPCMPL: @ADJUNCTPP @(OT-MARK Mark6)) ({ CPrel: @RESTREL |CPnullc: @RESTREL} (COMMA)) ({ CONJPcomp: @QUANTCOMPCLAUSE | ADVqnt: @QUANTADVSYNT }) | { (ADVqntneg: ! $ (^ ADJUNCT) ""@MRS-FOCADVSYNT"") QUANTF: ^=! @DEFIFPREDEF | DIGF: ^=! @DEFIFPREDEFnum | NUMP: ^=! (^ REF)=+ @DEFIFPREDEFnum @MRS-LITNUM } PPpart: @PARTITIVEPP1; ({ CONJPcomp: @QUANTPARTCOMPCLAUSE | ADVqnt: @QUANTADVSYNT })}. QuantPgen --> { { (ADVqntneg: ! $ (^ ADJUNCT) ""@MRS-FOCADVSYNT"") QUANTF: ^=! @DEFIFPREDEF (^ CHECK _PREDET)=+ | DIGF: ^=! @DEFIFPREDEFnum (^ CHECK _PREDET)=+ | NUMP: (^ SPEC NUMBER)=! @DEFIFPREDEF @LITNUM (^ CHECK _PREDET)=+ } QUANTCOMPgen (CONJPcomp: @QUANTCOMPCLAUSE) | QPgen: (^ PRED)='pro' @DEFIFPREDEF "" @MRS-PROOBJECT""}. QuantPint --> { QPint: @DEFIFPREDEF (^ CHECK _PREDET)=+; QUANTCOMP | QPint: (^ PRED)='pro' @DEFIFPREDEF "" @MRS-PROOBJECT""; (PPtil: @POSSPP2) (PPCMPL: @ADJUNCTPP @(OT-MARK Mark6)) ({ CPrel: @RESTREL |CPnullc: @RESTREL} (COMMA)) | QPint: @DEFIFPREDEF; PPpart: @PARTITIVEPP1 }. QuantPintgen --> { QPint: @DEFIFPREDEF (^ CHECK _PREDET)=+; QUANTCOMPgen | QPintgen: (^ PRED)='pro' @DEFIFPREDEF "" @MRS-PROOBJECT"" }. QuantPadv --> QP: ^=! "Adverbial phrases like in 'Hunder bjeffer mer enn katter', 'Katter bjeffer lite' etc." (^ PRED)='pro' (^ NUM)=sg (^ DEF)=- (! CHECK _ADVQUANT)=+ @NEUT @DEFIFPREDEF; (CONJPcomp: @QUANTCOMPCLAUSE). QuantPprpstn --> QP: ^=! (^ PRED)='pro' (^ SPEC QUANT PRED FN)=c noen @DEFIFPREDEF "" @MRS-PROOBJECT""; { CPrel: @RESTREL |CPnullc: @RESTREL}. NUMP --> (ADVPdegnum: ! $ (^ ADJUNCT) "" @MRS-DEGADVnumSYNT "") NUMEXP: ^=!. NUM1P --> NUM1: ^=! (m::^ _TOPHNDL)=(m::! _CARD LBL). NUM11P --> NUM11: ^=! (m::^ _TOPHNDL)=(m::! _CARD LBL). NUM21P --> NUM21: ^=! (m::^ _TOPHNDL)=(m::! _CARD LBL). NUM10P --> NUM10: ^=! (m::^ _TOPHNDL)=(m::! _CARD LBL). "en og tjue, to og førti" 1conj10P --> NUM1P: (^ NUMPRECOMP)=!; CONJnum NUM10: ^=! @MRS-CONJNUMERALHEAD. NUM100P --> (NUM1P: (^ NUMSPEC)=! (! GEND)=(^ GEND)) NUM100: ^=! @MRS-NUMERALHEAD; (CONJnum { NUM1P: (^ NUMCOMP)=! | NUM11P: (^ NUMCOMP)=! | NUM10P: (^ NUMCOMP)=! | NUM21P: (^ NUMCOMP)=! | 1conj10P: (^ NUMCOMP)=!}). NUM1000P --> ({ NUM1P: (^ NUMSPEC)=! (! GEND)=(^ GEND) | NUM11P: (^ NUMSPEC)=! | NUM10P: (^ NUMSPEC)=! | NUM21P: (^ NUMSPEC)=! (! GEND)=(^ GEND) | 1conj10P: (^ NUMSPEC)=! (! GEND)=(^ GEND) | NUM100P: (^ NUMSPEC)=!}) NUM1000: ^=! @MRS-NUMERALHEAD; ({ CONJnum { NUM1P: (^ NUMCOMP)=! | NUM11P: (^ NUMCOMP)=! | NUM10P: (^ NUMCOMP)=! | NUM21P: (^ NUMCOMP)=! | 1conj10P: (^ NUMCOMP)=!} | NUM100P: (^ NUMCOMP)=! (^ NUMSPEC)}). NUMmillionP --> { NUM1P: (^ NUMSPEC)=! (! GEND)=(^ GEND) | NUM11P: (^ NUMSPEC)=! | NUM10P: (^ NUMSPEC)=! | NUM21P: (^ NUMSPEC)=! (! GEND)=(^ GEND) | 1conj10P: (^ NUMSPEC)=! (! GEND)=(^ GEND) | NUM100P: (^ NUMSPEC)=!} NUMmillion: ^=! @MRS-NUMERALHEAD (! NUM)=(^ NUMSPEC AGRNUM); ({ CONJnum { NUM1P: (^ NUMCOMP)=! | NUM11P: (^ NUMCOMP)=! | NUM10P: (^ NUMCOMP)=! | NUM21P: (^ NUMCOMP)=! | 1conj10P: (^ NUMCOMP)=!} | NUM100P: (^ NUMCOMP)=! | NUM1000P: (^ NUMCOMP)=!}). NUMmilliardP --> { NUM1P: (^ NUMSPEC)=! (! GEND)=(^ GEND) | NUM11P: (^ NUMSPEC)=! | NUM10P: (^ NUMSPEC)=! | NUM21P: (^ NUMSPEC)=! (! GEND)=(^ GEND) | 1conj10P: (^ NUMSPEC)=! (! GEND)=(^ GEND) | NUM100P: (^ NUMSPEC)=!} NUMmilliard: ^=! @MRS-NUMERALHEAD (! NUM)=(^ NUMSPEC AGRNUM); ({ CONJnum { NUM1P: (^ NUMCOMP)=! | NUM11P: (^ NUMCOMP)=! | NUM10P: (^ NUMCOMP)=! | NUM21P: (^ NUMCOMP)=! | 1conj10P: (^ NUMCOMP)=!} | NUM100P: (^ NUMCOMP)=! | NUM1000P: (^ NUMCOMP)=! | NUMmillionP:(^ NUMCOMP)=!}). NUMdigP --> (ADVPdegnum: ! $ (^ ADJUNCT) "" @MRS-DEGADVdigSYNT "") NUMdig: ^=! @(COMPLETE (^ CHECK _ARITH)). NUMinterv --> { NUMdig: (^ SPEC NUMBER LOWER)=! (! CHECK _ARITH)=+ (^ REF)=+; { HYPHEN: (^ SPEC NUMBER NUMBER-TYPE)=interval @MRS-NUMINTERVAL | Ptil: (^ SPEC NUMBER NUMBER-TYPE)=interval @MRS-NUMINTERVAL (m::! _XCLUDERELS)=+ } NUMdig: (^ SPEC NUMBER HIGHER)=! (! CHECK _ARITH)=+ | NUMEXP: (^ SPEC NUMBER LOWER)=! (! CHECK _ARITH)=+ (^ REF)=+; { HYPHEN: (^ SPEC NUMBER NUMBER-TYPE)=interval @MRS-NUMINTERVAL | Ptil: (^ SPEC NUMBER NUMBER-TYPE)=interval @MRS-NUMINTERVAL (m::! _XCLUDERELS)=+ } NUMEXP: (^ SPEC NUMBER HIGHER)=! (! CHECK _ARITH)=+ }. "ORDinterv --> ORDdig: (^ SPEC NUMBER LOWER)=! (! CHECK _ARITH)=+; HYPHEN: (^ SPEC NUMBER NUMBER-TYPE)=interval @MRS-ORDINTERVAL; ORDdig: (^ SPEC NUMBER HIGHER)=! (! CHECK _ARITH)=+." "Add this rule when morphology does the right thing." "NUMitem --> NUMdig: ^=!; PERIOD." YEARP --> (ADVPdegnum: ! $ (^ ADJUNCT) "" @MRS-DEGADVyearSYNT "") YEAR: ^=!. DAP --> { DA': (^ CHECK _PREDET)=+ @ADJSEM?; DAPCOMP | DA': @ADJSEM? (^ PRED)='pro' ""@(MRS-OBJECTGVN generic-nom)""; (PPtil: @POSSPP2) (PPCMPL: @ADJUNCTPP @(OT-MARK Mark6)) ({ CPrel: @RESTREL |CPnullc: @RESTREL} (COMMA)) | DA': @ADJSEM?; PPpart: @PARTITIVEPP1}. DAPgen --> { DA: (^ CHECK _PREDET)=+ @ADJSEM?; DAPCOMPgen | DAgen: @ADJSEM? (^ PRED)='pro' ""@(MRS-OBJECTGVN generic-nom)"" }. DA' --> (ADVdeg: ! $ (^ SPEC ADET ADJUNCT) ""@MRS-DADEGADVSYNT"" ) DA: ^=!. ORDP --> { ORDN: (^ CHECK _PREDET)=+ ; NP | ORDN:(^ PRED)='pro' ""@(MRS-OBJECTGVN generic-nom)""; (PPtil: @POSSPP2) (PPCMPL: @ADJUNCTPP @(OT-MARK Mark6)) ({ CPrel: @RESTREL |CPnullc: @RESTREL} (COMMA)) | ORDN PPpart: @PARTITIVEPP1}. ORDPgen --> ORDN: (^ CHECK _PREDET)=+ ; NPgen. MeasP --> NOM: (^ SPEC MEASURE)=! "Replaced REFP with NOM, Feb. 07, to allow coordination." ~(! CASE)=gen (! NTYPE NSEM COMMON)=c count (! NTYPE NSEM MEASURENOUN)=c + @REFERENTIAL ~(! MEASURE) ""@MRS-MEASURE""; NP: ^=! { (^ NTYPE NSEM COMMON)=c mass | ~(^ NTYPE NSEM COMMON)=mass (^ NUM)=c pl }; (CONJPcomp: @COMPCLAUSEmeas). MeasPgen --> NOM: (^ SPEC MEASURE)=! "Replaced REFP with NOM, Feb. 07, to allow coordination." ~(! CASE)=gen (! NTYPE NSEM COMMON)=c count (! NTYPE NSEM MEASURENOUN)=c + @REFERENTIAL ~(! MEASURE) ""@MRS-MEASURE""; NPgen: ^=! { (^ NTYPE NSEM COMMON)=c mass | ~(^ NTYPE NSEM COMMON)=mass (^ NUM)=c pl }. QP --> ( ADVdeg: !$(^ SPEC AQUANT ADJUNCT) (^ SPEC AQUANT DEGREE)=(! DEGREE) (^ SPEC AQUANT DEG-DIM)=(! DEG-DIM) "" @MRS-QPDEGADVSYNT "") Q. QPgen --> ( ADVdeg: !$(^ SPEC AQUANT ADJUNCT) (^ SPEC AQUANT DEGREE)=(! DEGREE) (^ SPEC AQUANT DEG-DIM)=(! DEG-DIM) "" @MRS-QPDEGADVSYNT "") Qgen. QPint --> ADVdegint: !$(^ SPEC AQUANT ADJUNCT) "" @MRS-DEGADVQPINTSYNT ""; Q. QPintgen --> ADVdegint: !$(^ SPEC AQUANT ADJUNCT) "" @MRS-DEGADVQPINTSYNT ""; Qgen. POSSPgarp --> NOM: ^\NUM\GEND\PERS=!\NUM\GEND\PERS ~(! CASE)=gen @COMPLETECHECKFEATS "" m::!=m::^ ""; POSSgarp. PROPP --> (TTLP: ^=!) (PROP': ! $ (^ NAME-MOD) @MRS-NAME-MOD) INIT'*: ! $(^ NAME-MOD) @MRS-NAME-MOD; PROP: ^=! @(COMPLETE (^ CHECK _INITCOMMA)); (N: ! $ (^ NAME-MOD) ~(! DEF)=+ "@REFERENTIAL? @MRS-NAME-MOD" @MRS-POST-TITLE) ({ PPCMPL: @NPADJUNCTPP @(OT-MARK Mark6) | PARpp: @NPADJUNCTPP | ADVP: ! $ (^ ADJUNCT) "" @MRS-ADNOMADVSYNT "" | ADVPloc: !$(^ ADJUNCT) ""@MRS-ADJUNCTPP""}) (COMMA: (^ CHECK _INITCOMMA)=c +) ("{ e: (^ CHECK _INITCOMMA)=c + |" (COMMA) ": ~(^ CHECK _INITCOMMA)=+ }" CPrel: @NONRESTREL; (COMMA)) (ADVpar: !$(^ ADJUNCT) ""@MRS-PARADVSYNTAX""), ( COMMA PP: !$(^ ADJUNCT) ""@MRS-ADJUNCTPP""; (COMMA)). PROP' --> (PROP': ! $ (^ NAME-MOD) @MRS-NAME-MOD) PROP:^=!. INIT' --> INIT: ^=!; PERIOD. PROPPgen --> (TTLP: ^=!) { (PROP': ! $ (^ NAME-MOD) @MRS-NAME-MOD) INIT'*: ! $(^ NAME-MOD) @MRS-NAME-MOD; PROPgen: ^=! @(COMPLETE (^ CHECK _INITCOMMA)) | PROP: ^=! @GEN ; Ngen: ! $ (^ NAME-MOD) ~(! DEF)=+ @MRS-POST-TITLE}. PRONP --> PRON ({ CPrel: @RESTREL | CPnullc: @RESTREL } (COMMA)). TTLP --> TTL: ^=!; (PP: @TITLEADJUNCTPP "@(OT-MARK Mark6)"; (COMMA: (^ CHECK _INITCOMMA)=+)). AppP --> { APPNOM1: ^=! (! NUM)=c (^ APP NUM) (! DEF)=c + @COMPLETECHECKFEATS; ({ COMMA | HYPHEN }) { PROPP: (^ APP)=! (^ CASE)=(! CASE) ""@MRS-APP"" | NOMcoord: (^ APP)=! (! NTYPE NSYN)=c proper (^ CASE)=(! CASE) ""@MRS-APP"" } ({ COMMA | HYPHEN }) | PROPP: ^=!; { COMMA | HYPHEN } APPNOM2: (^ APP)=! (^ CASE)=(! CASE) (! NUM)=c sg @COMPLETECHECKFEATS ""@MRS-APP""; { COMMA | HYPHEN } | PRON: ^=! ~(^ PERS)=3; NP: (^ APP)=! (^ NUM)=(! NUM) ""@MRS-APP"" }. NPssn --> SSN: ^=!; YEAR: ! $ (^ ADJUNCT) ""@MRS-SSNYEAR"" . NUMBP --> (NP: @COMPOUNDREL) { TTLnum: ^=! | "N: @TITLENUMSYNTAX" e: { (^ ADJUNCT) @(MRS-TITLENUM nummer) | ~(^ ADJUNCT)} } { NUMEXP: ^=! @NUMBENTITY | NUMdig: ^=! @DIGENTITY } (PP: @NPADJUNCTPP). TofD --> N: (^ SPEC POSS)=! (! NTYPE NSEM TIME WEEKDAY)=c + "" @MRS-POSS ""; N: ^=! (! NTYPE NSEM TIME TOFD)=c + (! CHECK _PREDET)=+ ~(! CHECK _DEF-MORPH)=+ (! NUM)=c sg (^ REF)=+ (^ DEF)=+. "Time of day: 'torsdag morgen'." AP --> ({ ADVPdeg: { { ~(^ DEGREE)=comparative ~(^ DEGREE)=superlative | { (^ DEGREE)=c comparative | (^ DEGREE)=c superlative } (! ADJUNCT-TYPE)=c degree } !$s(^ ADJUNCT) | ~(! ADJUNCT-TYPE)=degree %ADJCT=(^ ADJUNCT $) { (^ DEGREE)=c comparative (%ADJCT PRED FN)=c mer | (^ DEGREE)=c superlative (%ADJCT PRED FN)=c mest} !$s(%ADJCT ADJUNCT) } (^ DEGREE)=(! DEGREE) "" @MRS-DEGADVSYNT "" |DEGP: (^ MEASURE)=! (! NTYPE NSEM MEASURENOUN)=c + (! NTYPE NSEM MEASDIM) (^ MEASDIM) (! NTYPE NSEM MEASDIM)=(^ MEASDIM) ""@MRS-MEASUREADJ""}) A: ^=!, (NOM: (^ OBJ)=! (^ ATYPE)=c predicative @OBJCASE @COMPLETECHECKFEATS) ({ CONJPcomp: (^ ADJUNCT $)=%DEG (%DEG OBL-COMPAR)=! (^ DEGREE)=(! DEGREE) (^ DEG-DIM)=(! DEG-DIM) ~(^ ATYPE)=attributive { (! OBJ VFORM) @(COMPLETE (! OBJ VFORM)) { (! OBJ CLAUSE-TYPE)=c rel (! OBJ COMPFN*": ~(-> CHECK _ISLAND)=+;" COMP)=%LOCAL2 "With predicative adjectives a clause after 'enn' must have an empty COMP ('Huset var større enn Per trodde')" (%LOCAL2 PRED)='pro' | (! OBJ CLAUSE-TYPE)=c nominal } | ~(! OBJ VFORM) @PARTPERCOLATEANT } | CPnom: (^ ADJUNCT $)=%DEG (%DEG COMP)=! ~(^ ATYPE)=attributive | CPrel: @SLIKRESTREL (^ PRED FN)=c slik ~(^ ATYPE)=attributive | CPnullc: @SLIKRESTREL (^ PRED FN)=c slik ~(^ ATYPE)=attributive }) (PPsel: @SELPP (^ ATYPE)=c predicative) "PP after attributive PP is not possible: 'en ivrig etter å reise mann'." (PP: @ADJUNCTPP (^ CHECK _ROOT)=c + ). "General adjunct PPs only when AP is ROOT." APint --> ADVdegint: !$(^ ADJUNCT) "" @MRS-DEGADVINTSYNT ""; A: ^=!. ADVP --> ({ ADVdeg: !$(^ ADJUNCT) "" @MRS-DEGADVSYNT "" | ADVdegloc: !$(^ ADJUNCT) "" @MRS-DEGADVSYNT "" }) ADV: ^=!; (PP: @ADJUNCTPP). ADVPs --> (ADVdeg: !$(^ ADJUNCT) "" @MRS-DEGADVSYNT "") ADVs: ^=!. ADVPint --> { ADVdegint: !$(^ ADJUNCT); ADV: ^=! | ADVint: ^=! }. ADVPloc --> ( ADVdegloc: !$(^ ADJUNCT) "" @MRS-LOCDEGADVSYNT "") ( QuantP: !$(^ ADJUNCT) ~(! DEF)=+ @COMPLETECHECKFEATS (! NTYPE NSEM MEASURENOUN)=c + (^ CHECK _MSRBL)=c + "" @MRS-LOCMEASURE "") ADVloc: ^=!; (PP: @ADJUNCTPP) (CPloc: @LOCREL; (COMMA)). ADVPloctop --> (ADVPdegloc: !$(^ ADJUNCT) "" @MRS-LOCDEGADVSYNT "") ( QuantP: !$(^ ADJUNCT) ~(! DEF)=+ @COMPLETECHECKFEATS (! NTYPE NSEM MEASURENOUN)=c + (^ CHECK _MSRBL)=c + "" @MRS-TEMPNP "") ADVloc: ^=!; (PP: @ADJUNCTPP) (CPloc: @LOCREL; (COMMA)). ADVPdeg --> ({ ADVPdeg: !$(^ ADJUNCT) "(^ DEGREE)=(! DEGREE)" "" @MRS-DEGADVSYNT "" | (ADVneg: !$s(^ ADJUNCT) (^ CHECK _NEGATED)=+ ""@MRS-SMADVSYNTAX (m::^ _TOPLBL)=(m::! RELS_EL LBL)"") }) ADVdeg: ^=!. ADVPdegloc --> (ADVneg: !$s(^ ADJUNCT) (^ CHECK _NEGATED)=+ ""@MRS-SMADVSYNTAX (m::^ _TOPLBL)=(m::! RELS_EL LBL)"") ADVdegloc: ^=!. ADVPdegnum --> (ADVPdegloc: !$(^ ADJUNCT) "" @MRS-DEGADVSYNT "") ADVdegnum: ^=!. WhP --> { { IntP-ADV: (^ FOCUS-INT)=! """@MRS-TOPIC" "" | IntADV: (^ FOCUS-INT)=! """@MRS-TOPIC " @MRS-WHADJUNCTPP"" } { CPrel: @INTREL |CPnullc: @INTREL} | POSSPint: (^ FOCUS-INT)=(! SPEC POSS) { (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" {COMP": ~(-> CHECK _ISLAND)=+;" SUBJ|ADJUNCT $ OBJ|TERMFN})=! ~(^ COMP-FORM) | (^ SUBJ)=! (^ COMP-FORM)} """@MRS-GARPTOPIC" "" ; { CPrel |CPnullc}}. WhPfree --> PRONfree: ^=!; { CPrel: @FREEREL |CPnullc: @FREEREL}. IntNOMcoord --> @(COORD IntNOMsmpl). IntADVcoord --> @(COORD ADVPint). CONJPcomp --> CONJcomp { NOM: (^ OBJ)=! @REFERENTIAL? @COMPLETECHECKFEATS @PARTPERCOLATEANT | PP: (^ OBJ)=! ""(m::! RELS_EL ARG1)=(m::! RELS_EL ARG0) "" | A: (^ OBJ)=! (! PRED FN)=c mulig | CPnullc: (^ OBJ)=! (! CLAUSE-TYPE)=rel ~(! COMP-FORM); (COMMA) | CPnom: (^ OBJ)=! (! CLAUSE-TYPE)=nominal (! COMP-FORM); (COMMA) }. WH-ELL --> { IntNOM: (^ FOCUS-INT)=! (^ STMT-TYPE)=int "" @MRS-WH-ELLSYNT @MRS-INT "" | POSSPint: (^ FOCUS-INT)=(! SPEC POSS) "hvem sin" (^ STMT-TYPE)=int "" @MRS-WH-ELLSYNT @MRS-INT "" | APint: (^ FOCUS-INT)=! (^ STMT-TYPE)=int ~(! DEF)=+ "" @MRS-WH-ELLSYNT @MRS-INT "" | ADVPint:(^ PRED)='pro' (^ FOCUS-INT)=! (^ STMT-TYPE)=int ""@MRS-WH-ELLSYNT @MRS-INT (m::(^ FOCUS-INT) RELS_EL ARG0)=(m::^ INDEX) (m::(^ FOCUS-INT) RELS_EL ARG1 type)=non_expl-ind""; (PRON: (^ TOPIC)=! (! PRON-FORM)=c den (! GEND NEUT)=c + (! PRON-TYPE)=c pers { (^ FOCUS-INT PRED FN)=c hvorfor | (^ FOCUS-INT PRED FN)=c hvordan } (m::! _XCLUDERELS)=+) | PPint: (^ FOCUS-INT)=! (^ STMT-TYPE)=int "" @MRS-WH-ELLSYNT @MRS-INT (m::(^ FOCUS-INT) RELS_EL ARG1)=(m::^ INDEX)""}. "Clause level rules:" ROOT --> (HYPHEN) { ROOTconj: ! $s ^ @MRS-ROOTLEFTCONJUNCT; (COMMA) CONJroot: !=^ @MRS-PRPSTN (m::^ INDEX)=(m::^ RELS_EL ARG0); ROOTconj2: ! $s ^ @MRS-ROOTRIGHTCONJUNCT | IPCMPL: ^=! | WH-ELL: ^=! | NOM: ^\DUMMY=!\DUMMY "~(! ADJUNCT $ VFORM)=fin" @MRS-NOMINALTOP | PP: ^\DUMMY=!\DUMMY @MRS-PREPTOP | PPADVcoord: ^\DUMMY=!\DUMMY @MRS-PREPCOORDTOP | AP: ^\DUMMY=!\DUMMY @MRS-ADJTOP | APcoord: ^\DUMMY=!\DUMMY @MRS-ADJTOP | CONJdisc: ^=!; ROOTconj: ! $ ^ @MRS-ROOTCONJUNCT | ADVroot: ^=!; (COMMA) ROOTconj: (^ APP)=! (m::! _MSG LBL)=(m::^ RELS_EL ARG1) (m::! _MSG ARG0)=(m::^ _MSG ARG0) | NUMitem: ! $ ^ m::^ = m::!; ROOTconj:! $ ^ @MRS-NUMBEREDROOT } (PAREN: ! $ (^ ADJUNCT)) { PERIOD: ~(^ STMT-TYPE)=int | INT-MARK: { (^ STMT-TYPE)=c int | ~(^ STMT-TYPE)=int (^ PROSODY)=questioning } | EXCL-POINT: ~(^ STMT-TYPE)=int { (^ STMT-TYPE)=c imp | ~(^ STMT-TYPE)=imp (^ PROSODY)=exclamatory } | COLON | e: ~(^ STMT-TYPE)=int } "}". ROOTconj --> { IPCMPL: ^=! | WH-ELL: ^=! | NOM: ^\DUMMY=!\DUMMY "Copy f-structure to make new m::-projection" ~(! ADJUNCT $ VFORM)=fin "No relative clauses here - too much ambiguity." @MRS-NOMINALTOP "@(OT-MARK Mark4)" | PP: ^\DUMMY=!\DUMMY @MRS-PREPTOP | PPADVcoord: ^\DUMMY=!\DUMMY @MRS-PREPCOORDTOP | AP: ^\DUMMY=!\DUMMY @MRS-ADJTOP "| CONJdisc: ^=!; ROOTconj: ! $ ^ @MRS-ROOTCONJUNCT" }."The last conjunct here must be a mistake?" ROOTconj2 --> { ROOTconj: ! $s ^ @MRS-ROOTLEFTCONJUNCT; (COMMA) CONJroot: !=^ @MRS-DIRECTPRPSTN (m::^ INDEX)=(m::^ RELS_EL ARG0); ROOTconj2: ! $s ^ @MRS-ROOTRIGHTCONJUNCT | IPCMPL: ^=! | WH-ELL: ^=! | NOM: ^\DUMMY=!\DUMMY "Copy f-structure to make new m::-projection" ~(! ADJUNCT $ VFORM)=fin "No relative clauses here - too much ambiguity." @MRS-NOMINALTOP "@(OT-MARK Mark4)" | PP: ^\DUMMY=!\DUMMY @MRS-PREPTOP | PPADVcoord: ^\DUMMY=!\DUMMY @MRS-PREPCOORDTOP | AP: ^\DUMMY=!\DUMMY @MRS-ADJTOP | CONJdisc: ^=!; ROOTconj: ! $ ^ @MRS-ROOTCONJUNCT }. IP --> { "CONJdisc: ^=!; IP: ! $ ^ ~(! COORD-FORM) @MRS-ROOTCONJUNCT |" { NOM: (^ TOPIC)=! @COMPLETECHECKFEATS { { (^ COMPFN+": ~(-> CHECK _ISLAND)=+;" {ADJUNCT $ OBJ|TERMFN})=! | (^ {ADJUNCT $ OBJ | TERMFN-obj})=! | (^ { OBJ | OBJben | PREDLINK | PREDLINK OBJ})=! (^ SUBJ PRON-FORM) } "Removed restrictions on topicalized objects Mar 07" @OBJCASE @OBJbenCASE "Mark3 $ o::*" "Disprefer non-subjects here." ~(! REF)=- ""@MRS-TOPIC "" | (^ (COMPFN*": ~(-> CHECK _ISLAND)=+;" COMP": ~(-> CHECK _ISLAND)=+") SUBJ)=! @SUBJCASE @REFERENTIAL "Tentatively added '?'" "~(! PRON-TYPE)=expl_" ~(! REF)=- "This should handle both expletives and non-referring reflexives, as above" { (^ SUBJ)=c ! | (^ COORD-FORM) | ~(^ SUBJ)=! ~(^ COORD-FORM) ""@MRS-TOPIC ""} "If immediate subject, then prefer it here. If not immediate, then mark as topic." } | PRONexpl: (^ SUBJ)=! (! PRON-TYPE)=c expl_ | APCMPL: { (^ TOPIC)=! ~(! CHECK _ADVERBIAL)=+ (^ {COMP | XCOMP}*)=%holdon (%holdon PREDLINK)=! "@TOPACOMP" (! ATYPE)=predicative ~(! NTYPE) @LONGDISTAGR ~(! DEF)=+ ""@MRS-TOPIC "" | !$(^ ADJUNCT) (! CHECK _ADVERBIAL)=c + @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) ""{ ~(! ADV-TYPE)=temp @MRS-SMADVSYNTAX | (! ADV-TYPE)=c temp @MRS-ADJUNCTPP }"" ""@MRS-TOPIC ""} | ADVatt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "" | ADVcmt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "" | ADVs: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "" | ADVneg: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "" | ADVPloctop: "{" !$"@MRS-ADJUNCTPP"" "| (^ COMPFN*"": ~(-> CHECK _ISLAND)=+;" "PREDLINK)=! }""Removed Oct 06" """@MRS-TOPIC" "" | ADVtmp:(^ COMPFN*": ~(-> CHECK _ISLAND)=+;" PREDLINK)=! (! ADV-TYPE)=c temp """@MRS-TOPIC" "" | CLOCK: ! $ (^ ADJUNCT) @MRS-CLOCKADJUNCT | ADVP: { (^ VTYPE)=c aux (^ XCOMP+)=%holdon | ~(^ VTYPE)=aux ^=%holdon } !$(%holdon ADJUNCT) ~(! ADV-TYPE)=loc ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "" | NOMnopron: !$(^ ADJUNCT) (! CASE)=nom @COMPLETECHECKFEATS (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"" ""@MRS-TOPIC "" | PPCMPL: (^ TOPIC)=! ~(! CHECK _MOVED-OBJ)=+ (! PTYPE)=c sem """@MRS-TOPIC" "" { @TOPADJUNCTPP | (^ COMPFN* PREDLINK)=! } | PPsom: (^ TOPIC)=! ~(! CHECK _MOVED-OBJ)=+ (! PTYPE)=c sem @TOPADJUNCTPP |PPtil: @TOPOBLBENPP ""@MRS-TOPIC "" |PPav: @TOPOBLAGPP ""@MRS-TOPIC "" | VP: (^ TOPIC)=! ~(! VFORM)=fin (! CHECK _TOPVP)=+ ""@MRS-TOPIC "" (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" XCOMP)=%holdon %holdon=! | VP': (^ TOPIC)=! (! CHECK _TOPVP)=+ { (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" XCOMP)=%holdon ""@MRS-TOPIC "" | (^ SUBJ)=%holdon "We tentatively leave out the full path (^ ({COMP | XCOMP}* COMP) SUBJ) for the sake of efficiency. 'å sove tror Per at likes av Kari' is marginal." { (! SUBJ PRED)='pro' (! SUBJ PRON-TYPE)=null "These lines are optional in order to allow subj. control when the infinitive is the subj. of a passive verb (å sove prøves av Kari)." "" (m::! RELS_EL ARG1 type)=non_expl-ind ""}} %holdon=! | VPpart:! $ (^ ADJUNCT) (^ SUBJ) = (! SUBJ) "" @MRS-TOPIC @MRS-VPADJUNCT "" "| VPmain: ^=! (^ PRED FN)=c være" "Experimental! Example: 'Byggherre denne gang var N.N.'" | CPnom: @(COMPLETE (! CLAUSE-TYPE)) (! COMP-FORM) (! TOPCP)=+ (^ TOPIC)=! (! CLAUSE-TYPE)=c nominal { (^ {COMP | XCOMP}* COMP)=! ""@MRS-TOPIC "" | (^ SUBJ)=! }; (COMMA) | WhPCMPL: @(COMPLETE (! CLAUSE-TYPE)) (! TOPCP)=+ (^ TOPIC)=! { ""@MRS-TOPIC "" (^ {COMP | XCOMP}* COMP)=! | (^ SUBJ)=! "(^ PREDLINK CHECK _WHSUBJ)=c +" } ; (COMMA) | CPadv: @(COMPLETE (! CLAUSE-TYPE)) (! COMP-FORM) (! TOPCP)=+ (^ TOPIC)=! """@MRS-TOPIC""" (! CLAUSE-TYPE)=c adv ! $"@MRS-ADVCLAUSE""; (COMMA) (ADVs: !$s(^ ADJUNCT) (! PRED FN)=c så ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "") | VPpur: ! $"@MRS-ADVCLAUSE"" ""@MRS-TOPIC "" | IPcond: @(COMPLETE (! CLAUSE-TYPE)) (! TOPCP)=+ (^ TOPIC)=! """@MRS-TOPIC" "" ! $"@MRS-ADVCLAUSE""; (COMMA) (ADVs: !$s(^ ADJUNCT) (! PRED FN)=c så ""@MRS-SMADVSYNTAX"") | NPsit: (^ (COMPFN*": ~(-> CHECK _ISLAND)=+;" COMP": ~(-> CHECK _ISLAND)=+") SUBJ)=! (^ XCOMP* PREDLINK ATYPE) "Non-agreeing subjects: 'Bil er dyrt'" | CONJcorr: (m::^ _CONJREL)=(m::*_CONJREL)} I'CMPL: ^=! (^ CHECK _MAIN-CL)=+ (^ TNS-ASP MOOD)=c indicative (^ STMT-TYPE)=decl (^ SUBJ) "The subject condition" "" @MRS-PRPSTN ""; "(CPrel: @EXRESTREL)" "Temporarily remove extraposed relatives." (COMMA VPpart: ! $ (^ SUBJ ADJUNCT) (^ SUBJ) = (! SUBJ) @MRS-XTRAPOSPTCREL) (COMMA QuantPprpstn: ! $( ^ ADJUNCT) (m::! RELS_EL LBL)=(m::^ _MSG LBL)) | I'CMPL: ^=! (^ CHECK _MAIN-CL)=+ (^ TNS-ASP MOOD)=c indicative (^ STMT-TYPE)=int (^ SUBJ) "The subject condition" "" @MRS-INT "" | { IntNOM: (^ FOCUS-INT)=! """@MRS-TOPIC" "" { (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" {ADJUNCT $ OBJ|TERMFN})=! | (^ (COMPFN*": ~(-> CHECK _ISLAND)=+;" COMP": ~(-> CHECK _ISLAND)=+") SUBJ)=! | (^ COMPFN*": ~(-> CHECK _ISLAND)=+")=%holdon ! $ (%holdon ADJUNCT) (! NTYPE NSEM TIME TEMPNOUN)=c + ""@MRS-TEMPNP"" | (! PRON-FORM)=c hva (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" COMP": ~(-> CHECK _ISLAND)=+")=! } | POSSPint: (^ FOCUS-INT)=(! SPEC POSS) "hvem sin" """@MRS-GARPTOPIC" "" { (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" {ADJUNCT $ OBJ|TERMFN})=! | (^ (COMPFN*": ~(-> CHECK _ISLAND)=+;" COMP": ~(-> CHECK _ISLAND)=+") SUBJ)=!} | APint: (^ FOCUS-INT)=! "(^ COMPFN* PREDLINK)=!" (^ {COMP | XCOMP}*)=%holdon (%holdon PREDLINK)=! "@TOPACOMP" (! ATYPE)=predicative @LONGDISTAGR ~(! DEF)=+ """@MRS-TOPIC" "" | ADVPint: (^ FOCUS-INT)=! (^ COMPFN*": ~(-> CHECK _ISLAND)=+")=%holdon { ! $ (%holdon ADJUNCT) ""@MRS-TOPADJUNCTPP "" """@MRS-TOPIC """ | ! $ (%holdon PREDLINK) (m::! RELS_EL LBL)=(m::%holdon RELS_EL LBL)} | PPint: (^ FOCUS-INT)=(! OBJ) (^ COMPFN*": ~(-> CHECK _ISLAND)=+")=%holdon ! $ (%holdon ADJUNCT) ""@MRS-TOPADJUNCTPP "" """@MRS-TOPIC" "" | PPavint: @TOPOBLAGINTPP """@MRS-TOPIC" ""} I'CMPL: ^=! (^ CHECK _MAIN-CL)=+ (^ TNS-ASP MOOD)=c indicative (^ STMT-TYPE)=int (^ SUBJ) "The subject condition" "" @MRS-INT "" | ({ ADVneg: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" ""@MRS-TOPIC "" | CPadv: @(COMPLETE (! CLAUSE-TYPE)) (! COMP-FORM) (! TOPCP)=+ (^ TOPIC)=! ""@MRS-TOPIC "" (! CLAUSE-TYPE)=c adv ! $"@MRS-ADVCLAUSE""; (COMMA) | VPpur: ! $"@MRS-ADVCLAUSE"" ; (COMMA) }) I'CMPL: ^=! (^ CHECK _MAIN-CL)=+ (^ TNS-ASP MOOD)=c imperative (^ STMT-TYPE)=imp (^ SUBJ PRED)='pro' (^ SUBJ PERS)=2 (^ SUBJ CASE)=nom (^ SUBJ REF)=+ (^ SUBJ GEND NEUT)=- "To avoid spurious ambiguities." "" @MRS-IMP "" }. "Experimental rule to improve efficiency:" IPimprs --> { { NOM: (^ TOPIC)=! @COMPLETECHECKFEATS { { (^ COMPFN+": ~(-> CHECK _ISLAND)=+;" {ADJUNCT $ OBJ|TERMFN})=! | (^ {ADJUNCT $ OBJ | TERMFN-obj | PREDLINK OBJ })=! | (^ { OBJ | OBJben | PREDLINK })=! (^ SUBJ PRON-FORM) } @OBJCASE @OBJbenCASE "Mark3 $ o::*" "Disprefer non-subjects here." ~(! REF)=- ""@MRS-TOPIC "" | (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" COMP": ~(-> CHECK _ISLAND)=+" SUBJ)=! @SUBJCASE @REFERENTIAL ~(! REF)=- "| (^ SUBJ)=! ""Removing tough movement Nov 06"" @SUBJCASE @REFERENTIAL (^ CHECK _TOUGH)=c + %holdon=(^ XCOMP {ADJUNCT $ OBJ | OBJ}) (^ SUBJ)\CASE=%holdon\CASE m::%holdon=m::(^ SUBJ)" } | PRONexpl: (^ SUBJ)=! (! PRON-TYPE)=c expl_ | APCMPL: { (^ TOPIC)=! ~(! CHECK _ADVERBIAL)=+ (^ {COMP | XCOMP}*)=%holdon (%holdon PREDLINK)=! "@TOPACOMP" (! ATYPE)=predicative ~(! NTYPE) @LONGDISTAGR ~(! DEF)=+ ""@MRS-TOPIC "" | !$(^ ADJUNCT) (! CHECK _ADVERBIAL)=c + @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) ""{ ~(! ADV-TYPE)=temp @MRS-SMADVSYNTAX | (! ADV-TYPE)=c temp @MRS-ADJUNCTPP }"" ""@MRS-TOPIC ""} | ADVatt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "" | ADVcmt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "" | ADVs: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "" | ADVneg: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "" | ADVPloctop: "{" !$(^ ADJUNCT) ""@MRS-ADJUNCTPP"" "| (^ COMPFN*"": ~(-> CHECK _ISLAND)=+;" "PREDLINK)=! }" "Removed Oct 06" """@MRS-TOPIC" "" | ADVtmp:(^ COMPFN*": ~(-> CHECK _ISLAND)=+;" PREDLINK)=! (! ADV-TYPE)=c temp """@MRS-TOPIC" "" | CLOCK: ! $ (^ ADJUNCT) @MRS-CLOCKADJUNCT | ADVP: { (^ VTYPE)=c aux (^ XCOMP+)=%holdon | ~(^ VTYPE)=aux ^=%holdon } !$(%holdon ADJUNCT) ~(! ADV-TYPE)=loc ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "" | NOMnopron: !$(^ ADJUNCT) (! CASE)=nom @COMPLETECHECKFEATS (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"" ""@MRS-TOPIC "" | PPCMPL: (^ TOPIC)=! ~(! CHECK _MOVED-OBJ)=+ """@MRS-TOPIC" "" @TOPADJUNCTPP "|PPtil: @TOPOBLBENPP @MRS-TOPIC |PPav: @TOPOBLAGPP @MRS-TOPIC | VP: (^ TOPIC)=! ~(! VFORM)=fin (! CHECK _TOPVP)=+ @MRS-TOPIC (^ COMPFN* XCOMP)=%holdon %holdon=!" | VP': (^ TOPIC)=! (! CHECK _TOPVP)=+ (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" XCOMP)=! ""@MRS-TOPIC "" { (! SUBJ PRED)='pro' (! SUBJ PRON-TYPE)=null "These lines are optional in order to allow subj. control when the infinitive is the subj. of a passive verb (å sove prøves av Kari)." "" (m::! RELS_EL ARG1 type)=non_expl-ind ""} | VPpart:! $ (^ ADJUNCT) (^ SUBJ) = (! SUBJ) "" @MRS-TOPIC @MRS-VPADJUNCT "" | CPnom: @(COMPLETE (! CLAUSE-TYPE)) (! COMP-FORM) (! TOPCP)=+ (^ TOPIC)=! (! CLAUSE-TYPE)=c nominal (^ {COMP | XCOMP}* COMP)=! ""@MRS-TOPIC ""; (COMMA) | WhP: @(COMPLETE (! CLAUSE-TYPE)) (! TOPCP)=+ (^ TOPIC)=! ""@MRS-TOPIC "" (^ {COMP | XCOMP}* COMP)=!; (COMMA) | CPadv: @(COMPLETE (! CLAUSE-TYPE)) (! COMP-FORM) (! TOPCP)=+ (^ TOPIC)=! """@MRS-TOPIC""" (! CLAUSE-TYPE)=c adv ! $"@MRS-ADVCLAUSE""; (COMMA) (ADVs: !$s(^ ADJUNCT) (! PRED FN)=c så ""@MRS-SMADVSYNTAX"" """@MRS-TOPIC" "") | VPpur: ! $"@MRS-ADVCLAUSE"" ""@MRS-TOPIC "" | IPcond: @(COMPLETE (! CLAUSE-TYPE)) (! TOPCP)=+ (^ TOPIC)=! """@MRS-TOPIC" "" ! $"@MRS-ADVCLAUSE""; (COMMA) (ADVs: !$s(^ ADJUNCT) (! PRED FN)=c så ""@MRS-SMADVSYNTAX"") | CONJcorr: (m::^ _CONJREL)=(m::*_CONJREL)} I'imprs: ^=! (^ CHECK _MAIN-CL)=+ (^ TNS-ASP MOOD)=c indicative (^ STMT-TYPE)=decl (^ SUBJ) "The subject condition" "" @MRS-PRPSTN """; (CPrel: @EXRESTREL)" "Temporarily remove extraposed relatives." | I'imprs: ^=! (^ CHECK _MAIN-CL)=+ (^ TNS-ASP MOOD)=c indicative (^ STMT-TYPE)=int (^ SUBJ) "The subject condition" "" @MRS-INT "" | { IntNOM: (^ FOCUS-INT)=! ""@MRS-TOPIC "" { (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" {ADJUNCT $ OBJ|TERMFN})=! | (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" COMP": ~(-> CHECK _ISLAND)=+;" SUBJ)=! | (^ COMPFN*": ~(-> CHECK _ISLAND)=+")=%holdon ! $ (%holdon ADJUNCT) (! NTYPE NSEM TIME TEMPNOUN)=c + ""@MRS-TEMPNP"" | (! PRON-FORM)=c hva (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" COMP": ~(-> CHECK _ISLAND)=+")=! } | POSSPint: (^ FOCUS-INT)=(! SPEC POSS) "hvem sin" ""@MRS-GARPTOPIC "" { (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" {ADJUNCT $ OBJ|TERMFN})=! | (^ COMPFN*": ~(-> CHECK _ISLAND)=+;" COMP": ~(-> CHECK _ISLAND)=+;" SUBJ)=!} | APint: (^ FOCUS-INT)=! "(^ COMPFN* PREDLINK)=!" (^ {COMP | XCOMP}*)=%holdon (%holdon PREDLINK)=! "@TOPACOMP" (! ATYPE)=predicative @LONGDISTAGR ~(! DEF)=+ ""@MRS-TOPIC "" | ADVPint: (^ FOCUS-INT)=! (^ COMPFN*": ~(-> CHECK _ISLAND)=+")=%holdon { ! $ (%holdon ADJUNCT) ""@MRS-TOPADJUNCTPP "" ""@MRS-TOPIC "" | ! $ (%holdon PREDLINK) (m::! RELS_EL LBL)=(m::%holdon RELS_EL LBL)} | PPint: (^ FOCUS-INT)=(! OBJ) (^ COMPFN*": ~(-> CHECK _ISLAND)=+")=%holdon ! $ (%holdon ADJUNCT) ""@MRS-TOPADJUNCTPP "" ""@MRS-TOPIC "" | PPavint: @TOPOBLAGINTPP ""@MRS-TOPIC ""} I'imprs: ^=! (^ CHECK _MAIN-CL)=+ (^ TNS-ASP MOOD)=c indicative (^ STMT-TYPE)=int (^ SUBJ) "The subject condition" "" @MRS-INT ""}. IPgap --> NOM: (^ SUBJ)=! @SUBJCASE @REFERENTIAL ~(! REF)=-; Scop: ^=! (^ CHECK _MAIN-CL)=+ (^ TNS-ASP MOOD)=c indicative (^ STMT-TYPE)=decl "" @MRS-PRPSTN "" @(COPULA være) @MAIN @DURATIVE @ACOPULA ""@MRS-STATE"". I' --> { VfinCMPL: ^=! (^ VFORM)=c fin @(COMPLETE (^ PASSIVE)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) @(COMPLETE (^ CHECK _ASPVERB)) @DEFAULTPOLARITY | Vasp: ^=! (^ VFORM)=c fin @(COMPLETE (^ PASSIVE)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) @(COMPLETE (^ CHECK _ASPVERB)) @DEFAULTPOLARITY } "Default polarity is positive, i.e., positive if no neg-adv. has introduced a negative value." (S: ^=!). "Experimental rules to improve efficiency:" I'imprs --> Vimprsfin: ^=! (^ VFORM)=c fin @(COMPLETE (^ PASSIVE)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) @(COMPLETE (^ CHECK _ASPVERB)) @DEFAULTPOLARITY; (Simprs: ^=!). I'cop --> Vcopfin: ^=! (^ VFORM)=c fin @(COMPLETE (^ PASSIVE)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) @(COMPLETE (^ CHECK _ASPVERB)) @DEFAULTPOLARITY; (Scop: ^=!). I'aux --> Vauxfin: ^=! (^ VFORM)=c fin @(COMPLETE (^ PASSIVE)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) @(COMPLETE (^ CHECK _ASPVERB)) @DEFAULTPOLARITY; (Scop: ^=!). "Make separate Saux later?" S --> [{ [( (ADVtmp: !$(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-ADJUNCTPP"") "Tentative solution to avoid some ADVs before SUBJ." (ADVneg: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") { NOMnopron: (^ SUBJ)=! ~(^ CHECK _MAIN-CL)=- "~(! PRON-TYPE)" @REFERENTIAL "Tentatively added '?'" @SUBJCASE @COMPLETECHECKFEATS | NPsit: (^ SUBJ)=! ~(^ CHECK _MAIN-CL)=- (^ XCOMP* PREDLINK ATYPE)}) (ALLQ: (^ SUBJ)=! (! SPEC QUANT CHECK _FLOATING)=+ (^ SUBJ NUM)=c pl) (PRONrfl: { (^ OBJben)=! (^ CHECK _MOVED-BEN)=+ | (^ OBJ)=! } (^ CHECK _REFL)=c + ~(^ VTYPE)=aux ~(^ CHECK _MAIN-CL)=- ) (PRON: (^ OBJben)=! @OBJbenCASE ~(! PRON-TYPE)=quant ~(^ VTYPE)=aux ~(^ CHECK _MAIN-CL)=- "Pronominals can Holmberg-move only in main clauses." ~(^ CHECK _ASPVERB)=+_ "No pronouns here in 'driver og...' constr." "{ ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" ~(! PRON-TYPE)=refrefl (^ CHECK _MOVED-BEN)=+) "Moved OBJben must leave a mark, since pronominal OBJ can move only if OBJben also has moved." (PRON: (^ OBJ)=! @OBJCASE ~(! PRON-TYPE)=quant ~(^ VTYPE)=aux "Pronominal OBJ and OBJben may occur here under S, in that order, rather than under VP only if the head of IP is the main verb. ('Da gav Per henne den ikke', but not '*Da har Per henne den ikke gitt'." ~(^ CHECK _MAIN-CL)=- ~(^ CHECK _ASPVERB)=+_ "No pronouns here in 'driver og...' constr." ~(! CHECK _P-SELFORM) "We don't want prepositional objects up here - that would yield 'jeg tenker ham på'." ~(! PRON-TYPE)=refrefl "{ ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" { ~(^ OBJben) | (^ OBJben) (^ CHECK _MOVED-BEN)=c + "@(COMPLETE (^ CHECK _MOVED-BEN))"}) (PRON: (^ COMP)=! (! PRON-TYPE)=c pers (! GEND NEUT)=c +)], "If SUBJ is not pronominal, then the relative order of SUBJ (together with possible Holmberg-moved pronouns) and ADVs is free (SUBJ(+ associates) at any point in ADV sequence). However, ADVatts and ADVcmts like 'heldigvis', 'sannsynligvis' must come before ADVss like 'ikke', 'ofte' Examples: 'Da spiste Per den heldigvis ikke', 'Da spiste heldigvis Per den ikke'." [ (ADVprt: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "This feature is checked by the IP-expansion of CPnom." ""@MRS-SMADVSYNTAX"") (ADVatt: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "This feature is checked by the IP-expansion of CPnom." ""@MRS-SMADVSYNTAX"") (ADVcmt*: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") (ADVPs*: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" ""@MRS-SMADVSYNTAX""), (ADVneg: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"")] "Remove comma to avoid overgeneration (ADVloc before SUBJ). But may need further consideration." ( "{" ADVloc: !$(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" ""@MRS-ADJUNCTPP"" "| PP: @ADJUNCTPP ~(^ CHECK _MAIN-CL)=+}"),"Remove PP option for now. (Bug in XLE, which will be removed)" ({AP: !$s(^ ADJUNCT) ~(! ADV-TYPE)=temp (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) @MRS-SMADVSYNTAX | AP: !$(^ ADJUNCT) (! ADV-TYPE)=c temp (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" @MRS-ADJUNCTPP }) | { PRON: (^ SUBJ)=! @SUBJCASE | PRONexpl: (^ SUBJ)=! @SUBJCASE } [ (ALLQ: (^ SUBJ)=! (! SPEC QUANT CHECK _FLOATING)=+ (^ SUBJ NUM)=c pl) (PRONrfl: { (^ OBJben)=! (^ CHECK _MOVED-BEN)=+ | (^ OBJ)=! } (^ CHECK _REFL)=c + ~(^ VTYPE)=aux ~(^ CHECK _MAIN-CL)=- ) (PRON: (^ OBJben)=! @OBJbenCASE ~(! PRON-TYPE)=quant ~(^ VTYPE)=aux ~(^ CHECK _MAIN-CL)=- ~(^ CHECK _ASPVERB)=+_ "No pronouns here in 'driver og...' constr." "{ ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" ~(! PRON-TYPE)=refrefl (^ CHECK _MOVED-BEN)=+) "See comments immediately above." (PRON: (^ OBJ)=! @OBJCASE ~(! PRON-TYPE)=quant ~(^ VTYPE)=aux ~(^ CHECK _MAIN-CL)=- ~(^ CHECK _ASPVERB)=+_ "No pronouns here in 'driver og...' constr." ~(! CHECK _P-SELFORM) "We don't want prepositional objects up here under S - that would yield 'jeg tenker ham på'." ~(! PRON-TYPE)=refrefl "{ ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" { ~(^ OBJben) | (^ OBJben) (^ CHECK _MOVED-BEN)=c +}) (PRON: (^ COMP)=! (! PRON-TYPE)=c pers (! GEND NEUT)=c +)], [ (ADVprt: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") (ADVatt: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") (ADVcmt*: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") (ADVPs*: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" ""@MRS-SMADVSYNTAX""), (ADVneg: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"")], ("{" ADVloc: !$(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" ""@MRS-ADJUNCTPP"" "| PP: @ADJUNCTPP ~(^ CHECK _MAIN-CL)=+}"),"Remove PP option for now. (Bug in XLE, which will be removed)" ({ AP: !$s(^ ADJUNCT) ~(! ADV-TYPE)=temp (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) @MRS-SMADVSYNTAX | AP: !$(^ ADJUNCT) (! ADV-TYPE)=c temp (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" @MRS-ADJUNCTPP }) } ({ "e: (^ CHECK _MAIN-CL)=c +" "VP optional only in main clauses" "|" VPmain: ^=! "(^ CHECK _MAIN-CL)=c +" "Removed MAIN-CL check Apr 07" (^ VFORM)=c fin @DEFAULTPOLARITY | VPaspfin: ^=! (^ VFORM)=c fin (^ CHECK _ASPVERB)=c +_})]. "Experimental rules to improve efficiency:" Simprs --> ("{" PRONexpl: (^ SUBJ)=! @SUBJCASE "| NOM: (^ SUBJ)=! ""Removing tough option Nov 06"" @SUBJCASE (^ CHECK _TOUGH)=c + %holdon=(^ XCOMP {ADJUNCT $ OBJ | OBJ}) (^ SUBJ)\CASE=%holdon\CASE }") [ (ADVprt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVatt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVcmt*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVPs*: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" ""@MRS-SMADVSYNTAX""), (ADVneg: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"")], ( ADVloc: !$(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" ""@MRS-ADJUNCTPP""), ({ AP: !$s(^ ADJUNCT) ~(! ADV-TYPE)=temp (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) @MRS-SMADVSYNTAX | AP: !$(^ ADJUNCT) (! ADV-TYPE)=c temp (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" @MRS-ADJUNCTPP }) VPmain2: ^=! "(^ CHECK _MAIN-CL)=c +" (^ VFORM)=c fin @DEFAULTPOLARITY. Scop --> { [ ((ADVtmp: !$(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-ADJUNCTPP"") "Tentative solution to avoid some ADVs before SUBJ." { NOMnopron: (^ SUBJ)=! ~(^ CHECK _MAIN-CL)=- "~(! PRON-TYPE)" @REFERENTIAL "Tentatively added '?'" @SUBJCASE @COMPLETECHECKFEATS | NPsit: (^ SUBJ)=! ~(^ CHECK _MAIN-CL)=- (^ XCOMP* PREDLINK ATYPE)}) (ALLQ: (^ SUBJ)=! (! SPEC QUANT CHECK _FLOATING)=+ (^ SUBJ NUM)=c pl)], [ (ADVprt: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") (ADVatt: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") (ADVcmt*: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") (ADVPs*: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" ""@MRS-SMADVSYNTAX""), (ADVneg: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"")] "Remove comma to avoid overgeneration (ADVloc before SUBJ). But may need further consideration." ( "{" ADVloc: !$(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" ""@MRS-ADJUNCTPP"" "| PP: @ADJUNCTPP ~(^ CHECK _MAIN-CL)=+}"),"Remove PP option for now. (Bug in XLE, which will be removed)" ({ AP: !$s(^ ADJUNCT) ~(! ADV-TYPE)=temp (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) @MRS-SMADVSYNTAX | AP: !$(^ ADJUNCT) (! ADV-TYPE)=c temp (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" @MRS-ADJUNCTPP }) | { PRON: (^ SUBJ)=! @SUBJCASE | PRONexpl: (^ SUBJ)=! @SUBJCASE } (ALLQ: (^ SUBJ)=! (! SPEC QUANT CHECK _FLOATING)=+ (^ SUBJ NUM)=c pl), [ (ADVprt: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") (ADVatt: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") (ADVcmt*: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") (ADVPs*: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" ""@MRS-SMADVSYNTAX""), (ADVneg: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"")], ("{" ADVloc: !$(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" ""@MRS-ADJUNCTPP"" "| PP: @ADJUNCTPP ~(^ CHECK _MAIN-CL)=+}"),"Remove PP option for now. (Bug in XLE, which will be removed)" ({ AP: !$s(^ ADJUNCT) ~(! ADV-TYPE)=temp (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) @MRS-SMADVSYNTAX | AP: !$(^ ADJUNCT) (! ADV-TYPE)=c temp (^ CHECK _POSTFINADV)=+ "(* RIGHT_SISTER)" @MRS-ADJUNCTPP }) } "{ e: (^ CHECK _MAIN-CL)=c +" "VP optional only in main clauses" "|" (VPmain2: ^=! "(^ CHECK _MAIN-CL)=c +" "Removed MAIN-CL check Apr 07" (^ VFORM)=c fin @DEFAULTPOLARITY)"}". Ssub --> [{ (ADVneg: !$s(^ ADJUNCT) (^ CHECK _POSTFINADV)=+ ""@MRS-SMADVSYNTAX"") ({ NOMnopron: (^ SUBJ)=! "(^ CHECK _MAIN-CL)=c -" "~(! PRON-TYPE)" "Redundant with NOMnopron - and erroneously excludes some AppP-phrases." @REFERENTIAL "Tentatively added '?'" @SUBJCASE @COMPLETECHECKFEATS | NPsit: (^ SUBJ)=! "(^ CHECK _MAIN-CL)=c -" (^ XCOMP* PREDLINK ATYPE)}) "No adverbs before SUBJ in subordinate clauses." (ALLQ: (^ SUBJ)=! (! SPEC QUANT CHECK _FLOATING)=+ (^ SUBJ NUM)=c pl), [ (ADVprt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVatt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVcmt*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVPs*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX""), (ADVneg: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"")] "Remove comma to avoid overgeneration (ADVloc before SUBJ). But may need further consideration." ( { ADVloc: !$(^ ADJUNCT) ""@MRS-ADJUNCTPP"" | PP: @ADJUNCTPP }),"Remove PP option for now. (Bug in XLE, which will be removed)-- reinstalled Oct 06" ({ AP: !$s(^ ADJUNCT) ~(! ADV-TYPE)=temp (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) @MRS-SMADVSYNTAX | AP: !$(^ ADJUNCT) (! ADV-TYPE)=c temp (^ CHECK _POSTFINADV)=+ @MRS-ADJUNCTPP }) | { PRON: (^ SUBJ)=! @SUBJCASE | PRONexpl: (^ SUBJ)=! @SUBJCASE } (ALLQ: (^ SUBJ)=! (! SPEC QUANT CHECK _FLOATING)=+ (^ SUBJ NUM)=c pl), [ (ADVprt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVatt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVcmt*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVPs*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX""), (ADVneg: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"")], ({ ADVloc: !$(^ ADJUNCT) ""@MRS-ADJUNCTPP"" | PP: @ADJUNCTPP }),"Remove PP option for now. (Bug in XLE, which will be removed) -- rein stalled Oct 06" ({ AP: !$s(^ ADJUNCT) ~(! ADV-TYPE)=temp (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) @MRS-SMADVSYNTAX | AP: !$(^ ADJUNCT) (! ADV-TYPE)=c temp (^ CHECK _POSTFINADV)=+ @MRS-ADJUNCTPP }) } { VPfinCMPL: ^=! "VP obligatory in non-main clauses" ~(^ CHECK _MAIN-CL)=+ (^ VFORM)=c fin @DEFAULTPOLARITY { ~(^ CLAUSE-TYPE)=wh-int ~(^ CLAUSE-TYPE)=pol-int "" "@MRS-PRPSTN" "" | { (^ CLAUSE-TYPE)=c wh-int | (^ CLAUSE-TYPE)=c pol-int } "" @MRS-INT "" } "@(COMPLETE (^ PASSIVE))" | VPaspfin: ^=! (^ VFORM)=c fin (^ CHECK _ASPVERB)=c +_ { ~(^ CLAUSE-TYPE)=wh-int ~(^ CLAUSE-TYPE)=pol-int "" "@MRS-PRPSTN" "" | { (^ CLAUSE-TYPE)=c wh-int | (^ CLAUSE-TYPE)=c pol-int } "" @MRS-INT "" }}]. "Experimental rule for efficiency:" Ssubimprs --> PRONexpl: (^ SUBJ)=! @SUBJCASE; [ (ADVprt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVatt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVcmt*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVPs*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX""), (ADVneg: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"")], ({ ADVloc: !$(^ ADJUNCT) ""@MRS-ADJUNCTPP"" | PP: @ADJUNCTPP }),"Remove PP option for now. (Bug in XLE, which will be removed) -- reinstalled Oct 06" ({ AP: !$s(^ ADJUNCT) ~(! ADV-TYPE)=temp (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) @MRS-SMADVSYNTAX | AP: !$(^ ADJUNCT) (! ADV-TYPE)=c temp (^ CHECK _POSTFINADV)=+ @MRS-ADJUNCTPP }) VP2fin: ^=! "VP obligatory in non-main clauses" ~(^ CHECK _MAIN-CL)=+ (^ VFORM)=c fin @DEFAULTPOLARITY { ~(^ CLAUSE-TYPE)=wh-int ~(^ CLAUSE-TYPE)=pol-int "" "@MRS-PRPSTN" "" | { (^ CLAUSE-TYPE)=c wh-int | (^ CLAUSE-TYPE)=c pol-int } "" @MRS-INT "" } "@(COMPLETE (^ PASSIVE))". Ssub2 --> [{ { NOMnopron: (^ SUBJ)=! "This rule is for C-less nominal clauses. The only difference from Ssub is that the SUBJ is obligatory. This helps efficiency. NB! Made it optional again March 2007 - tentatively." "(^ CHECK _MAIN-CL)=c -" "~(! PRON-TYPE)" @REFERENTIAL "Tentatively added '?'" @SUBJCASE @COMPLETECHECKFEATS | NPsit: (^ SUBJ)=! "(^ CHECK _MAIN-CL)=c -" (^ XCOMP* PREDLINK ATYPE)} "No adverbs before SUBJ in subordinate clauses." (ALLQ: (^ SUBJ)=! (! SPEC QUANT CHECK _FLOATING)=+ (^ SUBJ NUM)=c pl), [ (ADVprt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVatt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVcmt*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVPs*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX""), (ADVneg: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"")] "Remove comma to avoid overgeneration (ADVloc before SUBJ). But may need further consideration." ( { ADVloc: !$(^ ADJUNCT) ""@MRS-ADJUNCTPP"" | PP: @ADJUNCTPP }),"Remove PP option for now. (Bug in XLE, which will be removed) -- reinstalled Oct 06" ({ AP: !$s(^ ADJUNCT) ~(! ADV-TYPE)=temp (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) @MRS-SMADVSYNTAX | AP: !$(^ ADJUNCT) (! ADV-TYPE)=c temp (^ CHECK _POSTFINADV)=+ @MRS-ADJUNCTPP }) | { PRON: (^ SUBJ)=! @SUBJCASE | PRONexpl: (^ SUBJ)=! @SUBJCASE } (ALLQ: (^ SUBJ)=! (! SPEC QUANT CHECK _FLOATING)=+ (^ SUBJ NUM)=c pl), [ (ADVprt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVatt: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVcmt*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"") (ADVPs*: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX""), (ADVneg: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"")], ({ ADVloc: !$(^ ADJUNCT) ""@MRS-ADJUNCTPP"" | PP: @ADJUNCTPP }),"Remove PP option for now. (Bug in XLE, which will be removed) -- reinstalled Oct 06" ({ AP: !$s(^ ADJUNCT) ~(! ADV-TYPE)=temp (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) @MRS-SMADVSYNTAX | AP: !$(^ ADJUNCT) (! ADV-TYPE)=c temp (^ CHECK _POSTFINADV)=+ @MRS-ADJUNCTPP }) } { VPfinCMPL: ^=! "VP obligatory in non-main clauses" ~(^ CHECK _MAIN-CL)=+ (^ VFORM)=c fin @DEFAULTPOLARITY "@(COMPLETE (^ PASSIVE))" | VPaspfin: ^=! (^ VFORM)=c fin (^ CHECK _ASPVERB)=c +_}]. VP --> VCMPL: ^=! @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) @(COMPLETE (^ PRON-TYPE)) @(COMPLETE (^ CHECK _PRT-VERB)); (PPsel: @SELPP "Example: 'Jon har tatt av seg frakken.'" (! OBJ PRON-TYPE) (^ OBJ) ~(^ OBJ PRON-TYPE)) (PRONrfl: { (^ OBJ)=! | (^ OBJben)=! } (^ CHECK _REFL)=c + (! PRON-TYPE)=c refl) (NOM: (^ OBJben)=! @COMPLETECHECKFEATS @PERCOLATEANT "{ ~(! PRON-TYPE)=refl @PERCOLATEANT | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @REFREFLEXIVE } @REFERENTIAL? @OBJbenCASE) ( (PRT: (^ CHECK _PRT-VERB)=c + (^ CHECK _PART)=+_ ~(^ OBJ PRON-TYPE)) NOM: (^ OBJ)=! @COMPLETECHECKFEATS ~(! REF)=- ~(! PRON-TYPE)=refl @PPARG1 { ~(! PRON-TYPE)=refrefl @PERCOLATEANT | (! PRON-TYPE)=c refrefl @REFREFLEXIVE } @REFERENTIAL? @OBJCASE (^ CHECK _OBJINSITU)=+ "This feature is to ensure that it is the SUBJ which is in place in 'Katter er kjedelig å jage'. The equation (^ SUBJ)=(^ XCOMP OBJ) would otherwise give the same synt. analysis to 'Å jage katter er kjedelig' (with 'katter' as SUBJ)." (^ OBJ CHECK _PREPEXISTS)=- "This feature is to prevent a following PPsel (SELPP, see below) with the function of OBJ and no internal OBJ, which would be unifiable with this OBJ. (Example: 'bussen tenker Kari på' with 'bussen' as SUBJ and 'Kari' as OBJ.") (AP: !$s(^ ADJUNCT) (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) ""{ ~(! ADV-TYPE)=temp @MRS-SMADVSYNTAX | (! ADV-TYPE)=c temp @MRS-ADJUNCTPP }"") (PRT: (^ CHECK _PRT-VERB)=c + (^ CHECK _PART)=+_) (PRON: (^ COMP)=! (! PRON-TYPE)=c pers (! GEND NEUT)=c +) [ (APCMPL:! $"@MRS-ADVQUANTSYNTAX"") (NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom @PPARG1 (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") { (ADVP: !$s (^ ADJUNCT) ~(! ADV-TYPE)=loc ""@MRS-SMADVSYNTAX"") | (AP: !$s (^ ADJUNCT) (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) ""{ ~(! ADV-TYPE)=temp @MRS-SMADVSYNTAX | (! ADV-TYPE)=c temp @MRS-ADJUNCTPP }"") }] ((COMMA) PPADVCMPL:@ADJUNCTPP @NORMATTACH; ((COMMA) PPADVCMPL:@ADJUNCTPP)), (PPpost: @ADJUNCTPP), ({ PPtil: @OBLBENPP |PPav: @OBLAGPP} ), (PPsel: @SELPP; (PPsel: @SELPP)), (ADVPs: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX""), ((COMMA) ADVPloc: !$(^ ADJUNCT) @NORMADVATTACH ""@MRS-ADJUNCTPP"") (COMMA NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") (CLOCK: ! $ (^ ADJUNCT) @MRS-CLOCKADJUNCT) ({ VP': { (^ XCOMP)=! | (^ PREDLINK)=! "@VPREDCOMP" (! SUBJ PRED)='pro' (! SUBJ PRON-TYPE)=null } (! CHECK _TOPVP)=- ; (PPav: @OBLAGPP) | VPCMPL: (^ XCOMP)=! (! CHECK _TOPVP)=- ~(! VFORM)=fin { ~(^ PASSIVE)=+ "Main verb complements to auxiliaries" (^ VTYPE)=c aux | (^ PASSIVE)=c + "Complex passives: 'Han antas myrdet'" (! VFORM)=c pastpart (! PASS-TYPE)=c complex | (! VFORM)=c inf ~(^ VTYPE)=aux "(^ OBJ)" "acc with inf; 'la'"} | VPasp: (^ XCOMP)=! (! CHECK _TOPVP)=- ~(! VFORM)=fin ~(^ PASSIVE)=+ (^ VTYPE)=c aux (! CHECK _ASPVERB)=c +_ | WhP: (^ COMP)=! (! CLAUSE-TYPE)=wh-int (! TOPCP)=- }) ({ (COMMA) CPadv"+": ~(^ CHECK _AUX1COMP)=+ "No adverbial clauses if the VP is a complement of an epistemic modal." ~(^ PASS-TYPE)=periph ! $"@MRS-ADVCLAUSE"" | VPpur: ! $"@MRS-ADVCLAUSE"" }) "Adverbial clauses. We temporarily assume that they must precede nominal clauses. Thus the opposite order will uniformly be analysed with the adv. clause as a constituent of the nom. clause." ( { CPnullc: (^ COMP)=! @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=nominal (! TOPCP)=- |CPnom: { (^ COMP)=! | (^ PREDLINK)=! "@COMP" } (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=nominal |CPpol: (^ COMP)=! (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=pol-int |CPrel: (^ COMP)=! (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) @RESTRELINTERNAL (^ CHECK _VCONSTR)=c cleft "Clefts." | (COMMA) CPloc: @LOCREL2 (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE))}). "Experimental rule to help efficiency:" VP2 --> V2: ^=! @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) @(COMPLETE (^ PRON-TYPE)) @(COMPLETE (^ CHECK _PRT-VERB)); [({ APCMPL: (^ PREDLINK)=! @OBJPREDAGR (! ATYPE)=predicative ~(! DEF)=+ ~(! CHECK _ADVERBIAL)=+ | NOM: (^ PREDLINK)=! "@NCOMP" ~(! CASE)=gen @COMPLETECHECKFEATS (^ PREDLINK CHECK _PREPEXISTS)=- @REFERENTIAL? | PPpred: @(SELPPfn PREDLINK) | PPapred: @(SELPPfn PREDLINK) { @SUBJPREDAGR | @OBJPREDAGR } | APCMPL: (^ PREDLINK)=! (! ATYPE)=predicative @SUBJPREDAGR ~(! DEF)=+ ~(! CHECK _ADVERBIAL)=+ | PP:(^ PREDLINK)=! "@ADVCOMP" (! PTYPE)=c sem | PPpost:(^ PREDLINK)=! "@ADVCOMP" (! PTYPE)=c sem | ADVPloc:(^ PREDLINK)=! "@ADVCOMP" | ADVtmp:(^ PREDLINK)=! (! ADV-TYPE)=c temp "@ADVCOMP" })], [ (QuantPadv: !$(^ ADJUNCT) ""@MRS-ADVQUANTSYNTAX"") (NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") { (ADVP: !$s (^ ADJUNCT) ~(! ADV-TYPE)=loc ""@MRS-SMADVSYNTAX"") | (AP: !$s (^ ADJUNCT) "(^ PRED FN)=c bli" "Manner adverbials after predicatives only with 'bli' (?)" (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) ""{ ~(! ADV-TYPE)=temp @MRS-SMADVSYNTAX | (! ADV-TYPE)=c temp @MRS-ADJUNCTPP }"") }] ((COMMA) PPADVCMPL:@ADJUNCTPP @NORMATTACH; ((COMMA) PPADVCMPL:@ADJUNCTPP)), (PPpost: @ADJUNCTPP), (ADVPs: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX""), ((COMMA) ADVPloc: !$(^ ADJUNCT) @NORMADVATTACH ""@MRS-ADJUNCTPP"") (COMMA NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") (CLOCK: ! $ (^ ADJUNCT) @MRS-CLOCKADJUNCT) ({ VP': { (^ XCOMP)=! | (^ PREDLINK)=! "@VPREDCOMP" (! SUBJ PRED)='pro' (! SUBJ PRON-TYPE)=null } (! CHECK _TOPVP)=- ; (PPav: @OBLAGPP) | VPCMPL: (^ XCOMP)=! (! CHECK _TOPVP)=- ~(! VFORM)=fin ~(^ PASSIVE)=+ "Main verb complements to auxiliaries" (^ VTYPE)=c aux }) ({ (COMMA) CPadv"+": ~(^ CHECK _AUX1COMP)=+ "No adverbial clauses if the VP is a complement of an epistemic modal." ~(^ PASS-TYPE)=periph ! $"@MRS-ADVCLAUSE"" | VPpur: ! $"@MRS-ADVCLAUSE"" }) "Adverbial clauses. We temporarily assume that they must precede nominal clauses. Thus the opposite order will uniformly be analysed with the adv. clause as a constituent of the nom. clause." ( { CPnom: { (^ COMP)=! | (^ PREDLINK)=! "@COMP" } (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=nominal |CPrel: (^ COMP)=! (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) @RESTRELINTERNAL (^ CHECK _VCONSTR)=c cleft "Clefts." |(COMMA) CPloc: @LOCREL2 (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE))}). VPfin --> VfinCMPL: ^=! @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) @(COMPLETE (^ PRON-TYPE)) @(COMPLETE (^ CHECK _PRT-VERB)); (PPsel: @SELPP "Example: 'Jon tar av seg frakken.'" (! OBJ PRON-TYPE) (^ OBJ) ~(^ OBJ PRON-TYPE)) (PRONrfl: { (^ OBJ)=! | (^ OBJben)=! } (^ CHECK _REFL)=c + (! PRON-TYPE)=c refl) (NOM: (^ OBJben)=! @COMPLETECHECKFEATS @PERCOLATEANT "{ ~(! PRON-TYPE)=refl @PERCOLATEANT | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @REFREFLEXIVE } @REFERENTIAL? @OBJbenCASE) ( (PRT: (^ CHECK _PRT-VERB)=c + (^ CHECK _PART)=+_ ~(^ OBJ PRON-TYPE)) NOM: (^ OBJ)=! @COMPLETECHECKFEATS ~(! REF)=- ~(! PRON-TYPE)=refl @PPARG1 { ~(! PRON-TYPE)=refrefl @PERCOLATEANT | (! PRON-TYPE)=c refrefl @REFREFLEXIVE } @REFERENTIAL? @OBJCASE (^ CHECK _OBJINSITU)=+ "This feature is to ensure that it is the SUBJ which is in place in 'Katter er kjedelig å jage'. The equation (^ SUBJ)=(^ XCOMP OBJ) would otherwise give the same synt. analysis to 'Å jage katter er kjedelig' (with 'katter' as SUBJ)." (^ OBJ CHECK _PREPEXISTS)=- "This feature is to prevent a following PPsel (SELPP, see below) with the function of OBJ and no internal OBJ, which would be unifiable with this OBJ. (Example: 'bussen tenker Kari på' with 'bussen' as SUBJ and 'Kari' as OBJ.") (PRT: (^ CHECK _PRT-VERB)=c + (^ CHECK _PART)=+_) (PRON: (^ COMP)=! (! PRON-TYPE)=c pers (! GEND NEUT)=c +) [ (APCMPL: ! $"@MRS-ADVQUANTSYNTAX"") (NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom @PPARG1 (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") { (ADVP: !$s (^ ADJUNCT) ~(! ADV-TYPE)=loc ""@MRS-SMADVSYNTAX"") | (AP: !$s (^ ADJUNCT) (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) ""{ ~(! ADV-TYPE)=temp @MRS-SMADVSYNTAX | (! ADV-TYPE)=c temp @MRS-ADJUNCTPP }"") }] ((COMMA) PPADVCMPL:@ADJUNCTPP @NORMATTACH; ((COMMA) PPADVCMPL:@ADJUNCTPP)), (PPpost: @ADJUNCTPP), ({ PPtil: @OBLBENPP |PPav: @OBLAGPP} ), (PPsel: @SELPP; (PPsel: @SELPP)), (ADVPs: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX""), ((COMMA) ADVPloc: !$(^ ADJUNCT) @NORMADVATTACH ""@MRS-ADJUNCTPP"") (COMMA NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") (CLOCK: ! $ (^ ADJUNCT) @MRS-CLOCKADJUNCT) ({ VP': { (^ XCOMP)=! | (^ PREDLINK)=! "@VPREDCOMP" (! SUBJ PRED)='pro' (! SUBJ PRON-TYPE)=null } (! CHECK _TOPVP)=- ; (PPav: @OBLAGPP) | VPCMPL: (^ XCOMP)=! (! CHECK _TOPVP)=- ~(! VFORM)=fin { ~(^ PASSIVE)=+ "Main verb complements to auxiliaries" (^ VTYPE)=c aux | (^ PASSIVE)=c + "Complex passives: 'Han antas myrdet'" (! VFORM)=c pastpart (! PASS-TYPE)=c complex | (! VFORM)=c inf ~(^ VTYPE)=aux "(^ OBJ)" "acc with inf; 'la'"} | VPasp: (^ XCOMP)=! (! CHECK _TOPVP)=- ~(! VFORM)=fin ~(^ PASSIVE)=+ (^ VTYPE)=c aux (! CHECK _ASPVERB)=c +_ | WhP: (^ COMP)=! (! CLAUSE-TYPE)=wh-int (! TOPCP)=- }) ({ (COMMA) CPadv"+": ~(^ CHECK _AUX1COMP)=+ "No adverbial clauses if the VP is a complement of an epistemic modal." ~(^ PASS-TYPE)=periph ! $"@MRS-ADVCLAUSE"" | VPpur: ! $"@MRS-ADVCLAUSE"" }) "Adverbial clauses. We temporarily assume that they must precede nominal clauses. Thus the opposite order will uniformly be analysed with the adv. clause as a constituent of the nom. clause." ( { CPnullc: (^ COMP)=! @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=nominal (! TOPCP)=- |CPnom: { (^ COMP)=! | (^ PREDLINK)=! "@COMP" } (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=nominal |CPpol: (^ COMP)=! (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=pol-int |CPrel: (^ COMP)=! (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) @RESTRELINTERNAL (^ CHECK _VCONSTR)=c cleft "Clefts." |(COMMA) CPloc: @LOCREL2 (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE))}). "Experimental rule to help efficiency:" VP2fin --> V2fin: ^=! @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) @(COMPLETE (^ PRON-TYPE)) @(COMPLETE (^ CHECK _PRT-VERB)); [({ APCMPL: (^ PREDLINK)=! @OBJPREDAGR (! ATYPE)=predicative ~(! DEF)=+ ~(! CHECK _ADVERBIAL)=+ | NOM: (^ PREDLINK)=! @COMPLETECHECKFEATS "@NCOMP" ~(! CASE)=gen (^ PREDLINK CHECK _PREPEXISTS)=- @REFERENTIAL? | PPpred: @(SELPPfn PREDLINK) | PPapred: @(SELPPfn PREDLINK) { @SUBJPREDAGR | @OBJPREDAGR } | APCMPL: (^ PREDLINK)=! (! ATYPE)=predicative @SUBJPREDAGR ~(! DEF)=+ ~(! CHECK _ADVERBIAL)=+ | PP:(^ PREDLINK)=! "@ADVCOMP" (! PTYPE)=c sem | PPpost:(^ PREDLINK)=! "@ADVCOMP" (! PTYPE)=c sem | ADVPloc:(^ PREDLINK)=! "@ADVCOMP" | ADVtmp:(^ PREDLINK)=! (! ADV-TYPE)=c temp "@ADVCOMP" })], [ (QuantPadv: !$(^ ADJUNCT) ""@MRS-ADVQUANTSYNTAX"") (NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom @PPARG1 (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") { (ADVP: !$s (^ ADJUNCT) ~(! ADV-TYPE)=loc ""@MRS-SMADVSYNTAX"") | (AP: !$s (^ ADJUNCT) "(^ PRED FN)=c bli" "Manner adverbials after predicatives only with 'bli' (?)" (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) ""{ ~(! ADV-TYPE)=temp @MRS-SMADVSYNTAX | (! ADV-TYPE)=c temp @MRS-ADJUNCTPP }"") }] ((COMMA) PPADVCMPL:@ADJUNCTPP @NORMATTACH; ((COMMA) PPADVCMPL:@ADJUNCTPP)), (PPpost: @ADJUNCTPP), (ADVPs: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX""), ((COMMA) ADVPloc: !$(^ ADJUNCT) @NORMADVATTACH ""@MRS-ADJUNCTPP"") (COMMA NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") (CLOCK: ! $ (^ ADJUNCT) @MRS-CLOCKADJUNCT) ({ VP': { (^ XCOMP)=! | (^ PREDLINK)=! "@VPREDCOMP" (! SUBJ PRED)='pro' (! SUBJ PRON-TYPE)=null } (! CHECK _TOPVP)=- ; (PPav: @OBLAGPP) | VPCMPL: (^ XCOMP)=! (! CHECK _TOPVP)=- ~(! VFORM)=fin ~(^ PASSIVE)=+ "Main verb complements to auxiliaries" (^ VTYPE)=c aux }) ({ (COMMA) CPadv"+": ~(^ CHECK _AUX1COMP)=+ "No adverbial clauses if the VP is a complement of an epistemic modal." ~(^ PASS-TYPE)=periph ! $"@MRS-ADVCLAUSE"" | VPpur: ! $"@MRS-ADVCLAUSE"" }) "Adverbial clauses. We temporarily assume that they must precede nominal clauses. Thus the opposite order will uniformly be analysed with the adv. clause as a constituent of the nom. clause." ( { CPnom: { (^ COMP)=! | (^ PREDLINK)=! "@COMP" } (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=nominal |CPrel: (^ COMP)=! (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) @RESTRELINTERNAL (^ CHECK _VCONSTR)=c cleft "Clefts." |(COMMA) CPloc: @LOCREL2 (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE))}). VPmain --> e: (^ VFORM)=c fin @(COMPLETE (^ PRON-TYPE)); (PPsel: @SELPP "Example: 'Jon tar av seg frakken.'" (! OBJ PRON-TYPE) (^ OBJ) ~(^ OBJ PRON-TYPE) ~(^ OBJ)=(^ TOPIC))"To avoid PPsel being chosen both here and later in the VPmain." (NOM: (^ OBJben)=! @COMPLETECHECKFEATS { ~(! PRON-TYPE) @PERCOLATEANT | (! PRON-TYPE) ~(! COORD-FORM) ~(! PRON-TYPE)=refrefl { ~(! PRON-TYPE)=free ~(! ADJUNCT) Mark3 $ o::* | { (! PRON-TYPE)=c free | ~(! PRON-TYPE)=free (! ADJUNCT) } } "(a) Pronominal objects under VP are suboptimal in main clauses: If they can be analysed as daughters of S, this is preferred." | (! PRON-TYPE) (! COORD-FORM) @PERCOLATEANT ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @REFREFLEXIVE } ~(! PRON-TYPE)=refl @REFERENTIAL? @OBJbenCASE) ( (PRT: (^ CHECK _PRT-VERB)=c + (^ CHECK _PART)=+_ ~(^ OBJ PRON-TYPE)) NOM: (^ OBJ)=! @COMPLETECHECKFEATS ~(! REF)=- @PPARG1 { ~(! PRON-TYPE) @PERCOLATEANT | (! PRON-TYPE) ~(! COORD-FORM) ~(! PRON-TYPE)=refrefl { ~(! PRON-TYPE)=free ~(! ADJUNCT) Mark3 $ o::* | { (! PRON-TYPE)=c free | ~(! PRON-TYPE)=free (! ADJUNCT) } }"See comment (a) above." | (! PRON-TYPE) (! COORD-FORM) @PERCOLATEANT ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @REFREFLEXIVE } ~(! PRON-TYPE)=refl @REFERENTIAL? @OBJCASE (^ OBJ CHECK _PREPEXISTS)=- "This feature is to prevent a following PP (SELPP, see below) with the function of OBJ and no internal OBJ, which would be unifiable with this OBJ. (Example: 'bussen tenker Kari på' with 'bussen' as SUBJ and 'Kari' as OBJ.") (PRT: (^ CHECK _PRT-VERB)=c + (^ CHECK _PART)=+_) (PRON: (^ COMP)=! (* LEFT_SISTER) (! PRON-TYPE)=c pers (! GEND NEUT)=c +) [ (APCMPL: ! $"@MRS-ADVQUANTSYNTAX"") (NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom @PPARG1 (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") (ADVP: !$s (^ ADJUNCT) ~(! ADV-TYPE)=loc ""@MRS-SMADVSYNTAX""), (AP: !$s (^ ADJUNCT) (! CHECK _ADVERBIAL)=c + (* LEFT_SISTER) "See comment immediately above." (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) ""{ ~(! ADV-TYPE)=temp @MRS-SMADVSYNTAX | (! ADV-TYPE)=c temp @MRS-ADJUNCTPP }"") ] ((COMMA) PPADVCMPL: @ADJUNCTPP @NORMATTACH; ((COMMA) PPADVCMPL:@ADJUNCTPP)), (PPpost: @ADJUNCTPP), "((COMMA) PPCMPL+:@ADJUNCTPP),""Try the alternative immediately above..." ({ PPav: @OBLAGPP | PPtil: @OBLBENPP }), (PPsel: @SELPP; (PPsel: @SELPP)), ((COMMA) ADVPs: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" (* LEFT_SISTER)), ((COMMA) ADVPloc: !$(^ ADJUNCT) @NORMADVATTACH ""@MRS-ADJUNCTPP"" { (* LEFT_SISTER) | ~(* LEFT_SISTER) (! ADJUNCT) }) (COMMA NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") (CLOCK: ! $ (^ ADJUNCT) @MRS-CLOCKADJUNCT) ({ VP': { (^ XCOMP)=! | (^ PREDLINK)=! (! SUBJ PRED)='pro' (! SUBJ PRON-TYPE)=null } (! CHECK _TOPVP)=- ; (PPav: @OBLAGPP) | VPCMPL: (^ XCOMP)=! (! CHECK _TOPVP)=- ~(! VFORM)=fin { ~(^ PASSIVE)=+ "Main verb complements to auxiliaries" (^ VTYPE)=c aux | (^ PASSIVE)=c + "Complex passives: 'Han antas myrdet'" (! VFORM)=c pastpart (! PASS-TYPE)=c complex | (! VFORM)=c inf ~(^ VTYPE)=aux "(^ OBJ)" "acc with inf; 'la'"} | VPasp: (^ XCOMP)=! (! CHECK _TOPVP)=- ~(! VFORM)=fin ~(^ PASSIVE)=+ (^ VTYPE)=c aux (! CHECK _ASPVERB)=c +_ | WhP: (^ COMP)=! (! CLAUSE-TYPE)=wh-int (! TOPCP)=- }) ({ (COMMA) CPadv"+": ~(^ PASS-TYPE)=periph ! $"@MRS-ADVCLAUSE"" | VPpur: ! $"@MRS-ADVCLAUSE""}) "Adverbial clauses. We temporarily assume that they must precede nominal clauses. Thus the opposite order will uniformly be analysed with the adv. clause as a constituent of the nom. clause." ( { CPnullc: (^ COMP)=! @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=nominal (! TOPCP)=- |CPnom: { (^ COMP)=! | (^ PREDLINK)=! "@COMP" } (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=nominal |CPpol: (^ COMP)=! (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=pol-int |CPrel: (^ COMP)=! (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) @RESTRELINTERNAL (^ CHECK _VCONSTR)=c cleft "Clefts." |(COMMA) CPloc: @LOCREL2 (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE))}). "Experimental rule to help efficiency:" VPmain2 --> e: (^ VFORM)=c fin @(COMPLETE (^ PRON-TYPE)); [({ "APCMPL: (^ PREDLINK)=! @OBJPREDAGR (! ATYPE)=predicative ~(! DEF)=+ ~(! CHECK _ADVERBIAL)=+ |" NOM: (^ PREDLINK)=! @COMPLETECHECKFEATS "@NCOMP" ~(! CASE)=gen (^ PREDLINK CHECK _PREPEXISTS)=- @REFERENTIAL? | PPpred: @(SELPPfn PREDLINK) | PPapred: @(SELPPfn PREDLINK) "{" @SUBJPREDAGR "| @OBJPREDAGR }" | APCMPL: (^ PREDLINK)=! (! ATYPE)=predicative @SUBJPREDAGR ~(! DEF)=+ ~(! CHECK _ADVERBIAL)=+ | PP:(^ PREDLINK)=! "@ADVCOMP" (! PTYPE)=c sem | PPost:(^ PREDLINK)=! "@ADVCOMP" (! PTYPE)=c sem | ADVPloc:(^ PREDLINK)=! "@ADVCOMP" | ADVtmp:(^ PREDLINK)=! (! ADV-TYPE)=c temp "@ADVCOMP" })], [(QuantPadv: !$(^ ADJUNCT) ""@MRS-ADVQUANTSYNTAX"") (NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom @PPARG1 (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") (ADVP: !$s (^ ADJUNCT) ~(! ADV-TYPE)=loc ""@MRS-SMADVSYNTAX""), (AP: !$s (^ ADJUNCT) "(^ PRED FN)=c bli" "Manner adverbials after predicatives only with 'bli' (?)" (! CHECK _ADVERBIAL)=c + (* LEFT_SISTER) "See comment immediately above." (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) ""{ ~(! ADV-TYPE)=temp @MRS-SMADVSYNTAX | (! ADV-TYPE)=c temp @MRS-ADJUNCTPP }"") ] ((COMMA) PPADVCMPL:@ADJUNCTPP @NORMATTACH; ((COMMA) PPADVCMPL:@ADJUNCTPP)), (PPpost: @ADJUNCTPP), ((COMMA) ADVPs: !$s(^ ADJUNCT) ""@MRS-SMADVSYNTAX"" (* LEFT_SISTER)), ((COMMA) ADVPloc: !$(^ ADJUNCT) @NORMADVATTACH ""@MRS-ADJUNCTPP"" { (* LEFT_SISTER) | ~(* LEFT_SISTER) (! ADJUNCT) }) (COMMA NOMnopron: !$(^ ADJUNCT) @COMPLETECHECKFEATS (! CASE)=nom (! NTYPE NSEM TIME TEMPNOUN)=c + { (! NTYPE NSEM TIME WEEKDAY)=c + | ~(! NTYPE NSEM TIME WEEKDAY)=+ { (! CHECK _PREDET)=c + | ~(! CHECK _PREDET)=+ (! ADJUNCT) }} ""@MRS-TEMPNP"") ({ VP': { (^ XCOMP)=! | (^ PREDLINK)=! (! SUBJ PRED)='pro' (! SUBJ PRON-TYPE)=null } (! CHECK _TOPVP)=- ; (PPav: @OBLAGPP) | VPCMPL: (^ XCOMP)=! (! CHECK _TOPVP)=- ~(! VFORM)=fin ~(^ PASSIVE)=+ (^ VTYPE)=c aux }) ({ (COMMA) CPadv"+": ~(^ PASS-TYPE)=periph ! $"@MRS-ADVCLAUSE"" | VPpur: ! $"@MRS-ADVCLAUSE""}) "Adverbial clauses. We temporarily assume that they must precede nominal clauses. Thus the opposite order will uniformly be analysed with the adv. clause as a constituent of the nom. clause." ( { CPnom: { (^ COMP)=! | (^ PREDLINK)=! "@COMP" } (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) (! CLAUSE-TYPE)=nominal |CPrel: (^ COMP)=! (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE)) @RESTRELINTERNAL (^ CHECK _VCONSTR)=c cleft "Clefts." |(COMMA) CPloc: @LOCREL2 (! TOPCP)=- @(COMPLETE (! CLAUSE-TYPE))}). VPasp --> (Vasp: ^=!) "Pseudo-coordinated aspect constructions." (PRTasp: (^ CHECK _PRTasp-VERB)=c +) CONJasp VP: ^=!. VPaspfin --> (Vasp: ^=!) "Pseudo-coordinated aspect constructions." (PRTasp: (^ CHECK _PRTasp-VERB)=c +) CONJasp VPfin: ^=!. VP' --> PARTinf, (ADVneg: ! $s (^ ADJUNCT) (! ADV-TYPE)=c neg ""@MRS-SMADVSYNTAX"") { VPCMPL: @DEFAULTPOLARITY @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) | VPasp: @DEFAULTPOLARITY (^ CHECK _ASPVERB)=c +_ @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE))}. VPattr --> { { PP: @ADJUNCTPP "Preposed attributive VPs in NPs" |PPav: @OBLAGPP |PPtil: @OBLBENPP |AP: !$s(^ ADJUNCT) (! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) ""{ ~(! ADV-TYPE)=temp @MRS-SMADVSYNTAX | (! ADV-TYPE)=c temp @MRS-ADJUNCTPP }"" |ADVdeg: !$(^ ADJUNCT) "" @MRS-DEGADVSYNT ""} VorVptcmp: ^=! { (! VFORM)=c prespart "" @MRS-PROG (m::! RELS_EL ARG0 PERF)=-"" | (! VFORM)=c pastpart (! CHECK _SUPINE)=c - (! PASSIVE)=+ (! PASS-TYPE)=ptc ""(m::! RELS_EL ARG0 PERF)=- } "Sic!! (Cp. ERG)" "" "" @MRS-NOTENSE "" | Vptcmp: ^=! "Vptcmp doesn't obligatorily take an adjunct" { (! VFORM)=c prespart "" @MRS-PROG (m::! RELS_EL ARG0 PERF)=-"" | (! VFORM)=c pastpart (! CHECK _SUPINE)=c - (! PASSIVE)=+ (! PASS-TYPE)=ptc ""(m::! RELS_EL ARG0 PERF)=- } "Sic!! (Cp. ERG)" "" "" @MRS-NOTENSE "" }. VPpart --> V: ^=! "Postposed attributive VPs in NPs" { (! VFORM)=c prespart "" @MRS-PROG "" | (! VFORM)=c pastpart (! CHECK _SUPINE)=c + (! PASSIVE)=+ (! PASS-TYPE)=ptc ""(m::! RELS_EL ARG0 PERF)=- ""} "" @MRS-NOTENSE ""; { NOM: (^ OBJ)=! @COMPLETECHECKFEATS |PPADVCMPL: @ADJUNCTPP |PPav: @OBLAGPP |PPtil: @OBLBENPP }. VPpur --> COMPpur (ADVneg: ! $s (^ ADJUNCT) (! ADV-TYPE)=c neg ""@MRS-SMADVSYNTAX"") { VPCMPL: ^=! @DEFAULTPOLARITY @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) | VPasp: ^=! @DEFAULTPOLARITY (^ CHECK _ASPVERB)=c +_ @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE))}. CPnom --> Cnom: ^=!; "{" SsubCMPL: ^=! "" @MRS-PRPSTN "" (^ CLAUSE-TYPE)=c nominal (^ CHECK _MAIN-CL)=- @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) "| IP: ^=! (^ CLAUSE-TYPE)=c nominal (! CHECK _ISLAND)=+ (^ CHECK _MAIN-CL)=+ { (^ CHECK _POSTFINADV)=c + | ~(^ CHECK _POSTFINADV)=+ (^ TOPIC) } @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) }". CPpol --> Cpol: ^=!; SsubCMPL: ^=! (^ CLAUSE-TYPE)=c pol-int (^ CHECK _MAIN-CL)=- @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)). CPadv --> Cadv: ^=!; SsubCMPL: ^=! "" @MRS-PRPSTN "" (^ CLAUSE-TYPE)=c adv (^ CHECK _MAIN-CL)=- @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)). CPrel --> Crel: ^=!; SsubCMPL: ^=! { (^ CLAUSE-TYPE)=c wh-int "" @MRS-INT "" |~(^ CLAUSE-TYPE)=wh-int "" @MRS-PRPSTN ""} (^ CHECK _MAIN-CL)=- @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)). CPnullc --> Ssub2: ^=! @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) { "(^ CLAUSE-TYPE)=c pol-int (s::M* focus)=truth-value" "" "@MRS-INT """ "|" (^ CLAUSE-TYPE)=c wh-int "" @MRS-INT "" |~(^ CLAUSE-TYPE)=wh-int "" @MRS-PRPSTN ""}. CPloc --> { Cloc: ^=! | e: (^ CHECK _DER-HEAD)=c + } SsubCMPL: ^=! "" @MRS-PRPSTN "" (^ CHECK _MAIN-CL)=- @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)). CPtmprel --> Ctmprel: ^=!; SsubCMPL: ^=! "" @MRS-PRPSTN "" (^ CHECK _MAIN-CL)=- @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)). IPcond --> I'X: ^=! (^ CHECK _MAIN-CL)=+ (^ CLAUSE-TYPE)=adv @(COMPLETE (^ COMP-FORM)) @(COMPLETE (^ VFORM)) @(COMPLETE (^ VTYPE)) "" @MRS-PRPSTN @(MRS-SUBJUNCTION _hvis-så)"". "Other rules:" PP --> (CONJcorr: (^ OBJ)=! (^ OBJ COORD-FORM) (m::^ _CONJREL)=(m::(^ OBJ) _CONJREL)) "både til Bergen og Oslo" ( ADVPdegloc: !$(^ ADJUNCT) "" @MRS-DEGADVSYNT "") ( QuantP: !$(^ ADJUNCT) ~(! DEF)=+ @COMPLETECHECKFEATS { (! NTYPE NSEM TIME TEMPNOUN)=c + | ~(! NTYPE NSEM TIME TEMPNOUN)=c + (! NTYPE NSEM MEASURENOUN)=c + } (^ CHECK _MSRBL)=c + "" @MRS-LOCMEASURE "") P: ^=! (^ PTYPE)=c sem @OBJCASE @(COMPLETE (^ OBJ CHECK _PREPEXISTS)) @(COMPLETE (^ OBJ CHECK _P-SELFORM)) @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); { NOM: (^ OBJ)=! @COMPLETECHECKFEATS ~(! CHECK _P-SELFORM) (m::^ _PPARG1)=(m::! _PPARG1) "{ ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @PPREFREFLEXIVE } @REFERENTIAL? @PPPERCOLATEANT @EMBEDANTECEDENTFEATS "For cases where the NOM takes a selected PP" "@REFERENTIAL" | PRONrfl: (^ OBJ)=! (^ CHECK _REFL)=c + (! PRON-TYPE)=c refl | e: (^ CHECK _MOVED-OBJ)=+ ~(^ OBJ TOPCP)=- ~(^ OBJ CHECK _TOPVP)=-} "To make sure that the object CP or VP' is not just a sister of PP under VP (in the case of PCOMP and PXCOMP)". "Partitive PP:" PPpart --> (CONJcorr: (^ OBJ)=! (^ OBJ COORD-FORM) (m::^ _CONJREL)=(m::(^ OBJ) _CONJREL)) "både av Petter og Kari" Ppart: ^=! (^ PTYPE)=c sem @OBJCASE @(COMPLETE (^ OBJ CHECK _PREPEXISTS)) @(COMPLETE (^ OBJ CHECK _P-SELFORM)) @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); { NOM: (^ OBJ)=! @COMPLETECHECKFEATS ~(! CHECK _P-SELFORM) "{ ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @PPREFREFLEXIVE } @REFERENTIAL? @PPPERCOLATEANT | e: (^ CHECK _MOVED-OBJ)=+ ~(^ OBJ TOPCP)=- ~(^ OBJ CHECK _TOPVP)=-} "To make sure that the object CP or VP' is not just a sister of PP under VP (in the case of PCOMP and PXCOMP)". PPvbobj --> (CONJcorr: (^ OBJ)=! (^ OBJ COORD-FORM) (m::^ _CONJREL)=(m::(^ OBJ) _CONJREL)) "både til Bergen og Oslo" ( ADVPdegloc: !$(^ ADJUNCT) "" @MRS-DEGADVSYNT "") Pvbobj: ^=! (^ PTYPE)=c sem @OBJCASE @(COMPLETE (^ OBJ CHECK _PREPEXISTS)) @(COMPLETE (^ OBJ CHECK _P-SELFORM)) @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); { CPnom: (^ OBJ)=! { (^ PRED FN)=c etter | (^ PRED FN)=c uten } (! TOPCP)=- (^ CHECK _MOVED-OBJ)=-; (COMMA) | VP': (^ OBJ)=! (! SUBJ PRED)='pro' ""%ARG2=m::! @MRS-2ARGINFCOMPCOMMON @MRS-INDIRECTSUBJCONTROL"" (! CHECK _TOPVP)=- (^ CHECK _MOVED-OBJ)=-; (COMMA) | e: (^ CHECK _MOVED-OBJ)=+ ~(^ OBJ TOPCP)=- ~(^ OBJ CHECK _TOPVP)=-} "To make sure that the object CP or VP' is not just a sister of PP under VP (in the case of PCOMP and PXCOMP)". PPppobj --> (CONJcorr: (^ OBJ)=! (^ OBJ COORD-FORM) (m::^ _CONJREL)=(m::(^ OBJ) _CONJREL)) ( ADVPdegloc: !$(^ ADJUNCT) @MRS-DEGADVSYNT) Pppobj: ^=! (^ PTYPE)=c sem @OBJCASE @(COMPLETE (^ OBJ CHECK _PREPEXISTS)) @(COMPLETE (^ OBJ CHECK _P-SELFORM)) @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); PP: (^ OBJ)=! (m::! RELS_EL LBL)=(m::^ RELS_EL LBL) (m::! RELS_EL ARG1 type)=non_expl-ind. PPprd --> (CONJcorr: (^ OBJ)=! (^ OBJ COORD-FORM) (m::^ _CONJREL)=(m::(^ OBJ) _CONJREL)) "både til Bergen og Oslo" ( ADVPdegloc: !$(^ ADJUNCT) "" @MRS-DEGADVSYNT "") Pprd: ^=! "For the special case of PPs with PREDLINK" (^ PTYPE)=c sem @OBJCASE @(COMPLETE (^ OBJ CHECK _PREPEXISTS)) @(COMPLETE (^ OBJ CHECK _P-SELFORM)) @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); { NOM: (^ OBJ)=! @COMPLETECHECKFEATS ~(! CHECK _P-SELFORM) "{ ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @PPREFREFLEXIVE } @REFERENTIAL? @PPPERCOLATEANT "@REFERENTIAL" | PRONrfl: (^ OBJ)=! (^ CHECK _REFL)=c + (! PRON-TYPE)=c refl | e: (^ CHECK _MOVED-OBJ)=+ ~(^ OBJ TOPCP)=- ~(^ OBJ CHECK _TOPVP)=-} "To make sure that the object CP or VP' is not just a sister of PP under VP (in the case of PCOMP and PXCOMP)" ({ AP: (^ PREDLINK)=! (^ PREDLINK GEND)=(^ OBJ GEND) (^ PREDLINK NUM)=(^ OBJ NUM) ~(! CHECK _ADVERBIAL)=+ "" (m::! RELS_EL LBL)=(m::(^ OBJ) RELS_EL LBL) "" | PP: (^ PREDLINK)=! { (! PFORM)=c på | (! PFORM)=c i } @EMBEDANTECEDENTFEATS "" (m::! RELS_EL LBL)=(m::(^ OBJ) RELS_EL LBL) ""}). PPsel1 --> Psel1orPsel2: ^=! (^ PTYPE)=c sem @OBJCASE @(COMPLETE (^ OBJ CHECK _PREPEXISTS)) @(COMPLETE (^ OBJ CHECK _P-SELFORM)) @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)) @(COMPLETE (^ PFORM)); { NOM: (^ OBJ)=! @COMPLETECHECKFEATS (! CHECK _P-SELFORM) "{ ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @PPREFREFLEXIVE } @PPPERCOLATEANT @(IF ~(! CHECK _NONARG)=+ @REFERENTIAL?) "@REFERENTIAL" | PRONrfl: (^ OBJ)=! (^ CHECK _REFL)=c + (! PRON-TYPE)=c refl | e: (^ CHECK _MOVED-OBJ)=+ ~(^ OBJ TOPCP)=- ~(^ OBJ CHECK _TOPVP)=-}. PPsel2 --> Psel2: ^=! (^ PTYPE)=c sem @OBJCASE @(COMPLETE (^ OBJ CHECK _PREPEXISTS)) @(COMPLETE (^ OBJ CHECK _P-SELFORM)) @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)) @(COMPLETE (^ PFORM)); { e: (^ CHECK _MOVED-OBJ)=+ ~(^ OBJ TOPCP)=- ~(^ OBJ CHECK _TOPVP)=- "To make sure that the object CP or VP' is not just a sister of PP under VP (in the case of PCOMP and PXCOMP)" "| CPnullc: (^ OBJ)=! (! TOPCP)=- (^ CHECK _MOVED-OBJ)=- (! CHECK _P-SELFORM)" "CP and VP' objects of prepositions only possible when the PP is selected by a verb, reflected in the feature _P-SELFORM." | CPnom: (^ OBJ)=! (! TOPCP)=- (^ CHECK _MOVED-OBJ)=- (! CHECK _P-SELFORM) "CP and VP' objects of prepositions only possible when the PP is selected by a verb, reflected in the feature _P-SELFORM." "| CPnullc: (^ OBJ)=! (^ PFORM)=c som (! CLAUSE-TYPE)=nominal (! TOPCP)=- (^ CHECK _MOVED-OBJ)=- (! CHECK _P-SELFORM)""Tentatively removed 1006" | CPpol: (^ OBJ)=! (! TOPCP)=- (^ CHECK _MOVED-OBJ)=- (! CHECK _P-SELFORM) "CP and VP' objects of prepositions only possible when the PP is selected by a verb, reflected in the feature _P-SELFORM." | WhP: (^ OBJ)=! (! TOPCP)=- (^ CHECK _MOVED-OBJ)=- (! CHECK _P-SELFORM) "CP and VP' objects of prepositions only possible when the PP is selected by a verb, reflected in the feature _P-SELFORM." | VP': (^ OBJ)=! (! CHECK _TOPVP)=- (^ CHECK _MOVED-OBJ)=- (! CHECK _P-SELFORM)}. PPpred --> Ppred: ^=! "(! PFORM)=c som" ~(^ OBJ CASE)=gen; { QuantPnoref: (^ OBJ)=! | NP: (^ OBJ)=! @REFERENTIAL? ~(! DEF)=+ (! CHECK _PREDICATIVE)=+ | e: (^ CHECK _MOVED-OBJ)=+ ~(^ OBJ TOPCP)=- ~(^ OBJ CHECK _TOPVP)=- }. "Han arbeidet som sjåfør." PPapred --> Ppred: ^=! "(! PFORM)=c som"; { AP: (^ OBJ)=! ~(! DEF)=+ (! ATYPE)=predicative (! CHECK _PREDICATIVE)=+ ~(! CHECK _ADVERBIAL)=+ | e: (^ CHECK _MOVED-OBJ)=+ }. "Han anså Petter som dum." PPpost --> "(Pcirc)" { NOMnopron: (^ OBJ)=! ~(! CHECK _P-SELFORM) "~(! PRON-TYPE)" @COMPLETECHECKFEATS @REFERENTIAL? @PPPERCOLATEANT "@REFERENTIAL" | e: (^ CHECK _MOVED-OBJ)=+ ~(^ OBJ TOPCP)=- ~(^ OBJ CHECK _TOPVP)=-} Ppost: ^=! @OBJCASE. PPsom --> ( ADVPdegloc: !$(^ ADJUNCT) "" @MRS-DEGADVSYNT "") Psom: ^=! (^ PTYPE)=c sem @OBJCASE @(COMPLETE (^ OBJ CHECK _PREPEXISTS)) @(COMPLETE (^ OBJ CHECK _P-SELFORM)) @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); { NOM: (^ OBJ)=! @COMPLETECHECKFEATS ~(! CHECK _P-SELFORM) { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @PPREFREFLEXIVE } @REFERENTIAL? @PPPERCOLATEANT | PP: (^ OBJ)=! (m::! RELS_EL LBL)=(m::^ RELS_EL LBL) (m::! RELS_EL ARG1 type)=non_expl-ind }. "PPnosem --> P: ^=! (^ PTYPE)=c nosem (^ CHECK _PREPEXISTS)=+ (^ CASE)=obl @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); (NOM: ^=! { ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +} { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @PPREFREFLEXIVE } @PPPERCOLATEANT) ." PPtil --> Ptil: ^=! (^ PTYPE)=c nosem (^ PFORM)=c til (^ CHECK _PREPEXISTS)=+ "{ ~(^ PRON-TYPE) | (^ PRON-TYPE) " (^ CASE)=obl" }" "Cannot use the ordinary OBJCASE template here, since the nominal is not an OBJ but unified with the PP structure." @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); NOM: ^=! @COMPLETECHECKFEATS "{ ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @PPREFREFLEXIVE } @PPPERCOLATEANT. PPav --> Pav: ^=! (^ PTYPE)=c nosem (^ PFORM)=c av (^ CHECK _PREPEXISTS)=+ "{ ~(^ PRON-TYPE) | (^ PRON-TYPE) " (^ CASE)=obl" }" "Cannot use the ordinary OBJCASE template here, since the nominal is not an OBJ but unified with the PP structure." @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); ({ NOM: ^=! @COMPLETECHECKFEATS "{ ~(! PRON-TYPE)=refl | (! PRON-TYPE)=c refl (^ CHECK _REFL)=c +}" { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @PPREFREFLEXIVE } @PPPERCOLATEANT | CPnom: ^=! (! TOPCP)=- (^ CHECK _MOVED-OBJ)=- | VP': ^=! "{ (! SUBJ PRED)='pro' (! SUBJ PRON-TYPE)=null }""Possible control by matrix SUBJ, hence optional" (! CHECK _TOPVP)=- (^ CHECK _MOVED-OBJ)=- }). PPint --> P: ^=! (^ PTYPE)=c sem @OBJCASE @(COMPLETE (^ OBJ CHECK _PREPEXISTS)) @(COMPLETE (^ OBJ CHECK _P-SELFORM)) @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); IntNOM: (^ OBJ)=! ~(! CHECK _P-SELFORM). PPavint --> Pav: ^=! (^ PTYPE)=c nosem (^ PFORM)=c av (^ CHECK _PREPEXISTS)=+ "{ ~(^ PRON-TYPE) | (^ PRON-TYPE) " (^ CASE)=obl" }" "Cannot use the ordinary OBJCASE template here, since the nominal is not an OBJ but unified with the PP structure." @(COMPLETE (^ PSEM)) @(COMPLETE (^ PTYPE)); IntNOM: ^=!. "Special OBJ phrase for PPpred:" QuantPnoref --> ART NP: ^=! (! CHECK _PREDICATIVE)=+ @(COMPLETENOMFEATS). "Clock expressions - experimental!" "PP-TIME is a preposition phrase that can only occur in clock expressions. It is none-recursive." PPclk --> (Nclk) TIME-MOD: (^ SPEC)=! @MRS-MINUTEMEASURE; P'clk: ^=!. "The disjunction category for the specifiers that can precede the head of PP-TIME." TIME-MOD = { QuantPmin: { (! PRED FN)=c minutt | (! PRED FN)=c sekund | (! PRED FN)=c pro } | QUART | N: { (! PRED FN)=c minutt | (! PRED FN)=c sekund } m::!=%OBJECT @(MRS-COVQUANT _få_q 3 pl) }. CLOCK = { PPclk | HOURP": (! CHECK _CLKEXPR)=c +_" }. P'clk --> Pclk: ^=!; { (HOUREXP: (^ OBJ)=!) |e: (^ OBJ PRED)='pro' m::(^ OBJ)=%PREP @MRS-EMPTYHOUR}. HOURP --> (ADVPdegnum: ! $ (^ ADJUNCT) "" @MRS-DEGADVclockSYNT "") (Nclk) HOUREXP (PP: @ADJUNCTPP (! OBJ NTYPE NSEM TIME TEMPNOUN)=c +). HALF' --> HALF: ^=!; { HOUR': (^ OBJ)=! | e: (^ OBJ PRED)='pro' m::(^ OBJ)=%PREP @MRS-EMPTYHOUR}. HOUR' --> { HOUR | HOURdig }. HOUREXP = { HOUR' | HALF' }. QuantPmin --> { { Q: ^=! (^ CHECK _PREDET)=+ | NUMdig: ^=! (^ CHECK _PREDET)=+ | NUMP: (^ SPEC NUMBER)=! @LITNUM (^ CHECK _PREDET)=+ } NP: ~(^ DEF)=+ |{ NUMdig: ^=! (^ PRED)='pro' "" @(MRS-OBJECTGVN _minutt_n)"" | NUMP: (^ PRED)='pro' (^ SPEC NUMBER)=! @LITNUM ""@(MRS-OBJECTGVN _minutt_n)""}}. "Parentheticals - experimental version:" ParP --> COMMA PP: ^=!; COMMA. "Coordination:" "We comment out the original coord. rule, and use a simpler one underneath, for the sake of the MRS analysis." "NOMcoord --> { NOMsmpl: @NOMCONJUNCT" """@MRS-LEFTCONJ"""";" "([COMMA NOMsmpl: @NOMCONJUNCT]+)" "If there are two or more initial conjuncts separated by commas, they may not themselves be coordinate structures. This is to reduce the number of alternative analyses - linguistically it would be possible." "| NOMcoord: @NOMCONJUNCT; COMMA }" "If the first conjunct is itself a coordinate structure, then end it with a comma." "CONJ: !=^ s::*=s::M* s::M*=s::^ @(COMPLETE (^ COORD-FORM)); NOM: @NOMCONJUNCT" """@MRS-RIGHTCONJ""""." "The last conjunct may be simple or a coordinate structure. Thus long coordinate structures with repeated conjunctions will always be right-branching, unless commas indicate a left-branching structure: 'Per og Kari og hesten' is right-branching, while 'Per og Kari, og hesten' is left-branching." NOMcoord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) NOMsmpl: @NOMCONJUNCT { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @COORDREFREFLEXIVE } @COMPLETECHECKFEATS ""@MRS-LEFTNOMCONJ""; { COMMA: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma (^ NUM)=pl ""@MRS-COMMACONJ""; NOMcoord: @NOMCONJUNCT { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @COORDREFREFLEXIVE } ""@MRS-RIGHTNOMCONJ"" | (COMMA: @(OT-MARK Mark3)) CONJ: !=^ @(COMPLETE (^ COORD-FORM)); NOM: @NOMCONJUNCT { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @COORDREFREFLEXIVE } @COMPLETECHECKFEATS ""@MRS-RIGHTNOMCONJ""}. "NOMcoord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) NOMsmpl: @NOMCONJUNCT { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @COORDREFREFLEXIVE } @COMPLETECHECKFEATS @MRS-LEFTNOMCONJ; { (COMMA)" " CONJ: !=^ @(COMPLETE (^ COORD-FORM)) | COMMA: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma (^ NUM)=pl @MRS-COMMACONJ } NOM: @NOMCONJUNCT { ~(! PRON-TYPE)=refrefl | (! PRON-TYPE)=c refrefl @COORDREFREFLEXIVE } @COMPLETECHECKFEATS @MRS-RIGHTNOMCONJ." NOMcoordgen --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) REFPgen: @NOMCONJUNCT @COMPLETECHECKFEATS (^ CASE)=gen ""@MRS-LEFTNOMCONJ""; { COMMA: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma (^ NUM)=pl ""@MRS-COMMACONJ""; NOMcoordgen: @NOMCONJUNCT ""@MRS-RIGHTNOMCONJ"" | "(COMMA: @(OT-MARK Mark3))" CONJ: !=^ @(COMPLETE (^ COORD-FORM)); NOMgen: @NOMCONJUNCT @COMPLETECHECKFEATS ""@MRS-RIGHTNOMCONJ""}. NPcoord --> NP: @NPCONJUNCT ""@MRS-LEFTNPCONJ""; { COMMA: !=^ @PUSHUP @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma @DEFAULTSING ""@MRS-COMMACONJ""; NPcoord: @NPCONJUNCT ""@MRS-RIGHTNPCONJ"" | "(COMMA: @(OT-MARK Mark3))" CONJnp: !=^ @DEFAULTSING @PUSHUP @(COMPLETE (^ COORD-FORM)); NP: @NPCONJUNCT ""@MRS-RIGHTNPCONJ""}. NPcoordgen --> NPgen: @NPCONJUNCT @COMPLETECHECKFEATS (^ CASE)=gen ""@MRS-LEFTNOMCONJ""; { COMMA: !=^ @PUSHUP @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma @DEFAULTSING ""@MRS-COMMACONJ""; NPcoordgen: @NPCONJUNCT ""@MRS-RIGHTNOMCONJ"" | "(COMMA: @(OT-MARK Mark3))" CONJnp: !=^ @DEFAULTSING @PUSHUP @(COMPLETE (^ COORD-FORM)); NPgen: @NPCONJUNCT @COMPLETECHECKFEATS ""@MRS-RIGHTNOMCONJ""}. Ncoord --> N: @NCONJUNCT @MRS-LEFTNPCONJ; { COMMA: !=^ @PUSHUP @DEFAULTSING @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma @MRS-COMMACONJ; Ncoord: @NCONJUNCT @MRS-RIGHTNPCONJ | CONJnp: !=^ @DEFAULTSING @PUSHUP @(COMPLETE (^ COORD-FORM)); N: @NCONJUNCT @MRS-RIGHTNPCONJ}. PPcoord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) PP: @PPCONJUNCT ""@MRS-LEFTCONJ""; { COMMA: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp""; PPcoord: @PPCONJUNCT ""@MRS-RIGHTCONJ"" | (COMMA) CONJev: !=^ @(COMPLETE (^ COORD-FORM)); PPCMPL: @PPCONJUNCT ""@MRS-RIGHTCONJ""}. PPADVcoord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) (ADVPs: ! $ (^ ADJUNCT) (! CHECK _CONJUNCT)=+ ""@MRS-PPcoordLSADVSYNTAX"" (^ CHECK _ROOT)=c +) PPorADV: @PPCONJUNCT ""@MRS-LEFTCONJ""; { COMMA: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp""; (ADVPs: ! $ (^ ADJUNCT) (! CHECK _CONJUNCT)=+ ""@MRS-PPcoordRSADVSYNTAX"" (^ CHECK _ROOT)=c +) PPADVcoord: @PPCONJUNCT ""@MRS-RIGHTCONJ"" | (COMMA) CONJev: !=^ @(COMPLETE (^ COORD-FORM)); (ADVPs: ! $ (^ ADJUNCT) (! CHECK _CONJUNCT)=+ ""@MRS-PPcoordRSADVSYNTAX"" "(^ CHECK _ROOT)=c +") PPADVCMPL2: @PPCONJUNCT ""@MRS-RIGHTCONJ""}. VPcoord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) VPX: @VPCONJUNCT ""@MRS-LEFTCONJ""; { COMMA: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp""; VPcoord: @VPCONJUNCT ""@MRS-RIGHTCONJ"" | (COMMA) CONJev: !=^ @(COMPLETE (^ COORD-FORM)); VPX: @VPCONJUNCT ""@MRS-RIGHTCONJ""}. VPfincoord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) VPXfin: @VPCONJUNCT ""@MRS-LEFTCONJ""; { COMMA: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp""; VPfincoord: @VPCONJUNCT ""@MRS-RIGHTCONJ"" | (COMMA) CONJev: !=^ @(COMPLETE (^ COORD-FORM)); VPXfin: @VPCONJUNCT ""@MRS-RIGHTCONJ""}. IPcoord --> "(CONJcorr: (m::^ _CONJREL)=(m::*_CONJREL))" "Part of first IP!" IPX: @IPCONJUNCT ~(! STMT-TYPE)=int (^ COORD-FORM)=(! COORD-FORM) (^ CHECK)=(! CHECK) (m::^ _CONJREL)=(m::! _CONJREL) "For 'enten' and 'både' as [spec, IP]" ""@MRS-LEFTIPCONJ""; { ({ COMMA | HYPHEN }) CONJip: !=^ "" @MRS-DIRECTPRPSTN (m::^ INDEX)=(m::^ RELS_EL ARG0)"" @(COMPLETE (^ COORD-FORM)) | { COMMA: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp @MRS-DIRECTPRPSTN (m::^ INDEX)=(m::^ RELS_EL ARG0)"" | HYPHEN: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=hyphen ""@MRS-COMMACONJpp @MRS-DIRECTPRPSTN (m::^ INDEX)=(m::^ RELS_EL ARG0)"" } } { IPX: @IPCONJUNCT "{ ~(! OBJ)=(! TOPIC) (^ OBJ)=(! OBJ) }" "Kills performance!!" ~(! STMT-TYPE)=int ""@MRS-RIGHTIPCONJ"" | IPcoord: @IPCONJUNCT ""@MRS-RIGHTIPCONJ"" | IPcoordgap: @IPCONJUNCT ""@MRS-RIGHTIPCONJ"" }. IPcoordgap --> "(CONJcorr: (m::^ _CONJREL)=(m::*_CONJREL))" "Part of first IP!" IPX: @IPCONJUNCT ~(! STMT-TYPE)=int (! PRED FN)=c være (! PREDLINK ATYPE) (^ TNS-ASP)=(! TNS-ASP) (^ VFORM)=(! VFORM) (^ COORD-FORM)=(! COORD-FORM) (^ CHECK)=(! CHECK) (m::^ _CONJREL)=(m::! _CONJREL) "For 'enten' and 'både' as [spec, IP]" ""@MRS-LEFTIPCONJ""; (COMMA) CONJip: !=^ "" @MRS-DIRECTPRPSTN (m::^ INDEX)=(m::^ RELS_EL ARG0)"" @(COMPLETE (^ COORD-FORM)); IPgap: @IPCONJUNCT (^ TNS-ASP)=(! TNS-ASP) (^ VFORM)=(! VFORM) ~(! STMT-TYPE)=int ""@MRS-RIGHTIPCONJ"". I'coord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) I'X: @I'CONJUNCT (^ TNS-ASP MOOD)=(! TNS-ASP MOOD) (m::^ _MSGQEQ)=(m::! _MSGQEQ) (m::^ TOP)=(m::! TOP) ""@MRS-LEFTCONJ @MRS-LEFTADVSCOPEPATCH""; { COMMA: !=^ @PUSHUP @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp""; | (COMMA) CONJev: !=^ @PUSHUP @(COMPLETE (^ COORD-FORM))} { I'X: @I'CONJUNCT (^ TNS-ASP)=(! TNS-ASP) (m::^ _MSGQEQ)=(m::! _MSGQEQ) (m::^ TOP)=(m::! TOP) ""@MRS-RIGHTCONJ @MRS-RIGHTADVSCOPEPATCH"" | I'coord: @I'CONJUNCT (^ TNS-ASP)=(! TNS-ASP) (m::^ _MSGQEQ)=(m::! _MSGQEQ) (m::^ TOP)=(m::! TOP) ""@MRS-RIGHTCONJ""}. Ssubcoord --> "(CONJcorr: (m::^ _CONJREL)=(m::*_CONJREL))" "Part of first IP!" Ssub: @IPCONJUNCT (^ COORD-FORM)=(! COORD-FORM) (^ CHECK)=(! CHECK) (m::^ _CONJREL)=(m::! _CONJREL) "For 'enten' and 'både' as [spec, IP]" ""@MRS-LEFTIPCONJ""; { COMMA: !=^ "@PUSHUP" @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp @MRS-DIRECTPRPSTN (m::^ INDEX)=(m::^ RELS_EL ARG0)""; Ssubcoord: @IPCONJUNCT ""@MRS-RIGHTIPCONJ"" | (COMMA) CONJev: !=^ "@PUSHUP" "" @MRS-DIRECTPRPSTN (m::^ INDEX)=(m::^ RELS_EL ARG0)"" @(COMPLETE (^ COORD-FORM)); { Ssub: @IPCONJUNCT ""@MRS-RIGHTIPCONJ"" | Ssubcoord: @IPCONJUNCT ""@MRS-RIGHTIPCONJ"" }}. WhPcoord --> WhP: @IPCONJUNCT (^ COORD-FORM)=(! COORD-FORM) (^ CHECK)=(! CHECK) ""@MRS-LEFTIPCONJ""; { COMMA: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp @MRS-DIRECTINT (m::^ INDEX)=(m::^ RELS_EL ARG0)""; WhPcoord: @IPCONJUNCT ""@MRS-RIGHTIPCONJ"" | (COMMA) CONJev: !=^ "" @MRS-DIRECTINT (m::^ INDEX)=(m::^ RELS_EL ARG0)"" @(COMPLETE (^ COORD-FORM)); { WhP: @IPCONJUNCT ""@MRS-RIGHTIPCONJ"" | WhPcoord: @IPCONJUNCT ""@MRS-RIGHTIPCONJ"" }}. VRBfincoord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) VRBfin: @LEFTVfinCONJUNCT ""@MRS-LEFTCONJ""; { COMMA: !=^ @PUSHUP @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp""; VRBfincoord: @RIGHTVfinCONJUNCT ""@MRS-RIGHTCONJ"" | CONJev: !=^ @PUSHUP @(COMPLETE (^ COORD-FORM)); { VRBfin: @RIGHTVfinCONJUNCT ""@MRS-RIGHTCONJ"" | Vfincoord: @RIGHTVfinCONJUNCT ""@MRS-RIGHTCONJ"" }}. VRBcoord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) VRB: @VCONJUNCT ""@MRS-LEFTCONJ""; { COMMA: !=^ @PUSHUP @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp""; VRBcoord: @VCONJUNCT ""@MRS-RIGHTCONJ"" | CONJev: !=^ @PUSHUP @(COMPLETE (^ COORD-FORM)); VRB: @VCONJUNCT ""@MRS-RIGHTCONJ""}. APcoord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) AP: @APCONJUNCT ""@MRS-LEFTAPCONJ""; { COMMA: !=^ @(COMPLETE (^ COORD-FORM)) (^ COORD-FORM)=comma ""@MRS-COMMACONJpp""; APcoord: @APCONJUNCT ""@MRS-RIGHTAPCONJcoord"" |(COMMA) CONJev: !=^ @(COMPLETE (^ COORD-FORM)); { AP: @APCONJUNCT ""@MRS-RIGHTAPCONJ"" | APcoord: @APCONJUNCT ""@MRS-RIGHTAPCONJcoord"" }}. "CMPNDcoord --> (CONJcorr: (m::^ _CONJREL)=(m::* _CONJREL)) N-: ! $s ^ ~(! NUM)=pl ~(! DEF)=+ @MRS-LEFTCMPNDCONJ; CONJ: !=^ @(COMPLETE (^ COORD-FORM)); N: ! $s ^ @REFERENTIAL? @MRS-RIGHTCMPNDCONJ." CMPNDcoord --> { (CONJcorr: (m::(^ FST-EL) _CONJREL)=(m::* _CONJREL)) N-: ! $s (^ FST-EL) ~(! NUM)=pl ~(! DEF)=+ @MRS-LEFTCMPNDCONJ; CONJ: (^ FST-EL)=! @(COMPLETE (^ COORD-FORM)); N: ^=! "@REFERENTIAL?" @MRS-RIGHTCMPNDCONJ | (CONJcorr: (m::(^ FST-EL) _CONJREL)=(m::* _CONJREL)) N: ! $s ^ @NCONJUNCT (! FST-EL) @MRS-LEFTTAILCMPNDCONJ; CONJ: ^=! @(COMPLETE (^ COORD-FORM)); cmpN: ! $s ^ @NCONJUNCT @REFERENTIAL? @MRS-RIGHTTAILCMPNDCONJ }. NOM' --> ADVfoc: ! $ (^ ADJUNCT) ""@MRS-FOCADVSYNT""; NOM1. "Fragment parsing:" FRAGMENTSTOP --> FRAG: ^=! (m::^ TOP)=(m::^ RELS_EL LBL) (m::^ INDEX type)=event @(RELSLIST1 (m::! RELS_EL)) (m::^ H-CONS)=(m::(! FIRST) H-CONS). "To make sure that there are H-CONS on the top level, for Paul's union program." " FRAG --> { IP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |I': (^ FIRST) = ! { (! SUBJ PRED)='DUMMY' @(OT-MARK Mark3)} @(OT-MARK Fragment) @MRS-FRAGMENT |S: (^ FIRST) = ! { (! SUBJ PRED)='DUMMY' @(OT-MARK Mark3)} @(OT-MARK Fragment) @MRS-FRAGMENT" " |VP: (^ FIRST) = ! (! SUBJ PRED)='DUMMY' { (! OBJ PRED)='DUMMY'} { (! OBJth PRED)='DUMMY' (! OBJth CHECK _PREPEXISTS)=+} { (! OBL PRED)='DUMMY'} { (! OBJben PRED)='DUMMY'} { (! XCOMP PRED)='DUMMY'} { (! COMP PRED)='DUMMY'} { (! PREDLINK PRED)='DUMMY' (! PREDLINK ATYPE)=predicative} @(OT-MARK Fragment) @MRS-FRAGMENT" " |VPfin: (^ FIRST) = ! (! SUBJ PRED)='DUMMY' { (! OBJ PRED)='DUMMY'} { (! OBJth PRED)='DUMMY' (! OBJth CHECK _PREPEXISTS)=+} { (! OBL PRED)='DUMMY'} { (! OBJben PRED)='DUMMY'} { (! XCOMP PRED)='DUMMY'} { (! COMP PRED)='DUMMY'} { (! PREDLINK PRED)='DUMMY' (! PREDLINK ATYPE)=predicative} @(OT-MARK Fragment) @MRS-FRAGMENT |VP': (^ FIRST) = ! (! SUBJ PRED)='DUMMY' @(OT-MARK Fragment) @MRS-FRAGMENT" " |PP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |AP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT" " |ADVP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVPloc: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |NOM: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |NOMgen: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |IntP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT" " |CPnom: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CPadv: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CPrel: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CPpol: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CPloc: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |WhP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT" " |PERIOD: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT period) @MRS-FRAGMENT |COMMA: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT comma) @MRS-FRAGMENT |EXCL-POINT: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT excl-point) @MRS-FRAGMENT" " |INT-MARK: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT int-mark) @MRS-FRAGMENT |HYPHEN: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT dash) @MRS-FRAGMENT |COLON: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT colon) @MRS-FRAGMENT |QUOTE: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT quote) @MRS-FRAGMENT |P: (^ FIRST) = ! (! OBJ PRED)='DUMMY' @(OT-MARK Fragment) @MRS-FRAGMENT" " |Ppost: (^ FIRST) = ! (! OBJ PRED)='DUMMY' @(OT-MARK Fragment) @MRS-FRAGMENT |PRONint: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |POSSint: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |Dint: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVint: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT" " |ADVPs: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVdeg: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVdegloc: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVdegnum: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVneg: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVtmp: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT" " |ADVloc: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVatt: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVcmt: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CONJ: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CONJdisc: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT" " |CONJcorr: (^ FIRST) = ! { (! COORD-FORM)=og | (! COORD-FORM)=eller } @(OT-MARK Fragment) @MRS-FRAGMENT |CONJcomp: (^ FIRST) = ! @(OT-MARK Fragment) (! OBJ PRED)='DUMMY' (! DEGREE)=comparative @MRS-FRAGMENT |COMPpur: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |Cnom: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |Cadv: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT" " |Cpol: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |Crel: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |PARTinf: (^ FIRST) = ! (! VFORM)=inf @(OT-MARK Fragment) @MRS-FRAGMENT |PAR: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |QTENOM: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT} (FRAG: (^ REST)=! @MRS-NEWFRAGMENT)." FRAG --> { IP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |I': (^ FIRST) = ! { (! SUBJ PRED)='DUMMY' @(OT-MARK Mark3)} @(OT-MARK Fragment) @MRS-FRAGMENT |S: (^ FIRST) = ! { (! SUBJ PRED)='DUMMY' @(OT-MARK Mark3)} @(OT-MARK Fragment) @MRS-FRAGMENT |VP: (^ FIRST) = ! (! SUBJ PRED)='DUMMY' { (! OBJ PRED)='DUMMY'} { (! OBJth PRED)='DUMMY' (! OBJth CHECK _PREPEXISTS)=+} { (! OBL PRED)='DUMMY'} { (! OBJben PRED)='DUMMY'} { (! XCOMP PRED)='DUMMY'} { (! COMP PRED)='DUMMY'} { (! PREDLINK PRED)='DUMMY' (! PREDLINK ATYPE)=predicative} @(OT-MARK Fragment) @MRS-FRAGMENT |VPfin: (^ FIRST) = ! (! SUBJ PRED)='DUMMY' { (! OBJ PRED)='DUMMY'} { (! OBJth PRED)='DUMMY' (! OBJth CHECK _PREPEXISTS)=+} { (! OBL PRED)='DUMMY'} { (! OBJben PRED)='DUMMY'} { (! XCOMP PRED)='DUMMY'} { (! COMP PRED)='DUMMY'} { (! PREDLINK PRED)='DUMMY' (! PREDLINK ATYPE)=predicative} @(OT-MARK Fragment) @MRS-FRAGMENT |VP': (^ FIRST) = ! (! SUBJ PRED)='DUMMY' @(OT-MARK Fragment) @MRS-FRAGMENT |PP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |PPvbobj: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |AP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVPloc: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |NOM: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |NOMgen: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |IntP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CPnom: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CPadv: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CPrel: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CPpol: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CPloc: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |WhP: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |PERIOD: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT period) @MRS-FRAGMENT |COMMA: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT comma) @MRS-FRAGMENT |EXCL-POINT: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT excl-point) @MRS-FRAGMENT |INT-MARK: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT int-mark) @MRS-FRAGMENT |HYPHEN: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT dash) @MRS-FRAGMENT |COLON: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT colon) @MRS-FRAGMENT |QUOTE: (^ FIRST) = ! @(OT-MARK Fragment) @(MRS-PUNCT quote) @MRS-FRAGMENT |P: (^ FIRST) = ! (! OBJ PRED)='DUMMY' @(OT-MARK Fragment) @MRS-FRAGMENT |Ppost: (^ FIRST) = ! (! OBJ PRED)='DUMMY' @(OT-MARK Fragment) @MRS-FRAGMENT |PRONint: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |POSSint: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |Dint: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVint: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVPs: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVdeg: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVdegloc: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVdegnum: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVneg: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVtmp: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVloc: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVatt: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |ADVcmt: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CONJ: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CONJdisc: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |CONJcorr: (^ FIRST) = ! { (! COORD-FORM)=og | (! COORD-FORM)=eller } @(OT-MARK Fragment) @MRS-FRAGMENT |CONJcomp: (^ FIRST) = ! @(OT-MARK Fragment) (! OBJ PRED)='DUMMY' (! DEGREE)=comparative @MRS-FRAGMENT |COMPpur: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |Cnom: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |Cadv: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |Cpol: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |Crel: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |PARTinf: (^ FIRST) = ! (! VFORM)=inf @(OT-MARK Fragment) @MRS-FRAGMENT |PAREN: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT |QTENOM: (^ FIRST) = ! @(OT-MARK Fragment) @MRS-FRAGMENT} (FRAG: (^ REST)=! @MRS-NEWFRAGMENT). PAREN --> L-PAREN { IP: ^=! | NOM: ^=! | PP: ^=! } R-PAREN. PARpp --> L-PAREN PP: ^=!; R-PAREN. QTENOM --> QUOTE NOM2: ^=! (^ CHECK _QUOTED)=+; QUOTE. "Meta-|category expansions:" NOM = { NOMsmpl: @NEWCOMPLETENOMFEATS|NOMcoord: @NEWCOMPLETENOMFEATS|NOM': @NEWCOMPLETENOMFEATS|QTENOM: @NEWCOMPLETENOMFEATS }. NOMnopron = { NOMsmplnopron: @NEWCOMPLETENOMFEATS|NOMcoord: @NEWCOMPLETENOMFEATS|NOM': @NEWCOMPLETENOMFEATS|QTENOM: @NEWCOMPLETENOMFEATS }. NOM1 = { NOMsmpl|NOMcoord|QTENOM }. NOM2 = { NOMsmpl|NOMcoord|NOM'}. NOMgen = { REFPgen|NOMcoordgen }. NOMsmpl = { PRONP|DescP|REFP|YEARP|NUMBP|WhPfree }. "We distinguish between NOM and NOMsmpl to avoid too much recursive coordination: only NOM covers coordinate structures." NOMsmplnopron = { DescP|REFP|YEARP|NUMBP|WhPfree }. "REFP = { MeasP|ALLQP|ALLQCOMP|PROPP|AppP|TofD }." REFP = { MeasP|ALLQP|DP|POSSP|QuantP|DAP|ORDP|NP|PROPP|AppP|TofD|NPssn }."This rather than ALLQCOMP to avoid NPcoord" "REFPgen = { MeasPgen|ALLQPgen|ALLQCOMPgen|PROPPgen }." REFPgen = { MeasPgen|ALLQPgen|DPgen|POSSPgen|QuantPgen|DAPgen|ORDPgen|NPgen|PROPPgen }. ALLQCOMP = { DP|DCOMP }. ALLQCOMPgen = { DPgen|DCOMPgen }. DCOMP = { POSSP|POSSCOMP }. DCOMPgen = { POSSPgen|POSSCOMPgen }. POSSCOMP = { QuantP|QUANTCOMP }. POSSCOMPgen = { QuantPgen|QUANTCOMPgen }. QUANTCOMP = { DAP | DAPCOMP}. QUANTCOMPgen = { DAPgen | DAPCOMPgen}. ORDN = { ORDnum | ORDdig | ORDinterv }. DAPCOMP = { ORDP | NPCMPL}. DAPCOMPgen = { ORDPgen | NPCMPLgen}. NPCMPL = { NP | NPcoord }. NPCMPLgen = { NPgen | NPcoordgen }. NCMPL = { N: @COMPLETENOUNFEATS | Ncoord: @COMPLETENOUNFEATS | CMPNDcoord }. QUANTF = { QP|ART }. DIGF = { NUMdigP|NUMinterv }. NUMEXP = {NUM1P|NUM11P|NUM10P|NUM21P|1conj10P|NUM10P|NUM100P|NUM1000P|NUMmillionP|NUMmilliardP }. ALLQPARTCOMP = { DP | POSSP | QuantP: ~(! SPEC QUANT) ~(! SPEC AQUANT) | DAP | NP: (! CHECK _DEF-MORPH)=c + | NPcoord }. ALLQPARTCOMPgen = { DPgen | POSSPgen | QuantPgen: ~(! SPEC QUANT) ~(! SPEC AQUANT) | DAPgen | NPCMPLgen: (! CHECK _DEF-MORPH)=c + }. DEGP = {ALLQP|DP|QuantP}. APPNOM1 = {DP | NP | POSSP}. "Constituents in appositions; see rule AppP." APPNOM2 = {DP | NP | POSSP | PAR}. SSN = {DP: (! NTYPE NSEM SEASON)=c + (! DEF)=c + | NP: (! NTYPE NSEM SEASON)=c + (! DEF)=c + }. IntNOM = {IntNOMcoord|IntNOMsmpl}. IntNOMsmpl = {PRONint|DPint|NPint|QuantPint|POSSPgenint }. IntP = {IntNOM|IntADV|APint}. IntP-ADV = { IntNOM|APint}. IntADV = {IntADVcoord|ADVPint}. COMPFN = { COMP|XCOMP }. TERMFN = { OBJ|OBJben|OBJth|OBL-AG|OBL-BEN|PREDLINK }. TERMFN-obj = { OBJth|OBL-AG|OBL-BEN }. VPCMPL = { VP|VP2|VPcoord }. VPfinCMPL = { VPfin|VP2fin|VPfincoord }. VPX = { VP|VP2 }. VPXfin = {VPfin|VP2fin }. VP2CMPL = { VP2|VPcoord }. VP2finCMPL = { VP2fin|VPfincoord }. PPCMPL = { PP|PPprd|PPppobj|PPvbobj|PPcoord }. PPADVCMPL = { PP|PPprd|PPppobj|PPvbobj|PPsom|PPADVcoord }. PPADVCMPL2 = { PP |PPppobj |ADVPloc |AP:(! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) |ADVP |PPADVcoord }. PPorADV = { PP |PPprd |PPppobj |PPsom |ADVPloc |AP:(! CHECK _ADVERBIAL)=c + (! NUM)=c sg @(IF (! CHECK _DEG-MORPH)=c positive (! GEND NEUT)=c +) |ADVP }. VfinCMPL = { Vfin: @COMPLETEVERBFEATS|VRBfincoord: @COMPLETEVERBFEATS }. VCMPL = { V: @COMPLETEVERBFEATS|VRBcoord: @COMPLETEVERBFEATS }. "IPCMPL = { IP|IPcoord }." IPCMPL = { IP|IPimprs|IPcoord|IPcoordgap }. IPX = { IP | IPimprs }. I'CMPL = { I'|I'cop|I'aux|I'coord }. I'X = { I'|I'imprs|I'cop|I'aux }. WhPCMPL = { WhP|WhPcoord }. SsubCMPL = { Ssub|Ssubimprs|Ssubcoord }. APCMPL = { AP+|APcoord }. PPnosem = { PPtil | PPav }. "Possibly superfluous: We have replaced all occurrences of PPnosem(?)" PAR = {ADVpar | ParP}. VRB = { V|Vcop|Vaux|Vimprs}. VRBfin = { Vfin|Vcopfin|Vauxfin|Vimprsfin}. V2 = { Vcop|Vaux|Vimprs}. V2fin = { Vcopfin|Vauxfin|Vimprsfin}. VorVptcmp = { V|Vptcmp }. CONJip = {CONJev | CONJspecial }. "Experimental" PPsel = {PPsel1 | PPsel2}. Psel1orPsel2 = {Psel1 | Psel2}. "Coordination macro:" COORD (CAT) = CAT: ! $s ^ ""@MRS-LEFTCONJ""; CONJ: ^=!; CAT: ! $s ^ ""@MRS-RIGHTCONJ"". "Sublexical rules:" PROP --> { PROP_BASE "~(^ CASE)=gen" "Superfluous, since the number of daughters differs between PROP and PROPgen. Furthermore, the equation is incompatible with the present analysis of complex names like 'Per Hansens', in which the head 'Per' gets marked as genitive." N_SUFF_BASE N_SUFF_BASE (NUMLIT_SUFF_BASE) (N_SUFF_BASE) (N_SUFF_BASE) | PROPcmp1: !$s(^ FST-EL) "" @MRS-FSTEL""; (JUNC) Ncmp2 |PROP MWE_SUFF_BASE} . PROPgen --> { PROP_BASE: (^ CASE)=c gen; N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE (N_SUFF_BASE) (N_SUFF_BASE) |PROPgen: (^ CASE)=c gen; MWE_SUFF_BASE} . N --> { N_BASE: ~(^ CASE)=gen "" m::M*=m::* ""; N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE | CMP1: !$s(^ FST-EL) "" @MRS-FSTEL""; [(JUNC) (HYPHEN) CMP1: !$s(^ FST-EL) @(OT-MARK Mark7) "" @MRS-FSTELCOMMON""]* (JUNC) (HYPHEN) Ncmp2 |YEARcmp1: @(CONCAT (! PRED FN) `- årstall %FN) (^ PRED)='%FN' (^ NTYPE NSEM COMMON)=count (^ NTYPE NSYN)=common (^ NUM)=sg (^ PERS)=3 (^ DEF)=+ (m::! RELS_EL relation FN)=c yofc "" @(MRS-YEARPERIOD (m::! RELS_EL CARG))"" (m::! _XCLUDERELS)=+; HYPHEN Ncmp2: { (! PRED FN)=c tall (! NUM)=c sg |(! PRED FN)=c år (! NUM)=c pl } (! CHECK _DEF-MORPH)=c + (m::! _XCLUDERELS)=+ |{ PROP: !$s(^ FST-EL) "" @MRS-FSTEL"" | PROPgen: !$s(^ FST-EL) "" @MRS-FSTEL"" } HYPHEN N |N MWE_SUFF_BASE} . Ngen --> { N_BASE: (^ CASE)=c gen "" m::M*=m::* ""; N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE | CMP1: !$s(^ FST-EL) "" @MRS-FSTEL""; [(JUNC) (HYPHEN) CMP1: !$s(^ FST-EL) "" @MRS-FSTEL""]* (JUNC) (HYPHEN) Ncmp2gen |Ngen: (^ CASE)=c gen; MWE_SUFF_BASE} . CMP1 = { Ncmp1 | Vcmp1 | Acmp1 | Pcmp1 | propcmp1}. N- --> Ncmp0 (JUNC) HYPHEN. cmpN --> HYPHEN N. Ncmp0 --> N_BASE: "" m::M*=m::* ; CMP1_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE: (^ NUM)=c sg; (N_SUFF_BASE). Ncmp1 --> N_BASE: "" m::M*=m::* @MRS-FSTNOMEL ""; CMP1_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE: (^ NUM)=c sg; (N_SUFF_BASE). PROPcmp1 --> PROP_BASE: "" m::M*=m::*""; CMP1_SUFF_BASE N_SUFF_BASE N_SUFF_BASE (N_SUFF_BASE) (N_SUFF_BASE). propcmp1 --> PROP_BASE: "" m::M*=m::*""; CMP1_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE PROP_SUFF_BASE. JUNC --> JUNC_BASE JUNC_SUFF_BASE. Ncmp2 --> N_BASE: ~(^ CASE)=gen "" m::M*=m::* ""; CMP2_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE (N_SUFF_BASE). Ncmp2gen --> N_BASE: (^CASE)=c gen "" m::M*=m::* ""; CMP2_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE (N_SUFF_BASE). Vcmp1 --> V_BASE: ^=! (! SUBJ PRED)='DUMMY' { (! OBJ PRED)='DUMMY'} { (! OBJben PRED)='DUMMY'} { (! XCOMP PRED)='DUMMY'} { (! COMP PRED)='DUMMY'} { (! PREDLINK PRED)='DUMMY'} "" m::M*=m::* ""; CMP1_SUFF_BASE V_SUFF_BASE V_SUFF_BASE. Pcmp1 --> P_BASE: ^=!; CMP1_SUFF_BASE P_SUFF_BASE. V --> V_BASE: ~(^ VFORM)=fin "" m::M*=m::* ""; V_SUFF_BASE V_SUFF_BASE ({ V_SUFF_BASE | N_SUFF_BASE (N_SUFF_BASE: (^ CHECK _SUPINE)=-; "Verbs with this many suffixes are inflected participles" (N_SUFF_BASE: (^ CHECK _SUPINE)=-))}). Vfin --> V_BASE: (^ VFORM)=c fin "" m::M*=m::* ""; V_SUFF_BASE V_SUFF_BASE (V_SUFF_BASE). Vasp --> Vasp_BASE: "" m::M*=m::* ""; V_SUFF_BASE V_SUFF_BASE ({ V_SUFF_BASE | N_SUFF_BASE (N_SUFF_BASE: (^ CHECK _SUPINE)=-) (N_SUFF_BASE: (^ CHECK _SUPINE)=-)}). Vptcmp --> CMP1: (^ FST-EL)=! "" @MRS-FSTEL""; (JUNC) (HYPHEN) Vcmp2. Vcmp2 --> V_BASE: "" m::M*=m::* ""; CMP2_SUFF_BASE V_SUFF_BASE V_SUFF_BASE N_SUFF_BASE N_SUFF_BASE: (^ CHECK _SUPINE)=- ; (N_SUFF_BASE: (^ CHECK _SUPINE)=-). ART --> ART_BASE ART_SUFF_BASE ART_SUFF_BASE N_SUFF_BASE. A --> { A_BASE: (^ CHECK _DEF-MORPH)=(^ DEF); A_SUFF_BASE A_SUFF_BASE N_SUFF_BASE N_SUFF_BASE (N_SUFF_BASE) | A_BASE: (^ CHECK _DEF-MORPH)=(^ DEF); A_SUFF_BASE A_SUFF_BASE: (^ DEGREE)=c superlative; N_SUFF_BASE N_SUFF_BASE: ^\CHECK\DEF=!\CHECK\DEF (m::! _XCLUDERELS)=+; N_SUFF_BASE N_SUFF_BASE "This is a temporary patch because of inconsistent morphology for indefinite superlatives." | CMP1: !$s(^ FST-EL) "" @MRS-FSTEL""; [(JUNC) (HYPHEN) CMP1: !$s(^ FST-EL) "" @MRS-FSTEL""]* (JUNC) (HYPHEN) Acmp2 | V_BASE: (^ CHECK _DEF-MORPH)=(^ DEF) (^ CHECK _DEG-MORPH)=positive; V_SUFF_BASE: { (^ VFORM)=c pastpart (^ CHECK _SUPINE)=- { (^ CHECK _AUX-SELECT)=c be | ~(^ CHECK _AUX-SELECT)=be (^ PASSIVE)=+ (^ PASS-TYPE)=ptc } (^ ATYPE)=attributive | (^ VFORM)=c prespart { (^ NUM)=sg | (^ NUM)=pl } { (^ OBJ PRED)='pro' (m::^ RELS_EL ARG2 type)=non_expl-ind } "" (m::^ RELS_EL ARG0 PROG)=+ { (m::^ RELS_EL ARG0 PERF)=c + | (m::^ RELS_EL ARG0 PERF)=- }""}; V_SUFF_BASE N_SUFF_BASE (N_SUFF_BASE) (N_SUFF_BASE) | A MWE_SUFF_BASE}. Acmp1 --> A_BASE: (^ CHECK _ADVERBIAL)=-; CMP1_SUFF_BASE A_SUFF_BASE A_SUFF_BASE N_SUFF_BASE N_SUFF_BASE (N_SUFF_BASE). Acmp2 --> A_BASE: (^ CHECK _DEF-MORPH)=(^ DEF); CMP2_SUFF_BASE A_SUFF_BASE A_SUFF_BASE N_SUFF_BASE N_SUFF_BASE (N_SUFF_BASE). ADVs --> { ADVs_BASE ADV_SUFF_BASE |ADVs MWE_SUFF_BASE}. "MODADV --> MODADV_BASE ADV_SUFF_BASE." ADV --> { ADV_BASE A_SUFF_BASE A_SUFF_BASE N_SUFF_BASE N_SUFF_BASE (N_SUFF_BASE) |ADV MWE_SUFF_BASE}. ADVneg --> ADVneg MWE_SUFF_BASE. ADVloc --> ADVloc MWE_SUFF_BASE. ADVfoc --> ADVfoc MWE_SUFF_BASE. ADVtmp --> ADVtmp MWE_SUFF_BASE. Q --> { Q_BASE D_SUFF_BASE N_SUFF_BASE N_SUFF_BASE |Q MWE_SUFF_BASE }. "DA --> DA_BASE D_SUFF_BASE N_SUFF_BASE N_SUFF_BASE (N_SUFF_BASE)." ALLQ --> ALLQ_BASE: "" m::M*=m::* ""; D_SUFF_BASE N_SUFF_BASE N_SUFF_BASE. POSS --> POSS_BASE Pron_SUFF_BASE N_SUFF_BASE N_SUFF_BASE. POSSint --> POSSint MWE_SUFF_BASE. D --> { D_BASE D_SUFF_BASE N_SUFF_BASE N_SUFF_BASE |D MWE_SUFF_BASE }. NUM --> NUM_BASE NUM_SUFF_BASE NUM_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE. ORDnum --> ORDnum_BASE NUM_SUFF_BASE NUM_SUFF_BASE N_SUFF_BASE N_SUFF_BASE N_SUFF_BASE. DA --> DA MWE_SUFF_BASE. PRON --> PRON MWE_SUFF_BASE. NUMdig --> NUMdig_BASE: (^ SPEC NUMBER NUMBER-TYPE)=card; DIG_SUFF_BASE. ORDdig --> ORDdig_BASE DIG_SUFF_BASE NUM_SUFF_BASE. NUMitem --> NUMitem_BASE DIG_SUFF_BASE NUM_SUFF_BASE. YEAR --> YEAR_BASE DIG_SUFF_BASE. YEARcmp1 --> YEAR_BASE CMP1_SUFF_BASE DIG_SUFF_BASE. P --> { P_BASE P_SUFF_BASE |P MWE_SUFF_BASE}. Pvbobj --> Pvbobj MWE_SUFF_BASE. Psel1 --> Psel1 MWE_SUFF_BASE. Psel2 --> Psel2 MWE_SUFF_BASE. Ppost --> Ppost MWE_SUFF_BASE. CONJ --> { CONJ_BASE CONJ_SUFF_BASE CONJ_SUFF_BASE | CONJ MWE_SUFF_BASE }. CONJnp --> CONJnp MWE_SUFF_BASE. CONJev --> CONJev MWE_SUFF_BASE. CONJdisc --> CONJdisc MWE_SUFF_BASE. ADVdeg --> { ADVdeg_BASE ADV_SUFF_BASE | ADVdeg MWE_SUFF_BASE }. ADVdegloc --> { ADVdegloc_BASE ADV_SUFF_BASE | ADVdegloc MWE_SUFF_BASE }. ADVdegnum --> { ADVdegnum_BASE ADV_SUFF_BASE | ADVdegnum MWE_SUFF_BASE }. ADVcmt --> ADVcmt MWE_SUFF_BASE. ADVatt --> ADVatt MWE_SUFF_BASE. PRT --> PRT MWE_SUFF_BASE. COMPpur --> COMPpur MWE_SUFF_BASE. Cadv --> Cadv MWE_SUFF_BASE. ADVpar --> ADVpar MWE_SUFF_BASE. TTL --> TTL MWE_SUFF_BASE. NUM1 --> NUM1 MWE_SUFF_BASE. TOKEN --> TOKEN_BASE TOKEN_SUFF_BASE. PERIOD --> PERIOD_BASE Punct_SUFF_BASE SENT_SUFF_BASE. "COMMA --> COMMA_BASE Punct_SUFF_BASE COMMA_SUFF_BASE." INT-MARK --> INT-MARK_BASE Punct_SUFF_BASE SENT_SUFF_BASE. EXCL-POINT --> EXCL-POINT_BASE Punct_SUFF_BASE SENT_SUFF_BASE. ----