This grammar is the same as diss except that it only uses PW principles, and uses a new two-dimensional order principle. Adapted by Jorge Pelizzoni.
usedim ord
usedim id
usedim lp
usedim idlp
usedim ordlp
%usedim pa
%usedim idpa
%usedim sc
%usedim pasc
%usedim clls
%usedim ps
%usedim is
%usedim psis
usedim lex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define ord dimension
defdim ord {
deftype "ord.label" {prec}
deflabeltype "ord.label"
useprinciple "principle.graphPWConstraints" { dims {D: ord} }
useprinciple "principle.graphPWDist" { dims {D: ord} }
useprinciple "principle.orderParsePW" { dims {D: ord} }
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define id dimension
defdim id {
deftype "id.label" {
adj
adv
comp
det
iobj
obj
part
pmod
pobj1
pobj2
prepc
rel
root
sub
subj
vbse
vinf
vprt
}
deflabeltype "id.label"
deftype "id.person" {first second third}
deftype "id.number" {sg pl}
deftype "id.gender" {masc fem neut}
deftype "id.case" {nom acc}
deftype "id.agr" tuple("id.person" "id.number" "id.gender" "id.case")
deftype "id.lagr" tuple("id.label" "id.person" "id.number" "id.gender" "id.case")
deftype "id.pagr" {at by in of on to with}
defattrstype {agr: "id.agr"
pagr: "id.pagr"}
defentrytype {in: set(tuple("id.label" {"!" "?" "+" "*"}))
out: set(tuple("id.label" {"!" "?" "+" "*"}))
agrs: set("id.agr")
pagrs: set("id.pagr")
pobj1: set("id.pagr")
pobj2: set("id.pagr")}
%%
useprinciple "principle.graphPWConstraints" { dims {D: id} }
useprinciple "principle.graphPWDist" { dims {D: id} }
useprinciple "principle.treePW" { dims {D: id} }
useprinciple "principle.valencyPW" { dims {D: id} }
useprinciple "principle.agrPW" { dims {D: id} }
useprinciple "principle.agreementDissPW" { dims {D: id} }
useprinciple "principle.governmentDissPW" { dims {D: id} }
useprinciple "principle.pAgrPW" { dims {D: id} }
useprinciple "principle.pGovernmentDissPW" { dims {D: id} }
%%
output "output.decode"
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define lp dimension
defdim lp {
deftype "lp.label" {
compf
rprof
vvf
vf
fadvf
lbf
mf1
mf2
rbf
padvf
tadvf
nf
%%
detf
adjf
padjf
relf
%%
prepcf
%%
root
%%
"^"
}
deflabeltype "lp.label"
defentrytype {in: set(tuple("lp.label" {"!" "?" "+" "*"}))
out: set(tuple("lp.label" {"!" "?" "+" "*"}))
order: set(tuple("lp.label" "lp.label"))}
%%
useprinciple "principle.graphPWConstraints" { dims {D: lp} }
useprinciple "principle.graphPWDist" { dims {D: lp} }
useprinciple "principle.treePW" { dims {D: lp} }
% useprinciple "principle.graph" { dims {D: lp} }
% useprinciple "principle.tree" { dims {D: lp} }
useprinciple "principle.projective2dPW" { dims {D:lp ORD:ord}}
% useprinciple "principle.projectivityPW" { dims {D: lp} }
% useprinciple "principle.projectivity" { dims {D: lp} }
useprinciple "principle.valencyPW" { dims {D: lp} }
% useprinciple "principle.order2" {
% dims {D: lp}
% args {Order: _.D.entry.order
% Yields: true}}
%%
output "output.decode"
output "output.pretty"
}
defdim ordlp {
% useprinciple "principle.order2dPW" { dims {D:lp ORD:ord} }
useprinciple "principle.orderYields2dPW" { dims {D:lp ORD:ord} }
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define idlp dimension
defdim idlp {
defentrytype {blocks: set("id.label")}
%%
useprinciple "principle.climbing" {
dims {D1: lp
D2: id}}
useprinciple "principle.climbingPW" {
dims {D1: lp
D2: id}}
useprinciple "principle.climbingSubgraphsPW" {
dims {D1: lp
D2: id}}
% useprinciple "principle.idemconnectedPW" {
% dims {D1: lp
% D2: id}}
useprinciple "principle.barriersPW" {
dims {D1: lp
D2: id
D3: idlp}}
useprinciple "principle.linkingDaughterEndDissPW" {
dims {D1: lp
D2: id}}
useprinciple "principle.linkingEndDissPW" {
dims {D1: lp
D2: id}}
%%
output "output.decode"
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define pa dimension
defdim pa {
%%
deftype "pa.label" {addr ag agm del det pat patm root th thm}
deflabeltype "pa.label"
defentrytype {in: set(tuple("pa.label" {"!" "?" "+" "*"}))
out: set(tuple("pa.label" {"!" "?" "+" "*"}))
lockDaughters: set("pa.label")}
%%
useprinciple "principle.graphPWConstraints" { dims {D: pa} }
useprinciple "principle.graphPWDist" { dims {D: pa} }
useprinciple "principle.dagPW" { dims {D: pa} }
useprinciple "principle.disjointDaughtersPW" { dims {D: pa} }
useprinciple "principle.valencyPW" { dims {D: pa} }
useprinciple "principle.lockingDaughtersDissPAPW" {
dims {D1: pa
D2: pa
D3: pa}}
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% use and choose outputs
output "output.decode"
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define idpa dimension
defdim idpa {
defentrytype {linkDaughterEnd: set(tuple("pa.label" "id.label"))
linkBelow1or2Start: set(tuple("pa.label" "id.label"))
linkBelowStart: set(tuple("pa.label" "id.label"))
linkAboveBelow1or2Start: set(tuple("pa.label" "id.label"))
lockDaughters: set("id.label")
linkMother: set("pa.label")
linkAboveEnd: set(tuple("pa.label" "id.label"))
partialAgree: set("pa.label")}
%%
useprinciple "principle.linkingDaughterEndPW" {
dims {D1: pa
D2: id
D3: idpa}}
useprinciple "principle.linkingBelow1or2StartPW" {
dims {D1: pa
D2: id
D3: idpa}}
useprinciple "principle.linkingBelowStartPW" {
dims {D1: pa
D2: id
D3: idpa}}
useprinciple "principle.linkingAboveBelow1or2StartPW" {
dims {D1: pa
D2: id
D3: idpa}}
useprinciple "principle.lockingDaughtersDissIDPAPW" {
dims {D1: id
D2: pa
D3: idpa}}
useprinciple "principle.linkingMotherPW" {
dims {D1: pa
D2: id
D3: idpa}}
useprinciple "principle.linkingAboveEndPW" {
dims {D1: pa
D2: id
D3: idpa}}
useprinciple "principle.partialAgreementDissPW" {
dims {D1: pa
D2: id
D3: idpa}}
%%
output "output.decode"
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define sc dimension
defdim sc {
%%
deftype "sc.label" {del q r root s}
deflabeltype "sc.label"
defentrytype {in: set(tuple("sc.label" {"!" "?" "+" "*"}))
out: set(tuple("sc.label" {"!" "?" "+" "*"}))}
%%
useprinciple "principle.graphPWConstraints" { dims {D: sc} }
useprinciple "principle.graphPWDist" { dims {D: sc} }
useprinciple "principle.treePW" { dims {D: sc} }
useprinciple "principle.valencyPW" { dims {D: sc} }
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% use and choose outputs
output "output.decode"
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define pasc dimension
defdim pasc {
%%
defentrytype {linkAboveEnd: set(tuple("pa.label" "sc.label"))
linkBelowStart: set(tuple("pa.label" "sc.label"))
linkDaughterEnd: set(tuple("pa.label" "sc.label"))}
%%
useprinciple "principle.linkingAboveEndPW" {
dims {D1: pa
D2: sc
D3: pasc}}
useprinciple "principle.linkingBelowStartPW" {
dims {D1: pa
D2: sc
D3: pasc}}
useprinciple "principle.linkingDaughterEndPW" {
dims {D1: pa
D2: sc
D3: pasc}}
%%
output "output.decode"
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define clls dimension
defdim clls {
deftype "clls.var" {x1 x2 x3 x4 x5 x6 x7 x8 x9}
defentrytype {cons: string
anchor: string
roots: set("clls.var")
dom: vec("sc.label" set("clls.var"))
lam: vec("pa.label" set("clls.var"))
var: vec("pa.label" set("clls.var"))}
%%
output "output.clls"
output "output.clls1"
% useoutput "output.clls"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define ps dimension
defdim ps {
%%
deftype "ps.label" {pa1 pa2 bt1 bt2 pa1bt1 pa2bt2 ua "^"}
deflabeltype "ps.label"
defentrytype {in: set(tuple("ps.label" {"!" "?" "+" "*"}))
out: set(tuple("ps.label" {"!" "?" "+" "*"}))
order: set(tuple("ps.label" "ps.label"))}
%%
useprinciple "principle.graphPWConstraints" { dims {D: ps} }
useprinciple "principle.graphPWDist" { dims {D: ps} }
useprinciple "principle.treePW" { dims {D: ps} }
useprinciple "principle.projectivityPW" { dims {D: ps} }
useprinciple "principle.valencyPW" { dims {D: ps} }
useprinciple "principle.orderPW" { dims {D: ps} }
%%
output "output.decode"
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define is dimension
defdim is {
%%
deftype "is.label" {bg rh th umth "^"}
deflabeltype "is.label"
defentrytype {in: set(tuple("is.label" {"!" "?" "+" "*"}))
out: set(tuple("is.label" {"!" "?" "+" "*"}))}
%%
useprinciple "principle.graphPWConstraints" { dims {D: is} }
useprinciple "principle.graphPWDist" { dims {D: is} }
useprinciple "principle.treePW" { dims {D: is} }
useprinciple "principle.projectivityPW" { dims {D: is} }
useprinciple "principle.valencyPW" { dims {D: is} }
%%
output "output.decode"
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define psis dimension
defdim psis {
%%
useprinciple "principle.subgraphsDissPW" { dims {D1: is D2: ps} }
%%
output "output.decode"
output "output.pretty"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define lex dimension
defdim lex {
defentrytype {word: string}
% useprinciple "principle.entries" {}
%%
output "output.allDags1"
output "output.allDags2"
output "output.allLatexs1"
output "output.allLatexs2"
%%
useoutput "output.allDags1"
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define id lexical classes
%% roots
defclass "id_root" {
dim id {in: {}
out: {[root "!"]}}}
%%%%%%%%%%%%%%%
%% finite verbs
defclass "id_fin" {
dim id {out: {[subj "!"]}}}
defclass "id_fin_root" {
"id_fin"
dim id {in: {[root "?"]}}}
defclass "id_fin_sub" {
"id_fin"
dim id {in: {[sub "?"]}
out: {[comp "?"]}}}
defclass "id_fin_rel" {
"id_fin"
dim id {in: {[rel "?"]}}}
%% infinite verbs
defclass "id_vinf" {
dim id {in: {[vinf "?"]}
out: {[part "!"]}}}
defclass "id_vbse" {
dim id {in: {[vbse "?"]}}}
defclass "id_vprt" {
dim id {in: {[vprt "?"]}}}
%% main verbs
defclass "id_main" {
dim id {out: {[adv "*"] [pmod "*"]}}}
%% auxiliary verbs
defclass "id_aux" {
dim id {out: {}}}
%%%%%%%%%%%%%%%
%% adverbs, particles and complementizers
%% adverbs
defclass "id_adv" {
dim id {in: {[adv "?"]}}}
%% particles
defclass "id_part" {
dim id {in: {[part "?"]}}}
%% complementizers
defclass "id_comp" {
dim id {in: {[comp "?"]}}}
%%%%%%%%%%%%%%%
%% subcat
%% verbs requiring an object
defclass "id_objc" {
dim id {out: {[obj "!"]}}}
%% verbs requiring an indirect object
defclass "id_iobjc" {
dim id {out: {[iobj "!"]}}}
%% verbs requiring a prepositional object 1
defclass "id_pobj1c" P {
dim id {out: {[pobj1 "!"]}
pobj1: P}}
%% verbs requiring a prepositional object 2
defclass "id_pobj2c" P {
dim id {out: {[pobj2 "!"]}
pobj2: P}}
%% verbs requiring a full infinitive
defclass "id_vinfc" {
dim id {out: {[vinf "!"]}}}
%% verbs requiring a base infinitive
defclass "id_vbsec" {
dim id {out: {[vbse "!"]}}}
%% verbs requiring a past participle
defclass "id_vprtc" {
dim id {out: {[vprt "!"]}}}
%% verbs requiring a subordinate clause
defclass "id_subc" {
dim id {out: {[sub "!"]}}}
%% agreement
defclass "id_1sg" {
dim id {agrs: ($ first & sg)}}
defclass "id_3sg" {
dim id {agrs: ($ third & sg)}}
defclass "id_non13sg" {
dim id {agrs: ($ second & sg) |
agrs: ($ pl)}}
defclass "id_non3sg" {
dim id {agrs: ($ (first|second) & sg) |
agrs: ($ pl)}}
%%%%%%%%%%%%%%%
%% nouns
defclass "id_noun" {
dim id {in: {[subj "?"] [obj "?"] [iobj "?"] [prepc "?"]}}}
%% proper nouns
defclass "id_pnoun" A {
"id_noun"
dim id {agrs: A
out: {[adj "*"] [pmod "*"] [rel "?"]}}}
%% common nouns
defclass "id_cnoun" A {
"id_noun"
dim id {agrs: A
out: {[det "!"] [adj "*"] [pmod "*"] [rel "?"]}}}
%% personal pronouns
defclass "id_perpro" A {
"id_noun"
dim id {agrs: A
out: {[adj "*"] [pmod "*"] [rel "?"]}}}
%% relative pronouns
defclass "id_relpro" A {
"id_noun"
dim id {agrs: A}}
%% wh pronouns
defclass "id_whpro" A {
"id_noun"
dim id {agrs: A}}
%% determiners
defclass "id_det" {
dim id {in: {[det "?"]}}}
%% adjectives
defclass "id_adj" {
dim id {in: {[adj "?"]}}}
%% agreement
defclass "id_sg" {
dim id {agrs: ($ sg)}}
defclass "id_pl" {
dim id {agrs: ($ pl)}}
%%%%%%%%%%%%%%%
%% prepositions
defclass "id_prep" {
dim id {out: {[prepc "!"]}}}
%% prepositional objects
defclass "id_pobj" W {
"id_prep"
dim id {in: {[pobj1 "?"] [pobj2 "?"]}
pagrs: {W}}}
%% prepositional modifiers
defclass "id_pmod" W {
"id_prep"
dim id {in: {[pmod "?"]}
pagrs: {W}}}
defclass "id_padj" W { "id_pmod" {W: W} }
defclass "id_padv" W { "id_pmod" {W: W} }
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define lp lexical classes
%% roots
defclass "lp_root" {
dim lp {in: {}
out: {[root "!"]}
order: <root "^">}}
%%%%%%%%%%%%%%%
%% finite verbs
defclass "lp_fin" {
dim lp {out: {[lbf "?"] [fadvf "*"] [mf1 "?"] [mf2 "?"] [rbf "*"] [padvf "*"] [tadvf "*"] [nf "?"]}}}
defclass "lp_fin_root" {
"lp_fin"
dim lp {in: {[root "?"]}
out: {[vvf "?"] [vf "!"]}}}
defclass "lp_fin_sub" {
"lp_fin"
dim lp {in: {[vvf "?"] [nf "?"]}
out: {[compf "?"] [vf "?"]}}}
defclass "lp_fin_rel" {
"lp_fin"
dim lp {in: {[relf "?"]}
out: {[rprof "!"] [vf "?"]}}}
%% infinite verbs
defclass "lp_vinf" {
dim lp {in: {[rbf "?"]}
out: {[vvf "!"] [lbf "?"] [fadvf "*"] [mf1 "?"] [mf2 "?"] [rbf "*"] [padvf "*"] [tadvf "*"] [nf "?"]}}}
defclass "lp_vbse" {
dim lp {in: {[lbf "?"]}
out: {[lbf "?"]}}}
defclass "lp_vprt" {
dim lp {in: {[lbf "?"]}
out: {[lbf "?"]}}}
%% main verbs
defclass "lp_main" {
dim lp {order: <compf rprof vvf vf fadvf "^" lbf mf1 mf2 rbf padvf tadvf nf>}}
%% auxiliary verb
defclass "lp_aux" {
dim lp {order: <compf rprof vvf vf "^" fadvf lbf mf1 mf2 rbf padvf tadvf nf>}}
%% questions auxiliary verb
defclass "lp_qaux" {
dim lp {order: <compf rprof vvf "^" vf fadvf lbf mf1 mf2 rbf padvf tadvf nf>}}
%%%%%%%%%%%%%%%
%% adverbs, particles and complementizers
%% adverbs
defclass "lp_adv" F {
dim lp {in: {[F "?"] [vvf "?"]}}}
%% particles
defclass "lp_part" {
dim lp {in: {[vvf "?"]}}}
%% complementizers
defclass "lp_comp" {
dim lp {in: {[compf "?"]}}}
%%%%%%%%%%%%%%%
%% nouns
defclass "lp_noun" {
dim lp {in: {[vvf "?"] [vf "?"] [mf1 "?"] [mf2 "?"] [prepcf "?"]}
out: {[detf "?"] [adjf "*"] [padjf "?"] [relf "?"]}
order: <detf adjf "^" padjf relf>}}
%% proper nouns
defclass "lp_pnoun" { "lp_noun" }
%% common nouns
defclass "lp_cnoun" { "lp_pnoun" }
%% personal pronouns
defclass "lp_perpro" { "lp_noun" }
%% relative pronouns
defclass "lp_relpro" {
dim lp {in: {[rprof "?"] [prepcf "?"]}}}
%% wh pronouns
defclass "lp_whpro" {
dim lp {in: {[vvf "?"] [vf "?"] [prepcf "?"]}}}
%% determiners
defclass "lp_det" {
dim lp {in: {[detf "?"]}}}
%% adjectives
defclass "lp_adj" {
dim lp {in: {[adjf "?"]}}}
%%%%%%%%%%%%%%%
%% prepositions
defclass "lp_prep" {
dim lp {out: {[prepcf "?"]}
order: <"^" prepcf>}}
%% prepositional objects
defclass "lp_pobj" {
"lp_prep"
dim lp {in: {[rbf "?"] [vvf "?"] [rprof "?"]}}}
%% noun-modifying prepositions
defclass "lp_padj" {
"lp_prep"
dim lp {in: {[padjf "?"]}}}
%% verb-modifying prepositions
defclass "lp_padv" F {
"lp_prep"
dim lp {in: {[F "?"] [vvf "?"] [rprof "?"]}}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define idlp lexical classes
defclass "idlp_root" {}
%%%%%%%%%%%%%%%
%% finite verbs
defclass "idlp_fin" {
%% block all labels except: det, adj, padj, rel (nouns), part (full
%% infinitives), root, sub, subj, obj, iobj, pobj1, pobj2
dim idlp {blocks: {adv comp pmod sub vbse vinf vprt}}}
defclass "idlp_fin_root" { "idlp_fin" }
defclass "idlp_fin_sub" { "idlp_fin" }
defclass "idlp_fin_rel" { "idlp_fin" }
%% infinite verbs
defclass "idlp_vinf" { dim idlp {blocks: {part vinf vbse vprt}} }
defclass "idlp_vbse" {}
defclass "idlp_vprt" {}
%% main verbs
defclass "idlp_main" {}
%% auxiliary verbs
defclass "idlp_aux" {}
%%%%%%%%%%%%%%%
%% adverbs, particles and complementizers
%% adverbs
defclass "idlp_adv" {}
%% particles
defclass "idlp_part" {}
%% complementizers
defclass "idlp_comp" {}
%%%%%%%%%%%%%%%
%% nouns
defclass "idlp_noun" { dim idlp {blocks: {det adj pmod rel}} }
%% proper nouns
defclass "idlp_pnoun" { "idlp_noun" }
%% common nouns
defclass "idlp_cnoun" { "idlp_noun" }
%% personal pronouns
defclass "idlp_perpro" { "idlp_noun" }
%% relative pronouns
defclass "idlp_relpro" { "idlp_noun" }
%% wh pronouns
defclass "idlp_whpro" { "idlp_noun" }
%% determiners
defclass "idlp_det" {}
%% adjectives
defclass "idlp_adj" {}
%%%%%%%%%%%%%%%
%% prepositions
defclass "idlp_prep" {}
%% prepositional objects
defclass "idlp_pobj" { "idlp_prep" }
%% noun-modifying prepositions
defclass "idlp_padj" { "idlp_prep" }
%% verb-modifying prepositions
defclass "idlp_padv" { "idlp_prep" }
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define pa lexical classes
%% predicate
defclass "pa_pred" {
dim pa {in: {[root "!"]}}}
%% deleted
defclass "pa_del" {
dim pa {in: {[del "!"]}}}
%% roots
defclass "pa_root" {
dim pa {in: {}
out: {[root "*"] [del "*"]}}}
%%%%%%%%%%%%%%%
%% finite verbs
defclass "pa_fin" {}
%% infinite verbs
defclass "pa_vinf" {}
defclass "pa_vbse" {}
defclass "pa_vprt" {}
%% main verbs
defclass "pa_main" {
"pa_pred"
dim pa {in: {[th "?"] [thm "*"]}}}
%% auxiliary verbs
defclass "pa_aux" { "pa_del" }
%%%%%%%%%%%%%%%
%% adverbs, particles and complementizers
%% adverbs
defclass "pa_adv" {
"pa_pred"
dim pa {in: {[thm "*"]}
out: {[thm "!"]}}}
%% particles
defclass "pa_part" { "pa_del" }
%% complementizers
defclass "pa_comp" { "pa_del" }
%%%%%%%%%%%%%%%
%% subcat
%% verbs requiring an agent
defclass "pa_agc" {
dim pa {out: {[ag "!"]}}}
%% verbs requiring a patient
defclass "pa_patc" {
dim pa {out: {[pat "!"]}}}
%% verbs requiring an addressee
defclass "pa_addrc" {
dim pa {out: {[addr "!"]}}}
%% verbs requiring a th
defclass "pa_thc" {
dim pa {out: {[th "!"]}}}
%% subject control/raising
defclass "pa_subjcr" {
dim pa {lockDaughters: {pat addr}}}
%% object control/raising
defclass "pa_objcr" {
dim pa {lockDaughters: {ag addr}}}
%% prepositional objects 1 control/raising
defclass "pa_pobj1cr" {
dim pa {lockDaughters: {ag pat}}}
%% no control/raising
defclass "pa_nocr" {
dim pa {lockDaughters: {ag pat addr}}}
%%%%%%%%%%%%%%%
%% nouns
defclass "pa_noun" {
dim pa {in: {[ag "*"] [pat "*"] [addr "*"] [agm "*"] [patm "*"]}}}
%% proper nouns
defclass "pa_pnoun" { "pa_noun" }
%% common nouns
defclass "pa_cnoun" {
"pa_noun"
dim pa {out: {[det "!"]}}}
%% personal pronouns
defclass "pa_perpro" { "pa_noun" }
%% relative pronouns
defclass "pa_relpro" {
"pa_noun"
dim pa {out: {[agm "!"]}}}
%% wh pronouns
defclass "pa_whpro" { "pa_noun" }
%% determiners
defclass "pa_det" {
dim pa {in: {[det "!"]}}}
%% adjectives
defclass "pa_adj" {
"pa_pred"
dim pa {out: {[agm "!"]}}}
%%%%%%%%%%%%%%%
%% prepositions
%% prepositional objects
defclass "pa_pobj" { "pa_del" }
%% noun-modifying prepositions
defclass "pa_padj" {
"pa_adj"
dim pa {out: {[patm "!"]}}}
%% verb-modifying prepositions
defclass "pa_padv" {
"pa_adv"
dim pa {out: {[patm "!"]}}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define idpa lexical classes
%% roots
defclass "idpa_root" {}
%%%%%%%%%%%%%%%
%% finite verbs
defclass "idpa_fin" {}
%% infinite verbs
defclass "idpa_vinf" {}
defclass "idpa_vbse" {}
defclass "idpa_vprt" {}
%% main verbs
defclass "idpa_main" {}
%% auxiliary verbs
defclass "idpa_aux" {}
%%%%%%%%%%%%%%%
%% adverbs, particles and complementizers
%% adverbs
defclass "idpa_adv" {
dim idpa {linkMother: {thm}}}
%% particles
defclass "idpa_part" {}
%% complementizers
defclass "idpa_comp" {}
%%%%%%%%%%%%%%%
%% subcat
%% realize the agent by the subject (or higher up)
defclass "idpa_ag_super" {
dim idpa {linkAboveBelow1or2Start: ($ ag & (subj | obj | iobj | pobj1 | pobj2))}}
%% realize the patient by the subject (or higher up)
defclass "idpa_pat_super" {
dim idpa {linkAboveBelow1or2Start: ($ pat & (subj | obj | iobj | pobj1 | pobj2))}}
%% realize the addressee by the subject (or higher up)
defclass "idpa_addr_super" {
dim idpa {linkAboveBelow1or2Start: ($ addr & (subj | obj | iobj | pobj1 | pobj2))}}
%% realize the patient by the object
defclass "idpa_pat_obj" {
dim idpa {linkBelow1or2Start: {[pat obj]}}}
%% realize the addressee by the indirect object
defclass "idpa_addr_iobj" {
dim idpa {linkBelow1or2Start: {[addr iobj]}}}
%% realize the addressee by a prepositional object 1
defclass "idpa_addr_pobj1" {
dim idpa {linkBelow1or2Start: {[addr pobj1]}}}
%% realize the agent by a prepositional object 2
defclass "idpa_ag_pobj2" {
dim idpa {linkBelow1or2Start: {[ag pobj2]}}}
%% realize the th by a full infinitive
defclass "idpa_th_vinf" {
dim idpa {linkBelowStart: {[th vinf]}}}
%% realize the th by a subordinate sentence
defclass "idpa_th_sub" {
dim idpa {linkBelowStart: {[th sub]}}}
%% subject control/raising
defclass "idpa_subjcr" {
dim idpa {lockDaughters: {obj iobj}}}
%% object control/raising
defclass "idpa_objcr" {
dim idpa {lockDaughters: {subj iobj}}}
%% prepositional objects 1 control/raising
defclass "idpa_pobj1cr" {}
%% no control/raising
defclass "idpa_nocr" {}
%%%%%%%%%%%%%%%
%% nouns
%% proper nouns
defclass "idpa_pnoun" {}
%% common nouns
defclass "idpa_cnoun" {
dim idpa {linkDaughterEnd: {[det det]}}}
%% personal pronouns
defclass "idpa_perpro" {}
%% relative pronouns
defclass "idpa_relpro_agree" {
dim idpa {partialAgree: {agm}}}
defclass "idpa_relpro_link" {
dim idpa {linkAboveEnd: {[agm rel]}}}
defclass "idpa_relpro" {
"idpa_relpro_agree"
"idpa_relpro_link"}
%% wh pronouns
defclass "idpa_whpro" {}
%% determiners
defclass "idpa_det" {}
%% adjectives
defclass "idpa_adj" {
dim idpa {linkMother: {agm}}}
%%%%%%%%%%%%%%%
%% prepositions
%% prepositional objects
defclass "idpa_pobj" {}
%% noun-modifying prepositions
defclass "idpa_padj" {
"idpa_adj"
dim idpa {linkDaughterEnd: {[patm prepc]}}}
%% verb-modifying prepositions
defclass "idpa_padv" {
"idpa_adv"
dim idpa {linkDaughterEnd: {[patm prepc]}}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define sc lexical classes
defclass "sc_cont" {
dim sc {in: {[r "?"] [s "?"] [root "?"]}}}
defclass "sc_nocont" {
dim sc {in: {[del "!"]}}}
defclass "sc_sc" {
dim sc {out: {[s "!"]}}}
%% roots
defclass "sc_root" {
dim sc {in: {}
out: {[root "!"] [del "*"]}}}
%%%%%%%%%%%%%%%
%% finite verbs
defclass "sc_fin" {}
%% infinite verbs
defclass "sc_vinf" {}
defclass "sc_vbse" {}
defclass "sc_vprt" {}
%% main verbs
defclass "sc_main" { "sc_cont" }
%% auxiliary verbs
defclass "sc_aux" { "sc_nocont" }
%%%%%%%%%%%%%%%
%% adverbs, particles and complementizers
%% adverbs
defclass "sc_adv" {
"sc_cont"
"sc_sc"}
%% particles
defclass "sc_part" { "sc_nocont" }
%% complementizers
defclass "sc_comp" { "sc_nocont" }
%%%%%%%%%%%%%%%
%% nouns
defclass "sc_noun" {
"sc_cont"
"sc_sc"
dim sc {out: {[r "*"]}}}
%% proper nouns
defclass "sc_pnoun" { "sc_noun" }
%% common nouns
defclass "sc_cnoun" {
"sc_noun"
dim sc {out: {[q "!"]}}}
%% personal pronouns
defclass "sc_perpro" { "sc_noun" }
%% relative pronouns
defclass "sc_relpro" { "sc_noun" }
%% wh pronouns
defclass "sc_whpro" { "sc_noun" }
%% determiners
defclass "sc_det" {
dim sc {in: {[q "?"]}}}
%% adjectives
defclass "sc_adj" { "sc_cont" }
%%%%%%%%%%%%%%%
%% prepositions
%% prepositional objects
defclass "sc_pobj" { "sc_nocont" }
%% noun-modifying prepositions
defclass "sc_padj" { "sc_cont" }
%% verb-modifying prepositions
defclass "sc_padv" {
"sc_cont"
"sc_sc"}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define pasc lexical classes
defclass "pasc_modn" {
dim pasc {linkAboveEnd: {[agm r]}}}
defclass "pasc_modv" {
dim pasc {linkBelowStart: {[thm s]}}}
%% roots
defclass "pasc_root" {}
%%%%%%%%%%%%%%%
%% finite verbs
defclass "pasc_fin" {}
%% infinite verbs
defclass "pasc_vinf" {}
defclass "pasc_vbse" {}
defclass "pasc_vprt" {}
%% main verbs
defclass "pasc_main" {
dim pasc {linkAboveEnd: {[ag s] [pat s] [addr s]}
linkBelowStart: {[th s]}}}
%% auxiliary verbs
defclass "pasc_aux" {}
%%%%%%%%%%%%%%%
%% adverbs, particles and complementizers
%% adverbs
defclass "pasc_adv" { "pasc_modv" }
%% particles
defclass "pasc_part" {}
%% complementizers
defclass "pasc_comp" {}
%%%%%%%%%%%%%%%
%% nouns
%% proper nouns
defclass "pasc_pnoun" {}
%% common nouns
defclass "pasc_cnoun" {
dim pasc {linkDaughterEnd: {[det q]}}}
%% personal pronouns
defclass "pasc_perpro" {}
%% relative pronouns
defclass "pasc_relpro" { "pasc_modn" }
%% wh pronouns
defclass "pasc_whpro" {}
%% determiners
defclass "pasc_det" {}
%% adjectives
defclass "pasc_adj" { "pasc_modn" }
%%%%%%%%%%%%%%%
%% prepositions
defclass "pasc_pmod" {
dim pasc {linkAboveEnd: {[patm s]}}}
%% prepositional objects
defclass "pasc_pobj" {}
%% noun-modifying prepositions
defclass "pasc_padj" {
"pasc_modn"
"pasc_pmod"}
%% verb-modifying prepositions
defclass "pasc_padv" {
"pasc_modv"
"pasc_pmod"}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define clls lexical classes
defclass "clls_nocont" A {
dim clls {cons: ""
anchor: A
roots: {}}}
%% roots
defclass "clls_root" A {
"clls_nocont" {A: A}}
%%%%%%%%%%%%%%%
%% finite verbs
defclass "clls_fin" {}
%% infinite verbs
defclass "clls_vinf" {}
defclass "clls_vbse" {}
defclass "clls_vprt" {}
%% main verbs
defclass "clls_main" {}
%% auxiliary verbs
defclass "clls_aux" {
dim clls {cons: ""}}
%%%%%%%%%%%%%%%
%% adverbs, particles and complementizers
%% adverbs
defclass "clls_adv" A {
dim clls {cons: "label(x1 '@'(x2 x3)) label(x2 anchor)"
anchor: A
roots: {x1}
dom: {s: {x3}}}}
%% particles
defclass "clls_part" A {
"clls_nocont" {A: A}}
%% complementizers
defclass "clls_comp" A {
"clls_nocont" {A: A}}
%%%%%%%%%%%%%%%
%% subcat
defclass "clls_intrans" {
dim clls {cons: "label(x1 '@'(x2 x3)) label(x2 anchor) label(x3 var)"
roots: {x1}
var: {ag: {x3}}}}
defclass "clls_trans" {
dim clls {cons: "label(x1 '@'(x2 x3)) label(x2 '@'(x4 x5)) label(x4 anchor) label(x5 var) label(x3 var)"
roots: {x1}
var: {ag: {x3}
pat: {x5}}}}
defclass "clls_ditrans" {
dim clls {cons: "label(x1 '@'(x2 x3)) label(x2 '@'(x4 x5)) label(x4 '@'(x6 x7)) label(x6 anchor) label(x7 var) label(x5 var) label(x3 var)"
roots: {x1}
var: {ag: {x3}
pat: {x5}
addr: {x7}}}}
defclass "clls_subjsubjrais" {
dim clls {cons: "label(x1 '@'(x2 x3)) label(x2 anchor)"
roots: {x1}
dom: {s: {x3}}}}
defclass "clls_subjobjrais" {
dim clls {cons: "label(x1 '@'(x2 x5)) label(x2 '@'(x3 x4)) label(x3 anchor) label(x5 var)"
roots: {x1}
dom: {s: {x4}}
var: {ag: {x5}}}}
defclass "clls_itrsubjsubjctrl" { "clls_subjobjrais" }
defclass "clls_trsubjsubjctrl" {
dim clls {cons: "label(x1 '@'(x2 x7)) label(x2 '@'(x3 x6)) label(x3 '@'(x4 x5)) label(x4 anchor) label(x6 var) label(x7 var)"
roots: {x1}
dom: {s: {x4}}
var: {ag: {x7}
pat: {x6}}}}
defclass "clls_subjobjctrl" { "clls_trsubjsubjctrl" }
defclass "clls_subjpobj1ctrl" {
dim clls {cons: "label(x1 '@'(x2 x7)) label(x2 '@'(x3 x6)) label(x3 '@'(x4 x5)) label(x4 anchor) label(x6 var) label(x7 var)"
roots: {x1}
dom: {s: {x4}}
var: {ag: {x7}
addr: {x6}}}}
defclass "clls_itrsubc" { "clls_subjobjrais" }
%%%%%%%%%%%%%%%
%% nouns
%% proper nouns
defclass "clls_pnoun" A {
dim clls {cons: "label(x1 '@'(x2 x3)) label(x2 anchor) label(x3 lambda(x4))"
anchor: A
roots: {x1}
dom: {s: {x4}}
lam: {ag: {x3}
pat: {x3}
addr: {x3}
agm: {x3}
patm: {x3}}}}
%% common nouns
defclass "clls_cnoun" A {
dim clls {cons: "label(x1 '@'(x2 x8)) label(x2 '@'(x3 x4)) dom(x4 x5) label(x5 '@'(x6 x7)) label(x6 anchor) label(x7 var) label(x8 lambda(x9)) lam(x7 x8)"
anchor: A
roots: {x1}
dom: {q: {x3}
r: {x4}
s: {x9}}
lam: {ag: {x8}
pat: {x8}
addr: {x8}
agm: {x8}
patm: {x8}}}}
%% personal pronouns
defclass "clls_perpro" A { "clls_pnoun" {A: A} }
%% relative pronouns
defclass "clls_relpro" {
dim clls {cons: "label(x1 '@'(x2 x3)) label(x2 var) label(x3 lambda(x4))"
anchor: ""
roots: {x1}
dom: {s: {x4}}
lam: {ag: {x3}
pat: {x3}
addr: {x3}}
var: {agm: {x2}}}}
%% wh pronouns
defclass "clls_whpro" A { "clls_pnoun" {A: A} }
%% determiners
defclass "clls_det" A {
dim clls {cons: "label(x1 anchor)"
anchor: A
roots: {x1}}}
%% adjectives
defclass "clls_adj" A {
dim clls {cons: "label(x1 '@'(x2 x3)) label(x2 anchor) label(x3 var)"
anchor: A
roots: {x1}
var: {agm: {x3}}}}
%%%%%%%%%%%%%%%
%% prepositions
%% prepositional objects
defclass "clls_pobj" A {
"clls_nocont" {A: A}}
%% noun-modifying prepositions
defclass "clls_padj" A {
dim clls {cons: "label(x1 '@'(x2 x3)) label(x2 '@'(x4 x5)) label(x4 anchor) label(x5 var) label(x3 var)"
anchor: A
roots: {x1}
var: {agm: {x3}
patm: {x5}}}}
%% verb-modifying prepositions
defclass "clls_padv" A {
dim clls {cons: "label(x1 '@'(x2 x3)) label(x2 '@'(x4 x5)) label(x4 anchor) label(x5 var)"
anchor: A
roots: {x1}
dom: {s: {x3}}
var: {patm: {x5}}}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define ps lexical classes
%% roots
defclass "ps_root" {
dim ps {in: {}
out: {[bt1 "*"] [bt2 "*"] [pa1bt1 "*"] [pa2bt2 "*"]}
order: {[bt1 "^"] [bt2 "^"] [pa1bt1 "^"] [pa2bt2 "^"]}}}
%% boundary tones/pitch accents and boundary tones
defclass "ps_bt" BT PA {
dim ps {in: {[BT "?"]}
out: {[PA "*"] [ua "*"]}
order: {[PA "^"] [ua "^"]}}}
defclass "ps_bt1" { "ps_bt" {BT: bt1 PA: pa1} }
defclass "ps_bt2" { "ps_bt" {BT: bt2 PA: pa2} }
defclass "ps_pa1bt1" { "ps_bt" {BT: pa1bt1 PA: pa1} }
defclass "ps_pa2bt2" { "ps_bt" {BT: pa2bt2 PA: pa2} }
%% pitch accents
defclass "ps_pa" PA {
dim ps {in: {[PA "?"]}}}
defclass "ps_pa1" { "ps_pa" {PA: pa1} }
defclass "ps_pa2" { "ps_pa" {PA: pa2} }
%% unaccented words
defclass "ps_ua" {
dim ps {in: {[ua "?"]}}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define is lexical classes
%% roots
defclass "is_root" {
dim is {in: {}
out: ({[th "*"] [rh "+"]}|{[umth "*"] [rh "+"]})}}
%% themes
defclass "is_tf" {
dim is {in: {[th "?"]}
out: {[bg "*"]}}}
%% rhemes
defclass "is_rf" {
dim is {in: {[rh "?"]}
out: {[bg "*"]}}}
%% non-foci
defclass "is_nf" {
dim is {in: {[bg "?"] [umth "?"]}}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define psis lexical classes
%% roots
defclass "psis_root" {
"ps_root"
"is_root"}
%% themes
defclass "psis_th_pa" {
"ps_pa1"
"is_tf"}
defclass "psis_th_pabt" {
"ps_pa1bt1"
"is_tf"}
defclass "psis_th_bt" {
"ps_bt1"
"is_nf"}
%% rhemes
defclass "psis_rh_pa" {
"ps_pa2"
"is_rf"}
defclass "psis_rh_pabt" {
"ps_pa2bt2"
"is_rf"}
defclass "psis_rh_bt" {
"ps_bt2"
"is_nf"}
%% non-foci
defclass "psis_ua" {
"ps_ua"
"is_nf"}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define lex lexical classes
defclass "lex_root" W {
dim lex {word: W}}
defclass "lex_pa1" W {
dim lex {word: W@"_L+H*"}}
defclass "lex_pa2" W {
dim lex {word: W@"_H*"}}
defclass "lex_bt1" W {
dim lex {word: W@"_LH%"}}
defclass "lex_bt2" W {
dim lex {word: W@"_LL%"}}
defclass "lex_pa1bt1" W {
dim lex {word: W@"_L+H*_LH%"}}
defclass "lex_pa2bt2" W {
dim lex {word: W@"_H*_LL%"}}
defclass "lex_ua" W {
dim lex {word: W}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% lex lexical classes
%% enter
defclass "lex_enter" W {
("psis_th_pa" & "lex_pa1" {W: W}) |
("psis_th_bt" & "lex_bt1" {W: W}) |
("psis_th_pabt" & "lex_pa1bt1" {W: W}) |
("psis_rh_pa" & "lex_pa2" {W: W}) |
("psis_rh_bt" & "lex_bt2" {W: W}) |
("psis_rh_pabt" & "lex_pa2bt2" {W: W}) |
("psis_ua" & "lex_ua" {W: W})}
%% roots
defclass "root" W {
"id_root"
"lp_root"
"idlp_root"
"pa_root"
"idpa_root"
"sc_root"
"pasc_root"
"clls_root" {A: W}
"psis_root"
"lex_root" {W: W}}
%%%%%%%%%%%%%%%
%% finite verbs
defclass "lex_fin" {
("id_fin_root" &
"lp_fin_root" &
"idlp_fin_root") |
("id_fin_sub" &
"lp_fin_sub" &
"idlp_fin_sub") |
("id_fin_rel" &
"lp_fin_rel" &
"idlp_fin_rel")
"pa_fin"
"idpa_fin"
"sc_fin"
"pasc_fin"
"clls_fin"}
defclass "lex_fin_root" {
"id_fin_root"
"lp_fin_root"
"idlp_fin_root"
"pa_fin"
"idpa_fin"
"sc_fin"
"pasc_fin"
"clls_fin"}
defclass "lex_fin2" W3sg Wnon3sg {
"lex_fin"
("id_3sg" &
"lex_enter" {W: W3sg}) |
("id_non3sg" &
"lex_enter" {W: Wnon3sg})}
defclass "lex_fin3" W1sg W3sg Wnon13sg {
"lex_fin"
("id_1sg" &
"lex_enter" {W: W1sg}) |
("id_3sg" &
"lex_enter" {W: W3sg}) |
("id_non13sg" &
"lex_enter" {W: Wnon13sg})}
defclass "lex_fin2_qaux" W3sg Wnon3sg {
"lex_fin_root"
("id_3sg" &
"lex_enter" {W: W3sg}) |
("id_non3sg" &
"lex_enter" {W: Wnon3sg})}
defclass "lex_fin3_qaux" W1sg W3sg Wnon13sg {
"lex_fin_root"
("id_1sg" &
"lex_enter" {W: W1sg}) |
("id_3sg" &
"lex_enter" {W: W3sg}) |
("id_non13sg" &
"lex_enter" {W: Wnon13sg})}
%% infinite verbs
defclass "lex_vinf" W {
"id_vinf"
"lp_vinf"
"idlp_vinf"
"pa_vinf"
"idpa_vinf"
"sc_vinf"
"pasc_vinf"
"clls_vinf"
"lex_enter" {W: W}}
defclass "lex_vbse" W {
"id_vbse"
"lp_vbse"
"idlp_vbse"
"pa_vbse"
"idpa_vbse"
"sc_vbse"
"pasc_vbse"
"clls_vbse"
"lex_enter" {W: W}}
defclass "lex_vprt" W {
"id_vprt"
"lp_vprt"
"idlp_vprt"
"pa_vprt"
"idpa_vprt"
"sc_vprt"
"pasc_vprt"
"clls_vprt"
"lex_enter" {W: W}}
defclass "lex_infin" Winf Wprt {
"lex_vinf" {W: Winf} |
"lex_vbse" {W: Winf} |
"lex_vprt" {W: Wprt}}
defclass "verb" W3sg Wnon3sg Wprt {
"lex_fin2" {W3sg: W3sg
Wnon3sg: Wnon3sg} |
"lex_infin" {Winf: Wnon3sg
Wprt: Wprt}
dim clls {anchor: Wnon3sg}}
defclass "verb5" W1sg W3sg Wnon13sg Winf Wprt {
"lex_fin3" {W1sg: W1sg
W3sg: W3sg
Wnon13sg: Wnon13sg} |
"lex_infin" {Winf: Winf
Wprt: Wprt}
dim clls {anchor: Winf}}
defclass "verb_qaux" W3sg Wnon3sg {
"lex_fin2_qaux" {W3sg: W3sg
Wnon3sg: Wnon3sg}
dim clls {anchor: Wnon3sg}}
defclass "verb_qaux3" W1sg W3sg Wnon13sg {
"lex_fin3_qaux" {W1sg: W1sg
W3sg: W3sg
Wnon13sg: Wnon13sg}
dim clls {anchor: Wnon13sg}}
%%%%%%%%%%%%%%%
%% adverbs, particles and complementizers
%% adverbs
defclass "lex_adv" W F {
"id_adv"
"lp_adv" {F: F}
"idlp_adv"
"pa_adv"
"idpa_adv"
"sc_adv"
"pasc_adv"
"clls_adv" {A: W}
"lex_enter" {W: W}}
defclass "advf" W {
"lex_adv" {W: W
F: fadvf}}
defclass "advp" W {
"lex_adv" {W: W
F: padvf}}
defclass "advt" W {
"lex_adv" {W: W
F: tadvf}}
%% particles
defclass "part" W {
"id_part"
"lp_part"
"idlp_part"
"pa_part"
"idpa_part"
"sc_part"
"pasc_part"
"clls_part" {A: W}
"lex_enter" {W: W}}
%% complementizers
defclass "comp" W {
"id_comp"
"lp_comp"
"idlp_comp"
"pa_comp"
"idpa_comp"
"sc_comp"
"pasc_comp"
"clls_comp" {A: W}
"lex_enter" {W: W}}
%%%%%%%%%%%%%%%
%% subcat
%% auxiliary
defclass "lex_aux" {
"id_aux"
"idlp_aux"
"pa_aux"
"idpa_aux"
"sc_aux"
"pasc_aux"
"clls_aux"}
%% declarative auxiliary
defclass "lex_daux" {
"lex_aux"
"lp_aux"}
%% question auxiliary
defclass "lex_qaux" {
"lex_aux"
"lp_qaux"}
%% main verb
defclass "lex_main" {
"id_main"
"lp_main"
"idlp_main"
"pa_main"
"idpa_main"
"sc_main"
"pasc_main"
"clls_main"}
%%
defclass "lex_ag_super" {
"pa_agc"
"idpa_ag_super"}
defclass "lex_pat_super" {
"pa_patc"
"idpa_pat_super"}
defclass "lex_addr_super" {
"pa_addrc"
"idpa_addr_super"}
defclass "lex_pat_obj" {
"id_objc"
"pa_patc"
"idpa_pat_obj"}
defclass "lex_addr_iobj" {
"id_iobjc"
"pa_addrc"
"idpa_addr_iobj"}
defclass "lex_addr_pobj1" {
"id_pobj1c" {P: {to}}
"pa_addrc"
"idpa_addr_pobj1"}
defclass "lex_ag_pobj2" {
"id_pobj2c" {P: {by}}
"pa_agc"
"idpa_ag_pobj2"}
defclass "lex_no_ag" {}
%%
defclass "lex_intrans" {
"lex_main"
"lex_ag_super"}
defclass "lex_trans_act" {
"lex_main"
"lex_ag_super"
"lex_pat_obj"}
defclass "lex_trans_pas" {
dim id {in: {[vprt "!"]}}
"lex_main"
"lex_pat_super"
("lex_ag_pobj2" | "lex_no_ag")}
defclass "lex_trans" {
"lex_trans_act" | "lex_trans_pas"}
%% Mary gives Peter the book .
%% Mary gives the book to Peter .
defclass "lex_ditrans_act" {
"lex_trans_act"
("lex_addr_iobj" | "lex_addr_pobj1")}
%% the book is given to Peter by Mary .
%% Peter is given the book by Mary .
defclass "lex_ditrans_pas" {
dim id {in: {[vprt "!"]}}
"lex_main"
( "lex_ag_pobj2" | "lex_no_ag" )
(( "lex_pat_super" & "lex_addr_pobj1") |
( "lex_addr_super" & "lex_pat_obj"))}
defclass "lex_ditrans" {
"lex_ditrans_act" | "lex_ditrans_pas"}
defclass "lex_vinfc" {
"id_vinfc"
"pa_thc"
"idpa_th_vinf"
"sc_sc"}
defclass "lex_vbsec" {
"id_vbsec"}
defclass "lex_vprtc" {
"id_vprtc"}
%% subject control/raising
defclass "lex_subjcr" {
"pa_subjcr"
"idpa_subjcr"}
%% object control/raising
defclass "lex_objcr" {
"pa_objcr"
"idpa_objcr"}
%% prepositional objects 1 control/raising
defclass "lex_pobj1cr" {
"pa_pobj1cr"
"idpa_pobj1cr"}
%% no /control/raising
defclass "lex_nocr" {
"pa_nocr"
"idpa_nocr"}
defclass "lex_subc" {
"id_subc"
"pa_thc"
"idpa_th_sub"
"sc_sc"}
%%
defclass "aux" {
"lex_daux"
"lex_subjcr"
"lex_vbsec"}
defclass "qaux" {
"lex_qaux"
"lex_subjcr"
"lex_vbsec"}
defclass "paux" {
"lex_daux"
"lex_subjcr"
"lex_vprtc"}
defclass "qpaux" {
"lex_qaux"
"lex_subjcr"
"lex_vprtc"}
defclass "intrans" {
"lex_intrans"
"lex_nocr"
"clls_intrans"}
defclass "trans" {
"lex_trans"
"lex_nocr"
"clls_trans"}
defclass "ditrans" {
"lex_ditrans"
"lex_nocr"
"clls_ditrans"}
%% subject-to-subject raising
defclass "subjsubjrais" {
"lex_main"
"lex_vinfc"
"lex_subjcr"
"clls_subjsubjrais"}
%% subject-to-object raising
defclass "subjobjrais" {
"lex_intrans"
"id_objc"
"lex_vinfc"
"lex_objcr"
"clls_subjobjrais"}
%% subject-to-subject control
defclass "itrsubjsubjctrl" {
"lex_intrans"
"lex_vinfc"
"lex_subjcr"
"clls_itrsubjsubjctrl"}
defclass "trsubjsubjctrl" {
"lex_trans"
"lex_vinfc"
"lex_subjcr"
"clls_trsubjsubjctrl"}
%% subject-to-object control
defclass "subjobjctrl" {
"lex_trans"
"lex_vinfc"
"lex_objcr"
"clls_subjobjctrl"}
%% subject-to-prepositional object 1 control
defclass "subjpobj1ctrl" {
"lex_intrans"
"lex_addr_pobj1"
"lex_vinfc"
"lex_pobj1cr"
"clls_subjpobj1ctrl"}
%% subordinate clauses
defclass "itrsubc" {
"lex_intrans"
"lex_subc"
"lex_nocr"
"clls_itrsubc"}
%%%%%%%%%%%%%%%
%% nouns
%% proper nouns
defclass "pnoun" W A {
"id_pnoun" {A: A}
"lp_pnoun"
"idlp_pnoun"
"pa_pnoun"
"idpa_pnoun"
"sc_pnoun"
"pasc_pnoun"
"clls_pnoun" {A: W}
"lex_enter" {W: W}}
%% common nouns
defclass "cnoun" Wsg Wpl Asg Apl {
"lp_cnoun"
"idlp_cnoun"
"pa_cnoun"
"idpa_cnoun"
"sc_cnoun"
"pasc_cnoun"
"clls_cnoun" {A: Wsg}
("id_cnoun" {A: Asg} &
"lex_enter" {W: Wsg}) |
("id_cnoun" {A: Apl} &
"lex_enter" {W: Wpl})}
%% personal pronouns
defclass "perpro" W A {
"id_perpro" {A: A}
"lp_perpro"
"idlp_perpro"
"pa_perpro"
"idpa_perpro"
"sc_perpro"
"pasc_perpro"
"clls_perpro" {A: W}
"lex_enter" {W: W}}
%% relative pronouns
defclass "relpro" W A {
"id_relpro" {A: A}
"lp_relpro"
"idlp_relpro"
"pa_relpro"
"idpa_relpro"
"sc_relpro"
"pasc_relpro"
"clls_relpro"
"lex_enter" {W: W}}
%% wh pronouns
defclass "whpro" W A {
"id_whpro" {A: A}
"lp_whpro"
"idlp_whpro"
"pa_whpro"
"idpa_whpro"
"sc_whpro"
"pasc_whpro"
"clls_whpro" {A: W}
"lex_enter" {W: W}}
%% determiners
defclass "det" W {
"id_det"
"lp_det"
"idlp_det"
"pa_det"
"idpa_det"
"sc_det"
"pasc_det"
"clls_det" {A: W}
"lex_enter" {W: W}}
defclass "detsg" W {
"det" {W: W}
"id_sg"}
defclass "detpl" W {
"det" {W: W}
"id_pl"}
%% adjectives
defclass "adj" W {
"id_adj"
"lp_adj"
"idlp_adj"
"pa_adj"
"idpa_adj"
"sc_adj"
"pasc_adj"
"clls_adj" {A: W}
"lex_enter" {W: W}}
%%%%%%%%%%%%%%%
%% prepositions
%% prepositional objects
defclass "pobj" W {
"id_pobj" {W: W}
"lp_pobj"
"idlp_pobj"
"pa_pobj"
"idpa_pobj"
"sc_pobj"
"pasc_pobj"
"clls_pobj" {A: W}
"lex_enter" {W: W}}
%% noun-modifying prepositions
defclass "padj" W {
"id_padj" {W: W}
"lp_padj"
"idlp_padj"
"pa_padj"
"idpa_padj"
"sc_padj"
"pasc_padj"
"clls_padj" {A: W}
"lex_enter" {W: W}}
%% verb-modifying prepositions
defclass "lex_padv" W F {
"id_padv" {W: W}
"lp_padv" {F: F}
"idlp_padv"
"pa_padv"
"idpa_padv"
"sc_padv"
"pasc_padv"
"clls_padv" {A: W}
"lex_enter" {W: W}}
defclass "padvp" W {
"lex_padv" {W: W
F: padvf}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% define lexical entries
%% roots
defentry {
"root" {W: "."}}
defentry {
"root" {W: "?"}}
%%%%%%%%%%%%%%%
%% verbs
defentry {
"verb" {W3sg: "does"
Wnon3sg: "do"
Wprt: "done"}
"aux"}
defentry {
"verb" {W3sg: "has"
Wnon3sg: "have"
Wprt: "had"}
"paux"}
defentry {
"verb5" {W1sg: "am"
W3sg: "is"
Wnon13sg: "are"
Winf: "be"
Wprt: "been"}
"paux"}
defentry {
"verb_qaux" {W3sg: "does"
Wnon3sg: "do"}
"qaux"}
defentry {
"verb_qaux" {W3sg: "has"
Wnon3sg: "have"}
"qpaux"}
defentry {
"verb_qaux3" {W1sg: "am"
W3sg: "is"
Wnon13sg: "are"}
"qpaux"}
%%
defentry {
"verb" {W3sg: "admires"
Wnon3sg: "admire"
Wprt: "admired"}
"trans"}
defentry {
"verb" {W3sg: "appeals"
Wnon3sg: "appeal"
Wprt: "appealed"}
"subjpobj1ctrl"}
defentry {
"verb" {W3sg: "assigns"
Wnon3sg: "assign"
Wprt: "assigned"}
"ditrans"}
defentry {
"verb" {W3sg: "believes"
Wnon3sg: "believe"
Wprt: "believed"}
"subjobjrais" | "itrsubc"}
defentry {
"verb" {W3sg: "directs"
Wnon3sg: "direct"
Wprt: "directed"}
"trans"}
defentry {
"verb" {W3sg: "eats"
Wnon3sg: "eat"
Wprt: "eaten"}
"trans"}
defentry {
"verb" {W3sg: "expects"
Wnon3sg: "expect"
Wprt: "expected"}
"subjobjctrl"}
defentry {
"verb" {W3sg: "finds"
Wnon3sg: "find"
Wprt: "found"}
"trans"}
defentry {
"verb" {W3sg: "gives"
Wnon3sg: "give"
Wprt: "given"}
"ditrans"}
defentry {
"verb" {W3sg: "hates"
Wnon3sg: "hate"
Wprt: "hated"}
"trans"}
defentry {
"verb" {W3sg: "hums"
Wnon3sg: "hum"
Wprt: "hummed"}
"intrans"}
defentry {
"verb" {W3sg: "laughs"
Wnon3sg: "laugh"
Wprt: "laughed"}
"intrans"}
defentry {
"verb" {W3sg: "likes"
Wnon3sg: "like"
Wprt: "liked"}
"trans"}
defentry {
"verb" {W3sg: "loves"
Wnon3sg: "love"
Wprt: "loved"}
"trans"}
defentry {
"verb" {W3sg: "marries"
Wnon3sg: "marry"
Wprt: "married"}
"trans"}
defentry {
"verb" {W3sg: "persuades"
Wnon3sg: "persuade"
Wprt: "persuaded"}
"subjobjctrl"}
defentry {
"verb" {W3sg: "promises"
Wnon3sg: "promise"
Wprt: "promised"}
"trsubjsubjctrl"}
defentry {
"verb" {W3sg: "proves"
Wnon3sg: "prove"
Wprt: "proven"}
"trans"}
defentry {
"verb" {W3sg: "reads"
Wnon3sg: "read"
Wprt: "read"}
( "intrans" | "trans" )}
defentry {
"verb" {W3sg: "says"
Wnon3sg: "say"
Wprt: "said"}
"itrsubc"}
defentry {
"verb" {W3sg: "sees"
Wnon3sg: "see"
Wprt: "seen"}
"trans"}
defentry {
"verb" {W3sg: "seems"
Wnon3sg: "seem"
Wprt: "seemed"}
"subjsubjrais"}
defentry {
"verb" {W3sg: "sleeps"
Wnon3sg: "sleep"
Wprt: "slept"}
"intrans"}
defentry {
"verb" {W3sg: "smiles"
Wnon3sg: "smile"
Wprt: "smiled"}
"intrans"}
defentry {
"verb" {W3sg: "thinks"
Wnon3sg: "think"
Wprt: "thought"}
"itrsubc"}
defentry {
"verb" {W3sg: "tries"
Wnon3sg: "try"
Wprt: "tried"}
"itrsubjsubjctrl"}
defentry {
"verb" {W3sg: "understands"
Wnon3sg: "understand"
Wprt: "understood"}
( "intrans" | "trans" )}
defentry {
"verb" {W3sg: "visits"
Wnon3sg: "visit"
Wprt: "visited"}
"trans"}
defentry {
"verb" {W3sg: "wants"
Wnon3sg: "want"
Wprt: "wanted"}
"itrsubjsubjctrl"}
%% adverbs
defentry {
"advf" {W: "always"}}
defentry {
"advp" {W: "behind"}}
defentry {
"advp" {W: "carefully"}}
defentry {
"advp" {W: "here"}}
defentry {
"advf" {W: "never"}}
defentry {
"advf" {W: "not"}}
defentry {
"advt" {W: "now"}}
defentry {
"advf" {W: "often"}}
defentry {
"advt" {W: "recently"}}
defentry {
"advp" {W: "slowly"}}
defentry {
"advt" {W: "sometimes"}}
defentry {
"advt" {W: "then"}}
defentry {
"advp" {W: "there"}}
defentry {
"advt" {W: "today"}}
defentry {
"advf" {W: "usually"}}
defentry {
"advp" {W: "violently"}}
defentry {
"advt" {W: "yesterday"}}
%% particles
defentry {
"part" {W: "to"}}
%% complementizers
defentry {
"comp" {W: "that"}}
%%%%%%%%%%%%%%%
%% proper nouns
defentry {
"pnoun" {W: "annie"
A: ($ third & sg & fem)}}
defentry {
"pnoun" {W: "fred"
A: ($ third & sg & masc)}}
defentry {
"pnoun" {W: "john"
A: ($ third & sg & masc)}}
defentry {
"pnoun" {W: "manny"
A: ($ third & sg & masc)}}
defentry {
"pnoun" {W: "marcel"
A: ($ third & sg & masc)}}
defentry {
"pnoun" {W: "mary"
A: ($ third & sg & fem)}}
defentry {
"pnoun" {W: "peter"
A: ($ third & sg & fem)}}
defentry {
"pnoun" {W: "completeness"
A: ($ third & pl & neut)}}
defentry {
"pnoun" {W: "saarbruecken"
A: ($ third & sg & neut)}}
defentry {
"pnoun" {W: "spaghetti"
A: ($ third & pl & neut)}}
%% common nouns
defentry {
"cnoun" {Wsg: "basket"
Wpl: "baskets"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "book"
Wpl: "books"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "company"
Wpl: "companies"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "department"
Wpl: "departments"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "man"
Wpl: "men"
Asg: ($ third & masc & sg)
Apl: ($ third & masc & pl)}}
defentry {
"cnoun" {Wsg: "musical"
Wpl: "musicals"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "product"
Wpl: "products"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "politician"
Wpl: "politicians"
Asg: ($ third & (masc|fem) & sg)
Apl: ($ third & (masc|fem) & pl)}}
defentry {
"cnoun" {Wsg: "professor"
Wpl: "professors"
Asg: ($ third & (masc|fem) & sg)
Apl: ($ third & (masc|fem) & pl)}}
defentry {
"cnoun" {Wsg: "programmer"
Wpl: "programmers"
Asg: ($ third & (masc|fem) & sg)
Apl: ($ third & (masc|fem) & pl)}}
defentry {
"cnoun" {Wsg: "researcher"
Wpl: "researchers"
Asg: ($ third & (masc|fem) & sg)
Apl: ($ third & (masc|fem) & pl)}}
defentry {
"cnoun" {Wsg: "sample"
Wpl: "samples"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "student"
Wpl: "students"
Asg: ($ third & (masc|fem) & sg)
Apl: ($ third & (masc|fem) & pl)}}
defentry {
"cnoun" {Wsg: "task"
Wpl: "tasks"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "telescope"
Wpl: "telescopes"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "university"
Wpl: "universities"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "vegetable"
Wpl: "vegetables"
Asg: ($ third & neut & sg)
Apl: ($ third & neut & pl)}}
defentry {
"cnoun" {Wsg: "woman"
Wpl: "women"
Asg: ($ third & fem & sg)
Apl: ($ third & fem & pl)}}
%% personal pronouns
defentry {
"perpro" {W: "i"
A: ($ first & sg & nom)}}
defentry {
"perpro" {W: "you"
A: ($ second)}}
defentry {
"perpro" {W: "he"
A: ($ masc & third & sg & nom)}}
defentry {
"perpro" {W: "she"
A: ($ fem & third & sg & nom)}}
defentry {
"perpro" {W: "it"
A: ($ neut & third & sg)}}
defentry {
"perpro" {W: "we"
A: ($ first & pl & nom)}}
defentry {
"perpro" {W: "they"
A: ($ third & pl & nom)}}
defentry {
"perpro" {W: "me"
A: ($ first & sg & acc)}}
defentry {
"perpro" {W: "him"
A: ($ masc & third & sg & acc)}}
defentry {
"perpro" {W: "her"
A: ($ fem & third & sg & acc)}}
defentry {
"perpro" {W: "us"
A: ($ first & pl & acc)}}
defentry {
"perpro" {W: "them"
A: ($ third & pl & acc)}}
%% relative pronouns
defentry {
"relpro" {W: "who"
A: ($ third & (masc|fem))}}
defentry {
"relpro" {W: "whom"
A: ($ third & sg & (masc|fem) & acc)}}
defentry {
"relpro" {W: "which"
A: ($ third & neut)}}
defentry {
"relpro" {W: "that"
A: ($ third)}}
%% wh pronouns
defentry {
"whpro" {W: "who"
A: ($ third & (masc|fem))}}
defentry {
"whpro" {W: "whom"
A: ($ third & sg & (masc|fem) & acc)}}
defentry {
"whpro" {W: "what"
A: ($ third & neut)}}
%% determiners
defentry {
"detsg" {W: "a"}}
defentry {
"detpl" {W: "all"}}
defentry {
"detsg" {W: "every"}}
defentry {
"detpl" {W: "most"}}
defentry {
"det" {W: "some"}}
defentry {
"det" {W: "the"}}
%% adjectives
defentry {
"adj" {W: "big"}}
defentry {
"adj" {W: "foreign"}}
defentry {
"adj" {W: "good"}}
defentry {
"adj" {W: "little"}}
defentry {
"adj" {W: "nice"}}
defentry {
"adj" {W: "pretty"}}
%%%%%%%%%%%%%%%
%% prepositions
defentry {
"pobj" {W: "at"}}
defentry {
"pobj" {W: "by"}}
defentry {
"padvp" {W: "in"}}
defentry {
"padj" {W: "of"}}
defentry {
"pobj" {W: "to"}}
defentry {
"padj" {W: "with"}}
defentry {
"padvp" {W: "with"}}