mrs := *top* & [ HOOK hook, RELS diff-list, HCONS diff-list ]. nom-obj := mrs & [ HOOK.INDEX index ]. psoa := mrs & [ HOOK.INDEX event ]. no-c-cont := mrs & [ RELS , HCONS ]. qeq := sort & [ HARG handle, LARG handle ]. semarg := *top* & [ INSTLOC string ]. handle := semarg. individual := semarg & [ SEM-AGR agr ]. index := individual. event-or-ref-index := individual. expl-ind := index. ref-ind := event-or-ref-index & index. conj-index := event-or-ref-index. event := event-or-ref-index. conj-ref-ind := conj-index & ref-ind. conj-event := conj-index & event. ; Basically, this paragraph splits semantics of adjectives and adverbs up in several groups. ; - no-degree: for verbs, adpositions, etc etc. ; - degree-undef-comp: for adverbs like 'mehr' ; - degree-undef-nocomp: for adverbs like 'morgen' ; - degree-def-comp: for adjectives and adverbs with degree comp (kleiner; tiefer) ; - degree-def-nocomp: for adjectives and adverbs with degree pos or super (klein, kleinst; tief, tiefst) ; The crucial thing is: both def-comp and undef-comp are daughters of event-comparative, so they can be identified as modifiable by ; an 'als' or 'wie' phrase, even though the degree might not be expressed explicitly in the semantics. event-comparative := event. event-no-degree := event. event-degree := event & [ SEM-DEGREE degree ]. event-degree-undef := event-degree & [ SEM-DEGREE degree-undef ]. event-degree-undef-nocomp := event-degree-undef. event-degree-undef-comp := event-degree-undef & event-comparative. event-degree-undef-so-or-proav := event-degree-undef. event-degree-undef-so := event-degree-undef-so-or-proav. event-degree-undef-proav := event-degree-undef-so-or-proav. event-degree-def := event-degree. event-degree-def-nocomp := event-degree-def & [ SEM-DEGREE degree-pos-super ]. event-degree-def-pos := event-degree-def & [ SEM-DEGREE degree-pos ]. event-degree-def-super := event-degree-def & [ SEM-DEGREE degree-super ]. event-degree-def-comp := event-degree-def & event-comparative & [ SEM-DEGREE degree-comp ]. hook := *top* & [ LTOP handle, INDEX individual, XARG individual ]. hook-conj := hook & [ L-ARG individual, R-ARG individual ]. predsort := sort. string := predsort. apposition := predsort. rel-clause := predsort. direct-speech := predsort. gen-mod := predsort. psp2adj := predsort. conj-asynd := predsort. robust-svp := predsort. robust-par := predsort. robust-oa := predsort. robust-app := predsort. relation := sort & [ PRED predsort, LBL handle, CFROM *top*, CTO *top* ]. relation-arg0 := relation & [ ARG0 individual ]. relation-arg1 := relation-arg0 & [ ARG1 semarg ]. relation-arg12 := relation-arg1 & [ ARG2 semarg ]. relation-arg123 := relation-arg12 & [ ARG3 semarg ]. relation-arg1234 := relation-arg123 & [ ARG4 semarg ]. relation-arg12345 := relation-arg1234 & [ ARG5 semarg ]. relation-noun := relation-arg0 & [ ARG0 ref-ind ]. relation-noun-arg1 := relation-noun & relation-arg1. relation-noun-arg12 := relation-noun-arg1 & relation-arg12. relation-noun-arg123 := relation-noun-arg12 & relation-arg123. relation-named := relation-noun & [ CARG *top* ]. relation-event := relation-arg0 & [ ARG0 event ]. relation-event-arg1 := relation-event & relation-arg1. relation-event-arg12 := relation-event-arg1 & relation-arg12. relation-event-arg123 := relation-event-arg12 & relation-arg123. relation-event-arg1234 := relation-event-arg123 & relation-arg1234. relation-event-arg12345 := relation-event-arg1234 & relation-arg12345. relation-apposition := relation-event-arg12 & [ PRED apposition ]. relation-rel-clause := relation-event-arg12 & [ PRED rel-clause ]. relation-direct-speech := relation-event-arg12 & [ PRED direct-speech ]. relation-gen-mod := relation-event-arg12 & [ PRED gen-mod ]. relation-psp2adj := relation-event-arg12 & [ PRED psp2adj ]. relation-robust-svp := relation-event-arg12 & [ PRED robust-svp ]. relation-robust-par := relation-event-arg12 & [ PRED robust-par ]. relation-robust-oa := relation-event-arg12 & [ PRED robust-oa ]. relation-robust-app := relation-event-arg12 & [ PRED robust-app ]. relation-conj-asynd := relation-event & relation-conjunction & [ PRED conj-asynd ]. relation-conjunction := relation-arg0 & [ L-INDEX individual, R-INDEX individual ]. relation-conjunction-e := relation-conjunction & relation-event. relation-conjunction-x := relation-conjunction & relation-noun. lt-sem-bind := lex-item & [ SYNSEM.LOCAL.CONT [ HOOK [ INDEX #index ], RELS.LIST.FIRST [ ARG0 #index ] ] ]. lt-sem-1-rel := lex-item & [ SYNSEM.LOCAL.CONT.RELS ]. lt-sem-no-hcons := lex-item & [ SYNSEM.LOCAL.CONT.HCONS ]. lt-sem-common := lt-sem-bind & lt-sem-1-rel & lt-sem-no-hcons. ; All non-verb-and-nouns. lt-sem-0-arg := lt-sem-common & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < > ] ] ]. lt-sem-1-arg := lt-sem-common & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg1 ] > ], CONT.RELS ] ]. lt-sem-2-arg := lt-sem-common & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg1 ], [ LOCAL.CONT.HOOK.INDEX #arg2 ] > ], CONT.RELS ] ]. lt-sem-3-arg := lt-sem-common & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg1 ], [ LOCAL.CONT.HOOK.INDEX #arg2 ], [ LOCAL.CONT.HOOK.INDEX #arg3 ] > ], CONT.RELS ] ]. lt-sem-4-arg := lt-sem-common & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg1 ], [ LOCAL.CONT.HOOK.INDEX #arg2 ], [ LOCAL.CONT.HOOK.INDEX #arg3 ], [ LOCAL.CONT.HOOK.INDEX #arg4 ] > ], CONT.RELS ] ]. ; Normal verbs lt-sem-su := lt-sem-common & [ SYNSEM.LOCAL [ CAT [ VAL [ SUBJ < [ LOCAL.CONT.HOOK.INDEX #subj ] > ] ], CONT [ HOOK [ XARG #subj ], RELS ] ] ]. lt-sem-su-0-arg := lt-sem-su & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < > ] ] ]. lt-sem-su-1-arg := lt-sem-su & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg2 ] > ], CONT.RELS ] ]. lt-sem-su-2-arg := lt-sem-su & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg2 ], [ LOCAL.CONT.HOOK.INDEX #arg3 ] > ], CONT.RELS ] ]. lt-sem-su-3-arg := lt-sem-su & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg2 ], [ LOCAL.CONT.HOOK.INDEX #arg3 ], [ LOCAL.CONT.HOOK.INDEX #arg4 ] > ], CONT.RELS ] ]. lt-sem-su-4-arg := lt-sem-su & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg2 ], [ LOCAL.CONT.HOOK.INDEX #arg3 ], [ LOCAL.CONT.HOOK.INDEX #arg4 ], [ LOCAL.CONT.HOOK.INDEX #arg5 ] > ], CONT.RELS ] ]. ; Argument-attracting verbs lt-sem-aa := lt-sem-common & [ SYNSEM.LOCAL [ CAT.VAL [ XCOMP < [ LOCAL.CONT.HOOK [ INDEX #index, XARG #subj ] ] > ], CONT [ HOOK [ XARG #subj ], RELS ] ] ]. lt-sem-xcomp := lt-sem-common & [ SYNSEM.LOCAL [ CAT.VAL [ XCOMP < [ LOCAL.CONT.HOOK.INDEX #arg1 ] > ], CONT.RELS ] ]. ; Determiners lt-sem-spr := lt-sem-common & [ SYNSEM.LOCAL [ CAT [ VAL.SPR < [ LOCAL.CONT.HOOK.INDEX #spr ] > ], CONT [ RELS ] ] ]. #| lt-sem-spec-1-arg := lt-sem-spec & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg2 ] > ], CONT.RELS ] ]. lt-sem-spec-2-arg := lt-sem-spec & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg2 ], [ LOCAL.CONT.HOOK.INDEX #arg3 ] > ], CONT.RELS ] ]. lt-sem-spec-3-arg := lt-sem-spec & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg2 ], [ LOCAL.CONT.HOOK.INDEX #arg3 ], [ LOCAL.CONT.HOOK.INDEX #arg4 ] > ], CONT.RELS ] ]. ; OBSOLETE WHEN MAKING SEM OF DET IN DET. ; For nouns that modify verbs: dieses Mal lt-sem-spec-mod := lt-sem-spec & lt-mod-xarg & [ SYNSEM.LOCAL [ CAT.HEAD [ MOD [ LOCAL.CONT.HOOK.INDEX #arg ] ], CONT.RELS ] ]. lt-sem-spec-mod-0-arg := lt-sem-spec-mod & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < > ] ] ]. lt-sem-spec-mod-1-arg := lt-sem-spec-mod & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg3 ] > ], CONT.RELS ] ]. lt-sem-spec-mod-2-arg := lt-sem-spec-mod & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg3 ], [ LOCAL.CONT.HOOK.INDEX #arg4 ] > ], CONT.RELS ] ]. |# ; Modifiers lt-sem-mod := lt-sem-common & [ SYNSEM.LOCAL [ CAT.HEAD [ MOD [ LOCAL.CONT.HOOK.INDEX #xarg ] ], CONT [ HOOK.XARG #xarg, RELS ] ] ]. lt-sem-mod-0-arg := lt-sem-mod & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < > ] ] ]. lt-sem-mod-1-arg := lt-sem-mod & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg2 ] > ], CONT.RELS ] ]. lt-sem-mod-2-arg := lt-sem-mod & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg2 ], [ LOCAL.CONT.HOOK.INDEX #arg3 ] > ], CONT.RELS ] ]. lt-sem-mod-3-arg := lt-sem-mod & [ SYNSEM.LOCAL [ CAT.VAL [ COMPS < [ LOCAL.CONT.HOOK.INDEX #arg2 ], [ LOCAL.CONT.HOOK.INDEX #arg3 ], [ LOCAL.CONT.HOOK.INDEX #arg4 ] > ], CONT.RELS ] ].