From b70c1108964ac3daf1b0d47c03ed15e49a2d0147 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Wed, 28 Aug 2024 16:33:10 +0200 Subject: [PATCH 001/233] ud.SetSpaceAfterFromText: make sure empty nodes have no 'SpaceAfter' --- udapi/block/ud/setspaceafterfromtext.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/udapi/block/ud/setspaceafterfromtext.py b/udapi/block/ud/setspaceafterfromtext.py index c5321221..ec7ab658 100644 --- a/udapi/block/ud/setspaceafterfromtext.py +++ b/udapi/block/ud/setspaceafterfromtext.py @@ -14,6 +14,10 @@ class SetSpaceAfterFromText(Block): """Block for setting of the SpaceAfter=No MISC attribute according to the sentence text.""" def process_tree(self, root): + # Empty nodes cannot have 'SpaceAfter=No', so make sure the file is valid. + for empty_node in root.empty_nodes: + del empty_node.misc['SpaceAfter'] + text = root.text if text is None: raise ValueError('Tree %s has no text, cannot use ud.SetSpaceAfterFromText' % root) From 020fa91f4ddc2cd8e59797c86b73bda8b62db71f Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Wed, 28 Aug 2024 16:33:57 +0200 Subject: [PATCH 002/233] corefud.Load strict=0 is even less strict --- udapi/core/coref.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/udapi/core/coref.py b/udapi/core/coref.py index 422375cd..c2ebef2a 100644 --- a/udapi/core/coref.py +++ b/udapi/core/coref.py @@ -623,7 +623,9 @@ def load_coref_from_misc(doc, strict=True): mention.head = mention.words[head_idx - 1] except IndexError as err: _error(f"Invalid head_idx={head_idx} for {mention.entity.eid} " - f"closed at {node} with words={mention.words}", 1) + f"closed at {node} with words={mention.words}", strict) + if not strict and head_idx > len(mention.words): + mention.head = mention.words[-1] if subspan_idx and subspan_idx == total_subspans: m = discontinuous_mentions[eid].pop() if m is not mention: @@ -643,7 +645,8 @@ def load_coref_from_misc(doc, strict=True): try: head_idx = int(value) except ValueError as err: - raise ValueError(f"Non-integer {value} as head index in {chunk} in {node}: {err}") + _error(f"Non-integer {value} as head index in {chunk} in {node}: {err}", strict) + head_idx = 1 elif name == 'other': if other: new_other = OtherDualDict(value) From d901e442f4e96c13c8e55a5546bce5eac0c22610 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 1 Sep 2024 13:21:55 +0200 Subject: [PATCH 003/233] Polarity of nouns will be no longer (since 2.15) annotated in Czech UD. --- udapi/block/ud/cs/markfeatsbugs.py | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 7e1f8ffb..9c1a498e 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -30,7 +30,7 @@ def process_node(self, node): pass # NOUNS ################################################################ elif node.upos == 'NOUN': - self.check_required_features(node, ['Gender', 'Number', 'Case', 'Polarity']) + self.check_required_features(node, ['Gender', 'Number', 'Case']) if node.feats['VerbForm'] == 'Vnoun': # verbal nouns: bytí, dělání, ... self.check_allowed_features(node, { @@ -38,7 +38,6 @@ def process_node(self, node): 'Gender': ['Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'Polarity': ['Pos', 'Neg'], 'Foreign': ['Yes'] }) elif node.feats['Gender'] == 'Masc': @@ -48,18 +47,16 @@ def process_node(self, node): 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'Polarity': ['Pos', 'Neg'], 'Foreign': ['Yes']}) else: self.check_allowed_features(node, { 'Gender': ['Masc', 'Fem', 'Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'Polarity': ['Pos', 'Neg'], 'Foreign': ['Yes']}) # PROPER NOUNS ######################################################### elif node.upos == 'PROPN': - self.check_required_features(node, ['Gender', 'Number', 'Case', 'Polarity']) + self.check_required_features(node, ['Gender', 'Number', 'Case']) if node.feats['Gender'] == 'Masc': self.check_required_features(node, ['Animacy']) self.check_allowed_features(node, { @@ -67,7 +64,6 @@ def process_node(self, node): 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'Polarity': ['Pos', 'Neg'], 'NameType': ['Giv', 'Sur', 'Geo'], 'Foreign': ['Yes']}) else: @@ -75,7 +71,6 @@ def process_node(self, node): 'Gender': ['Masc', 'Fem', 'Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'Polarity': ['Pos', 'Neg'], 'NameType': ['Giv', 'Sur', 'Geo'], 'Foreign': ['Yes']}) # ADJECTIVES ########################################################### From 89449f8a79f0c47e05aa4cc3cb20d2cb25754000 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 1 Sep 2024 20:57:49 +0200 Subject: [PATCH 004/233] =?UTF-8?q?Rules=20for=20"mnoho",=20"m=C3=A1lo"=20?= =?UTF-8?q?etc.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 9c1a498e..908e4cad 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -391,6 +391,13 @@ def process_node(self, node): elif re.match(r'^(samý)$', node.lemma): # Unlike other determiners, it allows Variant=Short: sám, sama, samu, samo, sami, samy. self.check_adjective_like(node, ['PronType'], {'PronType': ['Emp'], 'Variant': ['Short']}) + elif node.feats['NumType'] == 'Card': # pronominal quantifiers 'mnoho', 'málo', 'několik' etc. + self.check_required_features(node, ['PronType', 'NumType', 'Case']) + self.check_allowed_features(node, { + 'PronType': ['Ind', 'Int', 'Rel', 'Dem'], + 'NumType': ['Card'], + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] + }) else: self.check_adjective_like(node, ['PronType'], {'PronType': ['Dem', 'Int,Rel', 'Rel', 'Ind', 'Neg', 'Tot']}) # NUMERALS ############################################################# From 8c50313f79beafe39d9bdb6cd15f3f6426746052 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 1 Sep 2024 21:44:32 +0200 Subject: [PATCH 005/233] =?UTF-8?q?"jeho=C5=BEe"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 908e4cad..6867d52d 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -336,7 +336,7 @@ def process_node(self, node): elif node.upos == 'DET': # Possessive determiners 'jeho' and 'jejich' (formerly 'jich') do not inflect, i.e., no Gender, Number, Case. # Note that the possessive determiner 'její' (formerly 'jejie') does inflect, although it also has the lemma 'jeho'. - if re.match(r'^(jeho|jejich|jich)(ž(to)?)?$', node.form.lower()): + if re.match(r'^(jeho|jejich|jich)(ž(e|to)?)?$', node.form.lower()): self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]']) self.check_allowed_features(node, { 'PronType': ['Prs', 'Rel'], @@ -345,7 +345,7 @@ def process_node(self, node): 'Number[psor]': ['Sing', 'Dual', 'Plur'], 'Gender[psor]': ['Masc,Neut'] }) - elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)(ž(to)?)?$', node.form.lower()): + elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)(ž(e|to)?)?$', node.form.lower()): # The feminine possessive 'její' slightly inflects, unlike 'jeho' and 'jejich'. # Congruent gender is annotated only in singular. Masculine and # neuter are merged even in nominative. Feminine singular does From 29cf11eb9af18d9c0fadeb692d37cd7882818fd1 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 1 Sep 2024 22:01:48 +0200 Subject: [PATCH 006/233] "jeho" can have Case. --- udapi/block/ud/cs/markfeatsbugs.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 6867d52d..cd285380 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -343,7 +343,8 @@ def process_node(self, node): 'Poss': ['Yes'], 'Person': ['3'], 'Number[psor]': ['Sing', 'Dual', 'Plur'], - 'Gender[psor]': ['Masc,Neut'] + 'Gender[psor]': ['Masc,Neut'], + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] # uninflected in modern Czech, but old Czech annotations sometime indicate the case by context }) elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)(ž(e|to)?)?$', node.form.lower()): # The feminine possessive 'její' slightly inflects, unlike 'jeho' and 'jejich'. From 1a5f2fa8c8415e6df021d7fff076b255274a8f7a Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 1 Sep 2024 22:06:10 +0200 Subject: [PATCH 007/233] More features for "jeho". --- udapi/block/ud/cs/markfeatsbugs.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index cd285380..56a36067 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -343,7 +343,9 @@ def process_node(self, node): 'Poss': ['Yes'], 'Person': ['3'], 'Number[psor]': ['Sing', 'Dual', 'Plur'], - 'Gender[psor]': ['Masc,Neut'], + 'Gender[psor]': ['Masc', 'Neut', 'Masc,Neut'], + 'Gender': ['Masc', 'Fem', 'Neut'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified gender by context + 'Number': ['Sing', 'Dual', 'Plur'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified number by context 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] # uninflected in modern Czech, but old Czech annotations sometime indicate the case by context }) elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)(ž(e|to)?)?$', node.form.lower()): From fde5d470676c8e4fc99133e74b09ae3742c5699d Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 1 Sep 2024 22:22:07 +0200 Subject: [PATCH 008/233] "nejeden" --- udapi/block/ud/cs/markfeatsbugs.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 56a36067..48436a49 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -395,12 +395,15 @@ def process_node(self, node): # Unlike other determiners, it allows Variant=Short: sám, sama, samu, samo, sami, samy. self.check_adjective_like(node, ['PronType'], {'PronType': ['Emp'], 'Variant': ['Short']}) elif node.feats['NumType'] == 'Card': # pronominal quantifiers 'mnoho', 'málo', 'několik' etc. - self.check_required_features(node, ['PronType', 'NumType', 'Case']) - self.check_allowed_features(node, { - 'PronType': ['Ind', 'Int', 'Rel', 'Dem'], - 'NumType': ['Card'], - 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] - }) + if node.lemma eq 'nejeden': + self.check_adjective_like(node, ['PronType', 'NumType'], {'PronType': ['Ind'], 'NumType': ['Card']}]) + else: + self.check_required_features(node, ['PronType', 'NumType', 'Case']) + self.check_allowed_features(node, { + 'PronType': ['Ind', 'Int', 'Rel', 'Dem'], + 'NumType': ['Card'], + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] + }) else: self.check_adjective_like(node, ['PronType'], {'PronType': ['Dem', 'Int,Rel', 'Rel', 'Ind', 'Neg', 'Tot']}) # NUMERALS ############################################################# From bbe9e05af46db173a47d46e27f7294b49eea4841 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 1 Sep 2024 22:23:28 +0200 Subject: [PATCH 009/233] Bug fix. --- udapi/block/ud/cs/markfeatsbugs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 48436a49..963b242f 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -396,7 +396,7 @@ def process_node(self, node): self.check_adjective_like(node, ['PronType'], {'PronType': ['Emp'], 'Variant': ['Short']}) elif node.feats['NumType'] == 'Card': # pronominal quantifiers 'mnoho', 'málo', 'několik' etc. if node.lemma eq 'nejeden': - self.check_adjective_like(node, ['PronType', 'NumType'], {'PronType': ['Ind'], 'NumType': ['Card']}]) + self.check_adjective_like(node, ['PronType', 'NumType'], {'PronType': ['Ind'], 'NumType': ['Card']}) else: self.check_required_features(node, ['PronType', 'NumType', 'Case']) self.check_allowed_features(node, { From 4a9d07d1f738bb48633a28e7fb2039c7263602ca Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 1 Sep 2024 22:24:46 +0200 Subject: [PATCH 010/233] Bug fix. --- udapi/block/ud/cs/markfeatsbugs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 963b242f..72b4bdfd 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -395,7 +395,7 @@ def process_node(self, node): # Unlike other determiners, it allows Variant=Short: sám, sama, samu, samo, sami, samy. self.check_adjective_like(node, ['PronType'], {'PronType': ['Emp'], 'Variant': ['Short']}) elif node.feats['NumType'] == 'Card': # pronominal quantifiers 'mnoho', 'málo', 'několik' etc. - if node.lemma eq 'nejeden': + if node.lemma == 'nejeden': self.check_adjective_like(node, ['PronType', 'NumType'], {'PronType': ['Ind'], 'NumType': ['Card']}) else: self.check_required_features(node, ['PronType', 'NumType', 'Case']) From def2fd12533f1ddafb71e1b184807681f3dc9420 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 2 Sep 2024 15:46:20 +0200 Subject: [PATCH 011/233] Czech conditional "by" should not have Person and Number. --- udapi/block/ud/cs/markfeatsbugs.py | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 72b4bdfd..aedae689 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -475,15 +475,26 @@ def process_node(self, node): # imperatives (although passive imperatives are a combination # of the active imperative and a passive participle). It is # also not annotated at the conditional auxiliary 'bych', 'bys', 'by', 'bychom', 'byste'. + # Conditional "by" has no person and number (it is typically + # 3rd person but it could be other persons, too, as in "ty by + # ses bál"). if node.feats['Mood'] == 'Cnd': - self.check_required_features(node, ['Mood', 'Person']) - self.check_allowed_features(node, { - 'Aspect': ['Imp', 'Perf'], - 'VerbForm': ['Fin'], - 'Mood': ['Cnd'], - 'Person': ['1', '2', '3'], - 'Number': ['Sing', 'Dual', 'Plur'] # optional: it is not annotated in the third person - }) + if node.form.lower() == 'by': + self.check_required_features(node, ['Mood']) + self.check_allowed_features(node, { + 'Aspect': ['Imp'], + 'VerbForm': ['Fin'], + 'Mood': ['Cnd'] + }) + else: + self.check_required_features(node, ['Mood', 'Person', 'Number']) + self.check_allowed_features(node, { + 'Aspect': ['Imp'], + 'VerbForm': ['Fin'], + 'Mood': ['Cnd'], + 'Person': ['1', '2'], + 'Number': ['Sing', 'Dual', 'Plur'] + }) elif node.feats['Mood'] == 'Imp': self.check_required_features(node, ['Mood', 'Person', 'Number', 'Polarity']) self.check_allowed_features(node, { From 70c62cf2e37111384b4f6d834e7a18da2abdeb31 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 4 Sep 2024 21:35:33 +0200 Subject: [PATCH 012/233] New policy for annotation of Degree with Czech adjectives. --- udapi/block/ud/cs/markfeatsbugs.py | 34 ++++++++---------------------- 1 file changed, 9 insertions(+), 25 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index aedae689..305ba322 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -97,7 +97,7 @@ def process_node(self, node): 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'NameType': ['Giv', 'Sur'], # for possessive adjectives derived from personal names 'Foreign': ['Yes']}) - elif node.feats['NumType'] == 'Ord': # ordinal numerals are a subtype of adjectives + elif node.feats['NumType'] == 'Ord' or node.feats['NumType'] == 'Mult': # ordinal numerals are a subtype of adjectives; same for some multiplicative numerals (dvojí, trojí) if node.feats['Gender'] == 'Masc': self.check_required_features(node, ['NumType', 'Gender', 'Animacy', 'Number', 'Case']) self.check_allowed_features(node, { @@ -117,7 +117,7 @@ def process_node(self, node): 'Foreign': ['Yes']}) elif node.feats['VerbForm'] == 'Part': # participles (except l-participles) are a subtype of adjectives self.check_required_features(node, ['VerbForm', 'Voice']) - if node.feats['Voice'] == 'Act': # active participles have tense, passives don't + if node.feats['Voice'] == 'Act': # active participles have tense, passives don't but they have degree if node.feats['Gender'] == 'Masc': self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Tense', 'Gender', 'Animacy', 'Number', 'Case', 'Polarity']) self.check_allowed_features(node, { @@ -147,7 +147,7 @@ def process_node(self, node): 'Foreign': ['Yes']}) else: if node.feats['Gender'] == 'Masc': - self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Gender', 'Animacy', 'Number', 'Case', 'Polarity']) + self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Gender', 'Animacy', 'Number', 'Case', 'Polarity', 'Degree']) self.check_allowed_features(node, { 'VerbForm': ['Part'], 'Aspect': ['Imp', 'Perf'], @@ -157,10 +157,11 @@ def process_node(self, node): 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'Polarity': ['Pos', 'Neg'], + 'Degree': ['Pos', 'Cmp', 'Sup'], 'Variant': ['Short'], 'Foreign': ['Yes']}) else: - self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Gender', 'Number', 'Case', 'Polarity']) + self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Gender', 'Number', 'Case', 'Polarity', 'Degree']) self.check_allowed_features(node, { 'VerbForm': ['Part'], 'Aspect': ['Imp', 'Perf'], @@ -169,29 +170,10 @@ def process_node(self, node): 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'Polarity': ['Pos', 'Neg'], + 'Degree': ['Pos', 'Cmp', 'Sup'], 'Variant': ['Short'], 'Foreign': ['Yes']}) - elif node.feats['Variant'] == 'Short': # short (nominal) forms of adjectives have no degree - if node.feats['Gender'] == 'Masc': - self.check_required_features(node, ['Gender', 'Animacy', 'Number', 'Case', 'Polarity', 'Variant']) - self.check_allowed_features(node, { - 'Gender': ['Masc', 'Fem', 'Neut'], - 'Animacy': ['Anim', 'Inan'], - 'Number': ['Sing', 'Dual', 'Plur'], - 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'Polarity': ['Pos', 'Neg'], - 'Variant': ['Short'], - 'Foreign': ['Yes']}) - else: - self.check_required_features(node, ['Gender', 'Number', 'Case', 'Polarity', 'Variant']) - self.check_allowed_features(node, { - 'Gender': ['Masc', 'Fem', 'Neut'], - 'Number': ['Sing', 'Dual', 'Plur'], - 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'Polarity': ['Pos', 'Neg'], - 'Variant': ['Short'], - 'Foreign': ['Yes']}) - else: # regular adjectives + else: # regular adjectives, including short forms if node.feats['Gender'] == 'Masc': self.check_required_features(node, ['Gender', 'Animacy', 'Number', 'Case', 'Degree', 'Polarity']) self.check_allowed_features(node, { @@ -201,6 +183,7 @@ def process_node(self, node): 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'Degree': ['Pos', 'Cmp', 'Sup'], 'Polarity': ['Pos', 'Neg'], + 'Variant': ['Short'], 'Foreign': ['Yes']}) else: self.check_required_features(node, ['Gender', 'Number', 'Case', 'Degree', 'Polarity']) @@ -210,6 +193,7 @@ def process_node(self, node): 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'Degree': ['Pos', 'Cmp', 'Sup'], 'Polarity': ['Pos', 'Neg'], + 'Variant': ['Short'], 'Foreign': ['Yes']}) # PRONOUNS ############################################################# elif node.upos == 'PRON': From f8abb95a9787b4d680ff6145104a092210056ba7 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 13:57:41 +0200 Subject: [PATCH 013/233] ud.cs.MarkFeatsBugs adapted more to Old Czech. --- udapi/block/ud/cs/markfeatsbugs.py | 105 ++++++++++++++++++++++++----- 1 file changed, 89 insertions(+), 16 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 305ba322..b4fa4a26 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -215,10 +215,13 @@ def process_node(self, node): 'Person': ['3'] }) elif node.feats['Variant'] == 'Short': # ho, mu - # The short (clitic) forms do not have PrepCase. + # The short (clitic) forms do not have PrepCase in Modern Czech + # but Old Czech has also 'jmu' (besides 'jemu' and 'mu'), which + # is also annotated as Variant=Short and PrepCase=Npr. self.check_adjective_like(node, ['PronType', 'Person'], { 'PronType': ['Prs'], 'Person': ['3'], + 'PrepCase': ['Npr'], 'Variant': ['Short'] }) else: # jeho, něho, jemu, němu, jej, něj, něm, jím, ním, jí, ní, ji, ni, je, ně @@ -320,10 +323,10 @@ def process_node(self, node): elif node.upos == 'DET': # Possessive determiners 'jeho' and 'jejich' (formerly 'jich') do not inflect, i.e., no Gender, Number, Case. # Note that the possessive determiner 'její' (formerly 'jejie') does inflect, although it also has the lemma 'jeho'. - if re.match(r'^(jeho|jejich|jich)(ž(e|to)?)?$', node.form.lower()): + if re.match(r'^(jeho|jejich|jich)$', node.form.lower()): self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]']) self.check_allowed_features(node, { - 'PronType': ['Prs', 'Rel'], + 'PronType': ['Prs'], 'Poss': ['Yes'], 'Person': ['3'], 'Number[psor]': ['Sing', 'Dual', 'Plur'], @@ -332,7 +335,21 @@ def process_node(self, node): 'Number': ['Sing', 'Dual', 'Plur'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified number by context 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] # uninflected in modern Czech, but old Czech annotations sometime indicate the case by context }) - elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)(ž(e|to)?)?$', node.form.lower()): + # Relative possessive determiners 'jehož' and 'jejichž' behave similarly + # to the personal possessive determiners but they do not have Person. + elif re.match(r'^(jeho|jejich|jich)(ž(e|to)?)$', node.form.lower()): + self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]']) + self.check_allowed_features(node, { + 'PronType': ['Rel'], + 'Poss': ['Yes'], + 'Number[psor]': ['Sing', 'Dual', 'Plur'], + 'Gender[psor]': ['Masc', 'Neut', 'Masc,Neut'], + 'Gender': ['Masc', 'Fem', 'Neut'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified gender by context + 'Number': ['Sing', 'Dual', 'Plur'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified number by context + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] # uninflected in modern Czech, but old Czech annotations sometime indicate the case by context + }) + # Feminine personal possessive determiner. + elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)$', node.form.lower()): # The feminine possessive 'její' slightly inflects, unlike 'jeho' and 'jejich'. # Congruent gender is annotated only in singular. Masculine and # neuter are merged even in nominative. Feminine singular does @@ -341,7 +358,7 @@ def process_node(self, node): if node.feats['Number'] == 'Sing': self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]', 'Gender[psor]', 'Gender', 'Number', 'Case']) self.check_allowed_features(node, { - 'PronType': ['Prs', 'Rel'], + 'PronType': ['Prs'], 'Poss': ['Yes'], 'Person': ['3'], 'Number[psor]': ['Sing'], @@ -353,7 +370,7 @@ def process_node(self, node): else: self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]', 'Gender[psor]', 'Number', 'Case']) self.check_allowed_features(node, { - 'PronType': ['Prs', 'Rel'], + 'PronType': ['Prs'], 'Poss': ['Yes'], 'Person': ['3'], 'Number[psor]': ['Sing'], @@ -361,6 +378,34 @@ def process_node(self, node): 'Number': ['Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) + # Feminine relative possessive determiner. + elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)(ž(e|to)?)$', node.form.lower()): + # The feminine possessive 'jejíž' slightly inflects, unlike 'jehož' and 'jejichž'. + # Congruent gender is annotated only in singular. Masculine and + # neuter are merged even in nominative. Feminine singular does + # not distinguish case in PDT but we need it in Old Czech at + # least for 'jejiej'. + if node.feats['Number'] == 'Sing': + self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]', 'Gender[psor]', 'Gender', 'Number', 'Case']) + self.check_allowed_features(node, { + 'PronType': ['Rel'], + 'Poss': ['Yes'], + 'Number[psor]': ['Sing'], + 'Gender[psor]': ['Fem'], + 'Gender': ['Masc,Neut', 'Fem'], + 'Number': ['Sing'], + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] + }) + else: + self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]', 'Gender[psor]', 'Number', 'Case']) + self.check_allowed_features(node, { + 'PronType': ['Rel'], + 'Poss': ['Yes'], + 'Number[psor]': ['Sing'], + 'Gender[psor]': ['Fem'], + 'Number': ['Dual', 'Plur'], + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] + }) elif node.feats['Poss'] == 'Yes': # 'můj', 'tvůj', 'svůj' if node.feats['Reflex'] == 'Yes': self.check_adjective_like(node, ['PronType', 'Poss', 'Reflex'], { @@ -527,16 +572,44 @@ def process_node(self, node): 'Polarity': ['Pos', 'Neg'] }) else: # converb - self.check_required_features(node, ['Tense', 'Number', 'Voice', 'Polarity']) - self.check_allowed_features(node, { - 'Aspect': ['Imp', 'Perf'], - 'VerbForm': ['Conv'], - 'Tense': ['Past', 'Pres'], - 'Voice': ['Act'], - 'Number': ['Sing', 'Dual', 'Plur'], - 'Gender': ['Masc', 'Fem', 'Neut'], # annotated only in singular, and no animacy - 'Polarity': ['Pos', 'Neg'] - }) + # Old Czech data annotate converb gender by context rather than form + # (because the form was different than in Modern Czech) and for + # masculines they also include animacy. In Modern Czech animacy is + # currently not annotated and Masc,Neut gender is merged. + if node.feats['Number'] == 'Sing': + if node.feats['Gender'] == 'Masc': + self.check_required_features(node, ['Tense', 'Gender', 'Animacy', 'Number', 'Voice', 'Polarity']) + self.check_allowed_features(node, { + 'Aspect': ['Imp', 'Perf'], + 'VerbForm': ['Conv'], + 'Tense': ['Past', 'Pres'], + 'Voice': ['Act'], # passive participle is ADJ, so we will not encounter it under VERB + 'Number': ['Sing'], + 'Gender': ['Masc'], + 'Animacy': ['Anim', 'Inan'], + 'Polarity': ['Pos', 'Neg'] + }) + else: + self.check_required_features(node, ['Tense', 'Gender', 'Number', 'Voice', 'Polarity']) + self.check_allowed_features(node, { + 'Aspect': ['Imp', 'Perf'], + 'VerbForm': ['Conv'], + 'Tense': ['Past', 'Pres'], + 'Voice': ['Act'], # passive participle is ADJ, so we will not encounter it under VERB + 'Number': ['Sing'], + 'Gender': ['Fem', 'Neut'], + 'Polarity': ['Pos', 'Neg'] + }) + else: + self.check_required_features(node, ['Tense', 'Number', 'Voice', 'Polarity']) + self.check_allowed_features(node, { + 'Aspect': ['Imp', 'Perf'], + 'VerbForm': ['Conv'], + 'Tense': ['Past', 'Pres'], + 'Voice': ['Act'], + 'Number': ['Dual', 'Plur'], + 'Polarity': ['Pos', 'Neg'] + }) # ADVERBS ############################################################## elif node.upos == 'ADV': if node.feats['PronType'] != '': From 0c2db07cdfaa9fda7bc2578256cca4007f36b081 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 14:49:22 +0200 Subject: [PATCH 014/233] Disambiguating Int from Rel. --- udapi/block/ud/cs/markfeatsbugs.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index b4fa4a26..643c4f90 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -250,9 +250,11 @@ def process_node(self, node): # There is no Number. Někdo and nikdo behave like singular; # kdo is by default singular as well but it also occurs as a subject # of plural verbs. + # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kdo to je?" use Rel.) + # New Czech data, in particular PDT, use Int,Rel regardless of context. self.check_required_features(node, ['PronType', 'Gender', 'Animacy', 'Case']) self.check_allowed_features(node, { - 'PronType': ['Int,Rel', 'Rel', 'Ind', 'Neg'], + 'PronType': ['Int,Rel', 'Int', 'Rel', 'Ind', 'Neg'], 'Gender': ['Masc'], 'Animacy': ['Anim'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Loc', 'Ins'] @@ -266,9 +268,11 @@ def process_node(self, node): ###!!! animacy. For now, let's at least make animacy an optional ###!!! feature (I see that we already do not fill it in the Old ###!!! Czech data). + # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, co to je?" use Rel.) + # New Czech data, in particular PDT, use Int,Rel regardless of context. self.check_required_features(node, ['PronType', 'Case']) self.check_allowed_features(node, { - 'PronType': ['Int,Rel', 'Rel', 'Ind', 'Neg'], + 'PronType': ['Int,Rel', 'Int', 'Rel', 'Ind', 'Neg'], 'Animacy': ['Inan'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Loc', 'Ins'] }) @@ -434,7 +438,9 @@ def process_node(self, node): 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) else: - self.check_adjective_like(node, ['PronType'], {'PronType': ['Dem', 'Int,Rel', 'Rel', 'Ind', 'Neg', 'Tot']}) + # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kde to je?" use Rel.) + # New Czech data, in particular PDT, use Int,Rel regardless of context. + self.check_adjective_like(node, ['PronType'], {'PronType': ['Dem', 'Int,Rel', 'Int', 'Rel', 'Ind', 'Neg', 'Tot']}) # NUMERALS ############################################################# elif node.upos == 'NUM': self.check_required_features(node, ['NumType', 'NumForm']) @@ -614,8 +620,10 @@ def process_node(self, node): elif node.upos == 'ADV': if node.feats['PronType'] != '': # Pronominal adverbs are neither compared nor negated. + # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kde to je?" use Rel.) + # New Czech data, in particular PDT, use Int,Rel regardless of context. self.check_allowed_features(node, { - 'PronType': ['Dem', 'Int,Rel', 'Ind', 'Neg', 'Tot'] + 'PronType': ['Dem', 'Int', 'Rel', 'Int,Rel', 'Ind', 'Neg', 'Tot'] }) elif node.feats['Degree'] != '': # Adverbs that are compared can also be negated. From 9ee667c15977db6bb09f9f287cac9eb3970a98c7 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 14:56:02 +0200 Subject: [PATCH 015/233] Bug fix: Adjectival multiplicative numerals. --- udapi/block/ud/cs/markfeatsbugs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 643c4f90..edb24f1b 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -101,7 +101,7 @@ def process_node(self, node): if node.feats['Gender'] == 'Masc': self.check_required_features(node, ['NumType', 'Gender', 'Animacy', 'Number', 'Case']) self.check_allowed_features(node, { - 'NumType': ['Ord'], + 'NumType': ['Ord', 'Mult'], 'Gender': ['Masc', 'Fem', 'Neut'], 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing', 'Dual', 'Plur'], @@ -110,7 +110,7 @@ def process_node(self, node): else: self.check_required_features(node, ['NumType', 'Gender', 'Number', 'Case']) self.check_allowed_features(node, { - 'NumType': ['Ord'], + 'NumType': ['Ord', 'Mult'], 'Gender': ['Masc', 'Fem', 'Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], From d24a0c47d278f92573e26e3f826a5c64eacb0bcb Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 15:13:00 +0200 Subject: [PATCH 016/233] Czech adverbial multiplicative numerals. --- udapi/block/ud/cs/markfeatsbugs.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index edb24f1b..cfdd751f 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -618,7 +618,17 @@ def process_node(self, node): }) # ADVERBS ############################################################## elif node.upos == 'ADV': - if node.feats['PronType'] != '': + if node.feats['NumType'] != '': + # Adverbial multiplicative numerals (jednou, dvakrát, třikrát) + # belong here. They have also pronominal counterparts (kolikrát, + # tolikrát, několikrát). + # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kde to je?" use Rel.) + # New Czech data, in particular PDT, use Int,Rel regardless of context. + self.check_allowed_features(node, { + 'NumType': ['Mult'], + 'PronType': ['Dem', 'Int', 'Rel', 'Int,Rel', 'Ind'] + }) + elif node.feats['PronType'] != '': # Pronominal adverbs are neither compared nor negated. # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kde to je?" use Rel.) # New Czech data, in particular PDT, use Int,Rel regardless of context. From b9a7be80ae54cb6311d3a87a2277c6b286cbf173 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 15:17:21 +0200 Subject: [PATCH 017/233] Czech adverbial ordinal numerals. --- udapi/block/ud/cs/markfeatsbugs.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index cfdd751f..909a350d 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -621,11 +621,12 @@ def process_node(self, node): if node.feats['NumType'] != '': # Adverbial multiplicative numerals (jednou, dvakrát, třikrát) # belong here. They have also pronominal counterparts (kolikrát, - # tolikrát, několikrát). + # tolikrát, několikrát). There are also adverbial ordinal numerals + # (zaprvé, poprvé, zadruhé, podruhé). # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kde to je?" use Rel.) # New Czech data, in particular PDT, use Int,Rel regardless of context. self.check_allowed_features(node, { - 'NumType': ['Mult'], + 'NumType': ['Mult', 'Ord'], 'PronType': ['Dem', 'Int', 'Rel', 'Int,Rel', 'Ind'] }) elif node.feats['PronType'] != '': From 5b3b0ecb0c23ca3eb9cbcf48a5593de397338f88 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 16:27:18 +0200 Subject: [PATCH 018/233] If we allow masculine gender, we must also allow animacy. --- udapi/block/ud/cs/markfeatsbugs.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 909a350d..46f737b3 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -336,12 +336,16 @@ def process_node(self, node): 'Number[psor]': ['Sing', 'Dual', 'Plur'], 'Gender[psor]': ['Masc', 'Neut', 'Masc,Neut'], 'Gender': ['Masc', 'Fem', 'Neut'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified gender by context + 'Animacy': ['Anim', 'Inan'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified gender by context 'Number': ['Sing', 'Dual', 'Plur'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified number by context 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] # uninflected in modern Czech, but old Czech annotations sometime indicate the case by context + # PrepCase is not allowed when it is a possessive determiner because no n-form can be used (jeho dům VS. na jeho dům). + # Compare with genitive/accusative of the pronoun "on", there the form changes after preposition and PrepCase must be annotated + # (jeho se bojím VS. bez něho se neobejdu). }) # Relative possessive determiners 'jehož' and 'jejichž' behave similarly # to the personal possessive determiners but they do not have Person. - elif re.match(r'^(jeho|jejich|jich)(ž(e|to)?)$', node.form.lower()): + elif re.match(r'^(jeho|jejich|jich)ž(e|to)?$', node.form.lower()): self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]']) self.check_allowed_features(node, { 'PronType': ['Rel'], @@ -349,8 +353,12 @@ def process_node(self, node): 'Number[psor]': ['Sing', 'Dual', 'Plur'], 'Gender[psor]': ['Masc', 'Neut', 'Masc,Neut'], 'Gender': ['Masc', 'Fem', 'Neut'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified gender by context + 'Animacy': ['Anim', 'Inan'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified gender by context 'Number': ['Sing', 'Dual', 'Plur'], # uninflected in modern Czech, but old Czech annotations sometime indicate the modified number by context 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] # uninflected in modern Czech, but old Czech annotations sometime indicate the case by context + # PrepCase is not allowed when it is a possessive determiner (muž, jehož manželka zahynula při nehodě) because no n-form can be used + # (after preposition: muž, na jehož manželku jste si stěžoval). Compare with genitive/accusative of the relative pronoun "jenž", + # there the form changes after preposition and PrepCase must be annotated (muž, jehož se bojím VS. muž, bez něhož se neobejdeme). }) # Feminine personal possessive determiner. elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)$', node.form.lower()): From 833adb77507393a32b52457660065cda3cf5862c Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 16:32:07 +0200 Subject: [PATCH 019/233] "oba" needs PronType=Tot. --- udapi/block/ud/cs/markfeatsbugs.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 46f737b3..f9234c4a 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -478,6 +478,7 @@ def process_node(self, node): if self.pdt20: self.check_allowed_features(node, { 'NumType': ['Card'], + 'PronType': ['Tot'], # for 'oba' 'NumForm': ['Word'], 'Gender': ['Masc', 'Masc,Neut', 'Fem', 'Fem,Neut', 'Neut'], # similarly to determiners, genders are merged in some slots of the paradigm 'Number': ['Dual', 'Plur'], @@ -486,6 +487,7 @@ def process_node(self, node): else: self.check_allowed_features(node, { 'NumType': ['Card'], + 'PronType': ['Tot'], # for 'oba' 'NumForm': ['Word'], 'Gender': ['Masc', 'Fem', 'Neut'], 'Animacy': ['Anim', 'Inan'], From f2ce8843d3ca90d5f2fdcd49e78ed1f7a49ca08f Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 16:37:40 +0200 Subject: [PATCH 020/233] Czech negative pronoun "nic". --- udapi/block/ud/cs/markfeatsbugs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index f9234c4a..655df5a4 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -259,7 +259,7 @@ def process_node(self, node): 'Animacy': ['Anim'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Loc', 'Ins'] }) - elif re.match(r'^(co|což|něco|nicož)$', node.lemma): + elif re.match(r'^(co|což|něco|nic|nicož)$', node.lemma): # Although these pronouns behave by default as neuter singular, # no Gender and Number is annotated. However, quite unusually, # there is Animacy=Inan without Gender. From 47d02f6688392e78fc6d75bf432686191cb27b70 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 16:59:04 +0200 Subject: [PATCH 021/233] =?UTF-8?q?Numerals=20p=C4=9Bt,=20deset,=20pades?= =?UTF-8?q?=C3=A1t...=20have=20Number=3DSing=20in=20PDT=20(!)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 655df5a4..85234cfb 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -495,11 +495,16 @@ def process_node(self, node): 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) else: + # In PDT, cardinal numerals higher than four in nominative/accusative/vocative + # have Number=Sing instead of Plur! It may be motivated by the default + # agreement they trigger on verbs (but they don't have Gender=Neut). + # It does not make much sense but we must allow Sing before a better + # approach is defined and implemented in the data. self.check_required_features(node, ['NumType', 'NumForm', 'Number', 'Case']) self.check_allowed_features(node, { 'NumType': ['Card'], 'NumForm': ['Word'], - 'Number': ['Plur'], + 'Number': ['Sing', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) # VERBS AND AUXILIARIES ################################################ From fbe8919a16b6b33809e19ea7efd25845d592f5e5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 17:06:30 +0200 Subject: [PATCH 022/233] "jejie": allow congruent Gender=Masc and Animacy. --- udapi/block/ud/cs/markfeatsbugs.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 85234cfb..ca684ec5 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -375,7 +375,8 @@ def process_node(self, node): 'Person': ['3'], 'Number[psor]': ['Sing'], 'Gender[psor]': ['Fem'], - 'Gender': ['Masc,Neut', 'Fem'], + 'Gender': ['Masc', 'Neut', 'Masc,Neut', 'Fem'], + 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) From afe162c2a1ebea051aed20de714a6faf3876ecc8 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 17:22:27 +0200 Subject: [PATCH 023/233] Separate bug report for unknown UPOS tags. --- udapi/block/ud/cs/markfeatsbugs.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index ca684ec5..30f0bda1 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -671,7 +671,10 @@ def process_node(self, node): 'Case': ['Gen', 'Dat', 'Acc', 'Loc', 'Ins'] }) # THE REST: NO FEATURES ################################################ + # (OR UNDEFINED UPOS) ################################################## else: + if not re.match(r"^(CCONJ|SCONJ|PART|INTJ|PUNCT|SYM|X)$", node.upos): + self.bug(node, 'UnknownUpos' + node.upos) self.check_allowed_features(node, {}) def check_adjective_like(self, node, r0, a0): From d81db40899c2da4d2af855d097b412898bc05ba9 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 17:32:51 +0200 Subject: [PATCH 024/233] =?UTF-8?q?NumType=3DSets=20(jedny,=20dvoje,=20tro?= =?UTF-8?q?je,=20=C4=8Dtvery...)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 30f0bda1..57c72cef 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -503,7 +503,7 @@ def process_node(self, node): # approach is defined and implemented in the data. self.check_required_features(node, ['NumType', 'NumForm', 'Number', 'Case']) self.check_allowed_features(node, { - 'NumType': ['Card'], + 'NumType': ['Card', 'Sets'], 'NumForm': ['Word'], 'Number': ['Sing', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] From 7407881835acb3eeb175babe3c914678a44279a9 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 17:39:04 +0200 Subject: [PATCH 025/233] Allow Voice=Act with imperatives. --- udapi/block/ud/cs/markfeatsbugs.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 57c72cef..cca59bbe 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -552,6 +552,7 @@ def process_node(self, node): 'Aspect': ['Imp', 'Perf'], 'VerbForm': ['Fin'], 'Mood': ['Imp'], + 'Voice': ['Act'], # optional in Old Czech data, not used with imperatives in Modern Czech data (at least not yet) 'Person': ['1', '2', '3'], # 3rd person imperative occasionally occurs in old Czech (but the form is identical to 2nd person) 'Number': ['Sing', 'Dual', 'Plur'], 'Polarity': ['Pos', 'Neg'] From 0671d7ef29138a664f569d242815c88d60a9cc01 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 17:56:42 +0200 Subject: [PATCH 026/233] Do not require Aspect for biaspectual verbs. --- udapi/block/ud/cs/markfeatsbugs.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index cca59bbe..efd34684 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -510,7 +510,11 @@ def process_node(self, node): }) # VERBS AND AUXILIARIES ################################################ elif re.match(r'^(VERB|AUX)$', node.upos): - self.check_required_features(node, ['Aspect', 'VerbForm']) + # All Czech verbs (and some adjectives and nouns) must have VerbForm. + # Almost all verbs have lexical Aspect but we cannot require it + # because there are a few biaspectual verbs (e.g. 'analyzovat') that + # do not have the feature. + self.check_required_features(node, ['VerbForm']) if node.feats['VerbForm'] == 'Inf': # There is no voice. For some reason, PDT does not annotate that # the infinitive form is active (while a passive infinitive is From cec65249f46dac44c4e57d5402451c2cd0682284 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 18:00:50 +0200 Subject: [PATCH 027/233] Allow Animacy for Czech pronoun "an". --- udapi/block/ud/cs/markfeatsbugs.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index efd34684..50138518 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -320,6 +320,7 @@ def process_node(self, node): self.check_allowed_features(node, { 'PronType': ['Rel'], 'Gender': ['Masc', 'Fem', 'Neut'], + 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom'] }) From 252726b15785d0d922896b206e4bd22ce7141717 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 18:06:09 +0200 Subject: [PATCH 028/233] =?UTF-8?q?"s=C3=A1m"=20vs.=20"sam=C3=BD"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 50138518..ba81c94b 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -434,7 +434,9 @@ def process_node(self, node): 'Person': ['1', '2'], 'Number[psor]': ['Sing', 'Plur'] }) - elif re.match(r'^(samý)$', node.lemma): + elif re.match(r'^(sám|samý)$', node.lemma): + # The above condition looks at both lemma options, although only one lemma is assumed. + # However, in New Czech data the one lemma is "samý" while in Old Czech data it is "sám". # Unlike other determiners, it allows Variant=Short: sám, sama, samu, samo, sami, samy. self.check_adjective_like(node, ['PronType'], {'PronType': ['Emp'], 'Variant': ['Short']}) elif node.feats['NumType'] == 'Card': # pronominal quantifiers 'mnoho', 'málo', 'několik' etc. From 14e2ff44d87113ced06be4c802adefba4fca407c Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 22:56:03 +0200 Subject: [PATCH 029/233] util.SplitSentence can be triggered by a specific attribute in MISC. --- udapi/block/util/splitsentence.py | 111 ++++++++++++++++++++++-------- 1 file changed, 82 insertions(+), 29 deletions(-) diff --git a/udapi/block/util/splitsentence.py b/udapi/block/util/splitsentence.py index 2886cd5d..b6ca57d8 100644 --- a/udapi/block/util/splitsentence.py +++ b/udapi/block/util/splitsentence.py @@ -10,35 +10,87 @@ class SplitSentence(Block): If the sent_id of the current sentence matches the parameter, splits the sentence into two. The first token of the second sentence is also given as a parameter. + + Alternatively, a MISC attribute can be specified that triggers sentence + splitting at the given token. With this approach, multiple sentence splits + can be performed during one run. """ - def __init__(self, sent_id=None, word_id=None, **kwargs): + def __init__(self, sent_id=None, word_id=None, misc_name=None, misc_value=None, **kwargs): """ Args: sent_id: which sentence should be split (new ids will have A and B appended) word_id: which word should be the first word of the second sentence (tokens and words will be renumbered) + misc_name: name of the MISC attribute that can trigger the split (cannot be combined with sent_id and word_id) + misc_value: value of the MISC attribute to trigger the split; if not specified, then simple occurrence of the attribute with any value will cause the split + MISC attributes that have triggered sentence split will be removed from their node. """ super().__init__(**kwargs) - if not sent_id: - logging.fatal('Missing parameter sent_id') - if not word_id: - logging.fatal('Missing parameter word_id') + if misc_name: + if sent_id or word_id: + logging.fatal('Cannot combine misc_value with sent_id or word_id') + else: + if not sent_id: + logging.fatal('Missing parameter sent_id') + if not word_id: + logging.fatal('Missing parameter word_id') self.sent_id = sent_id self.word_id = word_id + self.misc_name = misc_name + self.misc_value = misc_value def process_document(self, document): for bundle_no, bundle in enumerate(document.bundles): - if bundle.bundle_id == self.sent_id: + # In general, a bundle may contain multiple trees in different zones. + # In UD data, we always expect just one zone (labeled '') per bundle. + # This code could be extended to split all zones but we do not try to do it at present. + # (The zones may be translations to other languages and it is not likely that we would + # want to split each translation at the same position.) + if len(bundle.trees) != 1: + logging.fatal('Cannot process bundles that have less or more than 1 zone') + if not bundle.has_tree(zone=''): + logging.fatal('Cannot process bundles that do not have the zone with empty zone id') + if self.misc_name: + root = bundle.get_tree() + split_points = [n for n in root.descendants if n.ord > 1 and n.misc[self.misc_name] and self.misc_value == None or n.misc[self.misc_name] == self.misc_value] + if split_points: + # Create as many new bundles as there are split points. + n_new = len(split_points) + current_bid = bundle.bundle_id + idletter = 'B' # a letter will be added to bundle ids to distinguish them + for i in range(n_new): + new_bundle = document.create_bundle() + new_bundle.bundle_id = current_bid + idletter + new_root = Root(zone='') + new_bundle.add_tree(new_root) + # Identify nodes to move to the new bundle. + first_node_id = split_points[i].ord + if i < n_new - 1: + next_first_node_id = split_points[i+1].ord + nodes_to_move = [n for n in root.descendants if n.ord >= first_node_id and n.ord < next_first_node_id] + else: + nodes_to_move = [n for n in root.descendants if n.ord >= first_node_id] + new_root.steal_nodes(nodes_to_move) + self.make_zeros_roots(new_root) + new_root.text = new_root.compute_text() + # The new bundle was created at the end of the document. + # Move it to the position right after the current bundle. + document.bundles.pop() + document.bundles.insert(bundle_no + i + 1, new_bundle) + idletter = chr(ord(idletter) + 1) + # Remove from the node the MISC attribute that triggered the sentence split. + split_points[i].misc[self.misc_name] = '' + # Update the id of the current bundle, fix its zero-dependents and recompute sentence text. + bundle.bundle_id += 'A' + self.make_zeros_roots(root) + root.text = root.compute_text() + # Update the bundle numbers of the new bundles and all bundles after them. + updated_no = bundle_no + 1 + for b in document.bundles[(bundle_no+1):]: + b.number = updated_no + updated_no += 1 + elif bundle.bundle_id == self.sent_id: logging.info('Found!') - # In general, a bundle may contain multiple trees in different zones. - # In UD data, we always expect just one zone (labeled '') per bundle. - # This code could be extended to split all zones but we do not try to do it at present. - # (The zones may be translations to other languages and it is not likely that we would - # want to split each translation at the same position.) - if len(bundle.trees) != 1: - logging.fatal('Cannot process bundles that have less or more than 1 zone') - if not bundle.has_tree(zone=''): - logging.fatal('Cannot process bundles that do not have the zone with empty zone id') root = bundle.get_tree() nodes_to_move = [n for n in root.descendants if n.ord >= self.word_id] if len(nodes_to_move) == 0: @@ -60,22 +112,23 @@ def process_document(self, document): new_root.steal_nodes(nodes_to_move) # The steal_nodes() method does not make sure that all nodes newly attached # to the artificial root have the 'root' relation. Fix it. - n_root = 0 - for n in root.descendants: - if n.parent.is_root(): - n.deprel = 'root' - n_root += 1 - if n_root > 1: - logging.warning('More than one 0:root relation in the first part of the sentence.') - n_root = 0 - for n in new_root.descendants: - if n.parent.is_root(): - n.deprel = 'root' - n_root += 1 - if n_root > 1: - logging.warning('More than one 0:root relation in the second part of the sentence.') + self.make_zeros_roots(root) + self.make_zeros_roots(new_root) # Update the sentence text attributes of the new sentences. root.text = root.compute_text() new_root.text = new_root.compute_text() # We have found our sentence. No need to process the rest of the document. break + + def make_zeros_roots(self, root): + """ + The steal_nodes() method does not make sure that all nodes newly attached + to the artificial root have the 'root' relation. Fix it. + """ + n_root = 0 + for n in root.descendants: + if n.parent.is_root(): + n.deprel = 'root' + n_root += 1 + if n_root > 1: + logging.warning('More than one 0:root relation in newly segmented sentence %s.' % root.bundle.bundle_id) From 7aa646ca5d1899da81fc9bfb3b0165b7a7da618f Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 5 Sep 2024 23:27:49 +0200 Subject: [PATCH 030/233] Updated rules for multiword tokens in Czech. --- udapi/block/ud/cs/addmwt.py | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 4c203ddc..116761ff 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -1,13 +1,14 @@ """Block ud.cs.AddMwt for heuristic detection of multi-word tokens.""" import udapi.block.ud.addmwt +# Define static rules for 'aby', 'kdyby' and similar forms. MWTS = { 'abych': {'form': 'aby bych', 'feats': '_ Mood=Cnd|Number=Sing|Person=1|VerbForm=Fin'}, 'kdybych': {'form': 'když bych', 'feats': '_ Mood=Cnd|Number=Sing|Person=1|VerbForm=Fin'}, 'abys': {'form': 'aby bys', 'feats': '_ Mood=Cnd|Number=Sing|Person=2|VerbForm=Fin'}, 'kdybys': {'form': 'když bys', 'feats': '_ Mood=Cnd|Number=Sing|Person=2|VerbForm=Fin'}, - 'aby': {'form': 'aby by', 'feats': '_ Mood=Cnd|Person=3|VerbForm=Fin'}, - 'kdyby': {'form': 'když by', 'feats': '_ Mood=Cnd|Person=3|VerbForm=Fin'}, + 'aby': {'form': 'aby by', 'feats': '_ Mood=Cnd|VerbForm=Fin'}, + 'kdyby': {'form': 'když by', 'feats': '_ Mood=Cnd|VerbForm=Fin'}, 'abychom': {'form': 'aby bychom', 'feats': '_ Mood=Cnd|Number=Plur|Person=1|VerbForm=Fin'}, 'kdybychom': {'form': 'když bychom', 'feats': '_ Mood=Cnd|Number=Plur|Person=1|VerbForm=Fin'}, 'abyste': {'form': 'aby byste', 'feats': '_ Mood=Cnd|Number=Plur|Person=2|VerbForm=Fin'}, @@ -25,13 +26,14 @@ person = '1' elif 'Person=2' in v['feats']: person = '2' - v['xpos'] = 'J,------------- Vc-%s---%s-------' % (number, person) v['deprel'] = '* aux' v['lemma'] = v['form'].split()[0] + ' být' v['main'] = 0 v['shape'] = 'siblings' +# Define static rules for 'nač', 'zač', 'oč' (but not 'proč'). +# Add them to the already existing dictionary MWTS. # nač -> na + co for prep in 'na za o'.split(): MWTS[prep + 'č'] = { @@ -43,7 +45,6 @@ 'shape': 'subtree', } - class AddMwt(udapi.block.ud.addmwt.AddMwt): """Detect and mark MWTs (split them into words and add the words to the tree).""" @@ -52,21 +53,20 @@ def multiword_analysis(self, node): analysis = MWTS.get(node.form.lower(), None) if analysis is not None: return analysis - - # There is no VerbType=verbconj in the UD_Czech data. - # The purpose of this rule is rather to show that - # it is possible to write such "dynamic" rules - # (which cannot be included in static MWTS). - if node.form.lower().endswith('ť') and node.feats['VerbType'] == 'verbconj': + # If the node did not match any of the static rules defined in MWTS, + # check it against the "dynamic" rule below. The enclitic 'ť' will be + # separated from its host but only if it has been marked by an annotator + # in MISC. + if node.form.lower().endswith('ť') and node.misc['RETOKENIZE'] == 'rozdělit': return { - 'form': node.form.lower()[:-1] + ' neboť', - 'lemma': '* neboť', - 'upos': '* CCONJ', - 'xpos': 'Vt-S---3P-NA--2 J^-------------', - 'feats': '* _', - 'deprel': '* cc', - 'main': 0, - 'shape': 'subtree', + 'form': node.form.lower()[:-1] + ' ť', + 'lemma': '* ť', + 'upos': '* PART', + 'xpos': '* TT-------------', + 'feats': '* _', + 'deprel': '* discourse', + 'main': 0, + 'shape': 'subtree', } return None From f4417c0a4dcfa46b3cdb7d7fc65ef50912be280e Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 6 Sep 2024 08:48:23 +0200 Subject: [PATCH 031/233] =?UTF-8?q?"jemu=C5=BEs"=20=3D=20"jemu=C5=BE"=20+?= =?UTF-8?q?=20"jsi"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/addmwt.py | 51 +++++++++++++++++++++++++++---------- 1 file changed, 38 insertions(+), 13 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 116761ff..14f6e474 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -54,20 +54,45 @@ def multiword_analysis(self, node): if analysis is not None: return analysis # If the node did not match any of the static rules defined in MWTS, - # check it against the "dynamic" rule below. The enclitic 'ť' will be + # check it against the "dynamic" rules below. The enclitic 'ť' will be # separated from its host but only if it has been marked by an annotator - # in MISC. - if node.form.lower().endswith('ť') and node.misc['RETOKENIZE'] == 'rozdělit': - return { - 'form': node.form.lower()[:-1] + ' ť', - 'lemma': '* ť', - 'upos': '* PART', - 'xpos': '* TT-------------', - 'feats': '* _', - 'deprel': '* discourse', - 'main': 0, - 'shape': 'subtree', - } + # in MISC. (These are annotation conventions used for Old Czech in the + # Hičkok project.) + if node.misc['RETOKENIZE'] == 'rozdělit': + subtokens = ' '.split(node.misc['SUBTOKENS']) + if len(subtokens) != 2: + logging.warning("MISC SUBTOKENS='%s' has unexpected number of subtokens." % node.misc['SUBTOKENS']) + return None + token_from_subtokens = ''.join(subtokens) + if token_from_subtokens != node.form: + logging.warning("Concatenation of MISC SUBTOKENS='%s' does not yield the FORM '%s'." % (node.misc['SUBTOKENS'], node.form)) + return None + if subtokens[1] == 's': + node.misc['RETOKENIZE'] = '' + node.misc['SUBTOKENS'] = '' + return { + 'form': subtokens[0] + ' jsi', + 'lemma': '* být', + 'upos': '* AUX', + 'xpos': '* VB-S---2P-AAI--', + 'feats': '* Aspect=Imp|Mood=Ind|Number=Sing|Person=2|Polarity=Pos|Tense=Pres|VerbForm=Fin|Voice=Act', + 'deprel': '* aux', + 'main': 0, + 'shape': 'subtree' if node.upos in ['VERB'] else 'siblings', + } + if subtokens[1] == 'ť': + node.misc['RETOKENIZE'] = '' + node.misc['SUBTOKENS'] = '' + return { + 'form': node.form.lower()[:-1] + ' ť', + 'lemma': '* ť', + 'upos': '* PART', + 'xpos': '* TT-------------', + 'feats': '* _', + 'deprel': '* discourse', + 'main': 0, + 'shape': 'subtree', + } return None def postprocess_mwt(self, mwt): From 111a5f2ecfd0159797714fe6ac28b4347240cb01 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 6 Sep 2024 09:08:38 +0200 Subject: [PATCH 032/233] import logging --- udapi/block/ud/cs/addmwt.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 14f6e474..30a3d648 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -1,5 +1,6 @@ """Block ud.cs.AddMwt for heuristic detection of multi-word tokens.""" import udapi.block.ud.addmwt +import logging # Define static rules for 'aby', 'kdyby' and similar forms. MWTS = { From 6dd62269a7fa1c61c98c139e1b5d6877e7e1904d Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 6 Sep 2024 09:15:37 +0200 Subject: [PATCH 033/233] Bug fix. --- udapi/block/ud/cs/addmwt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 30a3d648..e07c5ca6 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -60,7 +60,7 @@ def multiword_analysis(self, node): # in MISC. (These are annotation conventions used for Old Czech in the # Hičkok project.) if node.misc['RETOKENIZE'] == 'rozdělit': - subtokens = ' '.split(node.misc['SUBTOKENS']) + subtokens = node.misc['SUBTOKENS'].split() if len(subtokens) != 2: logging.warning("MISC SUBTOKENS='%s' has unexpected number of subtokens." % node.misc['SUBTOKENS']) return None From 92d5a0d2ffc7d2662d2e077fbfac057cb880ec8b Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 7 Sep 2024 11:10:01 +0200 Subject: [PATCH 034/233] =?UTF-8?q?Adapted=20to=20improved=20MISC=20annota?= =?UTF-8?q?tion=20from=20Hi=C4=8Dkok.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/addmwt.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index e07c5ca6..103541c9 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -59,18 +59,17 @@ def multiword_analysis(self, node): # separated from its host but only if it has been marked by an annotator # in MISC. (These are annotation conventions used for Old Czech in the # Hičkok project.) - if node.misc['RETOKENIZE'] == 'rozdělit': - subtokens = node.misc['SUBTOKENS'].split() + if node.misc['AddMwt'] != '': + subtokens = node.misc['AddMwt'].split() if len(subtokens) != 2: - logging.warning("MISC SUBTOKENS='%s' has unexpected number of subtokens." % node.misc['SUBTOKENS']) + logging.warning("MISC 'AddMwt=%s' has unexpected number of subtokens." % node.misc['AddMwt']) return None token_from_subtokens = ''.join(subtokens) if token_from_subtokens != node.form: - logging.warning("Concatenation of MISC SUBTOKENS='%s' does not yield the FORM '%s'." % (node.misc['SUBTOKENS'], node.form)) + logging.warning("Concatenation of MISC 'AddMwt=%s' does not yield the FORM '%s'." % (node.misc['AddMwt'], node.form)) return None if subtokens[1] == 's': - node.misc['RETOKENIZE'] = '' - node.misc['SUBTOKENS'] = '' + node.misc['AddMwt'] = '' return { 'form': subtokens[0] + ' jsi', 'lemma': '* být', @@ -82,8 +81,7 @@ def multiword_analysis(self, node): 'shape': 'subtree' if node.upos in ['VERB'] else 'siblings', } if subtokens[1] == 'ť': - node.misc['RETOKENIZE'] = '' - node.misc['SUBTOKENS'] = '' + node.misc['AddMwt'] = '' return { 'form': node.form.lower()[:-1] + ' ť', 'lemma': '* ť', From a89ca772c1e7218d0b595bf748606f4965eb9275 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 7 Sep 2024 11:26:10 +0200 Subject: [PATCH 035/233] =?UTF-8?q?Allow=20short=20form=20"=C5=BE=C3=A1den?= =?UTF-8?q?".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index ba81c94b..7438fdee 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -439,6 +439,9 @@ def process_node(self, node): # However, in New Czech data the one lemma is "samý" while in Old Czech data it is "sám". # Unlike other determiners, it allows Variant=Short: sám, sama, samu, samo, sami, samy. self.check_adjective_like(node, ['PronType'], {'PronType': ['Emp'], 'Variant': ['Short']}) + elif node.lemma == 'žádný': + # In Old Czech, this determiner also allows Variant=Short: žáden, žádna, žádnu, žádno, žádni, žádny. + self.check_adjective_like(node, ['PronType'], {'PronType': ['Neg'], 'Variant': ['Short']}) elif node.feats['NumType'] == 'Card': # pronominal quantifiers 'mnoho', 'málo', 'několik' etc. if node.lemma == 'nejeden': self.check_adjective_like(node, ['PronType', 'NumType'], {'PronType': ['Ind'], 'NumType': ['Card']}) From 5dbedbec8a0db85d0d57a6931d909c542ba9e499 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 7 Sep 2024 11:43:57 +0200 Subject: [PATCH 036/233] "Lecco" behaves like "co". --- udapi/block/ud/cs/markfeatsbugs.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 7438fdee..78030100 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -248,8 +248,8 @@ def process_node(self, node): }) elif re.search(r'k[dt]o', node.lemma): # kdo (kto), kdož, někdo, nikdo # There is no Number. Někdo and nikdo behave like singular; - # kdo is by default singular as well but it also occurs as a subject - # of plural verbs. + # kdo is by default singular as well but it also occurs as subject + # of plural verbs ("ti, kdo nepřišli včas, byli vyloučeni"). # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kdo to je?" use Rel.) # New Czech data, in particular PDT, use Int,Rel regardless of context. self.check_required_features(node, ['PronType', 'Gender', 'Animacy', 'Case']) @@ -259,7 +259,7 @@ def process_node(self, node): 'Animacy': ['Anim'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Loc', 'Ins'] }) - elif re.match(r'^(co|což|něco|nic|nicož)$', node.lemma): + elif re.match(r'^(co|což|něco|lečco|lecco|nic|nicož)$', node.lemma): # Although these pronouns behave by default as neuter singular, # no Gender and Number is annotated. However, quite unusually, # there is Animacy=Inan without Gender. From ea7d93441b1cf8d9c630ddc8d68cc74d4f9db025 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 7 Sep 2024 14:36:16 +0200 Subject: [PATCH 037/233] Fix root-related errors. --- udapi/block/ud/fixroot.py | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 udapi/block/ud/fixroot.py diff --git a/udapi/block/ud/fixroot.py b/udapi/block/ud/fixroot.py new file mode 100644 index 00000000..be972d8b --- /dev/null +++ b/udapi/block/ud/fixroot.py @@ -0,0 +1,37 @@ +""" +Block ud.FixRoot will ensure that the tree is free of common root-related errors. +Simple heuristics are used; it is likely that human inspection would lead to +a different solution. Nevertheless, if a quick fix is needed to pass the +validation, this block can be helpful. + +WARNING: The block currently ignores enhanced dependencies. +""" +import re +from udapi.core.block import Block + + +class FixRoot(Block): + """ + Fixes the following validation errors: + - Only one node must be attached directly to the artificial root node. + => If the root has multiple children, keep the first one. Attach the other + ones to the first one. Change their deprel to 'parataxis'. + - The node attached as a child of the artificial root node must have the + 'root' relation (or its subtype). + => If the root child has another deprel, change it to 'root'. + - The node attached as a child of the artificial root node is the only one + allowed to have the 'root' relation (or its subtype). + => If another node has that deprel, change it to 'parataxis'. + """ + + def process_tree(self, root): + rchildren = root.children + if len(rchildren) > 1: + for i in range(len(rchildren)-1): + rchildren[i+1].parent = rchildren[0] + rchildren[i+1].deprel = 'parataxis' + if rchildren[0].udeprel != 'root': + rchildren[0].deprel = 'root' + for n in root.descendants: + if not n.parent == root and n.udeprel == 'root': + n.deprel = 'parataxis' From bf43850d6d30c5e8cafb948f325874b33d9a0aed Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 8 Sep 2024 11:17:01 +0200 Subject: [PATCH 038/233] util.JoinSentence is the opposite of util.SplitSentence. --- udapi/block/util/joinsentence.py | 78 ++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 udapi/block/util/joinsentence.py diff --git a/udapi/block/util/joinsentence.py b/udapi/block/util/joinsentence.py new file mode 100644 index 00000000..e52f0e8e --- /dev/null +++ b/udapi/block/util/joinsentence.py @@ -0,0 +1,78 @@ +""" +Block util.SplitSentence will split a given sentence at a given token. +""" +import logging +from udapi.core.block import Block +from udapi.core.root import Root + +class JoinSentence(Block): + """ + Joins a sentence with the preceding one. There are two ways how to indicate + the sentences that this block should process. + + Method 1: Parameter sent_id provides the id of the sentence that should be + merged with the preceding one. At most one sentence pair from the input will + be merged, even if there are multiple sentences with the given id. + + Method 2: A MISC attribute can be specified that, if found, will trigger + joining of the current sentence to the previous one. With this approach, + multiple sentence pairs can be merged during one run. + """ + + def __init__(self, sent_id=None, misc_name=None, misc_value=None, **kwargs): + """ + Args: + sent_id: which sentence should be appended to the previous one + misc_name: name of the MISC attribute that can trigger the joining (cannot be combined with sent_id and word_id) + misc_value: value of the MISC attribute to trigger the joining; if not specified, then simple occurrence of the attribute with any value will cause the joining + MISC attributes that have triggered sentence joining will be removed from their node. + """ + super().__init__(**kwargs) + if misc_name: + if sent_id: + logging.fatal('Cannot combine misc_value with sent_id') + else: + if not sent_id: + logging.fatal('Missing parameter sent_id') + self.sent_id = sent_id + self.misc_name = misc_name + self.misc_value = misc_value + + def process_document(self, document): + previous_tree = None + for bundle_no, bundle in enumerate(document.bundles): + # In general, a bundle may contain multiple trees in different zones. + # In UD data, we always expect just one zone (labeled '') per bundle. + # This code could be extended to join all zones but we do not try to do it at present. + if len(bundle.trees) != 1: + logging.fatal('Cannot process bundles that have less or more than 1 zone') + if not bundle.has_tree(zone=''): + logging.fatal('Cannot process bundles that do not have the zone with empty zone id') + if self.misc_name: + root = bundle.get_tree() + # The MISC attribute we are looking for should logically occur + # on the first node of the sentence but we can take it from any node. + join_commands = [n for n in root.descendants if n.misc[self.misc_name] and self.misc_value == None or n.misc[self.misc_name] == self.misc_value] + if join_commands: + if not previous_tree: + logging.fatal('Cannot join the first sentence as there is no previous sentence') + previous_tree.steal_nodes(root.descendants) + previous_tree.text = previous_tree.compute_text() + # Remove from the node the MISC attribute that triggered the sentence split. + for n in join_commands: + n.misc[self.misc_name] = '' + # Remove the current bundle. It will also update the numbers of the remaining bundles. + bundle.remove() + else: + previous_tree = root + elif bundle.bundle_id == self.sent_id: + logging.info('Found!') + if not previous_tree: + logging.fatal('Cannot join the first sentence as there is no previous sentence') + root = bundle.get_tree() + previous_tree.steal_nodes(root.descendants) + previous_tree.text = previous_tree.compute_text() + # Remove the current bundle. It will also update the numbers of the remaining bundles. + bundle.remove() + # We have found our sentence. No need to process the rest of the document. + break From 57be371819f4e3905b5d581727bec3756d3f4dc8 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 10 Oct 2024 08:36:55 +0200 Subject: [PATCH 039/233] AddMwt: also xpos and feats. --- udapi/block/ud/cs/addmwt.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 103541c9..7cbfa4b1 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -41,6 +41,8 @@ 'form': prep + ' co', 'lemma': prep + ' co', 'upos': 'ADP PRON', + 'xpos': 'RR--4---------- PQ--4----------', + 'feats': 'AdpType=Prep|Case=Acc Animacy=Inan|Case=Acc|PronType=Int,Rel', 'deprel': 'case *', 'main': 1, 'shape': 'subtree', From e3c30ec69ed8d7eeeeb010ee9c6e4e4a2cbac8c5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 10 Oct 2024 22:51:35 +0200 Subject: [PATCH 040/233] Change det to amod if it is ADJ. --- udapi/block/ud/fixadvmodbyupos.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index 781e7586..e7bd03a6 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -29,10 +29,14 @@ def process_node(self, node): node.deprel = 'discourse' else: node.deprel = 'dep' - ###!!! The following are not advmod so they should probably have their own block or this block should have a different name. + ###!!! The following are not advmod so they should probably have their + ###!!! own block or this block should have a different name. elif node.udeprel == 'expl': if node.upos == 'AUX': node.deprel = 'aux' elif node.udeprel == 'mark': if node.upos == 'PRON': node.deprel = 'nsubj' # it could be also obj, iobj, obl or nmod; just guessing what might be more probable + elif node.udeprel == 'det': + if node.upos == 'ADJ': + node.deprel = 'amod' From 26edfbcc35381a888d88c2c50a39d27e4a6ac2b8 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 11 Oct 2024 23:37:47 +0200 Subject: [PATCH 041/233] Removed import that is not used. --- udapi/block/ud/cs/markfeatsbugs.py | 1 - 1 file changed, 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 78030100..00be9993 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -7,7 +7,6 @@ Windows: python udapy read.Conllu files="a.conllu,b.conllu" merge=1 ud.cs.MarkFeatsBugs write.TextModeTreesHtml files="bugs.html" marked_only=1 layout=compact attributes=form,lemma,upos,xpos,feats,deprel,misc """ import udapi.block.ud.markfeatsbugs -import logging import re class MarkFeatsBugs(udapi.block.ud.markfeatsbugs.MarkFeatsBugs): From 9a658f066fb1028ac65cc7464e257278dd600db6 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 11 Oct 2024 23:42:48 +0200 Subject: [PATCH 042/233] Dan's tutorial. --- tutorial/udapi-tutorial-dz.odt | Bin 0 -> 185047 bytes tutorial/udapi-tutorial-dz.pdf | Bin 0 -> 236726 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 tutorial/udapi-tutorial-dz.odt create mode 100644 tutorial/udapi-tutorial-dz.pdf diff --git a/tutorial/udapi-tutorial-dz.odt b/tutorial/udapi-tutorial-dz.odt new file mode 100644 index 0000000000000000000000000000000000000000..b3e8e9f0937e431c9a2e3a6cf3c38730ff104673 GIT binary patch literal 185047 zcmc$`WpEw65+HhF$IR@QF^=sRV`hk%neCXFnPX;VW@b8OW@ct)W<2ZfzIV6YR^7d? z_Sb4kH5y6X>TXfDsx`6_;9t=J0B8VUzU@R+dw>z10ssK~6F;*6mZp}54z4zax;8cz zruw=Lrq)(;PF4oA*1Gnl_O#YEhE@jF`i_={Rt~fdhAs}W{|mBD`2QJjK2w6$Rz{}A zj&}b-W6wxuV{PMT^9k!n_rHh3{ts~ffavMk{TC>_{{UrUXKid}Xm9`DA^%f*4%XHd z{~hW-acA$K>)`nR(;DG_pwrY+*VxdWPQcW`QrE`*zcBfqNHwys)^#xaKNXFxzP_P_ z;b*^C|2N40#NwgB=&y>A`tA(LGt&63_Ij)xVZqs#p zXU|oRr~c37VRBnmcRsA9jW21fxywBDbWrNK7Ea`HL?ufbI-A=?#dIPe_N_u`oYsyR%V8MjySeylwhw!f3V9YVuh5 z@uEZe(tYs35;ZJct*+yv%)P#$jv;U)3yf-Yq4AL>_te8hU4 zhuB>e@^E)=osy-q*|{!FJ;b4w!X%>zO;PQ`y6)M={Jm3hL%AlKUrWp4FQbf**kr79 z-IQ^L619plPsTY$@fs*>mFAov&3Z|NU<&usnUtkjZ4F!&)C5|30;4Ouk#C|=B2QP2 zOERq%bQ?&0{`hKxME3GG~;NBqlZl{bJE|I zJcHTMTmfx<%JgA8;4?2D4kOuX7y8?*9*vown1`(@Meiu;k z^G$%GLbkAt@9Aeup-&RnQ0{zT@$SJu^G1vw;|nY57SfRSl_pN_&xE}u(}8vW3p_i^ zOt46I#I*){^)2vEqKOY3`HE^Kj6~)c_y>tzmqmy%f{mYP0+#E?GUZB-EmP70Jn^vX`E^N+OONn$)X({Jk%)SZOJ*4n8B>ehu*`cB3oJdrW#{@2TjP*cKkVtDBL#${ELI>ekw{xpFu=f zfttWRcnd1SjdA

&s4 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

l&8j5#kk974LK!{sVU?f!;k;A`1QG6tF%(< zDUvSGTA0blqsBZSYD(Mxy(z;q{-trd!)4e5NTxX7Z#7 zDISaBDDR&+P;ls1g$$Mtm)Tyi;jw-@-qA{LZe&~Fkk%#LU1D2^so|@y<6Zsut$O9S z&$e<83-LT2CZwOHC_ghU`z%h3{kUB^dt zF6Zo(zkg^h)h)qv4&gT;1F4eI)<9o=!AT&+Jw;`oN=6TY;GbS>qR~eomVFitv8~86PI`@bM%Rm+R>=_EkEn1cY-& z@&C5{i>0R;_b6CmUPg@&iu$ZU=fKy8`)pGb+aQ*T+xpYj@bhqmD z<$G_-WrY$H%h_=5(YI*FZ*BgQ-@7LZth^Jki69tUSJPrn$8+H_Y!`ZeJK%p@_?@L3 z2GBf+KT?;EdWy%p(!jZoD9};Kj_1)S=#k1uHUdtnV2nfwLOd!67!*kqE^>}X6ps@r z&|+GBg}og`b!WKe2Tt;hNdx(eBoa*N1Rh-a&GdNmURi!g%dMQVVqIm9DzHd;!pIOj zdzSb|0p-linN7nElbH~BwNWS8t?-MyL5*EH_S-&i*92@r{jv2@N=yEd#Zkb#Z1R(t ze1h@CgL6CkONt&BspaismTdT->CrmD-%iOfH7+Xtysdoz%@iD2LBPJ-GT(M6Tp%OS zajyHI=qcZig^;}7?w;E`+Mh3kmnDS!=9gP}2HnbQ41D}XZ=GFd6U(4E@ztTh37(VH zD=5k+jttl!yj}vib14a(h_mE$q*)17vsOzG_ojk20y|6gr%QD<&dZSu*9CK4CsR){ zJY{8;JL0m!ZBP`m+6Ct!qvIjxGcZrlv!eml4@~=L3J0}fbybJ&v!AxVNUANT0orBY z-=In{T~wPg-GXgi+eve0#|byimXjPhik6jnqV}4T+j@~o3}|c;nAIWSg$v5pV~Pxm z2sM*Wt`}IOp?0U^JN;XjmPJjSVSegZ&7`NjySO+pv~eN@?xG;;H9TKesO}jCNX;)8 zWBr!J);QxE(>DGtzY2-)&#L$rp!fG>>AXceG%6cm_z3rr;Zk#yn@G2>q{0kNC)Wlv z%dno&-X|`Cr(kQ84q36UQS^Pg!}+kfXXo{cK!Y~4l7zEQg8yk-Q4vtM{jc*VEOOM? z$ZRXfTQS|`+E-lKbM^LxZSGb1r$f(Y#y zzq9mGvsTw;bR6-N{79Ub=;B-;{#dv;&|@*CX1+JCV$gZg5%TCnK-gcVk+6m_lzjZ=K)Jt7a5nx@t%eN{b5(Y19?2FTG=vLPj&0>bBmP*$) zT^R>^4NcY+wM!uJ&j%s55x9z<8n4(Wr%QX6*8PlkY%I$H5)lf^YK^+y$bI-jf~Vr7 zenQ*>SN**BW<;p-<8Jl0otSi`_T9#8R7=~|@I0a$JNLI4XSr8xe+<^ANI=2sIQ@<8 z0E=CP3+dUn?RNT7GoDPo560!`>b~&D5;&%)_N5k$r;h~De@+o*e=%wi!{v>co;L~Lyse1lOniCeJJd=FcT|C7pi#Xc ze+{K&1)WTU;=pKL&QYG(Y0Glekeda$vRVPERGB5)=mVS0`J2UZzhkoSo?*I_N2bBY z_ENv6YM6Cza1N^MH)M1n zcR7aAlV32oV~;?Wy;kMOa(xLiKjp&{A+;->f?EpZ>~CNx9bxFl525lEX)pASjfuZ$ zS}p_tuPO<0DUT19581S0+x){sT!I79o!4{L*g7z_qqokwOl_@fV3IZMJfqngk{-8h zlbLm-?uNZXA9hXjGgHtEzDp#+ZYi-(|q@;Jv-l|+4~5# zO(l1IzIjxjbG#CA9jY+$w`6Xf+h(bH^0%7QVPujng3f*DiX;kfL)LiMiCj1$#Jw^k z%X*#(;#xO2sJPhUKj-#;FSB-A9ii@VGIa@2H z++8<4AhM$VF3L3_$MV|>Ebc;jz|9C=g71Ki@Gv+}!V#{5ea$bG^TiCoztSFf?R zB?4ofQf!M4$Jcu3PFJ-Fq&|A^A3Kas_@6$XHVd!=Z;tgJx3dpf@&z*7lVW7=hlCGo z9!2qMq$qv7B`3+yEHyi5FdhHLHWlabgFm$Yp_qLtTkNMAVhq0@nmq{nUsEro^uCwu z2at>qmB3!$tul)ykJZ#dx!Ey?65r}J(SyQgnm7-f0+Um&7|(PJvh$m=^SYYSC6!ub zKZlwyVQ;p3qDw%vsU*_cMq2gNU0=tP{SSu(-E9822wGoorsU0)8_Ev-u5C1g+|p6D zrI%`VI+UJvh3Hf*`Cn`u2b@WinjyFxH>v?R6u)y`{5B9u)UR&yb~csbSK!8OG|?8Q zd{IxbZxR=j2-r$|Aeu+-rF77Z@z#44UvccWc0qnH%J6=~ueES;Q~x<{;mq16FrxEZu4ykQ&vSTj@2ipyrq!j~@2pzzgt#!MX$bV+_1GOi*e(curg>%G-N z+7};+cX{S(1%0(*0SV!rBU}A_CP(**1GNuf-7cz9P2g|0HMR#19s{Dj_XJ7xinrPF!U11xOI_PQS*%#smOrViFMN{qX+LaouT= zMiLVrRkP0~GZgIjLbV?h&0{BS;9)A_tA0_^X=Z7B89GJ}cfh(oou;SlFKN{5lpcz` z6A(?kE^VRo6%|)pfi~@5=GO;^UigOGTKJVD_uoY3@)3gWcR>5!9r$9L6#DSUhDQ_p z^PT8R+2C(BUXdFpK>637Q zSZ;`R-ixW>v@_i6_;L1(Bv+zDJIC1ox^eJ^Z>9j&^a-?=h^}@$Cq3`t+Dy6er zLG{)4geVpuI|?P_(V0hgb&>(dhx<~9UW72oTLpGizTpm)Cmrj`v z7z*n0UGqnsPZOcL)Rgqz&U(HVf)Py2&YIpCk|)F^>691A#WCM%=)gLM9YXf;v$;EH zg`$bokS=GqR(CF`9dY(lYAD#N5v+Qmt?j+=%&#I(x4Em;5dJD*hts#ge)%{4B#+cB zh4{QEW`%e@<$|T7Bl@TA0SAt(ihkYgBK3|*1$9ve?4wuZ>C+l(hAjv%IA`pW4@oIc zKVmWH?f4kgZxT0qM#^)7 zi7TsPI^JJf$R3}Tuu+yuf_w3c9gEwms-p0Hx8DVwK3QHjv6B-H7s5$Z?0V}O5Q;Fb zuO0|x?`2J&#tf}L-?rzqQs+>JmRN8KP$waVV68%MGz|69=EU|v{qQOT3KQJ-x?nf01W z3LK8i=xc$*AjumO3Rp<(mF9(TCS9QwxAPcCs?qCGE`Uy(s+1(kr`4dH5-@#d zZZKbvbdV#Qc~sOhen4{G&VlYAwO@p>Ga%Q>-Nor9l7xnGi^Pq29Cie*<%$Q|e0S2y z|A00lgQ+eqLLIolB0RT;g+e%ioKfZwU8!lirO}_+X2<4(Sw{Xox+RwulFuKs8c)y= z4&F6W3II))wVJEoYJ)hC5ND}D+&Y!8O63|u2>;UtLu7UCN#7thYdhxn*vP^P-ir~5 z7^J@XOiivL;kocRv#mMQg1t6(&dn?31VZ+jy2U4EUe^WP%>eqPF-FpKEG-239xw+U0;#bK8KbKw_1pZbPQf7=9$O*x+`gQ0b2 zpzJi^xa?n%j7I)Iw-(xiKcA)>-ZuX!z8WB5uf>&0waYqsaUY<#{4)6VKAt&czCuTf z9rtey#7@GjE)6=!m3V$~782P7yUlvFc_&zZ=yZCzWCyM-;!kpes#@{(xI-?td2+Vs zjSWwYSN~)++3ES29}pOc)K6y_N|ZV_+k?b!zi{?6Y9$T(fX;ZWXPd~uV{;!Z6GyZS zK$~K&om65zGB`i06-W+>vSn}dl{&J*yJ%c8p{Sd*wX1X72y%pwZSUUt#ojh62Vz%4 z){lislGrw^NKd-}Yhx^kM3)^PO6BKCQIPSz$+MT`J6sd;5A$ELg1;3#Dt&_aY{##@ z_S)RO_&cv(_m18je@1{>;lY=bY1$Csu+9CK6#tg$S{%GkXLV{6LAJtv#0GP^UGzVU zSB;_t(x^-i7q_zDj(uS^rc;06TjuH;{;tL_r^~QtpfK4ZU<^<2_gIdbtj1xNOPf21 z*tae6D5H&*qs5Vb&XL0x*oYbe2*BSjMa@ABQUu9+9^_8wJR1;%xBW@k`18$hN)?!8mU%GIO`Ep9epuE3yHm^za_?`%Z zN!){Is5;l|DcB^#U^BC_PrWPHk4;WOqc)2vtT*Gf zOYgKjiM!LY;QgFomSaFzG_!uXvXIk(LQ$NpTnn5@OkDXmdJE54p4rY9U}k7zU=&qkQ0~>6lu{Ts8~dXp%f}0+WvK6@K_@LQg)OCCXbXsLKgkihczXwTTNhL)GI%C+c+w>Q zSPTCoFx9S5^24ts#c_`dI|YbV57W-{(F>D;6ak`=P~CAHsv)oCy1Eq__nU9m!&b}J z)JYdEm9+QkFZyTM$G9VE?%1k&0!2RT2eKMy{c={iCs-11=IW4&uK%?zJN~p`yA+aa zQ!mb6Ud^4xL`cR6tIc@=HEuBcU7dpMmlX=Lgk*l3_W!EUgK%iT3^{meoDSLx090?* zNlL8vO#_O?!oUCOz0YHBv5R?EvpHMVWOTH51h+ZMY6xg%4T-`}Y)7S6vT+~q8UB0; zQ3q)1MblWG!RL=n7*+hgHPsjnuo9&`9GZ-m$()~+5x9?s4KkJ->FHx3`Of!;(6lZN zH_XX~M>^qW-?;YU5L#ltt&!t_aq_Uqhc!M=g{x2M09!K4?PP}6!{1lsD#~SX${zMx zLYZU~kkHP}L*uh4n^7;;>Wkox1+pOlHbWrqkL4MN+i6^oHhsy8weihv0rjq)zO&%b zFPnr5)O6L$U+NN%2RBi(-+j|1xv6Wd=LcndfisUh?fgaeG(n%U?#JiL?*55Uv3@0G zIQ!faHYAE6DmIO#CNCwsIVgRbSDGSLGX_Y=g=o4@ipL+sFrD8Fg4av>t08XElKKis z8a79QwU_gJ#`&DoNMm?41u|(TG36+m+Y8?_lN*n5OjIpV)y1h>{;}@=+(9tb7xZOvrEPWqO*6savl^|ly5+frQW}Z(U6^i+L5DMK6bFY6M-`${x2_BM`u+M| zpAMLRE^()l7dIWnyW1yEA3U@}hm^PZOpLRmR<%6?Ql1ip-k(tP$y zCxdxE&3dCTM0I;I)SP98_~up2EDn{ib30&bAY@?LlN2%d zIGs7)fc4@*jZ&cfA(smn7!?q#C|ptWM`7-x$<+&g%E(!%TtgFrTXK>A{gEz?+CJ#Hz z&ybparj!tnW||RG5I35@*K(ar;=9K&IUhV=)u~zjvEh9Sc-a*`V(ed1R5pxp{xG6E znv07H)q(xH>{fu9>x}DeOkyMW3(dPA$qzI<>zhmTm7x3uuhri1_IW{Gtuk{ZYxm#B zS~VXK#DE}JCsO=Hj=7t}#ena}inR*!Et0p40lLrkFmAsR-YJhMkLBwC&*aavJRCKw z#XwRLkXm$oJV)i}H<+umE70<0nR7=umKz_8RYYia1?0ZD$XNQiwl(XQxQDn}ot!!i z4(KZVq~P5(@9aO-eQ(I}Gj108#L&%LL@8w9B}Q-kpMjSlR7pFY_0;V!EP`tU17FI& zZ9`m8LgL&*#`g_m|JjOHT&`5_`S;vFN>TRXc|AYt=%mH6CL1dwVHxz&3Tk2JE z-A+gj-SwW*p&t4+l^&&Tq{X_q*J+5b9uJVNd-LcrKdhmj7~a3gW34J9oa2;UC=VkAuo){ejTUze_yW9 zO8%>qNnFK{yu@_EDJet?gx81IXmwh=xC5TtXkE*7nJAbkFDWMJk3$7le{aD4ZYl_R zqKyDOLp*H_0@T?9JZ(%Le5x~@6E27Dy(KW?E>2}|%2sl2@3IGuQhB$+60l3&xAB_3 zi9^$ueI!+qE9WlQB&b8notm4XU_K* zO8y?ykv${Pag`?WM-TT3KWsXDJ}fKUeLa05X@m1om>QuaH+-{drX!|ty-e2o znY8!?R?6N?eQQV=zl}y7G*{@zIuU(B97s#Cod$!E2a6+C&cBZi(7LzYeW;`t^KAbt zArS@g+aKN-1)?@;Bl29w@J;CGq)dprfBzW0l6I30(j>njA@;}-;5`40Jl8M7#P#$i zJPm%kYJAwbu^zsIXa;?TUqoku`F9WHxM_+LGaCCRrFEk9GMJT7Vi(s}F6)XX`BeO) zOb2~svzw+FD7T^eVZ*@**-%Ad4*18PCVWXJt*|$x+V+Eub3gQH!ZSvAg)eLwUX{Ex ztpk+tQcOu7tOl9?0xoymnPs^v*;NDHugG#lmo@15Sq+v^A8~t6>ae#7Z?>6T7F+0M zaS*jLOZdb_P5HX;ceRDLOX8Z*w1^Kg0j;)pf76zfFpRSA*u8Ociqw%A1*Dj9`0Mbk zZWU;Lityd^$ie%^M$iF%0kpG-EF3g2ZacRTH4BaIv{&%-6~g!DGhkemO>-{0luJQ` zTDSwvM2(5?k#$52Gw23fh%?p z?qt@`-?F#i0<5@A)a%6#Bth9CuNvly&D8!lPg=Ps-27de;jF z`<=3JYK(|uP6xq zMf;&*5dgb=l}(_dKI6b?fXao8JltB60-&B&r+>%%;d_$D8FJB?>fN9Nz+vAEri7lB zVg`x8KUuRfoT$T?uL1@B3LuvvUC}F5F(ou>L;goW-N$WWJz#;l%zBskZ%tCA+x$2C zK=%XBU-=wf9nh&J+YxqL7KSXn(!-dEUI}li?4SjLL1iV(8)8}Nx#O9Dfv6`9i6s?7 zcGsWUX42Tjo2&HGwo2?8cdu_5*)7E;M!lQ3@DK!t5WU2WeE*@me^M3W2@N6+fj z7{7VrdvG0+m3&#^um*wbbKAaLR-Ysy&|#*jc=*tPV%hKgR}I)wBx}Q_B@}{9^$H#0dd4i4kp^yLdT4O17ARy!3l9z3@CmotZCMWY*v1^~B#r z-lC14%3J(EzV-pz_N>%XUa|qIoK}G3YIXD>c`Q;AW@-PN1Gr!wJ@(GOnm}b#yIz1$ zjO)z8XQs%#B>8CVv_A3kjd$O8^8?66)2u9i^=A3Qw-b|o2k9?=t=G_;!oZE75q_hR zjTVkk&m%y=IT@KTBjMqs&o1m*uEuqMj+%m?u0}Ay(_|U(Sox`(r|{dc#+`W{PLap6 zWsK3{4r^{=kNp>gOdX)P8htJLc9Mg8dh0{^W>VE_ztggkmAqdaY+bg2uCl(|H&f+G zK<06t#fDSTSq=Hi)utXWV>}bMW?V3Z#vO3#+RIZNU){C$rBGMoonw^m82H#a?y2RG`vrWe z?U4UH#A>}(s##CDHRos7G1dC=Vbu=tY&eCV$#T|ZAX(RYboy|UlTdpbelz3=vrphW zyOodYhK}B9byf|QRO=>Oe#;+u{;VJLC2y=U55;Pz8?GdyWZh|D@=lW3b2;b3xjV*l zvb^%>hr25U9QrCco}^cUP(8IbnSV^eW0JDrTl9(hye zl$(lvTNSyPoJm4I)*3=edHfsw6nBw-$p5@vdTVe|(~5Vke*g`;_o*nNho{@jZa~8{ zD1y^jQVs!^pzNb8afc$E(<}ma1WZh)PWVvA@L5G##vwYUC5{y249&7Jq8YhSq=}Vk zL|1lc8QR9#T1j;F%~;oznukVXL5EoiS4w3IY!Xf9$`C`^2DI(dNvo61-EXsXFdtkZ zzj=HL-&4*qfhOwgKg(6T=&`j^o(?&lZqpJ&OVU~j;p}{o?~_57U504c+)74QSv$L} z_7UX;Pe-Sp_eJfL)?wD|G^&4Mv)rDEStq%jSa2p^RyP)-tXA*R!g;jJ--7)TA0W}F zTV$o%z2apk?Cb<_?*4Gr>4QeBKuGntP^OAqA|{wD@uz4(-O{9a)k`&qb`^^K$j)$V zqNj~tASZJ2-#ULZcA6FOSM83faaE_`u!SGq1}NF?h`3v;eiT4MP_Hb2E3vUh zRf-3rCDM<(Tl{yVTuy67QiXH8oy;qr$E5I^qn=b7PhAfNb25pQ`SfW4o@BFSH*2`A z{-tiydh#NC`cE1x(MW7m`f?KHAT2b`@-|;eyB@hMLKc4|nDs0|Sfu*$AYzsg?`V0V z?We(CMo@PMS&R`dCwh{*lFX>vz-0aMuP2l;1rr}JRNhILnW?qNbX1pa$ZzcAJ@2p~ ztEYA{|LTPuPBi{B5tJqKzUooZI`mZ&JRt{0;?yxT=}JHJ_bZ}isbY-5Ki)OtABo3( zS=F(>Q0dutK7MYQa!adcbOlee(;Gn#;usK683>h{1Yw0-K%L&mzZ)G}MfNbPyEUX( z%WS-3;d_q4kmEm=@ib%KI97O78}R4X8vttiZn`@+^ImJ1%OMGKdeIw4;al};Xl_@R zFujBbJ^y=#C}+Ues-F(*r()QxPf9POx_8Wb2!4jf*Xm4<{VtHO@6_ga5I}oZA(7a?@8`q`edKF7ayH>huSt z4*`#`^NbZo1=LrDrct)}<4Xi0Zfs2>Ib|=mbn1J<5QPR5;HpjSOW}MxmF^od+NIvU zaR_sO4kn4Iy|)?>XO-Qs3#75Zb4I0VZgrfO+iPdTw`P4#$3%%;ZI*v|d~PnTxBB&x zD6^VAo0Lj+ZppC?Sg)ekRT*xr^I650oeBgV#jXdd{5RZD!RU+{wdZ?sjn&Te9{#~mlymcPX#+#a z;CNdOg3jeQf_hT6#*a9pX{XLu^8cQ9$LW!Ek9u@4|=Fr_;D~;>S3s}$0 zm2YsB^k{>{@^!j@;H@_TM!=03P3XY}m~O4HIPmh8m4%~I)kwE5xAtD#7j@twnAw!v z>6wjj7~?w{eYul}w-l|nx8Zo_F$lR@)+8vNzD?8$d%EN>mlphus@ zI;R?0A?|t;V5I!bw}v6(e2$O@a?bbK{QK`ee&G)uF#pHh{r{y6ydS9EfB&yg4;Dt$ z=^QmrPSIG#M2Cx6oX|nf^268|$uU=_tzSOtq?Pl4OHdyvK(Nd>X=XKZPnN-%u-zmr8BVcFUM>dCcGwtaV_fMim z7=O!oJ&M4eGk+Oe&MvXvvxZ|Ce^M|{iriUp{`mAiQp)}(|CLn!8$$vvw)$vuqg~HS z9xqTgoA}Dz`hE#cAFvw}(+QkkMszva{br`$LKb3#=dXsN4co(fyRJKRHZ^I;ywl`?FZot4n zW#qxZdh%NAVZDd_a8O;M+reJBJm!fivZt;5S@Ltv51wVG>MkQU4W{84IFaVBLl7S> zR|;1mu0LuaF1&Imb6;PsPH96jfX7n6V)cDq8?fc|8NRFU8>U3i*Q5VkpOqo{f9SIY zSXnp5n}R|lU6_SoIu03g4a>Qob&t{PD-@~B8tsU6n5#ZhJsT-I77~G!RrbDo47wqG zl~J+MGCTa30upIk*3&^xJSeu%apGkrDI=Zu;Zo)mm$sNh90Jd(6qJMBM5(pU-e5imua z!^X2t%#I~Y#Rv(!JjLc{ru)!AX?Y;_snfO9@0zHoo1Rc>yDfU|m0%Fn&}^xcY+!h( za?&)vE!1&+f8160AYLT}dvH1}_H=UDmx4NhwnBHZ4!V1Jkc=;&VPd?!f5#`xF%OoQ zYuP!<@T5lj5M{rwfw!bdR~!{s{B`2mu-L2bxsiX>|9;IR&8b!H3}mR^d@JMjut<3a zAX1z}VHFvIh{yWNDJG{sX#UXFz{uk>?wy=Bf4N#vAO^P9h0{<&cYt64K^f3^eLGPU zb4N;MJ!C50*v`=7+?FGs0Ye|l2sHS{e;UYAFjS&mpVqG9IkgHcsd_}HWzT0TO3-ZF z#zMel+Q?KPOWFI9@6vX)+3}h6U~sk*xx{7fWPFY}$j8lYq(J0n_Cre<@?>H@&R#Qf zsI}3^0G!F{?Hsdwn8FD2DCTy(w~5SA6&hPLKae4-{0nl5ta&w)obfx(I$|Wk&*^Nr z&rg#TZ1SRl>r0exN7r$#Va&Qhj{Mzfqh&A5_qZeb=(t9K89Nqaol~79NE4uX5Y181 zW_1cka|%wr^4JM|$V$VQ1QKTDKRIJ48EaR`4)fxg_@Sn4vm6Kx3_12o8OP9HyU~u~ zfqeWR-MJ4M1+MJZEoPZ867Lpk8*<7Kzj2kk0>XCvNr_?(p9J#xLh*;PqB4vOj$ zFh2D61eqY~9Q)wigQ&LmR&O7+hg|3#C5&Rk-!qB7-(4IxgL*`|S7+((z213%W(|Tz z{0af|_Px)$_22Q{7rk{O4>A)-CX^DjOIbdaGW|XGPX|4Bc+%^O+XDd>X$gAHOVmWI zR0>=r_wEzN4xDj2Z!@#InCakPd}9Yk!8q;ac0LGA4_~}kXsDA4N-+AomRDY-95r-# zF*f~huvRsa6o3kqdUM4%Tr{~U2wtg}Y!_VIn>EGhB&ad;J*6NSFf^!hJ^FFuagLYfVwaIy$ZMax}Y9RMezD3;8?z0%EM(#jJwpr=GA(o1C)famrgBEzpgk8J> zqqC|PAyq9Q$gP^wx@z1F2jzoFLEs2qlX0VqIt|pq-KFa?bFua+*B95Al;j@0Ym<+* zP12s(#GU*$bm=AxvnzXUufU?6NYzmgGrRKRkwJ$3`5|O+qFTj~3O9y+XPb|>s+wYw zGKTe&5Dj`l=*OfPO4c5}pdWGy*+hv{M68~$XO<^NAW{l&@T8UT$mkvWS5uANOK?DZ z65vsM=Yr7Rao+m+S(suCKNq$0o2PKk1znPo%>P{j7XMO4&310YneTR8L)Qi^esXqY zpm3EuJy$6W$twuq*jsYE(@FFOfwj9$WQ8kE_p-c_Xx6yh)lP$#Ecz-KZI`Apo~Xfs zwJ{Zae@0lPt~c=C2K_y8bzX|LeV(?h;OFP*2GFEsdBPrC**V<^DbCJ#pIR9>mHn17Hli#sJ(bVB2yr?0?l@n7?mDg5RFjG1I z6s8BM!x$>E3lr?lG8Ki*!W0uPMp?(bnkEBpVBr#NUuT>AubP>-j{QXmiX^(PnESd) z+CJTqa~`m4fP=kLUPq+NZnBDpP?2+y|D%|`aDF&zqj?Y}pmACI+e??(Pxp@~8_^1B zSo~%0(;j7S>5pf6_=|_D9d;=O$5Q!vHoegJ@aby-gtXke-Fn!;)4{ZgWJ*4779pJ) zHSPn6=!PqLct;)PlN@!qnVAGIKJCZEfgpWidGZD#Wfmv0QjkMFJ5=M1WH}B*v6*ew zg5Gk@GxG7-^G{5)y!>R`+8VE_F!DBfZU+4L&r4ZTd~$*|*v7IpM)odXex_^V7g%84 z!dNwDv*!`xQeH6+905Pdh@s)t->W@@2kSkN9$Su{Hr09KKCmTsFJR-{DOJ!Zj*zI^ zM+RG^KGGO!SB#%T?+?`!=Ou>jvXPrQk7^*g z2glm->BUz(#e+p{T6TLu^h2D&K{A0d`lHL|?2>->FetnI7X~M7a^^{H<7{r1ozJ`$ zLcY|^{c5AX(Xi~l9Fmo#ND_K^s(xkzb~cri(_#;Sa*{nwO_$8b_rYG)?Ic%P##&gGoB7PY0mRHH6l<19ya0jtga>SRK+>c(wWTKd!$ z*j>vRZwT;RBVhlQFMD2Vu!N%P?PdtOg-Y|Q!}B!J%0wH^??%aC56GT#Lg~@iSh?hM zuI56J^uLm@K(*GGK82AA-J!7Od76!s4&4Tn-|sIzOH6YI6y+bEs_N=)-$wv}hMSW3 z#cgqLT_iFMB`yzrKIlL?G$0OQAxc?dz4E#EiQ$8YNau&A?6bfrD`Z_g)Y8b#kw==i-E2o z1<7|Nq4oDT4~(*U>@yCsxU;AtwkRHk@IX8a>r zHJJgQtuU$9%M#dw^^A-PO}ZM&;IXo|g+D@fwi65~{M$bxsN>j+!?`wd)OM)<}L6ECoH{&y*SVtE)lYR4CPTJ|r%1OKaMpSi@HIJUF36LNzY z-s{>(!s2(`(lcy6lEtLNzbK3*B1*Dj=vcMGZf!r%FuMo&I;C_8@{F~Ir%MdkhCbh_ zAQLC_?;A0qL|e_qny`GHOxAz4+eXbUkOg!si*KuwLo+PuHSW=Ha~6!&PHx$hvAjzR ztV{TayLgSux8X>7nUi11Ho3Tyzm>@GJlg1iV9!`vyqaop^J}urlNyw2$X z%_7ZMWeJEvK{y$*p@xhh#Q#!(dd}KFMY>QVQ4&_nP|oy$NV*eWL6)6m9N37*j+%zi zFmWD^$JqI@lP=P8GOW4^d*@m@^y@Z^#Na<;GkUF8jQX2}z35@5Z|GUhFRk2mcyJ9E|wB(rHix4x?@W7b1AzjXd*>NnM*^6AA!M@I@H z_1)X;Qsa>%*CGZS>>CHqh|dz7S$CVJ8nqP~4y8M-j+;L{2z_0*b3Puy%zOq?kVAnZ zI0N%IUphaq3_!z4sf^~6DlNv0qNeLPnPBK}(C8oWzn((sFG}N+o~7MayWcJ@)RZQE znLR8eUZ*Cy&nhUt`?e=#{FgBwHQCcQ+pj}=@;9UY3C>$?IW8k-@cC<^rETl+EA8^@O)SH-a57fMs5*F*Lem(I{(o53yP za1t46-M@y*dA$oldwIwCE?DbC-KB=Vf5c{+$slaxQrn?^Utf0ASULBNwWR?0fc)I1-O*dW>f`>`8O1B(m#Jr%jgEfK%N4DcxyuvW)!1 zrN{6(e_L&Sh?)FA98W(ji+J>|94`v4KhYRiu_g>oKUVG)CmR9L>45HJ7Xf4S=^ZU9D3ivs_?ucNunY7dKYDX(GGsUmZu;=u_+_0#%-3?1i0ipu z%X+ zos2M58&L-WuF^Vbp(<-Sabnq%`;OiF|EWvjomrVsSq67VYOWn0UU~dBZ_!XuMvZ1v zDBlj`??;#Vy+hKm3#B>V*2fb!b*4*K6_d9&?$R!IN@!)elC?n^OOylL06+ zWxi09@pgV?5}9L_N|@eYg<#p?r`L(t!h3q`ds#Mn0jNNG2LWc)3wkvoa&$iK2{-S2vKB)`-dY(!p?2h5Jh0yFuJ#!ysvbfQ`O4 zzg$eaJ9=_-3z9aP5bX>fqWHb28K+^vFFD7)_>qR~{T|PZq~(LZ_s#z7WWNDD;t8n-f_-0GjY@+TIxdFxUdmPh z)&zpq>8D%l1w@FN`n)wMQuJ}CAgpcip3}R&LP<(NH8Tz%w`t(#JHCJr_oDApo`Ig5 z*RfM}*Ws`S{s6N2}@o!QER%wbgZt!n9b6w#6M< zw79z!hvHV;oe+uyCrAq|6e$$<0>vE?oKhT$JAvR%aMzpmdCxuXx%Zwi?vMND`!YuM zSlL;7?Im+fU31QlbsO*8-UmG|kn6*K|3pSCZk*2nHjoD(YGWvI zHlOvWw6TN3Wt7_FpgHW`eq~%pXPCX~l$rOZO<10(US#vl*hvT3g-(-zLS4cANJh3v zqfyILvlJ(ds1j3Lz$#w(FfGw{{iyLX@ymk2- zluaUpt5e+YS7<|q0w$D9u-b`t@XN*YJZCEtd-)(!G&HWTO7%|^x1c}m2=1(A`R`OP zF?orz_^1^e?4PLQSx>kj|IU^VMz&*<7Ipu5NPUR9?RIbcLQ^3ez^H%`FZ4c<@mV;Ww`{osjkwUt>ha*Ur}ed>61^^J`*2|~WkU~vfO{H3RdU6Y}M89ukb0@z%3Zp`ezTYat2)}~pS zsDgQg8+5c)KdAu*DcZU^!DfCN=vOuXOxRETm@+{a{(AUy*4)^hHrV**;AGv?d*X zD@wVK1_!$ z=+6)(m3Ou3=L&bm0Vm9t=`K)InBGGrH&;=q2!owpU9)?qA!fEZUkR=ee4(H2R0K96 z!8XHL8KYfHj^yr7LHf0zG=W*j%uab3q|!^x=wsN^=>Fy31z!rikbbKdagj4-BM2IO zVUBcna&dl(+>H0OG)#g`0VVpoloNYBRyRFkmQf&2(JV<)ynHGJIir|8&8*C)dy?v9 zTFoZ5a}l`dStY_kBCL~lpqM!q-WR10A=#UJ9fgUzEjtY7eKk=~^~{Q|;4sYgj8*B} zH(p#gR?zt(eN0f+d~1@W8Y=-e=-!Jfvniz6x<^;-*^gOq5m@=bV@J{P z`s=l%yj)my8^|6#YrLezw0!X;Zi>S%cGArm;DF1RZ_AEuK81rl8`L2-i=`z5v%rq( zsoRX((TBPc`KsoYWf)V;*Y?q)q4IWFTbgMRTp_!y^OzD!s`!IQe+f(qJ<$o6j8LEqa9TB z#Wt-Lsqp)aX&si<&~8ocyWK^Ax8J3N*Y>wR@B#uivBKY7MKaJ!7|+?dQEl->(klA? zyjpt_r>ds~+gg;5Z9wk5Trh?7hAl%~6m9Q(Hsm>dS~l`VwUXf-Y`N$>Y<$(N55KQ! z^yehmb!3Y~m+kP;bzi2?V7cRBrpt};N|R}j-86a&XO{@NoA~B2aCoUnt(KBuLHW_z zF(S)Hctgf}ci7+RJ&hg6vOGqUeZ92f4Z}o*ECMzTG*j}Q#@5(tjJ?QzS0GisS$Yqk zS*+`CV?SqV5_T8Z_QCyr1+_Z?ex4rtd~Eq9V@;BV=Hd#+`&@X&<~+DuYh{t`>SkEb zr=VT;({=sV+e49=qfSh%wX9lq#~3{t{`keG?l-D)QTFRwn%@WxTOSX6l~ljmzFZBo`T$qsbIgUCaWv*JG$tYd|$16QKGutKGm2#chaeye9bmFMkoocOtn$b>%0>1 zJ?-Y1-)=NTAAW^j*22^g=t|k&XXx`?p{PuNN9=HTCS$>Tpyt464qMMd0Ly4#W~y&L zHp&QzvkLIt?17MQ<6iXwVo{|=C^=_yR!9sYXWTIIeQFTea(O#uT6&f7uI)D({0Tvc}@t7PE*J_Z*Z- z?&Ab{quXAvP4k&oIthB1gE^Rvci6t}5JYtj9Qm0k*Jc$o`d6b!$@ov&ev+uKGAj2< z2YKS?bqb1D_{#^{L-#5+CnQ=e+VQs9E|_--f3Gg;E$=Q0xFDRLIgzfpkUhI{D(D*K zF0olBA&Th12ivTJqAc;EVN>TWll!#nAVgE=r~6i&tO8DnJ6`-e3+P;Ubdk_Gce>D& zbn-%*>d|$1-92DzElxd`hYJy{Q2=ETgt*^8bKlGb!>tYIb4h3LE?+d>U$1trheORq z*v4yabj$UtjaU{J6^yfFj@M=V%o>Najap4^HA?XvNV}>RV2E8KK`UNCNHmARaJ_OO z_LCMqc_F?+_rkH#4nF8R8E^RTgG ztTqoz8M%pD%Kg9;=)FWBaPU1{91Z;7Rb#DN9pE^WKc>`hp^+YDTO4z+sU)E}jY)Xw z69NNPz{*(_?ppmd!I_Q6m{A?7$HJl+d#m?!2?;+kZK0l1yB=G#LtFJ=f%3_jk4@(R zEDj=z{kqHFPLmNY4Lw{x`K#_6m_XIq6E5m&ZlKb;O==TuRAd31rrUPWt~FL#u?6?7 zfxx;LkyILZg}};;ZLUU2gM^6Xwb&hCyZE{go&*%H%PQEolfMzKmmJ&Arl@R-lh2{W z>ojAEz-8iWRSUkT|AQKwLr(hsAcMac;s5d?G`BD8zE*IVHM;e%6>7}U19`WoN3Kqy z&5tI%@pBYp!(+D)B~45fT;_I1WB&Z6;mlW>NamR}N67UWqsbeK0hbDj8Piva5kGhT zFav)%g1?vL+Pk^b05SzM=|pKEK$^*y-*T}Y&mrp6bofuDV~J2Ip#P<-)@HCtYVTuc z&a*|4K~2DDt7P1pmb^A|%KO?2 z5foVG7U6Moey59%7U(ctUn`je5`}cio!7B*6>C5lrqQ1ZX###d0=V~BZMh$jq)DAX zKkKPrR&s}dPkq{>}yj$zY1$`)bk9%^?Z0G>i$Sr`B(BfU_*b~EW>qxVE z0UMH~PZE`<2C+YyB01Uw>`gT?GRfW*$rS^-Kj#hSS&<3V!g|q|x54{nDVGQipT=WB@>~M$KW5S;EQG*k=+#LJ>7Vy#(pa|5w7AmvfLw?;HFL-ZYQAkh4PmTy&cRZ(e(UXB~;VZ<}8{i^Y z-xvR|zJCF|BnMHErux$v740*!^7%Ze?iMB5Z(gM*88k+jA4L-9scFfoJ3$bew?HY1 zF}@?_i@9JLP-#O9yX_QZSn{iwyi6U(rq?%BEVfCv=2mAm;c}Zjwl#gpy%GC83>+0N z6OQP>fX~SD<%%`GUuwAyvnM@QbGK$!OoQNVd2V_1(+P_70nQjt!%hvL+lJfYAOOwt zV7=Evbg7=bKp~h>lszDQEJi%L(dHZdXm#q7-5Ig~0gqv;{%Q6_dBTjR##1%{N@)<) zLPA1>z$-8cLWVTiI^d%g5yt6s`H2H;;Szw2SL6}((xd*e*hZ+>ReI(o{%g<^BAx51 z693#~ALT@GZ(`t4K1T+FwWNTyUoa5(y?Hu*t(K}QCSzb-(6Hm@Q`!5$U5@TfT$e!3uLDf9Cv*axm+x>EeR-Ouln$eHp%rgUPi@#T zD1WF?^^$*$g}l11g7!DqtoaFgGtJL@RHMQmdKu{STXa*?zT}j%yL;yrZ5aV45l8qt zDWPI2b}P!mH1B3cPg(@G=j5!P)}q=IohEhqBHyn+e70TJc(;khHp@As9xa|l1B$N7348VOX+&3JL zII0gF(udRswbfHj^{!HzTxo2MGwuobg>1!-pN;Klg~{06%wUnKjbByG2CzXUij=Y} zV=%{RtQ>x(>waMOn0Znai!CmBDu#sg*4BZE$)M(EmOXcbajIhiiSpc-8t*TH5RrBb z(`K%cC8rKvXH>vyO3SVOt=k#&I~P=SOn4JRX9ggj#;Dn)SPTA&mW(N3PW~BvtaUBb zWK7gO0PSL$AQbQGyP$j^tJ%7R~tAy@p6O7`#m@C&Oc|;I(%~P{p$KX{Gd$? zt^%P}e4+u%sRtbxJUs_T=N9@62VUPTcO!Z@A-!gTrtsmm=A%7$SL9gu&0@!=h;HH& z_=OkP>TxyA!xPB_YBS>+8W;~ee5~fAj3lP5vF%}XP~9x6ZAJuqz6EVkKR#UQ>RJ_Y z-0J9xRG`_HJc6wvTI`hcA3w!(gmn!t;e)*~ryuTb+r^7ZkP$_1CS5qp#C=`Wkec58 z_=Ejs)Ulwzv!KrepCqz2!Iue;l4-Mm`z3!BgW6Om^gbx-!TDja?)`37Md0l>mzMVz zJ(4ZHhrb=r0c7B__KqxIR*mgZuHfP79n6SsZim7vYj45lq9-k8nXzn(hUVe)EnnHe z0sP^9Nc9+U@9j=?e>z%YcQJDh4D_{58f+v4H&?5(OsDJL&Pu$xlk$B563%VGHoR)O zS)5qBJ~lt>s(P5;lAxN%*m)>7-9#SRux=l3M;=cx3#;f}blK;$&y-kf#spTk|v% zeb`#KyKsH)Ah>i`e7XdU^a9?427QiKD@>h7dyJqDC#we@<2OwYjrRkgPAlsq(24`I zR!RKg+ra~Bi9CG!jvfkxm)Ch~Lx*5kllj8+W*W_j7x3f2Sl~(Ic(>`73h=M>i}Tx) zhdnUVD|{-9Qut8z{oUji+(>T|x^|fb55sP5HWk+@MxdQEKDgbfCmjGE@G4px15b__ znw#zqoT_w<4mV1AzN<*KlTkDUJlv=wGZ{*Q>d#>my$?irUrVMb1S?|9-kP4A-wp`g zNIskmQYOs$9_>B9dWgCZyuUs%y})cM{x?Z|7(Z0$Z*$x7m$vHqQ=@!42||DnD}+{ADBtaD7NSaGAT? zVUh})-xnus@o#;I;!6Y#LNAkUAR0^hV@waL2g6yyN$1dm@tb#ki}U_xTeDYnC!>oO z7p=1ohtJ7gfblL)?!vPkwP1E*6wQcp)n6T&!-(li$Ydz z78TU7a`Acqrrx>}%%Q>&Sc}4NI^ZHxJk>+TOw5D)@J0iSLE z>8gY*=Ob1hYip&_2*`7^&mC(z9_Bn!A4hOqu#C4ycr@GSe;~thIvrabvGQu0@}O|ts=PjR z&&jBEhKd?hXX(x8x|>3mky;%lCPh3kyeQPep0gm1F*poU)f4X>Wn48%R_)OHPdg`- z``oIm1T-Bwtrw7uC7wNNo&@<$2`|u4pOfX6Xc;tuVU4UhTYjWS(4Wv2R`A(aDjtOv z)%R@ML(PQ4OXu6Vhf$?TrpJOo_sqsupg2Q7e_sHt&7I@!lG^Ej$_))>TPT5&zKjyg zv#7u<&oDLWu{h`C_UBybNXtD%uZ;*gx1QDF;l@hxIf16dHx<)2zp6`f<-MN!EL3P_+|)epRjU%fk3si zT+m}Y?EtaPOgosyA7n}BXrW)GzkI#iyN6t17F*XEVJA~)0VROL%Xl3}Eyo~io(!iv zTmNwhO|e*{m$;`+5t}uc`nsR`GOKf%s_)zQBz9jF)Vab;#egNlPkn&?T>t~BFLeXf z!tIbAayIj8GoCoV!1`00T6Yr+kB6zrh;&bIjNE9YBIf)LRC*_uzC;HY@mF%l zOrC#oG)lL|Vd*g%`SGxG+){8(gZV|Ms`WAKE_ojwFF)TkL!^Qgj*Js$lzH5BztTYv z;yiln)a)N$R=6MAl zh4EYk9p7kd_}!Rog((qdHQbWz)J!48wkOq@dD?$9ShRok0}#0%wkOW}*F0bK_Q&ZV zdFmDXKf33q|6D{D2-7sGe_i#xx*kp|-e#mV7$gH++^rYck%+$kGHBIaREk%K@Q^Wf zvG9u8kR&PJYJ~x`mI;=E4p8EnXV+eIAoNWLONrAWCH9I#=1d^!KV^iP`0^6O7323fsx@fWE;2}VL_l^mrA~I7F84G)d_$vo%^X@ zLFJ+%_CJ?=LUr^TonhaEpoil&{!o4{GGAME5)b-Z}$#Q@JCK?u>2l78YzWb!3A&wbshKK6ySws=LdTLe!OV1fL>b0 zfJ&&>jwZBls^HiqXOr`l9G`!5r`BC*7qj(>Fg67|o`h z<%PI&j5216g95aIi~(-hRQJaMb&A8C(S8df#kN=BJV15!Mq?aU4&i*zj{mAiGKnV- zT6>J^j_LJ#iZqu;jz+4;4oP`*gtbeZ_MJ%_N}~#-&HGD)tx9-oa~dO<1amwwsOBcA zVzR*)b>upneJnDYlKQ_~Y}T)m6Y6OoeMu|?2%j|Ua#jEh`eK;Yb@z?GM^r|vV<+0d zH^b}>kofSsIVlk~3Y8M2NdqShSmckAgW!^YrRM<~=V#6SkGPj&I{bRuSK|{aY6E1) zqZnE8f&NQAv>@$kXuH+2yeJg)9{@B$zwY>Y8ak&JeD6ws_rIxBbj@1@;{r8c10Q}f zy$|=3KeQ?_Ph|eeK>x#uB+pK|e>ZdP zy|nUEmN7)Q@fg+hJE2TD7isO(qVH@>GS>44QFEEtQ-?1)jxcIr8pZA1q;tQ00aDtR zRq`W_hYho1=bA>ZStTUTQ~2tPXzfC)3m%u5^t+vI9akX}w$Nmq$AU=MB>HsmP_(Y0 zvurw3Sw85bqA5^6XCffMJ(e0Vw2k9MC$gL1S(1#n{*S$>(LO!83bUgGyp@iv4o z;R7tPAdL4rsm!c;lIIhaEMaz-!uz8B!mY?xB(yqZs5eP5_%hB)%BsIHP?I~3CCZ~+ zjnJVT>A^UtE{$CD3-}}VQL!xgy&W`yD#Ez9+ADj3;g?l^WIV;Vd%#ylKR25Gr6{}uc|%h+~h zAE#@mM$nwZ4A>l~ZO^Tsc|oQXMP-FbS3_5cp?ROqMnF1}AT&`(qBgd#?(nCJAht#= zvG=L_mcqUDV&ODtEk>GwSrCuoLm}*jmb{pzp;5xKl-CNOe>-q)A=8M*b;;7(Mme=u zK31~(>d-3c7QUN<=)9c);5}Z5-8#Gjxk<{E-mExxNs7F7jXu{{CO0rOv1eLZ`XF*n4a zc?Wa9Zpp3oy+5SmlvhX?$~EyeJ;Vx{)6+n->)HsrlYbjG@!#PsSQLGYl$$uwY(AGA zP`#LdP=tC5^woCfj4yquR}cMY9uw2Y*EJTrHm-M767^bXhf@27%SV3it>z|>^$vD@ zZGQ(ZraUm%$+hFZT|V|B)`TBZ>iVSa<@9sLzaJ|?OzV~3@{6f1J)ZlZEWMx>M;zB* z#1}F}r#ftlhn~q0h{=c$*3a1f-gpbB0~?vqWGotGtcuG7_#4DY&hIW_ zl!M+I(E4J04_*9FN1yRu*akscNeHLgE0!tE(W?@LfSv<>p^q=j8Wl3ys7S6U54?A4 zT*37*V86X+0&FigLsTR=3o3}}*S3TRbX-*pG=NbuyhKW9jD~UUcM7jyO1wq^BQ&im zdAcw{rdtv3B=)A3Xb`@0{5e!9<^shK{jSc?16(Hp7A?Qta&KNO!)KeL*eD^!?CIv|Y9QQNXBxG2&ZBn}T5OoO% zIN-;*{)Tr=RjuNgX0;BueynY9KRCGmpk+TBLX?bJ=q(S-y(&?imiO6j;sC>#XhgLF zq!OmZb^ExG5BT1@9*JZf)sL8bbw)C_JfFA7PylPw`xvB1h39Bn3ux>5nNz2)J;fcY z_qvLDj}(?eBjPF7<|poAB8r|g#Ea##s2$sNx;l{JBV1l>BQ2}nY5|>2bM|Z`G2Tb zJ!g4ZUU|NXm@#=rilnld$Bmz5=KD@@55pBM^lvJW`crbtuLSZ@&>ZP$SfdyqyWnH= z4nu&~(XZqLFHvcEy5i5BC`fwR+3Yei$6oVu|MG5GBtookj3)FZj}+lkU|Ee}T;IG_ z*Z<)j*SFXLaYA(7k%W#Ur4!BjhrtV@catKZ`N$yMtHu!RZwtE#ALNq?T9j^%86|(r zr#(Lh{7Vg5akIDIg`_(18m5B3H!9A5x_GSnq%rS@1C9qQM>C=M!S9LRm|(-=UZ2#? zl0W^UoY5}?(bnU6W*1DMa}b0t(y!`tiSY} zK4^4{wU!3FQWTH|lt{JxrDCr~4x;jC{zxDM|8{|3Aq9~!d`G{hm5LhX@6n0(jF0Sx zQX*0X!A4n_#j=~INp@|~3`tK5-5NaCFE{<{K3aZwD(fCJXUYd57mQ()sB{z;vh58o z^jRo=IpLEn;vsP;!(v~v6}UIJE)a0H_I}N+g6Cy|m;sVdcV!Dt#^F1^*v;ubg6R5I zKI-YI3|P8sj4|@(@SSLONdWo>ev@z&R^_$kfEo|^H_ZRC+aKJu#bxyD69v_Z9dK9f z(M77m698`g^FV>!q%)>>Ngp$+XU@MCr+@cb0jy+0NCwzj0EP*xs^1nv5tOR8Kh$R( zIe84^fA8wubZ-XADAUv{&SPf{i0i6#8oT5V8>dVU+Rl^IcQpSjb4GtX%F7`q(|@Fw zsQp#U6}_**^eYzH^~{n9@v@a26ZTi#WWquKx*7QE@MeDVKIt7y0=b=sqowE*Gt;FT zo`e=)LF6B>=M}UN%(Ipve@?P}q5`P!*Bw^U}P7{;+T|i0GY4qG|70*l| zlqj>l@=;w`mmW!qxANT#_cfH$p(g*ea~S0T!n7k^{g;l$*X!QEq~#BS3r#Rr^6w=g8Pil*K(S}>{nZ_EB?Iet z+IVQ2ZoB>)5&4k zGrKpZ5Du&Pcx7x@iL%DYA*b-V`))w<`$;g;oag*mH(sKPde^NXVg2{FfwI$-(AO1B zy$4NI1a?v9xw6RU*i9G3Z&Ge>PfI74MPn|hf<)T*SX_+)GF@m6Q6JH$SONLkVdh9c zHU|-T#Z3yszo^)IyP(Mp?qVbW=i4Y5L}d#mg zFX*QHajxzkj5Tqt+_4`#tNN>*6f31^xJeo3s%_R_0k^Jfsg9q#eb;6>#M~>7_gKcr z6G;`LLgw_$K@`aap?MjeqvzSr>oLeetRp-}1wu+G{*px`A5a+RjFeus?ZlCmgn2Ky zJv}jADTpb{?Idyp*M$WJvBSb8*^teS4^!OVu2!%*-`1`g+Dk82OkL%VDu@q;_zxMN z*JY4Chb;>mKw=EHjn0o$Lc2+DBQJ#Q63#}>omlnn$uk)}A7xYs^I#NPhkrsGrnA8m z%1+twPXirBF25%&xevYG%>mThu%G(2aIy`EIC_Mh)Vep^hOI5)y$*B>Hu(UzY>KVZ zJ<{ZDZnYV?%=c{FVz^AN=|`gNf61{$nmi*hEp^ytLQd?>raHKGxlt01vK@`~X_gqA zyuUzC0X?QR#JjoC5kn*`Xj$%h2CRUd71k@7S@zx+E%KpOt&^8u$SuX^3uLH{B1De=t7Kk$aIrR_ms68F|i zYPQSjE;rYS1vtviJ2f*3L19+bM7^z$fZM*bTWM)!09q8VLGgk_Td4T~Zkcwy?s^+)kuDL*^r`I$(63yj z8IS}CJ5J5xtXDY$KGCV0IH~gv0v`!s0D3Y2CsW&8QfhZr>8tNR;TQescHrh#dy{>> z5Fz?07p8A!;;e}5#a4ZbEhBj?Rm(Xw=C;)K#FrG(7SYk041hklxoW5p_qx%3(=@7e z#zsnX#cv;sd%IpSJ7gO&=|vlbjB##SJ}oBmbPv=w50}CsSv5)&?iPf$*hH6?iI}Gz z**KQe%J_5b8CE7k?s;N%+F7Ewr~c19bs6ZL^0Z)S!qsc$g09brB8E0`iX(Nvi`7G} zlmYaHK0cKE!v^|P2bsMhac=+=l`W6%YKQRp%!hcZQ|Z4WtWQc*3-c}$0TCt9d6BZU zQCE{ssy(!3m=vDTqx}W+zn8y8<+!h)G#ixO_GxWqx5`&9RN!aFZe`)Ol_JF+0u<4~ zw&6(Y)m&&vgi~htEW>!U{|_+hKlS+i5Ik;W>nN%W-ZkP*d8#msQxT8U_1K%nHHa^P zugvux>D-&!Ysx)G0=z+=)3X|zG-fMElOB_EK0)KcmftZvjlHW`>gt!qFJU>iENdu99|Vk=9~t5 z*|VbrEbPj>t^?p@uk4cz$A&IMdGE3$Ht$}#m9>DcDP<+1)!PF0%dxAKk)WdJ|0xq~ zL;@3zGJwZ|#9!}2u=8w*|EOUE+9ibl3*rBJv(K=p?9gG?-`p3R9LM-}KDwU+wmO+|Y9}&S2wlCitkWdjCrKI8n z9jg;_;KNSnMI7Q(9&*?&V~IUB8pu)FbWeK2{*(6iq*Y&Y(TSCQe&(ZHtxL|5kWwm^ zaS#+8w*J`zp*MGL0pt;s?F4yafEtc|#TidX@D=jyTJU?VM3Y+0O(9KcnXqONVL|~O zxw%^yWBU51a*$u%tVrokHN0qIeoePDl^q>JS%z3#ms=c5{YG%tFNQToSCDLApB`?hie1f60TQXc5cr<3IRtnw`6VhADlQDS z%-dBqY_;EF0z$sfv2G+M((6f`^{v|$ppYv>AIs0@X~49i3-$)5u4;2#^m#mmMLqKo zXIiQ$EgdGf$fzb2(WwJbv>ynO8jaXze~*Ygz5a9R!aR%ee=6Gkpx?hY^GX+NyDL^@ zwuZzNQ150GAxbF_Oxzh9;YpDvr&h0K8Exi3_2`2lYl7*eG>HpOF%}h1YK@|nwv(RT zRIU5(Sy2rxIHGx6Bl}olHBMk&90Tq1TjU~sTP5bYNoG&aJi}1z)p!jy@F0An@8omu=yB*Z2w8M_1NYjM7Xfy zDWEaxs|N z5lzLrCS8xa$%$8b1o%aFAgnQ8XnEs!0Cq`q4;Mn6cS2}SG45cjZ@%f8BhlIu!Q0xFma)`kI3{tu#!qC014npsxL1UC7Gi z=uwu9-g_V>b*=td^uFT1+O4NDFKaO7INsE(T{bH8jC`7rhZN?m_gTKRd%Ff_ zv89VhBJtWTfrL&ZN6wc2nhf#!^;M%Z7=r2Qp)?5h5b>>f62&|&qFNM5-7QFr=CqU| zG5Zqt7i;yZ>3mUtK_jSYLEhHfvlc*V1_ay*Ht$RDub%l)Xb|sKec5!=uiE$G^;Vz( z<HU^I9(KMPf0QdhbmFIjAweN=*|os>@~ZGTo~E4FMH z`xe#rW2mEIb7>f)jRTlf_eRw+a_8b7o#S!klXbxB@66v8raMDkU--$(nyz$ZtF%@A zNMrx`omH#!S-S}CjHE&c@|*??aqz&%D?0gMip*mxp!n#?wVg(Z^w}8jskHzKhe!|L zLY%8%e0~EzY%CNMw1hdvI`hsjN@D-mqAB(C8*|?qGr<=Lx}zYsWRqCY%g}6>iXk@y zuNc+)HQ)X`cIunUM$KVGYouBn%|IP#uBl)*ro@q6vEi=;fZhj@O0O`m0PxAtjW4mK z6MG$NVNXIjasMb6`yAJRR;Gd>ovK(c#7i8fwTD$Jxd_Forwpub8WkswJ92+tU_?n8 zUpRXVPsghJT@;NjN32uj#E3uFDnvXY#IUyYHo3}s9hi+IyUJUL*7b0OlmlE}aJ@J2 z7GM40Y^V!XT%ECguI{Vm7^=@wSaoGGvvBeetL-;3c08M(uH-#n0g8-^uw8uoD4w1) zI^#vU&BAKoy5pfzRPN)oU{?2E1|0(++w;2S(-$VYMwlRji1w-{A|Z8PuLm# zw*$Z*b+*QaH!5evPw4Q*UHKt#X2SUDfm9Mft5N_b`o8VgCj5Ti>&uz1-tVGr5yl*C zbcih3jEzo3vBf4OFYJY&@ZU$o?H}&9HU=VJ51e3l3NOD&FQD5gI;nb9RYiUUGio~g zSTpr&H}5qc&F6JLzq@4t=yx4l>2Ia-_n_KKguzUnxbm2lB$CXIiBAD8Ug)=85dNZZ z86{3cXkfYYzS;2B?^yTttAGZ4`bJP*QZUpL-6?-v4o&OmYssgh;&LSE1u8%nHuBVu z8~Y&KwfIcF+Ah-x1ju#-SW^yWHzaS%YXb;(K(RbMe!Vx3v;%=YIbG2=EE=AKzRfVr zrODxw_yj?wX6CMVRPhmp3K?l_bs8Gc7x>6iI5O_T`p|`LN+~%{x{~>QZ8f$lxP&C! zr8WyPcEIi^sT&8bhF%ynSOcy0>$36ldbAm~{I^B^d0L=ahl@#!-~3+S#ZzM{@jnHm zd9ZR$UQ!?=5Bon)XS`5@ZS}~<)>auJ1X2Wf!a_U*bvAn-(CJG;g4tjBuvQVazUin^ zs*-$!{G(JCaFuW4r$_mel)eR@b|6e|=_P05{1rLPNYa_ z>fA&(0t+%-=K=xi{bn8GvK-j}x(o>8)eQg92V}craj=MD^`>g1@u=0QT2egVoAaab zzBP=qDCP^nCRx@D01v|7e2n$u>nNItebjJd)6N*)8Rs}N*1)i#gR=SPhQ%VLbjaX7 zbY%CewUTYOa1?i_2k)SVnLC*R8#p{a|(r&JQOxLH%DNGRxZ288wZz+Z3PKjOo*pAFnAY~9_GKon+IP#EBR zEr(_t?k<@?e$7D!p)O8^d{1oC6%>_pA?y^0N5ApjP>H3=@@8xM&c7rDEeDFEhRRIR-P z!0Xe+#Jq2YZVR6hX2>YC}To26j*IRLG`k+T{LX~i=U zaX;2Me)|MM{rq|6wd%RjycSBm8I_ZiUSo^M8HmwDX zFBc}hGauy)RFo?QPrmFTKNX&l`pEtzT~30IDq#APjF!9p_p6rAtFXQ;Rc3HgH)n!O zDs^(q6@75()=5dg;f6VHM`C6EWlsRzuA)}Jv3(%$kLC_#KkpX)kJMK7ti=n>z~Ds- z91n33P5pC_GWF$0FANR`6%MVumIW+5uc{W#sFHT$Fx#wK$A4J^7T;jh0>LlO`kcn{ z`LD~r@{_8R93O6_-t2!vif+$Q0u*UJH5ogb7t`S?;cjh9Ie7d_fCC2d=W;Sw#cZw0 zNErV3-7fL1d#qE`Jo|uLsSFY@KdpV4jLbw^1ZO{f?;*dr^=h<#z-nDSi_-bj_3IH|J%|7ej|2?%q`Yw)_?EogqTVR6$hiB{Q3U(zD|7H za{u@`@yPP?bG;Fg<>KPu7v|#<;FA46`#PafBb}Vs|N1)7zTo?bf&xbSm#@4#Gnt`cehn#{L63M@_$h>$ft|{$ z8P$%K$_t8laT9pk`@ZUiQdE?8cxa!ERZuYLZ`3rDLUQ7TKkj%)&py?liGS{SqZFb4 zy>*D9h5fg%^eB(`Z{a7ZBKzM$5N535-vSCgZQVZwYAMHmS`z#JU_%3jHqj5sPhYz{S?LjPZ$FLX^=3 z1)Hba<1#WbN~ytnk7XYz3nQyfFmrHl&{rIupS#T0b4OWlk>VgKU1N`CA4wZ<7Gha=2Yyly9IQGwbzw z7XisWX15YQpOe*iZg|2Eol%Bwr;MPLo+M!Ii`(29=GQD+vv)TUgba)Z!-cv840Mfi zs8SmLbQL#=D$wWXT~aNXSFI@xsW8G?Lm*#x+?q>?ou@55)pm31oFmebg}FLzUO;;# z%xYoCnaqN@=kjEG4E}9pcW(UL+yDLs-gJ&wO1+S>SUMZ2Ss-+{Dn_Y&^B2-z(w$#h z!^&v7U~lKdJc9r|#MSASP41$i^#Qz;eury6G`q3BAQQvr#ZW`~s{p0RSvQJhw`y8s zz_Hr7!CwRPW0&H#Yl#$TlIXVFyvDcH;~XOtmdpmxWO>_=voVV-dLyHcZY@fc zW{;(k|5?qiKkcWcwXTL42pw`Nez6pn2L{Z77a7VdvfpU72GbBQ8-1)^?1bq4Jexyl z``071`ShGe7lPc3@p)t^ePrq2#f138Z%Tn&$ENIyX(&sAe}R(rWha(c;y3{I>Dc>Z zEzsUp;Z>icy8DVh5L5eGV}mBbt)*xw7TqNR^CkXYob-uSFZW&>kSMgUu;cH$mZBL| z?}N&;4{x-A@)j~$WxQSMzxmPJj{7vuGOzo`TDBAVcieRvr+O9)lmXNgyHpZZ>_Wf zGcw@BdjVl*k7_BxoC#Fq$NFdVLSdz;7EX1=ElO`@v+H<(9ghn^NLUYwRaRAP z@xO9IZbLmi;)SZ)(022QV%>qMDLsAtr2Tg&*<4CWeZPOdZOmo<@*yuTPu7bN#XlU0 z??0#+8qSU7tKd_K(6h6b6%;UWaHx67KJ*R_Mt%OA!egU6U2cN>sH&=NM?XQi9~&EM zbX|TttKQYw*&hhazP!2;77-bvLPuHrv+~Ptjw7hWeQz(1R(}Sgfa8h{fqLY&JH-|E|qt}zd@o6y7(Q#=c()XoMF7c2< zenNtY8GdpZVi$eJqFJAmm&r*9qO+-ZW2fc|R0ghJoF)FIKxcFilm=lL8UOv%TGJ00VrNoi#Ay)6*lyNx^g=>k zqTxb^ZCiD3;=||mN;g)9nk0n3b_65fZ|(a~xQ5_lS_f7XreO)7Yd?%AcId(C)F zQ7xMq3snqXo31VUbU3r{Jf5&ciN+z3u(0s!haGnb%%>$S&tIyUS=A%T=6kCKrD8n1vci~z{6@Qc^}1u!28#^KR>Y*HSXZ1 zdF@PBv}8VxZ;rh_n=Bc5D~F2xYTb+oeo&BVKsw1{jA`4|+ydU5g)NclS;6S;*mmw( zEYsp&tlV5v7Uu4oM>!~WpyyoZOd+js$%X46{)xefMg{aocwW%%#F?3rmS%`NLZ_s`d z4splbb``jW{}e%=B6x50dGK=K;(Op-tA}ny#)Z1Nz^$jQkMB>&BLpOmu;mK{5=GS` zcd}I7v-cwoCYzpKG6nAx!;Q@jggj14P$TgN_iK8C^01`Ci4jk=wgN^j=IyEanxB8E zh#5*h2L50-$lr*r`m z;qPtDf2H7t)^a}pI!FfOGHU(~=~tD9DJC=$zMxD{)3hld=9`zL%>FSxF~P^n>oi-< zaPiRSxjRPn9Oc`iBDn@6@w}%Tq$)FcK1y z0#SJsW@@d-u~^xaz1bT2BJZOWx#3Ll;dJ5gDyyEjnBvD$y4<7*t;N9xu)-t)WQY>? zjm=P0qv$g+*DXYISz^~3dV0DuXm-G==UV(qUK4kaB7s$$jz9FvTcQ_aD9lpQ($c!R z3395P5>$Ss8d3#He-qfQ6z#&dtp&BhwK@A=ud1m?`cDLei++sj@V2zw-zp zR@Y{HsY2R1=58daMUsF(fM8r zs2-X|#Q9z7`a;}y7a1Z9qTBt;A|^nXAW=-XQX@QTO2$6x>VXEmJPg3;3kKs#y z*x(s>x=q_~74q9Y`uAfgdqpLssNY^lZ2Ode(c9a*zM;W$Yb1ET9%YFnkN6{%WT5}X z?-bQEfq;_@+@W-gLOl9fzo^|amqktegO0Y$ua5KMKFIvBSMJ@#=Y~9L6`QTQyfFJ= z`nD;4_vAXS?LO{unh3TYkM-|iNyISVb;?7URvLQGa3iRvxd!D|p;b>blDju)_4i5Q zFrlQP5_F!)&JOZ3cszn%)MeJt@IMH9>!={2c5f6^5CO3$L8QBsZlt?QP(YDJQo2ED zq(K^`8v*H-?(Rl9r5nBn-*fIg=dN$9>p!j~<1n*l@8|i|o~ih>+-3Rc)0;Zi%T$SQ z3q3Y>ix4LDeNMaXIyqMDLu$L>omny)^_q$8g@ z&5HKAKEV~qTE}NmjqJqFf6e2l;?XRD$K}>$)8n?v^M2`W-SJDsuib$|dLb$ZC@-n0 zvurj-?&Gl-Lf1B(EUf_m5F3j(Er96Dm5N>WbNnMEC8eC495iiaW@acE4;7$ukB^T> zp3?~x*)}eZ+z)V)P!ySco96sEB#cIePB|9y7?qN8XW+gc$rBZ*ISQwtYE&8sbN7^# z23vy(AK<=l*TpF_pEVoGd^G(C(U&C^+d;gyzM)}$yx8Eua~{KqU(^6Vd>L$P4(sb* z0VE<~J#qc+9H)AS+rE=Oi}>1STSV)QN1Iu>xjg1GJOkPp+)+G|rITg}EL;}z zmh#D2TB8y@gWRL1$Ies(e#8WLjEs!2x9+%W5RrG0m%3<+6I5;>y{@Kk4ktoQ~ z1KTV#8ceUU+aW1Hc!-?(X>NPl%*2G2f}-?&Bk~#d-N%O-_cbSs4R;x}s_iY|#(H{s z$Y+J0A>1(r{IIkJdth?T^+2Z1YW07z0N3rf6tip z(Qh8wvwj(Rpw6E^-(G8?ds`j?*mjOkxAo%UbU%_-E$BJ#`pQacf~SN%@Ma_=Br&m8 zs68WDNq%Xp2`ag*N@VD9(P(V=;~`sHh8JiomyTS*7it=tXC{UOQpG2bar zUWDwVN2H=}E3EY3k`faWZ-!k%n56`;v5k#Q0-sBzzdtJ6F8m43ds{Kk*Z22uW0Zn| z;^sg>II!G)SI5wBHCMg(=4=QE_Hx?VZgce>WDS4+{{7C4jqr#hIjcEaB_~}vCiw=G z6Tw0CI54m+EiJH;$*%_q(A+a0HV-Yde8q>$1H78d{SXeC!?}I?v+Ly)Dr)Lb z421taG1MhYOiWyKqK6zY9d zjYC61-2WY3>vFFD@uTzy1Ux*vR1)&{L?!O)x4v24MhP@b!`|K9g=P1H8x_I5qqCz! zQC|K#JMw?nsN)9&Dt>Zu@}fVf>FFIE9Z)5JAZuhHiQb5e!uQM8C|wX>#@#$Vr2HHC z?IG(_deQ+RAb+`=nGz4@hr4vgqocgq8V=vKyZEh0zA-ZTa%28Qy`aiMZ;pCDBV%H@ z1^)}#>>uj*anE^kS<XElq;6<>3&$Fi^J>*SRSI*s18@(=FS0zItlTlN( z6$2W60+YwL=I%>BMk2x`iO|pmu$P{$1MJ8+k)_VY$sQGauT6qjsn0wYpFLLx!sB`8Kp( zcv0;X@gr}t8f(S{V}j;NU2*?wC)`&-=;w+)q2MVT-dnIXXRWJJ2gFE(pkn^}-TtJy4T==yK|Zq)(1W z`M89AG`$X#Xv-ctJEw5yixn;zy`gO5$@-R8?g-kyib3Jxb@Frk72x)O9{6sO_bsta*9nwa#aB z|2CHY-u;W{`cjp5*i|(83D~B;sCGi;R?))@G3|*dDOV;+Oh8H~Sg=FPd(5+Vp!c-;V;^OroNXoJQDLRBa_75LE42g@A(qM%OjV<-% zi0I+tA3uITC1E%T#Fg?)Mc&Nq(qYyF{Y*e{VG+Hju6HGsd};b1sDW-tno?HP5xe~b zSur_K5h(1|2|x0w=?Q5dASn3$*d_)-!Qk(cig_;C50?SB}M zZIm%7e)pWw-uJ^F$&sCx7LYA7CGGgr9e(~JhT!X!ELo@Dehq=N!uqmk$#pxv6&g?tSyomJpB}U^r{GzJqsdOy*mRm1$jh{F#k66)R{V86sx0Z{ zw63iGH&oqZMnU;c!|hn2aO59~&|ULS;}a5UYHE%*$3H+fqFHA(837?JXDm1b0|6?~ zLxe~F>gf`^dO{+g#PUxI07A_g#}e5DE&wg^s7MRc#e5ok#`I=MpmD&WdQ0T&!iu#F>AQ(xBsK>Rn7i^y}TIJnGTl z&8t$4on0cxIpUK_`xRf>bHg#dsQEbeCh-&UyHJ| z`}_Cr(NVib@B5c$hm$~y0ac;ZAcpte`d3Qs-Mhzegsw+oDhGV%$&)9r;56Wp0O34mjn>s=_MSwd| zb{zA#e@7@iU4q%>sVCe}>A_3T}rW4k{Ktn@AX;pKnPK-gx3l9t9c!u%WL-BsS z7!=bGhLrq#hG_+N`OdDc&6yf*qa+Y0zr19~3`$kLpR0Ud(lL@aM}JHsuggn(q`%Bi zsl|zgWrxze{$OkJcqH$Q%h^F_M8w-_``x4!iO9sbxVY$OU!@ep6Ui@%0bjn{QKpiw z1of}Ax%u?ugo=jdritwWU>Y18T>DB)Pyh9cfH^t>d0}ZOpVQGt;N$T2(BX$yN!Z^0;^|Wa4_X1vim@2pw4)a z9tH*m=o~<*hJn8H2|G~}W9xMGt5$#!yyCP7DZs6ptK?DFL0UpZZiHV6B z7_0z?*tHHqjIyet?m_!d66jy`%jV}Yid|oSsi{Ur%Rq2(N2E5Fo28}?g z%J!?+2GSf(nAFFa>hZR=)#d;kU<#NNezzW?C`iyNDk>Hg7h4KqVs4xt?{M2~AN>7W zADJaj|8crsi* zu3Sq?OZjT)1`*7$!`aL4(m*?CCeb8kW-bQQ+Yc9A;TsT8RaF&^5uTEg;^`?EfK8v8 zdg7#3)zs7k`m?c-5vbH30h~H(;vhVr*RHKrND*~)b=75W(A)8WJs&h z+AkG5^}!8za(xmxM8d}hSDx7XIC2MV=@{nH@y;y#eP+{DC)LfG!5Cu#hMkT4jH z{`>2ztE;JYA$YgyvJo_e1TGtB96oRjh!1}Z-Acih&t=rEJ=mU(+Xh9?UEA8)T3jW# z-2n05O-~KolH9vIx0{)M1~BZ4EUbA674!G+Jvz$~Ph?8;E{Ve%3p zUU4NQrJLg$6X=COPrD%^?%Lwyy#yuS_s(w{8ynx0+YfMe9wu;WQ!U=Jc1*|!2zZuq zz6-Xu#ocZ^>}y~6al65f*Yor99QddR-}Olkoq>g#ndL`BU^0{;%+bO$vFPNX!p@&Z zM#$VPKjg8C#sf6;H&Q$m8(J&y4BQg;WO1p_XaGr#*+fJ{KAIyB)mDmhYBX4NN7~c$Vk+`k*&LW+x``Xz4o!+5D77{N3+gw zwo1VEt5>UYU#K3s14wy7DZ4pcb^ISI+S*6xHbr<=YU)sqS^+S0R`Z$oZ3}z9Zhh@a zYa^I&Pzrzxfx2TYMy3JN7;4Y``}ZjUbld-(Q#5xWBQQ*lCSX1j48;>6t}}9vgUXuYi-TK@CUip@%qXo zLpA{yy#*@$jh|5o3{LoVQGtl4=yOi1CZH7SLs>vu(zr=xV3`${l-$2}?&N!Oc71`0a7!`{hRfnh&Gq>fRJx&Y|MINq#KN@=Er_# zrI?_K9v>cV4Wyy9vw%=4YsaA?vWHq^35HPP@82QHeK}AbrM@vh-Q{qY+uF*@%hNpI zP0e=OUGVboKpdw+`UzE$d${sK0{k7WqV zpvw6B`o4RCdn3-=y~T=c)H(Uf=+j(1;(I%eOTbw*w|os5xYIDY|IJ+ti=@5 zWip!I{*U&^hlPc~*shNkufSjd|JFRXKlLP8_(%gSOks1PWCN;#E@3Kn6lzFR6rbCb zGdy>Rbr4^PD;qtm9!36JznDh)%F4n z+*Izdprxf{e|6wFj0O&)Rw}o@WD$^M6_p!Ptu2&vEeNTD;_(ep{C=~z#p&JMbUu8* zXEB5|Xx-5*(VMKuJmy6yL*f<%2?ki~0JAl2u3k;6aQ{~<`{5QABs-#qpdCW6NoRp|AR_jr0Gwu0ZyBwq-0D?jP4{kC1t=+u;1)%5E!@!fmI_XRFO1F0o4 zG9|iCmjb!2g?_}?fNeJd+KVTGb){15F0p6JEpWg0*wJV(^0h)`<%uJ0E>fX-j8+jV2%Qr{`RyqVQ!Jv9xZrnv3tIgf&aDU zz}}ot#Y`#ofBJi?qsjsQ+uw7;`4heG(49@5_^1vig}GDRJA1VRdc3V^F5tPPiC=D5W30AV;xSn+U2yv6+ZoI$IfI^ zDYMzPMtMySy%|-Xr~ZC`j!t%o*dI@p{d4c*h?TPF63wx)Y*XZ^i_g_D(~dI>MS#wV z{7?tyeNj!P8kOHA8C#ZS*~c>_=66S{@1ou=@JZZCr}C}4^;fG~jvnwQGZPbxnU}Dz z@Z$0^NeP06@H1@r8c^lv`cYjsiz|%$dnb9O?LX zp6eNIu$g<=C4DaSS04HHq%%lV$;KyPpX;3(;|@of^P7wBG-Ia^?&h`A=6P5W*`!{O&dYYSCiPHSCGNsIZ?PYA)CFA0%_he_@mde#4wV-BcIs4+s z=xA%E2;$9hRIsWr_}`+Dq3?f-M%UltWuK^|A*k;O7^x(r%UC|OD^c55LfdY*2PKL) z)k8r^=}A^rw}3B8VX^A93rS&WQR!n5FN#zwW-+&z0HcCkruoO zJd$+B@nd&=Y6i2s2Pt1ut5B(X7-uhMU<1{KS`QsuuMSK2o>}vK@_7pmXuq|Ve?;HD zee3AxXl6!k&VB^w3!7d8^E@otvvOc|qHN%4esppRe?a@WwnA~Ky+?-s8>?o%DC{$u z_~iBV(QlV_)B||PG?+{HCoerrX`i0H43l|@7j4`rzr<#>D1Ofm6=U$CMW@hsIC~ga z7$_0_C8Xb!Uvv~(dg(qU0;C@|F}!iBrrBf*P7628=w&;$A_ddQQ9>1d} ztc-l4ldbtn`s3j8KlEf2J^KzA%NS@H_;jc>!jAsv$e$O}eg$ewfuGmiy|uU02?@$y zrKKZ7LzrXJQ|+^~oNxpQ@Xe@ppVR|W`Q8jgTng9VzU9+;Ze9B}0v)b897MZFg zp7Rq4DXGI_{O0!d{F61sYT}H^(nm|X%k7taT|uI5K5m?rwPl~FC8wt{*}}sVnTNu@ zdkQ_jn})6wdcL1HrC9YD@R^dba;}bbfmRI{1bb3aK7ju#E=xtK;!vr-gZrA^;xOVw%LK9v|T*Gqkc zR8zP7ggsX+0U%hISbUo;S;YdRQfYs!XG2hl1mDb#FAST_Xh66gQCWa{^qtBJgAL4y2q!(y3RkW51)R_ z>&XyHd^+qqiMZG_{ibZw7I|1VH(Wx?u0S?!-jr--io5n`>O!h6zcr0XkdP;cNZY%h zKV})C0;LHFH=zMW%}M}z%^5bA7pH>_4Gj>ln4CNZ7bWd**k0;2o4|kRg?ozsQ!iAu zTJ@9D4s3V_0bU>LyAq)wLNx+ZRaQ~CuI}KalnkL1hJ@VM&6^koC= zw2U;QX{AbcbCPE59Cu4&w!W#iUC(^vd}*H8Vp#H0UU%{SyQQxmZ_>a7u&&j(n# z07C!%au4_erCcHqe9CEod)z-JJe|R;p~8lGx-vqzYv}P(P!( z+FcBVvo*%~i`DIov3wdCjCad#!X}D3@~xR530(el*h zJ<@&YyiP0~&^X9|sXij^fhjWz<8BYWsh)JxIP(ZOVXY1l_JK;R52X439U#VrF}U6hYQ zB;@4H9UV8Y925V2Ldegd?vA()@dn4?D?dBOO?4yFQ_HK=ne@Y=Iyd_z8|MOp9=arV z8+~1s$Jve@LpIk5`A#fVQq^^?M>18H1}%nYGB_%VihFeUnZ&khpwdHM z^s9F7-w=#)EOrZ|JFvN<5=!|$SM;^(`^^8H&=~!H5*nVH-PmMV8`kp)J=YW*c^p57 z))3f*H^x^m@`^@JKMj0|Z}y)Y9l!L+J)U7|c0v;wX0y|6OzlpO;*-JsrbZ>xqj2389 zjxT#6p@9w1=@O=V4h8bbSY~q=xfDb|&1S0A*Pf!C6u=0kbogcsxSW5+Hx5tF=PP!c zD5z2DA8HuZ`^9&>Lt?_?D43%urTsjHZ55?i-h{V@!aQEMtunJ%zgwqx9Gb_CG&L-@ zoZIl_W7V#Jvonulh&-s4l2%qsqV(>K^BkO<_n-5;e&^s7(H`4dVRGe?eVQ#-k%P+D zsJvEqYe| z&TIR>huV(K`3y{0*ayNGt%kzVCTym|$I^ZjXp6P4>abt~~ZEN<&uqdOBrf&qFl z*fQERj*(@Q^bl~jJX{|JX@`-wfU378&FKlIrh0`x*>Uk#l<=G51C$JxRpUc0Dk!ELSM?(wvkCD_*5EPPqnuSD>BnPy4M20iIAaj-uDL=6@e7U1of7qy7mN&!EAzEDKzP2g^= zQ;A5*&82Jqm1E;aU#Y$(7^Z@ckN@BS1R=?@;KHbbfOn%dbQQl^n#FIJoOFU^=d9rh zTE<9$b}&t5CK?Vyh%5gCF)UP)1Xn4kPSB|T(v+0DUGuFChFl3ZP}0-UiL(lx1wqeR zY}at71k7^3e2>iTvH0F(jF{t5aTJ&G({4v7>{p3M5+uGcOY_s#;qJ&nS zxP4*7q>QB&ZjN5lY?b$41PL1P$FEst|6uz`gj0mZ^0Tw62?%)1h6{%d-;+~|?%?M( zfwVv>!ctX$cmqqVGk59z7I}{2-gWd z468+2+otPn&9S*h{U1|dkU%6xyaQ~e5go<^5)n`C2!%2;&28Sp6JBEh|8CHPPAmOU z3(Lx8e;Fx(lLzJPbmMK4agjP8aoJM3dvV*Zu9#lFgk;6;@i8My^u4#NJS9-17A!bG z!4(AU`ipKnp5fx3KZBt3)#mHeyCVW-C3vaR1hy>9vyo&GwAy^x=$nl~9F{uJmH_nw zTXarf_W3vh(HjsbJdY)FSQKR;&!c$YFpyIYh6zk_tr|zx4=sV<5vsUo%5#E&Hw&pG zNTW$ej)M@GY)&My0Eh!rT(T^A=xh-YiyN6DkmO&p+pBWSdT436J6UEvIWZBIsSoxL zKwa0_%G&kk{I1e_{!n`o`Q1PzC6@GTOX{hwcOOC*r}tNB1cLScAHgCkF`TYsg&0e> zR;{zdgqmwXbANv!(1lbfQ+<6=$Kl_z@%y)Z8YQHq$p|j}Kz&Z&ikwyY9nNn*U1`&P zv;}hv3kM67KpY%3MZ!WbU*IZ0;CyndA8;_WC%72;#lw0D^kpZIh+&cF%zn_-6+Rmw zy9Zbrb|A>XC~sso$FZA>$KaF--AiS(KHk<0`wXCO8w|=QrO&A&&x>2PPd{=wN;l%qO7H<>C3F$0tPpI#b{bEpS9D9 z7fW(g-FlNE%IA?M+hiF`t?I(5OT5IHmj)dKsz%<~y1UyI=Di~PTBqZnf)wl}IyP%! zzo>^nx0M-n&t)MW$jhsV@K6Np7q4>Ul|mDr$eDfH z`19w3iOHM8C4?>U(AO{rBi%-M2JYP4mog*d?UrWuJZ!-pL`QDy?Ul=1Mtt&Eoc`6~ z&APp}h-dcw(Rewe8o)>%9vH|z5VZRA3GNez;cZ)Ey*opy_?^3VDJdwzI{3lkbjw0g zKLHC*p=RhK%oDOIqAe7~fMjEPV~;o$0R@m~!L9=vHI@6}_dyVP!JU9DDD{l%r){eF zlE%BxE&%W^428!2fC^MpR5TS}(5AmMdrtv44YXe{DV#OUdxu#RC+S`uEMTUs*0v360Fnwb#f)g4vCSP`-+H*S~uKjjf#x8lO3w1504n2X5I7xtVfSL8iz?RMlAwv75RbX&F69k!Fx5oV95Ga zyIwkW$FlM~KwlN~7k>SE3>;k`CUwrIf{rLWa`fV%Xc!oxha{-c(&>JF_l#shG%yvR zT)Z^_pK2%>92`iSSvx}76|m!K(5;gkClW8`rJtn!OW`&dU-%m;~!uR}i-vD-{V9@&C+K!w8zLL{q z(0(_L#fSs~wELOvqGW1hE&{OA2s@xTSRz@x5N2P)S4WXMMq-f4SPK$dh5mB$m{8)n zuXg|3W%z@w2j&-eSg_#)RlLz{Z6K|~CCd8M%dL;yjWuDDknVl^HlDDow4QZ}#Ovcm zNJt259pJKA?;{9!nAM&o0vnW!jcEYme_vfS4AUekd8h|#=;h1zOfjI;Ig43+1|}1( zS^GF{vbD9fzd!VW0Ahl8D2K(IJGe#B(YXAg^x}t1@9Gf}8L_`8fk%Rci7Bqx4{ka< zED~1ElDX$0H_r?6(IWw_r+_+BU;*5R5x@XT8c<7peZBuo9UU|CKFm zdSc>+c?)|!<3|vjz{d7o7qJex6Y1nnpcvq3Y-QZQOLW8hsCand7qK{W=sTR9ozD(8 zpz08zK(=6Dbd>VGn}|{XyZKDWH7F$w-+sFD0UuLSQIV0B?&|1RIL$<&HcIXMk(1Lo z+3fk^k5-?E9p>*eij14I9+csW=n}ka#wkX*rskFwZ*T8~pUJCpY!}eOvidUG#2^kx z0W>TF9$Bim^Yv9i<9x`ndzlnPGqRGuAKpOhGk(|jZK^L)_vPqc=puT-xI%4GQ&w(z zFVZi7cLlzi%7Ie3cNH?J$U?*CyUMPg>L5XZM z^qxF^43?U`)6-)>Rw>EJu;w2gw>XH?UuCxcbDyZSrn!Q4(F)JL8JHS{9=rFyvUH6o`ww#EmdNUuO$;n z{#3-XaUP(Fl^b~$1mqr5L&{7|QE@?b<>B+^&!LqlpeZONQorSMy~r#m=yj2HyhpF` z>s_I-#yN_cMSw8O=?C8=uziWq`h_PVpnG4RveMB7rWU}}v3Ls?#H!lBcIA$tp znaKe-1VAc9xWt4j7FHzkeY`#bOcYF`6T9sx^)n|R@VgLA20aX(^qV^&B)hOF5U@Cg zPvg56s5OrJ%QA`x{xjM!)-;KHE)yV|>3oy$2U*GV(Xw$~P#_pYE@a ziU$7O+oLgxNgeBo=M3lH_3Uf!={frQcXhg|49tDlu;}fLY^2@x8LZHSw;i!j8sO~r zj*OIo=muE`k_yPB{D!_1MgIm=GBR{^-(0vx#<%4^0eC?MASxmPQhv|4tTU^sxQ%Em zc6bzCt$(>GROsQ#m#M7}v9U`bm+e(FXfh-Nc_>Xw1@9I!<*tt?!TFN&4!-FV9_7xztP9ANq)bFY7tFv|d5|qyf2qeTj4)9?? zzEH93PWk@*RoIuGKYv0wD2fcI^&oo;AeHnQ_QixW&cg`$MkE8Ii}>|Qv9j%!gm!q6 z!e-o{wc3s=evC!>4L)F_#0Z=&b@bN+SVxu5*(1*|& zN0L@kXwWSQ`l~J-*|P{*wft0evWK{zK7CTWebHsN(nGKpn3H1yvg~RQ+MNs@rE&{^ z=MGF{1tFoK6&CZJ$;rt?3%5O(Sy{=mM8w5?)6(?%)xfKckB`5}F3i-sq(=~=p^mQj z(g2yPyxHIdk%vXT8?F*oK7fz4WeoO_G%SLJCcmlH)RFqP;eD`~0|*l!JS(^98YgzU z4x)!hbl5qNs&bPxDJ(920~%Wmv4?x;kt^IoT3v>a55_-Zz`||1%si>E@a478ZO7Md z-e|*G2GmAg^M3xfmzkLvWMGu9>eZ-)u$8a8uwjagU_9r+4GBKa$;+d!*+uyr z8>4|v$ak}y1A;xUb^wC4TCjz916KENqULw#%X`BPc^?mwVP5u*O~>)9 z2bKo7Ehi5tP`K6A$8U%`o;SA~x*}S3dOEhQRPZy-upty^VGX$C7NMmcsn`HX!3#i} zE_DBHnd4-J?>A`hEVAXM+{;$r&oqoe~qH6^g8!Srt6e|NC)`+ftfxFE#DRPJyp zzm4;et?Ga{0Gc) zeX8FT{R8$C+0hXh!k$5h%mXiCV_`|<#{Q1@x#0yXtIO%0-ddIjL_Cfmzq>tE!C$83 z73+U+OPy{6$gHHp1G_nr8~hMAA7Yi3lM~QsB@Evvo=z4C(5iC<@E~AEcaT$4ZGO{=E{_@oQ8?pb9*0eZI z_}5#QU;gKAVE8%0|NHh4591IG3#R0Yo#}(4^T&_E<7rdm#WZ_|vQ0OZV~fx$Nnwiz z#KUI4aF>XmZx)*M{Jz#i?V!8xkI*{4$Gp<>Y*^q;`aADOZZ;9!U6fg2G6o5DNx8x8 zUWmdHs?I;%UWr@Bekm&TD6B0ao8CouWuvXn--~@ORoyP{o(|k6lbj%3Q^z} z_L6t4QNP;##AS9UHg^^Ko;dci`QN@88YvDXG}*4NB539rVPanmrd=xwg|<8? zd0#H#l@J#9JNB&(R%yr3%zL6CJZkYfj-6&^EO@tmf7VfVUsy^{e`av=PSWj9&oZ8) zmh;vfvwUX1>qPTSS!wah^SFuuh=9rQuvP}X*@m#-tEXR>OMIPHZCOJvBDN~@-&ajE zAKk;X^2XRlN5aQOK>3y%e7>@EE~+q)a5Tlil0Tnx7ML|;RXu4FgWLE>jU>2hlDBoF zIdkj>itVqJ-$+_U3wac!7?Xb<(U;dFLU51lhcrDC>8!JKr_=ZM=^5_t@4;4C?u8k3 z{ynAq&RWd7b`<5)>O87lFa6JC-~Qf;}E#ALFTzApi({${){X;|2=q^yxeu(Bwb zNcfuq@#pKx95r)fcO5@Y{#w~2sO#-tQ|#bM z*A!!T{W34y@udtBW&8DFcJl_t+k4_&*P6+$8;|x!3u1;;ML4ecNGMh&)ATxfT)M-I znXcRd&@`RGvDRxpHaDAd7SX4h#+zsvl6((*Rfe>&)B2Ldu_~8v>c!49zgFU8p~L8! zllkWqrMX_9j(>7sFh{2+M0_XzmCIi3Q?~h-g2b zzC&D}J8NJzdwQEU%xtIpq@)!$&+SOf_M}8p?Fp4+erxWPhS%|8{LkV~Zxi*ElmjZH zs%V&tLN%0cZ)W1tetUKuPn|#0Ic_7Kvfy}`<;uNm?i$r3zg22|XtAxVy;LyMsmV_^ z9W&;TZCB)6wN-XJPGh0SKRa`sxY~ju^CSHV*P0NK8>K z;@Lgpv26FJPGF(2@)wpJy5!Bj=AJv_>Y zb62CTaUK)P$y}3vdh0%YmG#z4iX4BHtZ2s)XJEwcTD^Q#mVuDlb>bOdy30@I+Pl1e zK3Rvf@XvDX?-v#(h$fz#ZKw^n|17TM=X^1J*3!u=_W)x6bAUe-zoCbXVy=0$5)%3zCD;37u%BCA!Z&k4QaOTJ-N^(GtL=pm+_Sp@0Gc_m|L8< z+e;PT&Pvgo;C|b)MSiQ;a&itQrDrO!Z<_kNE!{HD_&Sz&{V)_Mg;MKEBJ1FMhu`U| zpaUu8a?1ecXc)ERhu_N*-l_Z^6+g0X>zmS#t5M3HC`6RyY8DWf`p<;WUCn5$Xc|1B zR-w$;I-PFXQ`^DHBD8w!spWPO-KZ?p7U*_XH}8V;_PW8vBQo(@==ZaS8k`F3Q3p@| z)_pUobM2*lsN9j^ba#0QBH(A^v~im(9fJ#>!d%#nwyNjM77AuRYm3~i+p8^i+d7+1 zG1mJ_Y3;r)^!mJ8x}=udY)fXFY2Mj>rXY*Bm**(NtuwxfwX5=Qlihh8(}}b>?7@Ze z1e>9;=rn_rY&m+d;veA?$8Bp{zQdP3{#>lbZi9|ymrmb!Aq2&lu#f*-BIV_qV>&{! zEb4^kj^@3|?P#)h3Glbyy|*>+$Jkz%VRi@?D3$b)B~P8=-)AZ`XK&_b{7JeUf0RO% z#g!XaK51~N$W_MJH{OO`yT0pn5n;0PE=$;zDJ`{#+UT?Epn9xU5F=XlAE)7!g&OJ%F>w6?lwd$=cszgUK?ozvMe(@L876nb*OD|`b5bTEuE ziskxH)5r9Pc+FRbd2)LzH@DJOLG+OL7l(vgJooX*EO*#dmW_I)>2&IL_i)-E=|v4j zxiq}yz1#fFY|v1G!Sy&MKkbtCW@f-2r;85S*I&=+wOG<~90s}82zQ=q*6E%n-a&MJ zf-p~!n}tMd^5Uv%WBINc!?b-9E!F99@%Vgg;(1%$HCO&$jIJPw-!3)S7%lMbC}j=*a;YNZ#hpuxwzk~z zn{)kixL=8Av{S$X@2|AU$W1!U`4Dofe=0hHA=Sq3;jBl+FR^uHA~!nvY}DYad9|-h zPOzev#zx(4y)D-^TOuWos5jgjS_251&>bV*Rj*yY$@Ak@a+7;fI&UQvU3268n5ty<8*kmTS6{j>V{f$m{z2ENHj__4G=6!>tsXfYqxiG^aC*RPqW}k{? zH|$r!D0arXQZu`WKR&hBb;k#0s;#j1Bvh=q(yj5-YHgLLA8#CDi*R4*bZ^qFUntqV zNR7m7-j~hlk?cIHnY=#W+$Zw7_{i2%=n$&+bA56GUtVs8&-r=GV0tw5uE6*8Ur+VP z9foO{FV@o@;OBPjDK$3XWDsU3&~5Ok>c@`Quz7pGJwVqQ593yU$vtp>U{drWW*K8^ zBXXu(YG_!MEG#LXi^$_QyH1)k~pj=-MAfF-s=8N)4doK)|dOJ#nrUt;aW+D z6qCKW?l!#58ZPv@L7He>Zik(Z|D->jLi~!uN!H5pbRsKPNz2MDBR2jSn@<%JYgI{r z#*EETd(U6)Qs>RWB}}R2zDgmn$tzhUWV}BNLBBr}EWP}2s~yT|qLUnb3AF_ck5sec z)$V6LnJva9%|x~}-4&Cd`>!!6XFBzw#7IQiZLVkidu)CZ=a8qTPkT0W*abB;m7CX; z%;-Nn?h{xToTmKUCf6ORG`W<}^SgMx#_&>}2=i0x^ZTgm$(ej#6!v_$cf;Y+`@&192sR(0!cDd)W=tnHn_eb?U8M;1GDr)3|`5m!F@ zXjbN^brNK>ymzbnwWg?btx$L#k?3XMK_b#(Yn4=q6V#GEd$lu#ClP zjehdHO0$Fea@sH~T;d8>L@(#qYWP7NHU27g;x8_@NEl;T)y=XCX{Gd1X9;>PrTkLq znG0V-e)Nfz?{&^9TOquRp31cC8;+aDOdC(BlAU=fe>m~LSeEzi zF8?)=V{DLUQSbQ0Ct`GD+rg_hO`no$uH!gOPuJ|~D4$0tnq`_y^}+Ux;|X3H z6%;lsQOTY=Zqf-Ult~G(ExdOK4p#?G7jRCuuA0qH9~{KeTWx7;(zeCQW{;0KY>jeG z_qrBM^4fP*Q#`hO@L)zfm1@^^kl>(#vQDkqu|WQ^o?Kn3@+2L|*U$G7of7iOT#?w{ z-YVuthd+ypJr1WPCDqai7L*qBcCvb7>xiA7i9n@QV#*maP?U<)o=j%k9{IsN`E{7F zcO}zM>#x5C1+I&~7e{9<|ss6+MxDuC@1cSF|(*6k7J=jF?Jkt^RiVnz26X zt#1pe?aF;SEb$j{A_|+S!R&TjxFrYrACLC0^PD*5?F~d4oK30J8Mu9%{85#vPo}>$ zEU02^ZdPyKNy+d2org~vP~jtDHV`h8!yp_wlX|NBO<>}&1Eq3FbD`dR^S~y5uWQ4l z(yn>%Ta?6F`O_0 zm^H*b-QM3en7OSY)E&0dN2^u#f4FF2yauf_n%~kO)uu`~7FFd1hwK%Xu+bi?wcYlFK>!p1bea`|SPM z@n!EWm@=YJq{;<9xIE${2;!MCV{Fxw2o=<->WNmgq?Y}YrMOF-XPc%rh?P=8cv!2J zM^E9trv=l`Wp$p*sL8aVJK4^bgFgnj&)zytf#b+^TcJs{=>3!sy4zB$=hz>9*( zAW&PKF%1e)a0w`|33kiKfVqAGo1muvYmiiLk3XKrkzQm0+@dWz_AKb~(i6U%z=8?k z+#D~gP1#KI%cv+nvJ^ETP7imRfM4b~d$pthPgSkwFQRzpiW*;T;fx9&a7pnKYx{;#sbe9KqckS=z=_z?G;GQap8T3<7beTSMI>SLIXhx2OKl zXb1fJ2Y8VL_kr2G}AY^v*I3DPS~#Q19f(&N@iV9gJJQ z)rtY29IE#r)jN%hE6u6CKQ!yqSJ;4RVuLp)B0%QTmLg{_LLplF_?!)*%2zD=p85H) z4r_^&FV>$gG4Yogu`5890T7nv#yq{k5oK0+8`M?QBU!`4Pj{73o9ugniyzQba z|7>OSBgYwRzds#!cnFh}P%SL!-#9%=yfns(D{2-mE`^J)L|6CJs%GocYydmg9^F1F zaPg7F>y`N|{yRS7b5D~lOXllEoC(d_41a!i0S-_qZ=*G9*eQ>G%|qvZfASx?_CcJB z1?>Bo2)`SKl|zKf}$E!MHG zmab_>9LB?L=wsTXhTBYcYw8dW1aD>;HhbGImLQ+6PX#>C-3)OWl~YuA%oSir3TU46rW#>#1i721ubwrmEH>LhYKLl^N}Y5mHur(Y7By#cL9&o*}Zt*%HQf0tIU~3_E z3?f#&qri<{{(I}>alPQwXxA?ZekJQ)M*7*w&rvk8i0qPEYI>oMeGyg&mft-jqop_A zH2prVhV!%TNqSSxVD_D}7^PCsj|9G%0_R+vZX2ykgU@ z9jnT#IzJLVK0YIQG!B`GN^or4UI&^w>N|5v6*=V4!y5X%v)zTDzUA#>P$MI@QE)F= zcgMZZew!^&p{JT&tQ#&%F8+r!#Egd4_xnRQS}oG|#X^xw*C^l0Qb)-8R{_Rx^iT7o zRuUJ@)oOC>X&0NLP?A)jjkvLWL4zqMxu!^547Cw0yk;m5OQ1VI^PB;8p+jcI>;e?C zV4<1)kA*>iOG$p$DGsH{G4C*r*snwnix$2}6c^p|TA?QQhYszYl)mW^%h=;63_5A{ zcDhBjHGeD(vy5Y;i%rXRU=H)xX^tfxbA5bAJ!>IZZS(Kd5`T0$qWw%OcM#jBG z!RAX{CfaH&_IF^om1)OD2hh!FF!?Qn=n<{Y=}s|ePWVsLw$FFqH52MDj7=VAy|I<@ zX>atMP0wO)`=<3#mwtPPep~;T$9qw2(dQFfLxN#u;>k7TG+&$0a?Pi)eM`_fFgOT% zi~zl^7gKk4Hx=wQF?@0RF<%Kf*8ym!M;8o*3D7Q7O^hCsk3KLS&ORAYmY@(L=Ev^L z0E%vM+lzy`A3C8_i%Y)ere2;sfb`88lh8oiEGmWG)|pfIxk{h~;^xE}omP$x$@(0{B_JT?MfnZb+m#=`6b~DsSZ85b)NN-K{M!)K$r;`05*)`b^of)2qBIf z`dL;EA1U(|NVX`B;b>N1%3F5s8=av3hxD+Wa9GR1$!Vc2vc&`k4eF%s9ypdZ82VL- zPH2tA$C`xx^vz~XifI)~0NydA)|PJcR)<6H7*b7yl;*-ZAZF;(j;zApmXn49-*TS) z6Zf$soiy7~^4H<(_doep7#B}6RjF0I_&E?3=^naA6cvnr@SeR0#hEvDD+9Sv8R@!< z6Et+tMuse8~?%&Or+yD)yEkU442H#G8xxN&pC-jx|uTH4CPtZA4CWL^9h@{X?acYe`ycZ(w=4+UN5 zTQ+RnjEjC#=s2qhwR5tV%^P@+CK2`6x*Fb*lUi!_JL$KK>#)5=%g~dd_qc>djtY5n zt3XWC7AJk$1+*#0zRG|)sLNp21YKH+qf6$C5och>>Y4%?plQGfc$=kW-p46K$X z$A@+^V?L*YA}ym^7J)(M-dtjkwr8J%A+NX8>)OvXjb5QzCpHhu7i`7{V#UQO5YJc6 z+XkNBOfQYA^T8;(sd2Pul4Z0A#3KH!srSa_Q}1&_u5eOsX9|a426B#ihVya_gmg00 zHLtgKD_Mxf4$-(T=_Lm&f6(V^q7+Z&;ii!T#!)BL51p15hkYK~R4O$Z(DJ+7&)h9$ z_eF|%+;qcpbMEJ)I)7R&OwBUI2hA=BYyL4-g{DqNrp)-_*n2FFc5hti zx|E?RhdWTsnmM7ZqAyo2lj0A@t%q%Aju#oJ5w88t3 zTXR?2g6hneTkHF_ZR8-Nk4V@kw7j-+Dp_Z(dK09>@!1aJMc*3VsW|QV`WS>Hpc3jE zGs4wHF2j0RU78QSNt{OgSsNwM1CNd+Q=o^Wj*>C&-Zo#yz@0Rqs@WWz7s-pzj3dbH zjjAMX`H1>^ML!dmUd{H7e7p=ox-kmOpkqiMr;eA(NsE`qjuv~*XT+sT_R@#KJ6W&P zw&UWCP90y&8#rzJDZ^icSCQ~Q~W=9dh$vJJpqiB&M?(T*YZT?H<$H`L}UZXkviYP6E}G45Yrjt zzQ>~1^A6#Cd}l`7%~fKtxxZbt#eUugjnd8Snjv`0R$KStM;QZ9a3wKBlS2pI+Jv zec!9{zIIVce*SunIYqKg{gcWTVmdKP91_fO18T~7UTxj!CVT6+5yhy>d3qwcA7Fz7 z5K~L}HeVKLVyRZt{5o33j~@hQZ+H_rFX6q>?M;=@wQ!fCL^5LB-mT({fbSBnT6;k8 z?OoJE_JC2Oi2UU!Q)>WgvTRSJWnBZ~RnnQ)XiGQ?%2$hf&AHRqFlX!#(3SVAayv%d z1cD}`IBMQmj^oAZUg>8j+r_zwp)t;>a3-Cb_IX*DfrQCq*~C{~{4P&l5A@!qM1|N@ zXBVDl&!F>d;^33_f`L1OR7`XA#^J3fN}IPb*WKa}c^bhKnj1nqjdrQ;WUkmNGa>gg zIy?I|LGCiCRR}H67+?YI5b$MJffdGUQ$JyC{y1@$QU=2_f8HabBSEw=NIjy!0vtcUWgc zx!-x>GU7)MkCTj}Q{nV}ZL24b)Yh?uEV#>f@#l^m2MduhmBX&wqc}0wmLSJNF9Ft@ zxnHI27TvKeR{6_WyEBg&%(~CBq^26ZR)UkB&IXCKD~@PjTmb@xLqP}Ahj)=n2m15KF$;2 zFJtHPx|Hqi0x%%pbRfo5_>9nK2>#S(CMF9Otd(SR^pEOczzW5u2qBZ%s5>CXV6&&` z-8@=XGXd56;0({38q_8U>S2eKxHolMHTVdn*2La6QQ|OAi{UC;H_M{%n6VcW2HCw{ zz~Vaoq3QD-N>k!d7;!S(a=Raaqt1Wf?PQ}mAy&^E5p^Ms;V<>vsa1Rb3gcf0B^%gB zno-O3!9@|NOO+cr1rH6)W5-s~R0VKYUtM#0d~$U+^5OD8Ej163%o#fFztoIVis9i27}# zd{>0?RjAU{)6Buc3XRF0$LrqUrb0Fj@tRJdGY-kcw{3&1Dhg9JllKz&tNN{kXliFZ zr(NbT>I^P>!*-fTOZ1(5HC6hZ(v^4UV;iRn;&?^ca z$pUtE8$wk%uTazNhdBcyTW99x`D+o_;_M9H6*49H96E_2*=S`o(dRnQox2-sCLeQ8 zL2yZ=Q(q2^vfN|5NE{`La`rVFOSFiL^d{2aaTokIDPdf9@{^zi2{mWV|ykr5BK{oZq>+=F&?*Rm~yT{QI!MDSP8R9i;DJs zCM`uwTf@#+Trf#lU*l_)(SNwucp+HxSLm$;u&)CBL71jSa1^jG>k9`U7Ia3G(^;^2$7!(Ay3UkT175L*ix0P{d~-Ab?t0xE;7D#lLH>R~2ozneOAv z(a0qp`sd{d#%s6AUJRyMP>XBo|AM*RSSxno%FGG#V9~E8v zoY@n4?^*+VDu12RdKRQM{h@oJ@SC_U!az^15Vikf)e+XQC8c#FG}v^YI95)*aCuj4 zDlx`0u5VjHkU@B=Nd_HY(;IS^Ynx|oCsFvZexeA#miktr;n(@vW8a090Ji?EOg|$v z2$<5F<4gYYm76fU-O9c9>p@*tr*5MD@-lh%i7BMtab%6*-FYwL!Et%3OR;8B6Igrv z1`;c&v`g~Bvc(O`6?GHfaXY-Vjl2d1l*<)pK2(!*oSo+RadWVieM?>i-)3i;@B00O z?gMRwApAv3l+3LNr*T{l`FMDpi4=%=^xsAoOw(|CAC)JN`X20u7kK;5VzcR+(3U1_w z>1uA3;lInwOtm~-ak9RACmF7lk9DgYNINabwPxBc)?-kqzgC1zH+W5pB9`V0QA z*!iC-RVIjM$Wms~uZh(-Mm(Sk?@j`CMp?gJ8}ZgJe@@C2DAHo_`2_S@a6xp;pe68w z{wOd!cWzHgAnI0*;}JC0Is|!0b{vTx zKQ}Tsabc7mAa$}|wWulafa=}j9Qt7Aol){Atpkz5Xd1#hQo7Zzj+^l-%e7ZaLKy_c zq$%I_LD|YiCLXa*GaoaHmMzq57DgS;itI^EH^*7+|ABS#v*d!v0|)(GPCy^u9tsV6 z_h_NnY73nr7MyRqt8UqS2UUq%0=B$4dv0p!c${v_eEB{E%})r=F>9$9(jwXH>UB%*1^lS zHpS12FIuU&8S%ktC7uQ&=`f<$baYUSnLScdIBt+8<2K9ku+zB9buW*JTT15qWS&cY#$gj-sS6>5v^;LdWD!Aw^fFe1l zxl{gCBE@L-#j?8UI)QAIKHlz6*$}S#g>^nI@%%mKa{e*V2~-TmnHeJwq*SJ29ouzS4s8 z_KZE9Z7e*shmP$8p_gHDu*+3P*AU1YM;_o}#M2nOpT_8ZXc=xuvywUegiP)vM&sbq zkAQ|md>Exf*72uQg~37UmZfhg7kf*~RCG~OUT*v#LxBf`#Zh>z2*Ybd^3c}p=XQwr ztfwc5=#qvncuDAiV_8AEcAyjud$}kZGY-{9F-#P?stBb=ufP-a#%=Zuydb^)DY|<1 ztwZCwY#ZQ$p!H(JKy*x0W?6qlrK?WrX-r|s`4{$_=^H37pr^(X%Md&Ye7RgLAL5aT zVY3tsvL4SO(bryAPkad;Ubn%kK>@|_rPHc-R7fsR2AG83 zfw<&YUBcN#?{`gwQboyv?q+*0V}&**O#nM7>caKO(mj zCM)6*;f6DQsm@ugFF;PrBUnQ9I}>*fpi7vX{vBrO$|O!(DDyJoopS~RG`oM9sn1nR zPZ#Lu5pVzAnz$wXBSS})qGq0%ImqgZ1J)>dZ**Ag~f=uaa>lG_JRVQze0D& z{)^T5aO6@)V~0EqfKf5Gq3~kX?!=B@6R{^dL)|iy1g(YDeqV3^NTb=kFCiJko93%fVTu2HMr6XC-fcb0E zbUzQ`z23@sS~%AL(5AD08r)s0Kl~Os-+@9Uo{(Q`onG(_t2oRV#?LnBzjPF}9q8@J zLVdSgHWy!nAAXa~(`KXogH-TMY7SzF$v4}fcQw)KuV*}nplx+|xg#aW04@J45@$JB z|Enec5|x)d^w`!E)#_zjVVVZI6Y7@la@3LSo2V4??6wkN2D5vu#Ug(Y~tzTUb-w{l+2) z09#}z$|7=>uCwy*pbh{+meIN~N-E{f4$^Ou7WfuLkAGmBzyBVtqg>eyEZKpuH@uk% z;PIJhs^QAazvGL!{4~`uR;VhJ`K%gD5_q&<+)8)#`hfV!4$ zCKu;uabOcDf1YiOmY1|WG(u)j31r-5Ut3Pd6&{bLYWmEJ9YcP-$-KY26J!XT+}rXkb1W7m(J5wpqHJ*oXKSmE3$16(i(s zYo4>Bt&B~_ihw^Dh?B*Z^0v=%PFeqalfAy+yONZN}KIB=F z_N;N-=`f*~u=CYn8-ly{$&M>^fqv{86@0)kD8n&oSScTu8-9E+%bgXUL3IfBxELP| zuC+S=(!1~qa@eTl@0W@eQ~Imo26>b(>kUrR$y$P@wl(?meqpum8N_@zT5&J!YeEdo z?2P&pq)SQ(s5ROd4aT_|l&Q zKzB6mQFsS#K2q)}*Zw0lcb`IInZ9B_qkZ!!UfnJkZg+u?1*#D9HNU)4c(-^6+sdx5 z4SsW8#pIg!O#~#7vhU%OliS%cN5v|5tlQV>mGd&#t3Bsb^x{KQ4;VX0n^FV0>>MAt z=;>UAzediUQYx!CAHU5&zY;hbV$S$y#Ie}Mc$OFSueI7aHb@~6X>(D=2J_L2d!@`~ zE$BQja@YASFz*gj4KC0NKtY71lk7JAj%OS*B*j)d*ZD-i2j?fNYZO7=*0_Ud!}!a$ z>Mv>r1%RTDlY;?c+?-WZhBi<86ZI|@MJHG|Ze|v^-ualaQXe&uB@BC~Emc;y6X^8> zlP!$U-o9gZjXFidV?SV9U+nx|xV<+Osp%#{A|!JHAd1uwCd(E+W-8{2cZ) z_|?&0zpoihn8VIcJ2@yT#{c*i2HN>qoGq(R!9V&A$RQX{8v>&A1(Fkv$vR8}~Cb4T%9`7IP*U^_3 z=NP%|+Tsd6xppO+ruRPYUtSYU7CRi#K!O8{z79ma-?ud(Zo7^oD7<12MTKH?_JvBd z+xc7fR7TAbMU^BvvZSryD?uDibDL7yNdid=&1NFhFz>mp+-ggfC)wHQt8>L!g^_Q$ zFvw{3Mm3}u`i5OTGGnC0%_l`OZ-i-U%P72=^en7$tHnu7u-TqN9v|zmeDOQFaqEw8 zrpc|)UE6f@L8G?((U;3Vts%Of>rxASS{3i^XGuI&W!M+7m@-^QYOUJR933BE)}3^{ zXT7S6I5BQWwbTZ40I7P1Fw_}8`>)RcA=$iQ4Sf6X>OpP>YV#b4Gas?fUICS=m#CCV z6W^P2*FCiO=KOwAU}=-keHvzXayaq#4eThk9NTFw-^^|(yL5?vhr;%sna zeBe9()^Wd9;H$m8w6FSoIM3DfjVYxQyty9YqI+n_JnNKz_)>`-XV?2o{hn2FF%@sv zm0{%&r4wI3@zN6dXfAG}RIJf#hZ+n?H z#b)nylK~IQXKeULuc76XxeLrWB8vVazJJq*9j{bO`NaaUt7&L^vY%bu3vBr7+ z(I%tjP-r$D2M&7=tJj9)u_zEbl^bG~zF2_MFAghOcYKb~t+qoDpjje+n#V{_Gi$8s zgh~m@A*^k34$B9KlV~~w0@Td{D6%q8Ea%ub2&lZC?w!lcHxUw>z8r4WA6Mx{gJ3vW zd~5hEqpbtUnF@{GzVXW$(J=}7*WPDm%Ir%=S3x+MXF0~os&#qN#$w@Lk=~n1JW^Xx zA)25Zz@4$AN@n>*mN(4`oX7u!dE7=zDNCZwO1JJcva@97__qL-0#Qr{1L{g@h0@x? zRoI6Y4HHQmHst~ii%z$ht?kTj@Hb)buQ#pCIbVP$0T0WsY;HqKh318QJrqGoCEx~H zgQ;l#%C}+LF5LQl8vM&Jux{x!QAKU7JYi+{>T%gci3J4DQ+2;Of+?+AmIJ8sua z?W~+EQhubz29s?xV8buoR7qlG*K{t3ds(djLdty(7@N2gT5Xm)EBAtNG?W*KJiG-Z z%X4$}@|MXS%SLTJkc_l$&G?xwn$d(mwHjZDk6XNkfBy3C8!MW62Ju#*h8DXnn{bGq z)>*+v>HDv(XbmoMe*%Jk-ao=8C=#fnup|ToDn5#G(mH;b$aeK;#K#6uJFiK}(a&E8 z?e;V@o&)_>#2!|!8tiEjq8(Si=9NZ1e2AtaRN1Jpe|sVP;TpmG)Oq}uyKlP-p`6H3c@~oscC!<2y{;& z<}H8w(#iF(=I<;kq3r!DlU$>Ong)q^5?b`4p6kh-SrOue#I0&~CbL6EoA#6KU;HT2 z#_5x8qLq?M_5z!Ybqfe23-!lr+1$mImn3;^g=EwCA^?rO&@G+fo?M$5p5ylm zTzd&lx*?zAB_PP;8!~96ZnUdy3;f!W`RF3Jc$?Hnf)Aj}g|!ZchCur*HLIj(RI_zD zUDQ9+?_czvUi_Be^>3zZG0+( zu`O#hAcxlEo6Q1qM1y@Dhx@h62eB^iX>-Plkgm?sS$rJF*d1y|!%wX(ISu{!t?>#X z3qy_mocu`e=KaL>x&x`GM@7Idd^y7Nx9#$-@0C#=Z2Y1PKE>uMgSqw1#uB`n``p>8 z3mGRi0t_a#U_-*@mh6#mjP{JFS!B5v1OV2`*xFLR*{A`lXE--*Evz}?J1y?wEQiB` zFeeO8>X+U+w(fm8h-BO6V@GD14s%yJ9~L$2&vIiQ4)B34GjKswdiGBm7ny)v!MiF0 zw8eIQDnYUHe=iXQGc>9~&h(&d)BzTs6@+sU z&MjmeCm2HxW4EQVTiB&c0FaHED+%L?cz749!$c2VG ztd+90EQY2TbGB*cHXO#}NX5>8&O(i_zJ!hgRX3BG-a*-ptpo&agyf9jCbm=~ZHUue zSPrq()9qB~`D{Bo5V$xj@orcGU~^Q`>Tz&)QS+9UZexL-*xs3O zPYY6k#LgCQw~t2yYb&Tbx#|z3=nqL!qdkLOP>s6W@_ux-j4zO!AES-WlVl#d(N3E< zHK^+U;H=lE59OoWJEOtAw=?vSDL*f%Nc-C3QpaVKH`eptq*_NqF= zH84i|to`DHcDCv5r}6p(_W0PSzKOt?C>`kgUns)ybENI94r6U2HG*m|#^)J5t(YhA za6wS>jl|NNadb>zkbz}^Sy*`=rw;%2O~hvnsMqnNUcn%8-)b*XH7>?A1#IF1q%%z@ z$v68^S+|VI)7npLF~!%k#0RmIIDNB9Ei82fMB&S66ZE~W7%l2#k;fmte`N7D)n9`r z;%~^*d+@)|zY1*jo5A0@kUB*F)5r-e8zSK^dgjwP8-l0~rVcj5x2~pX)aZ>EKNbGL z5L*6F`0~d3${HVI^~IK@j&yz<1imt_WH8BygYJ(CS)LDv4I6586!C&!OmJ1G)NF>M z%N^gizlAb$2P435ft7u?4wtLxLG{oJ=NH)8E)ND-g{*L)#u2SnUYl-Vs8nBuaT8#zpJ(OhYC6n88~aesNd*7xW%9m$ zCVfPKgwWEN5nAW=??()!HPCGk_}bk0KOJldRy07EZ-2lyeetrYm_>^hdJFBI38Eb< zar)&CeJxRwMzBU**m^24VkN@fR`tSGu^FBb?S+57y`O)j-v%C^KA^^*PFuXm23_tQ zB#^RfQhbBpVsCH8pY#3Dr{%vDxO0u3I{uZ9gGjr9V_92bR7kCxA*`1G;@>)97$T{B|m zW;2YHf?_ZC!mQ;4KfaWgAMNk!Gs{3W*Ke&Y{hQ#HuoKXZ#od%mJ5BH|jK#-0Hh(Bj z*2=lFD5T%tV9r{JpAsMH4U8cb*XmyL=Q-II>D`I;1IJ0C@al5mOS?bEd#F@;BT^%i z5RId_58;&d|CeWo7ocXxc@CJtt}QDn-;%Ju(Pm0ykJjzKAt3nlG6MXNkNdV2Zf0!; z6XZMS$#!Uc&-3YY=1=C!*Zm18=+Ggh*Z!8V!=+_*CUqO@T|Dar;H!WbNz?dDq^m1- zJLZkHQ1$M`H~nni#)65hTpKq^@f)zqCmfgKb-pkO!i_$jIk~59rdV>mb{ge&*wg?K zXWZP8ea2sFK=3~DUX9+3d1`98x3gFCpN_HW&1lodg}dRQ&Hn5LF6T1=(aT>_&e(+e zT&@Cphhxd_L<|6yPL1NH`UMyiNL}KKqeeQ+>eN#y)Q6qx8aCMAo!0L8rrrul(wVT3FsXN7(pn{G^A}D;RQx9!7y4pqq z^za(S=3}55&3!+++pJJmp;mGb09*Si{ z4dcuH@f@w$|550v9A%93x-fR<*5#&IC31}t>^}s#G!{XFF-(sQ)qHHLJRZy-xSxzF zV2PCv#(MFZ3?_OLK*Y3ufE8po=5shQjG2XCifdCJ(vDL*uvGUr4{MX^XylkI-Y57% zwmuP#8Elm)Ze>F!!o!!$c^$Q)2Ryp}GQ8Xl-SKL8JlLJp$DI?2!PiD`l#!nP5r z8~O9dmHVZ-+#bD0d=K2AIe)&V40z0zcNoIWOkvg<7HEnTEvN?=+m@F?f4S|#6X)8x zVt;j0d9oRttj7pL7BxVq{V8iV#4I49uKFT0cwES-$F6L!dF%1f3d{wgTV=2_t^02_ z#pU?7^2|wXW$B#Cr@aXyxwOiJH%>=T+(%JQLy?g4_l{==q5wB|^-X}Yq-n?cA+A*H z`L>Ba@I+$??RU*hDagx9;}K`|CR`O%#lBccL(;$jXkG~BrnD#KN$T9EE|WiU3pCVz z!konziRA=IjxB=gAUvdTDz7Ggr?C}#23=T6v{~#9oDP^Ty{_1VTk0EAv>ZJ%)XF3B1x9)0A4u3;E zB*>(}YmPM#er_GNylXcg0^$|<|6PX=Vg9SwGYcV53VVe)^BFV9cOA8kCd&yiE%*6-D1K~`x1f3u18+zB_Mi5a}O$zD<= z#r)s{N$6XYnHV77kz6&PGb!033ea?n+$CQ7M!~5FLTgVLE8?G6>=%r~xbb z?2qW}a0uh^>||`rH?%IOv9&<0l1C;ky8^jUpq!$`PY-GR~;=?flhUP2zrmMZP3I? znri+jlB)E9?D?dUJ+lC6v)sZ47h$7pa1j$Kornc=+rhb^+9O zEYRBE1Na>SEE-B+mRi}#90%f553fYFKk(fVTg^g<`VXWco6HaPMJgtd0SjDvcgi+y zB(@Cpk95WZfPxhg2ebvatm(DqQg(6ea!nSuhO4OIp*0L&Ag8TqBmC7S2n?`|!5I5h(;%S3a(JinS;Oyl$r8*ALTTquZK3JR7z3a3r2!HtayFgle=Tn=t zv)<^2gj1oo;3pm7)4^c&o`tIV(%xQIpy=t_m>OK{g?RbEOXN`7)xxGEhD6NtN@uLi zMND)5-6lDZhqO_BSOfsNlIZRB=Se;Da-qSEXjt8VEEQcG6otTQGV!%>t`Gy0v0}~ zyao1lT#AuF96k}d3T^EwJRKf7?Jsd5c4l1=3n?$*&4vDQ;V+aFq?5|!I8{c`x&}0>n2i|_hi3%` z739c6u@Xs?_KY~oXs|4j^XhA1;_}#l)x_QaOhNAd9tXr5`U zb-ZI!gil<)118?%Zw0&AvOY~6?o&PI%+Vtm(rDe6@Xok_@~ul%5kgl=vynsJ`!Dsy zAG}M?3Vm!8%^G&(I(hc8rMTkThQc#gc1uMr^vm2BJ8z2c850`))KTWl{ju-AXBb%7 z=SPW$u)^*Oj$Kgltcss)CC+HF`EdL}d&~gpoev>B5~NxfY*_HYlK1c#`||l9qg}E@#Avcu#rqBf(J?}e0ah;B{>y( z={2h;C~G4|#eQ*>jz|mXxuHhdlsrW<3;7}zjfy|`FEVvx=4j!nmbZr(AeQlXNN z+cw^dX}*i(@M<^fi@b9BPwOhW_|oAwaD(zv zwD(@b4LJ&y-d(av@ey49++bXKiGs-4_;w?MaE zP}^nrncTDd<<_ybX4(ozXug4np%C_U+HG;u=;c$fdl1|>FQRV#_`B7s*dN=pu~ko{ zRJqZ#(yojFr?j$bzny!fl8dwIP@O6_CqmF^dkFs`k5U#pfkd!~f6J510le}2k=xch zdpnaT&0qWQlJsDwo<{lw$TlF98=0slxiXn@0rff+SM03%1(SX-dB_(Ywl{j&SZ7*E z24@LwKR(hgcdz1FabH1%&vTkFl)rELfbwXP^Z#)6Syc+lctqb(d_A^EcVRW^^CqY6 zcG6@iPuWqNQY-^}!Tjj=1xh#OTr2@U0Z-0ee#g?SA*wTvEC!>ArCdexSYTuuI5s?Q zt$Eq`#&VWoAC5!`t5Q0iTkZv$a+>9Q!x_~syH(AY1D>E5c2$>=#W9mBgWYlS$?6+W z_A?);Lxj*KM}@9cAG9cGEFhbgAj8UU)}|H7?98PA1BK8n3IqO zpLb~}#Xh&}m-?m1Z#mJ(@?5du`s`+ZI*v8KsJ*(&AV1xZncBLR-YQ_<&qQlK&DK)9 zjykM)qQ^yIwk-1m%cFuUQ=^UBO1|%+%1{TnK%_6z_PV+!bbT|0`X}7SfZt1$Uc44- z&}Z7!T>$?%;(WmV1?|s#D5ln+e48ZSz2?&HCC~pVFMBUdRcK{}Ug#>n`ho zYk`2h)af%DOut7swEZAXM=z&Qg0a@`8?^XAOj3?R**1gF_d_+Gc2jvm-GO$;4L3+FEDly=qahr>(YW0tBJn2 zK^r+kqA$PeDUbP#Eme|zKz@(yEcJuG|H*_Fu|R?> zOz;*X0Rdq=3p60w0Un7z?ks21XY>HnBCkSrC?)?=@<4Z%{;uf=%I^Q~KEyE&Xal>T z(**L1Qj_~q5%T9P5UAYlwyU3&;z?K>#%n7phh?4AAuoJOQ(Zit^tSKq=L+D}_IJ^a z&&~fd46~%8Ua9lk$O*59W=?r>;Uu5NoatUak|e`+BOJEG@>iZ=Yfhu^)+!VJAG!2< zHFKA9J2;mt7sq!@6l7c5?5@}E^%tj5IeED$!r5tDuOR!*>2Y?`TsjpsxU~$+g-z~( z0cFK8I2KWr%`(B?k^6)3?uw+s-yEq|JLHacm#3}dVxsNL=86;*xUJHl zJTbaT?Ao7GFqM&_!d_jHQ_3;2MS=05_1DBm!w0aZhORbDG*}XeiprzI9`;m(Lve(w zohXULu)qwkE`KayKf|PyhpYC3Ad^we%~NZv+9!Ej%C2obs8r#B z`fO;d|-Ns zT#T(BGseq+fcDr?M4zfqjzYU*m&fkCpzD-Vr>xjf9&(y(MRov8)DnlMcpgtA28um0 zJ8!MuFQtn|!oK%!?36(iaQ97NL&LC)(S7hs8taEfHSE%+kVg%@vK3FlxhHVRy9It& zZHu7m_#6_}`Aisj{N8q98w58+7PcwxU*S~7 zOP{j*Zwh#z$?cNUm2L~|b|@f9)vJ)*KlG@x_FQLsA_K5*vW-^Bvi%xY<6%?QqleMk zRrjx*bD9`^TWgd-QffPUae1i&IMO?puMaEzF0u=$55@QBUmQz(v5n82+x*HN=5ydy z6$joqC9d0RL}{u3hOg-P=3LD#8lM}b&}rPb@4>w$%l2lqWVmWsy|2vdEyH+qB{j=%pKI?^mV7`? z3O0}>oGaHy8fS@ecp1iw=FG~9bTjsPP3@Q<6^XN&FT|)LdFID4Sxv)eD)4cmkvNVw zo%t?7XQ{R#W9{vcl8vX6`tJ5O7hA#f@;8#&?(j=|mfm$Hs1BHW5gR7EFLgTL#AfUe zG49eg&H4G(xk)_G5xOpakxGv84IgIgn`3^?0sr-_wNm*H1&v{M04t#Rn&jTr_e)3r zo$40Qh|dxagmC^i7% z$9DY&v7+-)hOxZ$--ZmY}I+x7OR zeG4K~ypnL%`?YIneqa1$y2Kesy?#xw$oU>Bp)hXuX`{yE@nmZP0_&60nv~Fz;-#n- z!QO)Wkd(70?HiP;v9R_1?1kNe|$_* zzvYY+GG5l@U2gdWIHk5ks{eXG^hJL>y5A_i|76BWS+-{N=Sz_ryB-zCsv;39|FZLj zKm0wUVPs@s9R>|D8d*sfbrJp!mCJ_F#d-Bec2>O@r+UifOF zj$|$N_qH@tCB__A_}Fs}+bLNTM}E_ZnRpl}S?0*U8?{OZLZ!&!Qy%(y6W8kFTT(9p z&iPy$rxSy;Mt(iiwfM(G6kQEU9|Fa`&*5zPhimGcC&Tt`!Pc<+Wr3tX$a#a(P8?=c zt9f%S6c-%u3it~g%=SjT@_*6xmSJr+UAr)}r4%cr6eva8BE_K;w;E7fi@QT`myonb zaVW)|mf}|2NpUB5Ah-kzA-D&2xbNqEkNxgr@9*EouP`&$nz^o#wdS02ttrhER6&_K z_HN2JAge@;=QR|V&EkBt{Pdhl^8sR2ymLpkjPGq*l-wxh>=6Skz3B1DRZB5ZmkH@# z*23S8UIo3WK6a|AHh`M$F4uDb#L;MK;e_mL9-RAo!w>o2(d}!6xfT*g>P)yrMeT99onHI4Zocer zU&V2CNBbWL@gTn6a(Ff^LhRh#>xCWn$C1fHSj)CWG+Fl&KG*YTjN7mN!4(zu)`6|! zR`Q=hYdO;)PN)G~9H(Fd|K6)$@7fkBTF0dQp)2#TQja;R+MR5@$-VV^G(ZEM1>G_d#I{Xq9YA}e_2c~scuSR_N-4?g zh5dPM?Ukqh9`Q4{#z^Z5*hxF~z!13wA5P~$AW1I2kIz1@QxURYHgh;55c!_`>l9$U z;#A+vJO%k&ZjMCrM}GZjyvb3+L_2=OYKh9-oPIUy`k39=+XvSh(F`m(7W~R1Q8_Xy z3pg46QJ++3DA3_*Heef91EM5TDQ(HL*q`_|L7r1#kL2lIHx#U8U9Id!4|LPtc-#)j zeBo&O%Y?=JVh8cZ&m@{!C2Pgs9EdKUmG_BIzor%j5kY5!fAyCT<|v}}sy9;FS$2Xw zK6V{f>XJAbk{)(OBNs<_iW{hL?5f1?1UCi@jfE#_CBMXfY^~AFNeylDxpc?H`AhsC zkgR!2(gM38Em6NM`QJ^jL_#yJe@cAm7D3cBs;qBT#y^&I7E^_8R|kes9ngSYv$X+` zpZwm_E&jazTn=U$qjMLQv3%m)e|b6e>d?=Sotf5)ioq?d{vLDs2lukXx@s@EL++l$ zAS6_Mz-5_#l;>olT~6@`BPPz68Rr)MZzY`2zxD++WK}eYl@#oK*a|M(sYPHa`*;nB zU?$)X&L)%kFXeUdC%Bes>sY)(UU-*V(yBpTR%v|xF}Z(886x@*=fEQ|s&d3d5*)}$ z?r_K1TqGJ8D}ds>qJEgJQ9@Gx8=>|4w|wpPwhGruVa=I4f0&PhMnB(~O_vY7azw90 z(+9g9+doyX#muBMiOTL{jh6Nq1lqQgj;ggmX3g8OTIW~#ms5Ekj&9^ou*1d&*Yo+BW8kM#iH#%5d~|t3rl(XzLg%SoE%-pV->DPD zCEyfr?9?UWFi`jxl;Aa&0UTsvd5UDp+nS=&Iw&pcD~{ETrc3imc{5Nc8M0~Z5R5Ds zdYoKn!5vWqtPAKS$y!e`wDTcV$x^}J{NG>30g>!qU3AkxVPp}UmeFejRxolr>`jHK z923$EkZw~?f#qUavNJY@&i3Wo45H6qSSwIngtIJd2VUiJ%0Pq6(o*R;*0ls~=@n>z z<6n;GoxnULpC;v}Lv33(<`!1sF*TWWY#=kDK6DLA_(0A)aiSzFwRkZHmFaQbt)68q zdfO{~qDAhCC(GOL^((}0vqSEI&C6gt`o_c#g1_MY&*B9(+(bf)T$6TRubGq3i5O54 zD04`{qtfj6OqSjk%`C_M{1qd81raL-hm0HePQvmGS1DcOgbyPrvTqxVX5i-LEQR_t zs}Gop$UD~@*wn0IT+`yS#CCfIerDDlBlh9<5)4WTb=|=ZpcS(Pvo!QfpT5041JVb% zDLjid?!R`y?)xM1kUaSoKVc~L0Yq4wGtX<_-5s9mnh#L?0+y(B0 zqvuT*jg&3A4pP(Wb;r;4AFi1V-kk?7ouA6X%V zo_EE3>SrnS-MA_&e18bFFS1O|mzR!s0XqA#?DQ8EO|u*a0RWz!^_=<9Hf!fdYoS~^ zbzVPbrKW~r+l63J6|c%%Z@DZ-I}xFmjpT(~iwLXE9M!^`XlXgI6vj>BR&(~Q! z4=CgO!5Z7PhvclY&k^Es=L@La&!?_OKwfUI`SQmxejo<7Gh!8u$e?F{_m&M*huIfx zUo0Mjt?g=B2>-Gnrui-su#qP3L0s9evp!1BLH`27pbajv^q(c+O;ZtyONI&N(x$~| zC6Ot$laWOq*VTOJCy~m*7qY}yV8)}9y7B>>tiU5P)5cZpfSYL}71(ju!=Bvv7)~ez zBAqCfN$R+;GJ&a?9LGXQm2~REan<6;&XI;QilIu>PAk}h6&s`}Ik*_+)-KHoEoXa2MD$)(0Ie_PB z2;YjZVmtWvdHgibMgzJUj;YmaLJ)P&dBOY~o)7jpqQ%?O6YU{_e;7MUp9BBr0XPo> zKni>8p^@1~P1K&XiyrZnPkJekb-Q2Ri^M89=EmOCskK*Uhe@5myvr6&!EzUz1D}f% zk#hbZC+<%hLzk*C?@O^WI}IEVWxpY5v2rJcOrtyf5Lz zu+7&Sq6oT~OT)`%G6I*>_~=K0G>T#4yABCKhl3T1H+K^~pAL8(wNoBK?)%XluIHV( zkY8&`zRS=FnFI^w4D;HA3_Ou4umzVMYoi!1?*`-zq=Fg2m_Aq9@olvFaCapHx{8s& zXDCWXq5s(^Bj!M_`4Wi0lmn2lJWSQOMu#mqD6G*2N0{Hpr$lML_8BHmusnZg_Su1v z5l8-4rvZc39IDzcHv&xSLqmJ3GMK{EubZw6BipI#A6h*;nOp55bT>Ics;k#}NGRO2 zo38lvaK)r!TClBE1Be{1H7RXweo^i|vT4&jJiyxB zU`Y8nKGfw4`ubcE=mD}+@%<6@HPepdf@$X zzWQ!wN)D|m;lBEJYl{B38X1f@D`d#?OShPIIZT5mF=VcU zN)E@a%)9Tk=Uu!W5A$*B>k28-W|=D}k%O3@1g4(C2Fh-(1tlX3os3R4r`C3nBstlN&IsWy?z!x_}LJz!7L2khy<1r>X1m9by!b^|2 z_^7$HWU-poD4&$#3k-^#+1lXJCiIDedbp5~mWl4W5z*og37N2@lMra zOVC(~a{E?M>nmv9sJEVKF|WAkN48csyN(?bT#E_Yz{ZdUx+36JUi+dVH@)uTD)k^Y z-ObgKq*0M%t5H^6b96fu(ckj`9erGB27^9i57%*9GS&XpK?B{#dc8|#se2_FRv7bo zZwtAt?L>ml$|{3xPv{kW3WVTIOnKhDPZmDo04s3f3Cv1y6G7TEJxri{TA-fxhytDg0fX87XApVePFq*rg28cKbQH! zg#?-JZK^VuuVA)tlWurmFZ^yFGPB( zoV+M~y7G^2nkadsiVI0@Yth8kg5xN!b3^*sT| zfJTsKC+ytaXZ|YN@zmG4q(TBYVLzhe-hNq|c!O|Kslrd1!!+Gtjj`9rtvVIC2x2u8 zNV<1=qt{uv*LBDFak^=VCG3j}nmlPHJo3f3mjb%1$vE63ZNLk#X6c_RC*?>e!?RO( zuGK(U__JB!NBrNF{Q|A2xuEX!%Iy=|h#&!lm=0vE3MVkj@Ji?fxP=n;hjQN`5zYhQ z0UeIL%FEq=&*JD_)}a2A`Nqemt9fxp?U|V>Nr9w;DwX$-9sifwA^2YKyM7fzsTsdifQb7{Nw`nf-V%hmA8B_M#O-Fk34+X zft5}eTGPOLDUZt3PE*h0lyc0gWLXcEc%J3B@|AhD)(j<=i0^GM8^@UmzjHl*ML(mn zQ3uKwL@;vC(eF(m%H@Xe!3jgL`{`mWn2*(+>;^ed1@(zitMx)9p z^H*6)oTWSe-@LTaFhK_~ipB-30&Zq|1RyyQa~B(`D;i>T3o_F>ZPp6cjn?O;@H4vn zCl@e;=C0Mt?4m6Jba=xC?ipxV3xR=sL+)O!^?Vg!K(z8y1-(b!em%cdveh- zqZ{v{u3=9MVA@O)aVL--pHZ6+6@N|&eOLg0u^$KZ*7hsd5KH4 ztuNMn5-@%Ei`zfw{es0SPcG)%ZFni1uweD^{ccpH_?eo;US(anWy%1@c9@4fNOzdu z*QlILgX%0NnNUZ0oab2h$L|{f11aJbDO*HPruNuXIhJ;{u4wMia=kp?v^Y{8p~ACM z&IRy4E)3nM8D=hT;e~q}XprCM5{fBlk*w38z?0BJd4tjGqm71?>mO>w6xzHrK0`Gj z_8ytqec$gmy_>@5u~ie4id@V=1aFGd!Nz%iq>8`vzd&l+MT69xaB;pQxJA}*Hb&bu zK}vTeGfE&Q6Tk}QDcNpw%CU$0_2LkFJ}7cfsW_9V>*iVaYTn*Z-_>!}rqF#HVV7?e zCm-q>(oPN{GyK`W4yKC^gNNIrWqCs|;|(~>J}iy)87ABJOVzg9KcH}Bos5!R#3C2l ztYsk=fz+-tO;N^fQt9yFcCTz~4|(~|He8&w6=HL) z0hJp}bLG>fo5>wHrQ@zVx4mXUN(o6B+u|s-gNf-^mENCcwXe`9_NHqU!{- zw_VXyVIJz+p9xQ+2;#&AovX@pc8PNT3gr(+&llI9eFf6dA>Fx*o?^;f2PYua$Ka^| zWLD<^gQf^rdJYfgw{v2}$$15qY?wLm#MoXG9}1{vTGl^Sm#9ncl z;!kb*NW>@V*k}-c-uCf`Z~ieqYj*^BeZ8rJMP{)BM}jZUDnH%1B`cpG76;++eh)i1K&G@9S*py9*N8}WaXtpX?`Ei z%Sl5#o%eTYyC$gp_TM^Z*!&A+l<-o-nRWgbno*Uk(s9;|Rx#VQ8nep2htrIMB?11H z$}ee%(6s?p7VO%OOa3N1gu|N~f(O7+PiNbJ1_t6yt_jhpQkBfCsK-RJX6J8%ryIPv zU=Yo5$Lfh7V+)?1Se_lT5UKl3_&DBbSgSOl|1HPegoKBSfVZjc4<>7gIrbaHWRCpx95$ww+C;kALr2mg$tFIH{4tnzOx)=~2cOK_k!7Ws;(dBh9M_1~sZ3i!Cf#WaHR zRQT(EDbIwtFNl<=`W?^dU_Zt?auPov{S=9*ab+&%d+n8b<5(#6gId~phVxw(o|0tM z_H?OSZ2LQ#YftC|lc3w49_8mYpTW7KVreTqH8menA%eJBCFXKNslqRQZRzOOE_co za?n(E=PKvz4v*7%PKng=s?V?0?B5?4v)A|cM!hBal0yFfM0ig}xBHaVgX0mRay%ti zXq@`y)GYe?i&>_gwwaN>SDBq2x*$K#MfrI68K!>Sv-be@Y^L;~8jAa9Jui`5D*AnC z5BbXJ9H7%q|8$GpBWFw4$5T$z-gb0BG`1-n{jq>3w(&XjGw`U{nk?BJ{u$fG%SUNF z+6Sx@@=`??L6S>!Os&`nhc(>%jeGtN{MX!t!2!3ssH%FnvVaWBdr%qDNP90q{gKee zngpeq2&ok(-L2xAblhV#e{=cM=fJ;i8)iR=N{LMx0gRHAyd8_cI4+Qfs5@-MgA=cjqqOsDox2d%NUz zlpDPS!y4$uFg0>nW!W>iVhL~~p)FACXJw!1Xax||G4#rQnxu-7x=8ZMn=w%;9JcK! z$=u{%hS2%G3;APwN)xLk4=O%p1+!{?Nnt|6^1Oi>+lQs>D2`u{HLM?qQ|x$HO~RuK z%UlCNTB6lk44CNjO;hf&l5?2ie*4(xKSAxSgRmEwMnbkp{e2S)%HHr3`y3qZFsDzxl##-5Fcp~cyGaPg&?c6R=kB)4E#8_t6Qee z8uTg3ME;?{i%I?x*{PejS99z8Bm?L2rPQ91H=k!;U3|y=bI@;II>a-8*0u9b_-R~Q z^C+f5@_@oh8z>$dIV5Gq1E zUyOG>svFrL{*s_g4vrjth3% z&~A+7*DsY|P25|aeLBVeq$s#zbt1(jV73~SJ~(24Ex>%MC4mGI`~kD?u5dF!Av8`u z;+L8}BZw!Tkg}y3HRx6Prf8yuB!&)H-wPe3L%!2)pa04<_l{>~uI});Oo(|moO9s6 zGP8epw?a@k-0MU~k@WA{&wGnpcro7}x++riv8L!XI`W(??W43RPhr7kh#37hY!e1Q z?rfxekSIQ-g)HrhQpwwd9G-A61g5hgPN6L`gl|hGKVj#xcul}>sKC%oYO3{K-%qUZ zWTS8}|BV`DFho8rzmJw*;7BM*|1c^RPkz{|=U*|ZB-`A8@Bx#eAo(=~ij81cWZ_k{ z>l-L{@$c5wp$PlEYxpUwAwwhDd>2FFwfy$N=iq%0M;F-ML1^4FFtHcq5e+jw6`I9N zIc`wwFFLd(IreNslSp|#1X+ssZ9?t1p;-x_ef%2Uc-j!RU^sAaxjGy2abC-Mkh&Yb z4Xi6%&<)I=T5(g_hgh8fgklNEuu(6_59bezr+(3}OPU8-LY@lIJyYz`Uupc%Vq%2& zEt_})9Zl0uJk>slW9T;?Gv}$nI3)M0u!RWpVvbaAe%7{*M%bU+HoWGx;n$did;99? zTuoc1m~jy!wrg|!rj$D5rUy$CM5N0J2 z=iVnN1;gfVrYN!B6+9B8)&wK7*}|F}O=wT|YP2A>VMp*xBIwehfVUg8|5BeaA(Pdz z*825G>-H*Q+oP7QXT14gGdJYG$1Sl!OZ6vOa960t&(1*-M#Ykk7Mz6qd;0I%<;1^B z+8Z{LcB%8@6qaMCbjUa1llp_JtLn_1ZhDU?&p&_H)a&JfZVr_QMqFgdEghle$u3V? z9hdvyxus94f`pOGO$E}^uw}S*RcF}a@2Z@EDpZugl}tkN*WT_)fq6q3nqCY6d-;LuLRaDd)^f&X?E2;K^Ag!XAXLc85CgPACcsT zxJ|xp0|(dKzCgu(Et~?mx%m*^@k}%?$_$S1kJx;Q{5>Sj>X+;<9PW44QDX}FLwfdK%e3LEeBpVf5qA+ z=#$)*TEXElFMR>&d~#f#j@v>V&0c#PSyE1nQ|(^2%cHc<-G3-h-fI7GoO$=}sT_i& z6Ry2;OEhqPh?RC}VBxFiU^M;4xJ1rJf0`#vy+Zw}K6j$C8L;P-c^-I$)9msHpzw0s z-0rYF@7zoYD*ohfAaRFU>C8o8|60$Blq~i81CvR`(%!~zW^D? zqMhiCx8D73%>VkydKrBW>uQN@pVmfGjklsmw2=~ zUVO3Vbq8lSQRoq%_;5bYTXDYS&pM(E5x>Saluaz<7+zkD1uQ25JLh%J#Bgz}`)NXJ zSl63MtJ5_OBPokXov!pAvYI?xx~=by(~BuW_Pu$ycwTVxpKrHP5Y$7RD?LMKj8c#B z=$QmpQpiJ3f~yRiFZ>8pCtUuIk77piA5>Tu6>>X?3(B7=Hy8upUR2L&0u)2|Z3s=d zTI#cx6GfM^xz5D)r%7?FiOf(gI^ucCM$=LA|2#CxpQ?;~h-1-!0lJMA7x$0%CMLN3 zOjvY^h;V-pWN_Q=4PrBgfNlS}@<8k3)%HaK9AWE60P?@LotKT}f{@($CrNEeXq;l* zpT1~6{D17|{otQSp?67u%iS&&`ya0=xv#Y!YoHcwZh(*YMV=fsZ)fR|8Dp==L(KRh{K3!5Rq0NrR^%|NomQ<=D?p+izM&Ye6Q&c~4LIYhFL)Hs!b-ug2?EkTYP z3}+tumG%UYf}Ljv&xB|sK#eR%R_pO$7wA#pnU~$OE~s4%&ucrZ*A_QcmY`W8nA%L2 z`z&5eS>~$JR4w`%_8kyG$|~asE#@!|eRU?67Hzzq?V$vI1UKzliJcFFNrkh8B9KlW zOPKjWR_d_K37kpn#2`Gr2=PLLK0vr75qqoO0_HfS${5ot>yyB{W)a3ylQ*K8b$Sfd ztt(IZ54uv%q|-hpOZP7#&OVL3JBG$2TR+9w6K9;FCygk}f$usMH>osS)gSFP zUgkci?ZVVUI|g4XfggxtQG)OIo$#FV5v&Jm14|0wlg7-XfoQ*bln{H|8vwC36sbqU zDs9F|fl!DgztWofoKWbXq3~Jmm=w&qJABPt^F8Jl&jnhK;eZrgI>W1-=s&utavvxD zK6V8-yOC^|p^XF0Tw(jN&X8sWVtQmtixnvow2>R$>Z_)Y>f+@1O6lKwqiLRWRG|$1 zoG~R8akJYwgkVsj*A=nf)}x_0jySXKg(xEK;=CnboN876@vl6xQNhl>$-`}C89G*2 zU&#JRk;~7amkOT7_O41;{^jlBAV0|Cw{Q)^4&77ugIipO<`E!fUDLmg46@^MX}n*} zfwR>7u0-P5nIjh1{T-kKFyVL1061}A$LaXLi_U-hZa)I70+Tr*dE#-b^pd-Lht}{L3lq3($zue3H zA(!;0HTsZ%RloM0?yKoWUgCNE?8tpCN)l?+p;*!7BO_uarj%a>WcDsf~2+-Ip(Y!1!Y zSGR0T>S?a1$^PXY*vAZ-MiYjuFmGe+;75z9pdSkc{Cek?_^HvP1eW0ULL?PH6@VIb z;;Ti2k=wKTk9Mv3vxS5U2vkzsqSy0gBJy9K+eZQIo8t*#g$8F;I@bw;5*CA1G%V!@ z8cZz7SAgi$J2=XBI^pAglhKtH?lJ=djAhxw(I3iQO|LhBw})uQ@C zHr`U?+mfimV#p#4$cO&5H(+&Pv*-aZ9yi5Q>Xz8fU%Z&pIb7 zbjVtfb5J^>fz7^oMyQ*yV)fDMMGeA9z_vwIu%*WY;~2NeW*#A_kcSR<@@HPa+inQ^ zf^s_T{h+sm*)Y>o)zo#4Y5)*|=kds%p>TS1YeuX^Yj3Fs^hMU^e(Jw5IUBS?oa847ncL?t+x7~iV`8Gf!neo8lvw=%Ay^YtH_MAtitNOM^F1 zr+7H&qM2d@mXZFQ5UX}y<_CIb ze}&FV${gVr2wyD6YFJI%A0#XA@@zXu))NU6L`g`F?NXg>J~U7BX;3JH1`zh<*{lwGd`pJrk(= z`^qpnhRMG|J-JHb<|_0&2p0!>YiI+Xol3f-l=eR5_pkephEF(iRIo^7rYm4hRCGHM z#FCu#?^e`uHt)2~m{35AF9@DT$O=NTCcATb-4QATCr!^&S_ink4Zz^SY>&+gUm1s| zFV(G-6)8HT=@rQrfzQNTyiRxugMm-{N5Qa*@8A)~p>GY9I}tMA*Erd49s!J5$zn>F z>ar3#9bn(ioSynW>mlze8yg;b+x#GF+cx}T|Qc-C(6M0vw!N>~=st%*O&c3%$_AV2o&e?{b^>@seshmm!oy+d!Q6ubF&hNb%b^v#lC zRd3z+CF-mvLPYs2%Xi)O_p}qy1|L8zh9_dG#&5e%efteH;(+RNXpXjyvQvZNs{~)O zi_$$t&aTC%6YelJ@kTt>Uh(@Pq6^f z2B!pLo4f$kpUqij^u~NYWqF9-(MS1()alG69Gi*>)8U7)0G3Syo#GQl8wlVVMV+2* zr-ZQJMOF3$doDia>ztwyoeNdOWkmALL5{p)F7cW5{**TSO(GwIb8>UPN-zRvZ|Yr% zl4@a$=Z9k1XAuMJP0=c@tZ&xafB0l7oUh`>I9z|xg1uqDx?hlInNV74h%5xCd=Ym# z5D?1T97T;=k=et(3snKVuogvjT%!L~ZJ(PKKtdX1KMaUi$B@OK{f6?Xa{sXtfSkJr zVkc%*CBf3k=s!5(OUr+Z@|D6+GQ&p8fCbdhe$KTK9rSl_Z_i?l_qndp*K@z;7bGNY z#x`jfwY0+n8bpW*&vmvHV{F?Q?KdeLRc7qM%6>dLRYNH;ZteI-OD>1$3?Vk=ZfYKcb{t+nYJwM~-KJv97+NX5 z3O?aRJ+i@N?9_WXd2YkX$)Jw;#i=l$*%D2M4s1*`_7Gv>e4r59eJob3N-5=X4=?m$XM*#(-yQwk@iv&G2P zmDl}{$9H3E$?fJ3O~p8;6=!Zjfa1j!=}iE>dbuM-S2@&o$U6HO9;ENtNfj#+iU2YSY9hX*mN4WthVflkU{8_ zhULz)@NamouALAL$a+1Kze_850?l^YKkrTj+zb|5Bg zVE+Ztu}F?Cu>vF-?ey~JsFuq0lnf1f$*Va@xfryWeOb}|*B7gvJtv;y#;VbtFR99% zOXBn)8fjx^Z0u&_jdMc8Q4Hif?UVMBOUc^8TTkyVIbfM@>>nlhUv4e7be53u#h?pa z7K}`B-WojuybFGk;{VH@GM{r-!l|4Whmq&Mm(Bm1gWLbVnZLW?*Z}@l;LoaL*tK{m zA)xtx1lamNO_qN%C8nlWXMF1P$agMwH`tAB_-od-!3}n_O&Qw+=uPDE! zB8jRP?^wNK|L&58$FBDmM<9S|Q}zBghqwFUjFj4zCc=#OK5GzaboBfUQX=UcvCIB= zckmkvqdETIf)V3g990GU2Tu3i)kR|4cptkt{x^=>|LrX(uqBkFHQ#Z`Da-IUm^#{8 zS-QD%dpp>-Bq%us@;(Yam5}bNy<;DUoAaIBM8|8C{x4pf&Yi$Nh5aZZ+i}&J*npt+ z`!|t`msa8dsBu|ChXtSfk1t=|)%!c`oFWwbJ*3y$zi;rbH(bIVz#`q3@DLg}OnGUkz$FbO<7o>uyYtGR^y*ij1cZ&P% zQzT`+`75ne8XUgo)ga}HA)cyD=uM&T*zwZUVKo5^+uC0LB=IBoFxIP1d$G$@{M|pN zZaY_ivTHjy0ZNgW!Xcq)p!8nbJ|DPa>leG@GqfFk@D12q(1V~isG4k}fcfssA9EbI z?jVKwKIYo{)9aOr8}N|{h&lVgjn`g#24prmJ6u@DB3oDcznPpcW~DET;PD+{UHVgT z0@Rmsjx{bBa4*`Z2niVbUN;t5{M37!Z~ds zPd?+xhpamc7G+uUL~X%aRCj(o4HV8^%`jQHLptL3d=SnjM-GdU2p1>4H{voSTQEIx z1RvA|tqB2_7lJJ2d3EhkQc@lBthe1g8)BMMg6(QqEQ9U;-QBkbRpw5P?v{@KbTX<1 z>AI?w$bAORyi>Ye_Wc)g_-Vx4mZYt9V>;`Y=Qj;U?V1=?b8;MM%^x^KI2!88Djy{} zI~CJI$EAEhM=?H8pg7+jx=Ag#s`m&ue|$-{{p>!Qc+aG~o@%Am&Ubu;e+sPVPa%@akIOq7wx*Ov4q5YQAKM0``b0KQnXT}nO7f@9GW5}o z8i-LOwO;gm@1cKU38YL;_4j`q?|;snYN&W;=>quE42?_S#SaDF>{vYOi6|Zzn4O*N zcE~3S5=tr^wQ-jND?O-<+n^k9mQfKo$rW>R`LkI$X=9jbz2R8WKNbSDk~>H`te{D> ziVB~E7s)U<%A-R`g=lolRX*$ZI*oJ`56rss^EmbNwTfx)yLY4#^FRWn#-v*PGIoQV zjXXJlp243zH@W0h;WBg2hndQ3bW4!jp^ySDpR1Kz z#q&SsZtqSx;r`%77Ua^NEa&r;pmjpED*C06diZ@>ic*@P!1_RdL?jU z;d<9X`iIlvqa1vifKIbfjw4kqM@Rpklg*vhKg@~snJ5mHm0U@c0&+>?zBDQDkF@C5 z{|o`E^ZTOg5JWSEQbe9-zgwGL8|#p5W{UAYewm`aYaOs;M&EWnAn-9~*=wir1=8iK zvbl{t=X=9z%Tx>x2*tuhT^2y~*ZYreJio$T8sPZ;j?^2GJRjS{;gtF{utr5bg2&C$ z@5w_8%ak_0CLcIhgHhf@x=V?j2GAa2op1S+UsaQ z>AmcY5tsRNOog@ah}UD=k2eNCkCiy6704S@e>M_Kn%Q0BK;D{%fa;g(S_$rGIu2UL zX>(IDdd~Bn%=M<;v#>TONb$NmM!xHI*e1o3Go3bP{LzHqFRN4Fqq2ywRB7=#;zIpR zNA&ws{Si%C3Q+>YN7HYcYwM6ZKS?zO(v+GC=T79-dA95s#5FR{l$ks4_E`5rbc<-H z&iw-*f0kdwe0aK?Uw6chdg@?%;mlVwBRBlpPuXue!#=Cphowp*MQ>y+J`3cJLfiZv zoNHPOJFrLYw$}od#+p12=Y^ejg(|r}tbJ49T+TQpyPmV-S`qISn5?&@LQ!HA6Z!Vk zI_lJN7CUb|zLh$H-)t_uC1p_3`Q#pNZGx^cFyoYvA?oTzYH#Xl!!PJK2We9Ns^Z;=T`0#D+~u2#5cG*7=0%ug)kFf?LFqQK)z2U#u@ue7$SqGF;rn0d+f`<;GOd=*8YwT~#2b zv00!LZL)QblXm>FZcoLmVI6lS9fVEooArE|YfnvI)oLBR{JuTT#lIPCs^6?zl*{?4 zC%UjXWc_>gBlI3DrK#RilAz*jVrciv$!C)u_|-9s4>ylk3}IaLLdX2adpl>SFY4k* zu_2J5sKX`ppV#6v?D;7BlSaDRy7A+eXA0(bJdk5hc#jo6E%ytpK-n;zN@nlc*4M~# zG`&860qeB)fJ)uMuu0==wTY$mpgT`%f>{=JIYT#~X?AEP*QEBiZlEH9aQC9qMI zl5iyLvcGNr8};1TdPMuNXmOQ7?bz1QTo_cHX!h;GJk zQx42pc-OQ02eoGY*ImK80#AiP$oq(k#_>-p8}IQKD2olGv}MoOQElpS_0WktK8F=5 zYxk$LjnH|8zaYPgG`T-%ODw{lTptH2Ho1R6Jwo2y4+4{$J?1y~UBw9Wd>qmrlT6=7 zi>y~-=oabkeE(3SN7Qj8=-Q|%m+v*vaccN)G6Ld;pc6ew+tu-vz^!PRIIVY-p+0$% zt(y6l@#_&1+qKZCv!D&e2}`KMLmbqVYvS;zbV)S5*%^sm;jAyyoExL>W0LoFzi*viTXE42%w zfs6}L@S#NZJ>fL#kF3S6yIMuIP8++?g|QgVfy8?%z6tC@2*K~MgZg&gXLHIlmPmN2 zXWayQKg@6}K2O-58lxMd5y>!WqsYr5i*L{>Vu{EX-i`c*_pAye!`me~T|RN1Gt0iCwDA(Djs;V>y>G1;J(fF1*{3 zA$Yj$%h)S(<-WJxg!ZpoJW-l-4ePgRdlDmWjy#?Btm*=l9IMCWK#2c>Xm$WCa>{wZ5e_8&g?m+FeJ&+Xm*$|Or=SjvDufzp-s_1hV-aFH(WGdlKg1x8W zCF_Un!@^}cI_3P?>Y*a>@2g)OVu;>6!9;#xy#$0=Z8h5*|Adv!%Nyr1gL5#Goh^Bc zMb>N9_u^)a152D-4V0OZ=dSw^?^s|dikfwA%}1aQSn41PKFJ9j#w%>tJoc^bz8Yqa zm?7m^?!A^|>xWNOpQ6g4j_II{LrxbOI>oPLL6-fQPY@TW*4ySY*GARsx}K4Efu-x$ zq6;#a9t^Y8<91pFr4E^fRz98r>hkM+@uqO!A(i0Jgdy|5E-{m5o&>_crpae$+z=H` zpEsMOT2-QGWPXKr9O!V|u$j=|ZY(40ATLPq$KbBUtBI!`_!y%$mVvvTTyPOTrzla( zvdq22M{z&cb}Zfkk?cDeQB~9SxMd{}y3(>6*iCBPh$p$_+cw&B>ONYpu`_-wQT5Rjh=b?%p=}}XTN(x1(<|%7n7cE&p z9m~svQgi0AZ}X`Ensw1#B1W!Uz&aLsY+1#=pTaSvSlLnA7Rq=D?4|Rm7McP*@|DSY zO#(FqcG0;9>B32GU-#sUxv}>J*`cQ1{HhdjO}%=z;oVZJ5j&Dm$St)C-<<)>i4*0S zd+7ye__fqdU8==1q>jGSq&H|V8aFCVR#MKkZ7J8TIW!nIL8e$M8yDJbG~{*BUp4cF zEBJ&@xes?ZXBt6E-At&P8ioUIuK%e2x(b?lGAPed9ee1Z?4blLu`SB8EA1{UyPRZC z0r;pUHD}x4k`m$?9;8$&U44=`hap>=WH-#~@+IF%((4?G;4q*@_sG}Gr7z&aK-!oL zwfys~{fZY#YKJbXzu6;1jLQ84I8xM%vLTkFnk{Y;e~ffMWi^4i-z0oOX>W%hY39Sum^3%G(n!o)8W@VFh9{Q=S z+XmsH8+xVdHI`*?T)hngb@M=$8x)3Zsu2MRE0K*;Wc?2Z)F$pm-ISWp!t0zowbHwUu!41Ag7d;*WL(hZhc3Cf8>i+iEvTZ#*e0a6>i||!X z*>!FyLP^Q!cYh|M8opIv*!C*utKRGQMr$=H@} zOT%`X+~XHR#^pjEB!uNwO?${u~*iiC-hdO9T5%$8w2nQA}gLKHt6W#4XpDg;ea%$K8}Y zP8!E32c63V#kv98%zcVJDdG+JWjyaB9xib~xJski&?vJ!qHY91Z89k@GG8i!AMUKJO7fdnM%(_ZxSo{Z2WPy*nUW3ap353Gq&Ay9e

<&@HmPoV!9}*SWN?w$f+7K%k9p;CWCs;7lQQiP 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�^~clYO5HI8~j# z_jfQS$*_P#R^E;s!_o{IJ0&uIy)GO1>m!?-!-d>1?JaEGcjHncni?ITJ_*MhYm^~$6Sqa%&v;4GNN?4Ep8Uc*jwn9{0W^QXPIUpaXJiX!*`yA@#n_ve)K9;i`)8;e@Iu@i~ zEQ9kSpV~V+*4H24mjhvdkCLA-)`6^|a8Z(=cf!mrN3;bv25%&{HivHBHU!O;vHnFQ zgS@5WTM$i?woWk!2tgJ(TXQ~P{0#(1#f|yu5*`9V+j-K#EDMXYiaN(RwURs=HBz&^>(hBU^=}iL%XZ|o%ibpa*XP&MFQ$rHlf(fl z?cdCfD3m!m`-OF37ptcZ`$|o&lce0w6bU=mHvrv%Q?5W1TD&5g(bkzJhk`vu@IKCs zg@$vui_`Db|GFtic0x~a=NR-Be;(V2P(&jSRS)}jZEn~K{bt+1JG(ao3CKwlpAL_n z(ULkB{r+8r8H9XBnc`7yuOV4BW98Nl?34S-mqBIV23bUEQhKLhvE&?*dwRb(pu6=R z;+Q4o_~W!$;C0{Jh;l?>qb|)3v|Iq&Uf%8$wH#m@0;z_xkgaHBHU7MF;ZuF432oqz4t+Iw(cPb5g-&R05eSP; zVnFkT?v{3^^&MYU+0l(}l(sFcu?%XJz^ng!;o=GAvhY+ffJ%n%R>0wU>Kg)G&+Bes zHEusNaPh`r&KAUQBVu3OFFC)8q4w3Wf7bX-+yC3$*Nty9{r+Y4VZbHuZ-<;%`jk@x zP}NbF8V~m`%5AjA{E{Y(UrpMIbI{ZkN(l(g`XjnnE=eQMUdLl@()IgodDvC|cbX}R zkW3GH^o2iabviIvC;&oo8xM_%^argxnvrf9MiJ;ka zRg}X-QeNDpclVTb%Q5}HF+S|urJxC3+0)8`A^woEF~WF+U-6xP1sDOF#+S*R`EpQj z;sj3a+u%Q@LSS2G8s`}|x4E?E%XtbSq%V;@O^S8g-}{rrKlxu=z8XG_U#?3$>HzLF z8oK%(`L|DE-ETmLr_AiFn`7q^sdCL-olh^U>h929?B400a^Kb1gO4?!>t#oO9&c}a zNT9MVJ9Iy8JfW*fyLL%)j~>hKes;Rw6Xbh1WL7hsPWuc)``HB@=9+vVr`yOyVo|`4 zUe}lkvaPQd$w@c_@0-gaegx`03<_@T3@SA>KYdyXTHI!J$B$)E)<=T(V=i0GH&-G< zJvdz<#nae~ZRNSMWQMhiyZwz3rI2}Aft4K4J0(&4(q*77{OPYV$6n<5w(9uyxXA^m z;EZ20eem=6@5-HM-#M#R>rK(ziR0Cz(3~Df?yUFjCmLdC*!Ea$JW>ZDhoH^DS#uZ?kIZ zK!=i8=udR6!uH<1HnzR7=xY$8u&ntmsO?8x>Fk*=Z0evc6z8k!ak;K`VqC?a5|9f* zPVXmFKP{P_I7aS=+Mm^(;=+7&3o&A+SSkgKWNzVQw`JAxq+9#aHfY%&aonOBNE_zw zYmN)B<;(a|Ya4Q?0r_Hnd6d|=OttDc;}v@Hv(ai7zSfAY@;rW3yMyR)k{pHo_@__=nY;gkAl#K5iwI*~_co$I`4G?aFdSjBC%*nd&LczHLPr*{W0q&AO| z59n?*V{BwRQGIrXH3_t($exSvKIe;s-xpD@sq=M`pT=5gZnt1@$ZQ$2sbp_nh(`@R zAxI?)f?Yb=Q~R(dx|4dY@C`0huzl%^hT};4uF{1C)JUL_4|c1Zk4w2vgMZ5EDwy+# zPca;xzO;cLtQ*T}o&YPu0?N~aR7_;c*j0;j8Do>h@wp9`kEdQPoza5og_wyIgd#5h zJ#wI5@RumNu48^&@XrML35WgZ;{a0oGl4*?(Pf-13hAVhx4Rm-kr$+l&uzR6p;b6K zV-%R|dU=~BOCLIg`Vv$Gk|C^R_&3l{{D9VO80dSaZB1kMEGW?EDkv^j3TD59I4 zY!IHa-M8OycCVw3XB!&7QE4}&w?k{Uv)r+&Q5K|PJ5|1qFYQtwUo9V`6PiFx;H*Qj z8X4uKzwTTx03mUYOXrQTjh7PW=w%La2!g-M?Y&kpWcl1Y{(`lOB=JJFv}5Czfe%aZ zZwUM5@wa0kK!8#`y2Byy9GbBi382d%`unW>?|)Ty zJ|Me0gN{0?EH4Ak42Wi&^TUE@KN*okbTa@}S|IAo#DG9~C?VmlPyr4|QADq&xLa^S zgh@0QhweQh;A52Ji^h3k0n6_h z%Lmcg05=t^y-J^Ihu*Q0!Hu{3w9-)x_}sOn7ALp^lBEf~7}eGM77xz)ITyCa!dp$` zh~InB)YTl&TW5#wi+YX*?%_bE`<&G`L6NvuG^XJOC~0kYWe3ESCc~MGgU{`Nl(IB5 zpA8+gEfNX8QtTGyh4`Suzg%;Qj&xQo8Ej8|OJ(|QeXaX6f8>C82k{X^*6b|zn%@Z= zYC#PscVESW050Ulo}^}1UK{-J5H*+>Q2&=l83%zf)ct$Y^X5wnTZ@OUGD@A`x~T8& z;*Bewrx8qFYqgwn-{GC++^W&S%Lve0>VTk>vWH*AugNWBg7=x?g84^W$2A?)z=(O* z!3Z!Lh+2=g)c)7C%g9IO3EZ)PZf=2i@)fFppZcCk)bpZ!OHHtW( z?Tp;50^}$i_cW~f#+NgseggZK_&b^M)wghngAQ`sSU(WzZ1w9s!+eC{Uc8-yjEWOe z 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

+MAM5IIhurB;nX9s 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 BO;P{= literal 0 HcmV?d00001 From 10e72fa914a1f06f2d82929e53d2af7eebea072c Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 11 Oct 2024 23:55:22 +0200 Subject: [PATCH 043/233] Avoid adding a MWT if the node already is in a MWT. --- udapi/block/ud/cs/addmwt.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 7cbfa4b1..bc688f8c 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -53,6 +53,9 @@ class AddMwt(udapi.block.ud.addmwt.AddMwt): def multiword_analysis(self, node): """Return a dict with MWT info or None if `node` does not represent a multiword token.""" + # Avoid adding a MWT if the current node already is part of an MWT. + if node.multiword_token: + return None analysis = MWTS.get(node.form.lower(), None) if analysis is not None: return analysis From 1819f3862d1295c93c08ff5e8d8326027374df87 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 12 Oct 2024 11:46:48 +0200 Subject: [PATCH 044/233] =?UTF-8?q?Zm=C4=9Bna=20po=C5=BEadavk=C5=AF=20pro?= =?UTF-8?q?=20"jej=C3=AD,=20jej=C3=AD=C5=BE"=20ve=20staro=C4=8Desk=C3=BDch?= =?UTF-8?q?=20datech.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 00be9993..d991a17f 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -363,11 +363,13 @@ def process_node(self, node): # Feminine personal possessive determiner. elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)$', node.form.lower()): # The feminine possessive 'její' slightly inflects, unlike 'jeho' and 'jejich'. - # Congruent gender is annotated only in singular. Masculine and - # neuter are merged even in nominative. Feminine singular does - # not distinguish case in PDT but we need it in Old Czech at - # least for 'jejiej'. - if node.feats['Number'] == 'Sing': + # Congruent gender: + # - in PDT, only in singular; masculine and neuter are merged even in nominative + # - in Old Czech data, gender is disambiguated by context (no merging), even in dual and plural + # Case: + # - in PDT, not distinguished in feminine singular (její bota, její boty, její botě, její botu...) + # - in Old Czech data, distinguished always (and needed at least for 'jejiej') + if node.feats['Number'] == 'Sing' or not self.pdt20: self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]', 'Gender[psor]', 'Gender', 'Number', 'Case']) self.check_allowed_features(node, { 'PronType': ['Prs'], @@ -394,18 +396,21 @@ def process_node(self, node): # Feminine relative possessive determiner. elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)(ž(e|to)?)$', node.form.lower()): # The feminine possessive 'jejíž' slightly inflects, unlike 'jehož' and 'jejichž'. - # Congruent gender is annotated only in singular. Masculine and - # neuter are merged even in nominative. Feminine singular does - # not distinguish case in PDT but we need it in Old Czech at - # least for 'jejiej'. - if node.feats['Number'] == 'Sing': + # Congruent gender: + # - in PDT, only in singular; masculine and neuter are merged even in nominative + # - in Old Czech data, gender is disambiguated by context (no merging), even in dual and plural + # Case: + # - in PDT, not distinguished in feminine singular (jejíž bota, jejíž boty, jejíž botě, jejíž botu...) + # - in Old Czech data, distinguished always (and needed at least for 'jejiejž') + if node.feats['Number'] == 'Sing' or not self.pdt20: self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]', 'Gender[psor]', 'Gender', 'Number', 'Case']) self.check_allowed_features(node, { 'PronType': ['Rel'], 'Poss': ['Yes'], 'Number[psor]': ['Sing'], 'Gender[psor]': ['Fem'], - 'Gender': ['Masc,Neut', 'Fem'], + 'Gender': ['Masc', 'Neut', 'Masc,Neut', 'Fem'], + 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) From dcf10e249e799d19673840b86affe3a57f57c8b2 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 12 Oct 2024 12:21:30 +0200 Subject: [PATCH 045/233] =?UTF-8?q?More=20detailed=20requirements=20for=20?= =?UTF-8?q?"jej=C3=AD",=20"jej=C3=AD=C5=BE".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 83 +++++++++++++++++++----------- 1 file changed, 54 insertions(+), 29 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index d991a17f..9fb086f1 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -369,28 +369,41 @@ def process_node(self, node): # Case: # - in PDT, not distinguished in feminine singular (její bota, její boty, její botě, její botu...) # - in Old Czech data, distinguished always (and needed at least for 'jejiej') - if node.feats['Number'] == 'Sing' or not self.pdt20: - self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]', 'Gender[psor]', 'Gender', 'Number', 'Case']) - self.check_allowed_features(node, { - 'PronType': ['Prs'], - 'Poss': ['Yes'], - 'Person': ['3'], - 'Number[psor]': ['Sing'], - 'Gender[psor]': ['Fem'], - 'Gender': ['Masc', 'Neut', 'Masc,Neut', 'Fem'], - 'Animacy': ['Anim', 'Inan'], - 'Number': ['Sing'], - 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] - }) + if self.pdt20: + if node.feats['Number'] == 'Sing': + self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]', 'Gender[psor]', 'Gender', 'Number', 'Case']) + self.check_allowed_features(node, { + 'PronType': ['Prs'], + 'Poss': ['Yes'], + 'Person': ['3'], + 'Number[psor]': ['Sing'], + 'Gender[psor]': ['Fem'], + 'Gender': ['Masc,Neut', 'Fem'], + 'Number': ['Sing'], + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] + }) + else: + self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]', 'Gender[psor]', 'Number', 'Case']) + self.check_allowed_features(node, { + 'PronType': ['Prs'], + 'Poss': ['Yes'], + 'Person': ['3'], + 'Number[psor]': ['Sing'], + 'Gender[psor]': ['Fem'], + 'Number': ['Dual', 'Plur'], + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] + }) else: - self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]', 'Gender[psor]', 'Number', 'Case']) + self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]', 'Gender[psor]', 'Gender', 'Number', 'Case']) self.check_allowed_features(node, { 'PronType': ['Prs'], 'Poss': ['Yes'], 'Person': ['3'], 'Number[psor]': ['Sing'], 'Gender[psor]': ['Fem'], - 'Number': ['Dual', 'Plur'], + 'Gender': ['Masc', 'Neut', 'Fem'], + 'Animacy': ['Anim', 'Inan'], # only for Gender=Masc + 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) # Feminine relative possessive determiner. @@ -402,26 +415,38 @@ def process_node(self, node): # Case: # - in PDT, not distinguished in feminine singular (jejíž bota, jejíž boty, jejíž botě, jejíž botu...) # - in Old Czech data, distinguished always (and needed at least for 'jejiejž') - if node.feats['Number'] == 'Sing' or not self.pdt20: - self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]', 'Gender[psor]', 'Gender', 'Number', 'Case']) - self.check_allowed_features(node, { - 'PronType': ['Rel'], - 'Poss': ['Yes'], - 'Number[psor]': ['Sing'], - 'Gender[psor]': ['Fem'], - 'Gender': ['Masc', 'Neut', 'Masc,Neut', 'Fem'], - 'Animacy': ['Anim', 'Inan'], - 'Number': ['Sing'], - 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] - }) + if self.pdt20: + if node.feats['Number'] == 'Sing': + self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]', 'Gender[psor]', 'Gender', 'Number', 'Case']) + self.check_allowed_features(node, { + 'PronType': ['Rel'], + 'Poss': ['Yes'], + 'Number[psor]': ['Sing'], + 'Gender[psor]': ['Fem'], + 'Gender': ['Masc,Neut', 'Fem'], + 'Number': ['Sing'], + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] + }) + else: + self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]', 'Gender[psor]', 'Number', 'Case']) + self.check_allowed_features(node, { + 'PronType': ['Rel'], + 'Poss': ['Yes'], + 'Number[psor]': ['Sing'], + 'Gender[psor]': ['Fem'], + 'Number': ['Dual', 'Plur'], + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] + }) else: - self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]', 'Gender[psor]', 'Number', 'Case']) + self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]', 'Gender[psor]', 'Gender', 'Number', 'Case']) self.check_allowed_features(node, { 'PronType': ['Rel'], 'Poss': ['Yes'], 'Number[psor]': ['Sing'], 'Gender[psor]': ['Fem'], - 'Number': ['Dual', 'Plur'], + 'Gender': ['Masc', 'Neut', 'Fem'], + 'Animacy': ['Anim', 'Inan'], # only for Gender=Masc + 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) elif node.feats['Poss'] == 'Yes': # 'můj', 'tvůj', 'svůj' From 199ce8d76d75ca862ae3b6c7f5deb562b6189f2b Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 12 Oct 2024 17:55:35 +0200 Subject: [PATCH 046/233] Additional relations to be fixed given the correct UPOS. --- udapi/block/ud/fixadvmodbyupos.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index e7bd03a6..b232e185 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -34,9 +34,15 @@ def process_node(self, node): elif node.udeprel == 'expl': if node.upos == 'AUX': node.deprel = 'aux' + elif node.upos == 'ADP': + node.deprel = 'case' + elif node.upos == 'CCONJ': + node.deprel = 'cc' elif node.udeprel == 'mark': if node.upos == 'PRON': node.deprel = 'nsubj' # it could be also obj, iobj, obl or nmod; just guessing what might be more probable elif node.udeprel == 'det': - if node.upos == 'ADJ': + if node.upos == 'NOUN': + node.deprel = 'nmod' + elif node.upos == 'ADJ': node.deprel = 'amod' From afb736b72bb0e7b6e526ee8ad018fdc19a07c7b4 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 12 Oct 2024 20:17:52 +0200 Subject: [PATCH 047/233] Czech adjectives now allow Emph=Yes. --- udapi/block/ud/cs/markfeatsbugs.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 9fb086f1..490b53d8 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -85,6 +85,7 @@ def process_node(self, node): 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'NameType': ['Giv', 'Sur'], # for possessive adjectives derived from personal names + 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: self.check_required_features(node, ['Poss', 'Gender[psor]', 'Gender', 'Number', 'Case']) @@ -95,6 +96,7 @@ def process_node(self, node): 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'NameType': ['Giv', 'Sur'], # for possessive adjectives derived from personal names + 'Emph': ['Yes'], 'Foreign': ['Yes']}) elif node.feats['NumType'] == 'Ord' or node.feats['NumType'] == 'Mult': # ordinal numerals are a subtype of adjectives; same for some multiplicative numerals (dvojí, trojí) if node.feats['Gender'] == 'Masc': @@ -105,6 +107,7 @@ def process_node(self, node): 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], + 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: self.check_required_features(node, ['NumType', 'Gender', 'Number', 'Case']) @@ -113,6 +116,7 @@ def process_node(self, node): 'Gender': ['Masc', 'Fem', 'Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], + 'Emph': ['Yes'], 'Foreign': ['Yes']}) elif node.feats['VerbForm'] == 'Part': # participles (except l-participles) are a subtype of adjectives self.check_required_features(node, ['VerbForm', 'Voice']) @@ -130,6 +134,7 @@ def process_node(self, node): 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'Polarity': ['Pos', 'Neg'], 'Variant': ['Short'], + 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Tense', 'Gender', 'Number', 'Case', 'Polarity']) @@ -143,6 +148,7 @@ def process_node(self, node): 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'Polarity': ['Pos', 'Neg'], 'Variant': ['Short'], + 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: if node.feats['Gender'] == 'Masc': @@ -158,6 +164,7 @@ def process_node(self, node): 'Polarity': ['Pos', 'Neg'], 'Degree': ['Pos', 'Cmp', 'Sup'], 'Variant': ['Short'], + 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Gender', 'Number', 'Case', 'Polarity', 'Degree']) @@ -171,6 +178,7 @@ def process_node(self, node): 'Polarity': ['Pos', 'Neg'], 'Degree': ['Pos', 'Cmp', 'Sup'], 'Variant': ['Short'], + 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: # regular adjectives, including short forms if node.feats['Gender'] == 'Masc': @@ -183,6 +191,7 @@ def process_node(self, node): 'Degree': ['Pos', 'Cmp', 'Sup'], 'Polarity': ['Pos', 'Neg'], 'Variant': ['Short'], + 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: self.check_required_features(node, ['Gender', 'Number', 'Case', 'Degree', 'Polarity']) @@ -193,6 +202,7 @@ def process_node(self, node): 'Degree': ['Pos', 'Cmp', 'Sup'], 'Polarity': ['Pos', 'Neg'], 'Variant': ['Short'], + 'Emph': ['Yes'], 'Foreign': ['Yes']}) # PRONOUNS ############################################################# elif node.upos == 'PRON': @@ -729,7 +739,7 @@ def check_adjective_like(self, node, r0, a0): caller in parameters r0 (list) and a0 (dict). """ required_features = [] - allowed_featurs = {} + allowed_features = {} full_set = node.upos == 'ADJ' or not self.pdt20 if full_set: # Even in the full set, animacy is only distinguished for the From 5fb020d9939d6b26f411d74bd8a6999df9d56126 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 13 Oct 2024 10:08:43 +0200 Subject: [PATCH 048/233] =?UTF-8?q?Czech=20MWTs=20"na=C5=88,=20o=C5=88,=20?= =?UTF-8?q?pro=C5=88,=20za=C5=88".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/addmwt.py | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index bc688f8c..e613166f 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -33,10 +33,10 @@ v['main'] = 0 v['shape'] = 'siblings' -# Define static rules for 'nač', 'zač', 'oč' (but not 'proč'). +# Define static rules for 'nač', 'oč', 'zač' (but not 'proč'). # Add them to the already existing dictionary MWTS. # nač -> na + co -for prep in 'na za o'.split(): +for prep in 'na o za'.split(): MWTS[prep + 'č'] = { 'form': prep + ' co', 'lemma': prep + ' co', @@ -48,6 +48,21 @@ 'shape': 'subtree', } +# Define static rules for 'naň', 'oň', 'proň', 'zaň'. +# Add them to the already existing dictionary MWTS. +# naň -> na + něj +for prep in 'na o pro za'.split(): + MWTS[prep + 'ň'] = { + 'form': prep + ' něj', + 'lemma': prep + ' on', + 'upos': 'ADP PRON', + 'xpos': 'RR--4---------- PEZS4--3-------', + 'feats': 'AdpType=Prep|Case=Acc Case=Acc|Gender=Masc,Neut|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', + 'deprel': 'case *', + 'main': 1, + 'shape': 'subtree', + } + class AddMwt(udapi.block.ud.addmwt.AddMwt): """Detect and mark MWTs (split them into words and add the words to the tree).""" From 36aeed1defb26746f3e8fb35c2cd904947710ad1 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 13 Oct 2024 10:27:11 +0200 Subject: [PATCH 049/233] =?UTF-8?q?"p=C5=99=C4=9Bde=C5=88"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/addmwt.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index e613166f..b46edc25 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -1,5 +1,6 @@ """Block ud.cs.AddMwt for heuristic detection of multi-word tokens.""" import udapi.block.ud.addmwt +import re import logging # Define static rules for 'aby', 'kdyby' and similar forms. @@ -62,6 +63,19 @@ 'main': 1, 'shape': 'subtree', } +# Additional contractions in Old Czech with vocalization. +for prep in 'přěd'.split(): + preplemma = re.sub(r"ě", r"e", prep) + MWTS[prep + 'eň'] = { + 'form': prep + ' něj', + 'lemma': preplemma + ' on', + 'upos': 'ADP PRON', + 'xpos': 'RV--4---------- PEZS4--3-------', + 'feats': 'AdpType=Voc|Case=Acc Case=Acc|Gender=Masc,Neut|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', + 'deprel': 'case *', + 'main': 1, + 'shape': 'subtree', + } class AddMwt(udapi.block.ud.addmwt.AddMwt): """Detect and mark MWTs (split them into words and add the words to the tree).""" From e30ed9022293946f880b655ab1895c09606bc5fc Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 13 Oct 2024 11:20:26 +0200 Subject: [PATCH 050/233] A new block to copy Bug attributes from MWT to its nodes. --- udapi/block/ud/markfeatsbugs.py | 2 -- udapi/block/util/markmwtbugsatnodes.py | 25 +++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 udapi/block/util/markmwtbugsatnodes.py diff --git a/udapi/block/ud/markfeatsbugs.py b/udapi/block/ud/markfeatsbugs.py index 1bb8188b..26c5624d 100644 --- a/udapi/block/ud/markfeatsbugs.py +++ b/udapi/block/ud/markfeatsbugs.py @@ -8,8 +8,6 @@ Usage (Czech example): cat *.conllu | udapy -HAMX layout=compact ud.cs.MarkFeatsBugs > bugs.html """ from udapi.core.block import Block -import logging -import re class MarkFeatsBugs(Block): diff --git a/udapi/block/util/markmwtbugsatnodes.py b/udapi/block/util/markmwtbugsatnodes.py new file mode 100644 index 00000000..ebc2ef4e --- /dev/null +++ b/udapi/block/util/markmwtbugsatnodes.py @@ -0,0 +1,25 @@ +"""util.MarkMwtBugsAtNodes copies Bug attributes from MISC of multiword tokens to MISC of member nodes. + Otherwise they will be ignored when write.TextModeTrees marked_only=1 is called.""" + +from udapi.core.block import Block + +class MarkMwtBugsAtNodes(Block): + """ + If a node belongs to a multiword token and the MWT has Bug in MISC, copy + the Bug to the node so that filtering trees with bugs works. + The same bug note will be copied to all nodes in the MWT. + """ + + ###!!! Do we want to do the same thing also with ToDo attributes? + def bug(self, node, bugstring): + bugs = [] + if node.misc['Bug']: + bugs = node.misc['Bug'].split('+') + if not bugstring in bugs: + bugs.append(bugstring) + node.misc['Bug'] = '+'.join(bugs) + + def process_node(self, node): + if node.multiword_token: + if node.multiword_token.misc['Bug']: + self.bug(node, node.multiword_token.misc['Bug']) From 9e68b89e8df54413a49aee2b3cec810aebbf504e Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 13 Oct 2024 12:03:28 +0200 Subject: [PATCH 051/233] =?UTF-8?q?Czech=20MWTs=20"na=C5=88=C5=BE,=20o?= =?UTF-8?q?=C5=88=C5=BE,=20pro=C5=88=C5=BE,=20za=C5=88=C5=BE".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/addmwt.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index b46edc25..3414f88d 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -77,6 +77,21 @@ 'shape': 'subtree', } +# Define static rules for 'naňž', 'oňž', 'proňž', 'zaňž'. +# Add them to the already existing dictionary MWTS. +# naňž -> na + nějž +for prep in 'na o pro za'.split(): + MWTS[prep + 'ňž'] = { + 'form': prep + ' nějž', + 'lemma': prep + ' jenž', + 'upos': 'ADP PRON', + 'xpos': 'RR--4---------- P4ZS4---------2', + 'feats': 'AdpType=Prep|Case=Acc Case=Acc|Gender=Masc,Neut|Number=Sing|PrepCase=Pre|PronType=Rel', + 'deprel': 'case *', + 'main': 1, + 'shape': 'subtree', + } + class AddMwt(udapi.block.ud.addmwt.AddMwt): """Detect and mark MWTs (split them into words and add the words to the tree).""" From f747fa0b81803fa30939b104e25b693f095278c1 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 14 Oct 2024 09:45:07 +0200 Subject: [PATCH 052/233] =?UTF-8?q?"Skirz=C4=9B=C5=88=C5=BE"=20et=20al.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/addmwt.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 3414f88d..a189b162 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -76,6 +76,17 @@ 'main': 1, 'shape': 'subtree', } +for prep in 'skirzě skrzě skrze'.split(): + MWTS[prep + 'ň'] = { + 'form': prep + ' něj', + 'lemma': 'skrz on', + 'upos': 'ADP PRON', + 'xpos': 'RV--4---------- PEZS4--3-------', + 'feats': 'AdpType=Voc|Case=Acc Case=Acc|Gender=Masc,Neut|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', + 'deprel': 'case *', + 'main': 1, + 'shape': 'subtree', + } # Define static rules for 'naňž', 'oňž', 'proňž', 'zaňž'. # Add them to the already existing dictionary MWTS. @@ -91,6 +102,18 @@ 'main': 1, 'shape': 'subtree', } +# Additional contractions in Old Czech with vocalization. +for prep in 'skirzě skrzě skrze'.split(): + MWTS[prep + 'ňž'] = { + 'form': prep + ' nějž', + 'lemma': 'skrz jenž', + 'upos': 'ADP PRON', + 'xpos': 'RV--4---------- P4ZS4---------2', + 'feats': 'AdpType=Voc|Case=Acc Case=Acc|Gender=Masc,Neut|Number=Sing|PrepCase=Pre|PronType=Rel', + 'deprel': 'case *', + 'main': 1, + 'shape': 'subtree', + } class AddMwt(udapi.block.ud.addmwt.AddMwt): """Detect and mark MWTs (split them into words and add the words to the tree).""" From 660f6e052fb10b6eafeb049ae2adb2dd7e0ce60b Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Mon, 14 Oct 2024 10:54:59 +0200 Subject: [PATCH 053/233] corefud.Stats report_basics=1 --- udapi/block/corefud/stats.py | 44 ++++++++++++++++++++++++++++++------ 1 file changed, 37 insertions(+), 7 deletions(-) diff --git a/udapi/block/corefud/stats.py b/udapi/block/corefud/stats.py index e05815a6..5368cabc 100644 --- a/udapi/block/corefud/stats.py +++ b/udapi/block/corefud/stats.py @@ -4,13 +4,16 @@ class Stats(Block): """Block corefud.Stats prints various coreference-related statistics.""" - def __init__(self, m_len_max=5, e_len_max=5, report_mentions=True, report_entities=True, - report_details=True, selected_upos='NOUN PRON PROPN DET ADJ VERB ADV NUM', + def __init__(self, m_len_max=5, e_len_max=5, + report_basics=False, report_mentions=True, report_entities=True, + report_details=True, selected_upos='NOUN PRON PROPN DET ADJ VERB ADV NUM _', exclude_singletons=False, exclude_nonsingletons=False, style='human', - per_doc=False, max_rows_per_page=50, **kwargs): + per_doc=False, max_rows_per_page=50, docname='newdoc', docname_len=15, + **kwargs): super().__init__(**kwargs) self.m_len_max = m_len_max self.e_len_max = e_len_max + self.report_basics = report_basics self.report_mentions = report_mentions self.report_entities = report_entities self.report_details = report_details @@ -21,6 +24,10 @@ def __init__(self, m_len_max=5, e_len_max=5, report_mentions=True, report_entiti raise ValueError(f'Unknown style {style}') self.per_doc = per_doc self.max_rows_per_page = max_rows_per_page + if docname not in 'newdoc filename'.split(): + raise ValueError(f'Unknown style {style}') + self.docname = docname + self.docname_len = docname_len self._header_printed = False self._lines_printed = None @@ -75,6 +82,12 @@ def process_document(self, doc): heads += 0 if any(d['parent'] in mwords for d in w.deps) else 1 self.counter['m_nontreelet'] += 1 if heads > 1 else 0 + if self.report_basics: + for tree in doc.trees: + self.counter['newdocs'] += 1 if tree.newdoc else 0 + self.counter['sents'] += 1 + self.counter['words'] += len(tree.descendants) + self.counter['empty'] += len(tree.empty_nodes) def after_process_document(self, doc): if self.per_doc: @@ -97,7 +110,8 @@ def process_end(self, skip=True, doc=None): self.print_footer() return else: - print(f"{doc[0].trees[0].newdoc:15}", end='&' if self.style.startswith('tex') else '\n') + docname = doc.meta['loaded_from'] if self.docname == 'filename' else doc[0].trees[0].newdoc + print(f"{docname:{self.docname_len}}", end='&' if self.style.startswith('tex') else '\n') elif self.style.startswith('tex-'): print(f"{self.counter['documents']:4} documents &") self._lines_printed += 1 @@ -107,6 +121,11 @@ def process_end(self, skip=True, doc=None): total_nodes_nonzero = 1 if self.total_nodes == 0 else self.total_nodes columns =[ ] + if self.report_basics: + columns += [('docs', f"{self.counter['newdocs']:7,}"), + ('sents', f"{self.counter['sents']:7,}"), + ('words', f"{self.counter['words']:7,}"), + ('empty', f"{self.counter['empty']:7,}"),] if self.report_entities: columns += [('entities', f"{self.entities:7,}"), ('entities_per1k', f"{1000 * self.entities / total_nodes_nonzero:6.0f}"), @@ -156,7 +175,15 @@ def print_header(self): print(r'\title{Udapi coreference statistics}') print(r'\begin{document}') print(r'\def\MC#1#2{\multicolumn{#1}{c}{#2}}') - lines = [r'\begin{mypage}\begin{tabular}{@{}l ', " "*15, ("document" if self.per_doc else "dataset ") + " "*7, " "*15] + lines = [r'\begin{mypage}\begin{tabular}{@{}l ', + " " * self.docname_len, + ("document" if self.per_doc else "dataset ") + " " * (self.docname_len-8), + " " * self.docname_len] + if self.report_basics: + lines[0] += "rrrr " + lines[1] += r'& \MC{4}{total number of} ' + lines[2] += r'& & & & ' + lines[3] += r'& docs & sents & words & empty n.' if self.report_entities: lines[0] += "rrrr " lines[1] += r'& \MC{4}{entities} ' @@ -199,10 +226,13 @@ def print_header(self): lines[1] += r'\\' lines[2] += r'\\' lines[3] += r'\\\midrule' - if self.report_entities: + if self.report_basics: last_col += 4 lines[1] += r'\cmidrule(lr){2-5}' - lines[2] += r'\cmidrule(lr){4-5}' + if self.report_entities: + lines[1] += r'\cmidrule(lr){' + f"{last_col+1}-{last_col+4}" + '}' + lines[2] += r'\cmidrule(lr){' + f"{last_col+3}-{last_col+4}" + '}' + last_col += 4 if self.e_len_max: last_col += self.e_len_max lines[1] += r'\cmidrule(lr){6-' + str(last_col) + '}' From e679de0ea2ff46e9da88420aaf6c51ba0c0c4051 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Mon, 14 Oct 2024 11:21:40 +0200 Subject: [PATCH 054/233] udpipe.En online=1 ranges=1 Use ranges=1, so that each token will contain `node.misc[TokenRange]` with character level 0-based ranges, e.g. `0:2` for the first token with two characters. --- udapi/block/udpipe/base.py | 7 ++++--- udapi/tool/udpipe.py | 4 +++- udapi/tool/udpipeonline.py | 5 ++++- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/udapi/block/udpipe/base.py b/udapi/block/udpipe/base.py index d94f8cc5..50d33883 100644 --- a/udapi/block/udpipe/base.py +++ b/udapi/block/udpipe/base.py @@ -121,13 +121,13 @@ class Base(Block): # pylint: disable=too-many-arguments def __init__(self, model=None, model_alias=None, online=False, tokenize=True, tag=True, parse=True, resegment=False, - delete_nodes=False, **kwargs): + ranges=False, delete_nodes=False, **kwargs): """Create the udpipe.En block object.""" super().__init__(**kwargs) self.model, self.model_alias, self.online = model, model_alias, online self._tool = None self.tokenize, self.tag, self.parse, self.resegment = tokenize, tag, parse, resegment - self.delete_nodes = delete_nodes + self.ranges, self.delete_nodes = ranges, delete_nodes @property def tool(self): @@ -160,7 +160,8 @@ def process_document(self, doc): subroot.remove() if tok: new_trees = self.tool.tokenize_tag_parse_tree(tree, resegment=reseg, - tag=tag, parse=par) + tag=tag, parse=par, + ranges=self.ranges) if self.resegment and len(new_trees) > 1: orig_bundle_id = bundle.bundle_id bundle.bundle_id = orig_bundle_id + '-1' diff --git a/udapi/tool/udpipe.py b/udapi/tool/udpipe.py index f96fafdf..5d4a4d9c 100644 --- a/udapi/tool/udpipe.py +++ b/udapi/tool/udpipe.py @@ -47,11 +47,13 @@ def tag_parse_tree(self, root): # pylint: disable=protected-access #root._children, root._descendants = parsed_root._children, parsed_root._descendants - def tokenize_tag_parse_tree(self, root, resegment=False, tag=True, parse=True): + def tokenize_tag_parse_tree(self, root, resegment=False, tag=True, parse=True, ranges=False): """Tokenize, tag (+lemmatize, fill FEATS) and parse the text stored in `root.text`. If resegment=True, the returned list of Udapi trees may contain multiple trees. """ + if ranges: + raise ValueError('ranges=True is implemented only in the REST API version (add "online=1" to the udpipe block)') if root.children: raise ValueError('Tree already contained nodes before tokenization') diff --git a/udapi/tool/udpipeonline.py b/udapi/tool/udpipeonline.py index 26f31a73..2a57cbe7 100644 --- a/udapi/tool/udpipeonline.py +++ b/udapi/tool/udpipeonline.py @@ -92,10 +92,11 @@ def tag_parse_tree(self, root, tag=True, parse=True): for attr in attrs: setattr(node, attr, getattr(parsed_node, attr)) - def tokenize_tag_parse_tree(self, root, resegment=False, tag=True, parse=True): + def tokenize_tag_parse_tree(self, root, resegment=False, tag=True, parse=True, ranges=False): """Tokenize, tag (+lemmatize, fill FEATS) and parse the text stored in `root.text`. If resegment=True, the returned list of Udapi trees may contain multiple trees. + If ranges=True, each token will contain `node.misc[TokenRange]` will contain character level 0-based ranges, e.g. `0:2`. """ if parse and not tag: raise ValueError('Combination parse=True tag=False is not allowed.') @@ -108,6 +109,8 @@ def tokenize_tag_parse_tree(self, root, resegment=False, tag=True, parse=True): params["tagger"] = "" if parse: params["parser"] = "" + if ranges: + params["tokenizer"] = "presegmented,ranges" if resegment else "ranges" out_data = self.perform_request(params=params) conllu_reader = ConlluReader(empty_parent="ignore") conllu_reader.files.filehandle = io.StringIO(out_data) From 5eba832ea60e370ac151438f0a2a5b501fa2380c Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 14 Oct 2024 14:58:38 +0200 Subject: [PATCH 055/233] Modified rules for Degree and Polarity of Czech adverbs. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit From now on, both Degree and Polarity are required (even if Pos is the only possible value) for most adverbs, unless other features will exclude it. The exceptions are pronominal adverbs (except totals, "vždy-nevždy") and adverbial numerals. --- udapi/block/ud/cs/markfeatsbugs.py | 61 +++++++++++++++++++++--------- 1 file changed, 43 insertions(+), 18 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 490b53d8..2bfae385 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -689,30 +689,55 @@ def process_node(self, node): # belong here. They have also pronominal counterparts (kolikrát, # tolikrát, několikrát). There are also adverbial ordinal numerals # (zaprvé, poprvé, zadruhé, podruhé). - # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kde to je?" use Rel.) + # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with question mark; indirect questions like "Ptal ses, kde to je?" use Rel.) # New Czech data, in particular PDT, use Int,Rel regardless of context. self.check_allowed_features(node, { 'NumType': ['Mult', 'Ord'], 'PronType': ['Dem', 'Int', 'Rel', 'Int,Rel', 'Ind'] }) - elif node.feats['PronType'] != '': - # Pronominal adverbs are neither compared nor negated. - # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kde to je?" use Rel.) - # New Czech data, in particular PDT, use Int,Rel regardless of context. - self.check_allowed_features(node, { - 'PronType': ['Dem', 'Int', 'Rel', 'Int,Rel', 'Ind', 'Neg', 'Tot'] - }) - elif node.feats['Degree'] != '': - # Adverbs that are compared can also be negated. - self.check_required_features(node, ['Degree', 'Polarity']) - self.check_allowed_features(node, { - 'Degree': ['Pos', 'Cmp', 'Sup'], - 'Polarity': ['Pos', 'Neg'] - }) + elif self.pdt20: + if node.feats['PronType'] != '': + # Pronominal adverbs in PDT are neither compared nor negated. + # New Czech data, in particular PDT, use Int,Rel regardless of context. + self.check_allowed_features(node, { + 'PronType': ['Dem', 'Int,Rel', 'Ind', 'Neg', 'Tot'] + }) + elif node.feats['Degree'] != '': + # Adverbs that are compared can also be negated. + self.check_required_features(node, ['Degree', 'Polarity']) + self.check_allowed_features(node, { + 'Degree': ['Pos', 'Cmp', 'Sup'], + 'Polarity': ['Pos', 'Neg'] + }) + else: + # The remaining adverbs are neither pronominal, nor compared or + # negated. + self.check_allowed_features(node, {}) else: - # The remaining adverbs are neither pronominal, nor compared or - # negated. - self.check_allowed_features(node, {}) + if node.feats['PronType'] == 'Tot': + # Total adverbs in Old Czech can be negated: vždy, nevždy. + # Then for consistence with other adverbs, we also require + # Degree, although it will be always Pos. + self.check_required_features(node, ['Degree', 'Polarity']) + self.check_allowed_features(node, { + 'PronType': ['Tot'], + 'Degree': ['Pos'], + 'Polarity': ['Pos', 'Neg'] + }) + elif node.feats['PronType'] != '': + # Other pronominal adverbs are neither compared nor negated. + # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with question mark; indirect questions like "Ptal ses, kde to je?" use Rel.) + self.check_allowed_features(node, { + 'PronType': ['Dem', 'Int', 'Rel', 'Ind', 'Neg'] + }) + else: + # All other adverbs should have both Degree and Polarity, + # although for some of them the values will always be Pos. + self.check_required_features(node, ['Degree', 'Polarity']) + self.check_allowed_features(node, { + 'Degree': ['Pos', 'Cmp', 'Sup'], + 'Polarity': ['Pos', 'Neg'] + }) # ADPOSITIONS ########################################################## elif node.upos == 'ADP': self.check_required_features(node, ['AdpType', 'Case']) From 21a54b31a9ee58701eb668a74b84b751e256b5af Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 14 Oct 2024 17:20:15 +0200 Subject: [PATCH 056/233] Do not generate ambiguous Gender=Masc,Neut. --- udapi/block/ud/cs/addmwt.py | 116 ++++++++++++++++-------------------- 1 file changed, 52 insertions(+), 64 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index a189b162..2dd12fca 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -49,71 +49,7 @@ 'shape': 'subtree', } -# Define static rules for 'naň', 'oň', 'proň', 'zaň'. -# Add them to the already existing dictionary MWTS. -# naň -> na + něj -for prep in 'na o pro za'.split(): - MWTS[prep + 'ň'] = { - 'form': prep + ' něj', - 'lemma': prep + ' on', - 'upos': 'ADP PRON', - 'xpos': 'RR--4---------- PEZS4--3-------', - 'feats': 'AdpType=Prep|Case=Acc Case=Acc|Gender=Masc,Neut|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', - 'deprel': 'case *', - 'main': 1, - 'shape': 'subtree', - } -# Additional contractions in Old Czech with vocalization. -for prep in 'přěd'.split(): - preplemma = re.sub(r"ě", r"e", prep) - MWTS[prep + 'eň'] = { - 'form': prep + ' něj', - 'lemma': preplemma + ' on', - 'upos': 'ADP PRON', - 'xpos': 'RV--4---------- PEZS4--3-------', - 'feats': 'AdpType=Voc|Case=Acc Case=Acc|Gender=Masc,Neut|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', - 'deprel': 'case *', - 'main': 1, - 'shape': 'subtree', - } -for prep in 'skirzě skrzě skrze'.split(): - MWTS[prep + 'ň'] = { - 'form': prep + ' něj', - 'lemma': 'skrz on', - 'upos': 'ADP PRON', - 'xpos': 'RV--4---------- PEZS4--3-------', - 'feats': 'AdpType=Voc|Case=Acc Case=Acc|Gender=Masc,Neut|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', - 'deprel': 'case *', - 'main': 1, - 'shape': 'subtree', - } -# Define static rules for 'naňž', 'oňž', 'proňž', 'zaňž'. -# Add them to the already existing dictionary MWTS. -# naňž -> na + nějž -for prep in 'na o pro za'.split(): - MWTS[prep + 'ňž'] = { - 'form': prep + ' nějž', - 'lemma': prep + ' jenž', - 'upos': 'ADP PRON', - 'xpos': 'RR--4---------- P4ZS4---------2', - 'feats': 'AdpType=Prep|Case=Acc Case=Acc|Gender=Masc,Neut|Number=Sing|PrepCase=Pre|PronType=Rel', - 'deprel': 'case *', - 'main': 1, - 'shape': 'subtree', - } -# Additional contractions in Old Czech with vocalization. -for prep in 'skirzě skrzě skrze'.split(): - MWTS[prep + 'ňž'] = { - 'form': prep + ' nějž', - 'lemma': 'skrz jenž', - 'upos': 'ADP PRON', - 'xpos': 'RV--4---------- P4ZS4---------2', - 'feats': 'AdpType=Voc|Case=Acc Case=Acc|Gender=Masc,Neut|Number=Sing|PrepCase=Pre|PronType=Rel', - 'deprel': 'case *', - 'main': 1, - 'shape': 'subtree', - } class AddMwt(udapi.block.ud.addmwt.AddMwt): """Detect and mark MWTs (split them into words and add the words to the tree).""" @@ -164,6 +100,58 @@ def multiword_analysis(self, node): 'main': 0, 'shape': 'subtree', } + # Contractions of prepositions and pronouns will be processed regardless + # of AddMwt instructions by the annotator. These rules are dynamic because + # the pronoun could be masculine or neuter. We pick Gender=Masc by default, + # unless the original token was annotated as Gender=Neut. + m = re.match(r"^(na|o|pro|přěde|ski?rz[eě]|za)ň(ž?)$", node.form.lower()) + if m: + # Remove vocalization from 'přěde' (přěd něj) but keep it in 'skrze' + # (skrze něj). + if m.group(1) == 'přěde': + pform = 'přěd' + plemma = 'před' + adptype = 'Voc' + at = 'V' + elif re.match(r"^ski?rz[eě]$", m.group(1).lower()): + pform = m.group(1) + plemma = 'skrz' + adptype = 'Voc' + at = 'V' + else: + pform = m.group(1) + plemma = m.group(1) + adptype = 'Prep' + at = 'R' + # In UD PDT, Gender=Masc,Neut, and in PDT it is PEZS4--3. + if node.feats['Gender'] == 'Neut': + gender = 'Neut' + g = 'N' + else: + gender = 'Masc' + g = 'Y' # standing for 'M' or 'I' + if m.group(2).lower() == 'ž': + return { + 'form': pform + ' nějž', + 'lemma': plemma + ' jenž', + 'upos': 'ADP PRON', + 'xpos': 'R'+at+'--4---------- P4'+g+'S4---------2', + 'feats': 'AdpType='+adptype+'|Case=Acc Case=Acc|Gender='+gender+'|Number=Sing|PrepCase=Pre|PronType=Rel', + 'deprel': 'case *', + 'main': 1, + 'shape': 'subtree', + } + else: + return { + 'form': pform + ' něj', + 'lemma': plemma + ' on', + 'upos': 'ADP PRON', + 'xpos': 'R'+at+'--4---------- PE'+g+'S4--3-------', + 'feats': 'AdpType='+adptype+'|Case=Acc Case=Acc|Gender='+gender+'|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', + 'deprel': 'case *', + 'main': 1, + 'shape': 'subtree', + } return None def postprocess_mwt(self, mwt): From d56c258e868b51c1912e9c41da4d365a79a92e9e Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 14 Oct 2024 17:26:25 +0200 Subject: [PATCH 057/233] Survive non-concatenative AddMwt in MISC. --- udapi/block/ud/cs/addmwt.py | 80 +++++++++++++++++++------------------ 1 file changed, 42 insertions(+), 38 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 2dd12fca..70f6c01e 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -62,50 +62,16 @@ def multiword_analysis(self, node): analysis = MWTS.get(node.form.lower(), None) if analysis is not None: return analysis - # If the node did not match any of the static rules defined in MWTS, - # check it against the "dynamic" rules below. The enclitic 'ť' will be - # separated from its host but only if it has been marked by an annotator - # in MISC. (These are annotation conventions used for Old Czech in the - # Hičkok project.) - if node.misc['AddMwt'] != '': - subtokens = node.misc['AddMwt'].split() - if len(subtokens) != 2: - logging.warning("MISC 'AddMwt=%s' has unexpected number of subtokens." % node.misc['AddMwt']) - return None - token_from_subtokens = ''.join(subtokens) - if token_from_subtokens != node.form: - logging.warning("Concatenation of MISC 'AddMwt=%s' does not yield the FORM '%s'." % (node.misc['AddMwt'], node.form)) - return None - if subtokens[1] == 's': - node.misc['AddMwt'] = '' - return { - 'form': subtokens[0] + ' jsi', - 'lemma': '* být', - 'upos': '* AUX', - 'xpos': '* VB-S---2P-AAI--', - 'feats': '* Aspect=Imp|Mood=Ind|Number=Sing|Person=2|Polarity=Pos|Tense=Pres|VerbForm=Fin|Voice=Act', - 'deprel': '* aux', - 'main': 0, - 'shape': 'subtree' if node.upos in ['VERB'] else 'siblings', - } - if subtokens[1] == 'ť': - node.misc['AddMwt'] = '' - return { - 'form': node.form.lower()[:-1] + ' ť', - 'lemma': '* ť', - 'upos': '* PART', - 'xpos': '* TT-------------', - 'feats': '* _', - 'deprel': '* discourse', - 'main': 0, - 'shape': 'subtree', - } # Contractions of prepositions and pronouns will be processed regardless # of AddMwt instructions by the annotator. These rules are dynamic because # the pronoun could be masculine or neuter. We pick Gender=Masc by default, # unless the original token was annotated as Gender=Neut. + # Note that we do this before looking at AddMwt in MISC because the code + # below that looks there will require that the parts can be concatenated, + # and that does not work for pronouns (skirzě + nějž != skirzěňž). m = re.match(r"^(na|o|pro|přěde|ski?rz[eě]|za)ň(ž?)$", node.form.lower()) if m: + node.misc['AddMwt'] = '' # Remove vocalization from 'přěde' (přěd něj) but keep it in 'skrze' # (skrze něj). if m.group(1) == 'přěde': @@ -152,6 +118,44 @@ def multiword_analysis(self, node): 'main': 1, 'shape': 'subtree', } + # If the node did not match any of the static rules defined in MWTS, + # check it against the "dynamic" rules below. The enclitic 'ť' will be + # separated from its host but only if it has been marked by an annotator + # in MISC. (These are annotation conventions used for Old Czech in the + # Hičkok project.) + if node.misc['AddMwt'] != '': + subtokens = node.misc['AddMwt'].split() + if len(subtokens) != 2: + logging.warning("MISC 'AddMwt=%s' has unexpected number of subtokens." % node.misc['AddMwt']) + return None + token_from_subtokens = ''.join(subtokens) + if token_from_subtokens != node.form: + logging.warning("Concatenation of MISC 'AddMwt=%s' does not yield the FORM '%s'." % (node.misc['AddMwt'], node.form)) + return None + if subtokens[1] == 's': + node.misc['AddMwt'] = '' + return { + 'form': subtokens[0] + ' jsi', + 'lemma': '* být', + 'upos': '* AUX', + 'xpos': '* VB-S---2P-AAI--', + 'feats': '* Aspect=Imp|Mood=Ind|Number=Sing|Person=2|Polarity=Pos|Tense=Pres|VerbForm=Fin|Voice=Act', + 'deprel': '* aux', + 'main': 0, + 'shape': 'subtree' if node.upos in ['VERB'] else 'siblings', + } + if subtokens[1] == 'ť': + node.misc['AddMwt'] = '' + return { + 'form': node.form.lower()[:-1] + ' ť', + 'lemma': '* ť', + 'upos': '* PART', + 'xpos': '* TT-------------', + 'feats': '* _', + 'deprel': '* discourse', + 'main': 0, + 'shape': 'subtree', + } return None def postprocess_mwt(self, mwt): From 93ea438002bba28decb2348f5376409bf5f3a390 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 14 Oct 2024 17:36:00 +0200 Subject: [PATCH 058/233] Gender=Masc implies non-empty Animacy. --- udapi/block/ud/cs/addmwt.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 70f6c01e..7e7e0fcc 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -64,8 +64,9 @@ def multiword_analysis(self, node): return analysis # Contractions of prepositions and pronouns will be processed regardless # of AddMwt instructions by the annotator. These rules are dynamic because - # the pronoun could be masculine or neuter. We pick Gender=Masc by default, - # unless the original token was annotated as Gender=Neut. + # the pronoun could be masculine or neuter. We pick Gender=Masc and + # Animacy=Anim by default, unless the original token was annotated as + # Animacy=Inan or Gender=Neut. # Note that we do this before looking at AddMwt in MISC because the code # below that looks there will require that the parts can be concatenated, # and that does not work for pronouns (skirzě + nějž != skirzěňž). @@ -89,20 +90,26 @@ def multiword_analysis(self, node): plemma = m.group(1) adptype = 'Prep' at = 'R' - # In UD PDT, Gender=Masc,Neut, and in PDT it is PEZS4--3. + # In UD PDT, Gender=Masc,Neut, and in PDT it is PEZS4--3 / P4ZS4---. if node.feats['Gender'] == 'Neut': gender = 'Neut' + animacy = '' g = 'N' + elif node.feats['Animacy'] == 'Inan': + gender = 'Masc' + animacy = 'Animacy=Inan|' + g = 'I' else: gender = 'Masc' - g = 'Y' # standing for 'M' or 'I' + animacy = 'Animacy=Anim|' + g = 'M' if m.group(2).lower() == 'ž': return { 'form': pform + ' nějž', 'lemma': plemma + ' jenž', 'upos': 'ADP PRON', 'xpos': 'R'+at+'--4---------- P4'+g+'S4---------2', - 'feats': 'AdpType='+adptype+'|Case=Acc Case=Acc|Gender='+gender+'|Number=Sing|PrepCase=Pre|PronType=Rel', + 'feats': 'AdpType='+adptype+'|Case=Acc '+animacy+'Case=Acc|Gender='+gender+'|Number=Sing|PrepCase=Pre|PronType=Rel', 'deprel': 'case *', 'main': 1, 'shape': 'subtree', @@ -113,7 +120,7 @@ def multiword_analysis(self, node): 'lemma': plemma + ' on', 'upos': 'ADP PRON', 'xpos': 'R'+at+'--4---------- PE'+g+'S4--3-------', - 'feats': 'AdpType='+adptype+'|Case=Acc Case=Acc|Gender='+gender+'|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', + 'feats': 'AdpType='+adptype+'|Case=Acc '+animacy+'Case=Acc|Gender='+gender+'|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', 'deprel': 'case *', 'main': 1, 'shape': 'subtree', From e3b4aac6bf5da1629e36b8af8dcbfcae343f6447 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Mon, 14 Oct 2024 17:50:42 +0200 Subject: [PATCH 059/233] udpipe.En online=1 now parses the whole document with a single REST request Thus the TokenRange is valid for the whole document --- udapi/block/udpipe/base.py | 9 +++++---- udapi/tool/udpipeonline.py | 41 +++++++++++++++++++++++++++++++++++++- 2 files changed, 45 insertions(+), 5 deletions(-) diff --git a/udapi/block/udpipe/base.py b/udapi/block/udpipe/base.py index 50d33883..069fc9fb 100644 --- a/udapi/block/udpipe/base.py +++ b/udapi/block/udpipe/base.py @@ -122,7 +122,6 @@ class Base(Block): def __init__(self, model=None, model_alias=None, online=False, tokenize=True, tag=True, parse=True, resegment=False, ranges=False, delete_nodes=False, **kwargs): - """Create the udpipe.En block object.""" super().__init__(**kwargs) self.model, self.model_alias, self.online = model, model_alias, online self._tool = None @@ -148,7 +147,10 @@ def tool(self): return self._tool def process_document(self, doc): - tok, tag, par, reseg = self.tokenize, self.tag, self.parse, self.resegment + tok, tag, par, reseg, ranges = self.tokenize, self.tag, self.parse, self.resegment, self.ranges + if self.zones == "all" and self.online: + self.tool.process_document(doc, tok, tag, par, reseg, ranges) + return old_bundles = doc.bundles new_bundles = [] for bundle in old_bundles: @@ -160,8 +162,7 @@ def process_document(self, doc): subroot.remove() if tok: new_trees = self.tool.tokenize_tag_parse_tree(tree, resegment=reseg, - tag=tag, parse=par, - ranges=self.ranges) + tag=tag, parse=par, ranges=ranges) if self.resegment and len(new_trees) > 1: orig_bundle_id = bundle.bundle_id bundle.bundle_id = orig_bundle_id + '-1' diff --git a/udapi/tool/udpipeonline.py b/udapi/tool/udpipeonline.py index 2a57cbe7..23971f53 100644 --- a/udapi/tool/udpipeonline.py +++ b/udapi/tool/udpipeonline.py @@ -110,7 +110,7 @@ def tokenize_tag_parse_tree(self, root, resegment=False, tag=True, parse=True, r if parse: params["parser"] = "" if ranges: - params["tokenizer"] = "presegmented,ranges" if resegment else "ranges" + params["tokenizer"] = "presegmented;ranges" if resegment else "ranges" out_data = self.perform_request(params=params) conllu_reader = ConlluReader(empty_parent="ignore") conllu_reader.files.filehandle = io.StringIO(out_data) @@ -130,3 +130,42 @@ def segment_text(self, text): """Segment the provided text into sentences returned as a Python list.""" params = {"model": self.model, "data": text, "tokenizer":"", "output": "plaintext=normalized_spaces"} return self.perform_request(params=params).rstrip().split("\n") + + def process_document(self, doc, tokenize=True, tag=True, parse=True, resegment=False, ranges=False): + """Delete all existing bundles and substitute them with those parsed by UDPipe.""" + if parse and not tag: + raise ValueError('Combination parse=True tag=False is not allowed.') + params = {"model": self.model, "tokenizer": "presegmented"} + if tag: + params["tagger"] = "" + if parse: + params["parser"] = "" + if resegment: + params["tokenizer"] = "" + if ranges: + params["tokenizer"] = "ranges" if resegment else "presegmented;ranges" + + #in_trees = [] + #for bundle in doc.bundles: + # assert(len(bundle.trees) == 1) + # in_trees.append(bundle.trees[0]) + if tokenize: + params["data"] = "\n".join(root.text for root in doc.trees) + else: + params["input"] = "horizontal" + params["data"] = "\n".join(" ".join([n.form for n in root.descendants]) for root in doc.trees) + + out_data = self.perform_request(params=params) + conllu_reader = ConlluReader(empty_parent="ignore") + conllu_reader.files.filehandle = io.StringIO(out_data) + trees = conllu_reader.read_trees() + + bundles = list(reversed(doc.bundles)) + for tree in trees: + if bundles: + bundle = bundles.pop() + # TODO is this safe? + bundle.trees = [] + else: + bundle = doc.create_bundle() + bundle.add_tree(tree) From 1cd6c19e85e287fe8320e5254218f301713bc6cc Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 14 Oct 2024 22:26:43 +0200 Subject: [PATCH 060/233] Gradable and negatable quantifiers in Czech. --- udapi/block/ud/cs/markfeatsbugs.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 2bfae385..9c7f3dae 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -485,11 +485,16 @@ def process_node(self, node): if node.lemma == 'nejeden': self.check_adjective_like(node, ['PronType', 'NumType'], {'PronType': ['Ind'], 'NumType': ['Card']}) else: + # Lemmas 'hodně' and 'málo' have Degree even if used as quantifiers and not adverbs: + # hodně, více, nejvíce; málo, méně, nejméně + # Lemmas 'mnoho' and 'málo' can be negated (nemnoho, nemálo). self.check_required_features(node, ['PronType', 'NumType', 'Case']) self.check_allowed_features(node, { 'PronType': ['Ind', 'Int', 'Rel', 'Dem'], 'NumType': ['Card'], - 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], + 'Degree': ['Pos', 'Cmp', 'Sup'], + 'Polarity': ['Pos', 'Neg'] }) else: # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kde to je?" use Rel.) From 90e2980d01cc5c4409270d258b8155517ac15411 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 14 Oct 2024 22:38:57 +0200 Subject: [PATCH 061/233] =?UTF-8?q?Czech=20"p=C5=AFl"=20has=20no=20Case=20?= =?UTF-8?q?and=20no=20Number.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 9c7f3dae..01d20148 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -514,6 +514,7 @@ def process_node(self, node): # 'dva', 'oba' have Gender, Number=Dual(Plur in modern Czech), Case: dva, dvě, dvou, dvěma. # 'tři', 'čtyři' have Number=Plur, Case: tři, třech, třem, třemi. # 'pět' and more have Number=Plur, Case: pět, pěti. + # 'půl' has no Number and Case, although it behaves syntactically similarly to 'pět' (but genitive is still 'půl', not '*půli'). if node.lemma == 'jeden': self.check_required_features(node, ['NumType', 'NumForm', 'Number', 'Case']) self.check_allowed_features(node, { @@ -545,6 +546,12 @@ def process_node(self, node): 'Number': ['Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) + elif node.lemma == 'půl': + self.check_required_features(node, ['NumType', 'NumForm']) + self.check_allowed_features(node, { + 'NumType': ['Card'], + 'NumForm': ['Word'] + }) else: # In PDT, cardinal numerals higher than four in nominative/accusative/vocative # have Number=Sing instead of Plur! It may be motivated by the default From 7189c5e191294ac474a8cf5f77553381b7fc50d9 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Oct 2024 08:16:38 +0200 Subject: [PATCH 062/233] Features of Czech pronouns "ho", "mu". --- udapi/block/ud/cs/markfeatsbugs.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 01d20148..91fe8b1b 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -223,19 +223,18 @@ def process_node(self, node): 'PronType': ['Prs'], 'Person': ['3'] }) - elif node.feats['Variant'] == 'Short': # ho, mu - # The short (clitic) forms do not have PrepCase in Modern Czech - # but Old Czech has also 'jmu' (besides 'jemu' and 'mu'), which - # is also annotated as Variant=Short and PrepCase=Npr. - self.check_adjective_like(node, ['PronType', 'Person'], { + elif re.match(r"^(ho|mu)$", node.form.lower()): + # The short (clitic) forms do not have PrepCase in Modern Czech. + # Old Czech has also 'jmu' (besides 'jemu' and 'mu'); it should + # not have Variant=Short and it should have PrepCase=Npr (the next block). + self.check_adjective_like(node, ['PronType', 'Person', 'Variant'], { 'PronType': ['Prs'], 'Person': ['3'], - 'PrepCase': ['Npr'], 'Variant': ['Short'] }) else: # jeho, něho, jemu, němu, jej, něj, něm, jím, ním, jí, ní, ji, ni, je, ně # Mostly only two gender groups and no animacy: - # Masc,Neut ... jeho, jemu, jej, něm, jím + # Masc,Neut ... jeho, jemu, jmu, jej, něm, jím # Fem ... jí, ji, ní # Neut ... je # No gender in dual and plural: From 89017411c2022f19d88324ff04d1a43bfdc757b5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Oct 2024 08:58:43 +0200 Subject: [PATCH 063/233] Trying to survive node.upos == None. re.match() cannot digest it. --- udapi/block/ud/cs/markfeatsbugs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 91fe8b1b..d17c1b35 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -565,7 +565,7 @@ def process_node(self, node): 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) # VERBS AND AUXILIARIES ################################################ - elif re.match(r'^(VERB|AUX)$', node.upos): + elif node.upos in ['VERB', 'AUX']: # All Czech verbs (and some adjectives and nouns) must have VerbForm. # Almost all verbs have lexical Aspect but we cannot require it # because there are a few biaspectual verbs (e.g. 'analyzovat') that From 41f6c0f15abd283cbc19c2ea6aeb27b3b5faec20 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Oct 2024 09:01:19 +0200 Subject: [PATCH 064/233] Trying to survive node.upos == None. re.match() cannot digest it. --- udapi/block/ud/cs/markfeatsbugs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index d17c1b35..f8f4024c 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -759,7 +759,7 @@ def process_node(self, node): # THE REST: NO FEATURES ################################################ # (OR UNDEFINED UPOS) ################################################## else: - if not re.match(r"^(CCONJ|SCONJ|PART|INTJ|PUNCT|SYM|X)$", node.upos): + if not node.upos in ['CCONJ', 'SCONJ', 'PART', 'INTJ', 'PUNCT', 'SYM', 'X']: self.bug(node, 'UnknownUpos' + node.upos) self.check_allowed_features(node, {}) From f46633fce0eb23cb09a6c7b7bfe2c8ac2ebb5035 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Oct 2024 09:04:46 +0200 Subject: [PATCH 065/233] Trying to survive node.upos == None. --- udapi/block/ud/cs/markfeatsbugs.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index f8f4024c..a0379d36 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -760,7 +760,10 @@ def process_node(self, node): # (OR UNDEFINED UPOS) ################################################## else: if not node.upos in ['CCONJ', 'SCONJ', 'PART', 'INTJ', 'PUNCT', 'SYM', 'X']: - self.bug(node, 'UnknownUpos' + node.upos) + bugmsg = 'UnknownUpos' + if node.upos: + bugmsg += node.upos + self.bug(node, bugmsg) self.check_allowed_features(node, {}) def check_adjective_like(self, node, r0, a0): From f52a355ef1e3246116dbff90ac7a8dd8a180b56c Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Oct 2024 09:10:22 +0200 Subject: [PATCH 066/233] Allow NameType=Nat. --- udapi/block/ud/cs/markfeatsbugs.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index a0379d36..985b0cc8 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -63,14 +63,14 @@ def process_node(self, node): 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'NameType': ['Giv', 'Sur', 'Geo'], + 'NameType': ['Giv', 'Sur', 'Geo', 'Nat'], 'Foreign': ['Yes']}) else: self.check_allowed_features(node, { 'Gender': ['Masc', 'Fem', 'Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'NameType': ['Giv', 'Sur', 'Geo'], + 'NameType': ['Giv', 'Sur', 'Geo', 'Nat'], 'Foreign': ['Yes']}) # ADJECTIVES ########################################################### elif node.upos == 'ADJ': @@ -84,7 +84,7 @@ def process_node(self, node): 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'NameType': ['Giv', 'Sur'], # for possessive adjectives derived from personal names + 'NameType': ['Giv', 'Sur', 'Nat'], # for possessive adjectives derived from personal names 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: @@ -95,7 +95,7 @@ def process_node(self, node): 'Gender': ['Masc', 'Fem', 'Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'NameType': ['Giv', 'Sur'], # for possessive adjectives derived from personal names + 'NameType': ['Giv', 'Sur', 'Nat'], # for possessive adjectives derived from personal names 'Emph': ['Yes'], 'Foreign': ['Yes']}) elif node.feats['NumType'] == 'Ord' or node.feats['NumType'] == 'Mult': # ordinal numerals are a subtype of adjectives; same for some multiplicative numerals (dvojí, trojí) From 485ae6351d3ac4b722e7178add071b4fde11190d Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Tue, 15 Oct 2024 11:10:44 +0200 Subject: [PATCH 067/233] both Node and MWT classes should have x.no_space_after and x.is_mwt() --- udapi/core/mwt.py | 14 ++++++++++++++ udapi/core/node.py | 8 ++++++++ 2 files changed, 22 insertions(+) diff --git a/udapi/core/mwt.py b/udapi/core/mwt.py index 684adfaf..3cc95cac 100644 --- a/udapi/core/mwt.py +++ b/udapi/core/mwt.py @@ -47,6 +47,20 @@ def address(self): """Full (document-wide) id of the multi-word token.""" return self.root.address + '#' + self.ord_range + @staticmethod + def is_mwt(): + """Is this a multi-word token? + + Returns always True. + False is returned only by instances of the Node class. + """ + return True + + @property + def no_space_after(self): + """Boolean property as a shortcut for `node.misc["SpaceAfter"] == "No"`.""" + return self.misc["SpaceAfter"] == "No" + # TODO: node.remove() should check if the node is not part of any MWT # TODO: Document that editing words by mwt.words.append(node), del or remove(node) is not supported # TODO: Make mwt._words private and provide a setter diff --git a/udapi/core/node.py b/udapi/core/node.py index 0e746c60..a543678a 100644 --- a/udapi/core/node.py +++ b/udapi/core/node.py @@ -1004,6 +1004,14 @@ def create_coref_entity(self, eid=None, etype=None, **kwargs): entity.create_mention(head=self, **kwargs) return entity + @staticmethod + def is_mwt(): + """Is this a multi-word token? + + Returns False for all Node instances. + True is returned only by instances of the MWT class. + """ + return False class CycleError(Exception): '''A cycle in the dependency tree detected (or would be created).''' From e6c5d1ba9ca475e97e4d4194906d0edf0779be8a Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Oct 2024 12:41:38 +0200 Subject: [PATCH 068/233] Old Czech determiner "jho". --- udapi/block/ud/cs/markfeatsbugs.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 985b0cc8..b9ba4cdb 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -225,8 +225,9 @@ def process_node(self, node): }) elif re.match(r"^(ho|mu)$", node.form.lower()): # The short (clitic) forms do not have PrepCase in Modern Czech. - # Old Czech has also 'jmu' (besides 'jemu' and 'mu'); it should - # not have Variant=Short and it should have PrepCase=Npr (the next block). + # Old Czech has also 'jmu' (besides 'jemu' and 'mu') and 'jho' + # (besides 'jeho' and 'ho'); it should not have Variant=Short + # and it should have PrepCase=Npr (the next block). self.check_adjective_like(node, ['PronType', 'Person', 'Variant'], { 'PronType': ['Prs'], 'Person': ['3'], @@ -234,7 +235,7 @@ def process_node(self, node): }) else: # jeho, něho, jemu, němu, jej, něj, něm, jím, ním, jí, ní, ji, ni, je, ně # Mostly only two gender groups and no animacy: - # Masc,Neut ... jeho, jemu, jmu, jej, něm, jím + # Masc,Neut ... jeho, jho, jemu, jmu, jej, něm, jím # Fem ... jí, ji, ní # Neut ... je # No gender in dual and plural: @@ -336,7 +337,7 @@ def process_node(self, node): elif node.upos == 'DET': # Possessive determiners 'jeho' and 'jejich' (formerly 'jich') do not inflect, i.e., no Gender, Number, Case. # Note that the possessive determiner 'její' (formerly 'jejie') does inflect, although it also has the lemma 'jeho'. - if re.match(r'^(jeho|jejich|jich)$', node.form.lower()): + if re.match(r'^(je?ho|jejich|jich)$', node.form.lower()): self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]']) self.check_allowed_features(node, { 'PronType': ['Prs'], From 4df8bdf78e2026e7628ce3312885ccdc76f80e16 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Oct 2024 17:25:37 +0200 Subject: [PATCH 069/233] =?UTF-8?q?Updated=20rules=20for=20the=20Czech=20p?= =?UTF-8?q?ronouns=20"jen=C5=BE",=20"jen=C5=BEto",=20"je=C5=A1to".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index b9ba4cdb..8d5ea022 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -289,6 +289,9 @@ def process_node(self, node): # Unlike 'jenžto', this relative pronoun does not inflect, it # always occurs in a nominative position, but the context can # be any gender and number. + # Update from the Hičkok project: 'ješto' is lemmatized to + # 'jenžto' (see below), meaning that this branch should not be + # needed for the new data. self.check_required_features(node, ['PronType', 'Case']) self.check_allowed_features(node, { 'PronType': ['Rel'], @@ -307,10 +310,24 @@ def process_node(self, node): # Unlike 'on', 'jenž' has the feature PrepCase everywhere, even # in the nominative, although there is no prepositional counter- # part (but similarly the locative has no prepositionless form). - self.check_adjective_like(node, ['PronType', 'PrepCase'], { - 'PronType': ['Rel'], - 'PrepCase': ['Npr', 'Pre'] - }) + # Update from the Hičkok project: In Old Czech, both 'jenž' and + # 'jenžto' (or its variant 'ješto') can be used uninflected, + # accompanied by a resumptive pronoun which provides the inflection. + # In this case, the Hičkok data will not annotate Gender, Animacy, + # Number and Case of the relative pronoun. Therefore, we require + # the full set of features if any of them is present; otherwise, + # we only expect PronType and PrepCase. + if node.feats['Gender'] != '' or node.feats['Animacy'] != '' or node.feats['Number'] != '' or node.feats['Case'] != '': + self.check_adjective_like(node, ['PronType', 'PrepCase'], { + 'PronType': ['Rel'], + 'PrepCase': ['Npr', 'Pre'] + }) + else: + self.check_required_features(node, ['PronType', 'PrepCase']) + self.check_allowed_features(node, { + 'PronType': ['Rel'], + 'PrepCase': ['Npr'] + }) else: # What remains is the relative pronoun 'an'. It behaves similarly # to 'jenž' but it does not have the PrepCase feature and it From d9c43c2069b0ad23287566e9349df3afc7571e74 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 16 Oct 2024 11:00:58 +0200 Subject: [PATCH 070/233] New block to join two neighboring tokens without a space between them. --- tutorial/udapi-tutorial-dz.odt | Bin 185047 -> 201247 bytes tutorial/udapi-tutorial-dz.pdf | Bin 236726 -> 334412 bytes udapi/block/ud/jointoken.py | 97 +++++++++++++++++++++++++++++++ udapi/block/util/joinsentence.py | 2 +- 4 files changed, 98 insertions(+), 1 deletion(-) create mode 100644 udapi/block/ud/jointoken.py diff --git a/tutorial/udapi-tutorial-dz.odt b/tutorial/udapi-tutorial-dz.odt index b3e8e9f0937e431c9a2e3a6cf3c38730ff104673..aba91234a8f850276b647e58bfb7810fc6d422be 100644 GIT binary patch delta 60441 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 z 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 delta 44131 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 O-+t>om4-l@-+)Fy06?`%$AWaKVic4Y)>^ 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 JW3MF+_PHt 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 gU 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 V!#aeuGm$D^WGP@TvN?x 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%0D&$1%DstC?PbjjcPx~{dVhC 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 YF2=W94m)xv42Hy@NO*Z=Rpm(jKR0;**8l(j diff --git a/udapi/block/ud/jointoken.py b/udapi/block/ud/jointoken.py new file mode 100644 index 00000000..43d2b30d --- /dev/null +++ b/udapi/block/ud/jointoken.py @@ -0,0 +1,97 @@ +""" +Block ud.JoinToken will join a given token with the preceding one. +""" +from udapi.core.block import Block +import logging + + +class JoinToken(Block): + """ + Merge two tokens into one. A MISC attribute is used to mark the tokens that + should join the preceding token. (The attribute may have been set by an + annotator or by a previous block that tests the specific conditions under + which joining is desired.) Joining cannot be done across sentence + boundaries; if necessary, apply util.JoinSentence first. Multiword tokens + are currently not supported: None of the nodes to be merged can belong to + a MWT. (The block ud.JoinAsMwt may be of some help, but it works differently.) + Merging is simple if there is no space between the tokens (see SpaceAfter=No + at the first token). If there is a space, there are three options in theory: + + 1. Keep the tokens as two nodes but apply the UD goeswith relation + (see https://universaldependencies.org/u/overview/typos.html) and + the related annotation rules. + 2. Join them into one token that contains a space. Such "words with + spaces" can be exceptionally allowed in UD if they are registered + in the given language. + 3. Remove the space without any trace. Not recommended in UD unless the + underlying text was created directly for UD and can be thus considered + part of the annotation. + + At present, this block does not support merging with spaces at all, but + in the future one or more of the options may be added. + """ + + def __init__(self, misc_name='JoinToken', misc_value=None, **kwargs): + """ + Args: + misc_name: name of the MISC attribute that can trigger the joining + default: JoinToken + misc_value: value of the MISC attribute to trigger the joining; + if not specified, then simple occurrence of the attribute with any value will cause the joining + MISC attributes that have triggered sentence joining will be removed from their node. + """ + super().__init__(**kwargs) + self.misc_name = misc_name + self.misc_value = misc_value + + def process_node(self, node): + """ + The JoinToken (or equivalent) attribute in MISC will trigger action. + Either the current node will be merged with the previous node and the + attribute will be removed from MISC, or a warning will be issued that + the merging cannot be done and the attribute will stay in MISC. Note + that multiword token lines and empty nodes are not even scanned for + the attribute, so if it is there, it will stay there but no warning + will be printed. + """ + if node.misc[self.misc_name] == '': + return + if self.misc_value and node.misc[self.misc_name] != self.misc_value: + return + prevnode = node.prev_node + if not prevnode: + logging.warning("MISC %s cannot be used at the first token of a sentence." % self.misc_name) + node.misc['Bug'] = 'JoiningTokenNotSupportedHere' + return + if node.multiword_token or prevnode.multiword_token: + logging.warning("MISC %s cannot be used if one of the nodes belongs to a multiword token." % self.misc_name) + node.misc['Bug'] = 'JoiningTokenNotSupportedHere' + return + if prevnode.misc['SpaceAfter'] != 'No': + logging.warning("MISC %s cannot be used if there is space between the tokens." % self.misc_name) + node.misc['Bug'] = 'JoiningTokensWithSpaceNotSupported' + return + ###!!! This block currently must not be applied on data containing + ###!!! enhanced dependencies. We must first implement adjustments of + ###!!! the enhanced structure. + if prevnode.deps or node.deps: + logging.fatal('At present this block cannot be applied to data with enhanced dependencies.') + # If the first token depends on the second token, re-attach it to the + # second token's parent to prevent cycles. + if prevnode in node.descendants: + prevnode.parent = node.parent + prevnode.deprel = node.deprel + # Re-attach all children of the second token to the first token. + for c in node.children: + c.parent = prevnode + # Concatenate the word forms of the two tokens. Assume that morphological + # annotation, including the lemma, is already updated accordingly (we + # cannot guess it anyway). + prevnode.form += node.form + # Remove SpaceAfter=No from the first token unless the second token has + # this attribute, too (meaning that there is no space between the second + # token and whatever comes next). + prevnode.misc['SpaceAfter'] = node.misc['SpaceAfter'] + # Remove the current node. The joining instruction was in its MISC, so + # it will disappear together with the node. + node.remove() diff --git a/udapi/block/util/joinsentence.py b/udapi/block/util/joinsentence.py index e52f0e8e..d83ba1c3 100644 --- a/udapi/block/util/joinsentence.py +++ b/udapi/block/util/joinsentence.py @@ -1,5 +1,5 @@ """ -Block util.SplitSentence will split a given sentence at a given token. +Block util.JoinSentence will join a given sentence with the preceding one. """ import logging from udapi.core.block import Block From 92b4b81b6d83e3421248998ca576bb3b026b5315 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 16 Oct 2024 12:51:34 +0200 Subject: [PATCH 071/233] More UPOS-DEPREL fixes. --- udapi/block/ud/fixadvmodbyupos.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index b232e185..b34446ba 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -46,3 +46,8 @@ def process_node(self, node): node.deprel = 'nmod' elif node.upos == 'ADJ': node.deprel = 'amod' + elif node.upos == 'ADV': + node.deprel = 'advmod' + elif node.udeprel == 'nummod': + if node.upos == 'DET': + node.deprel = 'det' From ef742109c5ea6116427aeaefc56ca3116be2d480 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 16 Oct 2024 13:25:53 +0200 Subject: [PATCH 072/233] More UPOS-DEPREL fixes. --- udapi/block/ud/fixadvmodbyupos.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index b34446ba..047e9bd3 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -38,9 +38,15 @@ def process_node(self, node): node.deprel = 'case' elif node.upos == 'CCONJ': node.deprel = 'cc' + elif node.udeprel in ['aux', 'cop']: + if node.upos != 'AUX': + node.deprel = 'dep' elif node.udeprel == 'mark': - if node.upos == 'PRON': + if node.upos in ['PRON', 'DET']: node.deprel = 'nsubj' # it could be also obj, iobj, obl or nmod; just guessing what might be more probable + elif node.udeprel == 'cc': + if node.upos == 'AUX': + node.deprel = 'aux' elif node.udeprel == 'det': if node.upos == 'NOUN': node.deprel = 'nmod' @@ -51,3 +57,6 @@ def process_node(self, node): elif node.udeprel == 'nummod': if node.upos == 'DET': node.deprel = 'det' + elif node.udeprel == 'punct': + if node.upos != 'PUNCT': + node.deprel = 'dep' From 8670eb4708e390e7e8509916334c2495e5726f99 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 16 Oct 2024 13:37:00 +0200 Subject: [PATCH 073/233] More UPOS-DEPREL fixes. --- udapi/block/ud/fixadvmodbyupos.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index 047e9bd3..d026f4fc 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -54,6 +54,8 @@ def process_node(self, node): node.deprel = 'amod' elif node.upos == 'ADV': node.deprel = 'advmod' + elif node.upos == 'X': + node.deprel = 'dep' elif node.udeprel == 'nummod': if node.upos == 'DET': node.deprel = 'det' From fdb82086efd7451c7206216c3149b9962eed18e7 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 16 Oct 2024 13:38:48 +0200 Subject: [PATCH 074/233] More UPOS-DEPREL fixes. --- udapi/block/ud/fixadvmodbyupos.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index d026f4fc..d5969624 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -41,6 +41,9 @@ def process_node(self, node): elif node.udeprel in ['aux', 'cop']: if node.upos != 'AUX': node.deprel = 'dep' + elif node.udeprel == 'case': + if node.upos == 'DET': + node.deprel = 'det' elif node.udeprel == 'mark': if node.upos in ['PRON', 'DET']: node.deprel = 'nsubj' # it could be also obj, iobj, obl or nmod; just guessing what might be more probable From ff8d302bef64c5c82bc5d9873f11abe57423dc5e Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 16 Oct 2024 14:44:54 +0200 Subject: [PATCH 075/233] Alternative spellings of the "-s" clitic. --- udapi/block/ud/cs/addmwt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 7e7e0fcc..76c5a471 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -139,7 +139,7 @@ def multiword_analysis(self, node): if token_from_subtokens != node.form: logging.warning("Concatenation of MISC 'AddMwt=%s' does not yield the FORM '%s'." % (node.misc['AddMwt'], node.form)) return None - if subtokens[1] == 's': + if re.match(r"^j?s’?$", subtokens[1]): node.misc['AddMwt'] = '' return { 'form': subtokens[0] + ' jsi', From 40347cd9909585a8be3bc63af4fa2e14bd7389ff Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 16 Oct 2024 15:28:26 +0200 Subject: [PATCH 076/233] AddMwt subtokens should respect the forms we will actually generate. --- udapi/block/ud/cs/addmwt.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 76c5a471..63b37416 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -136,9 +136,6 @@ def multiword_analysis(self, node): logging.warning("MISC 'AddMwt=%s' has unexpected number of subtokens." % node.misc['AddMwt']) return None token_from_subtokens = ''.join(subtokens) - if token_from_subtokens != node.form: - logging.warning("Concatenation of MISC 'AddMwt=%s' does not yield the FORM '%s'." % (node.misc['AddMwt'], node.form)) - return None if re.match(r"^j?s’?$", subtokens[1]): node.misc['AddMwt'] = '' return { @@ -152,6 +149,9 @@ def multiword_analysis(self, node): 'shape': 'subtree' if node.upos in ['VERB'] else 'siblings', } if subtokens[1] == 'ť': + if token_from_subtokens != node.form: + logging.warning("Concatenation of MISC 'AddMwt=%s' does not yield the FORM '%s'." % (node.misc['AddMwt'], node.form)) + return None node.misc['AddMwt'] = '' return { 'form': node.form.lower()[:-1] + ' ť', From 3f612f8ab09d95ee1b6aace6770573baaab275ad Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 16 Oct 2024 15:33:25 +0200 Subject: [PATCH 077/233] Bug fix. --- udapi/block/ud/cs/addmwt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 63b37416..08af7aee 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -136,7 +136,7 @@ def multiword_analysis(self, node): logging.warning("MISC 'AddMwt=%s' has unexpected number of subtokens." % node.misc['AddMwt']) return None token_from_subtokens = ''.join(subtokens) - if re.match(r"^j?s’?$", subtokens[1]): + if subtokens[1] == 'jsi': node.misc['AddMwt'] = '' return { 'form': subtokens[0] + ' jsi', From 311b21ca53e0aad1538e017ee8bb2dbde0de03ec Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 16 Oct 2024 15:54:02 +0200 Subject: [PATCH 078/233] =?UTF-8?q?Krom=C4=9B=20"p=C5=99=C4=9Bde=C5=88"=20?= =?UTF-8?q?se=20vyskytlo=20i=20"p=C5=99=C4=9Bden".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/addmwt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 08af7aee..2be462d2 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -70,7 +70,7 @@ def multiword_analysis(self, node): # Note that we do this before looking at AddMwt in MISC because the code # below that looks there will require that the parts can be concatenated, # and that does not work for pronouns (skirzě + nějž != skirzěňž). - m = re.match(r"^(na|o|pro|přěde|ski?rz[eě]|za)ň(ž?)$", node.form.lower()) + m = re.match(r"^(na|o|pro|přěde|ski?rz[eě]|za)[nň](ž?)$", node.form.lower()) if m: node.misc['AddMwt'] = '' # Remove vocalization from 'přěde' (přěd něj) but keep it in 'skrze' From b2a0081aee843ee07c7cc3a038f683ba522b25eb Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 16 Oct 2024 16:02:22 +0200 Subject: [PATCH 079/233] =?UTF-8?q?Splitting=20of=20"p=C5=99=C4=9Bden"=20s?= =?UTF-8?q?hould=20not=20trigger=20splitting=20of=20"on".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/addmwt.py | 126 ++++++++++++++++++------------------ 1 file changed, 63 insertions(+), 63 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 2be462d2..3cb6169f 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -62,69 +62,6 @@ def multiword_analysis(self, node): analysis = MWTS.get(node.form.lower(), None) if analysis is not None: return analysis - # Contractions of prepositions and pronouns will be processed regardless - # of AddMwt instructions by the annotator. These rules are dynamic because - # the pronoun could be masculine or neuter. We pick Gender=Masc and - # Animacy=Anim by default, unless the original token was annotated as - # Animacy=Inan or Gender=Neut. - # Note that we do this before looking at AddMwt in MISC because the code - # below that looks there will require that the parts can be concatenated, - # and that does not work for pronouns (skirzě + nějž != skirzěňž). - m = re.match(r"^(na|o|pro|přěde|ski?rz[eě]|za)[nň](ž?)$", node.form.lower()) - if m: - node.misc['AddMwt'] = '' - # Remove vocalization from 'přěde' (přěd něj) but keep it in 'skrze' - # (skrze něj). - if m.group(1) == 'přěde': - pform = 'přěd' - plemma = 'před' - adptype = 'Voc' - at = 'V' - elif re.match(r"^ski?rz[eě]$", m.group(1).lower()): - pform = m.group(1) - plemma = 'skrz' - adptype = 'Voc' - at = 'V' - else: - pform = m.group(1) - plemma = m.group(1) - adptype = 'Prep' - at = 'R' - # In UD PDT, Gender=Masc,Neut, and in PDT it is PEZS4--3 / P4ZS4---. - if node.feats['Gender'] == 'Neut': - gender = 'Neut' - animacy = '' - g = 'N' - elif node.feats['Animacy'] == 'Inan': - gender = 'Masc' - animacy = 'Animacy=Inan|' - g = 'I' - else: - gender = 'Masc' - animacy = 'Animacy=Anim|' - g = 'M' - if m.group(2).lower() == 'ž': - return { - 'form': pform + ' nějž', - 'lemma': plemma + ' jenž', - 'upos': 'ADP PRON', - 'xpos': 'R'+at+'--4---------- P4'+g+'S4---------2', - 'feats': 'AdpType='+adptype+'|Case=Acc '+animacy+'Case=Acc|Gender='+gender+'|Number=Sing|PrepCase=Pre|PronType=Rel', - 'deprel': 'case *', - 'main': 1, - 'shape': 'subtree', - } - else: - return { - 'form': pform + ' něj', - 'lemma': plemma + ' on', - 'upos': 'ADP PRON', - 'xpos': 'R'+at+'--4---------- PE'+g+'S4--3-------', - 'feats': 'AdpType='+adptype+'|Case=Acc '+animacy+'Case=Acc|Gender='+gender+'|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', - 'deprel': 'case *', - 'main': 1, - 'shape': 'subtree', - } # If the node did not match any of the static rules defined in MWTS, # check it against the "dynamic" rules below. The enclitic 'ť' will be # separated from its host but only if it has been marked by an annotator @@ -163,6 +100,69 @@ def multiword_analysis(self, node): 'main': 0, 'shape': 'subtree', } + # Contractions of prepositions and pronouns almost could be processed + # regardless of AddMwt instructions by the annotator, but we still + # require it to be on the safe side. For example, both 'přědeň' and + # 'přěden' are attested in Old Czech but then we do not want to catch + # 'on' (besides the wanted 'oň'). Another reason si that the pronoun + # could be masculine or neuter. We pick Gender=Masc and Animacy=Anim + # by default, unless the original token was annotated as Animacy=Inan + # or Gender=Neut. + m = re.match(r"^(na|o|pro|přěde|ski?rz[eě]|za)[nň](ž?)$", node.form.lower()) + if m: + node.misc['AddMwt'] = '' + # Remove vocalization from 'přěde' (přěd něj) but keep it in 'skrze' + # (skrze něj). + if m.group(1) == 'přěde': + pform = 'přěd' + plemma = 'před' + adptype = 'Voc' + at = 'V' + elif re.match(r"^ski?rz[eě]$", m.group(1).lower()): + pform = m.group(1) + plemma = 'skrz' + adptype = 'Voc' + at = 'V' + else: + pform = m.group(1) + plemma = m.group(1) + adptype = 'Prep' + at = 'R' + # In UD PDT, Gender=Masc,Neut, and in PDT it is PEZS4--3 / P4ZS4---. + if node.feats['Gender'] == 'Neut': + gender = 'Neut' + animacy = '' + g = 'N' + elif node.feats['Animacy'] == 'Inan': + gender = 'Masc' + animacy = 'Animacy=Inan|' + g = 'I' + else: + gender = 'Masc' + animacy = 'Animacy=Anim|' + g = 'M' + if m.group(2).lower() == 'ž': + return { + 'form': pform + ' nějž', + 'lemma': plemma + ' jenž', + 'upos': 'ADP PRON', + 'xpos': 'R'+at+'--4---------- P4'+g+'S4---------2', + 'feats': 'AdpType='+adptype+'|Case=Acc '+animacy+'Case=Acc|Gender='+gender+'|Number=Sing|PrepCase=Pre|PronType=Rel', + 'deprel': 'case *', + 'main': 1, + 'shape': 'subtree', + } + else: + return { + 'form': pform + ' něj', + 'lemma': plemma + ' on', + 'upos': 'ADP PRON', + 'xpos': 'R'+at+'--4---------- PE'+g+'S4--3-------', + 'feats': 'AdpType='+adptype+'|Case=Acc '+animacy+'Case=Acc|Gender='+gender+'|Number=Sing|Person=3|PrepCase=Pre|PronType=Prs', + 'deprel': 'case *', + 'main': 1, + 'shape': 'subtree', + } return None def postprocess_mwt(self, mwt): From d6bd83b0b84416ae47ce03f2f4993294fa0b1da3 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Mon, 21 Oct 2024 17:17:23 +0200 Subject: [PATCH 080/233] UDPipe should not add SpaceAfter=No to the last token in a document because such conllu would not pass the validation by validate.py --- udapi/tool/udpipeonline.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/tool/udpipeonline.py b/udapi/tool/udpipeonline.py index 23971f53..206719f5 100644 --- a/udapi/tool/udpipeonline.py +++ b/udapi/tool/udpipeonline.py @@ -150,10 +150,10 @@ def process_document(self, doc, tokenize=True, tag=True, parse=True, resegment=F # assert(len(bundle.trees) == 1) # in_trees.append(bundle.trees[0]) if tokenize: - params["data"] = "\n".join(root.text for root in doc.trees) + params["data"] = "\n".join(root.text for root in doc.trees) + "\n" else: params["input"] = "horizontal" - params["data"] = "\n".join(" ".join([n.form for n in root.descendants]) for root in doc.trees) + params["data"] = "\n".join(" ".join([n.form for n in root.descendants]) for root in doc.trees) + "\n" out_data = self.perform_request(params=params) conllu_reader = ConlluReader(empty_parent="ignore") From e7e07bdabe5b5a83527f7e00be55e664785f29b6 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Wed, 23 Oct 2024 15:30:20 +0200 Subject: [PATCH 081/233] util.Normalize sent_id_from_filename=1 sent_id_reset_at_newdoc=1 newdoc_from_filename=1 --- udapi/block/util/normalize.py | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/udapi/block/util/normalize.py b/udapi/block/util/normalize.py index b150d551..4cce4ab8 100644 --- a/udapi/block/util/normalize.py +++ b/udapi/block/util/normalize.py @@ -1,9 +1,10 @@ """util.Normalize normalizes the ordering of various attributes in CoNLL-U.""" from udapi.core.block import Block +from pathlib import Path class Normalize(Block): """Normalize the ordering of attributes in the FEATS and MISC columns. - + The attribute-value pairs in the FEATS column in CoNLL-U files must be sorted alphabetically (case-insensitive) according to the guidelines (https://universaldependencies.org/format.html#morphological-annotation). @@ -20,7 +21,8 @@ class Normalize(Block): util.Eval node='node.misc["NonExistentAttribute"] = None' """ - def __init__(self, feats=True, misc=True, sent_id=False, empty_node_ord=False, start_sent_id=1, sent_id_prefix="", **kwargs): + def __init__(self, feats=True, misc=True, sent_id=False, empty_node_ord=False, start_sent_id=1, sent_id_prefix="", + sent_id_from_filename=False, sent_id_reset_at_newdoc=False, newdoc_from_filename=False, **kwargs): """ Args: `feats`: normalize the ordering of FEATS. Default=True. @@ -29,6 +31,9 @@ def __init__(self, feats=True, misc=True, sent_id=False, empty_node_ord=False, s `empty_node_ord`: normalize ord attributes of empty nodes. Default=False. `start_sent_id`: the first sent_id number `sent_id_prefix`: a string to be prepended before the integer sent_id. Default=empty string. + `sent_id_from_filename`: add Path(doc.meta["loaded_from"]).stem before the `sent_id_prefix`. Default=False. + `sent_id_reset_at_newdoc`: reset the sent_id counter to 1 for each new document. Default=False. + `newdoc_from_filename`: set newdoc to Path(doc.meta["loaded_from"]).stem. Default=False. """ super().__init__(**kwargs) self.feats = feats @@ -37,13 +42,28 @@ def __init__(self, feats=True, misc=True, sent_id=False, empty_node_ord=False, s self.empty_node_ord = empty_node_ord self.next_sent_id = start_sent_id self.sent_id_prefix = sent_id_prefix - if sent_id_prefix or start_sent_id != 1: + self.sent_id_from_filename = sent_id_from_filename + self.sent_id_reset_at_newdoc = sent_id_reset_at_newdoc + self.newdoc_from_filename = newdoc_from_filename + if sent_id_reset_at_newdoc and not sent_id_from_filename: + raise ValueError("Cannot use sent_id_reset_at_newdoc without sent_id_from_filename") + if sent_id_prefix or start_sent_id != 1 or sent_id_from_filename: self.sent_id = True + # TODO: normalize also the order of standardized comments like text, sent_id,... def process_bundle(self, bundle): + is_newdoc = any(tree.newdoc for tree in bundle.trees) + if self.newdoc_from_filename and is_newdoc: + tree = next(tree for tree in bundle.trees if tree.newdoc) + tree.newdoc = Path(bundle.document.meta["loaded_from"]).stem if self.sent_id: - bundle.bundle_id = self.sent_id_prefix + str(self.next_sent_id) + if self.sent_id_reset_at_newdoc and is_newdoc: + self.next_sent_id = 1 + prefix = self.sent_id_prefix + if self.sent_id_from_filename: + prefix = Path(bundle.document.meta["loaded_from"]).stem + prefix + bundle.bundle_id = prefix + str(self.next_sent_id) self.next_sent_id += 1 for tree in bundle: From 7c8aa2598e287d40221f6a2562a204ee64dd37c5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 23 Oct 2024 17:37:21 +0200 Subject: [PATCH 082/233] More fixes. --- udapi/block/ud/fixadvmodbyupos.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index d5969624..78cf7561 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -47,9 +47,13 @@ def process_node(self, node): elif node.udeprel == 'mark': if node.upos in ['PRON', 'DET']: node.deprel = 'nsubj' # it could be also obj, iobj, obl or nmod; just guessing what might be more probable + elif node.upos == 'INTJ': + node.deprel = 'discourse' elif node.udeprel == 'cc': if node.upos == 'AUX': node.deprel = 'aux' + elif node.upos == 'INTJ': + node.deprel = 'discourse' elif node.udeprel == 'det': if node.upos == 'NOUN': node.deprel = 'nmod' @@ -57,6 +61,8 @@ def process_node(self, node): node.deprel = 'amod' elif node.upos == 'ADV': node.deprel = 'advmod' + elif node.upos == 'AUX': + node.deprel = 'aux' elif node.upos == 'X': node.deprel = 'dep' elif node.udeprel == 'nummod': From be36c70f8ab59fb01626d8485fd6470999be9395 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 23 Oct 2024 17:43:17 +0200 Subject: [PATCH 083/233] More fixes. --- udapi/block/ud/fixadvmodbyupos.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index 78cf7561..63ab6bea 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -63,6 +63,8 @@ def process_node(self, node): node.deprel = 'advmod' elif node.upos == 'AUX': node.deprel = 'aux' + elif node.upos == 'VERB': + node.deprel = 'dep' elif node.upos == 'X': node.deprel = 'dep' elif node.udeprel == 'nummod': From 098711f6a4738eb7f6fc7e09a307b3060e084743 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 23 Oct 2024 17:54:46 +0200 Subject: [PATCH 084/233] abychme --- udapi/block/ud/cs/addmwt.py | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 3cb6169f..a4f21b5c 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -5,16 +5,19 @@ # Define static rules for 'aby', 'kdyby' and similar forms. MWTS = { - 'abych': {'form': 'aby bych', 'feats': '_ Mood=Cnd|Number=Sing|Person=1|VerbForm=Fin'}, - 'kdybych': {'form': 'když bych', 'feats': '_ Mood=Cnd|Number=Sing|Person=1|VerbForm=Fin'}, - 'abys': {'form': 'aby bys', 'feats': '_ Mood=Cnd|Number=Sing|Person=2|VerbForm=Fin'}, - 'kdybys': {'form': 'když bys', 'feats': '_ Mood=Cnd|Number=Sing|Person=2|VerbForm=Fin'}, - 'aby': {'form': 'aby by', 'feats': '_ Mood=Cnd|VerbForm=Fin'}, - 'kdyby': {'form': 'když by', 'feats': '_ Mood=Cnd|VerbForm=Fin'}, - 'abychom': {'form': 'aby bychom', 'feats': '_ Mood=Cnd|Number=Plur|Person=1|VerbForm=Fin'}, - 'kdybychom': {'form': 'když bychom', 'feats': '_ Mood=Cnd|Number=Plur|Person=1|VerbForm=Fin'}, - 'abyste': {'form': 'aby byste', 'feats': '_ Mood=Cnd|Number=Plur|Person=2|VerbForm=Fin'}, - 'kdybyste': {'form': 'když byste', 'feats': '_ Mood=Cnd|Number=Plur|Person=2|VerbForm=Fin'}, + 'abych': {'form': 'aby bych', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Sing|Person=1|VerbForm=Fin'}, + 'kdybych': {'form': 'když bych', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Sing|Person=1|VerbForm=Fin'}, + 'abys': {'form': 'aby bys', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Sing|Person=2|VerbForm=Fin'}, + 'kdybys': {'form': 'když bys', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Sing|Person=2|VerbForm=Fin'}, + 'aby': {'form': 'aby by', 'feats': '_ Aspect=Imp|Mood=Cnd|VerbForm=Fin'}, + 'kdyby': {'form': 'když by', 'feats': '_ Aspect=Imp|Mood=Cnd|VerbForm=Fin'}, + 'abychom': {'form': 'aby bychom', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Plur|Person=1|VerbForm=Fin'}, + 'kdybychom': {'form': 'když bychom', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Plur|Person=1|VerbForm=Fin'}, + # Old Czech 'abychme' == Modern Czech 'abychom' + 'abychme': {'form': 'aby bychme', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Plur|Person=1|VerbForm=Fin'}, + 'kdybychme': {'form': 'když bychme', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Plur|Person=1|VerbForm=Fin'}, + 'abyste': {'form': 'aby byste', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Plur|Person=2|VerbForm=Fin'}, + 'kdybyste': {'form': 'když byste', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Plur|Person=2|VerbForm=Fin'}, } for v in MWTS.values(): v['upos'] = 'SCONJ AUX' From a3145e8c9930e0d076c128e8304b3bfea435dfce Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 23 Oct 2024 22:09:28 +0200 Subject: [PATCH 085/233] =?UTF-8?q?"=C4=8D=C3=AD"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 8d5ea022..0ec8cb28 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -476,7 +476,7 @@ def process_node(self, node): 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) - elif node.feats['Poss'] == 'Yes': # 'můj', 'tvůj', 'svůj' + elif re.match(r'^(můj|tvůj|svůj)$', node.lemma): if node.feats['Reflex'] == 'Yes': self.check_adjective_like(node, ['PronType', 'Poss', 'Reflex'], { 'PronType': ['Prs'], @@ -490,6 +490,11 @@ def process_node(self, node): 'Person': ['1', '2'], 'Number[psor]': ['Sing', 'Plur'] }) + elif node.lemma == 'čí': + self.check_adjective_like(node, ['PronType', 'Poss'], { + 'PronType': ['Int', 'Rel'], + 'Poss': ['Yes'] + }) elif re.match(r'^(sám|samý)$', node.lemma): # The above condition looks at both lemma options, although only one lemma is assumed. # However, in New Czech data the one lemma is "samý" while in Old Czech data it is "sám". From e8f5191cec89f22ae0d4af92d7becf74acbf5635 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 23 Oct 2024 22:29:31 +0200 Subject: [PATCH 086/233] =?UTF-8?q?More=20derivatives=20of=20"=C4=8D=C3=AD?= =?UTF-8?q?".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 0ec8cb28..0ad0b30f 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -490,9 +490,9 @@ def process_node(self, node): 'Person': ['1', '2'], 'Number[psor]': ['Sing', 'Plur'] }) - elif node.lemma == 'čí': + elif re.match(r'^(ně|lec|ni)?číž?(koliv?)?$', node.lemma): self.check_adjective_like(node, ['PronType', 'Poss'], { - 'PronType': ['Int', 'Rel'], + 'PronType': ['Int', 'Rel', 'Ind', 'Neg'], 'Poss': ['Yes'] }) elif re.match(r'^(sám|samý)$', node.lemma): From 2efdcdb306e670a3eaaf25749b3d14905d4004b3 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 23 Oct 2024 22:41:24 +0200 Subject: [PATCH 087/233] =?UTF-8?q?co=C5=BEkoli,=20j=C3=ADch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 0ad0b30f..77b76a6e 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -268,7 +268,7 @@ def process_node(self, node): 'Animacy': ['Anim'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Loc', 'Ins'] }) - elif re.match(r'^(co|což|něco|lečco|lecco|nic|nicož)$', node.lemma): + elif re.match(r'^(co|což|což?koliv?|něco|lečco|lecco|nic|nicož)$', node.lemma): # Although these pronouns behave by default as neuter singular, # no Gender and Number is annotated. However, quite unusually, # there is Animacy=Inan without Gender. @@ -354,7 +354,7 @@ def process_node(self, node): elif node.upos == 'DET': # Possessive determiners 'jeho' and 'jejich' (formerly 'jich') do not inflect, i.e., no Gender, Number, Case. # Note that the possessive determiner 'její' (formerly 'jejie') does inflect, although it also has the lemma 'jeho'. - if re.match(r'^(je?ho|jejich|jich)$', node.form.lower()): + if re.match(r'^(je?ho|jejich|j[ií]ch)$', node.form.lower()): self.check_required_features(node, ['PronType', 'Poss', 'Person', 'Number[psor]']) self.check_allowed_features(node, { 'PronType': ['Prs'], @@ -372,7 +372,7 @@ def process_node(self, node): }) # Relative possessive determiners 'jehož' and 'jejichž' behave similarly # to the personal possessive determiners but they do not have Person. - elif re.match(r'^(jeho|jejich|jich)ž(e|to)?$', node.form.lower()): + elif re.match(r'^(jeho|jejich|j[ií]ch)ž(e|to)?$', node.form.lower()): self.check_required_features(node, ['PronType', 'Poss', 'Number[psor]']) self.check_allowed_features(node, { 'PronType': ['Rel'], From 4f9493c72dd81afedea48a0253a142f810455f90 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 23 Oct 2024 22:59:25 +0200 Subject: [PATCH 088/233] More fixes. --- udapi/block/ud/fixadvmodbyupos.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index 63ab6bea..5debcd8c 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -68,7 +68,9 @@ def process_node(self, node): elif node.upos == 'X': node.deprel = 'dep' elif node.udeprel == 'nummod': - if node.upos == 'DET': + if node.upos == 'PRON': + node.deprel = 'nmod' + elif node.upos == 'DET': node.deprel = 'det' elif node.udeprel == 'punct': if node.upos != 'PUNCT': From 41e915ab717c2269ef47b146b1f9c594f1e7d01e Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Thu, 31 Oct 2024 13:52:29 +0100 Subject: [PATCH 089/233] Run.execute() returns the block instances --- udapi/core/run.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/udapi/core/run.py b/udapi/core/run.py index 912c12fc..75d2b935 100644 --- a/udapi/core/run.py +++ b/udapi/core/run.py @@ -200,6 +200,9 @@ def execute(self): for bname, block in blocks: block.process_end() + # Some users may use the block instances (e.g. to retrieve some variables). + return blocks + # TODO: better implementation, included Scen def scenario_string(self): """Return the scenario string.""" From 79a3817fad6790aa822cbba8dcf3db2776abd531 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Thu, 31 Oct 2024 17:12:06 +0100 Subject: [PATCH 090/233] allow accessing the F1 score using a property f1 --- udapi/block/eval/f1.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/udapi/block/eval/f1.py b/udapi/block/eval/f1.py index ca5510e4..7ed5cd70 100644 --- a/udapi/block/eval/f1.py +++ b/udapi/block/eval/f1.py @@ -156,6 +156,13 @@ def process_tree(self, tree): self._pred[x] += 1 self._total[x] += 1 + @property + def f1(self): + pred, gold = self.pred or 1, self.gold or 1 # prevent division by zero + precision = self.correct / pred + recall = self.correct / gold + return 2 * precision * recall / ((precision + recall) or 1) + def process_end(self): # Redirect the default filehandle to the file specified by self.files self.before_process_document(None) From 4ec56f736d3c47e26cda36037ac0d113fb4754f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Ka=C5=A1p=C3=A1rek?= <115396156+petrkasp@users.noreply.github.com> Date: Fri, 1 Nov 2024 08:59:42 +0100 Subject: [PATCH 091/233] Split the execute method in Run (#125) --- udapi/core/run.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/udapi/core/run.py b/udapi/core/run.py index 75d2b935..f0cc976e 100644 --- a/udapi/core/run.py +++ b/udapi/core/run.py @@ -165,6 +165,9 @@ def execute(self): # Import blocks (classes) and construct block instances. blocks = _import_blocks(block_names, block_args) + return self.run_blocks(blocks) + + def run_blocks(self, blocks): # Initialize blocks (process_start). for bname, block in blocks: block.process_start() From 95480458606a43db37bb2e26f701770093054819 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 16 Nov 2024 23:52:13 +0100 Subject: [PATCH 092/233] =?UTF-8?q?Trying=20to=20fix=20"=D9=81=D9=90=D9=8A?= =?UTF-8?q?=5F=D8=AD=D9=90=D9=8A=D9=86=D9=8E".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/ar/fixedeprels.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/udapi/block/ud/ar/fixedeprels.py b/udapi/block/ud/ar/fixedeprels.py index ad093e1c..fc411884 100644 --- a/udapi/block/ud/ar/fixedeprels.py +++ b/udapi/block/ud/ar/fixedeprels.py @@ -1,6 +1,5 @@ """Block to fix case-enhanced dependency relations in Arabic.""" from udapi.core.block import Block -import logging import re class FixEdeprels(Block): @@ -21,7 +20,7 @@ class FixEdeprels(Block): 'مِثلَ': [], 'لِأَنَّ': [], 'كَمَا': [], - 'فِي_حِينَ': [], +# 'فِي_حِينَ': [], 'فَ': [] } @@ -552,7 +551,6 @@ def process_node(self, node): for edep in node.deps: m = re.match(r'^(obl(?::arg)?|nmod|advcl|acl(?::relcl)?):', edep['deprel']) if m: - bdeprel = m.group(1) solved = False # Arabic clauses often start with وَ wa "and", which does not add # much to the meaning but sometimes gets included in the enhanced @@ -564,10 +562,12 @@ def process_node(self, node): # If one of the following expressions occurs followed by another preposition # or by morphological case, remove the additional case marking. For example, # 'jako_v' becomes just 'jako'. + re_prefix = r'^(obl(?::arg)?|nmod|advcl|acl(?::relcl)?):' + re_suffix = r'([_:].+)?$' for x in self.outermost: exceptions = self.outermost[x] - m = re.match(r'^(obl(?::arg)?|nmod|advcl|acl(?::relcl)?):'+x+r'([_:].+)?$', edep['deprel']) - if m and m.group(2) and not x+m.group(2) in exceptions: + m = re.match(re_prefix + x + re_suffix, edep['deprel']) + if m and (not m.group(2) or not (x + m.group(2)) in exceptions): edep['deprel'] = m.group(1)+':'+x solved = True break From de0dec4f182e12476f58a7bf8c3f7b81287e6a55 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 17 Nov 2024 00:14:36 +0100 Subject: [PATCH 093/233] =?UTF-8?q?=D9=84=D9=8E=5F=D8=B9=D9=8E=D9=84=D9=8E?= =?UTF-8?q?=D9=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/ar/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/ar/fixedeprels.py b/udapi/block/ud/ar/fixedeprels.py index fc411884..99db7fa2 100644 --- a/udapi/block/ud/ar/fixedeprels.py +++ b/udapi/block/ud/ar/fixedeprels.py @@ -397,6 +397,7 @@ class FixEdeprels(Block): 'كَمَا': 'كَمَا', # remove morphological case; kamā = as 'كَي': 'لِكَي', # kay = in order to 'لَ': 'لِ:gen', + 'لَ_عَلَّ': 'لِ:gen', 'لِ': 'لِ:gen', # li = to 'لِ_أَجَلّ': 'لِ:gen', 'لِ_إِلَى': 'لِ:gen', From d626d4a1cd0c2268abef736478997e9f3794eaa1 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Mon, 18 Nov 2024 19:56:11 +0100 Subject: [PATCH 094/233] util.Eval mwt='print(mwt.form)' --- udapi/block/util/eval.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/udapi/block/util/eval.py b/udapi/block/util/eval.py index df6aaabf..6e4f2ac9 100644 --- a/udapi/block/util/eval.py +++ b/udapi/block/util/eval.py @@ -30,7 +30,7 @@ class Eval(Block): def __init__(self, doc=None, bundle=None, tree=None, node=None, start=None, end=None, before_doc=None, after_doc=None, before_bundle=None, after_bundle=None, coref_mention=None, coref_entity=None, empty_nodes=False, - expand_code=True, **kwargs): + expand_code=True, mwt=None, **kwargs): super().__init__(**kwargs) self.doc = doc self.bundle = bundle @@ -38,6 +38,7 @@ def __init__(self, doc=None, bundle=None, tree=None, node=None, start=None, end= self.node = node self.start = start self.end = end + self.mwt = mwt self.before_doc = before_doc self.after_doc = after_doc self.before_bundle = before_bundle @@ -70,7 +71,7 @@ def process_document(self, document): if self.doc: exec(self.expand_eval_code(self.doc)) - if self.bundle or self.before_bundle or self.after_bundle or self.tree or self.node: + if self.bundle or self.before_bundle or self.after_bundle or self.tree or self.node or self.mwt: for bundle in doc.bundles: # TODO if self._should_process_bundle(bundle): self.process_bundle(bundle) @@ -96,7 +97,7 @@ def process_bundle(self, bundle): if self.bundle: exec(self.expand_eval_code(self.bundle)) - if self.tree or self.node: + if self.tree or self.node or self.mwt: trees = bundle.trees for tree in trees: if self._should_process_tree(tree): @@ -121,6 +122,11 @@ def process_tree(self, tree): this = node exec(self.expand_eval_code(self.node)) + if self.mwt: + for mwt in tree.multiword_tokens: + this = mwt + exec(self.expand_eval_code(self.mwt)) + def process_start(self): if self.start: exec(self.expand_eval_code(self.start)) From b42a18e824c01a54b530982736921ebc77a625db Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 22 Nov 2024 23:23:40 +0100 Subject: [PATCH 095/233] =?UTF-8?q?"a=C5=A5=5Fs:ins"=20-->=20"s:ins"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index f2f76b4b..176962e7 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -1,6 +1,5 @@ """Block to fix case-enhanced dependency relations in Czech.""" from udapi.core.block import Block -import logging import re class FixEdeprels(Block): @@ -37,6 +36,7 @@ class FixEdeprels(Block): 'ačkoliv': 'ačkoli', 'ať': 'ať', # remove morphological case 'ať_forma': 'formou:gen', + 'ať_s': 's:ins', 'ať_v': 'v:loc', 'ať_z': 'z:gen', 'ať_z_strana': 'ze_strany:gen', From 28cf77238c8be0457c5a76e11669a86a663b4d32 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 27 Nov 2024 19:22:49 +0100 Subject: [PATCH 096/233] =?UTF-8?q?"a=C5=A5"=20+=20preposition=20in=20Czec?= =?UTF-8?q?h.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 176962e7..e99c2821 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -36,9 +36,12 @@ class FixEdeprels(Block): 'ačkoliv': 'ačkoli', 'ať': 'ať', # remove morphological case 'ať_forma': 'formou:gen', + 'ať_na': 'na:loc', 'ať_s': 's:ins', 'ať_v': 'v:loc', + 'ať_v_oblast': 'v_oblasti:gen', 'ať_z': 'z:gen', + 'ať_z_hledisko': 'z_hlediska:gen', 'ať_z_strana': 'ze_strany:gen', 'až_do': 'do:gen', 'až_o': 'o:acc', From 0cf278700ecc300cb2d0809dc2d161137f670ee6 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Fri, 22 Nov 2024 01:00:10 +0100 Subject: [PATCH 097/233] "udapy -HM" now always prints all trees in a bundle if any node in any tree in the bundle is marked. So either the whole bundle is printed, or the whole bundle is skipped. The original behavior can be turned on using whole_bundle=0. --- udapi/block/write/textmodetrees.py | 4 ++-- udapi/block/write/textmodetreeshtml.py | 10 ++++++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/udapi/block/write/textmodetrees.py b/udapi/block/write/textmodetrees.py index 41539670..0007205d 100644 --- a/udapi/block/write/textmodetrees.py +++ b/udapi/block/write/textmodetrees.py @@ -244,7 +244,7 @@ def should_print_tree(self, root, allnodes): return False return self.comment_mark_re.search(root.comment) - def process_tree(self, root): + def process_tree(self, root, force_print=False): """Print the tree to (possibly redirected) sys.stdout.""" if self.print_empty: if root.is_root(): @@ -256,7 +256,7 @@ def process_tree(self, root): allnodes.sort() else: allnodes = root.descendants(add_self=1) - if not self.should_print_tree(root, allnodes): + if not force_print and not self.should_print_tree(root, allnodes): return self._index_of = {allnodes[i].ord: i for i in range(len(allnodes))} self.lines = [''] * len(allnodes) diff --git a/udapi/block/write/textmodetreeshtml.py b/udapi/block/write/textmodetreeshtml.py index 5ccceb78..0ad39da4 100644 --- a/udapi/block/write/textmodetreeshtml.py +++ b/udapi/block/write/textmodetreeshtml.py @@ -26,7 +26,7 @@ class TextModeTreesHtml(TextModeTrees): This block is a subclass of `TextModeTrees`, see its documentation for more info. """ - def __init__(self, color=True, title='Udapi visualization', zones_in_rows=True, **kwargs): + def __init__(self, color=True, title='Udapi visualization', zones_in_rows=True, whole_bundle=True, **kwargs): """Create new TextModeTreesHtml block object. Args: see `TextModeTrees`. @@ -35,10 +35,14 @@ def __init__(self, color=True, title='Udapi visualization', zones_in_rows=True, (see the `mark` parameter) to be more eye-catching. title: What title metadata to use for the html? + zones_in_rows: print trees from the same bundle side by side (i.e. in the same row). + whole_bundle: always print the whole bundle (all its trees) if any of the trees is marked + (relevant only with marked_only=True and zones_in_rows=True) """ super().__init__(color=color, **kwargs) self.title = title self.zones_in_rows = zones_in_rows + self.whole_bundle = whole_bundle def before_process_document(self, document): # TextModeTrees.before_process_document changes the color property, @@ -97,10 +101,12 @@ def process_bundle(self, bundle): if self.should_print_tree(tree, allnodes): marked_trees.append(tree) if marked_trees: + if self.whole_bundle: + marked_trees = bundle print("") for tree in marked_trees: print("") print("
") - self.process_tree(tree) + self.process_tree(tree, force_print=True) print("
") else: From 6877b0db27979f55423afdf5007f5deadb723a8e Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Sat, 30 Nov 2024 15:58:34 +0100 Subject: [PATCH 098/233] allow util.See empty=1 --- udapi/block/util/see.py | 7 +++++-- udapi/core/node.py | 8 ++++---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/udapi/block/util/see.py b/udapi/block/util/see.py index aa7131b7..9a895b88 100644 --- a/udapi/block/util/see.py +++ b/udapi/block/util/see.py @@ -51,7 +51,7 @@ class See(Block): """Print statistics about the nodes specified by the parameter `node`.""" - def __init__(self, node, n=5, stats=STATS, **kwargs): + def __init__(self, node, n=5, stats=STATS, empty=False, **kwargs): """Args: `node`: Python expression to be evaluated for each node and if True, the node will be considered "matching". @@ -62,6 +62,7 @@ def __init__(self, node, n=5, stats=STATS, **kwargs): `children` = number of children nodes, `p_lemma` = lemma of a parent node, etc). See `udapi.core.Node.get_attrs` for a full list of statistics. + `empty`: apply the code also on empty nodes """ super().__init__(**kwargs) self.node = node @@ -73,11 +74,13 @@ def __init__(self, node, n=5, stats=STATS, **kwargs): self.match[stat] = Counter() self.every[stat] = Counter() self.overall = Counter() + self.empty = empty def process_tree(self, root): self.overall['trees'] += 1 tree_match = False - for node in root.descendants: + nodes = root.descendants_and_empty if self.empty else root.descendants + for node in nodes: matching = self.process_node(node) self.overall['nodes'] += 1 if matching: diff --git a/udapi/core/node.py b/udapi/core/node.py index a543678a..3897c3a6 100644 --- a/udapi/core/node.py +++ b/udapi/core/node.py @@ -764,21 +764,21 @@ def is_leaf(self): def _get_attr(self, name): # pylint: disable=too-many-return-statements if name == 'dir': - if self._parent.is_root(): + if not self._parent or self._parent.is_root(): return 'root' return 'left' if self.precedes(self._parent) else 'right' if name == 'edge': - if self._parent.is_root(): + if not self._parent or self._parent.is_root(): return 0 return self._ord - self._parent._ord if name == 'children': return len(self._children) if name == 'siblings': - return len(self._parent._children) - 1 + return 0 if not self._parent else len(self._parent._children) - 1 if name == 'depth': value = 0 tmp = self - while not tmp.is_root(): + while tmp and not tmp.is_root(): tmp = tmp._parent value += 1 return value From 7cfcfbed8f7ed766c6c0bfab7f7561d3ac19c15a Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Wed, 4 Dec 2024 17:54:16 +0100 Subject: [PATCH 099/233] don't print underscore attributes from doc.meta tree2docid can be very long, so let's make it an underscore attribute in doc.meta. Now we can use "udapy -TM util.Mark..." on UD_English-GUM files and even if the code uses coreference, the TextModeTrees visualization won't be cluttered by tree2docid mappings. --- udapi/block/write/textmodetrees.py | 3 ++- udapi/core/coref.py | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/udapi/block/write/textmodetrees.py b/udapi/block/write/textmodetrees.py index 0007205d..b39a45b1 100644 --- a/udapi/block/write/textmodetrees.py +++ b/udapi/block/write/textmodetrees.py @@ -353,7 +353,8 @@ def before_process_document(self, document): os.environ["FORCE_COLOR"] = "1" if self.print_doc_meta: for key, value in sorted(document.meta.items()): - print('%s = %s' % (key, value)) + if key[0] != '_': + print('%s = %s' % (key, value)) def _add(self, idx, text): self.lines[idx] += text diff --git a/udapi/core/coref.py b/udapi/core/coref.py index c2ebef2a..c17f239f 100644 --- a/udapi/core/coref.py +++ b/udapi/core/coref.py @@ -331,8 +331,8 @@ def eid(self, new_eid): def eid_or_grp(self): root = self._mentions[0].head.root meta = root.document.meta - if 'GRP' in meta['global.Entity'] and meta['tree2docid']: - docid = meta['tree2docid'][root] + if 'GRP' in meta['global.Entity'] and meta['_tree2docid']: + docid = meta['_tree2docid'][root] if self._eid.startswith(docid): return self._eid.replace(docid, '', 1) else: @@ -551,7 +551,7 @@ def load_coref_from_misc(doc, strict=True): highest_doc_n += 1 docid = f"d{highest_doc_n}." tree2docid[tree] = docid - doc.meta['tree2docid'] = tree2docid + doc.meta['_tree2docid'] = tree2docid elif 'eid' not in global_entity: raise ValueError("No eid in global.Entity = " + global_entity) fields = global_entity.split('-') @@ -758,7 +758,7 @@ def store_coref_to_misc(doc): if not doc._eid_to_entity: return - tree2docid = doc.meta.get('tree2docid') + tree2docid = doc.meta.get('_tree2docid') global_entity = doc.meta.get('global.Entity') if not global_entity: global_entity = 'eid-etype-head-other' From a19c7525937023f6f5800a46e61d0655c01ed82b Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Wed, 4 Dec 2024 18:11:39 +0100 Subject: [PATCH 100/233] more colors for coreference --- udapi/block/write/textmodetrees.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/write/textmodetrees.py b/udapi/block/write/textmodetrees.py index b39a45b1..885f797f 100644 --- a/udapi/block/write/textmodetrees.py +++ b/udapi/block/write/textmodetrees.py @@ -14,6 +14,7 @@ 'upos': 'red', 'deprel': 'blue', 'ord': 'green', + 'misc[Entity]': 'magenta', } # Too many instance variables, arguments, branches... From bd2b9eba2a6cdcf423b05438173a58d9c377caaa Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 7 Dec 2024 21:16:28 +0100 Subject: [PATCH 101/233] Emph=Yes needed with other Czech UPOS. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit inhedž (ADV), viecež (ADV), budž (AUX), všakž (CCONJ) --- udapi/block/ud/cs/markfeatsbugs.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 77b76a6e..6e81672f 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -638,7 +638,8 @@ def process_node(self, node): 'Voice': ['Act'], # optional in Old Czech data, not used with imperatives in Modern Czech data (at least not yet) 'Person': ['1', '2', '3'], # 3rd person imperative occasionally occurs in old Czech (but the form is identical to 2nd person) 'Number': ['Sing', 'Dual', 'Plur'], - 'Polarity': ['Pos', 'Neg'] + 'Polarity': ['Pos', 'Neg'], + 'Emph': ['Yes'] }) else: # indicative self.check_required_features(node, ['Mood', 'Voice', 'Tense', 'Person', 'Number', 'Polarity']) @@ -770,7 +771,8 @@ def process_node(self, node): self.check_required_features(node, ['Degree', 'Polarity']) self.check_allowed_features(node, { 'Degree': ['Pos', 'Cmp', 'Sup'], - 'Polarity': ['Pos', 'Neg'] + 'Polarity': ['Pos', 'Neg'], + 'Emph': ['Yes'] }) # ADPOSITIONS ########################################################## elif node.upos == 'ADP': @@ -779,10 +781,15 @@ def process_node(self, node): 'AdpType': ['Prep', 'Voc'], 'Case': ['Gen', 'Dat', 'Acc', 'Loc', 'Ins'] }) + # COORDINATING CONJUNCTIONS ############################################ + elif node.upos == 'CCONJ': + self.check_allowed_features(node, { + 'Emph': ['Yes'] + }) # THE REST: NO FEATURES ################################################ # (OR UNDEFINED UPOS) ################################################## else: - if not node.upos in ['CCONJ', 'SCONJ', 'PART', 'INTJ', 'PUNCT', 'SYM', 'X']: + if not node.upos in ['SCONJ', 'PART', 'INTJ', 'PUNCT', 'SYM', 'X']: bugmsg = 'UnknownUpos' if node.upos: bugmsg += node.upos From b00fd0e7459c2e43a7ae7b67a92fd20d195805c7 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 7 Dec 2024 22:42:32 +0100 Subject: [PATCH 102/233] =?UTF-8?q?"st=C4=9B":=20Number=3DDual=3F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 6e81672f..f6711502 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -580,11 +580,12 @@ def process_node(self, node): # agreement they trigger on verbs (but they don't have Gender=Neut). # It does not make much sense but we must allow Sing before a better # approach is defined and implemented in the data. + # On the other hand, we may want to allow Dual for "stě". self.check_required_features(node, ['NumType', 'NumForm', 'Number', 'Case']) self.check_allowed_features(node, { 'NumType': ['Card', 'Sets'], 'NumForm': ['Word'], - 'Number': ['Sing', 'Plur'], + 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) # VERBS AND AUXILIARIES ################################################ From 657a72da7a683474bf4715ec94781036adec43f2 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 7 Dec 2024 22:58:54 +0100 Subject: [PATCH 103/233] Old Czech "nikde" can mean "nikdo". --- udapi/block/ud/cs/markfeatsbugs.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index f6711502..bb5622a8 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -255,10 +255,12 @@ def process_node(self, node): 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'Variant': ['Short'] }) - elif re.search(r'k[dt]o', node.lemma): # kdo (kto), kdož, někdo, nikdo + elif re.search(r'k[dt][oe]', node.lemma): # kdo (kto), kdož, někdo, nikdo # There is no Number. Někdo and nikdo behave like singular; # kdo is by default singular as well but it also occurs as subject # of plural verbs ("ti, kdo nepřišli včas, byli vyloučeni"). + # In Old Czech, "nikde" is a variant of the pronoun "nikdo" (nobody) + # (while in New Czech, "nikde" (nowhere) is a pronominal adverb only). # Old Czech data disambiguate Int from Rel (Int is used only in direct questions with; indirect questions like "Ptal ses, kdo to je?" use Rel.) # New Czech data, in particular PDT, use Int,Rel regardless of context. self.check_required_features(node, ['PronType', 'Gender', 'Animacy', 'Case']) From 30a6f3f23bdd4461493ea6885cd2c0d66c5b7117 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 8 Dec 2024 08:55:53 +0100 Subject: [PATCH 104/233] Splitting "myslilaj". --- udapi/block/ud/cs/addmwt.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index a4f21b5c..202579b9 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -88,6 +88,18 @@ def multiword_analysis(self, node): 'main': 0, 'shape': 'subtree' if node.upos in ['VERB'] else 'siblings', } + if subtokens[1] == 'i': + node.misc['AddMwt'] = '' + return { + 'form': subtokens[0] + ' i', + 'lemma': '* i', + 'upos': '* CCONJ', + 'xpos': '* J^-------------', + 'feats': '* _', + 'deprel': '* cc', + 'main': 0, + 'shape': 'subtree', + } if subtokens[1] == 'ť': if token_from_subtokens != node.form: logging.warning("Concatenation of MISC 'AddMwt=%s' does not yield the FORM '%s'." % (node.misc['AddMwt'], node.form)) From 8fcea8096ba07dc8a1cd2c2691a48e0dc10d0447 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 8 Dec 2024 09:18:56 +0100 Subject: [PATCH 105/233] We have not been allowing abbreviations so far? --- udapi/block/ud/cs/markfeatsbugs.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index bb5622a8..f20f9c16 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -782,17 +782,24 @@ def process_node(self, node): self.check_required_features(node, ['AdpType', 'Case']) self.check_allowed_features(node, { 'AdpType': ['Prep', 'Voc'], - 'Case': ['Gen', 'Dat', 'Acc', 'Loc', 'Ins'] + 'Case': ['Gen', 'Dat', 'Acc', 'Loc', 'Ins'], + 'Abbr': ['Yes'] }) # COORDINATING CONJUNCTIONS ############################################ elif node.upos == 'CCONJ': self.check_allowed_features(node, { 'Emph': ['Yes'] }) + # PARTICLES ############################################################ + elif node.upos == 'PART': + # "t." = "totiž" + self.check_allowed_features(node, { + 'Abbr': ['Yes'] + }) # THE REST: NO FEATURES ################################################ # (OR UNDEFINED UPOS) ################################################## else: - if not node.upos in ['SCONJ', 'PART', 'INTJ', 'PUNCT', 'SYM', 'X']: + if not node.upos in ['SCONJ', 'INTJ', 'PUNCT', 'SYM', 'X']: bugmsg = 'UnknownUpos' if node.upos: bugmsg += node.upos From b681e3d450dd33fdffd2cd31f718b141e78aff85 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 8 Dec 2024 10:31:15 +0100 Subject: [PATCH 106/233] High-value Czech numerals have gender. --- udapi/block/ud/cs/markfeatsbugs.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index f20f9c16..9c40d237 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -539,6 +539,7 @@ def process_node(self, node): # 'tři', 'čtyři' have Number=Plur, Case: tři, třech, třem, třemi. # 'pět' and more have Number=Plur, Case: pět, pěti. # 'půl' has no Number and Case, although it behaves syntactically similarly to 'pět' (but genitive is still 'půl', not '*půli'). + # 'sto', 'tisíc', 'milión', 'miliarda' etc. have Gender (+ possibly Animacy) and Number (depending on their form). if node.lemma == 'jeden': self.check_required_features(node, ['NumType', 'NumForm', 'Number', 'Case']) self.check_allowed_features(node, { @@ -576,6 +577,16 @@ def process_node(self, node): 'NumType': ['Card'], 'NumForm': ['Word'] }) + elif re.match(r'^(sto|tisíc|.+ili[oó]n|.+iliarda)$', node.lemma): + self.check_required_features(node, ['NumType', 'NumForm', 'Number', 'Case']) + self.check_allowed_features(node, { + 'NumType': ['Card', 'Sets'], + 'NumForm': ['Word'], + 'Gender': ['Masc', 'Fem', 'Neut'], + 'Animacy': ['Anim', 'Inan'], + 'Number': ['Sing', 'Dual', 'Plur'], + 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] + }) else: # In PDT, cardinal numerals higher than four in nominative/accusative/vocative # have Number=Sing instead of Plur! It may be motivated by the default From 8b55bc95403343b2bdb031d43abf9ce7c74345ae Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 8 Dec 2024 11:05:44 +0100 Subject: [PATCH 107/233] Emph=Yes needed with other Czech UPOS. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit dokudž (SCONJ) --- udapi/block/ud/cs/markfeatsbugs.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 9c40d237..0e97b20f 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -796,6 +796,11 @@ def process_node(self, node): 'Case': ['Gen', 'Dat', 'Acc', 'Loc', 'Ins'], 'Abbr': ['Yes'] }) + # SUBORDINATING CONJUNCTIONS ########################################### + elif node.upos == 'SCONJ': + self.check_allowed_features(node, { + 'Emph': ['Yes'] + }) # COORDINATING CONJUNCTIONS ############################################ elif node.upos == 'CCONJ': self.check_allowed_features(node, { @@ -810,7 +815,7 @@ def process_node(self, node): # THE REST: NO FEATURES ################################################ # (OR UNDEFINED UPOS) ################################################## else: - if not node.upos in ['SCONJ', 'INTJ', 'PUNCT', 'SYM', 'X']: + if not node.upos in ['INTJ', 'PUNCT', 'SYM', 'X']: bugmsg = 'UnknownUpos' if node.upos: bugmsg += node.upos From 3a66df5fbdf9197adcf4a588d132bed27b41deb2 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 8 Dec 2024 11:14:59 +0100 Subject: [PATCH 108/233] More fixes. --- udapi/block/ud/fixadvmodbyupos.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index 5debcd8c..d020b55f 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -52,6 +52,8 @@ def process_node(self, node): elif node.udeprel == 'cc': if node.upos == 'AUX': node.deprel = 'aux' + elif node.upos == 'DET': + node.deprel = 'det' elif node.upos == 'INTJ': node.deprel = 'discourse' elif node.udeprel == 'det': From baf885f1a686c51b0d05628a0af6ba9a616c1e8a Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 10 Dec 2024 13:55:31 +0100 Subject: [PATCH 109/233] Allowing supine in (Old) Czech. --- udapi/block/ud/cs/markfeatsbugs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 0e97b20f..cf0964d2 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -608,14 +608,14 @@ def process_node(self, node): # because there are a few biaspectual verbs (e.g. 'analyzovat') that # do not have the feature. self.check_required_features(node, ['VerbForm']) - if node.feats['VerbForm'] == 'Inf': + if node.feats['VerbForm'] in ['Inf', 'Sup']: # There is no voice. For some reason, PDT does not annotate that # the infinitive form is active (while a passive infinitive is # a combination of the infinitive with a passive participle). self.check_required_features(node, ['Polarity']) self.check_allowed_features(node, { 'Aspect': ['Imp', 'Perf'], - 'VerbForm': ['Inf'], + 'VerbForm': ['Inf', 'Sup'], 'Polarity': ['Pos', 'Neg'] }) elif node.feats['VerbForm'] == 'Fin': From 55261ce6729604b01dc177837977b854bc8e7188 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 10 Dec 2024 14:22:33 +0100 Subject: [PATCH 110/233] Report NonAuxLemma. --- udapi/block/ud/cs/markfeatsbugs.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index cf0964d2..59f07dbd 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -603,6 +603,11 @@ def process_node(self, node): }) # VERBS AND AUXILIARIES ################################################ elif node.upos in ['VERB', 'AUX']: + # There are only three lemmas recognized as AUX in Czech. This is not + # about features and it would be caught by the UD validator, but it + # is error in morphology, so let's report it here as well. + if node.upos == 'AUX' and node.lemma not in ['být', 'bývat', 'bývávat']: + self.bug(node, 'NonAuxLemma') # All Czech verbs (and some adjectives and nouns) must have VerbForm. # Almost all verbs have lexical Aspect but we cannot require it # because there are a few biaspectual verbs (e.g. 'analyzovat') that From a9ab0f2a653c6f5c736ac40f725730a5a2e4c097 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Sat, 14 Dec 2024 01:10:54 +0100 Subject: [PATCH 111/233] unify UDPipeOnline and UDPipe --- udapi/tool/udpipe.py | 14 ++++++++++---- udapi/tool/udpipeonline.py | 5 +---- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/udapi/tool/udpipe.py b/udapi/tool/udpipe.py index 5d4a4d9c..83e289a2 100644 --- a/udapi/tool/udpipe.py +++ b/udapi/tool/udpipe.py @@ -22,8 +22,10 @@ def __init__(self, model): self.conllu_reader = ConlluReader() self.tokenizer = self.tool.newTokenizer(Model.DEFAULT) - def tag_parse_tree(self, root): + def tag_parse_tree(self, root, tag=True, parse=True): """Tag (+lemmatize, fill FEATS) and parse a tree (already tokenized).""" + if not tag and not parse: + raise ValueError('tag_parse_tree(root, tag=False, parse=False) does not make sense.') descendants = root.descendants if not descendants: return @@ -34,11 +36,15 @@ def tag_parse_tree(self, root): raise IOError("UDPipe error " + self.error.message) self.conllu_reader.files.filehandle = io.StringIO(out_data) parsed_root = self.conllu_reader.read_tree() - root.flatten() + attrs = 'upos xpos lemma feats'.split() if tag else [] + if parse: + attrs.append('deprel') + root.flatten() for parsed_node in parsed_root.descendants: node = descendants[parsed_node.ord - 1] - node.parent = descendants[parsed_node.parent.ord - 1] if parsed_node.parent.ord else root - for attr in 'upos xpos lemma feats deprel'.split(): + if parse: + node.parent = descendants[parsed_node.parent.ord - 1] if parsed_node.parent.ord else root + for attr in attrs: setattr(node, attr, getattr(parsed_node, attr)) # TODO: benchmark which solution is the fastest one. E.g. we could also do diff --git a/udapi/tool/udpipeonline.py b/udapi/tool/udpipeonline.py index 206719f5..f0a835c9 100644 --- a/udapi/tool/udpipeonline.py +++ b/udapi/tool/udpipeonline.py @@ -71,10 +71,7 @@ def tag_parse_tree(self, root, tag=True, parse=True): return in_data = " ".join([n.form for n in descendants]) params = {"model": self.model, "data": in_data, "input":"horizontal", "tagger":""} - if tag: - attrs = 'upos xpos lemma feats'.split() - else: - attrs = [] + attrs = 'upos xpos lemma feats'.split() if tag else [] if parse: params["parser"] = "" attrs.append('deprel') From 5b9c50b774c9c8cbeff7fea02c6a4066b0f2acba Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Sat, 14 Dec 2024 03:01:50 +0100 Subject: [PATCH 112/233] fix serialization of sentences with empty nodes only They need the same trick as sentences witout any nodes. --- udapi/block/write/conllu.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/block/write/conllu.py b/udapi/block/write/conllu.py index abe20963..2573b5ae 100644 --- a/udapi/block/write/conllu.py +++ b/udapi/block/write/conllu.py @@ -134,10 +134,10 @@ def process_tree(self, tree): # pylint: disable=too-many-branches '_' if node._feats is None else str(node.feats), head, node.deprel, node.raw_deps, '_' if node._misc is None else str(node.misc)))) - # Empty sentences are not allowed in CoNLL-U, + # Empty sentences (sentences with no non-empty nodes) are not allowed in CoNLL-U, # but with print_empty_trees==1 (which is the default), # we will print an artificial node, so we can print the comments. - if not nodes: + if not tree._descendants: print("1\t_\t_\t_\t_\t_\t0\t_\t_\tEmpty=Yes") # Empty line separates trees in CoNLL-U (and is required after the last tree as well) From 8c43bcc8977619894d74e29320e395f1e205d888 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 16 Dec 2024 13:00:04 +0100 Subject: [PATCH 113/233] Batch launcher in Windows. --- bin/udapy.bat | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 bin/udapy.bat diff --git a/bin/udapy.bat b/bin/udapy.bat new file mode 100644 index 00000000..013e08e7 --- /dev/null +++ b/bin/udapy.bat @@ -0,0 +1,4 @@ +@REM The Python launcher "py" must be accessible via the PATH environment variable. +@REM We assume that this batch script lies next to udapy in udapi-python/bin. +@REM The PYTHONPATH environment variable must contain path to udapi-python. +py %~dp$PATH:0\udapy %* From 75a4303c469423f0858f98024eb968a17bd832d2 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Wed, 18 Dec 2024 11:34:45 +0100 Subject: [PATCH 114/233] minor bugfix in eval.F1 In the rare case of no matching aligned non-focused nodes, we have `nf_common==[]` and `c==0`, so `if c == len(nf_common)` is true in the first iteration of the while loop and we need `find_lcs(pred_tokens[0:], gold_tokens[0:])`, not `find_lcs(pred_tokens[1:], gold_tokens[1:])`, which would exclude the very first token, which could be focused and matching. In other cases, the i+1 and j+1 worked correctly (and resulted in a tiny speed improvement because it was guaranteed that `pred_tokens[i] != gold_tokens[j]`). --- udapi/block/eval/f1.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/eval/f1.py b/udapi/block/eval/f1.py index 7ed5cd70..e4889770 100644 --- a/udapi/block/eval/f1.py +++ b/udapi/block/eval/f1.py @@ -126,7 +126,7 @@ def process_tree(self, tree): i, j, c, un_pred, un_gold, common = 0, 0, 0, [], [], [] while i < len(pred_tokens) and j < len(gold_tokens): if c == len(nf_common): - common += find_lcs(pred_tokens[i+1:], gold_tokens[j+1:]) + common += find_lcs(pred_tokens[i:], gold_tokens[j:]) break while nf_common[c] != pred_tokens[i]: un_pred.append(pred_tokens[i]) From e8b42d7267a05280a0c43559fd40179cb3f26d0a Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 19 Dec 2024 17:29:24 +0100 Subject: [PATCH 115/233] MSFCase --- udapi/block/mwe/msfcase.py | 150 +++++++++++++++++++++++++++++++++++++ 1 file changed, 150 insertions(+) create mode 100644 udapi/block/mwe/msfcase.py diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py new file mode 100644 index 00000000..df312b5c --- /dev/null +++ b/udapi/block/mwe/msfcase.py @@ -0,0 +1,150 @@ +""" +Morphosyntactic features (UniDive): +Derive a MS Case feature from morphological case and adposition. +""" +from udapi.core.block import Block + +class MsfCase(Block): + + adposmap = { + 'v+Loc': 'Ine', + 'uvnitř+Gen': 'Ine', + 'uprostřed+Gen': 'Ces', + 'mezi+Ins': 'Int', + 'vně+Gen': 'Ext', + 'na+Loc': 'Ade', + 'vedle+Gen': 'Apu', + 'u+Gen': 'Chz', + 'kolem+Gen': 'Cir', + 'dokola+Gen': 'Cir', + 'okolo+Gen': 'Cir', + 'blízko+Dat': 'Prx', + 'blízko+Gen': 'Prx', + 'nedaleko+Gen': 'Prx', + 'poblíž+Gen': 'Prx', + 'daleko_od+Gen': 'Dst', + 'nad+Ins': 'Sup', + 'pod+Ins': 'Sub', + 'vespod+Gen': 'Sub', + 'před+Ins': 'Ant', + 'vpředu+Gen': 'Ant', + 'za+Ins': 'Pst', + 'naproti+Dat': 'Opp', + 'od+Gen': 'Abl', + 'z+Gen': 'Ela', + 'zevnitř+Gen': 'Ela', + 'zprostřed+Gen': 'Cne', + 's+Gen': 'Del', + 'zpod+Gen': 'Sbe', + 'zpoza+Gen': 'Pse', + 'po+Loc': 'Per', + 'napříč+Gen': 'Crs', + 'napříč+Ins': 'Crs', + 'podél+Gen': 'Lng', + 'skrz+Acc': 'Inx', + 'přes+Acc': 'Spx', + 'ob+Acc': 'Cix', + 'po+Acc': 'Ter', + 'do+Gen': 'Ill', + 'dovnitř+Gen': 'Ill', + 'doprostřed+Gen': 'Cnl', + 'mezi+Acc': 'Itl', + 'na+Acc': 'All', + 'k+Dat': 'Apl', + 'nad+Acc': 'Spl', + 'pod+Acc': 'Sbl', + 'před+Acc': 'Anl', + 'za+Acc': 'Psl', + 'dokud': 'Tan', + 'nežli': 'Tan', + 'v+Acc': 'Tem', + 'počátkem+Gen': 'Din', + 'začátkem+Gen': 'Din', + 'během+Gen': 'Dur', + 'postupem+Gen': 'Dur', + 'při+Loc': 'Dur', + 'za+Gen': 'Der', + 'koncem+Gen': 'Dtr', + 'závěrem+Gen': 'Dtr', + 'jakmile': 'Tps', + 'jen_co': 'Tps', + 'počínaje+Ins': 'Teg', + 'jménem+Nom': 'Atr', + 'zdali': 'Atr', + 'že': 'Atr', + 's+Ins': 'Com', + 'bez+Gen': 'Abe', + 'včetně+Gen': 'Inc', + 'kromě+Gen': 'Exc', + 'mimo+Acc': 'Exc', + 'mimo+Gen': 'Exc', + 'vyjma+Gen': 'Exc', + 'místo+Gen': 'Sbs', + 'namísto+Gen': 'Sbs', + 'jako': 'Ess', + 'formou+Gen': 'Ess', + 'oproti+Dat': 'Dsm', + 'než': 'Cmp', + 'o+Acc': 'Dif', + 'kdežto': 'Cmt', + 'přičemž': 'Cmt', + 'zatímco': 'Cmt', + 'kvůli+Dat': 'Cau', + 'vinou+Gen': 'Cau', + 'vlivem+Gen': 'Cau', + 'zásluhou+Gen': 'Cau', + 'jelikož': 'Cau', + 'ježto': 'Cau', + 'poněvadž': 'Cau', + 'protože': 'Cau', + 'takže': 'Cau', + 'aby': 'Pur', + 'ať': 'Ign', + 'navzdory+Dat': 'Ccs', + 'vzdor+Dat': 'Ccs', + 'ač': 'Ccs', + 'ačkoli': 'Ccs', + 'byť': 'Ccs', + 'přestože': 'Ccs', + 'třebaže': 'Ccs', + 'jestli': 'Cnd', + 'jestliže': 'Cnd', + 'ledaže': 'Cnd', + 'li': 'Cnd', + 'pakliže': 'Cnd', + 'pokud': 'Cnd', + 'zda': 'Cnd', + 'o+Loc': 'The', + 'stran+Gen': 'The', + 'podle+Gen': 'Quo', + 'dle+Gen': 'Quo', + 'pomocí+Gen': 'Ins', + 'prostřednictvím+Gen': 'Ins', + 'pro+Acc': 'Ben', + 'proti+Dat': 'Adv', + 'kontra+Nom': 'Adv', + 'versus+Nom': 'Adv', + 'vůči+Dat': 'Adv', + } + + def process_node(self, node): + """ + Derives a case value from preposition and morphological case. Stores it + as MSFCase in MISC. + """ + # Do not do anything for function words. + if node.udeprel in ['case', 'mark', 'cc', 'aux', 'cop']: + node.misc['MSFFunc'] = 'Yes' + return + else: + node.misc['MSFFunc'] = 'No' + adpositions = [x.lemma for x in node.children if x.udeprel == 'case'] + msfcase = node.feats['Case'] + if adpositions: + adpostring = '_'.join(adpositions) + caseadpostring = adpostring + '+' + msfcase + if caseadpostring in adposmap: + msfcase = adposmap[caseadpostring] + else: + msfcase = caseadpostring + node.misc['MSFCase'] = msfcase From 5acf2f12f906ab709bd1e21fca66162e54e76722 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 19 Dec 2024 21:09:19 +0100 Subject: [PATCH 116/233] self --- udapi/block/mwe/msfcase.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index df312b5c..c9d12379 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -143,8 +143,8 @@ def process_node(self, node): if adpositions: adpostring = '_'.join(adpositions) caseadpostring = adpostring + '+' + msfcase - if caseadpostring in adposmap: - msfcase = adposmap[caseadpostring] + if caseadpostring in self.adposmap: + msfcase = self.adposmap[caseadpostring] else: msfcase = caseadpostring node.misc['MSFCase'] = msfcase From 5f09ee10ab6c112cfa10f957e18ae650f01eda3c Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 19 Dec 2024 22:37:15 +0100 Subject: [PATCH 117/233] No MSF Case for determiners and adjectival modifiers. --- udapi/block/mwe/msfcase.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index c9d12379..43587498 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -133,9 +133,14 @@ def process_node(self, node): as MSFCase in MISC. """ # Do not do anything for function words. + # Specifically for Case, also skip 'det' and 'amod' modifiers (congruent attributes) + # because their Case is only agreement feature inherited from the head noun. if node.udeprel in ['case', 'mark', 'cc', 'aux', 'cop']: node.misc['MSFFunc'] = 'Yes' return + elif node.udeprel in ['det', 'amod']: + node.misc['MSCFunc'] = 'No' + return else: node.misc['MSFFunc'] = 'No' adpositions = [x.lemma for x in node.children if x.udeprel == 'case'] From 96d003d5b8f3ed6096faa0c526892dede8e9e295 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 19 Dec 2024 22:46:16 +0100 Subject: [PATCH 118/233] Multiword adpositions. --- udapi/block/mwe/msfcase.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index 43587498..2bb0d2a5 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -143,7 +143,16 @@ def process_node(self, node): return else: node.misc['MSFFunc'] = 'No' - adpositions = [x.lemma for x in node.children if x.udeprel == 'case'] + # Get all case markers (adpositions) attached to the current node. + adpositions = [] + for c in node.children: + if c.udeprel == 'case': + lemma = c.lemma + # If it has outgoing 'fixed' relations, it is a multiword adposition. + fixedchildren = [x.lemma for x in c.children if x.udeprel == 'fixed'] + if fixedchildren: + lemma += '_'.join(fixedchildren) + adpositions.append(lemma) msfcase = node.feats['Case'] if adpositions: adpostring = '_'.join(adpositions) From 5f81c733fea23bbd8ead0c9101f073f781f96dd1 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 19 Dec 2024 22:48:39 +0100 Subject: [PATCH 119/233] Bug fix. --- udapi/block/mwe/msfcase.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index 2bb0d2a5..94d59901 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -151,7 +151,7 @@ def process_node(self, node): # If it has outgoing 'fixed' relations, it is a multiword adposition. fixedchildren = [x.lemma for x in c.children if x.udeprel == 'fixed'] if fixedchildren: - lemma += '_'.join(fixedchildren) + lemma += '_' + '_'.join(fixedchildren) adpositions.append(lemma) msfcase = node.feats['Case'] if adpositions: From 0ca5875078417696febb75e19bc55d2954c5a428 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 20 Dec 2024 17:51:54 +0100 Subject: [PATCH 120/233] MSF initialization: from FEATS to MISC. In later blocks we will take MSF features (possibly already modified) as input. --- udapi/block/mwe/msfinit.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 udapi/block/mwe/msfinit.py diff --git a/udapi/block/mwe/msfinit.py b/udapi/block/mwe/msfinit.py new file mode 100644 index 00000000..be6c4261 --- /dev/null +++ b/udapi/block/mwe/msfinit.py @@ -0,0 +1,15 @@ +""" +Morphosyntactic features (UniDive): +Initialization. Copies features from FEATS as MSF* attributes to MISC. +""" +from udapi.core.block import Block + +class MsfInit(Block): + + + def process_node(self, node): + """ + For every feature in FEATS, creates its MSF* counterpart in MISC. + """ + for f in node.feats: + node.misc['MSF'+f] = node.feats[f] From bff83c36f4211795ef665773f8bf57c322f2a1a0 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 20 Dec 2024 18:02:42 +0100 Subject: [PATCH 121/233] Both input and output is MSFCase. --- udapi/block/mwe/msfcase.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index 94d59901..18aa1769 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -153,7 +153,9 @@ def process_node(self, node): if fixedchildren: lemma += '_' + '_'.join(fixedchildren) adpositions.append(lemma) - msfcase = node.feats['Case'] + # We assume that all features were copied from FEATS to MISC in mwe.MsfInit. + # They may have been further processed there, so we take the input from there. + msfcase = node.misc['MSFCase'] if adpositions: adpostring = '_'.join(adpositions) caseadpostring = adpostring + '+' + msfcase From b4bc8d7e14b253b06ab54805bede40670e16bc91 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 20 Dec 2024 21:12:34 +0100 Subject: [PATCH 122/233] Guess case of nominals that lack it. --- udapi/block/mwe/msfinit.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/udapi/block/mwe/msfinit.py b/udapi/block/mwe/msfinit.py index be6c4261..33900a0c 100644 --- a/udapi/block/mwe/msfinit.py +++ b/udapi/block/mwe/msfinit.py @@ -13,3 +13,26 @@ def process_node(self, node): """ for f in node.feats: node.misc['MSF'+f] = node.feats[f] + # We are particularly interested in the Case feature but some nominals + # lack it (e.g. acronyms or numbers). If there is a preposition, it may + # indicate the expected case of the nominal. + if not node.feats['Case']: + # Not any 'case' dependent is helpful. Here we really need single-word + # adposition. + adpositions = [x for x in node.children if x.udeprel == 'case' and x.upos == 'ADP'] + if len(adpositions) == 1: + fixed = [x for x in adpositions[0].children if x.udeprel == 'fixed'] + if not fixed and adpositions[0].feats['Case']: + node.misc['MSFCase'] = adpositions[0].feats['Case'] + # If we did not find a preposition to help us, we may be able to read + # the case off an adjectival modifier or determiner. + if not node.misc['MSFCase']: + modifiers = [x for x in node.children if x.udeprel in ['amod', 'det'] and x.feats['Case']] + if modifiers: + node.misc['MSFCase'] = modifiers[0].feats['Case'] + # Finally, if the above did not help, we may guess the case from the deprel of the node itself. + if not node.misc['MSFCase']: + if node.udeprel == 'nsubj': + node.misc['MSFCase'] = 'Nom' + elif node.udeprel == 'obj': + node.misc['MSFCase'] = 'Acc' From 26c23b984b60381cda76d31431fc0c0f8d4038cd Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 20 Dec 2024 21:24:29 +0100 Subject: [PATCH 123/233] Copy only selected features. --- udapi/block/mwe/msfinit.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/udapi/block/mwe/msfinit.py b/udapi/block/mwe/msfinit.py index 33900a0c..c8ec8e64 100644 --- a/udapi/block/mwe/msfinit.py +++ b/udapi/block/mwe/msfinit.py @@ -12,7 +12,10 @@ def process_node(self, node): For every feature in FEATS, creates its MSF* counterpart in MISC. """ for f in node.feats: - node.misc['MSF'+f] = node.feats[f] + # Only selected features will be copied. Certain features are not + # interesting for the morphosyntactic annotation. + if f not in ['AdpType', 'NameType', 'Style', 'Variant']: + node.misc['MSF'+f] = node.feats[f] # We are particularly interested in the Case feature but some nominals # lack it (e.g. acronyms or numbers). If there is a preposition, it may # indicate the expected case of the nominal. From 0f69ba8d102919bba71c5ef9065d346e1199356a Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 20 Dec 2024 21:32:53 +0100 Subject: [PATCH 124/233] Cleanup block: Function words should not keep the MS features. --- udapi/block/mwe/msfremovefunc.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 udapi/block/mwe/msfremovefunc.py diff --git a/udapi/block/mwe/msfremovefunc.py b/udapi/block/mwe/msfremovefunc.py new file mode 100644 index 00000000..02efaa3d --- /dev/null +++ b/udapi/block/mwe/msfremovefunc.py @@ -0,0 +1,17 @@ +""" +Morphosyntactic features (UniDive): +Cleanup. Removes MSF* features from MISC for function nodes (MSFFunc=Yes). +""" +from udapi.core.block import Block + +class MsfRemoveFunc(Block): + + + def process_node(self, node): + """ + Removes MSF* features if MSFFunc=Yes. + """ + if node.misc['MSFFunc'] == 'Yes': + for msf in node.misc: + if msf.startswith('MSF'): + node.misc[msf] = '' From cd4a3ce77b2d7acadf55197523dda2dc78ed7adb Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 20 Dec 2024 21:35:27 +0100 Subject: [PATCH 125/233] List cannot change during iteration. --- udapi/block/mwe/msfremovefunc.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/udapi/block/mwe/msfremovefunc.py b/udapi/block/mwe/msfremovefunc.py index 02efaa3d..ce974285 100644 --- a/udapi/block/mwe/msfremovefunc.py +++ b/udapi/block/mwe/msfremovefunc.py @@ -12,6 +12,6 @@ def process_node(self, node): Removes MSF* features if MSFFunc=Yes. """ if node.misc['MSFFunc'] == 'Yes': - for msf in node.misc: - if msf.startswith('MSF'): - node.misc[msf] = '' + msfeats = [x for x in node.misc if x.startswith('MSF')] + for msf in msfeats: + node.misc[msf] = '' From ecd9135def66f7d1e96b582e56e942e35c25d1cc Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 20 Dec 2024 21:43:29 +0100 Subject: [PATCH 126/233] Other less interesting features. --- udapi/block/mwe/msfinit.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/mwe/msfinit.py b/udapi/block/mwe/msfinit.py index c8ec8e64..7f0eb185 100644 --- a/udapi/block/mwe/msfinit.py +++ b/udapi/block/mwe/msfinit.py @@ -14,7 +14,7 @@ def process_node(self, node): for f in node.feats: # Only selected features will be copied. Certain features are not # interesting for the morphosyntactic annotation. - if f not in ['AdpType', 'NameType', 'Style', 'Variant']: + if f not in ['Abbr', 'AdpType', 'Emph', 'Foreign', 'NameType', 'Style', 'Typo', 'Variant']: node.misc['MSF'+f] = node.feats[f] # We are particularly interested in the Case feature but some nominals # lack it (e.g. acronyms or numbers). If there is a preposition, it may From 41d85936874d92563cc045749db1acea8254456f Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 20 Dec 2024 22:33:10 +0100 Subject: [PATCH 127/233] The real case of cardinal numeral cases is different from the genitive of the head noun. --- udapi/block/mwe/msfcase.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index 18aa1769..27c22285 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -3,6 +3,7 @@ Derive a MS Case feature from morphological case and adposition. """ from udapi.core.block import Block +import logging class MsfCase(Block): @@ -162,5 +163,6 @@ def process_node(self, node): if caseadpostring in self.adposmap: msfcase = self.adposmap[caseadpostring] else: + logging.warn(f"No Case value found for '{caseadpostring}'.") msfcase = caseadpostring node.misc['MSFCase'] = msfcase From 3999f607e1d860c80c95ed3fa35c442f73598305 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 20 Dec 2024 22:35:25 +0100 Subject: [PATCH 128/233] The real case of cardinal numeral cases is different from the genitive of the head noun. --- udapi/block/mwe/msfnumphrase.py | 36 +++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 udapi/block/mwe/msfnumphrase.py diff --git a/udapi/block/mwe/msfnumphrase.py b/udapi/block/mwe/msfnumphrase.py new file mode 100644 index 00000000..ebcc0850 --- /dev/null +++ b/udapi/block/mwe/msfnumphrase.py @@ -0,0 +1,36 @@ +""" +Morphosyntactic features (UniDive): +Case in Number Phrases like 'pět mužů' (five men) in Czech. +""" +from udapi.core.block import Block + +class MsfNumPhrase(Block): + + + def process_node(self, node): + """ + Nouns with a 'nummod:gov' dependent are morphologically in genitive, + but the case of the whole phrase (number + counted noun) is different, + probably nominative or accusative. + """ + quantifiers = [x for x in node.children if x.deprel in ['nummod:gov', 'det:numgov']] + current_case = node.misc['MSFCase'] + if (current_case == 'Gen' or current_case == '') and quantifiers: + quantifier_case = quantifiers[0].misc['MSFCase'] + # The quantifier may lack the case feature (e.g. numbers expressed by digits) + # but we may be able to guess it from a preposition or other factors. + if quantifier_case == '': + # Not any 'case' dependent is helpful. Here we really need single-word + # adposition. + adpositions = [x for x in node.children if x.udeprel == 'case' and x.upos == 'ADP'] + if len(adpositions) == 1: + fixed = [x for x in adpositions[0].children if x.udeprel == 'fixed'] + if not fixed and adpositions[0].feats['Case']: + quantifier_case = adpositions[0].feats['Case'] + # Finally, if the above did not help, we may guess the case from the deprel of the node itself. + if quantifier_case == '': + if node.udeprel == 'nsubj': + quantifier_case = 'Nom' + elif node.udeprel == 'obj': + quantifier_case = 'Acc' + node.misc['MSFCase'] = quantifier_case From 815aa273f311e1af7c299347429e276676f73cba Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 21 Dec 2024 12:55:30 +0100 Subject: [PATCH 129/233] Bug fix. --- udapi/block/mwe/msfcase.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index 27c22285..cb586951 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -140,7 +140,7 @@ def process_node(self, node): node.misc['MSFFunc'] = 'Yes' return elif node.udeprel in ['det', 'amod']: - node.misc['MSCFunc'] = 'No' + node.misc['MSFFunc'] = 'No' return else: node.misc['MSFFunc'] = 'No' From d24c23828b2acda4650eb769e066b94db0113788 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 21 Dec 2024 13:04:20 +0100 Subject: [PATCH 130/233] Treat punctuation like function words. --- udapi/block/mwe/msfcase.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index cb586951..b48ee02c 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -136,7 +136,7 @@ def process_node(self, node): # Do not do anything for function words. # Specifically for Case, also skip 'det' and 'amod' modifiers (congruent attributes) # because their Case is only agreement feature inherited from the head noun. - if node.udeprel in ['case', 'mark', 'cc', 'aux', 'cop']: + if node.udeprel in ['case', 'mark', 'cc', 'aux', 'cop', 'punct']: node.misc['MSFFunc'] = 'Yes' return elif node.udeprel in ['det', 'amod']: From ceb8f5cf3f436c74b283b36fec4a1afec9a3181f Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 22 Dec 2024 11:40:13 +0100 Subject: [PATCH 131/233] Czech multiword prepositions. --- udapi/block/mwe/msfcase.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index b48ee02c..c47fcd86 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -66,6 +66,7 @@ class MsfCase(Block): 'při+Loc': 'Dur', 'za+Gen': 'Der', 'koncem+Gen': 'Dtr', + 'konec+Gen': 'Dtr', 'závěrem+Gen': 'Dtr', 'jakmile': 'Tps', 'jen_co': 'Tps', @@ -74,6 +75,7 @@ class MsfCase(Block): 'zdali': 'Atr', 'že': 'Atr', 's+Ins': 'Com', + 'spolu_s+Ins': 'Com', 'bez+Gen': 'Abe', 'včetně+Gen': 'Inc', 'kromě+Gen': 'Exc', @@ -83,9 +85,18 @@ class MsfCase(Block): 'místo+Gen': 'Sbs', 'namísto+Gen': 'Sbs', 'jako': 'Ess', + 'jako+': 'Ess', + 'jako+Nom': 'Ess', + 'jako+Acc': 'Ess', + 'jako_u+Gen': 'Ess', 'formou+Gen': 'Ess', 'oproti+Dat': 'Dsm', 'než': 'Cmp', + 'než+Nom': 'Cmp', + 'než+Gen': 'Cmp', + 'než+Acc': 'Cmp', + 'než_nad+Ins': 'Cmp', + 'než_v+Loc': 'Cmp', 'o+Acc': 'Dif', 'kdežto': 'Cmt', 'přičemž': 'Cmt', @@ -93,7 +104,10 @@ class MsfCase(Block): 'kvůli+Dat': 'Cau', 'vinou+Gen': 'Cau', 'vlivem+Gen': 'Cau', + 'vliv+Gen': 'Cau', 'zásluhou+Gen': 'Cau', + 'zásluha+Gen': 'Cau', + 'v_důsledek+Gen': 'Cau', 'jelikož': 'Cau', 'ježto': 'Cau', 'poněvadž': 'Cau', From bf876ac5685bad3c0356a9efb84d301834f42960 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 22 Dec 2024 11:56:41 +0100 Subject: [PATCH 132/233] Czech multiword prepositions. --- udapi/block/mwe/msfcase.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index c47fcd86..44fa162e 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -19,9 +19,11 @@ class MsfCase(Block): 'kolem+Gen': 'Cir', 'dokola+Gen': 'Cir', 'okolo+Gen': 'Cir', + 'v_oblast+Gen': 'Cir', 'blízko+Dat': 'Prx', 'blízko+Gen': 'Prx', 'nedaleko+Gen': 'Prx', + 'daleko+Gen': 'Prx', # lemma of 'nedaleko' 'poblíž+Gen': 'Prx', 'daleko_od+Gen': 'Dst', 'nad+Ins': 'Sup', @@ -64,6 +66,7 @@ class MsfCase(Block): 'během+Gen': 'Dur', 'postupem+Gen': 'Dur', 'při+Loc': 'Dur', + 'v_průběh+Gen': 'Dur', 'za+Gen': 'Der', 'koncem+Gen': 'Dtr', 'konec+Gen': 'Dtr', @@ -76,6 +79,7 @@ class MsfCase(Block): 'že': 'Atr', 's+Ins': 'Com', 'spolu_s+Ins': 'Com', + 'společně_s+Ins': 'Com', 'bez+Gen': 'Abe', 'včetně+Gen': 'Inc', 'kromě+Gen': 'Exc', @@ -88,7 +92,9 @@ class MsfCase(Block): 'jako+': 'Ess', 'jako+Nom': 'Ess', 'jako+Acc': 'Ess', + 'jako+Dat': 'Ess', 'jako_u+Gen': 'Ess', + 'jako_v+Loc': 'Ess', 'formou+Gen': 'Ess', 'oproti+Dat': 'Dsm', 'než': 'Cmp', @@ -96,11 +102,13 @@ class MsfCase(Block): 'než+Gen': 'Cmp', 'než+Acc': 'Cmp', 'než_nad+Ins': 'Cmp', + 'než_v+Acc': 'Cmp', 'než_v+Loc': 'Cmp', 'o+Acc': 'Dif', 'kdežto': 'Cmt', 'přičemž': 'Cmt', 'zatímco': 'Cmt', + 'díky+Dat': 'Cau', 'kvůli+Dat': 'Cau', 'vinou+Gen': 'Cau', 'vlivem+Gen': 'Cau', @@ -113,7 +121,12 @@ class MsfCase(Block): 'poněvadž': 'Cau', 'protože': 'Cau', 'takže': 'Cau', + 'následek+Gen': 'Cau', 'aby': 'Pur', + 'na_základ+Gen': 'Cns', + 's_ohled_na+Acc': 'Cns', + 'v_souvislost_s+Ins': 'Cns', + 'vzhledem_k+Dat': 'Cns', 'ať': 'Ign', 'navzdory+Dat': 'Ccs', 'vzdor+Dat': 'Ccs', @@ -129,12 +142,16 @@ class MsfCase(Block): 'pakliže': 'Cnd', 'pokud': 'Cnd', 'zda': 'Cnd', + 'v_případ+Gen': 'Cnd', 'o+Loc': 'The', + 'ohledně+Gen': 'The', 'stran+Gen': 'The', + 'z_hledisko+Gen': 'The', 'podle+Gen': 'Quo', 'dle+Gen': 'Quo', 'pomocí+Gen': 'Ins', 'prostřednictvím+Gen': 'Ins', + 'prostřednictví+Gen': 'Ins', 'pro+Acc': 'Ben', 'proti+Dat': 'Adv', 'kontra+Nom': 'Adv', From fe0261d2356202dc9760785ae8ffe07ce59f74bb Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 22 Dec 2024 12:05:18 +0100 Subject: [PATCH 133/233] Czech multiword prepositions. --- udapi/block/mwe/msfcase.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index 44fa162e..3a5946cf 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -14,6 +14,7 @@ class MsfCase(Block): 'mezi+Ins': 'Int', 'vně+Gen': 'Ext', 'na+Loc': 'Ade', + 'v_rámec+Gen': 'Ade', # ??? 'vedle+Gen': 'Apu', 'u+Gen': 'Chz', 'kolem+Gen': 'Cir', @@ -61,6 +62,7 @@ class MsfCase(Block): 'dokud': 'Tan', 'nežli': 'Tan', 'v+Acc': 'Tem', + 'v_období+Gen': 'Tpx', 'počátkem+Gen': 'Din', 'začátkem+Gen': 'Din', 'během+Gen': 'Dur', @@ -97,6 +99,7 @@ class MsfCase(Block): 'jako_v+Loc': 'Ess', 'formou+Gen': 'Ess', 'oproti+Dat': 'Dsm', + 'na_rozdíl_od+Gen': 'Dsm', 'než': 'Cmp', 'než+Nom': 'Cmp', 'než+Gen': 'Cmp', @@ -104,6 +107,7 @@ class MsfCase(Block): 'než_nad+Ins': 'Cmp', 'než_v+Acc': 'Cmp', 'než_v+Loc': 'Cmp', + 'v_srovnání_s+Ins': 'Cmp', 'o+Acc': 'Dif', 'kdežto': 'Cmt', 'přičemž': 'Cmt', @@ -126,8 +130,10 @@ class MsfCase(Block): 'na_základ+Gen': 'Cns', 's_ohled_na+Acc': 'Cns', 'v_souvislost_s+Ins': 'Cns', + 'v_světlo+Gen': 'Cns', 'vzhledem_k+Dat': 'Cns', 'ať': 'Ign', + 'bez_ohled_na+Acc': 'Ign', 'navzdory+Dat': 'Ccs', 'vzdor+Dat': 'Ccs', 'ač': 'Ccs', From bf9ea676376680537b694412ed0409cc6b098357 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 22 Dec 2024 15:23:49 +0100 Subject: [PATCH 134/233] Catch ill-annotated perposition-Case combinations. --- udapi/block/mwe/msfcase.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index 3a5946cf..3d04eebf 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -54,6 +54,7 @@ class MsfCase(Block): 'doprostřed+Gen': 'Cnl', 'mezi+Acc': 'Itl', 'na+Acc': 'All', + 'na+Gen': 'All', # annotation error 'k+Dat': 'Apl', 'nad+Acc': 'Spl', 'pod+Acc': 'Sbl', @@ -62,6 +63,7 @@ class MsfCase(Block): 'dokud': 'Tan', 'nežli': 'Tan', 'v+Acc': 'Tem', + 'v+Nom': 'Tem', # annotation error 'v_období+Gen': 'Tpx', 'počátkem+Gen': 'Din', 'začátkem+Gen': 'Din', From 722c1a9e02f1dab5e5caf25b1fb33288e451b4f2 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 23 Dec 2024 09:32:57 +0100 Subject: [PATCH 135/233] =?UTF-8?q?Blocks=20from=20Lenka=20Krippnerov?= =?UTF-8?q?=C3=A1=20to=20recognize=20periphrastic=20verb=20forms=20in=20Sl?= =?UTF-8?q?avic=20languages.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/mwe/preprocessor.py | 46 ++++++ udapi/block/mwe/slavic_cond.py | 92 +++++++++++ udapi/block/mwe/slavic_future.py | 201 ++++++++++++++++++++++++ udapi/block/mwe/slavic_imperative.py | 93 +++++++++++ udapi/block/mwe/slavic_inf.py | 90 +++++++++++ udapi/block/mwe/slavic_past.py | 156 ++++++++++++++++++ udapi/block/mwe/slavic_pres.py | 104 ++++++++++++ udapi/block/mwe/slavic_transgressive.py | 96 +++++++++++ 8 files changed, 878 insertions(+) create mode 100644 udapi/block/mwe/preprocessor.py create mode 100644 udapi/block/mwe/slavic_cond.py create mode 100644 udapi/block/mwe/slavic_future.py create mode 100644 udapi/block/mwe/slavic_imperative.py create mode 100644 udapi/block/mwe/slavic_inf.py create mode 100644 udapi/block/mwe/slavic_past.py create mode 100644 udapi/block/mwe/slavic_pres.py create mode 100644 udapi/block/mwe/slavic_transgressive.py diff --git a/udapi/block/mwe/preprocessor.py b/udapi/block/mwe/preprocessor.py new file mode 100644 index 00000000..1ac8a6f1 --- /dev/null +++ b/udapi/block/mwe/preprocessor.py @@ -0,0 +1,46 @@ +#!/usr/bin/env python3 + +from udapi.core.block import Block + +class Preprocessor(Block): + + def process_node(self,node): + + # in Belarusian, some adjectives formed from verbs are marked as verbs + # if the verb has case, then it is an adjective + if node.upos == 'VERB' and node.feats['Case'] != '': + node.upos = 'ADJ' + + # in Polish, the conditional mood for auxiliary verbs is marked as deprel == 'aux:cnd' and not as in the last Slavic languages ​​feats['Mood'] == 'Cnd' + if node.deprel == 'aux:cnd': + node.feats['Mood'] = 'Cnd' + + # sjednotit cas u dokonavych sloves vyjadrujici budoucnost + # chceme pritomny, nebo budouci? - s budoucim by se asi zjednodusilo dost veci + # jak ale poznat, ktery cas prepsat a ktery ne? - problem s makedonstinou + + # sjednotit passivum, rozhodnout, zda ma byt plnovyznamove sloveso znaceno jako ADJ, nebo VERB + + # unify polarities - some languages ​​mark only Neg (Russian), some mark both Neg and Pos (Czech) + if node.feats['Polarity'] == 'Pos': + node.feats['Polarity'] = '' + + # makedonstina tvori budouci cas pomoci pomocneho slova ќе, u nejz neni nijak vyznaceno, ze se podili na tvorbe budouciho casu + # stejne tak bulharstina pomoci pomocneho slova ще + # makedonstina a bulharstina + if node.feats['Tense'] == 'Pres': + aux = [x for x in node.children if x.lemma == 'ќе' or x.lemma == 'ще'] + if len(aux) == 1: + aux[0].feats['Tense'] = 'Fut' + + # in Czech and in Old Church Slavonic, the participle is marked with the plural gender + if node.feats['Gender'] == 'Fem,Neut' or node.feats['Gender'] == 'Fem,Masc': + subj = [x for x in node.children if x.udeprel == 'nsubj'] + + # for relative pronouns, only one gender is indicated + if len(subj) == 1: + conj = [x for x in subj[0].children if x.deprel == 'conj'] + if len(conj) == 0: + node.feats['Gender'] = subj[0].feats['Gender'] + node.feats['Number'] = subj[0].feats['Number'] + diff --git a/udapi/block/mwe/slavic_cond.py b/udapi/block/mwe/slavic_cond.py new file mode 100644 index 00000000..de7cd160 --- /dev/null +++ b/udapi/block/mwe/slavic_cond.py @@ -0,0 +1,92 @@ +#!/usr/bin/env python3 + +# Conditional mood of Slavic languages + +from udapi.core.block import Block +import importlib +import sys + +class Slavic_cond(Block): + def __init__(self, writer_prefix='',**kwargs): + super().__init__(**kwargs) + if writer_prefix != '': + writer_module = ".".join([writer_prefix,'writer']) + else: + writer_module = 'writer' + try: + module = importlib.import_module(writer_module) + except ModuleNotFoundError as e: + print(e, file=sys.stderr) + print("Try to set writer_prefix parameter.", file=sys.stderr) + exit(1) + + self.wr = module.Writer() + + + def process_node(self, node): + if node.feats['VerbForm'] == 'Part' or node.feats['VerbForm'] == 'Fin': + # in most Slavic languages, the verb has feats['VerbForm'] == 'Part' but in Polish the verb has feats['VerbForm'] == 'Fin' + + aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd'] # list for auxiliary verbs for forming the conditional mood + cop = [x for x in node.children if x.udeprel == 'cop'] # in some cases it may happen that the cop follows the noun, we don't want to these cases in this branch + # in Polish the auxiliary verbs for conditional mood have deprel == 'aux:cnd', in other languages the auxiliary verbs have x.feats['Mood'] == 'Cnd' + + # the conditional mood can be formed using the auxiliary verb or some conjunctions (such as 'aby, kdyby...' in Czech) + # so x.udeprel == 'aux' can't be required because it doesn't meet the conjunctions + + if len(aux_cnd) > 0 and len(cop) == 0: + aux = [x for x in node.children if x.udeprel == 'aux' or x.feats['Mood'] == 'Cnd'] # all auxiliary verbs and conjuctions with feats['Mood'] == 'Cnd' + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + auxVerb = aux_cnd[0] + + person='3' # TODO there could be a problem in russian etc. (same as in past tense) + if auxVerb.feats['Person'] != '': + person=auxVerb.feats['Person'] + + + self.wr.write_node_info(node, + person=person, + number=node.feats['Number'], + mood='Cnd', + form='Fin', + aspect=node.feats['Aspect'], + reflex=self.wr.get_is_reflex(node,refl), + polarity=self.wr.get_polarity(node,neg), + voice=self.wr.get_voice(node, refl), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'] + ) + return + + + cop = [x for x in node.children if x.udeprel == 'cop' and (x.feats['VerbForm'] == 'Part' or x.feats['VerbForm'] == 'Fin')] + aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel=='aux:pass'] + + if len(cop) > 0 and len(aux_cnd) > 0: + aux = [x for x in node.children if x.udeprel == 'aux' or x.feats['Mood'] == 'Cnd'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + prep = [x for x in node.children if x.upos == 'ADP'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + + copVerb = cop[0] + phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in cop] + [x.ord for x in neg] + [x.ord for x in prep] + [x.ord for x in refl] + phrase_ords.sort() + self.wr.write_node_info(node, + person=copVerb.feats['Person'], + number=copVerb.feats['Number'], + mood='Cnd', + form='Fin', + voice=self.wr.get_voice(node, refl), + polarity=self.wr.get_polarity(copVerb,neg), + reflex=self.wr.get_is_reflex(node, refl), + ords=phrase_ords, + gender=copVerb.feats['Gender'], + animacy=copVerb.feats['Animacy'] + ) + diff --git a/udapi/block/mwe/slavic_future.py b/udapi/block/mwe/slavic_future.py new file mode 100644 index 00000000..21d13a52 --- /dev/null +++ b/udapi/block/mwe/slavic_future.py @@ -0,0 +1,201 @@ +#!/usr/bin/env python3 + +# Future tense of Slavic languages + +from udapi.core.block import Block +import importlib +import sys + +class Slavic_future(Block): + def __init__(self, writer_prefix='',**kwargs): + super().__init__(**kwargs) + if writer_prefix != '': + writer_module = ".".join([writer_prefix,'writer']) + else: + writer_module = 'writer' + try: + module = importlib.import_module(writer_module) + except ModuleNotFoundError as e: + print(e, file=sys.stderr) + print("Try to set writer_prefix parameter.", file=sys.stderr) + exit(1) + + self.wr = module.Writer() + + def process_node(self, node): + # future tense for Serbian and Croatian + aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres' and (x.lemma == 'hteti' or x.lemma == 'htjeti')] + if node.upos != 'AUX' and len(aux) != 0: + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + aux_other = [x for x in node.children if x.udeprel == 'aux'] # adding aux for passive voice + cop = [x for x in node.children if x.deprel == 'cop'] + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + [x.ord for x in aux_other] + [x.ord for x in cop] + phrase_ords.sort() + + # u infinitivu neni vyznacen slovesny rod + # PhraseVoice ale chceme nastavit na activum, jelikoz se jedna o pomocne sloveso + infinitiv + voice=node.feats['Voice'] + #if voice == '': + # voice = 'Act' + if len(cop) == 0: + self.wr.write_node_info(node, + tense='Fut', + person=aux[0].feats['Person'], + number=aux[0].feats['Number'], + mood='Ind', + voice=voice, + aspect=node.feats['Aspect'], # srbstina ani chorvatstina vidy nema + form='Fin', + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + gender=node.feats['Gender'], + animacy=node.feats['Animacy'], + ords=phrase_ords + ) + else: + prep = [x for x in node.children if x.upos == 'ADP'] + phrase_ords += [x.ord for x in prep] + phrase_ords.sort() + + self.wr.write_node_info(node, + tense='Fut', + person=aux[0].feats['Person'], + number=aux[0].feats['Number'], + mood='Ind', + voice=voice, + aspect=node.feats['Aspect'], + form='Fin', + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + gender=node.feats['Gender'], + animacy=node.feats['Animacy'], + ords=phrase_ords + ) + + return + + # Macedonian forms the future tense with the auxiliary word ќе and a verb in the present tense + # Bulgarian forms the future tense with the auxiliary word ще and a verb in the present tense + aux = [x for x in node.children if x.lemma == 'ќе' or x.lemma == 'ще'] + + if node.feats['Tense'] == 'Pres' and len(aux) > 0: + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + [x.ord for x in aux] + phrase_ords.sort() + + self.wr.write_node_info(node, + tense='Fut', + person=node.feats['Person'], + number=node.feats['Number'], + mood='Ind', + voice=node.feats['Voice'], + aspect=node.feats['Aspect'], + form='Fin', + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords + ) + return + + # future tense of perfect verbs + # Upper Sorbian forms the future tense in this way, however, the feats[Aspect] are not listed in the data + # in some languages ​​(e.g. in Russian) these verbs have the Tense Fut, in others (e.g. in Czech) they have the Tense Pres + """if node.feats['Aspect'] == 'Perf' and (node.feats['Tense'] == 'Pres' or node.feats['Tense'] == 'Fut') and node.feats['VerbForm'] != 'Conv': + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + self.wr.write_node_info(node, + tense='Fut', + person=node.feats['Person'], + number=node.feats['Number'], + mood='Ind', + voice=self.wr.get_voice(node,refl), + form='Fin', + aspect='Perf', + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords + ) + return""" + + + # future tense of imperfect verbs and passive voice + # in some languages ​​the verb is in the infinitive, in some it is in the l-participle + # the condition node.upos == 'ADJ' is due to the passive voice - the n-participle is marked as ADJ, but the auxiliary verb is not cop, but aux + if node.upos == 'VERB' or node.upos == 'ADJ': + + aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Fut'] + + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + if len(aux) > 0: + auxVerb = aux[0] + phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + self.wr.write_node_info(node, + tense='Fut', + person=auxVerb.feats['Person'], + number=auxVerb.feats['Number'], + mood='Ind', + voice=self.wr.get_voice(node,refl), + aspect=node.feats['Aspect'], + form='Fin', + polarity=self.wr.get_polarity(auxVerb,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'] + ) + return + + # simple future tense - e.g. in Serbian, the future tense can be formed by combining a verb with a full meaning and an auxiliary verb into one word, i.e. without an auxiliary verb + # or verbs like pojede, půjdeme... in Czech + + if len(aux) == 0 and node.feats['Tense'] == 'Fut': + + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + self.wr.write_node_info(node, + tense='Fut', + person=node.feats['Person'], + number=node.feats['Number'], + mood='Ind', + voice=self.wr.get_voice(node,refl), # passivum se muze objevit (napr. pojede se), ale jmenny rod neni vyjadren + aspect=node.feats['Aspect'], + form='Fin', + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords + ) + return + + + cop = [x for x in node.children if x.udeprel == 'cop' and x.feats['Tense'] == 'Fut'] + if len(cop) > 0: + copVerb = cop[0] + aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Mood']=='Ind'] + prep = [x for x in node.children if x.upos == 'ADP'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + + phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in aux] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_ords.sort() + + self.wr.write_node_info(node, + tense='Fut', + person=copVerb.feats['Person'], + number=copVerb.feats['Number'], + mood='Ind', + form='Fin', + voice=self.wr.get_voice(node, refl), + polarity=self.wr.get_polarity(copVerb,neg), + ords=phrase_ords + ) + diff --git a/udapi/block/mwe/slavic_imperative.py b/udapi/block/mwe/slavic_imperative.py new file mode 100644 index 00000000..02aad2e5 --- /dev/null +++ b/udapi/block/mwe/slavic_imperative.py @@ -0,0 +1,93 @@ +#!/usr/bin/env python3 + +# Imperative of Slavic languages + +from udapi.core.block import Block +import importlib +import sys + +class Slavic_imperative(Block): + def __init__(self, writer_prefix='',**kwargs): + super().__init__(**kwargs) + if writer_prefix != '': + writer_module = ".".join([writer_prefix,'writer']) + else: + writer_module = 'writer' + try: + module = importlib.import_module(writer_module) + except ModuleNotFoundError as e: + print(e, file=sys.stderr) + print("Try to set writer_prefix parameter.", file=sys.stderr) + exit(1) + + self.wr = module.Writer() + + def process_node(self, node): + # the condition node.upos == 'VERB' ensures that copulas do not enter this branch + if node.feats['Mood'] == 'Imp' and node.upos == 'VERB': + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + self.wr.write_node_info(node, + person=node.feats['Person'], + number=node.feats['Number'], + aspect=node.feats['Aspect'], + mood='Imp', + form='Fin', + voice='Act', + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords + ) + return + + # verbs in the passive forms are marked as ADJ + if node.upos == 'ADJ' and node.feats['Voice'] == 'Pass': + aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Mood'] == 'Imp'] + if len(aux) > 0: + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] + phrase_ords.sort() + + self.wr.write_node_info(node, + person=aux[0].feats['Person'], + number=aux[0].feats['Number'], + mood='Imp', + voice='Pass', + aspect=node.feats['Aspect'], + form='Fin', + polarity=self.wr.get_polarity(node,neg), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'] + ) + return + + + cop = [x for x in node.children if x.udeprel == 'cop' and x.feats['Mood'] == 'Imp'] + if len(cop) > 0: + prep = [x for x in node.children if x.upos == 'ADP'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + + copVerb = cop[0] + phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_ords.sort() + + self.wr.write_node_info(node, + person=copVerb.feats['Person'], + number=copVerb.feats['Number'], + mood='Imp', + form='Fin', + voice=self.wr.get_voice(node, refl), + reflex=self.wr.get_is_reflex(node, refl), + polarity=self.wr.get_polarity(node,neg), + ords=phrase_ords + ) + + + diff --git a/udapi/block/mwe/slavic_inf.py b/udapi/block/mwe/slavic_inf.py new file mode 100644 index 00000000..7c7d2e39 --- /dev/null +++ b/udapi/block/mwe/slavic_inf.py @@ -0,0 +1,90 @@ +#!/usr/bin/env python3 + +# Infinitive of Slavic languages + +from udapi.core.block import Block +import importlib +import sys + +class Slavic_inf(Block): + def __init__(self, writer_prefix='',**kwargs): + super().__init__(**kwargs) + if writer_prefix != '': + writer_module = ".".join([writer_prefix,'writer']) + else: + writer_module = 'writer' + try: + module = importlib.import_module(writer_module) + except ModuleNotFoundError as e: + print(e, file=sys.stderr) + print("Try to set writer_prefix parameter.", file=sys.stderr) + exit(1) + + self.wr = module.Writer() + + def process_node(self,node): + if node.feats['VerbForm'] == 'Inf' and node.upos == 'VERB': + aux = [x for x in node.children if x.udeprel == 'aux'] + if len(aux) == 0: # the list of auxiliary list must be empty - we don't want to mark infinitives which are part of any other phrase (for example the infinititive is part of the future tense in Czech) + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + voice='Act' + if self.wr.is_expl_pass(refl): + voice='Pass' + + self.wr.write_node_info(node, + aspect=node.feats['Aspect'], + voice=voice, + form='Inf', + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords + ) + return + + if node.upos == 'ADJ' and node.feats['Voice'] == 'Pass': + aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['VerbForm'] == 'Inf'] + aux_forb = [x for x in node.children if x.udeprel == 'aux' and x.feats['VerbForm'] != 'Inf'] + if len(aux) > 0 and len(aux_forb) == 0: + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + + phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_ords.sort() + + self.wr.write_node_info(node, + aspect=node.feats['Aspect'], + voice='Pass', + form='Inf', + polarity=self.wr.get_polarity(aux[0],neg), + reflex=self.wr.get_is_reflex(node, refl), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'], + number=node.feats['Number'] + ) + return + + + + cop = [x for x in node.children if x.udeprel == 'cop' and x.feats['VerbForm'] == 'Inf'] + aux_forb = [x for x in node.children if x.udeprel == 'aux'] + if len(cop) > 0 and len(aux_forb) == 0: + prep = [x for x in node.children if x.upos == 'ADP'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_ords.sort() + + self.wr.write_node_info(node, + voice=self.wr.get_voice(node, refl), + form='Inf', + polarity=self.wr.get_polarity(cop[0],neg), + reflex=self.wr.get_is_reflex(node, refl), + ords=phrase_ords + ) + diff --git a/udapi/block/mwe/slavic_past.py b/udapi/block/mwe/slavic_past.py new file mode 100644 index 00000000..6f9a6816 --- /dev/null +++ b/udapi/block/mwe/slavic_past.py @@ -0,0 +1,156 @@ +#!/usr/bin/env python3 + +# Past tense of Slavic languages + +from udapi.core.block import Block +import importlib +import sys + +class Slavic_past(Block): + def __init__(self, writer_prefix='',**kwargs): + super().__init__(**kwargs) + if writer_prefix != '': + writer_module = ".".join([writer_prefix,'writer']) + else: + writer_module = 'writer' + try: + module = importlib.import_module(writer_module) + except ModuleNotFoundError as e: + print(e, file=sys.stderr) + print("Try to set writer_prefix parameter.", file=sys.stderr) + exit(1) + + self.wr = module.Writer() + + def get_person_for_langs_with_simple_past(self, node, person): + """ + returns the person which is known from subject, languages with the simple past tense (e. g. Russian) do not express person in these verb forms + if the person was not taken from the subject, the third person would be filled in automatically due to languages ​​with a compound past but simple forms for the third person (e. g. Czech) + """ + subj = [x for x in node.children if x.udeprel == "nsubj"] + if subj: + subj = subj[0] + if subj.feats['Person'] != '': + person = subj.feats['Person'] + return person + + def process_node(self, node): + + cop = [x for x in node.children if x.udeprel == "cop" and x.feats['Tense'] == 'Past'] + + # compound past tense + if node.feats['VerbForm'] == 'Part' and node.upos == 'VERB' and node.feats['Voice'] != 'Pass': + aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd'] # we don't want to mark l-participles in the conditional as past tense + if len(aux_cnd) == 0: + if len(aux) > 0: + person = aux[0].feats['Person'] + + elif len(aux) == 0: + person = '3' + + + self.wr.write_node_info(node, + tense='Past', + person=person, + number=node.feats['Number'], + mood='Ind', + voice=self.wr.get_voice(node,refl), + aspect=node.feats['Aspect'], + form='Fin', + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'] + ) + + # the past tense of some Slavic languages ​​is formed only by a verb without an auxiliary verb (e.g. Polish) + elif node.feats['Tense'] == 'Past' and node.upos == 'VERB' and node.feats['VerbForm'] != 'Conv': + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + self.wr.write_node_info(node, + tense='Past', + person=node.feats['Person'], + number=node.feats['Number'], + mood='Ind', + voice=self.wr.get_voice(node,refl), + aspect=node.feats['Aspect'], + form=node.feats['VerbForm'], + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'] + ) + + + # passivum + elif node.upos == 'ADJ' and node.feats['Voice'] == 'Pass' and len(cop) == 0: + aux_past_tense = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Past'] + aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd'] # we don't want to mark l-participles in the conditional as past tense + if len(aux_cnd) == 0: + if len(aux_past_tense) > 0: + aux_pres_tense = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres'] # e. g. the auxiliary 'jsem' in the phrase 'byl jsem přinucen' + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + phrase_ords = [node.ord] + [x.ord for x in aux_past_tense] + [x.ord for x in aux_pres_tense] + [x.ord for x in neg] + phrase_ords.sort() + + person = '3' + if aux_pres_tense: + person = aux_pres_tense[0].feats['Person'] + person = self.get_person_for_langs_with_simple_past(node, person) + + self.wr.write_node_info(node, + tense='Past', + person=person, + number=aux_past_tense[0].feats['Number'], + mood='Ind', + voice='Pass', + form='Fin', + aspect=node.feats['Aspect'], + polarity=self.wr.get_polarity(aux_past_tense[0],neg), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'] + ) + + else: + aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd'] # we don't want to mark l-participles in the conditional as past tense + if len(cop) > 0 and len(aux_cnd) == 0: + aux_past_tense = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres'] + prep = [x for x in node.children if x.upos == 'ADP'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + + phrase_ords = [node.ord] + [x.ord for x in aux_past_tense] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_ords.sort() + + person = '3' + if aux_past_tense: + person = aux_past_tense[0].feats["Person"] + person = self.get_person_for_langs_with_simple_past(node, person) + + self.wr.write_node_info(node, + tense='Past', + person=person, + number=cop[0].feats['Number'], + mood='Ind', + voice=self.wr.get_voice(node, refl), + form='Fin', + reflex=self.wr.get_is_reflex(node,refl), + polarity=self.wr.get_polarity(cop[0],neg), + ords=phrase_ords, + gender=cop[0].feats['Gender'], + animacy=cop[0].feats['Animacy'] + ) diff --git a/udapi/block/mwe/slavic_pres.py b/udapi/block/mwe/slavic_pres.py new file mode 100644 index 00000000..9ab9545d --- /dev/null +++ b/udapi/block/mwe/slavic_pres.py @@ -0,0 +1,104 @@ +#!/usr/bin/env python3 + +# Present tense of Slavic languages + +from udapi.core.block import Block +import importlib +import sys + +class Slavic_pres(Block): + def __init__(self, writer_prefix='',**kwargs): + super().__init__(**kwargs) + if writer_prefix != '': + writer_module = ".".join([writer_prefix,'writer']) + else: + writer_module = 'writer' + try: + module = importlib.import_module(writer_module) + except ModuleNotFoundError as e: + print(e, file=sys.stderr) + print("Try to set writer_prefix parameter.", file=sys.stderr) + exit(1) + + self.wr = module.Writer() + + def process_node(self,node): + # the condition VerbForm == 'Fin' ensures that there are no transgressives between the found verbs + + if node.feats['Tense'] == 'Pres' and node.upos == 'VERB' and node.feats['VerbForm'] == 'Fin': #and node.feats['Aspect']=='Imp': + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + aux_forb = [x for x in node.children if x.upos == 'AUX' and (x.lemma == 'ќе' or x.lemma == 'ще' or x.feats['Mood'] == 'Cnd')] # forbidden auxiliaries for present tense (these auxiliaries are used for the future tense or the conditional mood) + + if len(aux_forb) == 0: + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + self.wr.write_node_info(node, + tense='Pres', + person=node.feats['Person'], + number=node.feats['Number'], + mood='Ind', + aspect=node.feats['Aspect'], + voice=self.wr.get_voice(node,refl), + form='Fin', + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords + ) + return + + + # passive voice + if node.upos == 'ADJ' and node.feats['Voice'] == 'Pass': + aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres' and x.lemma != 'hteti' and x.lemma != 'htjeti'] + aux_forb = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] != 'Pres'] # we don't want the past passive (e. g. 'byl jsem poučen' in Czech) + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] + phrase_ords.sort() + + if len(aux) > 0 and len(aux_forb) == 0: + auxVerb = aux[0] + + self.wr.write_node_info(node, + tense='Pres', + person=auxVerb.feats['Person'], + number=auxVerb.feats['Number'], + mood='Ind', + aspect=node.feats['Aspect'], + form='Fin', + voice='Pass', + polarity=self.wr.get_polarity(auxVerb,neg), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'] + ) + return + + cop = [x for x in node.children if x.udeprel == "cop" and x.feats['Tense'] == "Pres"] + aux = [x for x in node.children if x.udeprel == "aux" and x.feats['Mood'] == "Ind" and x.feats['Tense'] == 'Pres'] + aux_forb = [x for x in node.children if x.upos == 'AUX' and x.feats['Tense'] != 'Pres'] # in Serbian this can be a future tense + prep = [x for x in node.children if x.upos == 'ADP'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + + if len(cop) > 0 and len(aux_forb) == 0: + copVerb = cop[0] + + phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in aux] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_ords.sort() + + self.wr.write_node_info(node, + tense='Pres', + person=copVerb.feats['Person'], + number=copVerb.feats['Number'], + aspect=node.feats['Aspect'], + mood='Ind', + form='Fin', + voice=self.wr.get_voice(node, refl), + reflex=self.wr.get_is_reflex(node, refl), + polarity=self.wr.get_polarity(copVerb,neg), + ords=phrase_ords + ) + diff --git a/udapi/block/mwe/slavic_transgressive.py b/udapi/block/mwe/slavic_transgressive.py new file mode 100644 index 00000000..4ffbdaea --- /dev/null +++ b/udapi/block/mwe/slavic_transgressive.py @@ -0,0 +1,96 @@ +#!/usr/bin/env python3 + +# Transgressives of Slavic languages + +from udapi.core.block import Block +import importlib +import sys + +class Slavic_transgressive(Block): + def __init__(self, writer_prefix='',**kwargs): + super().__init__(**kwargs) + if writer_prefix != '': + writer_module = ".".join([writer_prefix,'writer']) + else: + writer_module = 'writer' + try: + module = importlib.import_module(writer_module) + except ModuleNotFoundError as e: + print(e, file=sys.stderr) + print("Try to set writer_prefix parameter.", file=sys.stderr) + exit(1) + + self.wr = module.Writer() + + def process_node(self, node): + # condition node.upos == 'VERB' to prevent copulas from entering this branch + if node.feats['VerbForm'] == 'Conv' and node.upos == 'VERB': + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + self.wr.write_node_info(node, + person=node.feats['Person'], + number=node.feats['Number'], + form='Conv', + tense=node.feats['Tense'], + aspect=node.feats['Aspect'], + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'], + voice=self.wr.get_voice(node, refl) + ) + + # passive voice + elif node.upos == 'ADJ': + aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['VerbForm'] == 'Conv'] + + if len(aux) > 0: + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + auxVerb = aux[0] + phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] + phrase_ords.sort() + + self.wr.write_node_info(node, + person=auxVerb.feats['Person'], + number=auxVerb.feats['Number'], + form='Conv', + tense=auxVerb.feats['Tense'], + aspect=node.feats['Aspect'], + polarity=self.wr.get_polarity(auxVerb,neg), + ords=phrase_ords, + gender=auxVerb.feats['Gender'], + animacy=auxVerb.feats['Animacy'], + voice='Pass' + ) + + # copulas + else: + cop = [x for x in node.children if x.udeprel == 'cop' and x.feats['VerbForm'] == 'Conv'] + + if len(cop) > 0: + prep = [x for x in node.children if x.upos == 'ADP'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + + copVerb = cop[0] + phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_ords.sort() + + + self.wr.write_node_info(node, + person=copVerb.feats['Person'], + number=copVerb.feats['Number'], + tense=copVerb.feats['Tense'], + gender=copVerb.feats['Gender'], + animacy=copVerb.feats['Animacy'], + form='Conv', + polarity=self.wr.get_polarity(node,neg), + ords=phrase_ords, + voice=self.wr.get_voice(node, refl) + ) + From c4784b639bc9f07ebf4f80085902f51f4522ffba Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 23 Dec 2024 22:54:39 +0100 Subject: [PATCH 136/233] Phrase features to MS features. --- udapi/block/mwe/msfinit.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/udapi/block/mwe/msfinit.py b/udapi/block/mwe/msfinit.py index 7f0eb185..da83c19a 100644 --- a/udapi/block/mwe/msfinit.py +++ b/udapi/block/mwe/msfinit.py @@ -3,6 +3,7 @@ Initialization. Copies features from FEATS as MSF* attributes to MISC. """ from udapi.core.block import Block +import re class MsfInit(Block): @@ -39,3 +40,14 @@ def process_node(self, node): node.misc['MSFCase'] = 'Nom' elif node.udeprel == 'obj': node.misc['MSFCase'] = 'Acc' + # If the node contains Phrase features in MISC (periphrastic verb forms + # detected by Lenka's code), replace the MS features with them. + phrasefeatures = [x for x in node.misc if re.match(r"^Phrase[A-Z]", x)] + for pf in phrasefeatures: + msf = pf + if msf == 'PhraseForm': + msf = 'MSFVerbForm' + else: + msf = re.sub(r"Phrase", 'MSF', pf) + node.misc[msf] = node.misc[pf] + node.misc[pf] = '' From 0890479e589100d8e94750d1f1f662457e07fe17 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 24 Dec 2024 15:59:44 +0100 Subject: [PATCH 137/233] Create abstract nodes for missing subjects. --- udapi/block/mwe/msfcreateabstract.py | 33 ++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 udapi/block/mwe/msfcreateabstract.py diff --git a/udapi/block/mwe/msfcreateabstract.py b/udapi/block/mwe/msfcreateabstract.py new file mode 100644 index 00000000..ca3521fd --- /dev/null +++ b/udapi/block/mwe/msfcreateabstract.py @@ -0,0 +1,33 @@ +""" +Morphosyntactic features (UniDive): +Create abstract nodes representing dropped arguments of predicates (if verbal +morphology signals that the subject is third person singular, and there is no +subject node, create an abstract node and copy the features there). +""" +from udapi.core.block import Block +import re + +class MsfCreateAbstract(Block): + + def process_node(self, node): + """ + If a node has MSFVerbForm=Fin and at least one of the agreement features + MSFNumber, MSFPerson, MSFGender, MSFAnimacy, MSFPolite, assume that these + features characterize the subject (this block is not suitable for languages + with polypersonal agreement). Check that the subject is present. If not, + create an abstract node to represent it. + """ + if node.misc['MSFVerbForm'] == 'Fin' and any([node.misc[x] for x in ['MSFNumber', 'MSFPerson', 'MSFGender', 'MSFAnimacy', 'MSFPolite']]): + # Current node is a finite predicate. Does it have a subject? If not, create an abstract one. + if not any([x.udeprel in ['nsubj', 'csubj'] for x in node.children]): + # There could already be an abstract subject. We have to look for it in the enhanced graph. + if not any([re.match(r"^[nc]subj", edep['deprel']) for edep in node.deps]): + # Create an abstract subject. + subject = node.create_empty_child('nsubj') + subject.upos = 'PRON' + subject.feats['PronType'] = 'Prs' + for f in ['Number', 'Person', 'Gender', 'Animacy', 'Polite']: + msf = 'MSF' + f + if node.misc[msf]: + subject.feats[f] = node.misc[msf] + subject.misc[msf] = node.misc[msf] From 8c047c3d0cf330ca66b0a9c80fc31787288b7474 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 24 Dec 2024 16:09:01 +0100 Subject: [PATCH 138/233] Make sure that MS features of the abstract subject survive. --- udapi/block/mwe/msfcreateabstract.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/mwe/msfcreateabstract.py b/udapi/block/mwe/msfcreateabstract.py index ca3521fd..7175eb9e 100644 --- a/udapi/block/mwe/msfcreateabstract.py +++ b/udapi/block/mwe/msfcreateabstract.py @@ -26,8 +26,10 @@ def process_node(self, node): subject = node.create_empty_child('nsubj') subject.upos = 'PRON' subject.feats['PronType'] = 'Prs' + subject.misc['MSFPronType'] = 'Prs' for f in ['Number', 'Person', 'Gender', 'Animacy', 'Polite']: msf = 'MSF' + f if node.misc[msf]: subject.feats[f] = node.misc[msf] subject.misc[msf] = node.misc[msf] + subject.misc['MSFFunc'] = 'No' From 3cb1a53baa625befbc5e796861ba067dfbc87bc3 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 24 Dec 2024 16:17:03 +0100 Subject: [PATCH 139/233] Case for abstract subjects. --- udapi/block/mwe/msfcreateabstract.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/mwe/msfcreateabstract.py b/udapi/block/mwe/msfcreateabstract.py index 7175eb9e..c3f08bdf 100644 --- a/udapi/block/mwe/msfcreateabstract.py +++ b/udapi/block/mwe/msfcreateabstract.py @@ -27,6 +27,8 @@ def process_node(self, node): subject.upos = 'PRON' subject.feats['PronType'] = 'Prs' subject.misc['MSFPronType'] = 'Prs' + subject.feats['Case'] = 'Nom' + subject.misc['MSFCase'] = 'Nom' for f in ['Number', 'Person', 'Gender', 'Animacy', 'Polite']: msf = 'MSF' + f if node.misc[msf]: From 3b95c0e0044f670e1e77be06f1fea66b8dceb366 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 20 Jan 2025 16:39:49 +0100 Subject: [PATCH 140/233] Removed unused import. --- udapi/block/ud/fixpseudocop.py | 1 - 1 file changed, 1 deletion(-) diff --git a/udapi/block/ud/fixpseudocop.py b/udapi/block/ud/fixpseudocop.py index ecc5f0bd..f4d9a1ec 100644 --- a/udapi/block/ud/fixpseudocop.py +++ b/udapi/block/ud/fixpseudocop.py @@ -2,7 +2,6 @@ but they should be treated as normal verbs (with secondary predication) instead.""" from udapi.core.block import Block -import logging import re class FixPseudoCop(Block): From ebf6e394b1dfc6ad29fe20b4dbd72d0c51a4a319 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 21 Jan 2025 10:59:18 +0100 Subject: [PATCH 141/233] Tokenization. --- tutorial/udapi-tutorial-dz.odt | Bin 201247 -> 201577 bytes tutorial/udapi-tutorial-dz.pdf | Bin 334412 -> 336517 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/tutorial/udapi-tutorial-dz.odt b/tutorial/udapi-tutorial-dz.odt index aba91234a8f850276b647e58bfb7810fc6d422be..73e4058852f195b87a156f7d11089b5a10b5abd0 100644 GIT binary patch delta 59467 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 z
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 diff --git a/tutorial/udapi-tutorial-dz.pdf b/tutorial/udapi-tutorial-dz.pdf index 54b5f8d127fc025590b8f611683b1fd6ad5fb545..b58a13d29b2502af1106b0ebc6983f7ba58b075b 100644 GIT binary patch delta 40950 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 From d152845c0147a1612a2cdc27a5ebdec399c4bdee Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 7 Feb 2025 21:00:58 +0100 Subject: [PATCH 142/233] Minor. --- udapi/block/util/joinsentence.py | 1 - 1 file changed, 1 deletion(-) diff --git a/udapi/block/util/joinsentence.py b/udapi/block/util/joinsentence.py index d83ba1c3..578f3865 100644 --- a/udapi/block/util/joinsentence.py +++ b/udapi/block/util/joinsentence.py @@ -3,7 +3,6 @@ """ import logging from udapi.core.block import Block -from udapi.core.root import Root class JoinSentence(Block): """ From febfe532bb9f4ecaf1b55bb6258e7348fd1d88c8 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 9 Mar 2025 12:38:57 +0100 Subject: [PATCH 143/233] =?UTF-8?q?Czech=20compound=20preposition=20"tv?= =?UTF-8?q?=C3=A1=C5=99=C3=AD=20v=20tv=C3=A1=C5=99=20+=20dative".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index e99c2821..1b5980d4 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -156,6 +156,7 @@ class FixEdeprels(Block): 'takže': 'takže', # remove morphological case 'takže_a': 'takže', 'třebaže': 'třebaže', # remove morphological case + 'tvář_v_tvář': 'tváří_v_tvář:dat', 'u': 'u:gen', 'u_příležitost': 'u_příležitosti:gen', 'uprostřed': 'uprostřed:gen', From 9aba7037f8b80543bad8c46ac2a7922656c4f432 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 9 Mar 2025 12:56:34 +0100 Subject: [PATCH 144/233] More Czech multiword prepositions. --- udapi/block/ud/cs/fixedeprels.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 1b5980d4..97ea2e95 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -19,10 +19,12 @@ class FixEdeprels(Block): 'jakkoli': [], # 'jakkoliv' se převede na 'jakkoli' dole 'jako': [], 'jakoby': ['jakoby_pod:ins'], # these instances in FicTree should be spelled 'jako by' + 'když': [], 'než': ['než_aby'], 'protože': [], 'takže': [], - 'třebaže': [] + 'třebaže': [], + 'že': [] } # Secondary prepositions sometimes have the lemma of the original part of @@ -90,6 +92,7 @@ class FixEdeprels(Block): 'na_od': 'na_rozdíl_od:gen', 'na_podklad': 'na_podkladě:gen', 'na_rozdíl_od': 'na_rozdíl_od:gen', + 'na_účet': 'na_účet:gen', 'na_újma': 'gen', # 'nebude na újmu' is a multi-word predicate but 'na újmu' is probably not used as an independent oblique modifier 'na_úroveň': 'na_úrovni:gen', 'na_úsek': 'na_úseku:gen', @@ -162,8 +165,11 @@ class FixEdeprels(Block): 'uprostřed': 'uprostřed:gen', 'uvnitř': 'uvnitř:gen', 'v_analogie_s': 'v_analogii_s:ins', + 'v_blízkost': 'v_blízkosti:gen', + 'v_čas': 'v_čase:gen', 'v_čelo': 'v_čele:gen', 'v_čelo_s': 'v_čele_s:ins', + 'v_doba': 'v_době:gen', 'v_dohoda_s': 'v_dohodě_s:ins', 'v_duch': 'v_duchu:gen', 'v_důsledek': 'v_důsledku:gen', @@ -219,6 +225,7 @@ class FixEdeprels(Block): 'vina': 'vinou:gen', 'vliv': 'vlivem:gen', 'vůči': 'vůči:dat', + 'výměna_za': 'výměnou_za:acc', 'vzhledem': 'vzhledem_k:dat', 'vzhledem_k': 'vzhledem_k:dat', 'z': 'z:gen', From 944096eccbdb6e1c10a5ccaee4db55fd8e84a124 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 9 Mar 2025 13:13:35 +0100 Subject: [PATCH 145/233] More Czech multiword prepositions. --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 97ea2e95..fe224ec0 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -115,6 +115,7 @@ class FixEdeprels(Block): 'oproti': 'oproti:dat', 'po_v': 'po:loc', 'po_doba': 'po_dobu:gen', + 'po_stránka': 'po_stránce:gen', 'po_vzor': 'po_vzoru:gen', 'poblíž': 'poblíž:gen', 'počátek': 'počátkem:gen', From c1a9cd5c2300bedafd3066794deba250906aaa5a Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 9 Mar 2025 14:07:43 +0100 Subject: [PATCH 146/233] More Czech multiword prepositions. --- udapi/block/ud/cs/fixedeprels.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index fe224ec0..321e5c0c 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -73,6 +73,7 @@ class FixEdeprels(Block): 'jako_kupříkladu': 'jako', 'jakoby': 'jako', 'jakoby_pod': 'pod:ins', + 'jakožto': 'jako', 'jelikož_do': 'jelikož', 'jestli_že': 'jestliže', 'k': 'k:dat', @@ -119,6 +120,7 @@ class FixEdeprels(Block): 'po_vzor': 'po_vzoru:gen', 'poblíž': 'poblíž:gen', 'počátek': 'počátkem:gen', + 'počínaje': 'počínaje:ins', 'počínat': 'počínaje:ins', 'pod_dojem': 'pod_dojmem:gen', 'pod_vliv': 'pod_vlivem:gen', From fb951a87403f9efb7da4fb24cb32f7ab3c57e189 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 9 Mar 2025 15:54:50 +0100 Subject: [PATCH 147/233] More Czech multiword prepositions. --- udapi/block/ud/cs/fixedeprels.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 321e5c0c..19de03f1 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -13,6 +13,7 @@ class FixEdeprels(Block): outermost = { 'ač': [], 'ačkoli': [], # 'ačkoliv' se převede na 'ačkoli' dole + 'ať': [], 'byť': [], 'i_když': [], 'jak': [], @@ -21,6 +22,7 @@ class FixEdeprels(Block): 'jakoby': ['jakoby_pod:ins'], # these instances in FicTree should be spelled 'jako by' 'když': [], 'než': ['než_aby'], + 'nežli': [], 'protože': [], 'takže': [], 'třebaže': [], From 5f66efc8d5d3acbe5023873176f652f99ead2bc3 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 9 Mar 2025 16:02:47 +0100 Subject: [PATCH 148/233] More Czech multiword prepositions. --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 19de03f1..68b9d8f5 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -11,6 +11,7 @@ class FixEdeprels(Block): # by all the inner cases. # The list in the value contains exceptions that should be left intact. outermost = { + 'aby': [], 'ač': [], 'ačkoli': [], # 'ačkoliv' se převede na 'ačkoli' dole 'ať': [], From d54bb7015a788f3cc84289292f4b504676e3325a Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 9 Mar 2025 16:16:26 +0100 Subject: [PATCH 149/233] More Czech multiword prepositions. --- udapi/block/ud/cs/fixedeprels.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 68b9d8f5..8286c370 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -68,6 +68,7 @@ class FixEdeprels(Block): 'do_rozpor_s': 'do_rozporu_s:ins', 'do_soulad_s': 'do_souladu_s:ins', 'forma': 'formou:gen', + 'hledět_na': 'nehledě_na:acc', 'i_když': 'i_když', # remove morphological case 'jak_aby': 'jak', 'jak_ad': 'jak', @@ -81,6 +82,7 @@ class FixEdeprels(Block): 'jestli_že': 'jestliže', 'k': 'k:dat', 'k_konec': 'ke_konci:gen', + 'k_prospěch': 'ku_prospěchu:gen', 'kdykoliv': 'kdykoli', 'kol': 'kolem:gen', 'kolem': 'kolem:gen', @@ -105,6 +107,7 @@ class FixEdeprels(Block): 'na_závěr': 'na_závěr:gen', 'namísto': 'namísto:gen', 'namísto_do': 'do:gen', + 'napospas': 'napospas:dat', 'narozdíl_od': 'na_rozdíl_od:gen', 'následek': 'následkem:gen', 'navzdory': 'navzdory:dat', @@ -118,6 +121,7 @@ class FixEdeprels(Block): 'okolo': 'okolo:gen', 'oproti': 'oproti:dat', 'po_v': 'po:loc', + 'po_bok': 'po_boku:gen', 'po_doba': 'po_dobu:gen', 'po_stránka': 'po_stránce:gen', 'po_vzor': 'po_vzoru:gen', @@ -127,6 +131,7 @@ class FixEdeprels(Block): 'počínat': 'počínaje:ins', 'pod_dojem': 'pod_dojmem:gen', 'pod_vliv': 'pod_vlivem:gen', + 'pod_záminka': 'pod_záminkou:gen', 'podle': 'podle:gen', 'pomoc': 'pomocí:gen', 'pomocí': 'pomocí:gen', @@ -143,6 +148,7 @@ class FixEdeprels(Block): 'přestože': 'přestože', # remove morphological case 'při': 'při:loc', 'při_příležitost': 'při_příležitosti:gen', + 'ruka_v_ruka_s': 'ruku_v_ruce_s:ins', 's_ohled_k': 's_ohledem_k:dat', 's_ohled_na': 's_ohledem_na:acc', 's_pomoc': 's_pomocí:gen', @@ -199,6 +205,7 @@ class FixEdeprels(Block): 'v_případ': 'v_případě:gen', 'v_případ_že': 'v_případě_že', 'v_rámec': 'v_rámci:gen', + 'v_reakce_na': 'v_reakci_na:acc', 'v_rozpor_s': 'v_rozporu_s:ins', 'v_řada': 'v_řadě:gen', 'v_shoda_s': 've_shodě_s:ins', @@ -228,8 +235,10 @@ class FixEdeprels(Block): 'v_znamení': 've_znamení:gen', 'včetně': 'včetně:gen', 'vedle': 'vedle:gen', + 'versus': 'versus:nom', 'vina': 'vinou:gen', 'vliv': 'vlivem:gen', + 'vlivem': 'vlivem:gen', 'vůči': 'vůči:dat', 'výměna_za': 'výměnou_za:acc', 'vzhledem': 'vzhledem_k:dat', From 1b3f0405f7140540a7a1e90b6acd62c51bba3770 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 9 Mar 2025 21:59:51 +0100 Subject: [PATCH 150/233] More Czech multiword prepositions. --- udapi/block/ud/cs/fixedeprels.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 8286c370..1fe7f3bc 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -24,6 +24,7 @@ class FixEdeprels(Block): 'když': [], 'než': ['než_aby'], 'nežli': [], + 'pokud': [], 'protože': [], 'takže': [], 'třebaže': [], @@ -55,8 +56,10 @@ class FixEdeprels(Block): 'bez_ohled_na': 'bez_ohledu_na:acc', 'bez_zřetel_k': 'bez_zřetele_k:dat', 'bez_zřetel_na': 'bez_zřetele_na:acc', + 'blízko': 'blízko:dat', 'blíž': 'blízko:dat', 'cesta': 'cestou:gen', + 'coby': 'coby', # remove morphological case 'daleko': 'nedaleko:gen', 'daleko_od': 'od:gen', 'dík': 'díky:dat', @@ -68,8 +71,10 @@ class FixEdeprels(Block): 'do_rozpor_s': 'do_rozporu_s:ins', 'do_soulad_s': 'do_souladu_s:ins', 'forma': 'formou:gen', + 'formou': 'formou:gen', 'hledět_na': 'nehledě_na:acc', 'i_když': 'i_když', # remove morphological case + 'i_pro': 'pro:acc', 'jak_aby': 'jak', 'jak_ad': 'jak', 'jakkoliv': 'jakkoli', @@ -89,6 +94,7 @@ class FixEdeprels(Block): 'konec': 'koncem:gen', 'krom': 'kromě:gen', 'kromě': 'kromě:gen', + 'li_jako': 'li', 'liž': 'li', 'mezi_uvnitř': 'uvnitř:gen', 'na_báze': 'na_bázi:gen', @@ -105,6 +111,7 @@ class FixEdeprels(Block): 'na_základ': 'na_základě:gen', 'na_základna': 'na_základně:gen', 'na_závěr': 'na_závěr:gen', + 'na_zda': 'na:loc', # na tom, zda a v jaké formě... 'namísto': 'namísto:gen', 'namísto_do': 'do:gen', 'napospas': 'napospas:dat', @@ -138,6 +145,7 @@ class FixEdeprels(Block): 'postup': 'postupem:gen', 'pouze_v': 'v:loc', 'pro': 'pro:acc', + 'pro_aby': 'pro:acc', 'prostřednictví': 'prostřednictvím:gen', 'prostřednictvím': 'prostřednictvím:gen', 'proti': 'proti:dat', @@ -147,6 +155,7 @@ class FixEdeprels(Block): 'přes': 'přes:acc', 'přestože': 'přestože', # remove morphological case 'při': 'při:loc', + 'při_pro': 'při:loc', 'při_příležitost': 'při_příležitosti:gen', 'ruka_v_ruka_s': 'ruku_v_ruce_s:ins', 's_ohled_k': 's_ohledem_k:dat', @@ -192,12 +201,14 @@ class FixEdeprels(Block): 'v_konfrontace_s': 'v_konfrontaci_s:ins', 'v_kontext_s': 'v_kontextu_s:ins', 'v_na': 'na:loc', + 'v_neprospěch': 'v_neprospěch:gen', 'v_oblast': 'v_oblasti:gen', 'v_oblast_s': 's:ins', 'v_obor': 'v_oboru:gen', 'v_otázka': 'v_otázce:gen', 'v_podoba': 'v_podobě:gen', 'v_poměr_k': 'v_poměru_k:dat', + 'v_porovnání_s': 'v_porovnání_s:ins', 'v_proces': 'v_procesu:gen', 'v_prospěch': 've_prospěch:gen', 'v_protiklad_k': 'v_protikladu_k:dat', @@ -224,6 +235,8 @@ class FixEdeprels(Block): 'v_s_spolupráce': 've_spolupráci_s:ins', 'v_srovnání_s': 've_srovnání_s:ins', 'v_srovnání_se': 've_srovnání_s:ins', + 'v_stav': 've_stavu:gen', + 'v_stín': 've_stínu:gen', 'v_světlo': 've_světle:gen', 'v_věc': 've_věci:gen', 'v_vztah_k': 've_vztahu_k:dat', @@ -251,6 +264,7 @@ class FixEdeprels(Block): 'z_strana': 'ze_strany:gen', 'z_nedostatek': 'z_nedostatku:gen', 'z_titul': 'z_titulu:gen', + 'z_začátek': 'ze_začátku:gen', 'za_pomoc': 'za_pomoci:gen', 'za_účast': 'za_účasti:gen', 'za_účel': 'za_účelem:gen', From 2a28f11915730d3cc2daf8128c42a0c57ea1dd2c Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 10 Mar 2025 15:24:38 +0100 Subject: [PATCH 151/233] A temporary hack to silence the UD validator about https://github.com/UniversalDependencies/UD_Czech-PDT/issues/10#issuecomment-2710721703 --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 1fe7f3bc..df9699ee 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -54,6 +54,7 @@ class FixEdeprels(Block): 'během': 'během:gen', 'bez': 'bez:gen', 'bez_ohled_na': 'bez_ohledu_na:acc', + 'bez_na': 'bez_ohledu_na:acc', ###!!! a temporary hack to silence the validator about (https://github.com/UniversalDependencies/UD_Czech-PDT/issues/10#issuecomment-2710721703) 'bez_zřetel_k': 'bez_zřetele_k:dat', 'bez_zřetel_na': 'bez_zřetele_na:acc', 'blízko': 'blízko:dat', From 34c80eeb387ef7c5db7e8f134cb74bef004d255c Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 10 Mar 2025 15:44:11 +0100 Subject: [PATCH 152/233] advcl:pro:acc (byl by pro, abychom...) --- udapi/block/ud/cs/fixedeprels.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index df9699ee..182acd0b 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -303,13 +303,13 @@ def process_node(self, node): for edep in node.deps: m = re.match(r'^(obl(?::arg)?|nmod|advcl|acl(?::relcl)?):', edep['deprel']) if m: - bdeprel = m.group(1) solved = False # Issues caused by errors in the original annotation must be fixed early. # Especially if acl|advcl occurs with a preposition that unambiguously # receives a morphological case in the subsequent steps, and then gets # flagged as solved. edep['deprel'] = re.sub(r'^advcl:do(?::gen)?$', r'obl:do:gen', edep['deprel']) # od nevidím do nevidím ###!!! Ale měli bychom opravit i závislost v základním stromu! + edep['deprel'] = re.sub(r'^advcl:pro(?::acc)?$', r'advcl:aby', edep['deprel']) # byl by pro, abychom... ###!!! Opravit i konverzi stromu. edep['deprel'] = re.sub(r'^acl:k(?::dat)?$', r'acl', edep['deprel']) edep['deprel'] = re.sub(r'^advcl:k(?::dat)?$', r'obl:k:dat', edep['deprel']) ###!!! Ale měli bychom opravit i závislost v základním stromu! edep['deprel'] = re.sub(r'^advcl:místo(?::gen)?$', r'obl:místo:gen', edep['deprel']) # 'v poslední době se množí bysem místo bych' From 7fe5fbec5451438d5aab35fd155962b3314f6f18 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 14 Mar 2025 18:16:07 +0100 Subject: [PATCH 153/233] Redundant. Rules for compatibility between UPOS and DEPREL are now part of the UD validator and any updates, if needed, are done there. https://github.com/UniversalDependencies/docs/issues/691#issuecomment-2725233714 --- udapi/block/ud/markbugs.py | 8 -------- 1 file changed, 8 deletions(-) diff --git a/udapi/block/ud/markbugs.py b/udapi/block/ud/markbugs.py index 2204eb4f..7161af86 100644 --- a/udapi/block/ud/markbugs.py +++ b/udapi/block/ud/markbugs.py @@ -180,14 +180,6 @@ def process_node(self, node): if upos == 'PUNCT' and node.is_nonprojective_gap() and not parent.is_nonprojective_gap(): self.log(node, 'punct-nonproj-gap', 'upos=PUNCT and causing a non-projectivity') - # http://universaldependencies.org/u/dep/cc.html says - # "cc is the relation between a conjunct and a preceding - # [coordinating conjunction](http://universaldependencies.org/u/pos/CCONJ)." - # No other upos is allowed in the documentation, although e.g. PART is common in the data. - # There are clear cases of adverbs in role of cc (e.g. "respektive" in Swedish and Czech). - if udeprel == 'cc' and upos not in ('CCONJ', 'ADV'): - self.log(node, 'cc-upos', "deprel=cc upos!=CCONJ (but %s): " % upos) - if udeprel == 'cop': lemma = node.lemma if node.lemma != '_' else form self.cop_nodes[lemma].append(node) From 9d7af1b269cbbdce838e4c2d73524021cefa9efe Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 14 Mar 2025 18:23:54 +0100 Subject: [PATCH 154/233] The Degree feature has become more complex over time. The UD validator can now work with pre-registered language-upos-feature-value combinations and it seems better to let the validator alone identify such errors. https://github.com/UniversalDependencies/docs/issues/691#issuecomment-2725233714 --- udapi/block/ud/markbugs.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/udapi/block/ud/markbugs.py b/udapi/block/ud/markbugs.py index 7161af86..5f8cd463 100644 --- a/udapi/block/ud/markbugs.py +++ b/udapi/block/ud/markbugs.py @@ -127,10 +127,6 @@ def process_node(self, node): if not feats['Mood']: self.log(node, 'finverb-mood', 'VerbForm=Fin but Mood feature is missing') - if feats['Degree'] and upos not in ('ADJ', 'ADV'): - self.log(node, 'degree-upos', - 'Degree=%s upos!=ADJ|ADV (but %s)' % (feats['Degree'], upos)) - subject_children = [n for n in node.children if 'subj' in n.udeprel and n.sdeprel != 'outer'] if len(subject_children) > 1: self.log(node, 'multi-subj', 'More than one (non-outer) [nc]subj child') From 90df8d2478015b7895a2a4fd64c688b8102d1397 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 14 Mar 2025 18:32:54 +0100 Subject: [PATCH 155/233] It is not clear whether "obj" and "ccomp" cannot co-occur (while two "obj" cannot). https://github.com/UniversalDependencies/docs/issues/691#issuecomment-2725233714 --- udapi/block/ud/markbugs.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/markbugs.py b/udapi/block/ud/markbugs.py index 5f8cd463..bf47ed75 100644 --- a/udapi/block/ud/markbugs.py +++ b/udapi/block/ud/markbugs.py @@ -131,7 +131,15 @@ def process_node(self, node): if len(subject_children) > 1: self.log(node, 'multi-subj', 'More than one (non-outer) [nc]subj child') - object_children = [n for n in node.children if n.udeprel in ('obj', 'ccomp')] + # Since "ccomp" is considered a clausal counterpart of "obj" in UD v2, + # one may conclude that "obj" and "ccomp" are mutually exclusive. + # However, this has always be a gray zone and people have occasionally + # brought up examples where they would want the two relations to co-occur. + # Also, there is no clausal counterpart for "iobj", which may cause some + # of the problems. It is probably safer not to consider "ccomp" in this + # test. Nevertheless, two "obj" under the same parent are definitely an + # error. + object_children = [n for n in node.children if n.udeprel == 'obj'] if len(object_children) > 1: self.log(node, 'multi-obj', 'More than one obj|ccomp child') From 2b1af68e441f0798ce61ce846ea9efc54fc466f5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 16 Mar 2025 20:55:07 +0100 Subject: [PATCH 156/233] "pod tlakem" --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 182acd0b..2ec8a0e9 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -138,6 +138,7 @@ class FixEdeprels(Block): 'počínaje': 'počínaje:ins', 'počínat': 'počínaje:ins', 'pod_dojem': 'pod_dojmem:gen', + 'pod_tlak': 'pod_tlakem:gen', 'pod_vliv': 'pod_vlivem:gen', 'pod_záminka': 'pod_záminkou:gen', 'podle': 'podle:gen', From 38ef7cd30634c5645b8fe43a3f5cb2f3aa42f6de Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 17 Mar 2025 12:25:12 +0100 Subject: [PATCH 157/233] =?UTF-8?q?Czech=20prep=20"na=20stran=C4=9B=20+=20?= =?UTF-8?q?gen".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 2ec8a0e9..b9b14317 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -105,6 +105,7 @@ class FixEdeprels(Block): 'na_od': 'na_rozdíl_od:gen', 'na_podklad': 'na_podkladě:gen', 'na_rozdíl_od': 'na_rozdíl_od:gen', + 'na_strana': 'na_straně:gen', 'na_účet': 'na_účet:gen', 'na_újma': 'gen', # 'nebude na újmu' is a multi-word predicate but 'na újmu' is probably not used as an independent oblique modifier 'na_úroveň': 'na_úrovni:gen', From 227a84721a71c43f9f228443ced5da63cd3c04b2 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 17 Mar 2025 14:01:12 +0100 Subject: [PATCH 158/233] =?UTF-8?q?"kdy=C5=BE=20ne"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index b9b14317..8b48c5d3 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -323,6 +323,7 @@ def process_node(self, node): edep['deprel'] = re.sub(r'^acl:v$', r'nmod:v:loc', edep['deprel']) edep['deprel'] = re.sub(r'^advcl:v$', r'obl:v:loc', edep['deprel']) edep['deprel'] = re.sub(r'^advcl:v_duchu?(?::gen)?$', r'obl:v_duchu:gen', edep['deprel']) + edep['deprel'] = re.sub(r'^nmod:když.*$', r'nmod', edep['deprel']) # nadějí když ne na zbohatnutí, tak alespoň na dobrou obživu ###!!! perhaps "když" or "když ne" should be analyzed as "cc" here! # Removing 'až' must be done early. The remainder may be 'počátek' # and we will want to convert it to 'počátkem:gen'. edep['deprel'] = re.sub(r'^(nmod|obl(?::arg)?):až_(.+):(gen|dat|acc|loc|ins)', r'\1:\2:\3', edep['deprel']) From f82f64adca33bcb181783dea9ad30a588b08c843 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 17 Mar 2025 15:25:27 +0100 Subject: [PATCH 159/233] =?UTF-8?q?Czech=20compound=20preposition=20"na=20?= =?UTF-8?q?za=C4=8D=C3=A1tku"=20+=20gen.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 8b48c5d3..81b2a211 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -110,6 +110,7 @@ class FixEdeprels(Block): 'na_újma': 'gen', # 'nebude na újmu' is a multi-word predicate but 'na újmu' is probably not used as an independent oblique modifier 'na_úroveň': 'na_úrovni:gen', 'na_úsek': 'na_úseku:gen', + 'na_začátek': 'na_začátku:gen', 'na_základ': 'na_základě:gen', 'na_základna': 'na_základně:gen', 'na_závěr': 'na_závěr:gen', From d18a3c565d4291748fa3561e21bed1f42d91afa3 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 18 Mar 2025 13:00:43 +0100 Subject: [PATCH 160/233] Czech secondary preposition "koncem". --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 81b2a211..df05789b 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -92,6 +92,7 @@ class FixEdeprels(Block): 'kdykoliv': 'kdykoli', 'kol': 'kolem:gen', 'kolem': 'kolem:gen', + 'koncem': 'koncem:gen', 'konec': 'koncem:gen', 'krom': 'kromě:gen', 'kromě': 'kromě:gen', From 7afb75bf21eda9540c616ca50b1a749e49768d82 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 18 Mar 2025 13:03:13 +0100 Subject: [PATCH 161/233] =?UTF-8?q?Czech=20secondary=20preposition=20"po?= =?UTF-8?q?=C4=8D=C3=A1tkem".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index df05789b..d1938ba4 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -138,6 +138,7 @@ class FixEdeprels(Block): 'po_vzor': 'po_vzoru:gen', 'poblíž': 'poblíž:gen', 'počátek': 'počátkem:gen', + 'počátkem': 'počátkem:gen', 'počínaje': 'počínaje:ins', 'počínat': 'počínaje:ins', 'pod_dojem': 'pod_dojmem:gen', From de64dd401f8598ee2ba3ec7a221ebfeb689fb0a6 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Wed, 19 Mar 2025 15:18:45 +0100 Subject: [PATCH 162/233] __str__ for mentions and entities for easier debugging --- udapi/core/coref.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/udapi/core/coref.py b/udapi/core/coref.py index c17f239f..98dc8d84 100644 --- a/udapi/core/coref.py +++ b/udapi/core/coref.py @@ -257,6 +257,10 @@ def span(self): def span(self, new_span): self.words = span_to_nodes(self._head.root, new_span) + def __str__(self): + """String representation of the CorefMention object: Mention.""" + return f"Mention<{self._entity._eid}: {self._head}>" + @functools.total_ordering class CorefMentionSubspan(object): @@ -386,6 +390,11 @@ def all_bridging(self): for b in m._bridging: yield b + def __str__(self): + """String representation of the CorefEntity object: Entity.""" + first_mention_head = self._mentions[0].head.form if self._mentions else "" + return f"Entity<{self._eid}: {first_mention_head}>" + # BridgingLink # Especially the relation should be mutable, so we cannot use From 4c08d405b95dba452d4abbc1360fabee371010db Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Thu, 20 Mar 2025 23:01:20 +0100 Subject: [PATCH 163/233] mention.remove() --- udapi/core/coref.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/udapi/core/coref.py b/udapi/core/coref.py index 98dc8d84..aa27e6a7 100644 --- a/udapi/core/coref.py +++ b/udapi/core/coref.py @@ -261,6 +261,11 @@ def __str__(self): """String representation of the CorefMention object: Mention.""" return f"Mention<{self._entity._eid}: {self._head}>" + def remove(self): + for word in self._words: + word._mentions.remove(self) + self._entity._mentions.remove(self) + @functools.total_ordering class CorefMentionSubspan(object): From 0044636282213f6fdd991a5bcfa0d15295b258c2 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Fri, 21 Mar 2025 20:48:54 +0100 Subject: [PATCH 164/233] udapy should end with a non-zero exit code (1) in case of exceptions fixes #127 --- bin/udapy | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/bin/udapy b/bin/udapy index 528e3577..30cb2595 100755 --- a/bin/udapy +++ b/bin/udapy @@ -71,6 +71,20 @@ else: logging.basicConfig(format='%(asctime)-15s [%(levelname)7s] %(funcName)s - %(message)s', level=level) +# Global flag to track if an unhandled exception occurred +_unhandled_exception_occurred = False + +def _custom_excepthook(exc_type, exc_value, traceback): + global _unhandled_exception_occurred + _unhandled_exception_occurred = True + + # Call the default excepthook to allow normal error reporting + sys.__excepthook__(exc_type, exc_value, traceback) + +# Override the default excepthook +sys.excepthook = _custom_excepthook + + # Process and provide the scenario. if __name__ == "__main__": @@ -86,7 +100,13 @@ if __name__ == "__main__": # Udapi documents have a many cyclic references, so running GC is quite slow. if not args.gc: gc.disable() - atexit.register(os._exit, 0) + # When an exception/error has happened, udapy should exit with a non-zero exit code, + # so that users can use `udapy ... || echo "Error detected"` (or Makefile reports errors). + # However, we cannot use `atexit.register(lambda: os._exit(1 if sys.exc_info()[0] else 0))` + # because the Python has already exited the exception-handling block + # (the exception/error has been already reported and sys.exc_info()[0] is None). + # We thus keep record whether _unhandled_exception_occurred. + atexit.register(lambda: os._exit(1 if _unhandled_exception_occurred else 0)) atexit.register(sys.stderr.flush) if args.save: args.scenario = args.scenario + ['write.Conllu'] From fae6dbde6c11e4ba8f6086ffa9a0a337c6288f52 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 23 Mar 2025 13:59:09 +0100 Subject: [PATCH 165/233] Tutorial: Coreference visualization. --- tutorial/udapi-tutorial-dz.odt | Bin 201577 -> 239910 bytes tutorial/udapi-tutorial-dz.pdf | Bin 336517 -> 365645 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/tutorial/udapi-tutorial-dz.odt b/tutorial/udapi-tutorial-dz.odt index 73e4058852f195b87a156f7d11089b5a10b5abd0..db90d7a2e334782fcfe337cc986446c352979ef5 100644 GIT binary patch delta 74082 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 diff --git a/tutorial/udapi-tutorial-dz.pdf b/tutorial/udapi-tutorial-dz.pdf index b58a13d29b2502af1106b0ebc6983f7ba58b075b..3eccd767a28ac84817a34dc95c91d19deead20c9 100644 GIT binary patch delta 100041 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%0D}PY2*7F%_AQ99W(0_Yj_6yG`^(i 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 delta 71438 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 From bff06511c40e472b7e6e5014434252b04de0c51e Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 23 Mar 2025 18:32:43 +0100 Subject: [PATCH 166/233] Saving an interesting query example provided by Martin. --- tutorial/udapi-tutorial-dz.odt | Bin 239910 -> 257678 bytes tutorial/udapi-tutorial-dz.pdf | Bin 365645 -> 380027 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/tutorial/udapi-tutorial-dz.odt b/tutorial/udapi-tutorial-dz.odt index db90d7a2e334782fcfe337cc986446c352979ef5..bf00a628f564bcfc07a48da573785d9089c6cd14 100644 GIT binary patch delta 52625 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 q+>Ybc;PTsQIgbga%f=r;4);InE{16U delta 34927 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 lyKvDUK08{0&vm-ErG>XO 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 Ai~s-t delta 14426 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 From 948de6add7939ea1eea98a193293a8c6df7ff29c Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 25 Mar 2025 17:58:55 +0100 Subject: [PATCH 167/233] Regular expressions and the None value. --- tutorial/udapi-tutorial-dz.odt | Bin 257678 -> 258101 bytes tutorial/udapi-tutorial-dz.pdf | Bin 380027 -> 381708 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/tutorial/udapi-tutorial-dz.odt b/tutorial/udapi-tutorial-dz.odt index bf00a628f564bcfc07a48da573785d9089c6cd14..945483c2ba23ed6879fd9565d67a9fd5fcbff3f2 100644 GIT binary patch delta 35887 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 Y`|AgCApHAJ8;5+BL9s(KWRQ;i59hz)`Tzg` delta 35501 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℞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�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 From f349b82569a64a53c46627baa018d8b072efb0f3 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Wed, 26 Mar 2025 18:48:20 +0100 Subject: [PATCH 168/233] more informative info messages - report also the parameters of each block - report the filename which is being opened by a reader This could help debugging (e.g. to quickly see which file caused an error) --- udapi/core/basereader.py | 3 +++ udapi/core/run.py | 15 ++++++++------- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/udapi/core/basereader.py b/udapi/core/basereader.py index 9367f4c4..786cf598 100644 --- a/udapi/core/basereader.py +++ b/udapi/core/basereader.py @@ -121,6 +121,7 @@ def try_fast_load(self, document): if filehandle is None: self.finished = True return True + logging.info(f"Reading {self.files.filename}") while True: try: @@ -209,6 +210,7 @@ def process_document(self, document): if filehandle is None: self.finished = True return + logging.info(f"Reading {self.files.filename}") trees_loaded = 0 while True: @@ -216,6 +218,7 @@ def process_document(self, document): if root is None: if (trees_loaded == 0 or self.merge) and self.files.has_next_file(): filehandle = self.next_filehandle() + logging.info(f"Reading {self.files.filename}") continue self.finished = not self.files.has_next_file() break diff --git a/udapi/core/run.py b/udapi/core/run.py index f0cc976e..8ac63e1e 100644 --- a/udapi/core/run.py +++ b/udapi/core/run.py @@ -134,7 +134,8 @@ def _import_blocks(block_names, block_args): command = "b%s(**kwargs)" % block_id logging.debug("Trying to evaluate this: %s", command) new_block_instance = eval(command) # pylint: disable=eval-used - blocks.append((block_name, new_block_instance)) + args = ' '.join(f"{k}={v}" for k,v in kwargs.items()) + blocks.append((block_name, new_block_instance, args)) return blocks @@ -169,11 +170,11 @@ def execute(self): def run_blocks(self, blocks): # Initialize blocks (process_start). - for bname, block in blocks: + for _, block, _ in blocks: block.process_start() readers = [] - for bname, block in blocks: + for _, block, _ in blocks: try: block.finished # pylint: disable=pointless-statement readers.append(block) @@ -183,15 +184,15 @@ def run_blocks(self, blocks): logging.info('No reader specified, using read.Conllu') conllu_reader = Conllu() readers = [conllu_reader] - blocks = [('read.Conllu', conllu_reader)] + blocks + blocks = [('read.Conllu', conllu_reader, {})] + blocks # Apply blocks on the data. finished = False while not finished: document = Document() logging.info(" ---- ROUND ----") - for bname, block in blocks: - logging.info(f"Executing block {bname}") + for bname, block, args in blocks: + logging.info(f"Executing block {bname} {args}") block.apply_on_document(document) finished = True @@ -200,7 +201,7 @@ def run_blocks(self, blocks): finished = finished and reader.finished # 6. close blocks (process_end) - for bname, block in blocks: + for _, block, _ in blocks: block.process_end() # Some users may use the block instances (e.g. to retrieve some variables). From 7644d48fdadcc3d540710a6c3ffadd48e36230fd Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Wed, 26 Mar 2025 18:54:24 +0100 Subject: [PATCH 169/233] node._children is slightly faster than node.children so it makes speed-critical internal code faster --- udapi/block/read/conll.py | 2 +- udapi/core/root.py | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/udapi/block/read/conll.py b/udapi/block/read/conll.py index f64cd9ff..2e82ef96 100644 --- a/udapi/block/read/conll.py +++ b/udapi/block/read/conll.py @@ -138,7 +138,7 @@ def read_tree_from_lines(self, lines): root._children.append(node) else: raise ValueError(f"Detected a cycle: {node} attached to itself") - elif node.children: + elif node._children: climbing = parent._parent while climbing: if climbing is node: diff --git a/udapi/core/root.py b/udapi/core/root.py index 1fd99fc7..abf36a74 100644 --- a/udapi/core/root.py +++ b/udapi/core/root.py @@ -144,7 +144,7 @@ def remove(self, children=None): The default (None) is to delete them (and all their descendants). `warn` means to issue a warning. """ - if children is not None and self.children: + if children is not None and self._children: logging.warning('%s is being removed by remove(children=%s), ' ' but it has (unexpected) children', self, children) self.bundle.trees = [root for root in self.bundle.trees if root != self] @@ -278,10 +278,10 @@ def steal_nodes(self, nodes): node.ord = new_ord node._root = self if not whole_tree: - for child in [n for n in node.children if n not in nodes]: + for child in [n for n in node._children if n not in nodes]: child._parent = old_root - old_root._children = sorted(old_root.children + [child]) - node._children = [n for n in node.children if n in nodes] + old_root._children = sorted(old_root._children + [child]) + node._children = [n for n in node._children if n in nodes] if node.parent == old_root or (not whole_tree and node.parent not in nodes): node.parent._children = [n for n in node.parent._children if n != node] node._parent = self From d2364846c6630487e2796809af5dbbf2060335ce Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Wed, 26 Mar 2025 18:55:49 +0100 Subject: [PATCH 170/233] CoNLL-UPlus reader --- udapi/block/read/conllup.py | 98 +++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 udapi/block/read/conllup.py diff --git a/udapi/block/read/conllup.py b/udapi/block/read/conllup.py new file mode 100644 index 00000000..6f3ad708 --- /dev/null +++ b/udapi/block/read/conllup.py @@ -0,0 +1,98 @@ +""""Conllup is a reader block for the CoNLL-UPlus format. + +Columns which don't have standardize attributes in Udapi/CoNLL-U +are stored in MISC (as key=value pairs). +""" +import json +import logging +import re + +import udapi.block.read.conll +from udapi.core.root import Root +from udapi.core.node import Node + +RE_GLOBAL_COLUMNS = re.compile(r'^# global.columns\s*=\s*(.+)') +COLUMN_MAP = { + 'ID': 'ord', +} +NORMAL_ATTRS = 'form lemma upos xpos feats deprel misc'.split() + +class Conllup(udapi.block.read.conll.Conll): + """A reader of the CoNLL-UPlus files.""" + + def __init__(self, attributes='autodetect', **kwargs): + """Create the Conllup reader object. + + Args: + attributes: comma-separated list of column names in the input files + (can be used if the global.columns header is missing or needs to be overriden). + Default='autodetect' which means the column names will be loaded from the global.columns header. + For ignoring a column, use "_" as its name. + """ + super().__init__(**kwargs) + if attributes == 'autodetect': + self.node_attributes = None + else: + self.node_attributes = attributes.split(',') + + def parse_comment_line(self, line, root): + if self.node_attributes is None: + global_columns_match = RE_GLOBAL_COLUMNS.match(line) + if global_columns_match is None: + return super().parse_comment_line(line, root) + global_columns = global_columns_match.group(1) + self.node_attributes = [COLUMN_MAP.get(v, v.lower()) for v in global_columns.split(" ")] + root.comment += line + '\n' + return + return super().parse_comment_line(line, root) + + def parse_node_line(self, line, root, nodes, parents, mwts): + fields = line.split('\t') + if len(fields) != len(self.node_attributes): + if self.strict: + raise RuntimeError('Wrong number of columns in %r' % line) + fields.extend(['_'] * (len(self.node_attributes) - len(fields))) + + # multi-word tokens will be processed later + if '-' in fields[0]: + mwts.append(fields) + return + if '.' in fields[0]: + raise NotImplementedError("Empty nodes in CoNLL-UPlus not implement yet in read.Conllup") + + # This implementation is slower than in read.Conllu, + # but it allows for arbitrary columns + node = root.create_child() + nonstandard_attrs = [] + for (n_attribute, attribute_name) in enumerate(self.node_attributes): + value = fields[n_attribute] + if attribute_name == 'head': + if value == '???': + value = 0 + try: + parents.append(int(value)) + except ValueError as exception: + if not self.strict and value == '_': + if self.empty_parent == 'warn': + logging.warning("Empty parent/head index in '%s'", line) + parents.append(0) + else: + raise exception + elif attribute_name == 'ord': + setattr(node, 'ord', int(value)) + elif attribute_name == 'deps': + setattr(node, 'raw_deps', value) + elif value == '_' and attribute_name != 'form': + pass + elif attribute_name == '_': + pass + elif attribute_name in NORMAL_ATTRS: + setattr(node, attribute_name, value) + else: + nonstandard_attrs.append([attribute_name, value]) + + # This needs to be done after node.misc is created (if "misc" in node.attributes) + for attribute_name, value in nonstandard_attrs: + node.misc[attribute_name.capitalize()] = value + + nodes.append(node) From 9fe64bf24cba199cc4079747d669d77e95518246 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Thu, 27 Mar 2025 15:42:29 +0100 Subject: [PATCH 171/233] nicer code --- udapi/block/read/conll.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/udapi/block/read/conll.py b/udapi/block/read/conll.py index 2e82ef96..2229482f 100644 --- a/udapi/block/read/conll.py +++ b/udapi/block/read/conll.py @@ -79,22 +79,23 @@ def parse_node_line(self, line, root, nodes, parents, mwts): # but it allows for arbitrary columns node = root.create_child() for (n_attribute, attribute_name) in enumerate(self.node_attributes): + value = fields[n_attribute] if attribute_name == 'head': try: - parents.append(int(fields[n_attribute])) + parents.append(int(value)) except ValueError as exception: - if not self.strict and fields[n_attribute] == '_': + if not self.strict and value == '_': if self.empty_parent == 'warn': logging.warning("Empty parent/head index in '%s'", line) parents.append(0) else: raise exception elif attribute_name == 'ord': - setattr(node, 'ord', int(fields[n_attribute])) + setattr(node, 'ord', int(value)) elif attribute_name == 'deps': - setattr(node, 'raw_deps', fields[n_attribute]) - elif attribute_name != '_' and fields[n_attribute] != '_': - setattr(node, attribute_name, fields[n_attribute]) + setattr(node, 'raw_deps', value) + elif attribute_name != '_' and value != '_': + setattr(node, attribute_name, value) nodes.append(node) From 0d1d6fddb3a97205042865eb62d90d9605017a50 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Thu, 27 Mar 2025 15:43:00 +0100 Subject: [PATCH 172/233] tiny speedup --- udapi/block/read/conllu.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/read/conllu.py b/udapi/block/read/conllu.py index bb76bfee..b485c17d 100644 --- a/udapi/block/read/conllu.py +++ b/udapi/block/read/conllu.py @@ -201,7 +201,7 @@ def read_tree_from_lines(self, lines): root._children.append(node) else: raise ValueError(f"Detected a cycle: {node} attached to itself") - elif node.children: + elif node._children: climbing = parent._parent while climbing: if climbing is node: From 38f8c0b9f1a342ee86daa6e9b708bfb419d8a9ee Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Thu, 27 Mar 2025 15:43:50 +0100 Subject: [PATCH 173/233] check if IDs (node.ord) form a valid sequence in *.conll and *.conllup There are e.g. files with gaps (1,2,3,5). Failing to detect this results in wrong parsing and even `fix_cycles=1` may result in infinite loop. When a node is created using `root.create_child()`, it already has `node.ord` set up correctly as the last node in the tree. For *.conllu we could do the same, but we don't do that because Read.Conllu is speed critical and invalid files can be detected using `validate.py`. --- udapi/block/read/conll.py | 3 ++- udapi/block/read/conllup.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/udapi/block/read/conll.py b/udapi/block/read/conll.py index 2229482f..61f8e422 100644 --- a/udapi/block/read/conll.py +++ b/udapi/block/read/conll.py @@ -91,7 +91,8 @@ def parse_node_line(self, line, root, nodes, parents, mwts): else: raise exception elif attribute_name == 'ord': - setattr(node, 'ord', int(value)) + if int(value) != node._ord: + raise ValueError(f"Node {node} ord mismatch: {value}, but expecting {node._ord} at:\n{line}") elif attribute_name == 'deps': setattr(node, 'raw_deps', value) elif attribute_name != '_' and value != '_': diff --git a/udapi/block/read/conllup.py b/udapi/block/read/conllup.py index 6f3ad708..688f4656 100644 --- a/udapi/block/read/conllup.py +++ b/udapi/block/read/conllup.py @@ -79,7 +79,8 @@ def parse_node_line(self, line, root, nodes, parents, mwts): else: raise exception elif attribute_name == 'ord': - setattr(node, 'ord', int(value)) + if int(value) != node._ord: + raise ValueError(f"Node {node} ord mismatch: {value}, but expecting {node._ord} at:\n{line}") elif attribute_name == 'deps': setattr(node, 'raw_deps', value) elif value == '_' and attribute_name != 'form': From bfbfbff933cdc4383bdd861e794ce8d1d69269f7 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Fri, 28 Mar 2025 11:59:37 +0100 Subject: [PATCH 174/233] dos->unix line ends in corefud.FixParentheses --- udapi/block/corefud/fixparentheses.py | 62 +++++++++++++-------------- 1 file changed, 31 insertions(+), 31 deletions(-) mode change 100755 => 100644 udapi/block/corefud/fixparentheses.py diff --git a/udapi/block/corefud/fixparentheses.py b/udapi/block/corefud/fixparentheses.py old mode 100755 new mode 100644 index 9baeca98..bc8e6504 --- a/udapi/block/corefud/fixparentheses.py +++ b/udapi/block/corefud/fixparentheses.py @@ -1,31 +1,31 @@ -from udapi.core.block import Block - - -class FixParentheses(Block): - """Find mentions that contain opening parenthesis but do not contain the closing one (or the other way around). - If the missing parenthesis is an immediate neighbour of the mention span, add it to the span.""" - - def __init__(self, mark=True, **kwargs): - super().__init__(**kwargs) - self.mark = mark - - def process_coref_mention(self, mention): - words = [word.lemma for word in mention.words] - pairs = ['()', '[]', '{}'] - for pair in pairs: - if pair[0] in words: - if not pair[1] in words and pair[1] in [node.lemma for node in mention.head.root.descendants]: - if mention.words[-1].ord == int(mention.words[-1].ord) and mention.words[-1].next_node and \ - mention.words[-1].next_node.lemma == pair[1]: - next_node = mention.words[-1].next_node - mention.words.append(next_node) - if self.mark: - next_node.misc['Mark'] = 1 - - elif pair[1] in words and pair[0] in [node.lemma for node in mention.head.root.descendants]: - if mention.words[0].ord == int(mention.words[0].ord) and mention.words[0].prev_node \ - and mention.words[0].prev_node.lemma == pair[0]: - prev_node = mention.words[0].prev_node - mention.words.append(prev_node) - if self.mark: - prev_node.misc['Mark'] = 1 +from udapi.core.block import Block + + +class FixParentheses(Block): + """Find mentions that contain opening parenthesis but do not contain the closing one (or the other way around). + If the missing parenthesis is an immediate neighbour of the mention span, add it to the span.""" + + def __init__(self, mark=True, **kwargs): + super().__init__(**kwargs) + self.mark = mark + + def process_coref_mention(self, mention): + words = [word.lemma for word in mention.words] + pairs = ['()', '[]', '{}'] + for pair in pairs: + if pair[0] in words: + if not pair[1] in words and pair[1] in [node.lemma for node in mention.head.root.descendants]: + if mention.words[-1].ord == int(mention.words[-1].ord) and mention.words[-1].next_node and \ + mention.words[-1].next_node.lemma == pair[1]: + next_node = mention.words[-1].next_node + mention.words.append(next_node) + if self.mark: + next_node.misc['Mark'] = 1 + + elif pair[1] in words and pair[0] in [node.lemma for node in mention.head.root.descendants]: + if mention.words[0].ord == int(mention.words[0].ord) and mention.words[0].prev_node \ + and mention.words[0].prev_node.lemma == pair[0]: + prev_node = mention.words[0].prev_node + mention.words.append(prev_node) + if self.mark: + prev_node.misc['Mark'] = 1 From 133dcc519f39c39b8f4638a6a2f294c7ffea6508 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Fri, 28 Mar 2025 12:05:36 +0100 Subject: [PATCH 175/233] corefud.MarkPairs could substitute the other corefud.Mark* blocks --- udapi/block/corefud/markpairs.py | 138 +++++++++++++++++++++++++++++++ 1 file changed, 138 insertions(+) create mode 100644 udapi/block/corefud/markpairs.py diff --git a/udapi/block/corefud/markpairs.py b/udapi/block/corefud/markpairs.py new file mode 100644 index 00000000..cc63b387 --- /dev/null +++ b/udapi/block/corefud/markpairs.py @@ -0,0 +1,138 @@ +from udapi.core.block import Block +import udapi.core.coref +import itertools +from collections import Counter +import logging + +class MarkPairs(Block): + """Find pairs of coreference mentions within the same sentence with given properties. + Mark these pairs of mentions (using `misc["Mark"]`), so they can be further + processed or printed. + + Usage: + # Find pairs of mentions of the same entity within the same sentence: + cat my.conllu | udapy -TM corefud.MarkPairs same_entity=1 | less -R + + Properties: + same_entity - both mentions belong to the same entity (cluster) + both_continuous - both mentions have continuous spans + both_discontinuous - both mentions have discontinuous spans + nested - span of one mention is nested (a subset of) in the span of the other mention + crossing - spans are crossing (i.e. intersecting, but neither is subset of the other) + interleaved - spans are interleaved (i.e. not intersecting, but neither span precedes the other) + same_head - the same node is a head of both mentions + same_span - both mentions have the same span (which is invalid according to UD's validate.py) + same_subspan - at least one of the mentions is discontinuous and one of its subspans + is also a subspan (or span) of the other mention + + + You can combine any number of properties. + Each property can have one of the three values: + include - this is the default value: include pairs with this property, i.e. ignore the property + exclude - exclude (from the marking) pairs of mentions with this property + only - pairs of mentions without this property will be excluded + + As a shortcut, you can use -1 and 1 instead of exclude and only, so e.g. + nested=only same_head=exclude + can be written as + nested=1 same_head=-1 + """ + + def __init__(self, same_entity=0, both_continuous=0, both_discontinuous=0, + nested=0, crossing=0, interleaved=0, + same_head=0, same_span=0, same_subspan=0, + print_form=False, print_total=True, log=True, mark=True, **kwargs): + super().__init__(**kwargs) + + + self.same_entity = self._convert(same_entity) + self.both_continuous = self._convert(both_continuous) + self.both_discontinuous = self._convert(both_discontinuous) + self.nested = self._convert(nested) + self.crossing = self._convert(crossing) + self.interleaved = self._convert(interleaved) + self.same_head = self._convert(same_head) + self.same_span = self._convert(same_span) + self.same_subspan = self._convert(same_subspan) + + self.print_form = print_form + self.print_total = print_total + self.log = log + self.mark = mark + self.counter = Counter() + + def _convert(self, value): + if value in {-1, 0, 1}: + return value + if value == 'include': + return 0 + if value == 'only': + return 1 + if value == 'exclude': + return -1 + raise ValueError('unknown value ' + value) + + def _ok(self, condition, value): + if value == 0: + return True + return (condition and value == 1) or (not condition and value==-1) + + def _print(self, mention): + if self.print_form: + return mention.entity.eid + ':' + ' '.join([w.form for w in mention.words]) + else: + return mention.entity.eid + ':' + mention.span + + def process_tree(self, tree): + mentions = set() + for node in tree.descendants_and_empty: + for m in node.coref_mentions: + mentions.add(m) + self.counter['mentions'] += len(mentions) + + for mA, mB in itertools.combinations(mentions, 2): + self.counter['pairs'] += 1 + if not self._ok(mA.entity == mB.entity, self.same_entity): + continue + if not self._ok(mA.head == mB.head, self.same_head): + continue + + if self.both_continuous or self.both_discontinuous or self.same_span or self.same_subspan: + sA, sB = mA.span, mB.span + cA, cB = ',' not in sA, ',' not in sB + if not self._ok(cA and cB, self.both_continuous): + continue + if not self._ok(not cA and not cB, self.both_discontinuous): + continue + if not self._ok(sA == sB, self.same_span): + continue + if not self._ok(set(sA.split(',')).intersection(set(sB.split(','))), self.same_subspan): + continue + + if self.nested or self.crossing or self.interleaved: + wA, wB = set(mA.words), set(mB.words) + if not self._ok(wA <= wB or wB <= wA, self.nested): + continue + if not self._ok(wA.intersection(wB) and not wA <= wB and not wB <= wA, self.crossing): + continue + if self.interleaved: + a_precedes_b = mA.words[0] < mB.words[0] and mA.words[-1] < mB.words[0] + b_precedes_a = mB.words[0] < mA.words[0] and mB.words[-1] < mA.words[0] + if not self._ok(not wA.intersection(wB) and not a_precedes_b and not b_precedes_a, self.interleaved): + continue + + self.counter['matching'] += 1 + if self.mark: + for w in mA.words + mB.words: + w.misc['Mark'] = 1 + mA.words[0].misc['Mark'] = f"{self._print(mA)}+{self._print(mB)}" + if self.log: + logging.info(f"Found mentions at {tree.sent_id}: {self._print(mA)} + {self._print(mB)}") + + def after_process_document(self, doc): + if self.print_total: + #if self.max_trees and seen_trees > self.max_trees: + # print(f'######## Only first {self.max_trees} matching mentions printed. Use max_trees=0 to see all.') + msg = f'######## Mentions = {self.counter["mentions"]}, matching/all pairs = {self.counter["matching"]} / {self.counter["pairs"]}' + logging.info(msg) + doc.meta["corefud.MarkPairs"] = msg From d979bb8a73467f813f7521d2c01686b4fa47e548 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Fri, 28 Mar 2025 12:19:47 +0100 Subject: [PATCH 176/233] prepare release 0.4.0 of udapi --- CHANGES.txt | 5 +++++ setup.cfg | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 67ced748..49dfd40e 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -2,6 +2,11 @@ Udapi Change Log ---------------- See https://github.com/udapi/udapi-python/commits/master for details. +0.4.0 2024-03-28 + - support for CorefUD 1.3 + - edits by Dan Zeman in block.ud.* + - requires Python 3.9+ (difficult to test older versions in Circle-CI) + 0.3.0 2022-04-06 - support for CorefUD 1.0 (new CoNLL-U format for coreference annotation) - edits by Dan Zeman in block.ud.* diff --git a/setup.cfg b/setup.cfg index a14145ab..3ac1ebf2 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,6 +1,6 @@ [metadata] name = udapi -version = 0.3.0 +version = 0.4.0 author = Martin Popel author_email = popel@ufal.mff.cuni.cz description = Python framework for processing Universal Dependencies data @@ -14,7 +14,7 @@ classifiers = [options] packages = find: -python_requires = >=3.6 +python_requires = >=3.9 include_package_data = True scripts = bin/udapy From b86ac4c1cd28a28e3ca42d23dc31d34768dffd70 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 29 Mar 2025 21:47:40 +0100 Subject: [PATCH 177/233] =?UTF-8?q?"a=C4=8Dkoliv"=20=3D=20"a=C4=8Dkoli"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index d1938ba4..e4ddcbd6 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -14,6 +14,7 @@ class FixEdeprels(Block): 'aby': [], 'ač': [], 'ačkoli': [], # 'ačkoliv' se převede na 'ačkoli' dole + 'ačkoliv': [], # ... ale možná ne když je doprovázeno předložkou 'ať': [], 'byť': [], 'i_když': [], From e941cadbf673afb299430d1ff1b4759ac9155625 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 29 Mar 2025 22:05:29 +0100 Subject: [PATCH 178/233] =?UTF-8?q?"a=C4=8Dkoliv"=20=3D=20"a=C4=8Dkoli"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index e4ddcbd6..97cadb8d 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -328,6 +328,7 @@ def process_node(self, node): edep['deprel'] = re.sub(r'^advcl:v$', r'obl:v:loc', edep['deprel']) edep['deprel'] = re.sub(r'^advcl:v_duchu?(?::gen)?$', r'obl:v_duchu:gen', edep['deprel']) edep['deprel'] = re.sub(r'^nmod:když.*$', r'nmod', edep['deprel']) # nadějí když ne na zbohatnutí, tak alespoň na dobrou obživu ###!!! perhaps "když" or "když ne" should be analyzed as "cc" here! + edep['deprel'] = re.sub(r'^obl:ačkoli.*$', r'obl', edep['deprel']) # nadějí když ne na zbohatnutí, tak alespoň na dobrou obživu ###!!! perhaps "když" or "když ne" should be analyzed as "cc" here! # Removing 'až' must be done early. The remainder may be 'počátek' # and we will want to convert it to 'počátkem:gen'. edep['deprel'] = re.sub(r'^(nmod|obl(?::arg)?):až_(.+):(gen|dat|acc|loc|ins)', r'\1:\2:\3', edep['deprel']) From 091bf8578bd86e8ad861f8156cd924e1c6abf6c5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 29 Mar 2025 22:23:42 +0100 Subject: [PATCH 179/233] =?UTF-8?q?"na=5Fpo=C4=8D=C3=A1tku:gen"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 97cadb8d..d31e1483 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -105,6 +105,7 @@ class FixEdeprels(Block): 'na_mimo': 'na:loc', # na kurtě i mimo něj 'na_než': 'na:acc', # na víc než čtyři a půl kilometru 'na_od': 'na_rozdíl_od:gen', + 'na_počátek': 'na_počátku:gen', 'na_podklad': 'na_podkladě:gen', 'na_rozdíl_od': 'na_rozdíl_od:gen', 'na_strana': 'na_straně:gen', From 116fe7b53e37c63d36e6b2196d136cf46e449964 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Sat, 29 Mar 2025 15:38:01 +0100 Subject: [PATCH 180/233] bugfix for read.Conll(up) fix_cycles=1 `node._parent = parent` will be called anyway even after fixing a cycle The original code could result in not fixing the cycle and then an infinite loop (when checking another node using "climbing"). --- udapi/block/read/conll.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/udapi/block/read/conll.py b/udapi/block/read/conll.py index 61f8e422..d0aef1ee 100644 --- a/udapi/block/read/conll.py +++ b/udapi/block/read/conll.py @@ -136,8 +136,7 @@ def read_tree_from_lines(self, lines): if node is parent: if self.fix_cycles: logging.warning("Ignoring a cycle (attaching to the root instead):\n%s", node) - node._parent = root - root._children.append(node) + parent = root else: raise ValueError(f"Detected a cycle: {node} attached to itself") elif node._children: From a8053df6911d12af9e0f33e2ad95f821e2ff1507 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Sat, 29 Mar 2025 16:46:42 +0100 Subject: [PATCH 181/233] read.Conllup save_global_columns Don't store the `global.columns` header by default (in Udapi docs and thus in CoNLL-U files) --- udapi/block/read/conllup.py | 10 ++++++++-- udapi/core/basereader.py | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/udapi/block/read/conllup.py b/udapi/block/read/conllup.py index 688f4656..c87d729d 100644 --- a/udapi/block/read/conllup.py +++ b/udapi/block/read/conllup.py @@ -20,7 +20,7 @@ class Conllup(udapi.block.read.conll.Conll): """A reader of the CoNLL-UPlus files.""" - def __init__(self, attributes='autodetect', **kwargs): + def __init__(self, attributes='autodetect', save_global_columns=False, **kwargs): """Create the Conllup reader object. Args: @@ -28,8 +28,13 @@ def __init__(self, attributes='autodetect', **kwargs): (can be used if the global.columns header is missing or needs to be overriden). Default='autodetect' which means the column names will be loaded from the global.columns header. For ignoring a column, use "_" as its name. + save_global_columns: keep the "global.columns" header in root.comments. Default=False. + Note that when saving the output to CoNLL-U, the comment is not needed + and it may be even misleading. It could be helpful only once write.Conllup is implemented + (with the possibility to use the same columns as in the input file). """ super().__init__(**kwargs) + self.save_global_columns = save_global_columns if attributes == 'autodetect': self.node_attributes = None else: @@ -42,7 +47,8 @@ def parse_comment_line(self, line, root): return super().parse_comment_line(line, root) global_columns = global_columns_match.group(1) self.node_attributes = [COLUMN_MAP.get(v, v.lower()) for v in global_columns.split(" ")] - root.comment += line + '\n' + if self.save_global_columns: + root.comment += line[1:] + '\n' return return super().parse_comment_line(line, root) diff --git a/udapi/core/basereader.py b/udapi/core/basereader.py index 786cf598..c3bcf918 100644 --- a/udapi/core/basereader.py +++ b/udapi/core/basereader.py @@ -33,7 +33,7 @@ def __init__(self, files='-', filehandle=None, zone='keep', bundles_per_doc=0, e self.max_docs = max_docs self._docs_loaded = 0 # `global.Entity` is a header stored in a comment before the first tree of each document in a given CoNLL-U file. - # In Udapi, it is stored in `document.meta['global.Entity']`, but for technical reasons, we need to temporarily store it in here, the reader. + # In Udapi, it is stored in `document.meta['global.Entity']`, but for technical reasons, we need to temporarily store it here, in the reader. # The reason is that `read.Conllu` uses a fast loading interface with `read_trees()`, # which reads all the trees in a file at once, but it does not have access to the document instance, # it just returns a sequence of trees (which may be split into multiple documents if `bundles_per_doc` is set). From 74954b938b1c3c0e5f8338def8b947a32c6a4372 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 31 Mar 2025 15:25:26 +0200 Subject: [PATCH 182/233] =?UTF-8?q?"s=20v=C3=BDjimkou,=20=C5=BEe"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index d31e1483..086e468a 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -172,6 +172,7 @@ class FixEdeprels(Block): 's_přihlédnutí_k': 's_přihlédnutím_k:dat', 's_přihlédnutí_na': 's_přihlédnutím_na:acc', 's_výjimka': 's_výjimkou:gen', + 's_výjimka_že': 's_výjimkou_že', 's_vyloučení': 's_vyloučením:gen', 's_zřetel_k': 'se_zřetelem_k:dat', 's_zřetel_na': 'se_zřetelem_na:acc', From efea21caeee6422b763bf38ffee981050bccfd5e Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 31 Mar 2025 15:46:34 +0200 Subject: [PATCH 183/233] obl:jestli:gen --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index 086e468a..b0bf1460 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -331,6 +331,7 @@ def process_node(self, node): edep['deprel'] = re.sub(r'^advcl:v_duchu?(?::gen)?$', r'obl:v_duchu:gen', edep['deprel']) edep['deprel'] = re.sub(r'^nmod:když.*$', r'nmod', edep['deprel']) # nadějí když ne na zbohatnutí, tak alespoň na dobrou obživu ###!!! perhaps "když" or "když ne" should be analyzed as "cc" here! edep['deprel'] = re.sub(r'^obl:ačkoli.*$', r'obl', edep['deprel']) # nadějí když ne na zbohatnutí, tak alespoň na dobrou obživu ###!!! perhaps "když" or "když ne" should be analyzed as "cc" here! + edep['deprel'] = re.sub(r'^obl:jestli(?::gen)?$', r'obl:gen', edep['deprel']) # nevím, jestli osmého nebo devátého září # Removing 'až' must be done early. The remainder may be 'počátek' # and we will want to convert it to 'počátkem:gen'. edep['deprel'] = re.sub(r'^(nmod|obl(?::arg)?):až_(.+):(gen|dat|acc|loc|ins)', r'\1:\2:\3', edep['deprel']) From 987ef5b885832a2aa603673cab893720599e336a Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Mon, 31 Mar 2025 23:54:34 +0200 Subject: [PATCH 184/233] tiny typo --- udapi/block/read/conllup.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/udapi/block/read/conllup.py b/udapi/block/read/conllup.py index c87d729d..2e66da52 100644 --- a/udapi/block/read/conllup.py +++ b/udapi/block/read/conllup.py @@ -1,9 +1,8 @@ -""""Conllup is a reader block for the CoNLL-UPlus format. +"""Conllup is a reader block for the CoNLL-UPlus format. Columns which don't have standardize attributes in Udapi/CoNLL-U are stored in MISC (as key=value pairs). """ -import json import logging import re From 07c6e7a10c73ba17b554c8a2a5614bcd3d2ce259 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Mon, 31 Mar 2025 23:55:22 +0200 Subject: [PATCH 185/233] corefud.Link2Cluster can convert bridging, added params and documentation --- udapi/block/corefud/link2cluster.py | 97 +++++++++++++++++++++++++---- 1 file changed, 85 insertions(+), 12 deletions(-) diff --git a/udapi/block/corefud/link2cluster.py b/udapi/block/corefud/link2cluster.py index 3f9f9bb3..08296531 100644 --- a/udapi/block/corefud/link2cluster.py +++ b/udapi/block/corefud/link2cluster.py @@ -2,17 +2,66 @@ from udapi.core.block import Block class Link2Cluster(Block): - """Block corefud.Link2Cluster converts link-based coreference annotation to the (cluster-based) CorefUD format.""" + """Block corefud.Link2Cluster converts link-based coreference annotation to the (cluster-based) CorefUD format. - def __init__(self, id_attr='proiel-id', ante_attr='antecedent-proiel-id', delete_orig_attrs=True, **kwargs): + Params: + id_attr: name of the attribute in MISC that stores the original-format IDs of nodes + ante_attr: name of the attribute in MISC that stores the ID of the antecedent + of the current node (in the same format as `id_attr`). + delete_orig_attrs: Should we delete the MISC attributes that were used for the conversion? + (i.e. id_attr and ante_attr, plus possibly also infstat_attr, coreftype_attr, + bridge_attr, bridge_relation_attr if these are used). Default=True. + infstat_attr: name of the attribute in MISC that stores the information status of a given mention + Will be stored in `mention.other['infstat']`. Use None for ignoring this. + coreftype_attr: name of the attribute in MISC that stores the coreference type of a given mention + Will be stored in `mention.other['coreftype']`. Use None for ignoring this. + bridge_attr: name of the attribute in MISC that stores the ID of the bridging antecedent + of the current node/mention (in the same format as `id_attr`). + Default=None, i.e. ignore this parameter. + bridge_relation_attr: name of the attribute in MISC that stores the bridging relation type + (e.g. "part" or "subset"). Default=None, i.e. ignore this parameter. + eid_counter: use a global counter of entity.eid and start with a given number. Default=1. + The main goal of this parameter is to make eid unique across multiple documents. + If you use eid_counter=0, this feature will be turned off, + so entities will be created using `root.document.create_coref_entity()`, + with no eid parameter, so that the eid will start from "e1" in each document processed by this block. + """ + def __init__(self, id_attr='proiel-id', ante_attr='antecedent-proiel-id', delete_orig_attrs=True, + infstat_attr='information-status', coreftype_attr='coreftype', + bridge_attr=None, bridge_relation_attr=None, eid_counter=1, **kwargs): super().__init__(**kwargs) self.id_attr = id_attr self.ante_attr = ante_attr self.delete_orig_attrs = delete_orig_attrs + self.infstat_attr = infstat_attr + self.coreftype_attr = coreftype_attr + self.bridge_attr = bridge_attr + self.bridge_relation_attr = bridge_relation_attr + self.eid_counter = int(eid_counter) + + def _new_entity(self, doc): + if not self.eid_counter: + return doc.create_coref_entity() + entity = doc.create_coref_entity(eid=f"e{self.eid_counter}") + self.eid_counter += 1 + return entity + + def _new_mention(self, entity, node): + mention = entity.create_mention(head=node, words=[node]) + if self.infstat_attr and node.misc[self.infstat_attr]: + mention.other['infstat'] = node.misc[self.infstat_attr] + if self.delete_orig_attrs: + del node.misc[self.infstat_attr] + if self.coreftype_attr and node.misc[self.coreftype_attr]: + mention.other['coreftype'] = node.misc[self.coreftype_attr] + if self.delete_orig_attrs: + del node.misc[self.coreftype_attr] + return mention def process_document(self, doc): id2node = {} links = [] + bridges = [] for node in doc.nodes_and_empty: this_id = node.misc[self.id_attr] if this_id != '': @@ -26,6 +75,16 @@ def process_document(self, doc): if self.delete_orig_attrs: for attr in (self.id_attr, self.ante_attr): del node.misc[attr] + if self.bridge_attr: + bridge_id = node.misc[self.bridge_attr] + if bridge_id != '': + if bridge_id == this_id: + logging.warning(f"{node} has a self-reference bridging {self.bridge_attr}={bridge_id}") + else: + bridges.append([bridge_id, this_id, node.misc[self.bridge_relation_attr]]) + if self.delete_orig_attrs: + for attr in (self.bridge_attr, self.bridge_relation_attr): + del node.misc[attr] # It seems faster&simpler to process the links in any order and implement entity merging, # rather than trying to sort the links so that no entity merging is needed. @@ -36,14 +95,9 @@ def process_document(self, doc): ante_node, this_node = id2node[ante_id], id2node[this_id] if not this_node.coref_mentions and not ante_node.coref_mentions: # None of the nodes is part of any mention/entity. Let's create them. - entity = this_node.root.document.create_coref_entity() - m_ante = entity.create_mention(head=ante_node, words=[ante_node]) - m_this = entity.create_mention(head=this_node, words=[this_node]) - for node, mention in ((ante_node, m_ante), (this_node, m_this)): - if node.misc['information-status']: - mention.other['infstat'] = node.misc['information-status'] - if self.delete_orig_attrs: - del node.misc['information-status'] + entity = self._new_entity(this_node.root.document) + self._new_mention(entity, ante_node) + self._new_mention(entity, this_node) elif this_node.coref_mentions and ante_node.coref_mentions: # Both of the nodes are part of mentions in different entities. # Let's merge the two entities (i.e. "steal" all mentions from the "ante" entity to "this" entity). @@ -59,6 +113,25 @@ def process_document(self, doc): else: # Only one of the nodes is part of an entity. Let's add the second one to this entity. if ante_node.coref_mentions: - ante_node.coref_entities[0].create_mention(head=this_node, words=[this_node]) + self._new_mention(ante_node.coref_entities[0], this_node) else: - this_node.coref_entities[0].create_mention(head=ante_node, words=[ante_node]) + self._new_mention(this_node.coref_entities[0], ante_node) + + # Bridging + for ante_id, this_id, relation in bridges: + if ante_id not in id2node: + logging.warning(f"{ante_id} is referenced in {self.bridge_attr}, but not in {self.id_attr}") + else: + ante_node, this_node = id2node[ante_id], id2node[this_id] + if ante_node.coref_mentions: + m_ante = next(m for m in ante_node.coref_mentions if m.head is ante_node) + e_ante = m_ante.entity + else: + e_ante = self._new_entity(ante_node.root.document) + m_ante = self._new_mention(e_ante, ante_node) + if this_node.coref_mentions: + m_this = next(m for m in this_node.coref_mentions if m.head is this_node) + else: + e_this = self._new_entity(this_node.root.document) + m_this = self._new_mention(e_this, this_node) + m_this.bridging.append((e_ante, relation)) From efc1587a57f55b26c72e4c3fcd34337b34c31de7 Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Tue, 1 Apr 2025 00:29:36 +0200 Subject: [PATCH 186/233] documenting that read.Conllup is not being used anywhere yet --- udapi/block/read/conllup.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/udapi/block/read/conllup.py b/udapi/block/read/conllup.py index 2e66da52..16d83d07 100644 --- a/udapi/block/read/conllup.py +++ b/udapi/block/read/conllup.py @@ -2,6 +2,9 @@ Columns which don't have standardize attributes in Udapi/CoNLL-U are stored in MISC (as key=value pairs). + +This code has been only tested on Hungarian KorKor files for CorefUD so far. +However, in the end, it is not used there (xtsv files are used instead conllup). """ import logging import re From 63e3ba5349a9670667ff9a739e5146ad757deee5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 12 Apr 2025 15:38:37 +0200 Subject: [PATCH 187/233] =?UTF-8?q?-=C5=A5=20=3D=20-t=C4=9B=20=3D=20-ti.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/addmwt.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 202579b9..6ea27818 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -100,13 +100,13 @@ def multiword_analysis(self, node): 'main': 0, 'shape': 'subtree', } - if subtokens[1] == 'ť': + if subtokens[1] in ['ť', 'tě', 'ti']: if token_from_subtokens != node.form: logging.warning("Concatenation of MISC 'AddMwt=%s' does not yield the FORM '%s'." % (node.misc['AddMwt'], node.form)) return None node.misc['AddMwt'] = '' return { - 'form': node.form.lower()[:-1] + ' ť', + 'form': node.form.lower()[:-1] + ' ' + subtokens[1], 'lemma': '* ť', 'upos': '* PART', 'xpos': '* TT-------------', From b799ee3e91b3a417e1d0ae70aeb7ed0b886badeb Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 12 Apr 2025 15:40:11 +0200 Subject: [PATCH 188/233] Bug fix. --- udapi/block/ud/cs/addmwt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 6ea27818..8bdebec8 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -106,7 +106,7 @@ def multiword_analysis(self, node): return None node.misc['AddMwt'] = '' return { - 'form': node.form.lower()[:-1] + ' ' + subtokens[1], + 'form': subtokens[0] + ' ' + subtokens[1], 'lemma': '* ť', 'upos': '* PART', 'xpos': '* TT-------------', From 75cc308ae945377f2c67cc3532d0646c77f5fbea Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sat, 12 Apr 2025 16:04:40 +0200 Subject: [PATCH 189/233] =?UTF-8?q?Old=20Czech=20"aby=C5=A1ta",=20"kdyby?= =?UTF-8?q?=C5=A1ta".?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/addmwt.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 8bdebec8..7f3a4283 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -18,6 +18,9 @@ 'kdybychme': {'form': 'když bychme', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Plur|Person=1|VerbForm=Fin'}, 'abyste': {'form': 'aby byste', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Plur|Person=2|VerbForm=Fin'}, 'kdybyste': {'form': 'když byste', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Plur|Person=2|VerbForm=Fin'}, + # Old Czech 'abyšta' == dual number; 2nd or 3rd person, the one example in data so far is 3rd. + 'abyšta': {'form': 'aby byšta', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Dual|Person=3|VerbForm=Fin'}, + 'kdybyšta': {'form': 'když byšta', 'feats': '_ Aspect=Imp|Mood=Cnd|Number=Dual|Person=3|VerbForm=Fin'}, } for v in MWTS.values(): v['upos'] = 'SCONJ AUX' From 78b54270e86f3581eb1d535e08b4b331e2f78f29 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 13 Apr 2025 13:12:15 +0200 Subject: [PATCH 190/233] Remove agreement features from predicates. --- udapi/block/mwe/msfcreateabstract.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/udapi/block/mwe/msfcreateabstract.py b/udapi/block/mwe/msfcreateabstract.py index c3f08bdf..9a1c774a 100644 --- a/udapi/block/mwe/msfcreateabstract.py +++ b/udapi/block/mwe/msfcreateabstract.py @@ -35,3 +35,11 @@ def process_node(self, node): subject.feats[f] = node.misc[msf] subject.misc[msf] = node.misc[msf] subject.misc['MSFFunc'] = 'No' + # Regardless of whether it had a subject or not, the agreement features + # should be removed from the verb. + ###!!! We also may want to check if the pre-existing subject has all the features. + node.misc['MSFNumber'] = '' + node.misc['MSFPerson'] = '' + node.misc['MSFGender'] = '' + node.misc['MSFAnimacy'] = '' + node.misc['MSFPolite'] = '' From c52c3dfbb573d87663a936a4950ea14068b9aba5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 13 Apr 2025 21:19:25 +0200 Subject: [PATCH 191/233] Czech compound case markers. --- udapi/block/mwe/msfcase.py | 241 +++++++++++++++++++++++++++++++++++++ 1 file changed, 241 insertions(+) diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/mwe/msfcase.py index 3d04eebf..f5516d0b 100644 --- a/udapi/block/mwe/msfcase.py +++ b/udapi/block/mwe/msfcase.py @@ -10,19 +10,35 @@ class MsfCase(Block): adposmap = { 'v+Loc': 'Ine', 'uvnitř+Gen': 'Ine', + 'uvnitř+': 'Ine', + 'mezi_uvnitř+Gen': 'Ine', # annotation error? 'uprostřed+Gen': 'Ces', 'mezi+Ins': 'Int', + 'mezi+Nom': 'Int', # annotation error + 'mezi+Voc': 'Int', # annotation error 'vně+Gen': 'Ext', + 'stranou+Gen': 'Ext', + 'stranou+Dat': 'Ext', 'na+Loc': 'Ade', + 'na_mimo+Loc': 'Ade', # annotation error? + 'na_úroveň+Gen': 'Ade', + 'na_úroveň+': 'Ade', + 'v_proces+Gen': 'Ade', # ??? 'v_rámec+Gen': 'Ade', # ??? + 'v_rámec+': 'Ade', # ??? + 'v_řada+Gen': 'Ade', # ??? + 'z_oblast+Gen': 'Ade', # ??? 'vedle+Gen': 'Apu', 'u+Gen': 'Chz', 'kolem+Gen': 'Cir', + 'kol+Gen': 'Cir', 'dokola+Gen': 'Cir', 'okolo+Gen': 'Cir', 'v_oblast+Gen': 'Cir', + 'v_oblast+': 'Cir', 'blízko+Dat': 'Prx', 'blízko+Gen': 'Prx', + 'blízko+': 'Prx', 'nedaleko+Gen': 'Prx', 'daleko+Gen': 'Prx', # lemma of 'nedaleko' 'poblíž+Gen': 'Prx', @@ -32,66 +48,134 @@ class MsfCase(Block): 'vespod+Gen': 'Sub', 'před+Ins': 'Ant', 'vpředu+Gen': 'Ant', + 'na_čelo+Gen': 'Ant', + 'v_čelo+Gen': 'Ant', + 'v_čelo+': 'Ant', 'za+Ins': 'Pst', 'naproti+Dat': 'Opp', 'od+Gen': 'Abl', + 'od+Dat': 'Abl', # annotation error + 'směr_od+Gen': 'Abl', + 'z_strana+Gen': 'Abl', + 'z_strana+': 'Abl', 'z+Gen': 'Ela', + 'z+Nom': 'Ela', # annotation error + 'z+Dat': 'Ela', # annotation error 'zevnitř+Gen': 'Ela', 'zprostřed+Gen': 'Cne', 's+Gen': 'Del', 'zpod+Gen': 'Sbe', 'zpoza+Gen': 'Pse', 'po+Loc': 'Per', + 'cesta+Gen': 'Per', + 'cesta+Ins': 'Per', 'napříč+Gen': 'Crs', 'napříč+Ins': 'Crs', 'podél+Gen': 'Lng', 'skrz+Acc': 'Inx', 'přes+Acc': 'Spx', + 'přes+Nom': 'Spx', # annotation error 'ob+Acc': 'Cix', 'po+Acc': 'Ter', + 'po+Nom': 'Ter', # annotation error + 'po+Gen': 'Ter', # annotation error 'do+Gen': 'Ill', + 'do+Acc': 'Ill', # annotation error + 'do_/+Gen': 'Ill', 'dovnitř+Gen': 'Ill', 'doprostřed+Gen': 'Cnl', 'mezi+Acc': 'Itl', 'na+Acc': 'All', + 'na+Nom': 'All', # annotation error 'na+Gen': 'All', # annotation error 'k+Dat': 'Apl', + 'k+Nom': 'Apl', # annotation error + 'vstříc+Dat': 'Apl', + 'do_oblast+Gen': 'Apl', + 'směr+': 'Apl', + 'směr_k+Dat': 'Apl', + 'směr_k+': 'Apl', + 'směr_na+Acc': 'Apl', + 'v_směr_k+Dat': 'Apl', 'nad+Acc': 'Spl', + 'nad+Nom': 'Spl', # annotation error 'pod+Acc': 'Sbl', 'před+Acc': 'Anl', + 'před+Gen': 'Anl', # annotation error 'za+Acc': 'Psl', + 'dík_za+Acc': 'Psl', # annotation error? 'dokud': 'Tan', 'nežli': 'Tan', 'v+Acc': 'Tem', 'v+Nom': 'Tem', # annotation error + 'v+Gen': 'Tem', # annotation error + 'při_příležitost+Gen': 'Tem', + 'současně_s+Ins': 'Tem', + 'u_příležitost+Gen': 'Tem', 'v_období+Gen': 'Tpx', 'počátkem+Gen': 'Din', + 'počátek+Gen': 'Din', + 'počínat+Ins': 'Din', + 'počínat+': 'Din', 'začátkem+Gen': 'Din', + 'začátek+Gen': 'Din', 'během+Gen': 'Dur', 'postupem+Gen': 'Dur', + 'postup+Gen': 'Dur', 'při+Loc': 'Dur', 'v_průběh+Gen': 'Dur', 'za+Gen': 'Der', 'koncem+Gen': 'Dtr', 'konec+Gen': 'Dtr', + 'k_konec+Gen': 'Dtr', + 'končit+Ins': 'Dtr', 'závěrem+Gen': 'Dtr', + 'závěr+Gen': 'Dtr', + 'na_závěr+Gen': 'Dtr', + 'v_závěr+Gen': 'Dtr', 'jakmile': 'Tps', 'jen_co': 'Tps', + 'před_po+Loc': 'Tps', 'počínaje+Ins': 'Teg', 'jménem+Nom': 'Atr', + 'jméno+Nom': 'Atr', 'zdali': 'Atr', 'že': 'Atr', + 'z_řada+Gen': 'Gen', 's+Ins': 'Com', + 's+Nom': 'Com', # annotation error 'spolu_s+Ins': 'Com', + 'spolu_s+': 'Com', 'společně_s+Ins': 'Com', + 'společně_s+': 'Com', + 'v_čelo_s+Ins': 'Com', + 'v_spolupráce_s+Ins': 'Com', 'bez+Gen': 'Abe', 'včetně+Gen': 'Inc', + 'nad_rámec+Gen': 'Add', 'kromě+Gen': 'Exc', + 'krom+Gen': 'Exc', 'mimo+Acc': 'Exc', 'mimo+Gen': 'Exc', 'vyjma+Gen': 'Exc', + 'až_na+Acc': 'Exc', + 's_výjimka+Gen': 'Exc', + 's_výjimka+': 'Exc', 'místo+Gen': 'Sbs', + 'místo+Ins': 'Sbs', # něčím místo něčím jiným + 'místo+Loc': 'Sbs', # annotation error + 'místo_do+Gen': 'Sbs', + 'místo_k+Dat': 'Sbs', + 'místo_na+Acc': 'Sbs', + 'místo_na+': 'Sbs', + 'místo_po+Loc': 'Sbs', + 'místo_v+Acc': 'Sbs', + 'místo_v+': 'Sbs', + 'místo_za+Acc': 'Sbs', 'namísto+Gen': 'Sbs', + 'namísto_do+Gen': 'Sbs', + 'v_zastoupení+Gen': 'Sbs', + 'výměna_za+Acc': 'Sbs', 'jako': 'Ess', 'jako+': 'Ess', 'jako+Nom': 'Ess', @@ -100,8 +184,24 @@ class MsfCase(Block): 'jako_u+Gen': 'Ess', 'jako_v+Loc': 'Ess', 'formou+Gen': 'Ess', + 'forma+Gen': 'Ess', + 'v_forma+Gen': 'Ess', + 'v_podoba+Gen': 'Ess', + 'v_podoba+': 'Ess', + 'shoda+Gen': 'Equ', + 'v_shoda_s+Ins': 'Equ', + 'do_soulad_s+Ins': 'Sem', + 'na_způsob+Gen': 'Sem', + 'po_vzor+Gen': 'Sem', + 'úměrně+Dat': 'Sem', + 'úměrně_k+Dat': 'Sem', + 'úměrně_s+Ins': 'Sem', + 'v_analogie_s+Ins': 'Sem', + 'v_duch+Gen': 'Sem', + 'v_smysl+Gen': 'Sem', 'oproti+Dat': 'Dsm', 'na_rozdíl_od+Gen': 'Dsm', + 'na_rozdíl_od+': 'Dsm', 'než': 'Cmp', 'než+Nom': 'Cmp', 'než+Gen': 'Cmp', @@ -109,18 +209,33 @@ class MsfCase(Block): 'než_nad+Ins': 'Cmp', 'než_v+Acc': 'Cmp', 'než_v+Loc': 'Cmp', + 'v_poměr_k+Dat': 'Cmp', + 'v_poměr_k+': 'Cmp', + 'v_porovnání_k+Dat': 'Cmp', + 'v_porovnání_s+Ins': 'Cmp', + 'v_porovnání_s+': 'Cmp', 'v_srovnání_s+Ins': 'Cmp', + 'v_srovnání_s+': 'Cmp', 'o+Acc': 'Dif', + 'o+Nom': 'Dif', # annotation error + 'o+Gen': 'Dif', # annotation error + 'o+Dat': 'Dif', # annotation error + 'o_o+Acc': 'Dif', # annotation error 'kdežto': 'Cmt', 'přičemž': 'Cmt', 'zatímco': 'Cmt', 'díky+Dat': 'Cau', + 'dík+Dat': 'Cau', 'kvůli+Dat': 'Cau', 'vinou+Gen': 'Cau', 'vlivem+Gen': 'Cau', 'vliv+Gen': 'Cau', + 'vliv+': 'Cau', + 'vinou+Gen': 'Cau', + 'vina+Gen': 'Cau', 'zásluhou+Gen': 'Cau', 'zásluha+Gen': 'Cau', + 'z_důvod+Gen': 'Cau', 'v_důsledek+Gen': 'Cau', 'jelikož': 'Cau', 'ježto': 'Cau', @@ -129,15 +244,30 @@ class MsfCase(Block): 'takže': 'Cau', 'následek+Gen': 'Cau', 'aby': 'Pur', + 'jméno+Gen': 'Pur', + 'pro_případ+Gen': 'Pur', + 'v_jméno+Gen': 'Pur', + 'v_zájem+Gen': 'Pur', + 'za_účel+Gen': 'Pur', 'na_základ+Gen': 'Cns', + 'pod_vliv+Gen': 'Cns', 's_ohled_na+Acc': 'Cns', + 's_přihlédnutí_k+Dat': 'Cns', + 's_přihlédnutí_na+Acc': 'Cns', 'v_souvislost_s+Ins': 'Cns', + 'v_souvislost_s+': 'Cns', 'v_světlo+Gen': 'Cns', 'vzhledem_k+Dat': 'Cns', + 'v_soulad_s+Ins': 'Cns', + 'v_soulad_s+': 'Cns', + 'z_titul+Gen': 'Cns', 'ať': 'Ign', 'bez_ohled_na+Acc': 'Ign', + 'nehledě_k+Dat': 'Ign', + 'nehledě_na+Acc': 'Ign', 'navzdory+Dat': 'Ccs', 'vzdor+Dat': 'Ccs', + 'v_rozpor_s+Ins': 'Ccs', 'ač': 'Ccs', 'ačkoli': 'Ccs', 'byť': 'Ccs', @@ -149,22 +279,100 @@ class MsfCase(Block): 'li': 'Cnd', 'pakliže': 'Cnd', 'pokud': 'Cnd', + 'pokud+Nom': 'Cnd', 'zda': 'Cnd', 'v_případ+Gen': 'Cnd', + 'v_případ+': 'Cnd', + 'v_závislost_na+Loc': 'Cnd', + 'v_závislost_s+Ins': 'Cnd', 'o+Loc': 'The', 'ohledně+Gen': 'The', 'stran+Gen': 'The', + 'co_do+Gen': 'The', + 'na_téma+Gen': 'The', + 'na_téma+Nom': 'The', + 'na_téma+': 'The', + 'na_úsek+Gen': 'The', + 'po_stránka+Gen': 'The', + 'v_obor+Gen': 'The', + 'v_otázka+Gen': 'The', + 'v_spojení_s+Ins': 'The', + 'v_věc+Gen': 'The', + 'v_vztah_k+Dat': 'The', + 'v_vztah_k+': 'The', + 'v_záležitost+Gen': 'The', + 'v_znamení+Gen': 'The', 'z_hledisko+Gen': 'The', + 'z_hledisko+': 'The', 'podle+Gen': 'Quo', 'dle+Gen': 'Quo', 'pomocí+Gen': 'Ins', + 's_pomoc+Gen': 'Ins', 'prostřednictvím+Gen': 'Ins', 'prostřednictví+Gen': 'Ins', + 'prostřednictví+Ins': 'Ins', # annotation error + 'prostřednictví+': 'Ins', + 'za_pomoc+Gen': 'Ins', 'pro+Acc': 'Ben', + 'pro+Nom': 'Ben', # annotation error + 'pro+Gen': 'Ben', # annotation error + 'pro+Ins': 'Ben', # annotation error + 'napospas+Dat': 'Ben', + 'k_prospěch+Gen': 'Ben', + 'na_úkor+Gen': 'Ben', + 'na_vrub+Gen': 'Ben', + 'v_prospěch+Gen': 'Ben', + 'v_neprospěch+Gen': 'Ben', + 'v_služba+Gen': 'Ben', 'proti+Dat': 'Adv', + 'proti+Gen': 'Adv', 'kontra+Nom': 'Adv', 'versus+Nom': 'Adv', 'vůči+Dat': 'Adv', + # subordinators + 'dokud': 'Tan', + 'nežli': 'Tan', + 'jakmile': 'Tps', + 'jen_co': 'Tps', + 'zdali': 'Atr', + 'že': 'Atr', + 'jako': 'Ess', + 'než': 'Cmp', + 'kdežto': 'Cmt', + 'přičemž': 'Cmt', + 'zatímco': 'Cmt', + 'jelikož': 'Cau', + 'ježto': 'Cau', + 'poněvadž': 'Cau', + 'protože': 'Cau', + 'takže': 'Cau', + 'aby': 'Pur', + 'ať': 'Ign', + 'ač': 'Ccs', + 'ačkoli': 'Ccs', + 'byť': 'Ccs', + 'přestože': 'Ccs', + 'třebaže': 'Ccs', + 'jestli': 'Cnd', + 'jestliže': 'Cnd', + 'ledaže': 'Cnd', + 'li': 'Cnd', + 'pakliže': 'Cnd', + 'pokud': 'Cnd', + 'zda': 'Cnd', + # coordinators + 'a': 'Conj', + 'i': 'Conj', + 'ani': 'Nnor', + 'nebo': 'Disj', + 'či': 'Disj', + 'ale': 'Advs', + 'avšak': 'Advs', + 'však': 'Advs', + 'nýbrž': 'Advs', + 'neboť': 'Reas', + 'tedy': 'Cnsq', + 'tak': 'Cnsq' } def process_node(self, node): @@ -204,4 +412,37 @@ def process_node(self, node): else: logging.warn(f"No Case value found for '{caseadpostring}'.") msfcase = caseadpostring + # Omer wants to collect cases from both adpositions and subordinators + # but we will consider subordinators only if we do not have any case + # from morphology or adpositions. + if not msfcase: + subordinators = [] + for c in node.children: + if c.udeprel == 'mark': + lemma = c.lemma + # If it has outgoing 'fixed' relations, it is a multiword adposition. + fixedchildren = [x.lemma for x in c.children if x.udeprel == 'fixed'] + if fixedchildren: + lemma += '_' + '_'.join(fixedchildren) + subordinators.append(lemma) + if subordinators: + subordstring = '_'.join(subordinators) + if subordstring in self.adposmap: + msfcase = self.adposmap[subordstring] + # To lump coordinators with all the above makes even less sense but for + # the moment we do it. + if not msfcase: + coordinators = [] + for c in node.children: + if c.udeprel == 'cc': + lemma = c.lemma + # If it has outgoing 'fixed' relations, it is a multiword adposition. + fixedchildren = [x.lemma for x in c.children if x.udeprel == 'fixed'] + if fixedchildren: + lemma += '_' + '_'.join(fixedchildren) + coordinators.append(lemma) + if coordinators: + coordstring = '_'.join(coordinators) + if coordstring in self.adposmap: + msfcase = self.adposmap[coordstring] node.misc['MSFCase'] = msfcase From fdbfe58fc03e32d287346c44f7538e4923752a59 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 10:43:50 +0200 Subject: [PATCH 192/233] The phrase Writer module remodeled as an abstract block, providing methods to inherit. --- udapi/block/mwe/msfphrase.py | 76 ++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 udapi/block/mwe/msfphrase.py diff --git a/udapi/block/mwe/msfphrase.py b/udapi/block/mwe/msfphrase.py new file mode 100644 index 00000000..566663df --- /dev/null +++ b/udapi/block/mwe/msfphrase.py @@ -0,0 +1,76 @@ +""" +Morphosyntactic features (UniDive): +An abstract block as a base for derivation of blocks that discover periphrastic +verb forms and save them as Phrase features in MISC. This block provides the +methods that save the features in MISC. It is based on the Writer module by +Lenka Krippnerová. +""" +from udapi.core.block import Block +import logging + +class MsfPhrase(Block): + + def process_node(self, node): + """ + Override this in a derived class! + """ + logging.fatal('process_node() not implemented.') + + dictionary = { + 'person': 'PhrasePerson', + 'number': 'PhraseNumber', + 'mood': 'PhraseMood', + 'tense': 'PhraseTense', + 'voice': 'PhraseVoice', + 'aspect':'PhraseAspect', + 'form': 'PhraseForm', + 'reflex': 'PhraseReflex', + 'polarity': 'PhrasePolarity', + 'gender':'PhraseGender', + 'animacy':'PhraseAnimacy', + 'ords':'Phrase' + } + + def write_node_info(self, node, + tense = None, + person = None, + number = None, + mood = None, + voice = None, + form = None, + reflex = None, + polarity = None, + ords = None, + gender = None, + animacy = None, + aspect = None): + arguments = locals() + del arguments['self'] # delete self and node from arguments, + del arguments['node'] # we want only grammatical categories + for key,val in arguments.items(): + if val != None: + node.misc[self.dictionary[key]] = val + + def get_polarity(self, node, neg): + if node.feats['Polarity'] != "": + return node.feats['Polarity'] + if len(neg) == 0: + return None + return 'Neg' + + def get_is_reflex(self,node,refl): + if len(refl) == 0: + return node.feats['Reflex'] + return 'Yes' + + def is_expl_pass(self,refl): + if len(refl) == 0: + return False + return refl[0].deprel == 'expl:pass' + + def get_voice(self,node,refl): + voice = node.feats['Voice'] + if self.is_expl_pass(refl): + return 'Pass' + return voice + From 3b6ce6c7eb97a1fccd39c5f1727b4372a0e6e0df Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 10:53:45 +0200 Subject: [PATCH 193/233] Slavic periphrastic blocks moved to their own folder. --- udapi/block/mwe/{slavic_cond.py => slavic/conditional.py} | 0 udapi/block/mwe/{slavic_transgressive.py => slavic/converb.py} | 0 udapi/block/mwe/{slavic_future.py => slavic/future.py} | 0 udapi/block/mwe/{slavic_imperative.py => slavic/imperative.py} | 0 udapi/block/mwe/{slavic_inf.py => slavic/infinitive.py} | 0 udapi/block/mwe/{slavic_past.py => slavic/past.py} | 0 udapi/block/mwe/{slavic_pres.py => slavic/present.py} | 0 7 files changed, 0 insertions(+), 0 deletions(-) rename udapi/block/mwe/{slavic_cond.py => slavic/conditional.py} (100%) rename udapi/block/mwe/{slavic_transgressive.py => slavic/converb.py} (100%) rename udapi/block/mwe/{slavic_future.py => slavic/future.py} (100%) rename udapi/block/mwe/{slavic_imperative.py => slavic/imperative.py} (100%) rename udapi/block/mwe/{slavic_inf.py => slavic/infinitive.py} (100%) rename udapi/block/mwe/{slavic_past.py => slavic/past.py} (100%) rename udapi/block/mwe/{slavic_pres.py => slavic/present.py} (100%) diff --git a/udapi/block/mwe/slavic_cond.py b/udapi/block/mwe/slavic/conditional.py similarity index 100% rename from udapi/block/mwe/slavic_cond.py rename to udapi/block/mwe/slavic/conditional.py diff --git a/udapi/block/mwe/slavic_transgressive.py b/udapi/block/mwe/slavic/converb.py similarity index 100% rename from udapi/block/mwe/slavic_transgressive.py rename to udapi/block/mwe/slavic/converb.py diff --git a/udapi/block/mwe/slavic_future.py b/udapi/block/mwe/slavic/future.py similarity index 100% rename from udapi/block/mwe/slavic_future.py rename to udapi/block/mwe/slavic/future.py diff --git a/udapi/block/mwe/slavic_imperative.py b/udapi/block/mwe/slavic/imperative.py similarity index 100% rename from udapi/block/mwe/slavic_imperative.py rename to udapi/block/mwe/slavic/imperative.py diff --git a/udapi/block/mwe/slavic_inf.py b/udapi/block/mwe/slavic/infinitive.py similarity index 100% rename from udapi/block/mwe/slavic_inf.py rename to udapi/block/mwe/slavic/infinitive.py diff --git a/udapi/block/mwe/slavic_past.py b/udapi/block/mwe/slavic/past.py similarity index 100% rename from udapi/block/mwe/slavic_past.py rename to udapi/block/mwe/slavic/past.py diff --git a/udapi/block/mwe/slavic_pres.py b/udapi/block/mwe/slavic/present.py similarity index 100% rename from udapi/block/mwe/slavic_pres.py rename to udapi/block/mwe/slavic/present.py From 06775c0e1cdb8720a9b63f0bc5145da072bcf7dc Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 11:05:55 +0200 Subject: [PATCH 194/233] Slavic conditional: Use MsfPhrase instead of the Writer module. --- udapi/block/mwe/slavic/conditional.py | 27 ++++----------------------- 1 file changed, 4 insertions(+), 23 deletions(-) diff --git a/udapi/block/mwe/slavic/conditional.py b/udapi/block/mwe/slavic/conditional.py index de7cd160..2f6aa2dc 100644 --- a/udapi/block/mwe/slavic/conditional.py +++ b/udapi/block/mwe/slavic/conditional.py @@ -2,26 +2,9 @@ # Conditional mood of Slavic languages -from udapi.core.block import Block -import importlib -import sys - -class Slavic_cond(Block): - def __init__(self, writer_prefix='',**kwargs): - super().__init__(**kwargs) - if writer_prefix != '': - writer_module = ".".join([writer_prefix,'writer']) - else: - writer_module = 'writer' - try: - module = importlib.import_module(writer_module) - except ModuleNotFoundError as e: - print(e, file=sys.stderr) - print("Try to set writer_prefix parameter.", file=sys.stderr) - exit(1) - - self.wr = module.Writer() +from udapi.block.mwe.MsfPhrase import MsfPhrase +class conditional(MsfPhrase): def process_node(self, node): if node.feats['VerbForm'] == 'Part' or node.feats['VerbForm'] == 'Fin': @@ -48,8 +31,7 @@ def process_node(self, node): if auxVerb.feats['Person'] != '': person=auxVerb.feats['Person'] - - self.wr.write_node_info(node, + self.write_node_info(node, person=person, number=node.feats['Number'], mood='Cnd', @@ -63,7 +45,6 @@ def process_node(self, node): animacy=node.feats['Animacy'] ) return - cop = [x for x in node.children if x.udeprel == 'cop' and (x.feats['VerbForm'] == 'Part' or x.feats['VerbForm'] == 'Fin')] aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel=='aux:pass'] @@ -77,7 +58,7 @@ def process_node(self, node): copVerb = cop[0] phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in cop] + [x.ord for x in neg] + [x.ord for x in prep] + [x.ord for x in refl] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, person=copVerb.feats['Person'], number=copVerb.feats['Number'], mood='Cnd', From a1089bf421ccd932a744cd66dda0dfe1258dc528 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 11:10:59 +0200 Subject: [PATCH 195/233] Fixed class derivation. --- udapi/block/mwe/slavic/conditional.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/block/mwe/slavic/conditional.py b/udapi/block/mwe/slavic/conditional.py index 2f6aa2dc..ae56866d 100644 --- a/udapi/block/mwe/slavic/conditional.py +++ b/udapi/block/mwe/slavic/conditional.py @@ -2,9 +2,9 @@ # Conditional mood of Slavic languages -from udapi.block.mwe.MsfPhrase import MsfPhrase +import udapi.block.mwe.msfphrase -class conditional(MsfPhrase): +class conditional(udapi.block.mwe.msfphrase.MsfPhrase): def process_node(self, node): if node.feats['VerbForm'] == 'Part' or node.feats['VerbForm'] == 'Fin': From 9afb712e25dc46e02e6196d7c97a7a47be95c573 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 11:12:08 +0200 Subject: [PATCH 196/233] Typo. --- udapi/block/mwe/slavic/conditional.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/mwe/slavic/conditional.py b/udapi/block/mwe/slavic/conditional.py index ae56866d..bafbb68c 100644 --- a/udapi/block/mwe/slavic/conditional.py +++ b/udapi/block/mwe/slavic/conditional.py @@ -4,7 +4,7 @@ import udapi.block.mwe.msfphrase -class conditional(udapi.block.mwe.msfphrase.MsfPhrase): +class Conditional(udapi.block.mwe.msfphrase.MsfPhrase): def process_node(self, node): if node.feats['VerbForm'] == 'Part' or node.feats['VerbForm'] == 'Fin': From 82c3ccd83d94d1ddb15b2d958c4cb9be3ed31489 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 11:14:00 +0200 Subject: [PATCH 197/233] Bug fix. --- udapi/block/mwe/slavic/conditional.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/udapi/block/mwe/slavic/conditional.py b/udapi/block/mwe/slavic/conditional.py index bafbb68c..615878f2 100644 --- a/udapi/block/mwe/slavic/conditional.py +++ b/udapi/block/mwe/slavic/conditional.py @@ -37,9 +37,9 @@ def process_node(self, node): mood='Cnd', form='Fin', aspect=node.feats['Aspect'], - reflex=self.wr.get_is_reflex(node,refl), - polarity=self.wr.get_polarity(node,neg), - voice=self.wr.get_voice(node, refl), + reflex=self.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + voice=self.get_voice(node, refl), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -63,9 +63,9 @@ def process_node(self, node): number=copVerb.feats['Number'], mood='Cnd', form='Fin', - voice=self.wr.get_voice(node, refl), - polarity=self.wr.get_polarity(copVerb,neg), - reflex=self.wr.get_is_reflex(node, refl), + voice=self.get_voice(node, refl), + polarity=self.get_polarity(copVerb,neg), + reflex=self.get_is_reflex(node, refl), ords=phrase_ords, gender=copVerb.feats['Gender'], animacy=copVerb.feats['Animacy'] From f18143a06ed989770b710379f3db3cdc67673a55 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 12:35:13 +0200 Subject: [PATCH 198/233] Update od Lenky. --- udapi/block/mwe/slavic/conditional.py | 19 ++-- udapi/block/mwe/slavic/converb.py | 6 +- udapi/block/mwe/slavic/future.py | 12 +-- udapi/block/mwe/slavic/imperative.py | 6 +- udapi/block/mwe/slavic/infinitive.py | 26 +++++- udapi/block/mwe/slavic/past.py | 115 ++++++++++++++++++------- udapi/block/mwe/slavic/preprocessor.py | 69 +++++++++++++++ udapi/block/mwe/slavic/present.py | 6 +- 8 files changed, 199 insertions(+), 60 deletions(-) create mode 100644 udapi/block/mwe/slavic/preprocessor.py diff --git a/udapi/block/mwe/slavic/conditional.py b/udapi/block/mwe/slavic/conditional.py index 615878f2..9573d377 100644 --- a/udapi/block/mwe/slavic/conditional.py +++ b/udapi/block/mwe/slavic/conditional.py @@ -7,7 +7,7 @@ class Conditional(udapi.block.mwe.msfphrase.MsfPhrase): def process_node(self, node): - if node.feats['VerbForm'] == 'Part' or node.feats['VerbForm'] == 'Fin': + if (node.feats['VerbForm'] == 'Part' or node.feats['VerbForm'] == 'PartRes') or node.feats['VerbForm'] == 'Fin': # in most Slavic languages, the verb has feats['VerbForm'] == 'Part' but in Polish the verb has feats['VerbForm'] == 'Fin' aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd'] # list for auxiliary verbs for forming the conditional mood @@ -19,7 +19,7 @@ def process_node(self, node): if len(aux_cnd) > 0 and len(cop) == 0: aux = [x for x in node.children if x.udeprel == 'aux' or x.feats['Mood'] == 'Cnd'] # all auxiliary verbs and conjuctions with feats['Mood'] == 'Cnd' - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in refl] + [x.ord for x in neg] @@ -27,10 +27,11 @@ def process_node(self, node): auxVerb = aux_cnd[0] - person='3' # TODO there could be a problem in russian etc. (same as in past tense) + person='3' # TODO there is a problem in russian etc. (same as in past tense) if auxVerb.feats['Person'] != '': person=auxVerb.feats['Person'] + self.write_node_info(node, person=person, number=node.feats['Number'], @@ -45,29 +46,31 @@ def process_node(self, node): animacy=node.feats['Animacy'] ) return + cop = [x for x in node.children if x.udeprel == 'cop' and (x.feats['VerbForm'] == 'Part' or x.feats['VerbForm'] == 'Fin')] - aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel=='aux:pass'] + aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel=='aux:cnd'] if len(cop) > 0 and len(aux_cnd) > 0: - aux = [x for x in node.children if x.udeprel == 'aux' or x.feats['Mood'] == 'Cnd'] + # there can be a copula with Mood='Cnd' (i. e. in Old East Slavonic), we don't want to count these copula in phrase_ords twice, so there is x.udeprel != 'cop' in aux list + aux = [x for x in node.children if (x.udeprel == 'aux' or x.feats['Mood'] == 'Cnd') and x.udeprel != 'cop'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] prep = [x for x in node.children if x.upos == 'ADP'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] copVerb = cop[0] phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in cop] + [x.ord for x in neg] + [x.ord for x in prep] + [x.ord for x in refl] phrase_ords.sort() self.write_node_info(node, + aspect=copVerb.feats['Aspect'], person=copVerb.feats['Person'], number=copVerb.feats['Number'], mood='Cnd', form='Fin', - voice=self.get_voice(node, refl), + voice=self.get_voice(copVerb, refl), polarity=self.get_polarity(copVerb,neg), reflex=self.get_is_reflex(node, refl), ords=phrase_ords, gender=copVerb.feats['Gender'], animacy=copVerb.feats['Animacy'] ) - diff --git a/udapi/block/mwe/slavic/converb.py b/udapi/block/mwe/slavic/converb.py index 4ffbdaea..612fbd6a 100644 --- a/udapi/block/mwe/slavic/converb.py +++ b/udapi/block/mwe/slavic/converb.py @@ -25,7 +25,7 @@ def __init__(self, writer_prefix='',**kwargs): def process_node(self, node): # condition node.upos == 'VERB' to prevent copulas from entering this branch if node.feats['VerbForm'] == 'Conv' and node.upos == 'VERB': - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] @@ -75,7 +75,7 @@ def process_node(self, node): if len(cop) > 0: prep = [x for x in node.children if x.upos == 'ADP'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] copVerb = cop[0] phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] @@ -91,6 +91,6 @@ def process_node(self, node): form='Conv', polarity=self.wr.get_polarity(node,neg), ords=phrase_ords, - voice=self.wr.get_voice(node, refl) + voice=self.wr.get_voice(copVerb, refl) ) diff --git a/udapi/block/mwe/slavic/future.py b/udapi/block/mwe/slavic/future.py index 21d13a52..12e1574c 100644 --- a/udapi/block/mwe/slavic/future.py +++ b/udapi/block/mwe/slavic/future.py @@ -26,7 +26,7 @@ def process_node(self, node): # future tense for Serbian and Croatian aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres' and (x.lemma == 'hteti' or x.lemma == 'htjeti')] if node.upos != 'AUX' and len(aux) != 0: - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] aux_other = [x for x in node.children if x.udeprel == 'aux'] # adding aux for passive voice cop = [x for x in node.children if x.deprel == 'cop'] @@ -80,7 +80,7 @@ def process_node(self, node): aux = [x for x in node.children if x.lemma == 'ќе' or x.lemma == 'ще'] if node.feats['Tense'] == 'Pres' and len(aux) > 0: - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + [x.ord for x in aux] phrase_ords.sort() @@ -103,7 +103,7 @@ def process_node(self, node): # Upper Sorbian forms the future tense in this way, however, the feats[Aspect] are not listed in the data # in some languages ​​(e.g. in Russian) these verbs have the Tense Fut, in others (e.g. in Czech) they have the Tense Pres """if node.feats['Aspect'] == 'Perf' and (node.feats['Tense'] == 'Pres' or node.feats['Tense'] == 'Fut') and node.feats['VerbForm'] != 'Conv': - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] @@ -132,7 +132,7 @@ def process_node(self, node): aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Fut'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] if len(aux) > 0: auxVerb = aux[0] @@ -183,7 +183,7 @@ def process_node(self, node): aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Mood']=='Ind'] prep = [x for x in node.children if x.upos == 'ADP'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in aux] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] phrase_ords.sort() @@ -194,7 +194,7 @@ def process_node(self, node): number=copVerb.feats['Number'], mood='Ind', form='Fin', - voice=self.wr.get_voice(node, refl), + voice=self.wr.get_voice(copVerb, refl), polarity=self.wr.get_polarity(copVerb,neg), ords=phrase_ords ) diff --git a/udapi/block/mwe/slavic/imperative.py b/udapi/block/mwe/slavic/imperative.py index 02aad2e5..cbb521ac 100644 --- a/udapi/block/mwe/slavic/imperative.py +++ b/udapi/block/mwe/slavic/imperative.py @@ -25,7 +25,7 @@ def __init__(self, writer_prefix='',**kwargs): def process_node(self, node): # the condition node.upos == 'VERB' ensures that copulas do not enter this branch if node.feats['Mood'] == 'Imp' and node.upos == 'VERB': - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] @@ -72,7 +72,7 @@ def process_node(self, node): if len(cop) > 0: prep = [x for x in node.children if x.upos == 'ADP'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] copVerb = cop[0] phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] @@ -83,7 +83,7 @@ def process_node(self, node): number=copVerb.feats['Number'], mood='Imp', form='Fin', - voice=self.wr.get_voice(node, refl), + voice=self.wr.get_voice(copVerb, refl), reflex=self.wr.get_is_reflex(node, refl), polarity=self.wr.get_polarity(node,neg), ords=phrase_ords diff --git a/udapi/block/mwe/slavic/infinitive.py b/udapi/block/mwe/slavic/infinitive.py index 7c7d2e39..7932e8e8 100644 --- a/udapi/block/mwe/slavic/infinitive.py +++ b/udapi/block/mwe/slavic/infinitive.py @@ -26,7 +26,7 @@ def process_node(self,node): if node.feats['VerbForm'] == 'Inf' and node.upos == 'VERB': aux = [x for x in node.children if x.udeprel == 'aux'] if len(aux) == 0: # the list of auxiliary list must be empty - we don't want to mark infinitives which are part of any other phrase (for example the infinititive is part of the future tense in Czech) - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] @@ -51,7 +51,7 @@ def process_node(self,node): aux_forb = [x for x in node.children if x.udeprel == 'aux' and x.feats['VerbForm'] != 'Inf'] if len(aux) > 0 and len(aux_forb) == 0: neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] + [x.ord for x in refl] phrase_ords.sort() @@ -76,15 +76,33 @@ def process_node(self,node): if len(cop) > 0 and len(aux_forb) == 0: prep = [x for x in node.children if x.upos == 'ADP'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] phrase_ords.sort() self.wr.write_node_info(node, - voice=self.wr.get_voice(node, refl), + voice=self.wr.get_voice(cop[0], refl), form='Inf', polarity=self.wr.get_polarity(cop[0],neg), reflex=self.wr.get_is_reflex(node, refl), ords=phrase_ords ) + + # there is a rare verb form called supine in Slovenian, it is used instead of infinitive as the argument of motion verbs + if node.feats['VerbForm'] == 'Sup': + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + self.wr.write_node_info(node, + aspect=node.feats['Aspect'], + voice='Act', + form='Sup', + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node, refl), + ords=phrase_ords + ) + diff --git a/udapi/block/mwe/slavic/past.py b/udapi/block/mwe/slavic/past.py index 6f9a6816..3f341f5b 100644 --- a/udapi/block/mwe/slavic/past.py +++ b/udapi/block/mwe/slavic/past.py @@ -27,7 +27,7 @@ def get_person_for_langs_with_simple_past(self, node, person): returns the person which is known from subject, languages with the simple past tense (e. g. Russian) do not express person in these verb forms if the person was not taken from the subject, the third person would be filled in automatically due to languages ​​with a compound past but simple forms for the third person (e. g. Czech) """ - subj = [x for x in node.children if x.udeprel == "nsubj"] + subj = [x for x in node.children if x.udeprel == 'nsubj'] if subj: subj = subj[0] if subj.feats['Person'] != '': @@ -35,19 +35,45 @@ def get_person_for_langs_with_simple_past(self, node, person): return person def process_node(self, node): + + past_tenses = ['Past', 'Imp', 'Pqp'] + cop = [x for x in node.children if x.udeprel == 'cop' and (x.feats['Tense'] in past_tenses)] + + # there is person 0 in Polish and Ukrainian which is for impersonal statements + # in Polish, verbs with Person=0 have also Tense=Past, in Ukrainian the tense is not specified + if node.feats['Person'] == '0': + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() - cop = [x for x in node.children if x.udeprel == "cop" and x.feats['Tense'] == 'Past'] + self.wr.write_node_info(node, + tense=node.feats['Tense'], + person=node.feats['Person'], + number=node.feats['Number'], + mood=node.feats['Mood'], + voice='Pass', + aspect=node.feats['Aspect'], + form=node.feats['VerbForm'], + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'] + ) # compound past tense - if node.feats['VerbForm'] == 'Part' and node.upos == 'VERB' and node.feats['Voice'] != 'Pass': + if (node.feats['VerbForm'] == 'Part' or node.feats['VerbForm'] == 'PartRes') and node.upos == 'VERB' and node.feats['Voice'] != 'Pass': aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + aux_pqp = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] in past_tenses] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in refl] + [x.ord for x in neg] + [x.ord for x in aux_pqp] phrase_ords.sort() - aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd'] # we don't want to mark l-participles in the conditional as past tense + aux_cnd = [x for x in node.children if (x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd') and x.udeprel != 'conj'] # we don't want to mark l-participles in the conditional as past tense if len(aux_cnd) == 0: if len(aux) > 0: person = aux[0].feats['Person'] @@ -55,9 +81,19 @@ def process_node(self, node): elif len(aux) == 0: person = '3' + if len(aux_pqp) > 0: + person = aux_pqp[0].feats['Person'] + + # in Slovenian, the participles are not annotated as Tense='Past', the Tense feature is missing here + # but in Bulgarian, there are cases where the participles are annotated as Tense='Imp' + tense = 'Past' + if node.feats['Tense'] == 'Imp': + tense = 'Imp' + if node.feats['Tense'] == 'Pqp': + tense = 'Pqp' self.wr.write_node_info(node, - tense='Past', + tense=tense, person=person, number=node.feats['Number'], mood='Ind', @@ -70,34 +106,43 @@ def process_node(self, node): gender=node.feats['Gender'], animacy=node.feats['Animacy'] ) + # the past tense of some Slavic languages ​​is formed only by a verb without an auxiliary verb (e.g. Polish) - elif node.feats['Tense'] == 'Past' and node.upos == 'VERB' and node.feats['VerbForm'] != 'Conv': - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + # or imperfect (special case of the past tense) e.g. in Bulgarian or Croatian + elif (node.feats['Tense'] in past_tenses) and node.upos == 'VERB' and node.feats['VerbForm'] != 'Conv': + + # the past tense is formed only by a content verb, not with an auxiliary + aux_forb = [x for x in node.children if x.udeprel == 'aux'] + + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + if not aux_forb: - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] - phrase_ords.sort() + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() - self.wr.write_node_info(node, - tense='Past', - person=node.feats['Person'], - number=node.feats['Number'], - mood='Ind', - voice=self.wr.get_voice(node,refl), - aspect=node.feats['Aspect'], - form=node.feats['VerbForm'], - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), - ords=phrase_ords, - gender=node.feats['Gender'], - animacy=node.feats['Animacy'] - ) + self.wr.write_node_info(node, + tense=node.feats['Tense'], + person=node.feats['Person'], + number=node.feats['Number'], + mood='Ind', + voice=self.wr.get_voice(node,refl), + aspect=node.feats['Aspect'], + form=node.feats['VerbForm'], + polarity=self.wr.get_polarity(node,neg), + reflex=self.wr.get_is_reflex(node,refl), + ords=phrase_ords, + gender=node.feats['Gender'], + animacy=node.feats['Animacy'] + ) + - # passivum + # passive elif node.upos == 'ADJ' and node.feats['Voice'] == 'Pass' and len(cop) == 0: - aux_past_tense = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Past'] + aux_past_tense = [x for x in node.children if x.udeprel == 'aux' and (x.feats['Tense'] in past_tenses)] aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd'] # we don't want to mark l-participles in the conditional as past tense if len(aux_cnd) == 0: if len(aux_past_tense) > 0: @@ -112,7 +157,7 @@ def process_node(self, node): person = self.get_person_for_langs_with_simple_past(node, person) self.wr.write_node_info(node, - tense='Past', + tense=aux_past_tense[0].feats['Tense'], person=person, number=aux_past_tense[0].feats['Number'], mood='Ind', @@ -131,22 +176,26 @@ def process_node(self, node): aux_past_tense = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres'] prep = [x for x in node.children if x.upos == 'ADP'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] phrase_ords = [node.ord] + [x.ord for x in aux_past_tense] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] phrase_ords.sort() person = '3' if aux_past_tense: - person = aux_past_tense[0].feats["Person"] - person = self.get_person_for_langs_with_simple_past(node, person) + person = aux_past_tense[0].feats['Person'] + + # In ru, be, uk, the person is not expressed in past tense and the verbform is Fin, not Part + if cop[0].feats['VerbForm'] == 'Fin': + person = '' self.wr.write_node_info(node, - tense='Past', + aspect=cop[0].feats['Aspect'], + tense=cop[0].feats['Tense'], person=person, number=cop[0].feats['Number'], mood='Ind', - voice=self.wr.get_voice(node, refl), + voice=self.wr.get_voice(cop[0], refl), form='Fin', reflex=self.wr.get_is_reflex(node,refl), polarity=self.wr.get_polarity(cop[0],neg), diff --git a/udapi/block/mwe/slavic/preprocessor.py b/udapi/block/mwe/slavic/preprocessor.py new file mode 100644 index 00000000..c6a2dcbe --- /dev/null +++ b/udapi/block/mwe/slavic/preprocessor.py @@ -0,0 +1,69 @@ +#!/usr/bin/env python3 + +from udapi.core.block import Block + +class Preprocessor(Block): + + def process_node(self,node): + + # in Ukrainian the active verb forms are not marked as PhraseVoice=Act + if (node.upos == 'VERB' or (node.upos == 'AUX' and node.feats['VerbForm'] == 'Fin')) and node.feats['Voice'] == '': + node.feats['Voice'] = 'Act' + + # in Belarusian, some adjectives formed from verbs are marked as verbs + # if the verb has case, then it is an adjective + if node.upos == 'VERB' and node.feats['Case'] != '': + node.upos = 'ADJ' + + # in Polish, the conditional mood for auxiliary verbs is marked as deprel == 'aux:cnd' and not as in the last Slavic languages ​​feats['Mood'] == 'Cnd' + if node.deprel == 'aux:cnd': + node.feats['Mood'] = 'Cnd' + + # unify polarities - some languages ​​mark only Neg (Russian), some mark both Neg and Pos (Czech) + if node.feats['Polarity'] == 'Pos': + node.feats['Polarity'] = '' + + # makedonstina tvori budouci cas pomoci pomocneho slova ќе, u nejz neni nijak vyznaceno, ze se podili na tvorbe budouciho casu + # stejne tak bulharstina pomoci pomocneho slova ще + # makedonstina a bulharstina + if node.feats['Tense'] == 'Pres': + aux = [x for x in node.children if x.lemma == 'ќе' or x.lemma == 'ще'] + if len(aux) == 1: + aux[0].feats['Tense'] = 'Fut' + + # in Czech and in Old Church Slavonic, the participles are sometimes marked with the plural gender + if node.feats['Gender'] == 'Fem,Neut' or node.feats['Gender'] == 'Fem,Masc': + subj = [x for x in node.children if x.udeprel == 'nsubj'] + + # for relative pronouns, only one gender is indicated + if len(subj) == 1: + conj = [x for x in subj[0].children if x.deprel == 'conj'] + if len(conj) == 0: + node.feats['Gender'] = subj[0].feats['Gender'] + node.feats['Number'] = subj[0].feats['Number'] + + # participles in passive are sometimes annotated as VERB, sometimes as ADJ + if node.upos == 'VERB' and node.feats['Voice'] == 'Pass': + node.upos = 'ADJ' + + # there are cases where the node has deprel=='expl:pv' or 'expl:pass' or 'expl:impers' and Reflex is not Yes (i.e. Macedonian treebank) + # we add the Reflex=Yes feature + if node.deprel == 'expl:pv' or node.deprel == 'expl:pass' or node.deprel == 'expl:impers': + node.feats['Reflex'] = 'Yes' + + # fixing the mistake in Macedonian treebank (mk_mtb-ud-test.conllu), in sent_id=other0010, there is personal pronoun 'ми' marked as expl:pv, it should be iobj + if node.deprel == 'expl:pv' and node.lemma == 'ми' and node.feats['PronType'] == 'Prs': + node.deprel = '' + node.udeprel = 'iobj' + + # in Old Church Slavonic, there is feature Mood=Sub, but this is a notation for conditional mood + if node.feats['Mood'] == 'Sub': + node.feats['Mood'] = 'Cnd' + + # TODO maybe we want to set Tense=Fut for the perfective verbs with Tense=Pres? This could solve the problem with the simplified detection of the future tense in Czech + # but there are many verbs with no Aspect value, so the problem is still there + + + + + diff --git a/udapi/block/mwe/slavic/present.py b/udapi/block/mwe/slavic/present.py index 9ab9545d..bca03666 100644 --- a/udapi/block/mwe/slavic/present.py +++ b/udapi/block/mwe/slavic/present.py @@ -26,7 +26,7 @@ def process_node(self,node): # the condition VerbForm == 'Fin' ensures that there are no transgressives between the found verbs if node.feats['Tense'] == 'Pres' and node.upos == 'VERB' and node.feats['VerbForm'] == 'Fin': #and node.feats['Aspect']=='Imp': - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] aux_forb = [x for x in node.children if x.upos == 'AUX' and (x.lemma == 'ќе' or x.lemma == 'ще' or x.feats['Mood'] == 'Cnd')] # forbidden auxiliaries for present tense (these auxiliaries are used for the future tense or the conditional mood) @@ -81,7 +81,7 @@ def process_node(self,node): aux_forb = [x for x in node.children if x.upos == 'AUX' and x.feats['Tense'] != 'Pres'] # in Serbian this can be a future tense prep = [x for x in node.children if x.upos == 'ADP'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] if len(cop) > 0 and len(aux_forb) == 0: copVerb = cop[0] @@ -96,7 +96,7 @@ def process_node(self,node): aspect=node.feats['Aspect'], mood='Ind', form='Fin', - voice=self.wr.get_voice(node, refl), + voice=self.wr.get_voice(copVerb, refl), reflex=self.wr.get_is_reflex(node, refl), polarity=self.wr.get_polarity(copVerb,neg), ords=phrase_ords From 0a3c623d841f9fc16b38704860ebe6e362622ccb Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 13:07:27 +0200 Subject: [PATCH 199/233] =?UTF-8?q?Len=C4=8Diny=20bloky=20p=C5=99izp=C5=AF?= =?UTF-8?q?sobeny=20integraci=20do=20Udapi=20podobn=C4=9B=20jako=20u=C5=BE?= =?UTF-8?q?=20d=C5=99=C3=ADve=20slavic.Conditional.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/mwe/slavic/conditional.py | 8 ++- udapi/block/mwe/slavic/converb.py | 46 ++++++---------- udapi/block/mwe/slavic/future.py | 76 +++++++++++--------------- udapi/block/mwe/slavic/imperative.py | 48 ++++++---------- udapi/block/mwe/slavic/infinitive.py | 58 +++++++------------- udapi/block/mwe/slavic/past.py | 62 ++++++++------------- udapi/block/mwe/slavic/preprocessor.py | 7 ++- udapi/block/mwe/slavic/present.py | 49 ++++++----------- 8 files changed, 136 insertions(+), 218 deletions(-) diff --git a/udapi/block/mwe/slavic/conditional.py b/udapi/block/mwe/slavic/conditional.py index 9573d377..40f96579 100644 --- a/udapi/block/mwe/slavic/conditional.py +++ b/udapi/block/mwe/slavic/conditional.py @@ -1,6 +1,8 @@ -#!/usr/bin/env python3 - -# Conditional mood of Slavic languages +""" +Morphosyntactic features (UniDive, Lenka Krippnerová): +This block detects conditional verb forms in Slavic languages and saves their +features as Phrase* attributes in MISC of their head word. +""" import udapi.block.mwe.msfphrase diff --git a/udapi/block/mwe/slavic/converb.py b/udapi/block/mwe/slavic/converb.py index 612fbd6a..66a4131f 100644 --- a/udapi/block/mwe/slavic/converb.py +++ b/udapi/block/mwe/slavic/converb.py @@ -1,26 +1,12 @@ -#!/usr/bin/env python3 +""" +Morphosyntactic features (UniDive, Lenka Krippnerová): +This block detects converb (transgressive) forms in Slavic languages and saves their +features as Phrase* attributes in MISC of their head word. +""" -# Transgressives of Slavic languages +import udapi.block.mwe.msfphrase -from udapi.core.block import Block -import importlib -import sys - -class Slavic_transgressive(Block): - def __init__(self, writer_prefix='',**kwargs): - super().__init__(**kwargs) - if writer_prefix != '': - writer_module = ".".join([writer_prefix,'writer']) - else: - writer_module = 'writer' - try: - module = importlib.import_module(writer_module) - except ModuleNotFoundError as e: - print(e, file=sys.stderr) - print("Try to set writer_prefix parameter.", file=sys.stderr) - exit(1) - - self.wr = module.Writer() +class Converb(udapi.block.mwe.msfphrase.MsfPhrase): def process_node(self, node): # condition node.upos == 'VERB' to prevent copulas from entering this branch @@ -31,18 +17,18 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, person=node.feats['Person'], number=node.feats['Number'], form='Conv', tense=node.feats['Tense'], aspect=node.feats['Aspect'], - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'], - voice=self.wr.get_voice(node, refl) + voice=self.get_voice(node, refl) ) # passive voice @@ -55,13 +41,13 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, person=auxVerb.feats['Person'], number=auxVerb.feats['Number'], form='Conv', tense=auxVerb.feats['Tense'], aspect=node.feats['Aspect'], - polarity=self.wr.get_polarity(auxVerb,neg), + polarity=self.get_polarity(auxVerb,neg), ords=phrase_ords, gender=auxVerb.feats['Gender'], animacy=auxVerb.feats['Animacy'], @@ -82,15 +68,15 @@ def process_node(self, node): phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, person=copVerb.feats['Person'], number=copVerb.feats['Number'], tense=copVerb.feats['Tense'], gender=copVerb.feats['Gender'], animacy=copVerb.feats['Animacy'], form='Conv', - polarity=self.wr.get_polarity(node,neg), + polarity=self.get_polarity(node,neg), ords=phrase_ords, - voice=self.wr.get_voice(copVerb, refl) + voice=self.get_voice(copVerb, refl) ) diff --git a/udapi/block/mwe/slavic/future.py b/udapi/block/mwe/slavic/future.py index 12e1574c..0e53a986 100644 --- a/udapi/block/mwe/slavic/future.py +++ b/udapi/block/mwe/slavic/future.py @@ -1,26 +1,12 @@ -#!/usr/bin/env python3 +""" +Morphosyntactic features (UniDive, Lenka Krippnerová): +This block detects future tense forms in Slavic languages and saves their +features as Phrase* attributes in MISC of their head word. +""" -# Future tense of Slavic languages +import udapi.block.mwe.msfphrase -from udapi.core.block import Block -import importlib -import sys - -class Slavic_future(Block): - def __init__(self, writer_prefix='',**kwargs): - super().__init__(**kwargs) - if writer_prefix != '': - writer_module = ".".join([writer_prefix,'writer']) - else: - writer_module = 'writer' - try: - module = importlib.import_module(writer_module) - except ModuleNotFoundError as e: - print(e, file=sys.stderr) - print("Try to set writer_prefix parameter.", file=sys.stderr) - exit(1) - - self.wr = module.Writer() +class Future(udapi.block.mwe.msfphrase.MsfPhrase): def process_node(self, node): # future tense for Serbian and Croatian @@ -39,7 +25,7 @@ def process_node(self, node): #if voice == '': # voice = 'Act' if len(cop) == 0: - self.wr.write_node_info(node, + self.write_node_info(node, tense='Fut', person=aux[0].feats['Person'], number=aux[0].feats['Number'], @@ -47,8 +33,8 @@ def process_node(self, node): voice=voice, aspect=node.feats['Aspect'], # srbstina ani chorvatstina vidy nema form='Fin', - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), gender=node.feats['Gender'], animacy=node.feats['Animacy'], ords=phrase_ords @@ -58,7 +44,7 @@ def process_node(self, node): phrase_ords += [x.ord for x in prep] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, tense='Fut', person=aux[0].feats['Person'], number=aux[0].feats['Number'], @@ -66,8 +52,8 @@ def process_node(self, node): voice=voice, aspect=node.feats['Aspect'], form='Fin', - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), gender=node.feats['Gender'], animacy=node.feats['Animacy'], ords=phrase_ords @@ -85,7 +71,7 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + [x.ord for x in aux] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, tense='Fut', person=node.feats['Person'], number=node.feats['Number'], @@ -93,8 +79,8 @@ def process_node(self, node): voice=node.feats['Voice'], aspect=node.feats['Aspect'], form='Fin', - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) return @@ -110,16 +96,16 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, tense='Fut', person=node.feats['Person'], number=node.feats['Number'], mood='Ind', - voice=self.wr.get_voice(node,refl), + voice=self.get_voice(node,refl), form='Fin', aspect='Perf', - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) return""" @@ -138,16 +124,16 @@ def process_node(self, node): auxVerb = aux[0] phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in refl] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, tense='Fut', person=auxVerb.feats['Person'], number=auxVerb.feats['Number'], mood='Ind', - voice=self.wr.get_voice(node,refl), + voice=self.get_voice(node,refl), aspect=node.feats['Aspect'], form='Fin', - polarity=self.wr.get_polarity(auxVerb,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(auxVerb,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -162,16 +148,16 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, tense='Fut', person=node.feats['Person'], number=node.feats['Number'], mood='Ind', - voice=self.wr.get_voice(node,refl), # passivum se muze objevit (napr. pojede se), ale jmenny rod neni vyjadren + voice=self.get_voice(node,refl), # passivum se muze objevit (napr. pojede se), ale jmenny rod neni vyjadren aspect=node.feats['Aspect'], form='Fin', - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) return @@ -188,14 +174,14 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in aux] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, tense='Fut', person=copVerb.feats['Person'], number=copVerb.feats['Number'], mood='Ind', form='Fin', - voice=self.wr.get_voice(copVerb, refl), - polarity=self.wr.get_polarity(copVerb,neg), + voice=self.get_voice(copVerb, refl), + polarity=self.get_polarity(copVerb,neg), ords=phrase_ords ) diff --git a/udapi/block/mwe/slavic/imperative.py b/udapi/block/mwe/slavic/imperative.py index cbb521ac..edfed5d9 100644 --- a/udapi/block/mwe/slavic/imperative.py +++ b/udapi/block/mwe/slavic/imperative.py @@ -1,26 +1,12 @@ -#!/usr/bin/env python3 +""" +Morphosyntactic features (UniDive, Lenka Krippnerová): +This block detects imperative verb forms in Slavic languages and saves their +features as Phrase* attributes in MISC of their head word. +""" -# Imperative of Slavic languages +import udapi.block.mwe.msfphrase -from udapi.core.block import Block -import importlib -import sys - -class Slavic_imperative(Block): - def __init__(self, writer_prefix='',**kwargs): - super().__init__(**kwargs) - if writer_prefix != '': - writer_module = ".".join([writer_prefix,'writer']) - else: - writer_module = 'writer' - try: - module = importlib.import_module(writer_module) - except ModuleNotFoundError as e: - print(e, file=sys.stderr) - print("Try to set writer_prefix parameter.", file=sys.stderr) - exit(1) - - self.wr = module.Writer() +class Imperative(udapi.block.mwe.msfphrase.MsfPhrase): def process_node(self, node): # the condition node.upos == 'VERB' ensures that copulas do not enter this branch @@ -31,15 +17,15 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, person=node.feats['Person'], number=node.feats['Number'], aspect=node.feats['Aspect'], mood='Imp', form='Fin', voice='Act', - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) return @@ -53,14 +39,14 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, person=aux[0].feats['Person'], number=aux[0].feats['Number'], mood='Imp', voice='Pass', aspect=node.feats['Aspect'], form='Fin', - polarity=self.wr.get_polarity(node,neg), + polarity=self.get_polarity(node,neg), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -78,16 +64,14 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, person=copVerb.feats['Person'], number=copVerb.feats['Number'], mood='Imp', form='Fin', - voice=self.wr.get_voice(copVerb, refl), - reflex=self.wr.get_is_reflex(node, refl), - polarity=self.wr.get_polarity(node,neg), + voice=self.get_voice(copVerb, refl), + reflex=self.get_is_reflex(node, refl), + polarity=self.get_polarity(node,neg), ords=phrase_ords ) - - diff --git a/udapi/block/mwe/slavic/infinitive.py b/udapi/block/mwe/slavic/infinitive.py index 7932e8e8..96aa241b 100644 --- a/udapi/block/mwe/slavic/infinitive.py +++ b/udapi/block/mwe/slavic/infinitive.py @@ -1,26 +1,12 @@ -#!/usr/bin/env python3 +""" +Morphosyntactic features (UniDive, Lenka Krippnerová): +This block detects infinitive verb forms in Slavic languages and saves their +features as Phrase* attributes in MISC of their head word. +""" -# Infinitive of Slavic languages +import udapi.block.mwe.msfphrase -from udapi.core.block import Block -import importlib -import sys - -class Slavic_inf(Block): - def __init__(self, writer_prefix='',**kwargs): - super().__init__(**kwargs) - if writer_prefix != '': - writer_module = ".".join([writer_prefix,'writer']) - else: - writer_module = 'writer' - try: - module = importlib.import_module(writer_module) - except ModuleNotFoundError as e: - print(e, file=sys.stderr) - print("Try to set writer_prefix parameter.", file=sys.stderr) - exit(1) - - self.wr = module.Writer() +class Infinitive(udapi.block.mwe.msfphrase.MsfPhrase): def process_node(self,node): if node.feats['VerbForm'] == 'Inf' and node.upos == 'VERB': @@ -33,15 +19,15 @@ def process_node(self,node): phrase_ords.sort() voice='Act' - if self.wr.is_expl_pass(refl): + if self.is_expl_pass(refl): voice='Pass' - self.wr.write_node_info(node, + self.write_node_info(node, aspect=node.feats['Aspect'], voice=voice, form='Inf', - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) return @@ -56,12 +42,12 @@ def process_node(self,node): phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] + [x.ord for x in refl] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, aspect=node.feats['Aspect'], voice='Pass', form='Inf', - polarity=self.wr.get_polarity(aux[0],neg), - reflex=self.wr.get_is_reflex(node, refl), + polarity=self.get_polarity(aux[0],neg), + reflex=self.get_is_reflex(node, refl), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'], @@ -80,11 +66,11 @@ def process_node(self,node): phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] phrase_ords.sort() - self.wr.write_node_info(node, - voice=self.wr.get_voice(cop[0], refl), + self.write_node_info(node, + voice=self.get_voice(cop[0], refl), form='Inf', - polarity=self.wr.get_polarity(cop[0],neg), - reflex=self.wr.get_is_reflex(node, refl), + polarity=self.get_polarity(cop[0],neg), + reflex=self.get_is_reflex(node, refl), ords=phrase_ords ) @@ -96,13 +82,11 @@ def process_node(self,node): phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, aspect=node.feats['Aspect'], voice='Act', form='Sup', - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node, refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node, refl), ords=phrase_ords ) - - diff --git a/udapi/block/mwe/slavic/past.py b/udapi/block/mwe/slavic/past.py index 3f341f5b..3e2b8d7e 100644 --- a/udapi/block/mwe/slavic/past.py +++ b/udapi/block/mwe/slavic/past.py @@ -1,26 +1,12 @@ -#!/usr/bin/env python3 +""" +Morphosyntactic features (UniDive, Lenka Krippnerová): +This block detects past tense forms in Slavic languages and saves their +features as Phrase* attributes in MISC of their head word. +""" -# Past tense of Slavic languages +import udapi.block.mwe.msfphrase -from udapi.core.block import Block -import importlib -import sys - -class Slavic_past(Block): - def __init__(self, writer_prefix='',**kwargs): - super().__init__(**kwargs) - if writer_prefix != '': - writer_module = ".".join([writer_prefix,'writer']) - else: - writer_module = 'writer' - try: - module = importlib.import_module(writer_module) - except ModuleNotFoundError as e: - print(e, file=sys.stderr) - print("Try to set writer_prefix parameter.", file=sys.stderr) - exit(1) - - self.wr = module.Writer() +class Past(udapi.block.mwe.msfphrase.MsfPhrase): def get_person_for_langs_with_simple_past(self, node, person): """ @@ -48,7 +34,7 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, tense=node.feats['Tense'], person=node.feats['Person'], number=node.feats['Number'], @@ -56,8 +42,8 @@ def process_node(self, node): voice='Pass', aspect=node.feats['Aspect'], form=node.feats['VerbForm'], - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -92,16 +78,16 @@ def process_node(self, node): if node.feats['Tense'] == 'Pqp': tense = 'Pqp' - self.wr.write_node_info(node, + self.write_node_info(node, tense=tense, person=person, number=node.feats['Number'], mood='Ind', - voice=self.wr.get_voice(node,refl), + voice=self.get_voice(node,refl), aspect=node.feats['Aspect'], form='Fin', - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -123,16 +109,16 @@ def process_node(self, node): phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, tense=node.feats['Tense'], person=node.feats['Person'], number=node.feats['Number'], mood='Ind', - voice=self.wr.get_voice(node,refl), + voice=self.get_voice(node,refl), aspect=node.feats['Aspect'], form=node.feats['VerbForm'], - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -156,7 +142,7 @@ def process_node(self, node): person = aux_pres_tense[0].feats['Person'] person = self.get_person_for_langs_with_simple_past(node, person) - self.wr.write_node_info(node, + self.write_node_info(node, tense=aux_past_tense[0].feats['Tense'], person=person, number=aux_past_tense[0].feats['Number'], @@ -164,7 +150,7 @@ def process_node(self, node): voice='Pass', form='Fin', aspect=node.feats['Aspect'], - polarity=self.wr.get_polarity(aux_past_tense[0],neg), + polarity=self.get_polarity(aux_past_tense[0],neg), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -189,16 +175,16 @@ def process_node(self, node): if cop[0].feats['VerbForm'] == 'Fin': person = '' - self.wr.write_node_info(node, + self.write_node_info(node, aspect=cop[0].feats['Aspect'], tense=cop[0].feats['Tense'], person=person, number=cop[0].feats['Number'], mood='Ind', - voice=self.wr.get_voice(cop[0], refl), + voice=self.get_voice(cop[0], refl), form='Fin', - reflex=self.wr.get_is_reflex(node,refl), - polarity=self.wr.get_polarity(cop[0],neg), + reflex=self.get_is_reflex(node,refl), + polarity=self.get_polarity(cop[0],neg), ords=phrase_ords, gender=cop[0].feats['Gender'], animacy=cop[0].feats['Animacy'] diff --git a/udapi/block/mwe/slavic/preprocessor.py b/udapi/block/mwe/slavic/preprocessor.py index c6a2dcbe..833f3de0 100644 --- a/udapi/block/mwe/slavic/preprocessor.py +++ b/udapi/block/mwe/slavic/preprocessor.py @@ -1,4 +1,9 @@ -#!/usr/bin/env python3 +""" +Morphosyntactic features (UniDive, Lenka Krippnerová): +This block serves as a preprocessor for Slavic languages before the other blocks +are applied to detect periphrastic verb forms. It improves harmonization of +annotations across the treebanks by addressing some known divergences. +""" from udapi.core.block import Block diff --git a/udapi/block/mwe/slavic/present.py b/udapi/block/mwe/slavic/present.py index bca03666..7b83aede 100644 --- a/udapi/block/mwe/slavic/present.py +++ b/udapi/block/mwe/slavic/present.py @@ -1,26 +1,12 @@ -#!/usr/bin/env python3 +""" +Morphosyntactic features (UniDive, Lenka Krippnerová): +This block detects present tense forms in Slavic languages and saves their +features as Phrase* attributes in MISC of their head word. +""" -# Present tense of Slavic languages +import udapi.block.mwe.msfphrase -from udapi.core.block import Block -import importlib -import sys - -class Slavic_pres(Block): - def __init__(self, writer_prefix='',**kwargs): - super().__init__(**kwargs) - if writer_prefix != '': - writer_module = ".".join([writer_prefix,'writer']) - else: - writer_module = 'writer' - try: - module = importlib.import_module(writer_module) - except ModuleNotFoundError as e: - print(e, file=sys.stderr) - print("Try to set writer_prefix parameter.", file=sys.stderr) - exit(1) - - self.wr = module.Writer() +class Present(udapi.block.mwe.msfphrase.MsfPhrase): def process_node(self,node): # the condition VerbForm == 'Fin' ensures that there are no transgressives between the found verbs @@ -34,16 +20,16 @@ def process_node(self,node): phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, tense='Pres', person=node.feats['Person'], number=node.feats['Number'], mood='Ind', aspect=node.feats['Aspect'], - voice=self.wr.get_voice(node,refl), + voice=self.get_voice(node,refl), form='Fin', - polarity=self.wr.get_polarity(node,neg), - reflex=self.wr.get_is_reflex(node,refl), + polarity=self.get_polarity(node,neg), + reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) return @@ -61,7 +47,7 @@ def process_node(self,node): if len(aux) > 0 and len(aux_forb) == 0: auxVerb = aux[0] - self.wr.write_node_info(node, + self.write_node_info(node, tense='Pres', person=auxVerb.feats['Person'], number=auxVerb.feats['Number'], @@ -69,7 +55,7 @@ def process_node(self,node): aspect=node.feats['Aspect'], form='Fin', voice='Pass', - polarity=self.wr.get_polarity(auxVerb,neg), + polarity=self.get_polarity(auxVerb,neg), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -89,16 +75,15 @@ def process_node(self,node): phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in aux] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] phrase_ords.sort() - self.wr.write_node_info(node, + self.write_node_info(node, tense='Pres', person=copVerb.feats['Person'], number=copVerb.feats['Number'], aspect=node.feats['Aspect'], mood='Ind', form='Fin', - voice=self.wr.get_voice(copVerb, refl), - reflex=self.wr.get_is_reflex(node, refl), - polarity=self.wr.get_polarity(copVerb,neg), + voice=self.get_voice(copVerb, refl), + reflex=self.get_is_reflex(node, refl), + polarity=self.get_polarity(copVerb,neg), ords=phrase_ords ) - From 2ecb4e1acbbb54020894193d59dc8462faaf1a6a Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 13:10:34 +0200 Subject: [PATCH 200/233] Reorganized: mwe and msf are quite different projects and sets of blocks. --- udapi/block/{mwe => msf}/msfcase.py | 0 udapi/block/{mwe => msf}/msfcreateabstract.py | 0 udapi/block/{mwe => msf}/msfinit.py | 0 udapi/block/{mwe => msf}/msfnumphrase.py | 0 udapi/block/{mwe => msf}/msfphrase.py | 0 udapi/block/{mwe => msf}/msfremovefunc.py | 0 .../block/{mwe => msf}/slavic/conditional.py | 0 udapi/block/{mwe => msf}/slavic/converb.py | 0 udapi/block/{mwe => msf}/slavic/future.py | 0 udapi/block/{mwe => msf}/slavic/imperative.py | 0 udapi/block/{mwe => msf}/slavic/infinitive.py | 0 udapi/block/{mwe => msf}/slavic/past.py | 0 .../block/{mwe => msf}/slavic/preprocessor.py | 0 udapi/block/{mwe => msf}/slavic/present.py | 0 udapi/block/mwe/preprocessor.py | 46 ------------------- 15 files changed, 46 deletions(-) rename udapi/block/{mwe => msf}/msfcase.py (100%) rename udapi/block/{mwe => msf}/msfcreateabstract.py (100%) rename udapi/block/{mwe => msf}/msfinit.py (100%) rename udapi/block/{mwe => msf}/msfnumphrase.py (100%) rename udapi/block/{mwe => msf}/msfphrase.py (100%) rename udapi/block/{mwe => msf}/msfremovefunc.py (100%) rename udapi/block/{mwe => msf}/slavic/conditional.py (100%) rename udapi/block/{mwe => msf}/slavic/converb.py (100%) rename udapi/block/{mwe => msf}/slavic/future.py (100%) rename udapi/block/{mwe => msf}/slavic/imperative.py (100%) rename udapi/block/{mwe => msf}/slavic/infinitive.py (100%) rename udapi/block/{mwe => msf}/slavic/past.py (100%) rename udapi/block/{mwe => msf}/slavic/preprocessor.py (100%) rename udapi/block/{mwe => msf}/slavic/present.py (100%) delete mode 100644 udapi/block/mwe/preprocessor.py diff --git a/udapi/block/mwe/msfcase.py b/udapi/block/msf/msfcase.py similarity index 100% rename from udapi/block/mwe/msfcase.py rename to udapi/block/msf/msfcase.py diff --git a/udapi/block/mwe/msfcreateabstract.py b/udapi/block/msf/msfcreateabstract.py similarity index 100% rename from udapi/block/mwe/msfcreateabstract.py rename to udapi/block/msf/msfcreateabstract.py diff --git a/udapi/block/mwe/msfinit.py b/udapi/block/msf/msfinit.py similarity index 100% rename from udapi/block/mwe/msfinit.py rename to udapi/block/msf/msfinit.py diff --git a/udapi/block/mwe/msfnumphrase.py b/udapi/block/msf/msfnumphrase.py similarity index 100% rename from udapi/block/mwe/msfnumphrase.py rename to udapi/block/msf/msfnumphrase.py diff --git a/udapi/block/mwe/msfphrase.py b/udapi/block/msf/msfphrase.py similarity index 100% rename from udapi/block/mwe/msfphrase.py rename to udapi/block/msf/msfphrase.py diff --git a/udapi/block/mwe/msfremovefunc.py b/udapi/block/msf/msfremovefunc.py similarity index 100% rename from udapi/block/mwe/msfremovefunc.py rename to udapi/block/msf/msfremovefunc.py diff --git a/udapi/block/mwe/slavic/conditional.py b/udapi/block/msf/slavic/conditional.py similarity index 100% rename from udapi/block/mwe/slavic/conditional.py rename to udapi/block/msf/slavic/conditional.py diff --git a/udapi/block/mwe/slavic/converb.py b/udapi/block/msf/slavic/converb.py similarity index 100% rename from udapi/block/mwe/slavic/converb.py rename to udapi/block/msf/slavic/converb.py diff --git a/udapi/block/mwe/slavic/future.py b/udapi/block/msf/slavic/future.py similarity index 100% rename from udapi/block/mwe/slavic/future.py rename to udapi/block/msf/slavic/future.py diff --git a/udapi/block/mwe/slavic/imperative.py b/udapi/block/msf/slavic/imperative.py similarity index 100% rename from udapi/block/mwe/slavic/imperative.py rename to udapi/block/msf/slavic/imperative.py diff --git a/udapi/block/mwe/slavic/infinitive.py b/udapi/block/msf/slavic/infinitive.py similarity index 100% rename from udapi/block/mwe/slavic/infinitive.py rename to udapi/block/msf/slavic/infinitive.py diff --git a/udapi/block/mwe/slavic/past.py b/udapi/block/msf/slavic/past.py similarity index 100% rename from udapi/block/mwe/slavic/past.py rename to udapi/block/msf/slavic/past.py diff --git a/udapi/block/mwe/slavic/preprocessor.py b/udapi/block/msf/slavic/preprocessor.py similarity index 100% rename from udapi/block/mwe/slavic/preprocessor.py rename to udapi/block/msf/slavic/preprocessor.py diff --git a/udapi/block/mwe/slavic/present.py b/udapi/block/msf/slavic/present.py similarity index 100% rename from udapi/block/mwe/slavic/present.py rename to udapi/block/msf/slavic/present.py diff --git a/udapi/block/mwe/preprocessor.py b/udapi/block/mwe/preprocessor.py deleted file mode 100644 index 1ac8a6f1..00000000 --- a/udapi/block/mwe/preprocessor.py +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env python3 - -from udapi.core.block import Block - -class Preprocessor(Block): - - def process_node(self,node): - - # in Belarusian, some adjectives formed from verbs are marked as verbs - # if the verb has case, then it is an adjective - if node.upos == 'VERB' and node.feats['Case'] != '': - node.upos = 'ADJ' - - # in Polish, the conditional mood for auxiliary verbs is marked as deprel == 'aux:cnd' and not as in the last Slavic languages ​​feats['Mood'] == 'Cnd' - if node.deprel == 'aux:cnd': - node.feats['Mood'] = 'Cnd' - - # sjednotit cas u dokonavych sloves vyjadrujici budoucnost - # chceme pritomny, nebo budouci? - s budoucim by se asi zjednodusilo dost veci - # jak ale poznat, ktery cas prepsat a ktery ne? - problem s makedonstinou - - # sjednotit passivum, rozhodnout, zda ma byt plnovyznamove sloveso znaceno jako ADJ, nebo VERB - - # unify polarities - some languages ​​mark only Neg (Russian), some mark both Neg and Pos (Czech) - if node.feats['Polarity'] == 'Pos': - node.feats['Polarity'] = '' - - # makedonstina tvori budouci cas pomoci pomocneho slova ќе, u nejz neni nijak vyznaceno, ze se podili na tvorbe budouciho casu - # stejne tak bulharstina pomoci pomocneho slova ще - # makedonstina a bulharstina - if node.feats['Tense'] == 'Pres': - aux = [x for x in node.children if x.lemma == 'ќе' or x.lemma == 'ще'] - if len(aux) == 1: - aux[0].feats['Tense'] = 'Fut' - - # in Czech and in Old Church Slavonic, the participle is marked with the plural gender - if node.feats['Gender'] == 'Fem,Neut' or node.feats['Gender'] == 'Fem,Masc': - subj = [x for x in node.children if x.udeprel == 'nsubj'] - - # for relative pronouns, only one gender is indicated - if len(subj) == 1: - conj = [x for x in subj[0].children if x.deprel == 'conj'] - if len(conj) == 0: - node.feats['Gender'] = subj[0].feats['Gender'] - node.feats['Number'] = subj[0].feats['Number'] - From 6e35bc6938f05e254a74a1fdeeb7b804c9653d8f Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 13:19:28 +0200 Subject: [PATCH 201/233] Fixed paths. --- udapi/block/msf/slavic/conditional.py | 4 ++-- udapi/block/msf/slavic/converb.py | 4 ++-- udapi/block/msf/slavic/future.py | 4 ++-- udapi/block/msf/slavic/imperative.py | 4 ++-- udapi/block/msf/slavic/infinitive.py | 4 ++-- udapi/block/msf/slavic/past.py | 4 ++-- udapi/block/msf/slavic/present.py | 4 ++-- 7 files changed, 14 insertions(+), 14 deletions(-) diff --git a/udapi/block/msf/slavic/conditional.py b/udapi/block/msf/slavic/conditional.py index 40f96579..b6918111 100644 --- a/udapi/block/msf/slavic/conditional.py +++ b/udapi/block/msf/slavic/conditional.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.mwe.msfphrase +import udapi.block.msf.msfphrase -class Conditional(udapi.block.mwe.msfphrase.MsfPhrase): +class Conditional(udapi.block.msf.msfphrase.MsfPhrase): def process_node(self, node): if (node.feats['VerbForm'] == 'Part' or node.feats['VerbForm'] == 'PartRes') or node.feats['VerbForm'] == 'Fin': diff --git a/udapi/block/msf/slavic/converb.py b/udapi/block/msf/slavic/converb.py index 66a4131f..e63bbadd 100644 --- a/udapi/block/msf/slavic/converb.py +++ b/udapi/block/msf/slavic/converb.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.mwe.msfphrase +import udapi.block.msf.msfphrase -class Converb(udapi.block.mwe.msfphrase.MsfPhrase): +class Converb(udapi.block.msf.msfphrase.MsfPhrase): def process_node(self, node): # condition node.upos == 'VERB' to prevent copulas from entering this branch diff --git a/udapi/block/msf/slavic/future.py b/udapi/block/msf/slavic/future.py index 0e53a986..5a64f76c 100644 --- a/udapi/block/msf/slavic/future.py +++ b/udapi/block/msf/slavic/future.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.mwe.msfphrase +import udapi.block.msf.msfphrase -class Future(udapi.block.mwe.msfphrase.MsfPhrase): +class Future(udapi.block.msf.msfphrase.MsfPhrase): def process_node(self, node): # future tense for Serbian and Croatian diff --git a/udapi/block/msf/slavic/imperative.py b/udapi/block/msf/slavic/imperative.py index edfed5d9..ef819f08 100644 --- a/udapi/block/msf/slavic/imperative.py +++ b/udapi/block/msf/slavic/imperative.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.mwe.msfphrase +import udapi.block.msf.msfphrase -class Imperative(udapi.block.mwe.msfphrase.MsfPhrase): +class Imperative(udapi.block.msf.msfphrase.MsfPhrase): def process_node(self, node): # the condition node.upos == 'VERB' ensures that copulas do not enter this branch diff --git a/udapi/block/msf/slavic/infinitive.py b/udapi/block/msf/slavic/infinitive.py index 96aa241b..e0b8f7d5 100644 --- a/udapi/block/msf/slavic/infinitive.py +++ b/udapi/block/msf/slavic/infinitive.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.mwe.msfphrase +import udapi.block.msf.msfphrase -class Infinitive(udapi.block.mwe.msfphrase.MsfPhrase): +class Infinitive(udapi.block.msf.msfphrase.MsfPhrase): def process_node(self,node): if node.feats['VerbForm'] == 'Inf' and node.upos == 'VERB': diff --git a/udapi/block/msf/slavic/past.py b/udapi/block/msf/slavic/past.py index 3e2b8d7e..00f2836e 100644 --- a/udapi/block/msf/slavic/past.py +++ b/udapi/block/msf/slavic/past.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.mwe.msfphrase +import udapi.block.msf.msfphrase -class Past(udapi.block.mwe.msfphrase.MsfPhrase): +class Past(udapi.block.msf.msfphrase.MsfPhrase): def get_person_for_langs_with_simple_past(self, node, person): """ diff --git a/udapi/block/msf/slavic/present.py b/udapi/block/msf/slavic/present.py index 7b83aede..9de546aa 100644 --- a/udapi/block/msf/slavic/present.py +++ b/udapi/block/msf/slavic/present.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.mwe.msfphrase +import udapi.block.msf.msfphrase -class Present(udapi.block.mwe.msfphrase.MsfPhrase): +class Present(udapi.block.msf.msfphrase.MsfPhrase): def process_node(self,node): # the condition VerbForm == 'Fin' ensures that there are no transgressives between the found verbs From b715ced7ee1f3ee6678dd0b9edfa4088bf4249ff Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 13:50:41 +0200 Subject: [PATCH 202/233] Simplified block names. --- udapi/block/msf/{msfphrase.py => phrase.py} | 2 +- udapi/block/msf/slavic/conditional.py | 4 ++-- udapi/block/msf/slavic/converb.py | 4 ++-- udapi/block/msf/slavic/future.py | 4 ++-- udapi/block/msf/slavic/imperative.py | 4 ++-- udapi/block/msf/slavic/infinitive.py | 4 ++-- udapi/block/msf/slavic/past.py | 4 ++-- udapi/block/msf/slavic/present.py | 4 ++-- 8 files changed, 15 insertions(+), 15 deletions(-) rename udapi/block/msf/{msfphrase.py => phrase.py} (98%) diff --git a/udapi/block/msf/msfphrase.py b/udapi/block/msf/phrase.py similarity index 98% rename from udapi/block/msf/msfphrase.py rename to udapi/block/msf/phrase.py index 566663df..6c5c587a 100644 --- a/udapi/block/msf/msfphrase.py +++ b/udapi/block/msf/phrase.py @@ -8,7 +8,7 @@ from udapi.core.block import Block import logging -class MsfPhrase(Block): +class Phrase(Block): def process_node(self, node): """ diff --git a/udapi/block/msf/slavic/conditional.py b/udapi/block/msf/slavic/conditional.py index b6918111..f5206519 100644 --- a/udapi/block/msf/slavic/conditional.py +++ b/udapi/block/msf/slavic/conditional.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.msf.msfphrase +import udapi.block.msf.phrase -class Conditional(udapi.block.msf.msfphrase.MsfPhrase): +class Conditional(udapi.block.msf.phrase.Phrase): def process_node(self, node): if (node.feats['VerbForm'] == 'Part' or node.feats['VerbForm'] == 'PartRes') or node.feats['VerbForm'] == 'Fin': diff --git a/udapi/block/msf/slavic/converb.py b/udapi/block/msf/slavic/converb.py index e63bbadd..df778d60 100644 --- a/udapi/block/msf/slavic/converb.py +++ b/udapi/block/msf/slavic/converb.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.msf.msfphrase +import udapi.block.msf.phrase -class Converb(udapi.block.msf.msfphrase.MsfPhrase): +class Converb(udapi.block.msf.phrase.Phrase): def process_node(self, node): # condition node.upos == 'VERB' to prevent copulas from entering this branch diff --git a/udapi/block/msf/slavic/future.py b/udapi/block/msf/slavic/future.py index 5a64f76c..a4392fe2 100644 --- a/udapi/block/msf/slavic/future.py +++ b/udapi/block/msf/slavic/future.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.msf.msfphrase +import udapi.block.msf.phrase -class Future(udapi.block.msf.msfphrase.MsfPhrase): +class Future(udapi.block.msf.phrase.Phrase): def process_node(self, node): # future tense for Serbian and Croatian diff --git a/udapi/block/msf/slavic/imperative.py b/udapi/block/msf/slavic/imperative.py index ef819f08..137eb851 100644 --- a/udapi/block/msf/slavic/imperative.py +++ b/udapi/block/msf/slavic/imperative.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.msf.msfphrase +import udapi.block.msf.phrase -class Imperative(udapi.block.msf.msfphrase.MsfPhrase): +class Imperative(udapi.block.msf.phrase.Phrase): def process_node(self, node): # the condition node.upos == 'VERB' ensures that copulas do not enter this branch diff --git a/udapi/block/msf/slavic/infinitive.py b/udapi/block/msf/slavic/infinitive.py index e0b8f7d5..775b21bd 100644 --- a/udapi/block/msf/slavic/infinitive.py +++ b/udapi/block/msf/slavic/infinitive.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.msf.msfphrase +import udapi.block.msf.phrase -class Infinitive(udapi.block.msf.msfphrase.MsfPhrase): +class Infinitive(udapi.block.msf.phrase.Phrase): def process_node(self,node): if node.feats['VerbForm'] == 'Inf' and node.upos == 'VERB': diff --git a/udapi/block/msf/slavic/past.py b/udapi/block/msf/slavic/past.py index 00f2836e..34dcd354 100644 --- a/udapi/block/msf/slavic/past.py +++ b/udapi/block/msf/slavic/past.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.msf.msfphrase +import udapi.block.msf.phrase -class Past(udapi.block.msf.msfphrase.MsfPhrase): +class Past(udapi.block.msf.phrase.Phrase): def get_person_for_langs_with_simple_past(self, node, person): """ diff --git a/udapi/block/msf/slavic/present.py b/udapi/block/msf/slavic/present.py index 9de546aa..ce6b40c4 100644 --- a/udapi/block/msf/slavic/present.py +++ b/udapi/block/msf/slavic/present.py @@ -4,9 +4,9 @@ features as Phrase* attributes in MISC of their head word. """ -import udapi.block.msf.msfphrase +import udapi.block.msf.phrase -class Present(udapi.block.msf.msfphrase.MsfPhrase): +class Present(udapi.block.msf.phrase.Phrase): def process_node(self,node): # the condition VerbForm == 'Fin' ensures that there are no transgressives between the found verbs From 572cd4a978c9a3a237c60e184db51993bf8b12c2 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 15 Apr 2025 13:56:21 +0200 Subject: [PATCH 203/233] Simplified block names. --- udapi/block/msf/{msfcase.py => case.py} | 2 +- udapi/block/msf/{msfcreateabstract.py => createabstract.py} | 2 +- udapi/block/msf/{msfinit.py => init.py} | 2 +- udapi/block/msf/{msfnumphrase.py => numphrase.py} | 2 +- udapi/block/msf/{msfremovefunc.py => removefunc.py} | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) rename udapi/block/msf/{msfcase.py => case.py} (99%) rename udapi/block/msf/{msfcreateabstract.py => createabstract.py} (98%) rename udapi/block/msf/{msfinit.py => init.py} (99%) rename udapi/block/msf/{msfnumphrase.py => numphrase.py} (98%) rename udapi/block/msf/{msfremovefunc.py => removefunc.py} (94%) diff --git a/udapi/block/msf/msfcase.py b/udapi/block/msf/case.py similarity index 99% rename from udapi/block/msf/msfcase.py rename to udapi/block/msf/case.py index f5516d0b..7d362c7f 100644 --- a/udapi/block/msf/msfcase.py +++ b/udapi/block/msf/case.py @@ -5,7 +5,7 @@ from udapi.core.block import Block import logging -class MsfCase(Block): +class Case(Block): adposmap = { 'v+Loc': 'Ine', diff --git a/udapi/block/msf/msfcreateabstract.py b/udapi/block/msf/createabstract.py similarity index 98% rename from udapi/block/msf/msfcreateabstract.py rename to udapi/block/msf/createabstract.py index 9a1c774a..fbdf73e5 100644 --- a/udapi/block/msf/msfcreateabstract.py +++ b/udapi/block/msf/createabstract.py @@ -7,7 +7,7 @@ from udapi.core.block import Block import re -class MsfCreateAbstract(Block): +class CreateAbstract(Block): def process_node(self, node): """ diff --git a/udapi/block/msf/msfinit.py b/udapi/block/msf/init.py similarity index 99% rename from udapi/block/msf/msfinit.py rename to udapi/block/msf/init.py index da83c19a..ceca12af 100644 --- a/udapi/block/msf/msfinit.py +++ b/udapi/block/msf/init.py @@ -5,7 +5,7 @@ from udapi.core.block import Block import re -class MsfInit(Block): +class Init(Block): def process_node(self, node): diff --git a/udapi/block/msf/msfnumphrase.py b/udapi/block/msf/numphrase.py similarity index 98% rename from udapi/block/msf/msfnumphrase.py rename to udapi/block/msf/numphrase.py index ebcc0850..22f68c9d 100644 --- a/udapi/block/msf/msfnumphrase.py +++ b/udapi/block/msf/numphrase.py @@ -4,7 +4,7 @@ """ from udapi.core.block import Block -class MsfNumPhrase(Block): +class NumPhrase(Block): def process_node(self, node): diff --git a/udapi/block/msf/msfremovefunc.py b/udapi/block/msf/removefunc.py similarity index 94% rename from udapi/block/msf/msfremovefunc.py rename to udapi/block/msf/removefunc.py index ce974285..e169a2de 100644 --- a/udapi/block/msf/msfremovefunc.py +++ b/udapi/block/msf/removefunc.py @@ -4,7 +4,7 @@ """ from udapi.core.block import Block -class MsfRemoveFunc(Block): +class RemoveFunc(Block): def process_node(self, node): From 9b9861562c74dc6596dad05029af230204ad48ee Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 22 Apr 2025 10:31:54 +0200 Subject: [PATCH 204/233] Updated Slavic preprocessor. --- udapi/block/msf/slavic/preprocessor.py | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/udapi/block/msf/slavic/preprocessor.py b/udapi/block/msf/slavic/preprocessor.py index 833f3de0..5d090a2c 100644 --- a/udapi/block/msf/slavic/preprocessor.py +++ b/udapi/block/msf/slavic/preprocessor.py @@ -8,16 +8,16 @@ from udapi.core.block import Block class Preprocessor(Block): - + def process_node(self,node): # in Ukrainian the active verb forms are not marked as PhraseVoice=Act if (node.upos == 'VERB' or (node.upos == 'AUX' and node.feats['VerbForm'] == 'Fin')) and node.feats['Voice'] == '': node.feats['Voice'] = 'Act' - # in Belarusian, some adjectives formed from verbs are marked as verbs - # if the verb has case, then it is an adjective - if node.upos == 'VERB' and node.feats['Case'] != '': + # in some languages, participles are annotated with UPOS=VERB, while in others they are annotated with UPOS=ADJ + # we change the UPOS to ADJ when a participle expresses case + if node.upos == 'VERB' and node.feats['VerbForm'] == 'Part' and node.feats['Case'] != '': node.upos = 'ADJ' # in Polish, the conditional mood for auxiliary verbs is marked as deprel == 'aux:cnd' and not as in the last Slavic languages ​​feats['Mood'] == 'Cnd' @@ -27,6 +27,13 @@ def process_node(self,node): # unify polarities - some languages ​​mark only Neg (Russian), some mark both Neg and Pos (Czech) if node.feats['Polarity'] == 'Pos': node.feats['Polarity'] = '' + + # In Ukrainian, there is no explicit annotation of reflexive verbs + # We decided to unify the annotation of reflexive verbs with Russian and Belarusian, where reflexive verbs are formed similarly + # We add the feature Voice=Mid to reflexive verbs + # This feature is added only to Ukrainian data (for example, there are some verbs in Old Church Slavonic that end in 'сь' but are not reflexive) + if node.upos == 'VERB' and (node.form.endswith('сь') or node.form.endswith('ся')) and self.lang == 'uk': + node.feats['Voice'] = 'Mid' # makedonstina tvori budouci cas pomoci pomocneho slova ќе, u nejz neni nijak vyznaceno, ze se podili na tvorbe budouciho casu # stejne tak bulharstina pomoci pomocneho slova ще @@ -67,8 +74,3 @@ def process_node(self,node): # TODO maybe we want to set Tense=Fut for the perfective verbs with Tense=Pres? This could solve the problem with the simplified detection of the future tense in Czech # but there are many verbs with no Aspect value, so the problem is still there - - - - - From 27dd0171fd59d7a9f6f7aa28d6e22121f014bdb7 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 22 Apr 2025 10:43:37 +0200 Subject: [PATCH 205/233] Updated Slavic converb. --- udapi/block/msf/slavic/converb.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/block/msf/slavic/converb.py b/udapi/block/msf/slavic/converb.py index df778d60..e517a5c8 100644 --- a/udapi/block/msf/slavic/converb.py +++ b/udapi/block/msf/slavic/converb.py @@ -7,7 +7,7 @@ import udapi.block.msf.phrase class Converb(udapi.block.msf.phrase.Phrase): - + def process_node(self, node): # condition node.upos == 'VERB' to prevent copulas from entering this branch if node.feats['VerbForm'] == 'Conv' and node.upos == 'VERB': @@ -69,6 +69,7 @@ def process_node(self, node): self.write_node_info(node, + aspect=copVerb.feats['Aspect'], person=copVerb.feats['Person'], number=copVerb.feats['Number'], tense=copVerb.feats['Tense'], @@ -79,4 +80,3 @@ def process_node(self, node): ords=phrase_ords, voice=self.get_voice(copVerb, refl) ) - From 6837d8963d2253d85afe0a2b2c64e394ee7950f6 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 22 Apr 2025 10:49:46 +0200 Subject: [PATCH 206/233] Updated Slavic future tense. --- udapi/block/msf/slavic/future.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/msf/slavic/future.py b/udapi/block/msf/slavic/future.py index a4392fe2..2d48f86c 100644 --- a/udapi/block/msf/slavic/future.py +++ b/udapi/block/msf/slavic/future.py @@ -175,6 +175,7 @@ def process_node(self, node): phrase_ords.sort() self.write_node_info(node, + aspect=copVerb.feats['Aspect'], tense='Fut', person=copVerb.feats['Person'], number=copVerb.feats['Number'], From 8213f541ee675fdbdb46b84e60c8965d99954097 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 22 Apr 2025 10:58:48 +0200 Subject: [PATCH 207/233] Updated Slavic imperative. --- udapi/block/msf/slavic/imperative.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udapi/block/msf/slavic/imperative.py b/udapi/block/msf/slavic/imperative.py index 137eb851..209406e9 100644 --- a/udapi/block/msf/slavic/imperative.py +++ b/udapi/block/msf/slavic/imperative.py @@ -7,7 +7,7 @@ import udapi.block.msf.phrase class Imperative(udapi.block.msf.phrase.Phrase): - + def process_node(self, node): # the condition node.upos == 'VERB' ensures that copulas do not enter this branch if node.feats['Mood'] == 'Imp' and node.upos == 'VERB': @@ -65,6 +65,7 @@ def process_node(self, node): phrase_ords.sort() self.write_node_info(node, + aspect=copVerb.feats['Aspect'], person=copVerb.feats['Person'], number=copVerb.feats['Number'], mood='Imp', @@ -74,4 +75,3 @@ def process_node(self, node): polarity=self.get_polarity(node,neg), ords=phrase_ords ) - From e321d4d53b535d61ce61d41683d02a977c5ca86d Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 22 Apr 2025 11:05:48 +0200 Subject: [PATCH 208/233] Updated Slavic infinitive. --- udapi/block/msf/slavic/infinitive.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/udapi/block/msf/slavic/infinitive.py b/udapi/block/msf/slavic/infinitive.py index 775b21bd..00c1bcf6 100644 --- a/udapi/block/msf/slavic/infinitive.py +++ b/udapi/block/msf/slavic/infinitive.py @@ -7,7 +7,7 @@ import udapi.block.msf.phrase class Infinitive(udapi.block.msf.phrase.Phrase): - + def process_node(self,node): if node.feats['VerbForm'] == 'Inf' and node.upos == 'VERB': aux = [x for x in node.children if x.udeprel == 'aux'] @@ -67,6 +67,7 @@ def process_node(self,node): phrase_ords.sort() self.write_node_info(node, + aspect=cop[0].feats['Aspect'], voice=self.get_voice(cop[0], refl), form='Inf', polarity=self.get_polarity(cop[0],neg), From fc180b998456798fade5cb39edd627f898b63514 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 22 Apr 2025 11:14:49 +0200 Subject: [PATCH 209/233] Updated Slavic present tense. --- udapi/block/msf/slavic/present.py | 37 +++++++++++++++++++++++++------ 1 file changed, 30 insertions(+), 7 deletions(-) diff --git a/udapi/block/msf/slavic/present.py b/udapi/block/msf/slavic/present.py index ce6b40c4..e579c122 100644 --- a/udapi/block/msf/slavic/present.py +++ b/udapi/block/msf/slavic/present.py @@ -7,11 +7,11 @@ import udapi.block.msf.phrase class Present(udapi.block.msf.phrase.Phrase): - + def process_node(self,node): # the condition VerbForm == 'Fin' ensures that there are no transgressives between the found verbs - - if node.feats['Tense'] == 'Pres' and node.upos == 'VERB' and node.feats['VerbForm'] == 'Fin': #and node.feats['Aspect']=='Imp': + # the aspect is not always given in Czech treebanks, so we can't rely on the fact that the imperfect aspect is specified + if node.feats['Tense'] == 'Pres' and node.upos == 'VERB' and node.feats['VerbForm'] == 'Fin': #and node.feats['Aspect']=='Imp': refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] aux_forb = [x for x in node.children if x.upos == 'AUX' and (x.lemma == 'ќе' or x.lemma == 'ще' or x.feats['Mood'] == 'Cnd')] # forbidden auxiliaries for present tense (these auxiliaries are used for the future tense or the conditional mood) @@ -33,7 +33,6 @@ def process_node(self,node): ords=phrase_ords ) return - # passive voice if node.upos == 'ADJ' and node.feats['Voice'] == 'Pass': @@ -61,9 +60,33 @@ def process_node(self,node): animacy=node.feats['Animacy'] ) return + + # participles + # in some languages, participles are used as attributes (they express case and degree) + if node.upos == 'ADJ' and node.feats['VerbForm'] == 'Part': + aux_forb = [x for x in node.children if x.udeprel == 'aux'] + cop = [x for x in node.children if x.udeprel == 'cop'] + + if not aux_forb and not cop: + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] + neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords.sort() + + self.write_node_info(node, + aspect=node.feats['Aspect'], + tense=node.feats['Tense'], + number=node.feats['Number'], + form='Part', + voice=self.get_voice(node, refl), + reflex=self.get_is_reflex(node, refl), + polarity=self.get_polarity(node,neg), + ords=phrase_ords + ) + return - cop = [x for x in node.children if x.udeprel == "cop" and x.feats['Tense'] == "Pres"] - aux = [x for x in node.children if x.udeprel == "aux" and x.feats['Mood'] == "Ind" and x.feats['Tense'] == 'Pres'] + cop = [x for x in node.children if x.udeprel == 'cop' and x.feats['Tense'] == 'Pres'] + aux = [x for x in node.children if x.udeprel == "aux" and x.feats['Mood'] == 'Ind' and x.feats['Tense'] == 'Pres'] aux_forb = [x for x in node.children if x.upos == 'AUX' and x.feats['Tense'] != 'Pres'] # in Serbian this can be a future tense prep = [x for x in node.children if x.upos == 'ADP'] neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] @@ -76,10 +99,10 @@ def process_node(self,node): phrase_ords.sort() self.write_node_info(node, + aspect=copVerb.feats['Aspect'], tense='Pres', person=copVerb.feats['Person'], number=copVerb.feats['Number'], - aspect=node.feats['Aspect'], mood='Ind', form='Fin', voice=self.get_voice(copVerb, refl), From 3cd92e21e1284272eeeb209423623df6e22b87b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lenka=20Krippnerov=C3=A1?= <14723289@cuni.cz> Date: Wed, 23 Apr 2025 22:06:34 +0200 Subject: [PATCH 210/233] Update get_is_reflex() to return Yes when Voice=Mid --- udapi/block/msf/phrase.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/msf/phrase.py b/udapi/block/msf/phrase.py index 6c5c587a..c92e5e91 100644 --- a/udapi/block/msf/phrase.py +++ b/udapi/block/msf/phrase.py @@ -59,6 +59,8 @@ def get_polarity(self, node, neg): return 'Neg' def get_is_reflex(self,node,refl): + if node.feats['Voice'] == 'Mid': + return 'Yes' if len(refl) == 0: return node.feats['Reflex'] return 'Yes' From 6bc39501bd49f05be70c89f888210cbdf8c98ef7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lenka=20Krippnerov=C3=A1?= <14723289@cuni.cz> Date: Wed, 23 Apr 2025 22:10:41 +0200 Subject: [PATCH 211/233] Change PhraseVoice value from Pass to Act for impersonal forms in Polish and Ukrainian --- udapi/block/msf/slavic/past.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/msf/slavic/past.py b/udapi/block/msf/slavic/past.py index 34dcd354..d4f3c7cd 100644 --- a/udapi/block/msf/slavic/past.py +++ b/udapi/block/msf/slavic/past.py @@ -39,7 +39,7 @@ def process_node(self, node): person=node.feats['Person'], number=node.feats['Number'], mood=node.feats['Mood'], - voice='Pass', + voice='Act', #In Polish, impersonal statements are annotated with Voice=Act. In Ukrainian, the Voice feature is missing; therefore, we decided to annotate these phrases with PhraseVoice=Act aspect=node.feats['Aspect'], form=node.feats['VerbForm'], polarity=self.get_polarity(node,neg), From 7841d88415f7f01e7d9cc2f6f3e5aea766dbc97a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lenka=20Krippnerov=C3=A1?= <14723289@cuni.cz> Date: Wed, 23 Apr 2025 22:12:19 +0200 Subject: [PATCH 212/233] Remove Tense from infinitives in Old Church Slavonic --- udapi/block/msf/slavic/preprocessor.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/udapi/block/msf/slavic/preprocessor.py b/udapi/block/msf/slavic/preprocessor.py index 5d090a2c..e9a5e90b 100644 --- a/udapi/block/msf/slavic/preprocessor.py +++ b/udapi/block/msf/slavic/preprocessor.py @@ -31,8 +31,7 @@ def process_node(self,node): # In Ukrainian, there is no explicit annotation of reflexive verbs # We decided to unify the annotation of reflexive verbs with Russian and Belarusian, where reflexive verbs are formed similarly # We add the feature Voice=Mid to reflexive verbs - # This feature is added only to Ukrainian data (for example, there are some verbs in Old Church Slavonic that end in 'сь' but are not reflexive) - if node.upos == 'VERB' and (node.form.endswith('сь') or node.form.endswith('ся')) and self.lang == 'uk': + if node.upos == 'VERB' and (node.lemma.endswith('сь') or node.lemma.endswith('ся')): node.feats['Voice'] = 'Mid' # makedonstina tvori budouci cas pomoci pomocneho slova ќе, u nejz neni nijak vyznaceno, ze se podili na tvorbe budouciho casu @@ -72,5 +71,9 @@ def process_node(self,node): if node.feats['Mood'] == 'Sub': node.feats['Mood'] = 'Cnd' + # # although infinitives in Old Church Slavonic are annotated with Tense=Pres, they do not convey tense; therefore, we remove this annotation + if node.feats['VerbForm'] == 'Inf': + node.feats['Tense'] = '' + # TODO maybe we want to set Tense=Fut for the perfective verbs with Tense=Pres? This could solve the problem with the simplified detection of the future tense in Czech # but there are many verbs with no Aspect value, so the problem is still there From 7903be388594cdd17938a7f1c5f0ef9162243a26 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 27 Apr 2025 15:49:24 +0200 Subject: [PATCH 213/233] Czech "kolem dokola + Gen". --- udapi/block/ud/cs/fixedeprels.py | 1 + 1 file changed, 1 insertion(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index b0bf1460..c2ad1813 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -93,6 +93,7 @@ class FixEdeprels(Block): 'kdykoliv': 'kdykoli', 'kol': 'kolem:gen', 'kolem': 'kolem:gen', + 'kolem_dokola': 'kolem:gen', 'koncem': 'koncem:gen', 'konec': 'koncem:gen', 'krom': 'kromě:gen', From 105ba96b0431959166dc272731cf13d4967d8636 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 28 Apr 2025 13:00:17 +0200 Subject: [PATCH 214/233] Improving conversion of PDT-C 2.0. --- udapi/block/ud/cs/fixedeprels.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index c2ad1813..e90a4e41 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -38,6 +38,7 @@ class FixEdeprels(Block): # case. And include all other prepositions that have unambiguous morphological # case, even if they are not secondary. unambiguous = { + 'á': 'na:acc', # "á konto té záležitosti", ovšem "á konto" není ani spojeno jako složená předložka (význam = "na konto") 'abi': 'aby', 'aby_na': 'na:loc', 'ačkoliv': 'ačkoli', @@ -59,6 +60,7 @@ class FixEdeprels(Block): 'bez_zřetel_k': 'bez_zřetele_k:dat', 'bez_zřetel_na': 'bez_zřetele_na:acc', 'blízko': 'blízko:dat', + 'blízko_k': 'blízko:dat', 'blíž': 'blízko:dat', 'cesta': 'cestou:gen', 'coby': 'coby', # remove morphological case @@ -86,6 +88,8 @@ class FixEdeprels(Block): 'jakoby_pod': 'pod:ins', 'jakožto': 'jako', 'jelikož_do': 'jelikož', + 'jenom': 'jen', + 'jesli': 'jestli', 'jestli_že': 'jestliže', 'k': 'k:dat', 'k_konec': 'ke_konci:gen', @@ -98,6 +102,7 @@ class FixEdeprels(Block): 'konec': 'koncem:gen', 'krom': 'kromě:gen', 'kromě': 'kromě:gen', + 'leda_když': 'ledaže', 'li_jako': 'li', 'liž': 'li', 'mezi_uvnitř': 'uvnitř:gen', @@ -131,6 +136,7 @@ class FixEdeprels(Block): 'o_jako': 'jako', 'o_o': 'o:acc', 'od': 'od:gen', + 'od_počínaje': 'počínaje:ins', # od brambor počínaje a základní zeleninou konče 'ohledně': 'ohledně:gen', 'okolo': 'okolo:gen', 'oproti': 'oproti:dat', @@ -162,6 +168,7 @@ class FixEdeprels(Block): 'před_během': 'během:gen', # před a během utkání 'před_po': 'po:loc', # před a po vyloučení Schindlera 'přes': 'přes:acc', + 'přes_přes': 'přes:acc', # annotation error 'přestože': 'přestože', # remove morphological case 'při': 'při:loc', 'při_pro': 'při:loc', @@ -183,6 +190,7 @@ class FixEdeprels(Block): 'směr_k': 'směrem_k:dat', 'směr_na': 'směrem_na:acc', 'směr_od': 'směrem_od:gen', + 'směr_přes': 'směrem_přes:acc', 'společně_s': 'společně_s:ins', 'spolu': 'spolu_s:ins', 'spolu_s': 'spolu_s:ins', @@ -233,6 +241,7 @@ class FixEdeprels(Block): 'v_služba': 've_službách:gen', 'v_směr': 've_směru:gen', 'v_směr_k': 've_směru_k:dat', + 'v_směr_na': 've_směru_k:dat', # same meaning as ve_směru_na:acc 'v_smysl': 've_smyslu:gen', 'v_součinnost_s': 'v_součinnosti_s:ins', 'v_souhlas_s': 'v_souhlasu_s:ins', @@ -319,6 +328,7 @@ def process_node(self, node): # flagged as solved. edep['deprel'] = re.sub(r'^advcl:do(?::gen)?$', r'obl:do:gen', edep['deprel']) # od nevidím do nevidím ###!!! Ale měli bychom opravit i závislost v základním stromu! edep['deprel'] = re.sub(r'^advcl:pro(?::acc)?$', r'advcl:aby', edep['deprel']) # byl by pro, abychom... ###!!! Opravit i konverzi stromu. + edep['deprel'] = re.sub(r'^advcl:s(?::ins)?$', r'advcl', edep['deprel']) ###!!! "seděli jsme tam s Člověče, nezlob se!" Měla by se opravit konverze stromu. edep['deprel'] = re.sub(r'^acl:k(?::dat)?$', r'acl', edep['deprel']) edep['deprel'] = re.sub(r'^advcl:k(?::dat)?$', r'obl:k:dat', edep['deprel']) ###!!! Ale měli bychom opravit i závislost v základním stromu! edep['deprel'] = re.sub(r'^advcl:místo(?::gen)?$', r'obl:místo:gen', edep['deprel']) # 'v poslední době se množí bysem místo bych' From 08aabb73267873257dd1e7bf17326e35d19664c1 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 30 Apr 2025 22:56:45 +0200 Subject: [PATCH 215/233] Czech fixed expressions. --- udapi/block/ud/cs/fixedeprels.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/udapi/block/ud/cs/fixedeprels.py b/udapi/block/ud/cs/fixedeprels.py index e90a4e41..bd85e1b4 100644 --- a/udapi/block/ud/cs/fixedeprels.py +++ b/udapi/block/ud/cs/fixedeprels.py @@ -62,6 +62,8 @@ class FixEdeprels(Block): 'blízko': 'blízko:dat', 'blízko_k': 'blízko:dat', 'blíž': 'blízko:dat', + 'blíže': 'blízko:dat', + 'bok_po_bok_s': 'bok_po_boku_s:ins', 'cesta': 'cestou:gen', 'coby': 'coby', # remove morphological case 'daleko': 'nedaleko:gen', @@ -70,10 +72,13 @@ class FixEdeprels(Block): 'díky': 'díky:dat', 'dle': 'dle:gen', 'do': 'do:gen', + 'do_čelo': 'do_čela:gen', 'do_k': 'k:dat', 'do_oblast': 'do_oblasti:gen', 'do_rozpor_s': 'do_rozporu_s:ins', + 'do_ruka': 'do_rukou:gen', 'do_soulad_s': 'do_souladu_s:ins', + 'důsledkem': 'v_důsledku:gen', 'forma': 'formou:gen', 'formou': 'formou:gen', 'hledět_na': 'nehledě_na:acc', @@ -91,6 +96,7 @@ class FixEdeprels(Block): 'jenom': 'jen', 'jesli': 'jestli', 'jestli_že': 'jestliže', + 'jménem': 'jménem:gen', 'k': 'k:dat', 'k_konec': 'ke_konci:gen', 'k_prospěch': 'ku_prospěchu:gen', @@ -102,22 +108,26 @@ class FixEdeprels(Block): 'konec': 'koncem:gen', 'krom': 'kromě:gen', 'kromě': 'kromě:gen', + 'kvůli': 'kvůli:dat', 'leda_když': 'ledaže', 'li_jako': 'li', 'liž': 'li', 'mezi_uvnitř': 'uvnitř:gen', + 'na:ins': 'na:acc', 'na_báze': 'na_bázi:gen', 'na_čelo': 'na_čele:gen', 'na_mimo': 'na:loc', # na kurtě i mimo něj 'na_než': 'na:acc', # na víc než čtyři a půl kilometru 'na_od': 'na_rozdíl_od:gen', 'na_počátek': 'na_počátku:gen', + 'na_počest': 'na_počest:gen', # appears also with :dat but the meaning is same 'na_podklad': 'na_podkladě:gen', 'na_rozdíl_od': 'na_rozdíl_od:gen', 'na_strana': 'na_straně:gen', 'na_účet': 'na_účet:gen', 'na_újma': 'gen', # 'nebude na újmu' is a multi-word predicate but 'na újmu' is probably not used as an independent oblique modifier 'na_úroveň': 'na_úrovni:gen', + 'na_úroveň_okolo': 'na_úrovni:gen', 'na_úsek': 'na_úseku:gen', 'na_začátek': 'na_začátku:gen', 'na_základ': 'na_základě:gen', @@ -150,10 +160,13 @@ class FixEdeprels(Block): 'počátkem': 'počátkem:gen', 'počínaje': 'počínaje:ins', 'počínat': 'počínaje:ins', + 'počínat_od': 'počínaje:ins', 'pod_dojem': 'pod_dojmem:gen', 'pod_tlak': 'pod_tlakem:gen', 'pod_vliv': 'pod_vlivem:gen', 'pod_záminka': 'pod_záminkou:gen', + 'pod_záminka_že': 'pod_záminkou_že', + 'podél': 'podél:gen', 'podle': 'podle:gen', 'pomoc': 'pomocí:gen', 'pomocí': 'pomocí:gen', @@ -164,6 +177,7 @@ class FixEdeprels(Block): 'prostřednictví': 'prostřednictvím:gen', 'prostřednictvím': 'prostřednictvím:gen', 'proti': 'proti:dat', + 'proto_aby': 'aby', 'protože': 'protože', # remove morphological case 'před_během': 'během:gen', # před a během utkání 'před_po': 'po:loc', # před a po vyloučení Schindlera @@ -174,12 +188,15 @@ class FixEdeprels(Block): 'při_pro': 'při:loc', 'při_příležitost': 'při_příležitosti:gen', 'ruka_v_ruka_s': 'ruku_v_ruce_s:ins', + 's_cíl': 's_cílem', # s cílem projednat X 's_ohled_k': 's_ohledem_k:dat', 's_ohled_na': 's_ohledem_na:acc', 's_pomoc': 's_pomocí:gen', + 's_postup': 'postupem:gen', 's_přihlédnutí_k': 's_přihlédnutím_k:dat', 's_přihlédnutí_na': 's_přihlédnutím_na:acc', 's_výjimka': 's_výjimkou:gen', + 's_výjimka_z': 's_výjimkou:gen', 's_výjimka_že': 's_výjimkou_že', 's_vyloučení': 's_vyloučením:gen', 's_zřetel_k': 'se_zřetelem_k:dat', @@ -191,10 +208,13 @@ class FixEdeprels(Block): 'směr_na': 'směrem_na:acc', 'směr_od': 'směrem_od:gen', 'směr_přes': 'směrem_přes:acc', + 'směr_z': 'směrem_z:gen', 'společně_s': 'společně_s:ins', 'spolu': 'spolu_s:ins', 'spolu_s': 'spolu_s:ins', + 'spolu_se': 'spolu_s:ins', 'stranou': 'stranou:gen', + 'stranou_od': 'stranou:gen', 'takže': 'takže', # remove morphological case 'takže_a': 'takže', 'třebaže': 'třebaže', # remove morphological case @@ -203,6 +223,7 @@ class FixEdeprels(Block): 'u_příležitost': 'u_příležitosti:gen', 'uprostřed': 'uprostřed:gen', 'uvnitř': 'uvnitř:gen', + 'v:ins': 'v:loc', # ve skutečností (překlep) 'v_analogie_s': 'v_analogii_s:ins', 'v_blízkost': 'v_blízkosti:gen', 'v_čas': 'v_čase:gen', @@ -248,6 +269,7 @@ class FixEdeprels(Block): 'v_soulad_s': 'v_souladu_s:ins', 'v_souvislost_s': 'v_souvislosti_s:ins', 'v_spojení_s': 've_spojení_s:ins', + 'v_spojení_se': 've_spojení_s:ins', 'v_spojený_s': 've_spojení_s:ins', 'v_spojitost_s': 've_spojitosti_s:ins', 'v_spolupráce_s': 've_spolupráci_s:ins', @@ -257,8 +279,10 @@ class FixEdeprels(Block): 'v_stav': 've_stavu:gen', 'v_stín': 've_stínu:gen', 'v_světlo': 've_světle:gen', + 'v_úroveň': 'v_úrovni:gen', 'v_věc': 've_věci:gen', 'v_vztah_k': 've_vztahu_k:dat', + 'v_vztah_s': 've_vztahu_k:dat', 'v_zájem': 'v_zájmu:gen', 'v_záležitost': 'v_záležitosti:gen', 'v_závěr': 'v_závěru:gen', From 14e92924fcb69d2e707e416cf1a878e5fe18eb9a Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Sun, 11 May 2025 20:11:51 +0200 Subject: [PATCH 216/233] Fixes #129. --- udapi/block/ud/markbugs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/markbugs.py b/udapi/block/ud/markbugs.py index bf47ed75..959b484e 100644 --- a/udapi/block/ud/markbugs.py +++ b/udapi/block/ud/markbugs.py @@ -154,7 +154,7 @@ def process_node(self, node): # so there should be no false alarms. Some errors are not reported, i.e. the cases # when advmod incorrectly depends on a function word ("right before midnight"). if parent.udeprel in ('aux', 'cop', 'mark', 'clf', 'case'): - if udeprel not in ('conj', 'cc', 'punct', 'fixed', 'goeswith', 'advmod'): + if udeprel not in ('conj', 'cc', 'punct', 'fixed', 'goeswith', 'advmod', 'reparandum'): self.log(node, parent.deprel + '-child', 'parent.deprel=%s deprel!=conj|cc|punct|fixed|goeswith' % parent.deprel) From 540fe0467757247e3f3cf71e2d4555c784d4ddd8 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 26 May 2025 21:13:12 +0200 Subject: [PATCH 217/233] Fix deprel by upos. --- udapi/block/ud/fixadvmodbyupos.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index d020b55f..17f0d96e 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -44,6 +44,8 @@ def process_node(self, node): elif node.udeprel == 'case': if node.upos == 'DET': node.deprel = 'det' + elif node.upos == 'PRON': + node.deprel = 'nmod' elif node.udeprel == 'mark': if node.upos in ['PRON', 'DET']: node.deprel = 'nsubj' # it could be also obj, iobj, obl or nmod; just guessing what might be more probable From 4d9f24c2b616419ebda298be77ef224bd2e8620d Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Mon, 26 May 2025 22:26:48 +0200 Subject: [PATCH 218/233] Fix more errors. --- udapi/block/ud/fixadvmodbyupos.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index 17f0d96e..e7aa2fed 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -36,6 +36,8 @@ def process_node(self, node): node.deprel = 'aux' elif node.upos == 'ADP': node.deprel = 'case' + elif node.upos == 'ADV': + node.deprel = 'advmod' elif node.upos == 'CCONJ': node.deprel = 'cc' elif node.udeprel in ['aux', 'cop']: From 0abec004793563d0a09977441baa49d197d33539 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 27 May 2025 12:50:04 +0200 Subject: [PATCH 219/233] Czech adjectival numerals can have Variant=Short. --- udapi/block/ud/cs/markfeatsbugs.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 59f07dbd..cbf57605 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -107,6 +107,7 @@ def process_node(self, node): 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], + 'Variant': ['Short'], # sedmer (Mult Short) duch tvój; pól čtverta (Ord Short) komára 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: @@ -116,6 +117,7 @@ def process_node(self, node): 'Gender': ['Masc', 'Fem', 'Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], + 'Variant': ['Short'], 'Emph': ['Yes'], 'Foreign': ['Yes']}) elif node.feats['VerbForm'] == 'Part': # participles (except l-participles) are a subtype of adjectives @@ -390,7 +392,7 @@ def process_node(self, node): # there the form changes after preposition and PrepCase must be annotated (muž, jehož se bojím VS. muž, bez něhož se neobejdeme). }) # Feminine personal possessive determiner. - elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)$', node.form.lower()): + elif re.match(r'^(její|jeje|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)$', node.form.lower()): # The feminine possessive 'její' slightly inflects, unlike 'jeho' and 'jejich'. # Congruent gender: # - in PDT, only in singular; masculine and neuter are merged even in nominative @@ -436,7 +438,7 @@ def process_node(self, node): 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'] }) # Feminine relative possessive determiner. - elif re.match(r'^(její|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)(ž(e|to)?)$', node.form.lower()): + elif re.match(r'^(její|jeje|jejie|jejího|jejieho|jejímu|jejiemu|jejím|jejiem|jejiej|jejíma|jejiema|jejích|jejiech|jejími|jejiemi)(ž(e|to)?)$', node.form.lower()): # The feminine possessive 'jejíž' slightly inflects, unlike 'jehož' and 'jejichž'. # Congruent gender: # - in PDT, only in singular; masculine and neuter are merged even in nominative From 7459d350b0418c7097be1bccd98683b35b8d7fba Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 29 May 2025 22:23:20 +0200 Subject: [PATCH 220/233] Updated processing of Old Czech data. --- udapi/block/ud/cs/addmwt.py | 2 +- udapi/block/ud/cs/markfeatsbugs.py | 15 ++++++++++----- udapi/block/ud/fixadvmodbyupos.py | 4 ++++ 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/udapi/block/ud/cs/addmwt.py b/udapi/block/ud/cs/addmwt.py index 7f3a4283..c1b3783a 100644 --- a/udapi/block/ud/cs/addmwt.py +++ b/udapi/block/ud/cs/addmwt.py @@ -126,7 +126,7 @@ def multiword_analysis(self, node): # could be masculine or neuter. We pick Gender=Masc and Animacy=Anim # by default, unless the original token was annotated as Animacy=Inan # or Gender=Neut. - m = re.match(r"^(na|o|pro|přěde|ski?rz[eě]|za)[nň](ž?)$", node.form.lower()) + m = re.match(r"^(na|nade|o|pro|přěde|ski?rz[eě]|za)[nň](ž?)$", node.form.lower()) if m: node.misc['AddMwt'] = '' # Remove vocalization from 'přěde' (přěd něj) but keep it in 'skrze' diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index cbf57605..6c3672ac 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -37,7 +37,8 @@ def process_node(self, node): 'Gender': ['Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'Foreign': ['Yes'] + 'Foreign': ['Yes'], + 'Abbr': ['Yes'] }) elif node.feats['Gender'] == 'Masc': self.check_required_features(node, ['Animacy']) @@ -46,13 +47,15 @@ def process_node(self, node): 'Animacy': ['Anim', 'Inan'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'Foreign': ['Yes']}) + 'Foreign': ['Yes'], + 'Abbr': ['Yes']}) else: self.check_allowed_features(node, { 'Gender': ['Masc', 'Fem', 'Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], - 'Foreign': ['Yes']}) + 'Foreign': ['Yes'], + 'Abbr': ['Yes']}) # PROPER NOUNS ######################################################### elif node.upos == 'PROPN': self.check_required_features(node, ['Gender', 'Number', 'Case']) @@ -64,14 +67,16 @@ def process_node(self, node): 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'NameType': ['Giv', 'Sur', 'Geo', 'Nat'], - 'Foreign': ['Yes']}) + 'Foreign': ['Yes'], + 'Abbr': ['Yes']}) else: self.check_allowed_features(node, { 'Gender': ['Masc', 'Fem', 'Neut'], 'Number': ['Sing', 'Dual', 'Plur'], 'Case': ['Nom', 'Gen', 'Dat', 'Acc', 'Voc', 'Loc', 'Ins'], 'NameType': ['Giv', 'Sur', 'Geo', 'Nat'], - 'Foreign': ['Yes']}) + 'Foreign': ['Yes'], + 'Abbr': ['Yes']}) # ADJECTIVES ########################################################### elif node.upos == 'ADJ': if node.feats['Poss'] == 'Yes': # possessive adjectives diff --git a/udapi/block/ud/fixadvmodbyupos.py b/udapi/block/ud/fixadvmodbyupos.py index e7aa2fed..916910b5 100644 --- a/udapi/block/ud/fixadvmodbyupos.py +++ b/udapi/block/ud/fixadvmodbyupos.py @@ -51,6 +51,8 @@ def process_node(self, node): elif node.udeprel == 'mark': if node.upos in ['PRON', 'DET']: node.deprel = 'nsubj' # it could be also obj, iobj, obl or nmod; just guessing what might be more probable + elif node.upos == 'NOUN': + node.deprel = 'obl' elif node.upos == 'INTJ': node.deprel = 'discourse' elif node.udeprel == 'cc': @@ -71,6 +73,8 @@ def process_node(self, node): node.deprel = 'aux' elif node.upos == 'VERB': node.deprel = 'dep' + elif node.upos == 'SCONJ': + node.deprel = 'mark' elif node.upos == 'X': node.deprel = 'dep' elif node.udeprel == 'nummod': From ac391d50696c392c5be1d3c2268627f765bcbd2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lenka=20Krippnerov=C3=A1?= <14723289@cuni.cz> Date: Tue, 10 Jun 2025 22:26:46 +0200 Subject: [PATCH 221/233] Improve handling of negation detection in Slavic blocks --- udapi/block/msf/phrase.py | 73 +++++++++++++++++++--- udapi/block/msf/slavic/conditional.py | 25 +++++--- udapi/block/msf/slavic/converb.py | 33 ++++++---- udapi/block/msf/slavic/future.py | 84 +++++++++++++++----------- udapi/block/msf/slavic/imperative.py | 31 ++++++---- udapi/block/msf/slavic/infinitive.py | 50 +++++++++------ udapi/block/msf/slavic/past.py | 66 ++++++++++++-------- udapi/block/msf/slavic/preprocessor.py | 6 +- udapi/block/msf/slavic/present.py | 60 +++++++++++------- 9 files changed, 285 insertions(+), 143 deletions(-) diff --git a/udapi/block/msf/phrase.py b/udapi/block/msf/phrase.py index c92e5e91..e39fc131 100644 --- a/udapi/block/msf/phrase.py +++ b/udapi/block/msf/phrase.py @@ -30,6 +30,31 @@ def process_node(self, node): 'animacy':'PhraseAnimacy', 'ords':'Phrase' } + + # a dictionary where the key is the lemma of a negative particle and the value is a list of the lemmas of their possible children that have a 'fixed' relation + # we do not want to include these negative particles in the phrase; these are expressions like "never", etc. + negation_fixed = { + # Belarusian + 'ні' : ['раз'], + 'ня' : ['толькі'], + + # Upper Sorbian + 'nic' : ['naposledku'], + + # Polish + 'nie' : ['mało'], + + # Pomak + 'néma' : ['kak'], + + # Slovenian + 'ne' : ['le'], + + # Russian and Old East Slavic + 'не' : ['то', 'токмо'], + 'ни' : ['в', 'раз', 'шатко'], + 'нет' : ['нет'] + } def write_node_info(self, node, tense = None, @@ -51,12 +76,46 @@ def write_node_info(self, node, if val != None: node.misc[self.dictionary[key]] = val - def get_polarity(self, node, neg): - if node.feats['Polarity'] != "": - return node.feats['Polarity'] - if len(neg) == 0: - return None - return 'Neg' + def has_fixed_children(self, node): + """ + Returns True if the node has any children with the 'fixed' relation and the node's lemma along with the child's lemma are listed in self.negation_fixed. + """ + fixed_children = [x for x in node.children if x.udeprel == 'fixed'] + + if fixed_children: + if fixed_children[0].lemma in self.negation_fixed.get(node.lemma, []): + return True + return False + + def get_polarity(self, nodes): + """ + Returns 'Neg' if there is exactly one node with Polarity='Neg' among the given nodes. + Returns an empty string if there are zero or more than one such nodes. + """ + neg_count = 0 + for node in nodes: + if node.feats['Polarity'] == 'Neg': + neg_count += 1 + + if neg_count == 1: + return 'Neg' + + # neg_count can be zero or two, in either case we want to return an empty string so that the PhrasePolarity attribute is not generated + else: + return '' + + def get_negative_particles(self, nodes): + """ + Returns a list of all negative particles found among the children + of the specified nodes, except for negative particles with fixed children specified in self.negation_fixed. + """ + neg_particles = [] + for node in nodes: + neg = [x for x in node.children if x.upos == 'PART' and x.feats['Polarity'] == 'Neg' and x.udeprel == 'advmod' and not self.has_fixed_children(x)] + if neg: + neg_particles += neg + return neg_particles + def get_is_reflex(self,node,refl): if node.feats['Voice'] == 'Mid': @@ -75,4 +134,4 @@ def get_voice(self,node,refl): if self.is_expl_pass(refl): return 'Pass' return voice - + diff --git a/udapi/block/msf/slavic/conditional.py b/udapi/block/msf/slavic/conditional.py index f5206519..89eafd6c 100644 --- a/udapi/block/msf/slavic/conditional.py +++ b/udapi/block/msf/slavic/conditional.py @@ -19,12 +19,16 @@ def process_node(self, node): # the conditional mood can be formed using the auxiliary verb or some conjunctions (such as 'aby, kdyby...' in Czech) # so x.udeprel == 'aux' can't be required because it doesn't meet the conjunctions - if len(aux_cnd) > 0 and len(cop) == 0: + if aux_cnd and not cop: aux = [x for x in node.children if x.udeprel == 'aux' or x.feats['Mood'] == 'Cnd'] # all auxiliary verbs and conjuctions with feats['Mood'] == 'Cnd' refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_nodes = [node] + aux + refl - phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in refl] + [x.ord for x in neg] + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() auxVerb = aux_cnd[0] @@ -41,7 +45,7 @@ def process_node(self, node): form='Fin', aspect=node.feats['Aspect'], reflex=self.get_is_reflex(node,refl), - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), voice=self.get_voice(node, refl), ords=phrase_ords, gender=node.feats['Gender'], @@ -53,15 +57,18 @@ def process_node(self, node): cop = [x for x in node.children if x.udeprel == 'cop' and (x.feats['VerbForm'] == 'Part' or x.feats['VerbForm'] == 'Fin')] aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel=='aux:cnd'] - if len(cop) > 0 and len(aux_cnd) > 0: + if cop and aux_cnd: # there can be a copula with Mood='Cnd' (i. e. in Old East Slavonic), we don't want to count these copula in phrase_ords twice, so there is x.udeprel != 'cop' in aux list aux = [x for x in node.children if (x.udeprel == 'aux' or x.feats['Mood'] == 'Cnd') and x.udeprel != 'cop'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] prep = [x for x in node.children if x.upos == 'ADP'] refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] + phrase_nodes = [node] + aux + prep + refl + cop + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + copVerb = cop[0] - phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in cop] + [x.ord for x in neg] + [x.ord for x in prep] + [x.ord for x in refl] + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, aspect=copVerb.feats['Aspect'], @@ -70,9 +77,9 @@ def process_node(self, node): mood='Cnd', form='Fin', voice=self.get_voice(copVerb, refl), - polarity=self.get_polarity(copVerb,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node, refl), ords=phrase_ords, gender=copVerb.feats['Gender'], animacy=copVerb.feats['Animacy'] - ) + ) \ No newline at end of file diff --git a/udapi/block/msf/slavic/converb.py b/udapi/block/msf/slavic/converb.py index e517a5c8..6b725d56 100644 --- a/udapi/block/msf/slavic/converb.py +++ b/udapi/block/msf/slavic/converb.py @@ -12,9 +12,12 @@ def process_node(self, node): # condition node.upos == 'VERB' to prevent copulas from entering this branch if node.feats['VerbForm'] == 'Conv' and node.upos == 'VERB': refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + + phrase_nodes = [node] + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -23,7 +26,7 @@ def process_node(self, node): form='Conv', tense=node.feats['Tense'], aspect=node.feats['Aspect'], - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords, gender=node.feats['Gender'], @@ -35,10 +38,13 @@ def process_node(self, node): elif node.upos == 'ADJ': aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['VerbForm'] == 'Conv'] - if len(aux) > 0: - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + if aux: auxVerb = aux[0] - phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] + + phrase_nodes = [node] + aux + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -47,7 +53,7 @@ def process_node(self, node): form='Conv', tense=auxVerb.feats['Tense'], aspect=node.feats['Aspect'], - polarity=self.get_polarity(auxVerb,neg), + polarity=self.get_polarity(phrase_nodes), ords=phrase_ords, gender=auxVerb.feats['Gender'], animacy=auxVerb.feats['Animacy'], @@ -58,13 +64,16 @@ def process_node(self, node): else: cop = [x for x in node.children if x.udeprel == 'cop' and x.feats['VerbForm'] == 'Conv'] - if len(cop) > 0: + if cop: prep = [x for x in node.children if x.upos == 'ADP'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] copVerb = cop[0] - phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + + phrase_nodes = [node] + cop + prep + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() @@ -76,7 +85,7 @@ def process_node(self, node): gender=copVerb.feats['Gender'], animacy=copVerb.feats['Animacy'], form='Conv', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), ords=phrase_ords, voice=self.get_voice(copVerb, refl) ) diff --git a/udapi/block/msf/slavic/future.py b/udapi/block/msf/slavic/future.py index 2d48f86c..02452c36 100644 --- a/udapi/block/msf/slavic/future.py +++ b/udapi/block/msf/slavic/future.py @@ -11,29 +11,29 @@ class Future(udapi.block.msf.phrase.Phrase): def process_node(self, node): # future tense for Serbian and Croatian aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres' and (x.lemma == 'hteti' or x.lemma == 'htjeti')] - if node.upos != 'AUX' and len(aux) != 0: + if node.upos != 'AUX' and aux: refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] aux_other = [x for x in node.children if x.udeprel == 'aux'] # adding aux for passive voice cop = [x for x in node.children if x.deprel == 'cop'] - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + [x.ord for x in aux_other] + [x.ord for x in cop] + + phrase_nodes = [node] + refl + aux_other + cop + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() - # u infinitivu neni vyznacen slovesny rod - # PhraseVoice ale chceme nastavit na activum, jelikoz se jedna o pomocne sloveso + infinitiv - voice=node.feats['Voice'] - #if voice == '': - # voice = 'Act' - if len(cop) == 0: + + if not cop: self.write_node_info(node, tense='Fut', person=aux[0].feats['Person'], number=aux[0].feats['Number'], mood='Ind', - voice=voice, + voice=node.feats['Voice'], aspect=node.feats['Aspect'], # srbstina ani chorvatstina vidy nema form='Fin', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), gender=node.feats['Gender'], animacy=node.feats['Animacy'], @@ -41,6 +41,7 @@ def process_node(self, node): ) else: prep = [x for x in node.children if x.upos == 'ADP'] + phrase_nodes += prep phrase_ords += [x.ord for x in prep] phrase_ords.sort() @@ -49,10 +50,10 @@ def process_node(self, node): person=aux[0].feats['Person'], number=aux[0].feats['Number'], mood='Ind', - voice=voice, + voice=node.feats['Voice'], aspect=node.feats['Aspect'], form='Fin', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), gender=node.feats['Gender'], animacy=node.feats['Animacy'], @@ -65,10 +66,14 @@ def process_node(self, node): # Bulgarian forms the future tense with the auxiliary word ще and a verb in the present tense aux = [x for x in node.children if x.lemma == 'ќе' or x.lemma == 'ще'] - if node.feats['Tense'] == 'Pres' and len(aux) > 0: + if node.feats['Tense'] == 'Pres' and aux: refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + [x.ord for x in aux] + + phrase_nodes = [node] + refl + aux + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -79,7 +84,7 @@ def process_node(self, node): voice=node.feats['Voice'], aspect=node.feats['Aspect'], form='Fin', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) @@ -91,9 +96,11 @@ def process_node(self, node): """if node.feats['Aspect'] == 'Perf' and (node.feats['Tense'] == 'Pres' or node.feats['Tense'] == 'Fut') and node.feats['VerbForm'] != 'Conv': refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + phrase_nodes = [node] + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -104,7 +111,7 @@ def process_node(self, node): voice=self.get_voice(node,refl), form='Fin', aspect='Perf', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) @@ -119,11 +126,16 @@ def process_node(self, node): aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Fut'] refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - if len(aux) > 0: + + phrase_nodes = [node] + aux + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] + phrase_ords.sort() + + if aux: auxVerb = aux[0] - phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in refl] + [x.ord for x in neg] - phrase_ords.sort() self.write_node_info(node, tense='Fut', person=auxVerb.feats['Person'], @@ -132,7 +144,7 @@ def process_node(self, node): voice=self.get_voice(node,refl), aspect=node.feats['Aspect'], form='Fin', - polarity=self.get_polarity(auxVerb,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords, gender=node.feats['Gender'], @@ -143,20 +155,17 @@ def process_node(self, node): # simple future tense - e.g. in Serbian, the future tense can be formed by combining a verb with a full meaning and an auxiliary verb into one word, i.e. without an auxiliary verb # or verbs like pojede, půjdeme... in Czech - if len(aux) == 0 and node.feats['Tense'] == 'Fut': - - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] - phrase_ords.sort() - + if not aux and node.feats['Tense'] == 'Fut': + self.write_node_info(node, tense='Fut', person=node.feats['Person'], number=node.feats['Number'], mood='Ind', - voice=self.get_voice(node,refl), # passivum se muze objevit (napr. pojede se), ale jmenny rod neni vyjadren + voice=self.get_voice(node,refl), aspect=node.feats['Aspect'], form='Fin', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) @@ -164,14 +173,17 @@ def process_node(self, node): cop = [x for x in node.children if x.udeprel == 'cop' and x.feats['Tense'] == 'Fut'] - if len(cop) > 0: + if cop: copVerb = cop[0] aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Mood']=='Ind'] prep = [x for x in node.children if x.upos == 'ADP'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in aux] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_nodes = [node] + cop + aux + prep + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -182,7 +194,7 @@ def process_node(self, node): mood='Ind', form='Fin', voice=self.get_voice(copVerb, refl), - polarity=self.get_polarity(copVerb,neg), + polarity=self.get_polarity(phrase_nodes), ords=phrase_ords ) diff --git a/udapi/block/msf/slavic/imperative.py b/udapi/block/msf/slavic/imperative.py index 209406e9..d4fedd50 100644 --- a/udapi/block/msf/slavic/imperative.py +++ b/udapi/block/msf/slavic/imperative.py @@ -12,9 +12,12 @@ def process_node(self, node): # the condition node.upos == 'VERB' ensures that copulas do not enter this branch if node.feats['Mood'] == 'Imp' and node.upos == 'VERB': refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_nodes = [node] + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -24,7 +27,7 @@ def process_node(self, node): mood='Imp', form='Fin', voice='Act', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) @@ -33,10 +36,12 @@ def process_node(self, node): # verbs in the passive forms are marked as ADJ if node.upos == 'ADJ' and node.feats['Voice'] == 'Pass': aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Mood'] == 'Imp'] - if len(aux) > 0: - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + if aux: + phrase_nodes = [node] + aux + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg - phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -46,7 +51,7 @@ def process_node(self, node): voice='Pass', aspect=node.feats['Aspect'], form='Fin', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -55,13 +60,17 @@ def process_node(self, node): cop = [x for x in node.children if x.udeprel == 'cop' and x.feats['Mood'] == 'Imp'] - if len(cop) > 0: + if cop: prep = [x for x in node.children if x.upos == 'ADP'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] copVerb = cop[0] - phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + + phrase_nodes = [node] + cop + prep + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -72,6 +81,6 @@ def process_node(self, node): form='Fin', voice=self.get_voice(copVerb, refl), reflex=self.get_is_reflex(node, refl), - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), ords=phrase_ords ) diff --git a/udapi/block/msf/slavic/infinitive.py b/udapi/block/msf/slavic/infinitive.py index 00c1bcf6..f39a2646 100644 --- a/udapi/block/msf/slavic/infinitive.py +++ b/udapi/block/msf/slavic/infinitive.py @@ -11,22 +11,22 @@ class Infinitive(udapi.block.msf.phrase.Phrase): def process_node(self,node): if node.feats['VerbForm'] == 'Inf' and node.upos == 'VERB': aux = [x for x in node.children if x.udeprel == 'aux'] - if len(aux) == 0: # the list of auxiliary list must be empty - we don't want to mark infinitives which are part of any other phrase (for example the infinititive is part of the future tense in Czech) + if not aux: # the list of auxiliary list must be empty - we don't want to mark infinitives which are part of any other phrase (for example the infinititive is part of the future tense in Czech) refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] - phrase_ords.sort() + phrase_nodes = [node] + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes == neg - voice='Act' - if self.is_expl_pass(refl): - voice='Pass' + phrase_ords = [x.ord for x in phrase_nodes] + phrase_ords.sort() + self.write_node_info(node, aspect=node.feats['Aspect'], - voice=voice, + voice=self.get_voice(node,refl), form='Inf', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) @@ -35,18 +35,21 @@ def process_node(self,node): if node.upos == 'ADJ' and node.feats['Voice'] == 'Pass': aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['VerbForm'] == 'Inf'] aux_forb = [x for x in node.children if x.udeprel == 'aux' and x.feats['VerbForm'] != 'Inf'] - if len(aux) > 0 and len(aux_forb) == 0: - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + if aux and not aux_forb: refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_nodes = [node] + aux + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, aspect=node.feats['Aspect'], voice='Pass', form='Inf', - polarity=self.get_polarity(aux[0],neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node, refl), ords=phrase_ords, gender=node.feats['Gender'], @@ -59,18 +62,22 @@ def process_node(self,node): cop = [x for x in node.children if x.udeprel == 'cop' and x.feats['VerbForm'] == 'Inf'] aux_forb = [x for x in node.children if x.udeprel == 'aux'] - if len(cop) > 0 and len(aux_forb) == 0: + if cop and not aux_forb: prep = [x for x in node.children if x.upos == 'ADP'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + + phrase_nodes = [node] + cop + prep + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, aspect=cop[0].feats['Aspect'], voice=self.get_voice(cop[0], refl), form='Inf', - polarity=self.get_polarity(cop[0],neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node, refl), ords=phrase_ords ) @@ -78,16 +85,19 @@ def process_node(self,node): # there is a rare verb form called supine in Slovenian, it is used instead of infinitive as the argument of motion verbs if node.feats['VerbForm'] == 'Sup': refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_nodes = [node] + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, aspect=node.feats['Aspect'], voice='Act', form='Sup', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node, refl), ords=phrase_ords ) diff --git a/udapi/block/msf/slavic/past.py b/udapi/block/msf/slavic/past.py index d4f3c7cd..423bff45 100644 --- a/udapi/block/msf/slavic/past.py +++ b/udapi/block/msf/slavic/past.py @@ -29,9 +29,12 @@ def process_node(self, node): # in Polish, verbs with Person=0 have also Tense=Past, in Ukrainian the tense is not specified if node.feats['Person'] == '0': refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_nodes = [node] + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -42,7 +45,7 @@ def process_node(self, node): voice='Act', #In Polish, impersonal statements are annotated with Voice=Act. In Ukrainian, the Voice feature is missing; therefore, we decided to annotate these phrases with PhraseVoice=Act aspect=node.feats['Aspect'], form=node.feats['VerbForm'], - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords, gender=node.feats['Gender'], @@ -54,20 +57,23 @@ def process_node(self, node): aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres'] aux_pqp = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] in past_tenses] refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + + phrase_nodes = [node] + aux + refl + aux_pqp + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg - phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in refl] + [x.ord for x in neg] + [x.ord for x in aux_pqp] + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() aux_cnd = [x for x in node.children if (x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd') and x.udeprel != 'conj'] # we don't want to mark l-participles in the conditional as past tense - if len(aux_cnd) == 0: - if len(aux) > 0: + if not aux_cnd: + if aux: person = aux[0].feats['Person'] - elif len(aux) == 0: + elif not aux: person = '3' - if len(aux_pqp) > 0: + if aux_pqp: person = aux_pqp[0].feats['Person'] # in Slovenian, the participles are not annotated as Tense='Past', the Tense feature is missing here @@ -86,7 +92,7 @@ def process_node(self, node): voice=self.get_voice(node,refl), aspect=node.feats['Aspect'], form='Fin', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords, gender=node.feats['Gender'], @@ -100,13 +106,16 @@ def process_node(self, node): # the past tense is formed only by a content verb, not with an auxiliary aux_forb = [x for x in node.children if x.udeprel == 'aux'] + + if not aux_forb: - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - if not aux_forb: + phrase_nodes = [node] + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -117,7 +126,7 @@ def process_node(self, node): voice=self.get_voice(node,refl), aspect=node.feats['Aspect'], form=node.feats['VerbForm'], - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords, gender=node.feats['Gender'], @@ -127,14 +136,18 @@ def process_node(self, node): # passive - elif node.upos == 'ADJ' and node.feats['Voice'] == 'Pass' and len(cop) == 0: + elif node.upos == 'ADJ' and node.feats['Voice'] == 'Pass' and not cop: aux_past_tense = [x for x in node.children if x.udeprel == 'aux' and (x.feats['Tense'] in past_tenses)] aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd'] # we don't want to mark l-participles in the conditional as past tense - if len(aux_cnd) == 0: - if len(aux_past_tense) > 0: + if not aux_cnd: + if aux_past_tense: aux_pres_tense = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres'] # e. g. the auxiliary 'jsem' in the phrase 'byl jsem přinucen' - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - phrase_ords = [node.ord] + [x.ord for x in aux_past_tense] + [x.ord for x in aux_pres_tense] + [x.ord for x in neg] + + phrase_nodes = [node] + aux_past_tense + aux_pres_tense + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() person = '3' @@ -150,7 +163,7 @@ def process_node(self, node): voice='Pass', form='Fin', aspect=node.feats['Aspect'], - polarity=self.get_polarity(aux_past_tense[0],neg), + polarity=self.get_polarity(phrase_nodes), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -158,13 +171,16 @@ def process_node(self, node): else: aux_cnd = [x for x in node.children if x.feats['Mood'] == 'Cnd' or x.deprel == 'aux:cnd'] # we don't want to mark l-participles in the conditional as past tense - if len(cop) > 0 and len(aux_cnd) == 0: + if cop and not aux_cnd: aux_past_tense = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres'] prep = [x for x in node.children if x.upos == 'ADP'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - phrase_ords = [node.ord] + [x.ord for x in aux_past_tense] + [x.ord for x in cop] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_nodes = [node] + aux_past_tense + cop + prep + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() person = '3' @@ -184,7 +200,7 @@ def process_node(self, node): voice=self.get_voice(cop[0], refl), form='Fin', reflex=self.get_is_reflex(node,refl), - polarity=self.get_polarity(cop[0],neg), + polarity=self.get_polarity(phrase_nodes), ords=phrase_ords, gender=cop[0].feats['Gender'], animacy=cop[0].feats['Animacy'] diff --git a/udapi/block/msf/slavic/preprocessor.py b/udapi/block/msf/slavic/preprocessor.py index e9a5e90b..804a081f 100644 --- a/udapi/block/msf/slavic/preprocessor.py +++ b/udapi/block/msf/slavic/preprocessor.py @@ -71,9 +71,13 @@ def process_node(self,node): if node.feats['Mood'] == 'Sub': node.feats['Mood'] = 'Cnd' - # # although infinitives in Old Church Slavonic are annotated with Tense=Pres, they do not convey tense; therefore, we remove this annotation + # although infinitives in Old Church Slavonic are annotated with Tense=Pres, they do not convey tense; therefore, we remove this annotation if node.feats['VerbForm'] == 'Inf': node.feats['Tense'] = '' + # in the russian Syntagrus corpus, the negative particles have no Polarity=Neg feature + if node.lemma == 'не' and node.upos == 'PART' and node.udeprel == 'advmod': + node.feats['Polarity'] = 'Neg' + # TODO maybe we want to set Tense=Fut for the perfective verbs with Tense=Pres? This could solve the problem with the simplified detection of the future tense in Czech # but there are many verbs with no Aspect value, so the problem is still there diff --git a/udapi/block/msf/slavic/present.py b/udapi/block/msf/slavic/present.py index e579c122..9a743a9e 100644 --- a/udapi/block/msf/slavic/present.py +++ b/udapi/block/msf/slavic/present.py @@ -12,12 +12,17 @@ def process_node(self,node): # the condition VerbForm == 'Fin' ensures that there are no transgressives between the found verbs # the aspect is not always given in Czech treebanks, so we can't rely on the fact that the imperfect aspect is specified if node.feats['Tense'] == 'Pres' and node.upos == 'VERB' and node.feats['VerbForm'] == 'Fin': #and node.feats['Aspect']=='Imp': - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] + aux_forb = [x for x in node.children if x.upos == 'AUX' and (x.lemma == 'ќе' or x.lemma == 'ще' or x.feats['Mood'] == 'Cnd')] # forbidden auxiliaries for present tense (these auxiliaries are used for the future tense or the conditional mood) - if len(aux_forb) == 0: - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + if not aux_forb: + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] + + phrase_nodes = [node] + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -28,7 +33,7 @@ def process_node(self,node): aspect=node.feats['Aspect'], voice=self.get_voice(node,refl), form='Fin', - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), reflex=self.get_is_reflex(node,refl), ords=phrase_ords ) @@ -38,12 +43,15 @@ def process_node(self,node): if node.upos == 'ADJ' and node.feats['Voice'] == 'Pass': aux = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] == 'Pres' and x.lemma != 'hteti' and x.lemma != 'htjeti'] aux_forb = [x for x in node.children if x.udeprel == 'aux' and x.feats['Tense'] != 'Pres'] # we don't want the past passive (e. g. 'byl jsem poučen' in Czech) - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - - phrase_ords = [node.ord] + [x.ord for x in aux] + [x.ord for x in neg] - phrase_ords.sort() - if len(aux) > 0 and len(aux_forb) == 0: + if aux and not aux_forb: + phrase_nodes = [node] + aux + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] + phrase_ords.sort() + auxVerb = aux[0] self.write_node_info(node, @@ -54,7 +62,7 @@ def process_node(self,node): aspect=node.feats['Aspect'], form='Fin', voice='Pass', - polarity=self.get_polarity(auxVerb,neg), + polarity=self.get_polarity(phrase_nodes), ords=phrase_ords, gender=node.feats['Gender'], animacy=node.feats['Animacy'] @@ -69,8 +77,12 @@ def process_node(self,node): if not aux_forb and not cop: refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - phrase_ords = [node.ord] + [x.ord for x in refl] + [x.ord for x in neg] + + phrase_nodes = [node] + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -80,22 +92,26 @@ def process_node(self,node): form='Part', voice=self.get_voice(node, refl), reflex=self.get_is_reflex(node, refl), - polarity=self.get_polarity(node,neg), + polarity=self.get_polarity(phrase_nodes), ords=phrase_ords ) return cop = [x for x in node.children if x.udeprel == 'cop' and x.feats['Tense'] == 'Pres'] - aux = [x for x in node.children if x.udeprel == "aux" and x.feats['Mood'] == 'Ind' and x.feats['Tense'] == 'Pres'] aux_forb = [x for x in node.children if x.upos == 'AUX' and x.feats['Tense'] != 'Pres'] # in Serbian this can be a future tense - prep = [x for x in node.children if x.upos == 'ADP'] - neg = [x for x in node.children if x.feats['Polarity'] == 'Neg' and x.upos == 'PART'] - refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] - - if len(cop) > 0 and len(aux_forb) == 0: + + if cop and not aux_forb: + aux = [x for x in node.children if x.udeprel == "aux" and x.feats['Mood'] == 'Ind' and x.feats['Tense'] == 'Pres'] + prep = [x for x in node.children if x.upos == 'ADP'] + refl = [x for x in node.children if x.feats['Reflex'] == 'Yes' and x.udeprel == 'expl'] + + phrase_nodes = [node] + cop + aux + prep + refl + neg = self.get_negative_particles(phrase_nodes) + phrase_nodes += neg + copVerb = cop[0] - phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in aux] + [x.ord for x in prep] + [x.ord for x in neg] + [x.ord for x in refl] + phrase_ords = [x.ord for x in phrase_nodes] phrase_ords.sort() self.write_node_info(node, @@ -107,6 +123,6 @@ def process_node(self,node): form='Fin', voice=self.get_voice(copVerb, refl), reflex=self.get_is_reflex(node, refl), - polarity=self.get_polarity(copVerb,neg), + polarity=self.get_polarity(phrase_nodes), ords=phrase_ords ) From 690281b03466d988d355fbc489e1171f77bfb6e5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Fri, 20 Jun 2025 13:00:30 +0200 Subject: [PATCH 222/233] Minor addition to the tutorial. --- tutorial/udapi-tutorial-dz.odt | Bin 258101 -> 258529 bytes tutorial/udapi-tutorial-dz.pdf | Bin 381708 -> 380779 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/tutorial/udapi-tutorial-dz.odt b/tutorial/udapi-tutorial-dz.odt index 945483c2ba23ed6879fd9565d67a9fd5fcbff3f2..a954e9f3441b094b7fcd37ea1d91b89be93eb12b 100644 GIT binary patch delta 36334 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%0AhR4H7jHHv+>yqXc)u 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 diff --git a/tutorial/udapi-tutorial-dz.pdf b/tutorial/udapi-tutorial-dz.pdf index f220f7c2c5de4ba8682dba33267aadaf086c0b19..913121876c1ad91c7d6405b32b2a1d76b51e0edf 100644 GIT binary patch delta 88799 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%0D93CtAzV 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 From 5122149a994f316451a73468dde6547d6b3740c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lenka=20Krippnerov=C3=A1?= <14723289@cuni.cz> Date: Thu, 26 Jun 2025 20:26:12 +0200 Subject: [PATCH 223/233] Add attribute PhraseExpl. --- udapi/block/msf/phrase.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/udapi/block/msf/phrase.py b/udapi/block/msf/phrase.py index e39fc131..90ea5d2d 100644 --- a/udapi/block/msf/phrase.py +++ b/udapi/block/msf/phrase.py @@ -28,7 +28,8 @@ def process_node(self, node): 'polarity': 'PhrasePolarity', 'gender':'PhraseGender', 'animacy':'PhraseAnimacy', - 'ords':'Phrase' + 'ords':'Phrase', + 'expl':'PhraseExpl', } # a dictionary where the key is the lemma of a negative particle and the value is a list of the lemmas of their possible children that have a 'fixed' relation @@ -68,7 +69,8 @@ def write_node_info(self, node, ords = None, gender = None, animacy = None, - aspect = None): + aspect = None, + expl=None): arguments = locals() del arguments['self'] # delete self and node from arguments, del arguments['node'] # we want only grammatical categories From 7259c8767ec453df9fa45ce8a45243f9bba470ce Mon Sep 17 00:00:00 2001 From: lenka-krippnerova <14723289@cuni.cz> Date: Thu, 26 Jun 2025 22:32:38 +0200 Subject: [PATCH 224/233] Add block for Romance languages (currently only Portuguese) --- udapi/block/msf/romance/romance.py | 523 +++++++++++++++++++++++++++++ 1 file changed, 523 insertions(+) create mode 100644 udapi/block/msf/romance/romance.py diff --git a/udapi/block/msf/romance/romance.py b/udapi/block/msf/romance/romance.py new file mode 100644 index 00000000..dd2393f7 --- /dev/null +++ b/udapi/block/msf/romance/romance.py @@ -0,0 +1,523 @@ + +import udapi.block.msf.phrase +from enum import Enum + +class Aspect(str, Enum): + IMP = 'Imp' + IMPPROG = 'ImpProg' + PERF = 'Perf' + PERFPROG = 'PerfProg' + PROG = 'Prog' + PQP = 'Pqp' + +class Tense(str, Enum): + FUT = 'Fut' + FUTFUT = 'FutFut' + PAST = 'Past' + PASTFUT = 'PastFut' + PASTPRES = 'PastPres' + PRES = 'Pres' + +class Romance(udapi.block.msf.phrase.Phrase): + + def process_node(self, node): + + cop = [x for x in node.children if x.udeprel == 'cop'] + + # only expl or expl:pv, no expl:impers or expl:pass + refl = [x for x in node.children if x.lemma == 'se' and x.upos == 'PRON' and x.udeprel == 'expl' and x.udeprel != 'expl:impers' and x.udeprel != 'expl:pass'] + + if refl: + expl='Pv' + else: + expl=None + + if cop: + auxes = [x for x in node.children if x.udeprel == 'aux'] + if auxes: + self.process_periphrastic_verb_forms(cop[0], auxes, refl, auxes + cop, node) + else: + # no auxiliaries, only cop + self.process_copulas(node,cop,auxes,refl,expl) + return + + if node.upos == 'VERB': + auxes = [x for x in node.children if x.udeprel == 'aux'] + aux_pass = [x for x in node.children if x.deprel == 'aux:pass'] + auxes_without_pass = [x for x in node.children if x.udeprel == 'aux' and x.deprel != 'aux:pass'] + + # infinitive with a subject is a subjunctive + subj = [x for x in node.children if x.udeprel == 'subj'] + if node.feats['VerbForm'] == 'Inf' and subj: + self.write_node_info(node, + person=node.feats['Person'], + number=node.feats['Number'], + mood='Sub', + form='Fin', + tense=Tense.FUT.value, + gender=node.feats['Gender'], + voice=node.feats['Voice'], + expl=expl, + ords=[node.ord] + ) + return + + if not auxes: + phrase_ords = [node.ord] + [r.ord for r in refl] + phrase_ords.sort() + + # presente -> PhraseTense=Pres, PhraseAspect='' + # Futuro do presente -> PhraseTense=Fut, PhraseAspect='' + aspect = '' + tense = node.feats['Tense'] + + if node.feats['Mood'] == 'Ind': + + # pretérito imperfeito -> PhraseTense=Past, PhraseAspect=Imp + if node.feats['Tense'] == 'Imp': + tense=Tense.PAST.value + aspect=Aspect.IMP.value + + # pretérito perfeito -> PhraseTense=Past, PhraseAspect=Perf + if node.feats['Tense'] == 'Past': + aspect=Aspect.PERF.value + + # pretérito mais que perfeito simples -> PhraseTense=Past, PhraseAspect=Pqp + if node.feats['Tense'] == 'Pqp': + tense=Tense.PAST.value + aspect=Aspect.PQP.value + + # subjunctive presente -> PhraseTense=Pres, PhraseAspect='' + # subjunctive futuro -> PhraseTense=Fut, PhraseAspect='' + if node.feats['Mood'] == 'Sub': + + if node.feats['Tense'] == 'Past': + aspect=Aspect.IMP.value + + # subjunctive pretérito imperfeito -> PhraseTense=Past, PhraseAspect=Imp + if node.feats['Tense'] == 'Imp': + tense=Tense.PAST.value + aspect=Aspect.IMP.value + + # Futuro do pretérito (cnd) -> PhraseTense=Pres, PhraseAspect='', PhraseMood=Cnd + if node.feats['Mood'] == 'Cnd': + aspect='' + tense=Tense.PRES.value + + + self.write_node_info(node, + person=node.feats['Person'], + aspect=aspect, + number=node.feats['Number'], + mood=node.feats['Mood'], + form=node.feats['VerbForm'], + tense=tense, + gender=node.feats['Gender'], + voice=node.feats['Voice'], + expl=expl, + ords=phrase_ords + ) + + + else: + # no passive auxiliaries + if not aux_pass: + self.process_periphrastic_verb_forms(node, auxes, refl, auxes, node) + + # head verb has one passive auxiliary and no more other auxiliaries + # TODO complete the tenses and aspects for individual verb forms + elif not auxes_without_pass: + phrase_ords = [node.ord] + [x.ord for x in auxes] + [r.ord for r in refl] + phrase_ords.sort() + + self.write_node_info(node, + person=aux_pass[0].feats['Person'], + number=aux_pass[0].feats['Number'], + mood=aux_pass[0].feats['Mood'], + form='Fin', + tense=aux_pass[0].feats['Tense'], + gender=node.feats['Gender'], + voice='Pass', + expl=expl, + ords=phrase_ords + ) + + # head verb has passive auxiliary and also other auxiliaries + else: + self.process_periphrastic_verb_forms(aux_pass[0], auxes_without_pass, refl, auxes, node) + + + def process_periphrastic_verb_forms(self, node, auxes, refl, all_auxes, head_node): + """ + Parameters + - node: if there is no passive then the node is the head verb, if the head verb is in the passive, then the node is the passive auxiliary + - auxes: list of all auxiliaries except the passive auxes + - refl: list of reflexives which should be included into the periphrastic phrase + - all_auxes: list of all auxiliaries (passive auxes are included) + - head_node: the node which should have the Phrase* attributes, i. e. the head of the phrase + + annotates periphrastic verb forms with the Phrase* attributes + """ + + if refl: + expl='Pv' + else: + expl=None + + if len(auxes) == 1: + # Cnd + if ((auxes[0].lemma == 'ter' and node.feats['VerbForm'] == 'Part') or (auxes[0].lemma == 'estar' and node.feats['VerbForm'] == 'Ger')) and auxes[0].feats['Mood'] == 'Cnd': + phrase_ords = [head_node.ord] + [x.ord for x in all_auxes] + [r.ord for r in refl] + [r.ord for r in refl] + phrase_ords.sort() + + # aux estar cond + gerund -> PhraseTense=Pres, PhraseAspect=Prog, PhraseMood=Cnd + if auxes[0].lemma == 'estar': + tense=Tense.PRES.value + aspect=Aspect.PROG.value + + # Futuro do pretérito composto -> PhraseTense=Past, PhraseAspect=Perf, PhraseMood=Cnd + else: + tense=Tense.PAST.value + aspect=Aspect.PERF.value + + self.write_node_info(head_node, + tense=tense, + number=auxes[0].feats['Number'], + person=auxes[0].feats['Person'], + aspect=aspect, + mood='Cnd', + form='Fin', + expl=expl, + voice=head_node.feats['Voice'], + ords=phrase_ords) + return + + # Auxiliary 'estar' followed by a gerund + if auxes[0].lemma == 'estar' and node.feats['VerbForm'] == 'Ger': + phrase_ords = [head_node.ord] + [x.ord for x in all_auxes] + [r.ord for r in refl] + phrase_ords.sort() + + # pretérito imperfeito (aux estar) -> PhraseTense=Past, PhraseAspect=ImpProg + # subjunctive pretérito imperfeito (aux estar) -> PhraseTense=Past, PhraseAspect=ImpProg, PhraseMood=Sub + if auxes[0].feats['Tense'] == 'Imp': + tense=Tense.PAST.value + aspect=Aspect.IMPPROG.value + + # pretérito perfeito (aux estar) -> PhraseTense=Past, PhraseAspect=PerfProg + elif auxes[0].feats['Tense'] == 'Past': + tense=Tense.PAST.value + aspect=Aspect.PERFPROG.value + + # conditional (aux estar) -> PhraseTense=Pres, PhraseAspect=Prog, PhraseMood=Cnd + elif auxes[0].feats['Mood'] == 'Cnd': + tense=Tense.PRES.value + aspect=Aspect.PROG.value + + # presente (aux estar) -> PhraseTense=Pres, PhraseAspect=Prog + # futuro do presente (aux estar) -> PhraseTense=Fut, PhraseAspect=Prog + # subjunctive presente (aux estar) -> PhraseTense=Pres, PhraseAspect=Prog, PhraseMood=Sub + # subjunctive futuro (aux estar) -> PhraseTense=Fut, PhraseAspect=Prog, PhraseMood=Sub + else: + tense=auxes[0].feats['Tense'] + aspect=Aspect.PROG.value + + self.write_node_info(head_node, + tense=tense, + number=auxes[0].feats['Number'], + person=auxes[0].feats['Person'], + mood=auxes[0].feats['Mood'], + form='Fin', + voice=head_node.feats['Voice'], + aspect=aspect, + expl=expl, + ords=phrase_ords) + + # Auxiliary 'ter' followed by a participle + if auxes[0].lemma == 'ter' and node.feats['VerbForm'] == 'Part': + phrase_ords = [head_node.ord] + [x.ord for x in all_auxes] + [r.ord for r in refl] + phrase_ords.sort() + + # futuro do presente composto (aux ter) -> PhraseTense=Fut, PhraseAspect=Perf + aspect=Aspect.PERF.value + tense=auxes[0].feats['Tense'] + + # pretérito perfeito composto (aux ter) -> PhraseTense=PastPres, PhraseAspect=Perf + # subjonctive pretérito perfeito composto (aux ter) -> PhraseTense=PastPres, PhraseAspect=Perf, PhraseMood=Sub + if auxes[0].feats['Tense'] == 'Pres': + tense=Tense.PASTPRES.value + + # pretérito mais que perfeito composto (aux ter/haver) -> PhraseTense=Past, PhraseAspect=Pqp + # subjonctive pretérito mais-que-perfeito composto (aux ter) -> PhraseTense=Past, PhraseAspect=Pqp, PhraseMood=Sub + elif auxes[0].feats['Tense'] in ['Imp', 'Past']: # TODO prej neni v Past, jenom Imp + tense=Tense.PAST.value + aspect=Aspect.PQP.value + + self.write_node_info(head_node, + tense=tense, + number=auxes[0].feats['Number'], + person=auxes[0].feats['Person'], + mood=auxes[0].feats['Mood'], + aspect=aspect, + form='Fin', + voice=head_node.feats['Voice'], + expl=expl, + ords=phrase_ords) + + if auxes[0].lemma == 'haver' and auxes[0].feats['Tense'] == 'Imp' and node.feats['VerbForm'] == 'Part': + phrase_ords = [head_node.ord] + [x.ord for x in all_auxes] + [r.ord for r in refl] + phrase_ords.sort() + + self.write_node_info(head_node, + tense=Tense.PAST.value, + aspect=Aspect.PERF.value, + number=auxes[0].feats['Number'], + person=auxes[0].feats['Person'], + mood=auxes[0].feats['Mood'], + form='Fin', + voice=head_node.feats['Voice'], + expl=expl, + ords=phrase_ords) + + if auxes[0].lemma == 'vir' and auxes[0].feats['Tense'] in ['Pres', 'Imp', 'Past'] and node.feats['VerbForm'] == 'Ger': + phrase_ords = [head_node.ord] + [x.ord for x in all_auxes] + [r.ord for r in refl] + phrase_ords.sort() + + # aux Pres (vir) + gerund -> PhraseTense=PastPres, PraseAspect=Prog + if auxes[0].feats['Tense'] == 'Pres': + tense=Tense.PASTPRES.value + + + elif auxes[0].feats['Tense'] in ['Imp', 'Past']: + tense=Tense.PAST.value + + self.write_node_info(head_node, + tense=tense, + number=auxes[0].feats['Number'], + person=auxes[0].feats['Person'], + mood=auxes[0].feats['Mood'], + form='Fin', + aspect=Aspect.PROG.value, + voice=head_node.feats['Voice'], + expl=expl, + ords=phrase_ords) + + + # auxiliary 'ir' followed by infinitive + if auxes[0].lemma == 'ir' and node.feats['VerbForm'] == 'Inf': + phrase_ords = [head_node.ord] + [x.ord for x in all_auxes] + [r.ord for r in refl] + phrase_ords.sort() + + tense=node.feats['Tense'] + aspect='' + + # Futuro perifrástico -> PhraseTense=Fut, PhraseAspect='' + if auxes[0].feats['Tense'] == 'Pres': + tense=Tense.FUT.value + aspect='' + + # Futuro perifrástico passado imp -> PhraseTense=PastFut, PhraseAspect=Imp + elif auxes[0].feats['Tense'] == 'Imp': + tense=Tense.PASTFUT.value + aspect=Aspect.IMP.value + + # Futuro perifrástico in the future -> PhraseTense=FutFut, PhraseAspect='' + elif auxes[0].feats['Tense'] == 'Fut': + tense=Tense.FUTFUT.value + aspect='' + + # Futuro perifrástico passado perf -> PhraseTense=PastFut, PhraseAspect=Perf + elif auxes[0].feats['Tense'] == 'Past': + tense=Tense.PASTFUT.value + aspect=Aspect.PERF.value + + + + self.write_node_info(head_node, + tense=tense, + aspect=aspect, + number=auxes[0].feats['Number'], + person=auxes[0].feats['Person'], + mood=auxes[0].feats['Mood'], + form='Fin', + voice=head_node.feats['Voice'], + expl=expl, + ords=phrase_ords) + + if auxes[0].lemma == 'ir' and node.feats['VerbForm'] == 'Ger': + phrase_ords = [head_node.ord] + [x.ord for x in all_auxes] + [r.ord for r in refl] + phrase_ords.sort() + + # aux Pres (ir) + gerund -> PhraseTense=Pres, PhraseAspect=Prog + tense = auxes[0].feats['Tense'] + aspect = Aspect.PROG.value + + # aux Imp (ir) + gerund -> PhraseTense=Past, PhraseAspect=Prog + if auxes[0].feats['Tense'] == 'Imp': + tense=Tense.PAST.value + aspect=Aspect.PROG.value + + self.write_node_info(head_node, + tense=tense, + number=auxes[0].feats['Number'], + person=auxes[0].feats['Person'], + mood=auxes[0].feats['Mood'], + aspect=aspect, + form='Fin', + voice=head_node.feats['Voice'], + expl=expl, + ords=phrase_ords) + + elif len(auxes) == 2: + # auxiliry 'ir' followed by auxiliary 'estar' in infinitive and a gerund + if auxes[0].lemma == 'ir' and auxes[1].lemma == 'estar' and node.feats['VerbForm'] == 'Ger': + phrase_ords = [head_node.ord] + [x.ord for x in all_auxes] + [r.ord for r in refl] + phrase_ords.sort() + + # Futuro perifrástico -> PhraseTense=Fut, PhraseAspect=Prog + if auxes[0].feats['Tense'] == 'Pres': + tense=Tense.FUT.value + aspect=Aspect.PROG.value + + # Futuro perifrástico passado imp -> PhraseTense=PastFut, PhraseAspect=ImpProg + if auxes[0].feats['Tense'] == 'Imp': + tense=Tense.PASTFUT.value + aspect=Aspect.IMPPROG.value + + # Futuro perifrástico in the future -> PhraseTense=FutFut, PhraseAspect=Prog + if auxes[0].feats['Tense'] == 'Fut': + tense=Tense.FUTFUT.value + aspect=Aspect.PROG.value + + if auxes[0].feats['Tense'] == 'Past': + tense=Tense.PASTFUT.value + aspect=Aspect.PERFPROG.value + + self.write_node_info(head_node, + tense=tense, + number=auxes[0].feats['Number'], + person=auxes[0].feats['Person'], + mood=auxes[0].feats['Mood'], + form='Fin', + aspect=aspect, + voice=head_node.feats['Voice'], + expl=expl, + ords=phrase_ords) + + # auxiliriy 'ir' in present or future tense followed by auxiliary 'ter' in infinitive and a participle + if auxes[0].lemma == 'ir' and (auxes[0].feats['Tense'] in ['Pres', 'Fut']) and auxes[1].lemma == 'ter' and node.feats['VerbForm'] == 'Part': + phrase_ords = [head_node.ord] + [x.ord for x in all_auxes] + [r.ord for r in refl] + phrase_ords.sort() + + # Futuro perifrástico -> PhraseTense=FutFut, PhraseAspect=Perf + if auxes[0].feats['Tense'] == 'Fut': + tense=Tense.FUTFUT.value + aspect=Aspect.PERF.value + + # aux Pres (ir) + aux ter inf + pp -> PhraseTense=Fut, PhraseAspect=Perf + if auxes[0].feats['Tense'] == 'Pres': + tense=Tense.FUT.value + aspect=Aspect.PERF.value + + self.write_node_info(head_node, + tense=tense, + number=auxes[0].feats['Number'], + person=auxes[0].feats['Person'], + mood=auxes[0].feats['Mood'], + aspect=aspect, + form='Fin', + voice=head_node.feats['Voice'], + expl=expl, + ords=phrase_ords) + + + + # Cnd (only ter), Sub and Past,Pres,Fut tenses: 2 auxes - ter + estar + if auxes[0].lemma in ['ter', 'haver'] and auxes[1].lemma == 'estar' and node.feats['VerbForm'] == 'Ger': + phrase_ords = [head_node.ord] + [x.ord for x in all_auxes] + [r.ord for r in refl] + phrase_ords.sort() + + tense = auxes[0].feats['Tense'] + aspect = Aspect.PERFPROG.value + + # aux ter cond + estar pp + gerund -> PhraseTense=Past, PhraseAspect=Prog, PhraseMood=Cnd + if auxes[0].feats['Mood'] == 'Cnd': + tense=Tense.PAST.value + aspect=Aspect.PROG.value + + # Pretérito perfeito composto -> PhraseTense=PastPres, PhraseAspect=PerfProg + # subjonctive Pretérito perfeito composto -> PhraseTense=PastPres, PhraseAspect=PerfProg, PhraseMood=Sub + elif auxes[0].feats['Tense'] == 'Pres': + tense=Tense.PASTPRES.value + + # Pretérito mais que perfeito composto -> PhraseTense=Past, PhraseAspect=ImpProg + # subjonctive Pretérito mais que perfeito composto -> PhraseTense=Past, PhraseAspect=ImpProg, PhraseMood=Sub + elif auxes[0].feats['Tense'] in ['Imp', 'Past']: + tense=Tense.PAST.value + aspect=Aspect.IMPPROG.value + + # Futuro do presente composto -> PhraseTense=Fut, PhraseAspect=PerfProg + elif auxes[0].feats['Tense'] == 'Fut' and auxes[0].lemma == 'ter': + tense=Tense.FUT.value + + self.write_node_info(head_node, + tense=tense, + number=auxes[0].feats['Number'], + person=auxes[0].feats['Person'], + mood=auxes[0].feats['Mood'], + form='Fin', + aspect=aspect, + voice=head_node.feats['Voice'], + expl=expl, + ords=phrase_ords, + ) + return + + def process_copulas(self, node, cop, auxes, refl, expl): + + if not auxes: + tense = cop[0].feats['Tense'] + number=cop[0].feats['Number'] + person=cop[0].feats['Person'] + mood=cop[0].feats['Mood'] + + if cop[0].feats['Tense'] in ['Pres', 'Fut']: + if cop[0].lemma == 'ser': + aspect=Aspect.PERF.value + elif cop[0].lemma == 'estar': + aspect=Aspect.IMP.value + + elif cop[0].feats['Tense'] == 'Imp': + tense=Tense.PAST.value + aspect=Aspect.IMP.value + + elif cop[0].feats['Tense'] == 'Past': + aspect=Aspect.PERF.value + else: + # i.e. copulas in infinitive + aspect='' + + else: + tense = auxes[0].feats['Tense'] + number=auxes[0].feats['Number'] + person=auxes[0].feats['Person'] + mood=auxes[0].feats['Mood'] + aspect='' + + + if auxes[0].lemma == 'estar': + aspect=Aspect.IMPPROG.value + + phrase_ords = [node.ord] + [x.ord for x in cop] + [x.ord for x in auxes] + [r.ord for r in refl] + phrase_ords.sort() + + self.write_node_info(node, + tense=tense, + number=number, + person=person, + mood=mood, + form='Fin', + aspect=aspect, + voice=node.feats['Voice'], + expl=expl, + ords=phrase_ords, + ) From 3f80400830fa4479ecdf4bdb427797f28bf11720 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 1 Jul 2025 15:42:38 +0200 Subject: [PATCH 225/233] Fix verbal "fixed" expressions in Romanian. --- udapi/block/ud/ro/fixfixed.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 udapi/block/ud/ro/fixfixed.py diff --git a/udapi/block/ud/ro/fixfixed.py b/udapi/block/ud/ro/fixfixed.py new file mode 100644 index 00000000..b8309ad9 --- /dev/null +++ b/udapi/block/ud/ro/fixfixed.py @@ -0,0 +1,24 @@ +"""Block ud.ro.FixFixed + +Author: Dan Zeman +""" +import logging + +from udapi.core.block import Block + + +class FixFixed(Block): + """Block for fixing verbal 'fixed' expressions.""" + + def process_node(self, node): + if node.upos=='VERB': + fixchildren = [x for x in node.children if x.udeprel=='fixed'] + nfc = len(fixchildren) + if nfc==1 and fixchildren[0].upos == 'NOUN': + fixchildren[0].deprel = 'obj' + elif nfc==2 and fixchildren[1].upos == 'NOUN': + fixchildren[0].parent = fixchildren[1] + fixchildren[0].deprel = 'case' + fixchildren[1].deprel = 'obl' + elif nfc>0: + logging.info('Another case: '+node.lemma+' '+' '.join([x.form for x in fixchildren])) From 12c96924eb5168897bdd452ef3eb85ebc41cfcc8 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 1 Jul 2025 16:08:56 +0200 Subject: [PATCH 226/233] New fixed expr --- udapi/block/ud/ro/fixfixed.py | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/udapi/block/ud/ro/fixfixed.py b/udapi/block/ud/ro/fixfixed.py index b8309ad9..9e285684 100644 --- a/udapi/block/ud/ro/fixfixed.py +++ b/udapi/block/ud/ro/fixfixed.py @@ -11,14 +11,9 @@ class FixFixed(Block): """Block for fixing verbal 'fixed' expressions.""" def process_node(self, node): - if node.upos=='VERB': - fixchildren = [x for x in node.children if x.udeprel=='fixed'] - nfc = len(fixchildren) - if nfc==1 and fixchildren[0].upos == 'NOUN': - fixchildren[0].deprel = 'obj' - elif nfc==2 and fixchildren[1].upos == 'NOUN': - fixchildren[0].parent = fixchildren[1] - fixchildren[0].deprel = 'case' - fixchildren[1].deprel = 'obl' - elif nfc>0: - logging.info('Another case: '+node.lemma+' '+' '.join([x.form for x in fixchildren])) + fixchildren = [x for x in node.children if x.udeprel=='fixed'] + nfc = len(fixchildren) + if nfc>0 and node.udeprel=="advmod": + node.feats['ExtPos'] = 'ADV' + #elif nfc>0: + # logging.info('Another case: '+node.lemma+' '+' '.join([x.form for x in fixchildren])) From 5b19027f33d17286377b2eb381e33cbcd44b5e5b Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Tue, 1 Jul 2025 16:26:12 +0200 Subject: [PATCH 227/233] Romanian fixed expressions. --- udapi/block/ud/ro/fixfixed.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/udapi/block/ud/ro/fixfixed.py b/udapi/block/ud/ro/fixfixed.py index 9e285684..14d16464 100644 --- a/udapi/block/ud/ro/fixfixed.py +++ b/udapi/block/ud/ro/fixfixed.py @@ -8,12 +8,13 @@ class FixFixed(Block): - """Block for fixing verbal 'fixed' expressions.""" + """Block for fixing annotation of some 'fixed' expressions.""" def process_node(self, node): fixchildren = [x for x in node.children if x.udeprel=='fixed'] nfc = len(fixchildren) - if nfc>0 and node.udeprel=="advmod": - node.feats['ExtPos'] = 'ADV' - #elif nfc>0: - # logging.info('Another case: '+node.lemma+' '+' '.join([x.form for x in fixchildren])) + if nfc > 0: + if node.udeprel == 'advmod' and node.feats['ExtPos'] == '': + node.feats['ExtPos'] = 'ADV' + elif node.feats['ExtPos'] == '': + logging.info('Another case: '+node.lemma+' '+' '.join([x.form for x in fixchildren])) From 0bfdccb3ad64c3af2b72affb03769dcad560ccf5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Wed, 2 Jul 2025 22:21:48 +0200 Subject: [PATCH 228/233] Czech features. --- udapi/block/ud/cs/markfeatsbugs.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 6c3672ac..5a61d1c3 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -646,6 +646,15 @@ def process_node(self, node): 'VerbForm': ['Fin'], 'Mood': ['Cnd'] }) + elif node.form.lower() == 'byšta': + self.check_required_features(node, ['Mood', 'Person', 'Number']) + self.check_allowed_features(node, { + 'Aspect': ['Imp'], + 'VerbForm': ['Fin'], + 'Mood': ['Cnd'], + 'Person': ['2', '3'], + 'Number': ['Dual'] + }) else: self.check_required_features(node, ['Mood', 'Person', 'Number']) self.check_allowed_features(node, { @@ -798,7 +807,8 @@ def process_node(self, node): self.check_allowed_features(node, { 'Degree': ['Pos', 'Cmp', 'Sup'], 'Polarity': ['Pos', 'Neg'], - 'Emph': ['Yes'] + 'Emph': ['Yes'], + 'Abbr': ['Yes'] }) # ADPOSITIONS ########################################################## elif node.upos == 'ADP': From 0370f2b5c2fd6c3390dd94fc986738733838dc3a Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 3 Jul 2025 13:31:06 +0200 Subject: [PATCH 229/233] Allow empty aspect for participles of biaspectual verbs. --- udapi/block/ud/cs/markfeatsbugs.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 5a61d1c3..1e889154 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -129,7 +129,8 @@ def process_node(self, node): self.check_required_features(node, ['VerbForm', 'Voice']) if node.feats['Voice'] == 'Act': # active participles have tense, passives don't but they have degree if node.feats['Gender'] == 'Masc': - self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Tense', 'Gender', 'Animacy', 'Number', 'Case', 'Polarity']) + # Aspect is not required in general because it is omitted for participles of biaspectual verbs (e.g. 'analyzující'). + self.check_required_features(node, ['VerbForm', 'Voice', 'Tense', 'Gender', 'Animacy', 'Number', 'Case', 'Polarity']) self.check_allowed_features(node, { 'VerbForm': ['Part'], 'Aspect': ['Imp', 'Perf'], @@ -144,7 +145,8 @@ def process_node(self, node): 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: - self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Tense', 'Gender', 'Number', 'Case', 'Polarity']) + # Aspect is not required in general because it is omitted for participles of biaspectual verbs (e.g. 'analyzující'). + self.check_required_features(node, ['VerbForm', 'Voice', 'Tense', 'Gender', 'Number', 'Case', 'Polarity']) self.check_allowed_features(node, { 'VerbForm': ['Part'], 'Aspect': ['Imp', 'Perf'], @@ -159,7 +161,8 @@ def process_node(self, node): 'Foreign': ['Yes']}) else: if node.feats['Gender'] == 'Masc': - self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Gender', 'Animacy', 'Number', 'Case', 'Polarity', 'Degree']) + # Aspect is not required in general because it is omitted for participles of biaspectual verbs (e.g. 'analyzovaný'). + self.check_required_features(node, ['VerbForm', 'Voice', 'Gender', 'Animacy', 'Number', 'Case', 'Polarity', 'Degree']) self.check_allowed_features(node, { 'VerbForm': ['Part'], 'Aspect': ['Imp', 'Perf'], @@ -174,7 +177,8 @@ def process_node(self, node): 'Emph': ['Yes'], 'Foreign': ['Yes']}) else: - self.check_required_features(node, ['VerbForm', 'Aspect', 'Voice', 'Gender', 'Number', 'Case', 'Polarity', 'Degree']) + # Aspect is not required in general because it is omitted for participles of biaspectual verbs (e.g. 'analyzovaný'). + self.check_required_features(node, ['VerbForm', 'Voice', 'Gender', 'Number', 'Case', 'Polarity', 'Degree']) self.check_allowed_features(node, { 'VerbForm': ['Part'], 'Aspect': ['Imp', 'Perf'], From 7d531c08796e692cc4b19e3cb85497266dbd57e5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 3 Jul 2025 15:27:47 +0200 Subject: [PATCH 230/233] =?UTF-8?q?Variant=3DShort=20pro=20"ve=C5=A1keren"?= =?UTF-8?q?.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- udapi/block/ud/cs/markfeatsbugs.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/udapi/block/ud/cs/markfeatsbugs.py b/udapi/block/ud/cs/markfeatsbugs.py index 1e889154..17570ee2 100644 --- a/udapi/block/ud/cs/markfeatsbugs.py +++ b/udapi/block/ud/cs/markfeatsbugs.py @@ -513,6 +513,9 @@ def process_node(self, node): # However, in New Czech data the one lemma is "samý" while in Old Czech data it is "sám". # Unlike other determiners, it allows Variant=Short: sám, sama, samu, samo, sami, samy. self.check_adjective_like(node, ['PronType'], {'PronType': ['Emp'], 'Variant': ['Short']}) + elif node.lemma == 'veškerý': + # In Old Czech, this determiner also allows Variant=Short: veškeren, veškera, veškeru, veškero, veškeři, veškery. + self.check_adjective_like(node, ['PronType'], {'PronType': ['Tot'], 'Variant': ['Short']}) elif node.lemma == 'žádný': # In Old Czech, this determiner also allows Variant=Short: žáden, žádna, žádnu, žádno, žádni, žádny. self.check_adjective_like(node, ['PronType'], {'PronType': ['Neg'], 'Variant': ['Short']}) From 4b0c5cdc987d8c05ace505512587675592165527 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 3 Jul 2025 17:41:51 +0200 Subject: [PATCH 231/233] A new block to split a token marked as erroneous. --- udapi/block/ud/splittoken.py | 107 +++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 udapi/block/ud/splittoken.py diff --git a/udapi/block/ud/splittoken.py b/udapi/block/ud/splittoken.py new file mode 100644 index 00000000..16c60a38 --- /dev/null +++ b/udapi/block/ud/splittoken.py @@ -0,0 +1,107 @@ +""" +Block ud.SplitToken will split a given token into multiple tokens. +""" +from udapi.core.block import Block +import re +import logging + + +class SplitToken(Block): + """ + Split a token into two or more. A MISC attribute is used to mark the tokens + that should be split. (The attribute may have been set by an annotator or + by a previous block that tests the specific conditions under which splitting + is desired.) Multiword tokens are currently not supported: The node to be + split cannot belong to a MWT. Note that the result will not be a MWT either + (use the block ud.AddMwt if that is desired). There will be simply a new + attribute SpaceAfter=No, possibly accompanied by CorrectSpaceAfter=Yes + (indicating that this was an error in the source text). + """ + + def __init__(self, misc_name='SplitToken', **kwargs): + """ + Args: + misc_name: name of the MISC attribute that can trigger the splitting + default: SplitToken + The value of the attribute should indicate where to split the token. + It should be a string that is identical to node.form except that + there is one or more spaces where the token should be split. + """ + super().__init__(**kwargs) + self.misc_name = misc_name + + def process_node(self, node): + """ + The SplitToken (or equivalent) attribute in MISC will trigger action. + Either the current node will be split to multiple nodes and the + attribute will be removed from MISC, or a warning will be issued that + the splitting cannot be done and the attribute will stay in MISC. Note + that multiword token lines and empty nodes are not even scanned for + the attribute, so if it is there, it will stay there but no warning + will be printed. + """ + value = node.misc[self.misc_name] + if value == '': + return + if node.multiword_token: + logging.warning(f"MISC {self.misc_name} cannot be used if the node belongs to a multiword token.") + node.misc['Bug'] = 'SplittingTokenNotSupportedHere' + return + ###!!! This block currently must not be applied on data containing + ###!!! enhanced dependencies. We must first implement adjustments of + ###!!! the enhanced structure. + if node.deps: + logging.fatal('At present this block cannot be applied to data with enhanced dependencies.') + # Verify that the value of the MISC attribute can be used as specification + # of the split. + if re.match(r'^\s', value) or re.search(r'\s$', value) or re.search(r'\s\s', value): + logging.warning(f"MISC {self.misc_name} is '{value}'; leading spaces, trailing spaces or multiple consecutive spaces are not allowed.") + node.misc['Bug'] = f'{self.misc_name}BadValue' + return + if re.search(r'\s', node.form): + logging.warning(f"MISC {self.misc_name} cannot be used with nodes whose forms contain a space (here '{node.form}').") + node.misc['Bug'] = 'SplittingTokenNotSupportedHere' + return + if re.sub(r' ', '', value) != node.form: + logging.warning(f"MISC {self.misc_name} value '{value}' does not match the word form '{node.form}'.") + node.misc['Bug'] = f'{self.misc_name}BadValue' + return + # Do the split. + space_after = node.misc['SpaceAfter'] + forms = value.split(' ') + # Optionally, SplitTokenMorpho in MISC can have the morphological annotation + # of the new tokens. For example: + # SplitTokenMorpho=LEMMA=popisovat\tUPOS=VERB\tFEATS=Aspect=Imp\\pMood=Ind\\pNumber=Sing\\pPerson=3\\pPolarity=Pos\\pTense=Pres\\pVerbForm=Fin\\pVoice=Act + if node.misc['SplitTokenMorpho'] != '': + morphoblocks = [''] + node.misc['SplitTokenMorpho'].split(' ') + del node.misc['SplitTokenMorpho'] + else: + morphoblocks = ['' for x in forms] + node.form = forms[0] + last_node = node + for form, morpho in zip(forms[1:], morphoblocks[1:]): + last_node.misc['SpaceAfter'] = 'No' + last_node.misc['CorrectSpaceAfter'] = 'Yes' + lemma = form + upos = node.upos + feats = str(node.feats) + xpos = node.xpos + if morpho != '': + cols = morpho.split('\\t') + for c in cols: + colname, value = c.split('=', 1) + if colname == 'LEMMA': + lemma = value + elif colname == 'UPOS': + upos = value + elif colname == 'FEATS': + feats = re.sub(r'\\p', '|', value) + elif colname == 'XPOS': + xpos = value + else: + logging.fatal(f"c = {c}") + new_node = node.create_child(form=form, lemma=lemma, upos=upos, feats=feats, xpos=xpos, deprel='dep') + new_node.shift_after_node(last_node) + last_node = new_node + last_node.misc['SpaceAfter'] = space_after + del node.misc[self.misc_name] From 057d4830bdd91d0458f78c292d27bad4e1030f3c Mon Sep 17 00:00:00 2001 From: Martin Popel Date: Tue, 29 Jul 2025 13:17:28 +0200 Subject: [PATCH 232/233] add root.prev_tree and root.next_tree --- udapi/core/root.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/udapi/core/root.py b/udapi/core/root.py index abf36a74..d5e0f4a8 100644 --- a/udapi/core/root.py +++ b/udapi/core/root.py @@ -314,3 +314,25 @@ def flatten(self, deprel='root'): for node in self._children: node._parent = self node._children.clear() + + @property + def prev_tree(self): + """Return the previous tree (root) in the document (from the same zone).""" + doc = self._bundle._document + num = self._bundle.number + if len(doc.bundles) <= num - 1 or doc.bundles[num - 1] is not self._bundle: + num = doc.bundles.index(self._bundle) + 1 + if num == 1: + return None + return doc.bundles[num - 2].get_tree(zone=self._zone) + + @property + def next_tree(self): + """Return the next tree (root) in the document (from the same zone).""" + doc = self._bundle._document + num = self._bundle.number + if len(doc.bundles) <= num - 1 or doc.bundles[num - 1] is not self._bundle: + num = doc.bundles.index(self._bundle) + 1 + if len(doc.bundles) <= num: + return None + return doc.bundles[num].get_tree(zone=self._zone) From cecb9ebd1fb29fa4f8ea034f05f873fecc3830a5 Mon Sep 17 00:00:00 2001 From: Dan Zeman Date: Thu, 14 Aug 2025 09:39:35 +0200 Subject: [PATCH 233/233] Fixes #131. --- udapi/block/ud/markbugs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/udapi/block/ud/markbugs.py b/udapi/block/ud/markbugs.py index 959b484e..ee58084a 100644 --- a/udapi/block/ud/markbugs.py +++ b/udapi/block/ud/markbugs.py @@ -118,7 +118,7 @@ def process_node(self, node): if upos == i_upos and not feats[i_feat]: # Some languages do not distinguish finite and non-finite forms of verbs. # The VerbForm feature is not obligatory in those languages. - if i_feat != 'VerbForm' or not node.root.zone.split('_')[0] in {'id', 'jv', 'tl', 'hil', 'ifb'}: + if i_feat != 'VerbForm' or not node.root.zone.split('_')[0] in {'id', 'jv', 'tl', 'hil', 'ifb', 'naq'}: self.log(node, 'no-' + i_feat, 'upos=%s but %s feature is missing' % (upos, i_feat)) if feats['VerbForm'] == 'Fin':