From 9998df4571e768532a6920f9574708130906cb2d Mon Sep 17 00:00:00 2001 From: dcz <dcz@ipipan.waw.pl> Date: Wed, 19 Jul 2023 14:13:57 +0200 Subject: [PATCH] Ignore non existing slowal frames --- importer/unification/UnifiedFrameImport.py | 34 +++++++++++----------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/importer/unification/UnifiedFrameImport.py b/importer/unification/UnifiedFrameImport.py index f1e392d..16b3cd3 100644 --- a/importer/unification/UnifiedFrameImport.py +++ b/importer/unification/UnifiedFrameImport.py @@ -54,25 +54,25 @@ class UnifiedFrameImport: def storeSlowalFrame(cls, tree, unifiedFrame, argumentIdsMapping): slowal_frame_id = tree._attrs['id'] - users = Frame.objects.filter(pk=slowal_frame_id) - if not users.exists(): + frames = Frame.objects.filter(pk=slowal_frame_id) + if frames.exists(): + unifiedFrame2SlowalFrameMapping = UnifiedFrame2SlowalFrameMapping(unified_frame=unifiedFrame, + slowal_frame_id=slowal_frame_id) + unifiedFrame2SlowalFrameMapping.save() + + for subtree in tree._children: + if subtree._name == 'argument_connections': + for subsubtree in subtree._children: + if subsubtree._name == 'argument_connection': + unifier_argument_id = subsubtree._attrs['unifier_argument_id'] + slowal_id = subsubtree._attrs['slowal_id'] + unifiedFrameArgumentSlowalFrameMapping = UnifiedFrameArgumentSlowalFrameMapping(unified_frame_mapping=unifiedFrame2SlowalFrameMapping, + unified_agrument_id=argumentIdsMapping[unifier_argument_id], + slowal_agrument_id=slowal_id) + unifiedFrameArgumentSlowalFrameMapping.save() + else: print('Slowal frame do not exists in database: {}', slowal_frame_id) - unifiedFrame2SlowalFrameMapping = UnifiedFrame2SlowalFrameMapping(unified_frame=unifiedFrame, - slowal_frame_id=slowal_frame_id) - unifiedFrame2SlowalFrameMapping.save() - - for subtree in tree._children: - if subtree._name == 'argument_connections': - for subsubtree in subtree._children: - if subsubtree._name == 'argument_connection': - unifier_argument_id = subsubtree._attrs['unifier_argument_id'] - slowal_id = subsubtree._attrs['slowal_id'] - unifiedFrameArgumentSlowalFrameMapping = UnifiedFrameArgumentSlowalFrameMapping(unified_frame_mapping=unifiedFrame2SlowalFrameMapping, - unified_agrument_id=argumentIdsMapping[unifier_argument_id], - slowal_agrument_id=slowal_id) - unifiedFrameArgumentSlowalFrameMapping.save() - @classmethod def storeUnifiedFrame(cls, frame_tree): -- GitLab