diff --git a/importer/Argument.py b/importer/Argument.py index 7cf48ffc285732c834bd66eb252c83a5a53488a8..5b09f2a77a201feb9591db9b4d85953a8f7da2f8 100644 --- a/importer/Argument.py +++ b/importer/Argument.py @@ -73,8 +73,11 @@ class SelectionalPreference: def store(self, frame, argument): if self._type == 'predef': - pref = PredefinedSelectionalPreference.objects.get(name=self._value) - argument.predefined.add(pref) + pref = PredefinedSelectionalPreference.objects.filter(name=self._value) + if len(pref) > 0: + argument.predefined.add(pref[0]) + else: + print('PredefinedSelectionalPreference not found: {}', self._value) elif self._type == 'synset': pref = Synset.objects.get(id=self._value) argument.synsets.add(pref) diff --git a/importer/Example.py b/importer/Example.py index 4623bd121547d37e0b4cf52ab584fb45156770d3..73dd243fd4d047bcc1b8b877cd3e7234faa87881 100644 --- a/importer/Example.py +++ b/importer/Example.py @@ -29,7 +29,7 @@ class Example: eid = int(example_tree._attrs['xml:id'].split('.')[1].split('-')[0]) if len(example_tree._children) == 6: # both meaning and note - meaning = example_tree._children[0]._children[0]._attrs['sameAs'][1:] + meaning = int(example_tree._children[0]._children[0]._attrs['sameAs'][1:].split("_")[1].split("-")[0]) sentence = clean_sentence(example_tree._children[2]._children[0]._content) illustrated_syntax = IllustratesSyntax.fromTree(example_tree._children[1], phrases, base, sentence, out_file) illustrated_semantics = IllustratesSemantics.interfere(sentence, base, meaning, illustrated_syntax, entry_semantics, meanings, eid, in_data, out_file, misconnected) @@ -38,7 +38,7 @@ class Example: note = example_tree._children[5]._children[0]._content elif len(example_tree._children) == 5 and example_tree._children[0]._attrs['name'] == 'meaning': # meaning and no note - meaning = example_tree._children[0]._children[0]._attrs['sameAs'][1:] + meaning = int(example_tree._children[0]._children[0]._attrs['sameAs'][1:].split("_")[1].split("-")[0]) sentence = clean_sentence(example_tree._children[2]._children[0]._content) illustrated_syntax = IllustratesSyntax.fromTree(example_tree._children[1], phrases, base, sentence, out_file) illustrated_semantics = IllustratesSemantics.interfere(sentence, base, meaning, illustrated_syntax, entry_semantics, meanings, eid, in_data, out_file, misconnected) diff --git a/importer/Frame.py b/importer/Frame.py index ee6f94ba2854b58bdefc78309323951fbed08bb4..bdf3ddf04536a054ada395d7bb61db95eecd2cc5 100644 --- a/importer/Frame.py +++ b/importer/Frame.py @@ -31,7 +31,7 @@ class Frame: opinion = frame_tree._children[0]._children[0]._attrs['value'] if opinion == 'unk': opinion = 'cer' - meanings = [meaning._attrs['sameAs'][1:] for meaning in frame_tree._children[1]._children[0]._children] + meanings = [int(meaning._attrs['sameAs'][1:].split("_")[1].split("-")[0]) for meaning in frame_tree._children[1]._children[0]._children] for argument_tree in frame_tree._children[2]._children[0]._children: argument = Argument.fromTree(argument_tree) arguments[argument.getId()] = argument diff --git a/importer/Meanings.py b/importer/Meanings.py index 5cb7b874ba5c901ad9b96eed0cf6e7b4ce71762f..77ecb743164b5cf8614f42734c358f286c028579 100644 --- a/importer/Meanings.py +++ b/importer/Meanings.py @@ -17,7 +17,7 @@ class Meaning: @classmethod def fromTree(cls, meaning_tree): - id = meaning_tree._attrs['xml:id'] + id = int(meaning_tree._attrs['xml:id'].split("_")[1].split("-")[0]) name = meaning_tree._children[0]._children[0]._content variant = meaning_tree._children[1]._children[0]._content luid = int(meaning_tree._children[2]._children[0]._attrs['value']) @@ -37,7 +37,9 @@ class Meaning: def save(self, pos): synset = Synset(id=self._sid) synset.save() - unit = LexicalUnit(entry=None, + unit = LexicalUnit( + pk=self._id, + entry=None, base=self._name, sense=self._variant, pos=pos, diff --git a/importer/WalentyPreprocessXML.py b/importer/WalentyPreprocessXML.py index f3b0c6139320db563518a52a1bc6603443e60ef6..fb0b8a20e821988eb34c611965b2e326eca8775f 100644 --- a/importer/WalentyPreprocessXML.py +++ b/importer/WalentyPreprocessXML.py @@ -93,7 +93,7 @@ class WalentyPreprocessTeiHandler(handler.ContentHandler): if changed: lu.save() else: - print(' new lu: {}-{}'.format(meaning._name, meaning._variant)) + print(' new lu: {}-{}-{}-{}'.format(meaning._id, meaning._name, meaning._variant, pos)) meaning.save(pos) print("Stored") diff --git a/syntax/management/commands/add_predefined_preferences.py b/syntax/management/commands/add_predefined_preferences.py index d9b06b43026802e7c0c2490a9c72fbfa638247a1..f8fd1b8732b9c3f03fcf9d76e2c5227011986b4f 100644 --- a/syntax/management/commands/add_predefined_preferences.py +++ b/syntax/management/commands/add_predefined_preferences.py @@ -223,7 +223,7 @@ def create_predefined_preferences(): czemu_members.generals.add(cecha) czemu_members.generals.add(sytuacja) czemu_members.generals.add(ludzie) - czemu, xx = PredefinedSelectionalPreference.objects.get_or_create(name='CZEM', + czemu, xx = PredefinedSelectionalPreference.objects.get_or_create(name='CZEMU', members=czemu_members) # ILOŚĆ: ilość-1, rozmiar-1, rozmiar-2, jednostka-4, wielkość-6 diff --git a/syntax/management/commands/import_tei.py b/syntax/management/commands/import_tei.py index 2962e08f0a48a0662320ae806ec81a95e0f7db15..98c3916ef81b62dfd8daa8fd9b243b0ca9d74b64 100644 --- a/syntax/management/commands/import_tei.py +++ b/syntax/management/commands/import_tei.py @@ -34,8 +34,8 @@ def import_tei(): logging.basicConfig(filename='import.log', level=logging.DEBUG) #xml_file = os.path.join(BASE_DIR, 'data', 'walenty', 'walenty_20200926_smaller.xml') - # xml_file = os.path.join(BASE_DIR, 'data', 'walenty', 'walenty_20210913_smaller.xml') - xml_file = os.path.join(BASE_DIR, 'data', 'walenty', 'walenty_20210913_smallest.xml') + xml_file = os.path.join(BASE_DIR, 'data', 'walenty', 'walenty_20210913_smaller.xml') + # xml_file = os.path.join(BASE_DIR, 'data', 'walenty', 'walenty_20210913_smallest.xml') xml_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), xml_file) diff --git a/unifier/views.py b/unifier/views.py index 0b3fbd11348f36fb5df68c33baedea9b8ff10e4e..abe7ec806c877b0c05be7c3ccae0d4eed388b691 100644 --- a/unifier/views.py +++ b/unifier/views.py @@ -388,3 +388,19 @@ def change_unified_frame_status_to_ready(request): unifiedFrame.save() return JsonResponse({}) + +@ajax_required +@transaction.atomic +def create_simple_unified_frame(request): + if request.method == 'POST': + lu_id = request.POST['lu_id'] + # unifiedFrame = UnifiedFrame.objects.get(pk=unified_frame_id) + # unifiedFrame.status = choices.UnifiedFrameStatus.READY + # + # for mapping in unifiedFrame.unified_frame_2_slowal_frame.all(): + # mapping.verified = True + # mapping.save() + # + # unifiedFrame.save() + return JsonResponse({}) +