Commit c719fc7f73142d6879e54719bccac98d1cc47ce5
1 parent
84afa6af
Zmiana comparp
Showing
11 changed files
with
53 additions
and
37 deletions
LCGlexicon/ENIAMcategoriesPL.ml
... | ... | @@ -159,7 +159,9 @@ let num_nsem lemma = |
159 | 159 | |
160 | 160 | let part_set = StringSet.of_list ["się"; "nie"; "by"; "niech"; "niechaj"; "niechże"; "niechajże"; "czy"; "gdyby"] |
161 | 161 | |
162 | -let clarify_categories proper cat coerced snode = function | |
162 | +let snode = SelectorMap.find selector_values SNode | |
163 | + | |
164 | +let clarify_categories proper cat coerced (*snode*) = function | |
163 | 165 | lemma,"subst",[numbers;cases;genders] -> |
164 | 166 | let numbers = expand_numbers numbers in |
165 | 167 | let cases = expand_cases cases in |
... | ... |
LCGlexicon/resources/lexicon-pl.dic
1 | 1 | @PHRASE_NAMES |
2 | 2 | lex infp np prepnp adjp ip cp ncp advp padvp |
3 | - adja prepadjp comprepnp compar measure num aglt aux-fut | |
3 | + adja prepadjp comprepnp comparp measure num aglt aux-fut | |
4 | 4 | aux-past aux-imp qub interj hyphen int |
5 | 5 | rparen rparen2 rquot rquot2 rquot3 inclusion |
6 | 6 | day-interval day-lex day-month-interval date-interval |
... | ... | @@ -153,8 +153,8 @@ lemma=w,pos=prep,case=loc: prepnp*lemma*case{\(1+advp*T),/(day-month+day+ye |
153 | 153 | |
154 | 154 | # komparatywy |
155 | 155 | # FIXME: trzeba poprawić comparnp i comparpp w walencji |
156 | -pos=compar: QUANT[case=nom&gen&dat&acc&inst] compar*lemma*case{\(1+advp*T),/(np*T*case*T*T+adjp*T*case*T)}{\(1+qub),/(1+inclusion)}; | |
157 | -pos=compar: QUANT[case=postp] compar*lemma*case{\(1+advp*T),/(prepnp*T*T+prepadjp*T*T)}{\(1+qub),/(1+inclusion)}; | |
156 | +pos=compar: QUANT[case=nom&gen&dat&acc&inst] comparp*lemma*case{\(1+advp*T),/(np*T*case*T*T+adjp*T*case*T)}{\(1+qub),/(1+inclusion)}; | |
157 | +pos=compar: QUANT[case=postp] comparp*lemma*case{\(1+advp*T),/(prepnp*T*T+prepadjp*T*T)}{\(1+qub),/(1+inclusion)}; | |
158 | 158 | |
159 | 159 | # frazy przymiotnikowe |
160 | 160 | # FIXME: let grad = match grads with [grad] -> grad | _ -> failwith "make_adjp: grad" in |
... | ... |
exec/ENIAMexec.ml
... | ... | @@ -64,16 +64,16 @@ let rec translate_text = function |
64 | 64 | | ENIAMsubsyntaxTypes.AltText l -> AltText(Xlist.map l (fun (mode,text) -> |
65 | 65 | translate_mode mode, translate_text text)) |
66 | 66 | |
67 | -let clarify_categories cats snode token = | |
67 | +let clarify_categories cats (*snode*) token = | |
68 | 68 | match token.ENIAMtokenizerTypes.token with |
69 | 69 | ENIAMtokenizerTypes.Lemma(lemma,pos,interp) -> |
70 | 70 | List.flatten (Xlist.map interp (fun interp -> List.flatten (Xlist.map cats (fun (cat,coerced) -> |
71 | 71 | (* Printf.printf "lemma=%s pos=%s cat=%s coerced=%s\n%!" lemma pos cat (String.concat "," coerced); *) |
72 | - ENIAMcategoriesPL.clarify_categories false cat coerced snode (lemma,pos,interp))))) | |
72 | + ENIAMcategoriesPL.clarify_categories false cat coerced (*snode*) (lemma,pos,interp))))) | |
73 | 73 | | ENIAMtokenizerTypes.Proper(lemma,pos,interp,senses2) -> |
74 | - List.flatten (Xlist.map interp (fun interp -> List.flatten (Xlist.map cats (fun (cat,coerced) -> ENIAMcategoriesPL.clarify_categories true cat coerced snode (lemma,pos,interp))))) | |
74 | + List.flatten (Xlist.map interp (fun interp -> List.flatten (Xlist.map cats (fun (cat,coerced) -> ENIAMcategoriesPL.clarify_categories true cat coerced (*snode*) (lemma,pos,interp))))) | |
75 | 75 | | ENIAMtokenizerTypes.Interp lemma -> |
76 | - List.flatten (Xlist.map cats (fun (cat,coerced) -> ENIAMcategoriesPL.clarify_categories false cat coerced snode (lemma,"interp",[]))) | |
76 | + List.flatten (Xlist.map cats (fun (cat,coerced) -> ENIAMcategoriesPL.clarify_categories false cat coerced (*snode*) (lemma,"interp",[]))) | |
77 | 77 | | _ -> [] |
78 | 78 | |
79 | 79 | let create_chart rules tokens lex_sems paths last = |
... | ... | @@ -85,8 +85,8 @@ let create_chart rules tokens lex_sems paths last = |
85 | 85 | ENIAM_LCGrenderer.reset_variable_names (); |
86 | 86 | ENIAM_LCGrenderer.add_variable_numbers (); |
87 | 87 | (* if s.ENIAMlexSemanticsTypes.schemata = [] then failwith ("create_chart: no schema for token=" ^ t.ENIAMtokenizerTypes.orth ^ " lemma=" ^ ENIAMtokens.get_lemma t.ENIAMtokenizerTypes.token) else *) |
88 | - Xlist.fold s.ENIAMlexSemanticsTypes.schemata chart (fun chart (selectors,cats,snode,schema) -> | |
89 | - let cats = clarify_categories cats snode t in | |
88 | + Xlist.fold s.ENIAMlexSemanticsTypes.schemata chart (fun chart (selectors,cats,(*snode,*)schema) -> | |
89 | + let cats = clarify_categories cats (*snode*) t in | |
90 | 90 | (* let chart = ENIAM_LCGchart.add_inc_list chart lnode rnode s.ENIAMlexSemanticsTypes.lex_entries 0 in *) |
91 | 91 | let l = ENIAM_LCGlexicon.create_entries rules id t.ENIAMtokenizerTypes.orth cats [selectors,schema] s.ENIAMlexSemanticsTypes.lex_entries in |
92 | 92 | ENIAM_LCGchart.add_inc_list chart lnode rnode l 0)) in |
... | ... | @@ -115,8 +115,8 @@ let create_dep_chart dep_rules tokens lex_sems paths = |
115 | 115 | let s = ExtArray.get lex_sems id in |
116 | 116 | ENIAM_LCGrenderer.reset_variable_names (); |
117 | 117 | ENIAM_LCGrenderer.add_variable_numbers (); |
118 | - Xlist.fold s.ENIAMlexSemanticsTypes.schemata nodes (fun nodes (selectors,cats,snode,schema) -> | |
119 | - let cats = clarify_categories ["X",["X"]] snode t in | |
118 | + Xlist.fold s.ENIAMlexSemanticsTypes.schemata nodes (fun nodes (selectors,cats,(*snode,*)schema) -> | |
119 | + let cats = clarify_categories ["X",["X"]] (*snode*) t in | |
120 | 120 | (* let chart = ENIAM_LCGchart.add_inc_list chart lnode rnode s.ENIAMlexSemanticsTypes.lex_entries 0 in *) |
121 | 121 | let l = ENIAM_LCGlexicon.create_entries dep_rules id t.ENIAMtokenizerTypes.orth cats [selectors,schema] s.ENIAMlexSemanticsTypes.lex_entries in |
122 | 122 | IntMap.add_inc nodes i l (fun l2 -> l @ l2))) in |
... | ... |
exec/ENIAMvisualization.ml
... | ... | @@ -797,9 +797,21 @@ let rec extract_pos_cat_internal vars = function |
797 | 797 | let rec extract_pos_cat vars = function |
798 | 798 | | Tensor [] -> failwith "extract_pos_cat: ni" |
799 | 799 | | Tensor [pos] -> extract_pos_cat_internal vars pos |
800 | + | Tensor [pos;_] -> extract_pos_cat_internal vars pos | |
801 | + | Tensor [pos;_;_] -> extract_pos_cat_internal vars pos | |
800 | 802 | | Tensor (Atom "num" :: _) -> "Number" |
803 | + | Tensor (Atom "aglt" :: _) -> "Aglt" | |
801 | 804 | | Tensor (Atom "prepnp" :: _) -> "Prep" |
802 | - | Tensor (pos :: cat :: _) -> (*extract_pos_cat_internal vars pos ^ "*" ^*) extract_pos_cat_internal vars cat | |
805 | + | Tensor (Atom "comparp" :: _) -> "Compar" | |
806 | + | Tensor (Atom "cp" :: _) -> "Comp" | |
807 | + | Tensor [_;cat;_;_] -> extract_pos_cat_internal vars cat | |
808 | + | Tensor [_;_;cat;_;_] -> extract_pos_cat_internal vars cat | |
809 | + | Tensor [_;_;_;cat;_;_] -> extract_pos_cat_internal vars cat | |
810 | + | Tensor [_;_;_;_;cat;_;_] -> extract_pos_cat_internal vars cat | |
811 | + | Tensor [_;_;_;_;_;cat;_;_] -> extract_pos_cat_internal vars cat | |
812 | + | Tensor [_;_;_;_;_;_;cat;_;_] -> extract_pos_cat_internal vars cat | |
813 | + (* | Tensor (pos :: cat :: _) -> (*extract_pos_cat_internal vars pos ^ "*" ^*) extract_pos_cat_internal vars cat *) | |
814 | + | Tensor _ as t -> print_endline ("Unknown symbol " ^ ENIAM_LCGstringOf.grammar_symbol 0 t); "Unknown" | |
803 | 815 | | Plus l -> failwith "extract_pos_cat: ni" |
804 | 816 | | Imp(s,d,t2) -> extract_pos_cat vars s |
805 | 817 | | One -> failwith "extract_pos_cat: ni" |
... | ... | @@ -822,7 +834,8 @@ let omited = StringSet.of_list ["<subst>";"<depr>";"<ppron12>";"<ppron3>";"<sieb |
822 | 834 | "<email>";"<obj-id>";"<adj>";"<apron>";"<adjc>";"<adjp>";"<adja>";"<adv>";"<ger>";"<pact>"; |
823 | 835 | "<ppas>";"<fin>";"<bedzie>";"<praet>";"<winien>";"<impt>";"<imps>";"<pred>";"<aglt>";"<inf>"; |
824 | 836 | "<pcon>";"<pant>";"<qub>";"<comp>";"<compar>";"<conj>";"<interj>";"<sinterj>";"<burk>"; |
825 | - "<interp>";"<part>";"<unk>";"<building-number>";"<html-tag>";"<list-item>";"<numcomp>";"<phone-number>";"<postal-code>"] | |
837 | + "<interp>";"<part>";"<unk>";"<building-number>";"<html-tag>";"<list-item>";"<numcomp>"; | |
838 | + "<phone-number>";"<postal-code>";"<sentence>";"<paragraph>"] | |
826 | 839 | |
827 | 840 | let cat_tokens_sequence text_fragments g = |
828 | 841 | let _,_,l = ENIAM_LCGchart.fold g (0,0,[]) (fun (m,n,l) (symbol,node1,node2,sem,layer) -> |
... | ... |
lexSemantics/ENIAMadjuncts.ml
... | ... | @@ -253,19 +253,19 @@ let simplify_schemata lexemes pos pos2 lemma schemata = |
253 | 253 | "{" ^ String.concat ";" (PhraseSet.fold morfs [] (fun l m -> ENIAMwalStringOf.phrase m :: l)) ^ "}")))); *) |
254 | 254 | schemata |
255 | 255 | |
256 | -let add_adjuncts preps compreps compars pos2 (selectors,cat,has_context,schema) = | |
256 | +let add_adjuncts preps compreps compars pos2 (selectors,cat,(*has_context,*)schema) = | |
257 | 257 | let compreps = Xlist.rev_map compreps ENIAMwalRenderer.render_comprep in |
258 | 258 | let prepnps = Xlist.rev_map preps (fun (prep,cases) -> ENIAMwalRenderer.render_prepnp prep cases) in |
259 | 259 | let prepadjps = Xlist.rev_map preps (fun (prep,cases) -> ENIAMwalRenderer.render_prepadjp prep cases) in |
260 | 260 | let compars = Xlist.rev_map compars ENIAMwalRenderer.render_compar in |
261 | 261 | match pos2 with |
262 | - "verb" -> [selectors,cat,has_context,schema @ ENIAMwalRenderer.verb_adjuncts_simp @ prepnps @ prepadjps @ compreps @ compars] | |
262 | + "verb" -> [selectors,cat,(*has_context,*)schema @ ENIAMwalRenderer.verb_adjuncts_simp @ prepnps @ prepadjps @ compreps @ compars] | |
263 | 263 | | "noun" -> [ |
264 | - [Nsyn,Eq,["proper"]] @ selectors,cat,has_context,ENIAMwalRenderer.proper_noun_adjuncts_simp @ prepnps @ compreps @ compars; | |
265 | - [Nsyn,Eq,["common"];Nsem,Eq,["measure"]] @ selectors,cat,has_context,ENIAMwalRenderer.measure_noun_adjuncts_simp @ prepnps @ compreps @ compars; | |
266 | - [Nsyn,Eq,["common"];Nsem,Neq,["measure"]] @ selectors,cat,has_context,ENIAMwalRenderer.common_noun_adjuncts_simp @ prepnps @ compreps @ compars] | |
267 | - | "adj" -> [selectors,cat,has_context,schema @ ENIAMwalRenderer.adj_adjuncts_simp @ compars] | |
268 | - | "adv" -> [selectors,cat,has_context,schema @ ENIAMwalRenderer.adv_adjuncts_simp @ compars] | |
264 | + [Nsyn,Eq,["proper"]] @ selectors,cat,(*has_context,*)ENIAMwalRenderer.proper_noun_adjuncts_simp @ prepnps @ compreps @ compars; | |
265 | + [Nsyn,Eq,["common"];Nsem,Eq,["measure"]] @ selectors,cat,(*has_context,*)ENIAMwalRenderer.measure_noun_adjuncts_simp @ prepnps @ compreps @ compars; | |
266 | + [Nsyn,Eq,["common"];Nsem,Neq,["measure"]] @ selectors,cat,(*has_context,*)ENIAMwalRenderer.common_noun_adjuncts_simp @ prepnps @ compreps @ compars] | |
267 | + | "adj" -> [selectors,cat,(*has_context,*)schema @ ENIAMwalRenderer.adj_adjuncts_simp @ compars] | |
268 | + | "adv" -> [selectors,cat,(*has_context,*)schema @ ENIAMwalRenderer.adv_adjuncts_simp @ compars] | |
269 | 269 | | _ -> [] |
270 | 270 | |
271 | 271 | open ENIAMlexSemanticsTypes |
... | ... |
lexSemantics/ENIAMlexSemantics.ml
... | ... | @@ -23,7 +23,7 @@ open ENIAMlexSemanticsTypes |
23 | 23 | open ENIAMwalTypes |
24 | 24 | open Xstd |
25 | 25 | |
26 | -let snode_values = ENIAM_LCGlexiconTypes.SelectorMap.find ENIAMcategoriesPL.selector_values ENIAM_LCGlexiconTypes.SNode | |
26 | +(*let snode_values = ENIAM_LCGlexiconTypes.SelectorMap.find ENIAMcategoriesPL.selector_values ENIAM_LCGlexiconTypes.SNode*) | |
27 | 27 | |
28 | 28 | let find_sense m = |
29 | 29 | try |
... | ... | @@ -305,9 +305,9 @@ let assign_valence tokens lex_sems group = |
305 | 305 | let schemata = ENIAMadjuncts.simplify_schemata lexemes pos pos2 lemma schemata1 in |
306 | 306 | (* Printf.printf "C %s |schemata|=%d\n" lemma (Xlist.size schemata); *) |
307 | 307 | let schemata = Xlist.rev_map schemata (fun (selectors,schema) -> |
308 | - selectors,["X",["X"]],snode_values,ENIAMwalRenderer.render_simple_schema schema) in | |
308 | + selectors,["X",["X"]],(*snode_values,*)ENIAMwalRenderer.render_simple_schema schema) in | |
309 | 309 | let schemata = List.flatten (Xlist.rev_map schemata (ENIAMadjuncts.add_adjuncts preps compreps compars pos2)) in |
310 | - let schemata = if schemata = [] then [[],["X",["X"]],snode_values,[]] else schemata in | |
310 | + let schemata = if schemata = [] then [[],["X",["X"]],(*snode_values,*)[]] else schemata in | |
311 | 311 | (* Printf.printf "D %s |schemata|=%d\n" lemma (Xlist.size schemata); *) |
312 | 312 | let entries = List.flatten (Xlist.rev_map entries (ENIAMvalence.transform_lex_entry pos lemma)) in |
313 | 313 | let entries = Xlist.map entries (fun (selectors,entry) -> |
... | ... |
lexSemantics/ENIAMlexSemanticsHTMLof.ml
... | ... | @@ -60,10 +60,10 @@ let html_of_lex_sems tokens lex_sems = |
60 | 60 | let core = Printf.sprintf "%3d %s %s" id orth lemma in |
61 | 61 | let lex_entries = Xlist.map t.lex_entries (fun (selectors,s) -> |
62 | 62 | "  [" ^ ENIAMcategoriesPL.string_of_selectors selectors ^ "] " ^ ENIAM_LCGstringOf.grammar_symbol 0 s) in |
63 | - let schemata = Xlist.map t.schemata (fun (selectors,cat,snode,l) -> | |
63 | + let schemata = Xlist.map t.schemata (fun (selectors,cat,(*snode,*)l) -> | |
64 | 64 | "  [" ^ ENIAMcategoriesPL.string_of_selectors selectors ^ "]" ^ |
65 | 65 | String.concat "," (Xlist.map cat (fun (m,l) -> m ^ "[" ^ String.concat "," l ^ "]")) ^ |
66 | - String.concat "|" snode ^ | |
66 | + (*String.concat "|" snode ^*) | |
67 | 67 | " {" ^ String.concat ", " (Xlist.map l (fun (d,s) -> |
68 | 68 | ENIAM_LCGstringOf.direction d ^ ENIAM_LCGstringOf.grammar_symbol 0 s)) ^ "}") in |
69 | 69 | (* let frames = Xlist.map t.frames (fun (selectors,senses,schema) -> FIXME |
... | ... |
lexSemantics/ENIAMlexSemanticsStringOf.ml
... | ... | @@ -40,10 +40,10 @@ let string_of_lex_sems tokens lex_sems = |
40 | 40 | let core = Printf.sprintf "%3d %s %s" id orth lemma in |
41 | 41 | let lex_entries = Xlist.map t.lex_entries (fun (selectors,s) -> |
42 | 42 | "&[" ^ ENIAMcategoriesPL.string_of_selectors selectors ^ "] " ^ ENIAM_LCGstringOf.grammar_symbol 0 s) in |
43 | - let schemata = Xlist.map t.schemata (fun (selectors,cat,snode,l) -> | |
43 | + let schemata = Xlist.map t.schemata (fun (selectors,cat,(*snode,*)l) -> | |
44 | 44 | "[" ^ ENIAMcategoriesPL.string_of_selectors selectors ^ "]" ^ |
45 | 45 | String.concat "," (Xlist.map cat (fun (m,l) -> m ^ "[" ^ String.concat "," l ^ "]")) ^ |
46 | - String.concat "|" snode ^ | |
46 | + (*String.concat "|" snode ^*) | |
47 | 47 | " {" ^ String.concat "," (Xlist.map l (fun (d,s) -> |
48 | 48 | ENIAM_LCGstringOf.direction d ^ ENIAM_LCGstringOf.grammar_symbol 0 s)) ^ "}") in |
49 | 49 | let frames = Xlist.map t.frames (fun f -> |
... | ... |
lexSemantics/ENIAMlexSemanticsTypes.ml
... | ... | @@ -31,18 +31,18 @@ type frame = { |
31 | 31 | agf: string; |
32 | 32 | sem_args: string list; |
33 | 33 | rev_hipero: bool; |
34 | - snode: string list; | |
34 | + (*snode: string list;*) | |
35 | 35 | sopinion: ENIAMwalTypes.opinion; |
36 | 36 | fopinion: ENIAMwalTypes.opinion; |
37 | 37 | } |
38 | 38 | |
39 | -let empty_frame = {selectors=[]; senses=[]; cats=["X",["X"]]; positions=[]; arole=""; arole_attr=""; arev=false; agf=""; sem_args=[]; rev_hipero=false; snode=[]; | |
39 | +let empty_frame = {selectors=[]; senses=[]; cats=["X",["X"]]; positions=[]; arole=""; arole_attr=""; arev=false; agf=""; sem_args=[]; rev_hipero=false; (*snode=[];*) | |
40 | 40 | sopinion=ENIAMwalTypes.Nieokreslony; fopinion=ENIAMwalTypes.Nieokreslony} |
41 | 41 | |
42 | 42 | type lex_sem = { |
43 | 43 | schemata: ((ENIAM_LCGlexiconTypes.selector * ENIAM_LCGlexiconTypes.selector_relation * string list) list * |
44 | 44 | (string * string list) list * (* sensy *) |
45 | - string list * (* has_context *) | |
45 | + (*string list **) (* has_context *) | |
46 | 46 | (ENIAM_LCGtypes.direction * ENIAM_LCGtypes.grammar_symbol) list) list; |
47 | 47 | lex_entries: ((ENIAM_LCGlexiconTypes.selector * ENIAM_LCGlexiconTypes.selector_relation * string list) list * |
48 | 48 | ENIAM_LCGtypes.grammar_symbol) list; |
... | ... |
lexSemantics/ENIAMvalence.ml
... | ... | @@ -465,7 +465,8 @@ let transform_ger_schema lemma negation schema = (* FIXME: zakładam, że ger ze |
465 | 465 | | phrase -> transform_pers_phrase lemma negation "gerundial" phrase))}) |
466 | 466 | |
467 | 467 | let transform_ppas_schema lemma negation mood schema = |
468 | - if not (Xlist.fold schema false (fun b p -> if p.gf = OBJ then true else b)) then raise Not_found else | |
468 | + if not (Xlist.fold schema false (fun b p -> if p.gf = OBJ then true else b)) then | |
469 | + (*failwith ("transform_ppas_schema: attempt to make ppas schema for lemma " ^ lemma ^ "without OBJ arg")*)raise Not_found else | |
469 | 470 | Xlist.map schema (fun s -> |
470 | 471 | let morfs = List.flatten (Xlist.map s.morfs (transform_comps negation mood)) in |
471 | 472 | let morfs = List.flatten (Xlist.map morfs transform_preps) in |
... | ... |
lexSemantics/ENIAMwalRenderer.ml
... | ... | @@ -53,7 +53,7 @@ let render_pos_entry = function |
53 | 53 | | "ppas" -> [Atom "ppas"; AVar "number"; AVar "case"; AVar "gender"; AVar "negation"] |
54 | 54 | | "inf" -> [Atom "inf"; AVar "aspect"; AVar "negation"] |
55 | 55 | | "qub" -> [Atom "qub"] |
56 | - | "compar" -> [Atom "compar"; AVar "case"] | |
56 | + | "compar" -> [Atom "comparp"; AVar "case"] | |
57 | 57 | | "comp" -> [Atom "comp"; AVar "ctype"] |
58 | 58 | | "fin" -> [Atom "pers"; AVar "negation"] |
59 | 59 | | "praet" -> [Atom "pers"; AVar "negation"] |
... | ... | @@ -130,7 +130,7 @@ let render_phrase = function |
130 | 130 | | PrepNumP(_,prep,Case case) -> Tensor[Atom "prepnump"; Atom prep; Atom case] *) |
131 | 131 | (* | ComprepNP("") -> Tensor[Atom "comprepnp"; Top]*) |
132 | 132 | | ComprepNP(prep) -> Tensor[Atom "comprepnp"; Atom prep] |
133 | - | ComparP(prep,Case case) -> Tensor[Atom "compar"; Atom prep; Atom case] | |
133 | + | ComparP(prep,Case case) -> Tensor[Atom "comparp"; Atom prep; Atom case] | |
134 | 134 | (* | ComparPP(_,prep) -> Tensor[Atom "comparpp"; Atom prep] *) |
135 | 135 | (* | IP -> Tensor[Atom "ip";Top;Top;Top] *) |
136 | 136 | | CP (ctype,Comp comp) -> Tensor[Atom "cp"; arg_of_ctype ctype; Atom comp] |
... | ... | @@ -209,7 +209,7 @@ let render_phrase_cat cat role node = function |
209 | 209 | | PrepNumP(_,prep,Case case) -> Tensor[Atom "prepnump"; Atom prep; Atom case] *) |
210 | 210 | (* | ComprepNP("") -> Tensor[Atom "comprepnp"; Top; Atom cat; Atom role; Atom node]*) |
211 | 211 | | ComprepNP(prep) -> Tensor[Atom "comprepnp"; Atom prep; Atom cat; Atom role; Atom node] |
212 | - | ComparP(prep,Case case) -> Tensor[Atom "compar"; Atom prep; Atom case; Atom cat; Atom role; Atom node] | |
212 | + | ComparP(prep,Case case) -> Tensor[Atom "comparp"; Atom prep; Atom case; Atom cat; Atom role; Atom node] | |
213 | 213 | (* | ComparPP(_,prep) -> Tensor[Atom "comparpp"; Atom prep; Atom cat; Atom role; Atom node] *) |
214 | 214 | (* | IP -> Tensor[Atom "ip";Top;Top;Top; Atom cat; Atom role; Atom node] *) |
215 | 215 | | CP (ctype,Comp comp) -> Tensor[Atom "cp"; arg_of_ctype ctype; Atom comp; Atom cat; Atom role; Atom node] |
... | ... | @@ -367,9 +367,9 @@ let render_connected_prepadjp prep cases = |
367 | 367 | adjunct (postp @ (Xlist.map cases (fun case -> |
368 | 368 | Tensor[Atom "prepadjp"; Atom prep; Atom case]))) |
369 | 369 | |
370 | -let render_compar prep = Both,Plus[One;Tensor[Atom "compar"; Atom prep; Top]] | |
370 | +let render_compar prep = Both,Plus[One;Tensor[Atom "comparp"; Atom prep; Top]] | |
371 | 371 | |
372 | -let render_connected_compar prep = adjunct [Tensor[Atom "compar"; Atom prep; Top]] | |
372 | +let render_connected_compar prep = adjunct [Tensor[Atom "comparp"; Atom prep; Top]] | |
373 | 373 | |
374 | 374 | let verb_adjuncts_simp = [ |
375 | 375 | Both, Plus[One;Tensor[Atom "advp"; Atom "pron"]]; |
... | ... |