def past_suff_entry(past_entry, next_index): syn_val = suff_syn_value("past", "preVowel") relspec1 = Relspec("TempMatch", {}) temp, next_index = add_role(next_index, relspec1, "TEMP1") tref, next_index = add_role(next_index, relspec1, "TEMP2") relspec2 = Relspec("PastTemp", {"TEMP": tref}) relspecs = [relspec1, relspec2] hooks = {"temp": temp, "tref": tref} subcat = [] return syn_val, relspecs, hooks, subcat, next_index
def plu_suff_entry(plu_entry, next_index): orth_form, = plu_entry syn_val = suff_syn_value("plural", orth_form) relspec1 = Relspec("AbsVal", {}) quant, next_index = add_role(next_index, relspec1, "NODE") val, next_index = add_role(next_index, relspec1, "VAL") relspec2 = Relspec("GreaterThan", {"GREATER": val, "LESS": 1}) hooks = {"quant": quant} return syn_val, [relspec1, relspec2], hooks, [], next_index
def det_entry(sg, plu, df, width, next_index): syn_val = det_syn_val(sg, plu) relspec = Relspec("Quant", {}) head, next_index = add_role(next_index, relspec, "RESTR") root, next_index = add_role(next_index, relspec, "SCOPE") quant, next_index = add_role(next_index, relspec, "QUANT") relspec.roles["DEF"] = df relspec.roles["WIDTH"] = width hooks = {"head": head, "root": root, "quant": quant} return syn_val, relspec, hooks, [], next_index
def pron_entry(next_index): syn_val = SynValue("PronLex", True) relspec = Relspec("PronRel", {}) root, next_index = add_role(next_index, relspec, "PRON") return syn_val, relspec, {"root": root}, [], next_index
def adv_prep_entry(rel, role, next_index): syn_val = prep_syn_val() relspec = Relspec(rel, {}) hooks = {} next_index = add_hook(next_index, relspec, role, hooks, "modevent") return syn_val, relspec, hooks, [], next_index
def adj_prep_entry(rel, role, next_index): syn_val = prep_syn_val() relspec = Relspec(rel, {}) hooks = {} next_index = add_event(next_index, relspec, hooks) next_index = add_head(next_index, relspec, role, hooks) return syn_val, relspec, hooks, [], next_index
def verb_entry(rel, vform, irr, next_index): syn_val = verb_syn_val(vform, irr) relspec = Relspec(rel, {}) hooks = {} next_index = add_event(next_index, relspec, hooks) subcat = [] return syn_val, relspec, hooks, subcat, next_index
def inchoative_verb_entry(verb_lex, vform, irr, next_index): rel, obj_role = verb_lex syn_val, relspec, hooks, subcat, next_index = verb_entry("Cause", vform, irr, next_index) next_index = add_subj(next_index, relspec, "CAUSER", hooks) sub_event, next_index = add_role(next_index, relspec, "CAUSED") sub_relspec = Relspec(rel, {"_EVENT": sub_event}) next_index = add_obj(next_index, sub_relspec, obj_role, subcat, False) return syn_val, [relspec, sub_relspec], hooks, subcat, next_index
def fixed_det_entry(det_lex, next_index): sg, plu, df, width, rel, val = det_lex syn_val, relspec, hooks, subcat, next_index = det_entry( sg, plu, df, width, next_index) syn_val["quant"] = "fixed" val_roles = {"NODE": hooks["quant"], "VAL": 1} val_relspec = Relspec(rel, val_roles) return syn_val, [relspec, val_relspec], hooks, subcat, next_index