;; -*- Mode: TDL; Coding: utf-8 -*- ;;; Authors: ;;; 1997-2000 Walter Kasper & Stefan Müller ;;; 2000-2002 Stefan Müller ;;; 2002-2006 Berthold Crysmann ;;; Copyright: DFKI GmbH slash := meta & [ SYNSEM.NONLOC.SLASH singleton-diff-list, META-PREFIX "/", META-SUFFIX "" ]. eps-label := label-sign & [ SYNSEM.LOC.CAT.HEAD eps-verb-head, LABEL-NAME "EPS" ]. s1-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD fin-verb-head, SUBJ <>, subcat , vcomp <> ], LABEL-NAME "S" ]. vp-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD non-fin-verb-head, SUBJ <>, subcat , vcomp <> ], LABEL-NAME "VP" ]. v-comp-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD verb-head, subcat.list <[], ... >, vcomp <> ], LABEL-NAME "V" ]. v-le-label := label-rule & [ SYNSEM.LOC.CAT.HEAD verb-head, ARGS < stem-or-lex-sign >, LABEL-NAME "V" ]. det-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD det-head, subcat , vcomp <> ], LABEL-NAME "D" ]. rp-label := label-sign & [ SYNSEM.LOC.CAT.HEAD rp-head, LABEL-NAME "RP" ]. ap-prd-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD prd-adj-head, subcat , vcomp <> ], LABEL-NAME "AP-PRD" ]. adj-prd-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD prd-adj-head, vcomp <> ], LABEL-NAME "ADJ-PRD" ]. ap-non-prd-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD mod-adj-head, subcat ], LABEL-NAME "AP-ATT" ]. adj-non-prd-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD mod-adj-head ], LABEL-NAME "ADJ-ATT" ]. ad-adj-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD ad-adj-head, subcat , vcomp <> ], LABEL-NAME "AD-ADJ" ]. ad-np-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD ad-np-head, subcat , vcomp <> ], LABEL-NAME "AD-NP" ]. adv-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD adv-head, subcat , vcomp <> ], LABEL-NAME "ADV" ]. np-n-mod-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD nbar-mod-noun-head, spr <>, subcat , vcomp <> ], LABEL-NAME "NP-N-Mod" ]. np-a-v-mod-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD a-v-mod-noun-head, spr <>, subcat , vcomp <> ], LABEL-NAME "NP-A-V-Mod" ]. np-nom-sg-label := label-sign & [ SYNSEM.LOC [ CAT [ HEAD noun-head & [ cas.morph-case nom-val ], spr <>, subcat , vcomp <> ], CONT.hook.index [png p-s-g], UNIAGR.cas.morph-case nom-val ], LABEL-NAME "NP-nom-sg" ]. np-nom-pl-label := label-sign & [ SYNSEM.LOC [ CAT [ HEAD noun-head & [ cas.morph-case nom-val ], spr <>, subcat , vcomp <> ], CONT.hook.index [png p-p-g], UNIAGR.cas.morph-case nom-val ], LABEL-NAME "NP-nom-pl" ]. np-gen-label := label-sign & [ SYNSEM.LOC [CAT [ HEAD noun-head & [ cas.morph-case gen-val ], spr <>, subcat , vcomp <> ], UNIAGR.cas.morph-case gen-val], LABEL-NAME "NP-gen" ]. np-dat-label := label-sign & [ SYNSEM.LOC [CAT [ HEAD noun-head & [ cas.morph-case dat-val ], spr <>, subcat , vcomp <> ], UNIAGR.cas.morph-case dat-val], LABEL-NAME "NP-dat" ]. np-acc-sg-label := label-sign & [ SYNSEM.LOC [ CAT [ HEAD noun-head & [ cas.morph-case acc-val ], spr <>, subcat , vcomp <> ], CONT.hook.index [png p-s-g], UNIAGR.cas.morph-case acc-val ], LABEL-NAME "NP-acc-sg" ]. np-acc-pl-label := label-sign & [ SYNSEM.LOC [ CAT [ HEAD noun-head & [ cas.morph-case acc-val ], spr <>, subcat , vcomp <> ], CONT.hook.index [png p-p-g], UNIAGR.cas.morph-case acc-val ], LABEL-NAME "NP-acc-pl" ]. np-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD noun-head, spr <>, subcat , vcomp <> ], LABEL-NAME "NP" ]. nbar-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD noun-head, spr < synsem >, subcat , vcomp <> ], LABEL-NAME "N" ]. n-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD noun-head, subcat.list < [], ... >, vcomp <> ], LABEL-NAME "N" ]. pp-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD prep-head, subcat , vcomp <> ], LABEL-NAME "PP" ]. p-comp-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD comp-prep-head, subcat.list < [], ... >, vcomp <> ], LABEL-NAME "P-COMP" ]. p-mod-n-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD noun-mod-prep-head, subcat.list < [], ... >, vcomp <> ], LABEL-NAME "P-MOD-N" ]. p-mod-v-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD adj-or-verb-mod-prep-head, subcat.list < [], ... >, vcomp <> ], LABEL-NAME "P-MOD-V" ]. p-prd-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD prd-prep-head, subcat.list < [], ... >, vcomp <> ], LABEL-NAME "P-PRD" ]. p-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD prep-head, subcat.list < [], ... >, vcomp <> ], LABEL-NAME "P" ]. part-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD particle-head, subcat , vcomp <> ], LABEL-NAME "PART" ]. comp-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD complementizer-head, subcat ], LABEL-NAME "C" ]. cp-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD comp-complementizer-head, subcat ], LABEL-NAME "CP" ]. cp-mod-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD mod-complementizer-head, subcat ], LABEL-NAME "CP-MOD" ]. rc-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD rel-clause-head, subcat ], LABEL-NAME "RC" ]. w-c-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD int-clause-head, subcat ], LABEL-NAME "W-C" ]. coord-p-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD basic-coord-head, subcat , vcomp <> ], LABEL-NAME "COORD-P" ]. coord-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD basic-coord-head, subcat , vcomp <> ], LABEL-NAME "COORD" ]. interj-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD int-head ], LABEL-NAME "INTERJ" ]. qtag-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD q-tag-head ], LABEL-NAME "Q-TAG" ]. trun-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD turn-seq-head ], LABEL-NAME "TURN" ]. dummy-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD dummy-head ], LABEL-NAME "DUMMY" ]. ;; SLASH-Element in Epsilon-Produktion xp-label := label-sign & [ SYNSEM.LOC.CAT [ HEAD vcomp-no-sp-head, subcat , vcomp <> ], LABEL-NAME "XP" ]. root-label := label-sign & [ROOT +, LABEL-NAME "ROOT" ].