;;; -*- Mode: TDL; Coding: utf-8 -*- ;;; Authors: ;;; Dan Flickinger ;;; Stefan Müller ;;; Walter Kasper ;;; Berthold Crysmann mrs-thing := *avm* & [INSTLOC string ]. handle :< mrs-thing. modal-type := *avm* & [ MODAL bool ]. int-or-ext-individual := mrs-thing & [--top bool]. individual := int-or-ext-individual & sort-type & [--top bool, msort modal-type]. event := ref-ind-or-event & e-type. deg-ind :< individual. cont := *avm* & [ LBL handle]. index-type := *avm* & [index individual]. index-cont_min := *avm*. hook_min0 := *avm*. hook_min1 := hook_min0 & index-type & [index individual, ltop handle]. hook_min := hook_min1 & [lbot handle, ibot event]. hook := hook_min & [xarg mrs-thing]. hook_full := hook & reli-type. index-cont := cont & index-type & index-cont_min. pred-type := *avm* & [ PRED predsort ]. mod-relation := cont & pred-type & [LBL handle ]. relation := mod-relation & [ LBL handle, WLINK *list*, CFROM *top*, CTO *top* ]. pred-relation := relation. vref-type := *avm* & [ VREF *top* ]. vtype-type := *avm* & [ VTYPE *top* ]. ;; used by reflexive pronouns no_rel := mod-relation & vref-type & vtype-type. ;; mass-unit is + if the noun can be used together with mass nouns "eine Stunde Zeit" "einen Liter Milch" mass-unit-type := *avm* & [ mass-unit bool ]. index := individual & png-type & mass-unit-type. mrs_min := *avm* & [HOOK hook_min0]. mrs_min0 := mrs_min & [KEY mod-relation & [PRED #key], --KEY #key]. mrs_min1 := mrs_min0 & [RELS *avm*, HCONS *avm*, KEY mod-relation & [PRED #key], --KEY #key]. --scopal-type := *avm* & [--scopal bool]. modcont := mrs_min0 & --scopal-type. isect-modcont := modcont & [--scopal -]. scopal-modcont := modcont & [--scopal +]. mrs := mrs_min1 & [ RELS *diff-list*, --KEY predsort & #key, KEY mod-relation & [PRED #key], MESSAGE message_min, HCONS *diff-list*, MODCONT mrs_min, --MSGPRED predsort ]. altkey-mrs := mrs & [ ALTKEY mod-relation ]. modcont-mrs := mrs & [ modcont mrs_min ]. altkey-modcont-mrs := altkey-mrs & modcont-mrs. outscopes := *avm* & [ HARG handle, LARG handle]. qeq := outscopes. ;& ; [HARG.INSTLOC #i, ; LARG.INSTLOC #i]. ref-ind := index & ref-ind-or-event. expl-ind :< index. refl_ind :< ref-ind. non_refl_ind :< ref-ind. ref-ind-or-event := individual. psoa := mrs & [ hook.INDEX event ]. nom-obj := mrs & [ hook.INDEX index ]. card_or_ord_rel := predsort. ord_rel := card_or_ord_rel. card_rel := card_or_ord_rel. message_m_rel := predsort. basic_imp_m_rel := message_m_rel. prop_imp_m_rel := message_m_rel. ;direct_speech_m_rel := message_m_rel. ;for COMPS of e.g. 'know': prop-or-ques_m_rel := message_m_rel. prpstn_or_like_m_rel := message_m_rel. propositional_m_rel := prop-or-ques_m_rel & prpstn_or_like_m_rel. punct_prop_imp_m_rel := message_m_rel. prpstn_m_rel := propositional_m_rel & prop_imp_m_rel & punct_prop_imp_m_rel. imp_m_rel := basic_imp_m_rel & prop_imp_m_rel & punct_prop_imp_m_rel. abstr_int_m_rel := message_m_rel. basic_int_m_rel := abstr_int_m_rel & prop-or-ques_m_rel. punct_int_m_rel := message_m_rel. int_m_rel := basic_int_m_rel & punct_int_m_rel. ;ne_m_rel := abstr_int_m_rel & punct_int_m_rel. ne_x_rel := predsort. like_m_rel := prpstn_or_like_m_rel. ext-or-int-message := message_min & arg0-type & [MARG mrs-thing, TPC mrs-thing, PSV mrs-thing, PRED predsort]. message_min :< *avm*. message := ext-or-int-message & [ MARG handle, TPC mrs-thing, PSV mrs-thing, PRED message_m_rel]. no_msg :< message_min. arg0-type := relation & [arg0 *top*]. ext-or-int-quant-or-wh-rel := arg0-type & [ RSTR mrs-thing, body mrs-thing ]. quant-or-wh-rel := ext-or-int-quant-or-wh-rel & [ arg0 individual, RSTR handle, body handle ]. whq-rel := quant-or-wh-rel & [pred "wh_q_rel"]. quant-rel := quant-or-wh-rel & [ arg0 ref-ind ]. pronoun_q_rel :< quant-rel. def_or_udef_rel :< quant-rel. def-rel :< def_or_udef_rel. indef-rel :< quant-rel. udef_rel := def_or_udef_rel. ; Nominal relations inst-type := arg0-type & [ ARG0 *top* ]. inst-relation-type :< inst-type. dim_rel := relation & [ DIM mrs-thing ]. reli-type := *avm* & [--reli individual, --relh handle]. basic-nom-rel := arg0-type & reli-type & [ ARG0 individual]. nom-rel := basic-nom-rel & [ ARG0 ref-ind ]. c-n-g_min := *avm*. reg-nom-rel :< nom-rel. appos_rel := non_abstr_nom_rel_or_appos_rel. non_abstr_nom_rel := reg-nom-rel & non_abstr_nom_rel_or_adj_rel & non_abstr_nom_rel_or_appos_rel. non_abstr_nom_rel_or_appos_rel := pred-type. pred-reg-nom-rel := non_abstr_nom_rel. ;; eineinhalb Tage ungefähr pred-reg-nom-dim-rel := pred-reg-nom-rel & dim_rel. std_nom_rel := pred-reg-nom-rel. std_nom_non_carg_rel := std_nom_rel & non_carg_rel. ; BC: Temporary fix. std_nom_carg_rel := std_nom_rel & carg-type. std_nom_dim_rel := std_nom_rel & dim_rel. enum_nom_rel :< pred-reg-nom-rel. ;; empty nouns ;; und einhundert für das Flugzeug abstr_nom_rel := reg-nom-rel & non_carg_rel. ;; und ungefähr einhundert für das Flugzeug abstr_nom_dim_rel := dim_rel & abstr_nom_rel. abstr_rel_rel :< reg-nom-rel. diadic_nom_rel := pred-reg-nom-rel & non_carg_rel. nominalize_rel := non_abstr_nom_rel & non_carg_rel & arg-1-rel & [pred "nominalization_rel"]. temp_rel :< non_abstr_nom_rel. card_relation := card_or_ord_relation & [arg0 individual, PRED card_rel]. card_or_ord_relation := carg-type & arg0-type & arg-1-rel & [arg0 individual, PRED card_or_ord_rel]. ;; mindestens sechs Seiten pro Minute dim_card_rel := card_relation & dim_rel. computed_rel := *avm* & [ FUN *top*]. computed_card_rel := card_relation & computed_rel & [ VALUES *diff-list* ]. day_rel :< temp_rel. std-day-rel := non_carg_rel & day_rel. non_carg_rel := nom-rel. ; & *carg-type* & [carg bool]. named_day_rel := day_rel & carg-type & [ DAY string]. non_day_rel :< temp_rel. *time_rel* :< temp_rel. time_rel := *time_rel* & non_carg_rel. generic_time_rel := time_rel & [pred "time_rel"]. time_carg_rel := *time_rel* & carg-rel. month_rel := *time_rel* & [ PRED string ]. dofm_rel := month_rel & named_day_rel. dofw_rel := named_day_rel & [PRED "dofw_rel"]. holiday_rel := std-day-rel. day-part-rel := temp_rel & dim_rel. ctime_rel := non_day_rel & carg-rel & [ HOUR *top*, MINUTE *top*]. computed_ctime_rel := ctime_rel & computed_rel. mofy_rel := month_rel & carg-type & non_day_rel & [month #pred, carg #pred, pred "mofy_rel"]. yofc_rel := non_day_rel & carg-type & [ YEAR #year, PRED "yofc_rel", CARG #year]. *carg-type* := *avm* & [carg *top*]. carg-type := *carg-type* & [carg *top*]. carg-rel := carg-type & non_abstr_nom_rel. named_rel := carg-rel & [PRED "_named_n_rel"]. anrede_title_rel := pred-reg-nom-rel & [ TITLE #c, PRED #c]. anrede_form_rel :< anrede_title_rel. title_rel := anrede_title_rel. std-title-rel := title_rel & non_carg_rel. title_carg_rel := title_rel & carg-type. ;;;c_title_rel :< title_rel. unk_rel :< named_rel. currency_rel := non_abstr_nom_rel. unk_currency_rel := currency_rel & carg-rel. pron_rel := nom-rel & vref-type & vtype-type. place_rel := non_abstr_nom_rel & [pred "place_rel"]. non_abstr_nom_rel_or_adj_rel := pred-type. adj-rel := arg0-type & arg-1-rel & dim_rel & non_abstr_nom_rel_or_adj_rel & [ ARG1 mrs-thing ]. adj-carg-rel := adj-rel & carg-type. prd-adj-rel := adj-rel & event-rel. isect_adj_rel := adj-rel & [ ARG1 individual ]. ord_relation := isect_adj_rel & card_or_ord_relation & [PRED ord_rel]. scopal_adj_rel := adj-rel & [ ARG1 handle ]. isect_adj_prd_rel := isect_adj_rel & prd-adj-rel. ord_prd_rel := ord_relation & prd-adj-rel. scopal_adj_prd_rel := scopal_adj_rel & prd-adj-rel. verb-prep-rel :< relation. event-rel := verb-prep-rel & arg0-type & [ ARG0 event]. vacuous-event-rel :< event-rel. pred-event-rel := event-rel. reg_event_rel :< event-rel. reg_pred_event_rel := pred-event-rel & reg_event_rel. dim_event_rel := reg_event_rel & dim_rel. dim_pred_event_rel := pred-event-rel & dim_event_rel. nodim_event_rel :< reg_event_rel. nodim_pred_event_rel := pred-event-rel & nodim_event_rel. arg-type := arg-1-rel & arg0-type. arg-rel := pred-relation & arg-type. arg-event-rel := arg-rel & event-rel. pevent := event & psort-type & [psort any-adj]. support_rel := event-rel. psort-type := *avm* & [ PSORT *top* ]. relational-adj-psort-type := psort-type & [ PSORT relational-adj ]. any-adj-psort-type := psort-type & [ PSORT any-adj ]. cop-id-rel := pred-relation & relational-adj-psort-type & event-rel & arg-2-rel & [ARG1 ref-ind, ARG2 ref-ind ]. poss-rel := pred-relation & relational-adj-psort-type & event-rel & arg-2-rel & [ arg0 [e no_tam], pred "poss_rel", arg1 ref-ind, arg2 ref-ind ]. prep-rel := pred-relation & event-rel & arg-2-rel & [ ARG1 individual, ARG2 individual ]. prep-mod-rel := prep-rel & any-adj-psort-type & [ARG1 individual]. pred-prep-mod-rel := prep-mod-rel & arg-rel. ;; von bis two-prep-mod-rel := prep-mod-rel & arg-3-rel & [ arg3 individual ]. prep_comp_rel := prep-rel & [PCASE pform]. temp_loc_rel := prep-mod-rel & [PRED "unspec_loc_rel", PSORT temp-loc-adj ]. abstr_loc_rel := prep-mod-rel & [PRED "abstr_loc_rel", PSORT locative-adj ]. freq_rel := prep-mod-rel & [PRED "freq_rel", PSORT temp-adj ]. perspective_rel := prep-mod-rel & [ PRED "abstr_perspective_rel", PSORT locative-adj ]. goal_rel := prep-mod-rel & [PRED "abstr_goal_rel", PSORT goal-adj ]. source_rel := prep-mod-rel & [PRED "abstr_source_rel", PSORT goal-adj ]. equal_rel :< prep-mod-rel. unspec_mod_rel :< prep-mod-rel. unspec_rel :< unspec_mod_rel. adv-rel := event-rel & arg-rel & [arg0 event]. adv-carg-rel := adv-rel & carg-type. dim_adv_rel := adv-rel & dim_rel. neg-rel :< arg-rel. gradual_rel := arg-rel & [ARG0 individual]. dim-arg-rel := dim_rel & arg-rel. scope-adv-rel :< dim-arg-rel. neg-polar-rel :< adv-rel. nodim_adv_rel :< adv-rel. conjunction_rel := pred-relation & arg0-type & [l-index individual, r-index individual, l-hndl mrs-thing, r-hndl mrs-thing ]. subord_rel := pred-relation & arg0-type & [ MAIN mrs-thing, SUBORD handle ]. spell-or-letter_rel := relation. letter_rel := spell-or-letter_rel & carg-rel & [PRED "_letter_n_rel"]. spell_rel := spell-or-letter_rel & conjunction_rel & [ PRED "spelling_rel"]. topic_rel := inst-relation-type & [ ARG0 handle]. interjection_rel := pred-relation & arg0-type & arg-1-rel & carg-type. prep-sel-rel :< predsort. _a_p_sel_rel:< prep-sel-rel. _ab-von_p_sel_rel:< prep-sel-rel. _ab_p_sel_rel :< _ab-von_p_sel_rel. _abseits_p_sel_rel:< prep-sel-rel. _abzueglich_p_sel_rel:< prep-sel-rel. _als_sprep_p_sel_rel:< prep-sel-rel. _an-bei_p_sel_rel:< prep-sel-rel. _an_p_sel_rel :< _an-bei_p_sel_rel. _angesichts_p_sel_rel:< prep-sel-rel. _anhand_p_sel_rel:< prep-sel-rel. _anlaesslich_p_sel_rel:< prep-sel-rel. _anstatt_p_sel_rel:< prep-sel-rel. _anstelle_p_sel_rel:< prep-sel-rel. _auf-ueber_p_sel_rel:< prep-sel-rel. _auf_p_sel_rel :< _auf-ueber_p_sel_rel. _aufgrund_p_sel_rel:< prep-sel-rel. _aus-von_p_sel_rel:< prep-sel-rel. _aus_p_sel_rel :< _aus-von_p_sel_rel. _ausgenommen_p_sel_rel:< prep-sel-rel. _ausser_p_sel_rel:< prep-sel-rel. _ausserhalb_p_sel_rel:< prep-sel-rel. _bei_p_sel_rel :< _an-bei_p_sel_rel. _betreffens_p_sel_rel:< prep-sel-rel. _bezueglich_p_sel_rel:< prep-sel-rel. _binnen_p_sel_rel:< prep-sel-rel. _bis_p_sel_rel:< prep-sel-rel. _da_p_sel_rel:< prep-sel-rel. _durch-von_p_sel_rel:< prep-sel-rel. _durch_p_sel_rel :< _durch-von_p_sel_rel. _einschliesslich_p_sel_rel:< prep-sel-rel. _entgegen_p_sel_rel:< prep-sel-rel. _exklusiv_p_sel_rel:< prep-sel-rel. _fuer-gegen_p_sel_rel:< prep-sel-rel. _fuer_p_sel_rel :< _fuer-gegen_p_sel_rel. _gegen_p_sel_rel :< _fuer-gegen_p_sel_rel. _gegenueber_p_sel_rel:< prep-sel-rel. _gemaess_p_sel_rel:< prep-sel-rel. _halber_p_sel_rel:< prep-sel-rel. _hinter_p_sel_rel:< prep-sel-rel. _in_p_sel_rel:< prep-sel-rel. _ins_p_sel_rel:< prep-sel-rel. _inbegriffen_p_sel_rel:< prep-sel-rel. _infolge_p_sel_rel:< prep-sel-rel. _inklusive_p_sel_rel:< prep-sel-rel. _innerhalb_p_sel_rel:< prep-sel-rel. _jenseits_p_sel_rel:< prep-sel-rel. _laut_sprep_p_sel_rel:< prep-sel-rel. _mangels_p_sel_rel:< prep-sel-rel. _mit_p_sel_rel:< prep-sel-rel. _mittels_p_sel_rel:< prep-sel-rel. _nach_p_sel_rel:< prep-sel-rel. _naechst_sprep_p_sel_rel:< prep-sel-rel. _neben_p_sel_rel:< prep-sel-rel. _ohne_p_sel_rel:< prep-sel-rel. _per_p_sel_rel:< prep-sel-rel. _plus_p_sel_rel:< prep-sel-rel. _pro_p_sel_rel:< prep-sel-rel. _samt_p_sel_rel:< prep-sel-rel. _seit_p_sel_rel:< prep-sel-rel. _seitens_p_sel_rel:< prep-sel-rel. _statt_p_sel_rel:< prep-sel-rel. _trotz_p_sel_rel:< prep-sel-rel. _ueber-von_p_sel_rel:< prep-sel-rel. _ueber-wegen_p_sel_rel:< prep-sel-rel. _ueber_p_sel_rel := _auf-ueber_p_sel_rel & _ueber-von_p_sel_rel & _ueber-wegen_p_sel_rel. _um_p_sel_rel:< prep-sel-rel. _ungeachtet_p_sel_rel:< prep-sel-rel. _unter_p_sel_rel:< prep-sel-rel. _via_p_sel_rel:< prep-sel-rel. _von_p_sel_rel := _ab-von_p_sel_rel & _aus-von_p_sel_rel & _durch-von_p_sel_rel & _ueber-von_p_sel_rel. _von-bis_p_sel_rel:< prep-sel-rel. _vor_p_sel_rel:< prep-sel-rel. _waehrend_p_sel_rel:< prep-sel-rel. _wegen_p_sel_rel :< _ueber-wegen_p_sel_rel. _westlich_p_sel_rel:< prep-sel-rel. _wider_p_sel_rel:< prep-sel-rel. _zugunsten_p_sel_rel:< prep-sel-rel. _zuungunsten_p_sel_rel:< prep-sel-rel. _zuliebe_p_sel_rel:< prep-sel-rel. _zuzueglich_p_sel_rel:< prep-sel-rel. _zu_p_sel_rel:< prep-sel-rel. _zurueck_p_sel_rel:< prep-sel-rel. _zwecks_p_sel_rel:< prep-sel-rel. _zwischen_p_sel_rel:< prep-sel-rel. _gen_p_sel_rel:< prep-sel-rel. _bis-zu_p_sel_rel:< prep-sel-rel. _als_p_sel_rel:< prep-sel-rel.