From bc914e73e2cb1710ab9c0854405f4ae6d3b2dcc7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Lamercerie?= <aurelien.lamercerie@tetras-libre.fr> Date: Tue, 14 Feb 2023 20:30:51 +0100 Subject: [PATCH] Define semantic net classes --- tenet/febTransduction/net/__init__.py | 8 +- tenet/febTransduction/net/atom_class_net.py | 25 +- .../febTransduction/net/atom_property_net.py | 106 +- tenet/febTransduction/net/class_net.py | 79 +- .../net/composite_class_net.py | 67 +- .../net/composite_property_net.py | 102 +- tenet/febTransduction/net/individual_net.py | 113 +- tenet/febTransduction/net/logical_set_net.py | 149 - tenet/febTransduction/net/net.py | 581 +-- .../net/or_composite_class_net.py | 51 - tenet/febTransduction/net/phenomena_net.py | 124 +- tenet/febTransduction/net/property_net.py | 48 +- tenet/febTransduction/net/restriction_net.py | 123 +- .../net/semantic_net_rdf_reference.py | 129 + tenet/febTransduction/net/testGraph1.ttl | 1572 ++++++++ tenet/febTransduction/net/value_net.py | 70 +- tests/input/testGraph1.ttl | 3442 +++++++++-------- tests/test_tenet_semantic_net.py | 185 + 18 files changed, 4223 insertions(+), 2751 deletions(-) delete mode 100644 tenet/febTransduction/net/logical_set_net.py delete mode 100644 tenet/febTransduction/net/or_composite_class_net.py create mode 100644 tenet/febTransduction/net/semantic_net_rdf_reference.py create mode 100644 tenet/febTransduction/net/testGraph1.ttl create mode 100644 tests/test_tenet_semantic_net.py diff --git a/tenet/febTransduction/net/__init__.py b/tenet/febTransduction/net/__init__.py index 368f01ef..a295c3fa 100644 --- a/tenet/febTransduction/net/__init__.py +++ b/tenet/febTransduction/net/__init__.py @@ -1,10 +1,10 @@ +from .semantic_net_rdf_reference import SemanticNetReferenceHandle + from .net import Net from .class_net import ClassNet from .atom_class_net import AtomClassNet from .composite_class_net import CompositeClassNet -from .or_composite_class_net import OrCompositeClassNet -# from .and_composite_class_net import AndCompositeClassNet from .property_net import PropertyNet from .atom_property_net import AtomPropertyNet @@ -12,4 +12,8 @@ from .composite_property_net import CompositePropertyNet from .individual_net import IndividualNet +from .value_net import ValueNet + from .phenomena_net import PhenomenaNet + +from .restriction_net import RestrictionNet diff --git a/tenet/febTransduction/net/atom_class_net.py b/tenet/febTransduction/net/atom_class_net.py index b2b392dc..879e5bd8 100644 --- a/tenet/febTransduction/net/atom_class_net.py +++ b/tenet/febTransduction/net/atom_class_net.py @@ -2,16 +2,12 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Atom Class Net Query Builder +# TENET: Atom Class #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -from .class_net import ClassNet +from febTransduction.net import ClassNet #============================================================================== @@ -19,20 +15,19 @@ from .class_net import ClassNet #============================================================================== class AtomClassNet(ClassNet): - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ #-------------------------------------------------------------------------- # Constructor(s) #-------------------------------------------------------------------------- - def __init__(self, num=''): + def __init__(self, support_graph, uri=None): + + # -- Parent init + super().__init__(support_graph, uri) - # -- Net Signature + # -- Net Type self.type_name = 'atomClass' self.type_id = 'Atom_Class_Net' - self.id = f'?{self.type_name}Net{num}' - self.type_uri = f'net:{self.type_id}' - - # -- Parent init - super().__init__(signature=True) \ No newline at end of file + self.type_uri = f'net:{self.type_id}' \ No newline at end of file diff --git a/tenet/febTransduction/net/atom_property_net.py b/tenet/febTransduction/net/atom_property_net.py index 21397663..c7bbcdfe 100644 --- a/tenet/febTransduction/net/atom_property_net.py +++ b/tenet/febTransduction/net/atom_property_net.py @@ -2,16 +2,12 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Atom Property Net Query Builder +# TENET: Atom Property #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -from .property_net import PropertyNet +from febTransduction.net import PropertyNet #============================================================================== @@ -19,39 +15,87 @@ from .property_net import PropertyNet #============================================================================== class AtomPropertyNet(PropertyNet): - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ #-------------------------------------------------------------------------- # Constructor(s) #-------------------------------------------------------------------------- - def __init__(self, num=''): + def __init__(self, support_graph, uri=None): + + # -- Parent init + super().__init__(support_graph, uri) - # -- Net Signature + # -- Net Type self.type_name = 'atomProperty' self.type_id = 'Atom_Property_Net' - self.id = f'?{self.type_name}Net{num}' self.type_uri = f'net:{self.type_id}' - # -- Parent init - super().__init__(signature=True) - # -- Net Attributes - self.core_role = f'{self.id}CoreRole' - self.target_argument_node = f'{self.id}TargetArgumentNode' - self.property_type = f'{self.id}PropertyType' - #self.property_name = f'{self.id}PropertyName' - self.property_name01 = f'{self.id}PropertyName01' - self.property_name10 = f'{self.id}PropertyName10' - self.property_name12 = f'{self.id}PropertyName12' - - self.predicate_table.update({ - 'core_role': 'isCoreRoleLinked', - 'target_argument_node': 'targetArgumentNode', - 'property_type': 'hasPropertyType', - #'property_name': 'hasPropertyName', - 'property_name01': 'hasPropertyName01', - 'property_name10': 'hasPropertyName10', - 'property_name12': 'hasPropertyName12' - }) \ No newline at end of file + self._core_role = None + self._target_argument_node = [] + self._property_type = None + #self._property_name = None + self._property_name01 = None + self._property_name10 = None + self._property_name12 = None + + + #-------------------------------------------------------------------------- + # Accessors for Net Attributes + #-------------------------------------------------------------------------- + + @property + def core_role(self): + self._core_role = super().get_attribute_value(core_role=self._core_role) + return self._core_role + + @core_role.setter + def core_role(self, new_value): + self._core_role = new_value + + @property + def target_argument_node(self): + self._target_argument_node = super().get_attribute_value(target_argument_node=self._target_argument_node) + return self._target_argument_node + + @target_argument_node.setter + def target_argument_node(self, new_value): + self._target_argument_node = new_value + + @property + def property_type(self): + self._property_type = super().get_attribute_value(property_type=self._property_type) + return self._property_type + + @property_type.setter + def property_type(self, new_value): + self._property_type = new_value + + @property + def property_name01(self): + self._property_name01 = super().get_attribute_value(property_name01=self._property_name01) + return self._property_name01 + + @property_name01.setter + def property_name01(self, new_value): + self._property_name01 = new_value + + @property + def property_name10(self): + self._property_name10 = super().get_attribute_value(property_name10=self._property_name10) + return self._property_name10 + + @property_name10.setter + def property_name10(self, new_value): + self._property_name10 = new_value + + @property + def property_name12(self): + self._property_name12 = super().get_attribute_value(property_name12=self._property_name12) + return self._property_name12 + + @property_name12.setter + def property_name12(self, new_value): + self._property_name12 = new_value \ No newline at end of file diff --git a/tenet/febTransduction/net/class_net.py b/tenet/febTransduction/net/class_net.py index a019df1e..d1fbe667 100644 --- a/tenet/febTransduction/net/class_net.py +++ b/tenet/febTransduction/net/class_net.py @@ -2,16 +2,12 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Class Net Query Builder +# TENET: Class Net #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -from .net import Net +from febTransduction.net import Net #============================================================================== @@ -19,63 +15,36 @@ from .net import Net #============================================================================== class ClassNet(Net): - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ #-------------------------------------------------------------------------- # Constructor(s) #-------------------------------------------------------------------------- - def __init__(self, num='', signature=False): - - # -- Net Signature - if not signature: - self.type_name = 'class' - self.type_id = 'Class_Net' - self.id = f'?{self.type_name}Net{num}' - self.type_uri = f'net:{self.type_id}' - + def __init__(self, support_graph, uri=None): + # -- Parent init - super().__init__(signature=True) + super().__init__(support_graph, uri) - # -- Net Attributes - self.class_name = f'{self.id}ClassName' + # -- Net Type + self.type_name = 'class' + self.type_id = 'Class_Net' + self.type_uri = f'net:{self.type_id}' - self.predicate_table.update({ - 'class_name': 'hasClassName' - }) - - - -#============================================================================== -# Development Test -#============================================================================== - -if __name__ == '__main__': - - print('\n' + ' *** Development Test ***') - - print('\n' + ' -- test: Net') - net = AtomClassNet() - print(net) + # -- Net Attributes + self._class_name = None + - print('\n' + ' -- test: update a test query') - test_query= f"""[...] - CONSTRUCT {{ - {net.construct(base_node='?node1', - class_name='system')} + #-------------------------------------------------------------------------- + # Accessors for Net Attributes + #-------------------------------------------------------------------------- - }} - WHERE {{ - clause_1 - clause_2 - - {net.complete_clauses_for_construction('?node1')} - - {net.bind_uri('{{node1.concept_label}}', - '{{node1.variable_label}}')} - }} - """ - print(test_query) + @property + def class_name(self): + self._class_name = super().get_attribute_value(class_name=self._class_name) + return self._class_name - print('\n' + ' *** - ***') \ No newline at end of file + @class_name.setter + def class_name(self, new_value): + self._class_name = new_value \ No newline at end of file diff --git a/tenet/febTransduction/net/composite_class_net.py b/tenet/febTransduction/net/composite_class_net.py index 06b0d1fc..484fef40 100644 --- a/tenet/febTransduction/net/composite_class_net.py +++ b/tenet/febTransduction/net/composite_class_net.py @@ -2,16 +2,12 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Atom Class Net Query Builder +# TENET: Composite Class Net #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -from .class_net import ClassNet +from febTransduction.net import ClassNet #============================================================================== @@ -19,33 +15,56 @@ from .class_net import ClassNet #============================================================================== class CompositeClassNet(ClassNet): - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ #-------------------------------------------------------------------------- # Constructor(s) #-------------------------------------------------------------------------- - def __init__(self, num=''): + def __init__(self, support_graph, uri=None): + + # -- Parent init + super().__init__(support_graph, uri) - # -- Net Signature + # -- Net Type self.type_name = 'compositeClass' self.type_id = 'Composite_Class_Net' - self.id = f'?{self.type_name}Net{num}' self.type_uri = f'net:{self.type_id}' - # -- Parent init - super().__init__(signature=True) - # -- Net Attributes - self.node = f'{self.id}Node' - self.mother_class_net = f'{self.id}MotherClassNet' - self.restriction = f'{self.id}Restriction' - self.restriction01 = f'{self.id}Restriction01' + self.mother_class_net = None + self.restriction = [] + self.restriction01 = [] + - self.predicate_table.update({ - 'node': 'coverNode', - 'mother_class_net': 'hasMotherClassNet', - 'restriction': 'hasRestriction', - 'restriction01': 'hasRestriction01' - }) \ No newline at end of file + #-------------------------------------------------------------------------- + # Accessors for Net Attributes + #-------------------------------------------------------------------------- + + @property + def mother_class_net(self): + self._mother_class_net = super().get_attribute_value(mother_class_net=self._mother_class_net) + return self._mother_class_net + + @mother_class_net.setter + def mother_class_net(self, new_value): + self._mother_class_net = new_value + + @property + def restriction(self): + self._restriction = super().get_attribute_value(restriction=self._restriction) + return self._restriction + + @restriction.setter + def restriction(self, new_value): + self._restriction = new_value + + @property + def restriction01(self): + self._restriction01 = super().get_attribute_value(restriction01=self._restriction01) + return self._restriction01 + + @restriction01.setter + def restriction01(self, new_value): + self._restriction01 = new_value \ No newline at end of file diff --git a/tenet/febTransduction/net/composite_property_net.py b/tenet/febTransduction/net/composite_property_net.py index d640b589..8629d93f 100644 --- a/tenet/febTransduction/net/composite_property_net.py +++ b/tenet/febTransduction/net/composite_property_net.py @@ -2,16 +2,12 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Composite Property Net Query Builder +# TENET: Composite Property Net #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -from .property_net import PropertyNet +from febTransduction.net import PropertyNet #============================================================================== @@ -19,68 +15,66 @@ from .property_net import PropertyNet #============================================================================== class CompositePropertyNet(PropertyNet): - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ #-------------------------------------------------------------------------- # Constructor(s) #-------------------------------------------------------------------------- - def __init__(self, num=''): + def __init__(self, support_graph, uri=None): + + # -- Parent init + super().__init__(support_graph, uri) - # -- Net Signature + # -- Net Type self.type_name = 'compositeProperty' self.type_id = 'Composite_Property_Net' - self.id = f'?{self.type_name}Net{num}' self.type_uri = f'net:{self.type_id}' - # -- Parent init - super().__init__(signature=True) - # -- Net Attributes - self.core_role = f'{self.id}CoreRole' - self.target_argument_node = f'{self.id}TargetArgumentNode' - self.property_type = f'{self.id}PropertyType' - self.restriction = f'{self.id}Restriction' - - self.predicate_table.update({ - 'core_role': 'isCoreRoleLinked', - 'target_argument_node': 'targetArgumentNode', - 'property_type': 'hasPropertyType', - 'restriction': 'hasRestriction' - }) + self._core_role = None + self._target_argument_node = [] + self._property_type = None + self._restriction = [] - - -#============================================================================== -# Development Test -#============================================================================== - -if __name__ == '__main__': + + #-------------------------------------------------------------------------- + # Accessors for Net Attributes + #-------------------------------------------------------------------------- + + @property + def core_role(self): + self._core_role = super().get_attribute_value(core_role=self._core_role) + return self._core_role - print('\n' + ' *** Development Test ***') + @core_role.setter + def core_role(self, new_value): + self._core_role = new_value - print('\n' + ' -- test: Net') - net = AtomClassNet() - print(net) + @property + def target_argument_node(self): + self._target_argument_node = super().get_attribute_value(target_argument_node=self._target_argument_node) + return self._target_argument_node + + @target_argument_node.setter + def target_argument_node(self, new_value): + self._target_argument_node = new_value - print('\n' + ' -- test: update a test query') - test_query= f"""[...] - CONSTRUCT {{ - {net.construct(base_node='?node1', - class_name='system')} + @property + def property_type(self): + self._property_type = super().get_attribute_value(property_type=self._property_type) + return self._property_type + + @property_type.setter + def property_type(self, new_value): + self._property_type = new_value - }} - WHERE {{ - clause_1 - clause_2 - - {net.complete_clauses_for_construction('?node1')} - - {net.bind_uri('{{node1.concept_label}}', - '{{node1.variable_label}}')} - }} - """ - print(test_query) + @property + def restriction(self): + self._restriction = super().get_attribute_value(restriction=self._restriction) + return self._restriction - print('\n' + ' *** - ***') \ No newline at end of file + @restriction.setter + def restriction(self, new_value): + self._restriction = new_value \ No newline at end of file diff --git a/tenet/febTransduction/net/individual_net.py b/tenet/febTransduction/net/individual_net.py index 564d0fdd..504ddb42 100644 --- a/tenet/febTransduction/net/individual_net.py +++ b/tenet/febTransduction/net/individual_net.py @@ -2,16 +2,12 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Individual Net Query Builder +# TENET: Individual Net #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -from .net import Net +from febTransduction.net import Net #============================================================================== @@ -19,91 +15,56 @@ from .net import Net #============================================================================== class IndividualNet(Net): - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ #-------------------------------------------------------------------------- # Constructor(s) #-------------------------------------------------------------------------- - def __init__(self, num=''): + def __init__(self, support_graph, uri=None): + + # -- Parent init + super().__init__(support_graph, uri) - # -- Net Signature + # -- Net Type self.type_name = 'individual' self.type_id = 'Individual_Net' - self.id = f'?{self.type_name}Net{num}' self.type_uri = f'net:{self.type_id}' - # -- Parent init - super().__init__(signature=True) - # -- Net Attributes - self.base_class_name = f'{self.id}MotherClassNet' - self.mother_class_net = f'{self.id}MotherClassNet' - self.individual_label = f'{self.id}IndividualLabel' + self.base_class_name = None + self.mother_class_net = [] + self.individual_label = None + - self.predicate_table.update({ - 'base_class_name': 'hasBaseClassName', - 'mother_class_net': 'hasMotherClassName', - 'individual_label': 'hasIndividualLabel' - }) - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Construct' parts #-------------------------------------------------------------------------- - - def construct(self, **net_attribute): - query_code = super().construct(**net_attribute) - return query_code - - + # Accessors for Net Attributes #-------------------------------------------------------------------------- - # Method(s) to build 'Clause' parts - #-------------------------------------------------------------------------- - - # -- - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Binding' parts - #-------------------------------------------------------------------------- - - def bind_uri(self, net_name='nameless', node_reference='00'): - return super().bind_uri(net_name, node_reference) - - - -#============================================================================== -# Development Test -#============================================================================== - -if __name__ == '__main__': - - print('\n' + ' *** Development Test ***') - print('\n' + ' -- test: Atom Class Net') - net = IndividualNet() - print(net) + @property + def base_class_name(self): + self._base_class_name = super().get_attribute_value(base_class_name=self._base_class_name) + return self._base_class_name + + @base_class_name.setter + def base_class_name(self, new_value): + self._base_class_name = new_value - print('\n' + ' -- test: update a test query') - test_query= f"""[...] - CONSTRUCT {{ - {net.construct(base_node='?node1', - mother_class_net='?classNet', - individual_label='?valueLabel')} + @property + def mother_class_net(self): + self._mother_class_net = super().get_attribute_value(mother_class_net=self._mother_class_net) + return self._mother_class_net + + @mother_class_net.setter + def mother_class_net(self, new_value): + self._mother_class_net = new_value - }} - WHERE {{ - clause_1 - clause_2 - - {net.complete_clauses_for_construction('?node1')} - - {net.bind_uri('{{node1.concept_label}}', - '{{node1.variable_label}}')} - }} - """ - print(test_query) + @property + def individual_label(self): + self._individual_label = super().get_attribute_value(individual_label=self._individual_label) + return self._individual_label - print('\n' + ' *** - ***') \ No newline at end of file + @individual_label.setter + def individual_label(self, new_value): + self._individual_label = new_value \ No newline at end of file diff --git a/tenet/febTransduction/net/logical_set_net.py b/tenet/febTransduction/net/logical_set_net.py deleted file mode 100644 index ac44634e..00000000 --- a/tenet/febTransduction/net/logical_set_net.py +++ /dev/null @@ -1,149 +0,0 @@ -#!/usr/bin/python3.10 -# -*-coding:Utf-8 -* - -#============================================================================== -# TENET: Logical Set Net Query Builder -#------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets -#============================================================================== - -#============================================================================== -# Importing required modules -#============================================================================== - -from .net import Net - - -#============================================================================== -# Net Class -#============================================================================== - -class LogicalSetNet(Net): - """ Class to generate SPARQL query parts related to semantic nets. - """ - - #-------------------------------------------------------------------------- - # Constructor(s) - #-------------------------------------------------------------------------- - - def __init__(self, num=''): - - # -- Net Signature - self.type_name = 'logicalSet' - self.type_id = 'Logical_Set_Net' - self.id = f'?{self.type_name}Net{num}' - self.type_uri = f'net:{self.type_id}' - - # -- Parent init - super().__init__(signature=True) - - # -- Net Attributes - self.logical_constraint = f'{self.id}Restriction' - self.property_net = f'{self.id}PropertyNet' - self.content_net_1 = f'{self.id}ContentNet1' - self.content_net_2 = f'{self.id}ContentNet2' - self.content_net = f'{self.id}ContentNet' - self.naming = f'{self.id}Naming' - self.restriction = f'{self.id}Restriction' - - self.predicate_table.update({ - 'logical_constraint': 'hasLogicalConstraint', - 'property_net': 'bindPropertyNet', - 'content_net_1': 'containsNet1', - 'content_net_2': 'containsNet2', - 'content_net': 'containsNet', - 'naming': 'hasNaming', - 'restriction': 'bindRestriction' - - }) - - - #-------------------------------------------------------------------------- - # Private data accessor(s) - #-------------------------------------------------------------------------- - - def __get_predicate(self, attribute_reference): - predicate_reference = self.predicate_table[f'{attribute_reference}'] - return f'net:{predicate_reference}' - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Construct' parts - #-------------------------------------------------------------------------- - - def define_naming(self): - predicate = self.__get_predicate('naming') - return f""" - # -- Naming Definition - {self.id} {predicate} {self.naming}.""" - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Clause' parts - #-------------------------------------------------------------------------- - - def identify_content_net_1(self, target_id): - predicate = self.__get_predicate('content_net_1') - return f""" - # -- Identify content net 1 - {self.id} {predicate} {target_id}.""" - - - def identify_content_net_2(self, target_id): - predicate = self.__get_predicate('content_net_2') - return f""" - # -- Identify content net 2 - {self.id} {predicate} {target_id}.""" - - - def identify_content_net(self, target_id): - predicate = self.__get_predicate('content_net') - return f""" - # -- Identify content net - {self.id} {predicate} {target_id}.""" - - - def identify_disjoint_content_net(self, target_id_1, target_id_2): - predicate1 = self.__get_predicate('content_net_1') - predicate2 = self.__get_predicate('content_net_2') - return f""" - # -- Identify disjoint content net - {self.id} {predicate} {target_id_1}. - {self.id} {predicate} {target_id_2}. - FILTER ( {target_id_1} != {target_id_2} ).""" - - def identify_content_net_number(self, number_ref): - predicate = self.__get_predicate('content_net') - return f""" - {{ - # -- Identify content net number - SELECT (COUNT(?contentNet) AS {number_ref}) - WHERE {{ - {self.id} {predicate} ?contentNet. - }} - }}""" - - - def identify_restriction(self, target_id): - predicate = self.__get_predicate('restriction') - return f""" - # -- Identify restriction - {self.id} {predicate} {target_id}.""" - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Binding' parts - #-------------------------------------------------------------------------- - - def bind_naming(self, property_ref, content_1_ref, content_2_ref): - - ref1 = f"{self.id}Ref1" - ref2 = f"{self.id}Ref2" - # -- ref3 = f"{self.id}Ref3" - - return f""" - # -- New Naming - {self.identify_content_net_number('?contentNumber')} - BIND (CONCAT({property_ref}, '-', {content_1_ref}) AS {ref1}). - BIND (CONCAT({ref1}, '-and-', {content_2_ref}) AS {ref2}). - BIND (IF (?contentNumber > 2, CONCAT({ref2}, '-etc'), {ref2}) AS {self.naming}).""" \ No newline at end of file diff --git a/tenet/febTransduction/net/net.py b/tenet/febTransduction/net/net.py index fd0b55c4..207f3a77 100644 --- a/tenet/febTransduction/net/net.py +++ b/tenet/febTransduction/net/net.py @@ -2,525 +2,144 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Net Query Builder +# TENET: Net #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -# -- - - -#============================================================================== -# Data Repository -#============================================================================== - -# -- Useful Constant(s) -DEFAULT_ATTRIBUTE_VALUE = f'\"NA\"' -INDENT_STR = ' ' -SENTENCE_REF = '?sentenceRef' +from febTransduction.net import SemanticNetReferenceHandle +from febTransduction.query_builder import generate_select_query #============================================================================== -# Net Class +# Class #============================================================================== class Net: - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ - #-------------------------------------------------------------------------- - # Class Attributes - #-------------------------------------------------------------------------- - - # -- Operation Reference - INITIALIZED = f'net:initialized' - DATA_ADDED = f'net:data_added' - RESTRICTION_ADDED = f'net:restriction_added' - RELATION_PROPAGATED = f'net:relation_propagated' - FINALIZED = f'net:finalized' - - progress_step_list = [INITIALIZED, DATA_ADDED, RESTRICTION_ADDED, - RELATION_PROPAGATED, FINALIZED] - #-------------------------------------------------------------------------- # Constructor #-------------------------------------------------------------------------- - def __init__(self, num='', signature=False): - - # -- Net Signature - if not signature: - self.type_name = 'default' - self.type_id = 'Net' - self.id = f'?{self.type_name}Net{num}' - self.type_uri = f'net:{self.type_id}' - - # -- Net Attributes - self.node = f'{self.id}Node' - self.base_node = f'{self.id}BaseNode' - self.structure = f'{self.id}Structure' - self.naming = f'{self.id}Naming' - - self.predicate_table = { - # *** [attribute_reference: attribute_predicate] *** - 'node': 'coverNode', - 'base_node': 'coverBaseNode', - 'structure': 'hasStructure', - 'naming': 'hasNaming' - } + def __init__(self, support_graph, uri=None): + # -- Net Support + self.support_graph = support_graph + self.referenceHandle = SemanticNetReferenceHandle() - # -- Tracker attributes - self._progress_step = f'{self.id}ProgressStep' - self._main_net_composante = f'{self.id}MainNetComposante' - self._net_composante = f'{self.id}NetComposante' + # -- Net Type + self.type_name = 'default' + self.type_id = 'Net' + self.type_uri = f'net:{self.type_id}' - self._track_predicate_table = { - # *** [attribute_reference: attribute_predicate] *** - 'progress_step': 'trackProgress', - 'main_net_composante': 'trackMainNetComposante', - 'net_composante': 'trackNetComposante' - } - - - # -- Private attributes (for relation propagation) - self._in_relation_role = f'{self.id}InRelationRole' - self._in_net = f'{self.id}InNet' - self._out_relation_role = f'{self.id}OutRelationRole' - self._out_net = f'{self.id}OutNet' - - - #-------------------------------------------------------------------------- - # Private data accessor(s) - #-------------------------------------------------------------------------- - - def __get_predicate(self, attribute_reference): - predicate_reference = self.predicate_table[f'{attribute_reference}'] - return f'net:{predicate_reference}' - - def __get_track_predicate(self, attribute_reference): - predicate_reference = self._track_predicate_table[f'{attribute_reference}'] - return f'net:{predicate_reference}' - - - #-------------------------------------------------------------------------- - # Method(s) to track the construction progress - #-------------------------------------------------------------------------- - - def track_progression(self, progress_step): - predicate = self.__get_track_predicate('progress_step') - return f"{INDENT_STR}{self.id} {predicate} {progress_step}." - - def in_progress_step(self, progress_step): - predicate = self.__get_track_predicate('progress_step') - query_code = f'FILTER NOT EXISTS {{ {self.id} {predicate} {progress_step}. }}' - return query_code - - def is_finalized_net(self): - predicate = self.__get_track_predicate('progress_step') - progress_step = FINALIZED - query_code = f'FILTER NOT EXISTS {{ {self.id} {predicate} {progress_step}. }}' - return query_code - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Construct' parts (definition) - #-------------------------------------------------------------------------- - - def define(self, **net_attribute): - net_attribute.update({'structure': '?sentenceRef'}) - query_code = '' - query_code += f'{INDENT_STR}{self.id} a {self.type_uri}.\n' - query_code += self.track_progression(INITIALIZED) - #query_code += f'{self.__define_attribute_triples(**net_attribute)}' - return query_code - - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Construct' parts (composition tracking) - #-------------------------------------------------------------------------- - - def track_composante(self, composante, main=False): - query_code = '' - predicate = self.__get_track_predicate('net_composante') - query_code += f"{self.id} {predicate} {composante.id}." - if main: - predicate = self.__get_track_predicate('main_net_composante') - query_code += f"\n{INDENT_STR}" - query_code += f"{self.id} {predicate} {composante.id}." - query_code += f"\n{INDENT_STR}" - net_node = f'{composante.node}' - query_code += self.__define_attribute_triples(node=net_node) - return query_code - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Identification Clause' parts - #-------------------------------------------------------------------------- - - def identify(self, step_num=-1): - query_code = "" - query_code += f"{self.id} a [rdfs:subClassOf* {self.type_uri}]." - if step_num > -1 & step_num < len(self._progress_step_list): - progress_step = self._progress_step_list[step_num] - query_code += self.in_progress_step(progress_step) - return query_code - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Clause' parts (data selection) - #-------------------------------------------------------------------------- - - def select_data(self, *net_attribute): - - query_code = "" - - # -- construct triples - first = True - for attr_ref in net_attribute: - if attr_ref in self.predicate_table.keys(): - predicate = self.__get_predicate(attr_ref) - attr_value = getattr(self, attr_ref) - if not first: query_code += f"\n{INDENT_STR}" - query_code += f"{self.id} {predicate} {attr_value}." - first = False + # -- Net URI + self._uri = uri + + # -- Net Attributes + self._node = [] + self._base_node = None + self._structure = None + self._naming = None + - return query_code - - - def select_tracking_data(self): - return self.select_data('node') - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Binding' parts + # Accessor Base Methods #-------------------------------------------------------------------------- - def bind_naming(self, *nets): - - assert len(nets) > 0, 'bind_naming impossible without net' - - query_code = '' + def __find_attr_value_in_graph(self, attr_key): - num = 0 - for net in nets: - num += 1 - if num == 1: # first net - current_ref = f"{self.id}NamingRef{num}" - query_code += f'{net.select_data("naming")}' - query_code += f"\n{INDENT_STR}" - query_code += f'BIND ({net.naming} AS {current_ref}).' - else: # net 2, 3... - previous_ref = current_ref - current_ref = f"{self.id}NamingRef{num}" - query_code += f"\n{INDENT_STR}" - query_code += f'{net.select_data("naming")}' - query_code += f"\n{INDENT_STR}" - query_code += f"BIND (CONCAT({previous_ref}, '-', {net.naming}) AS {current_ref})." - - query_code += f"\n{INDENT_STR}" - query_code += f'BIND (REPLACE({current_ref}, " ", "") AS {self.naming}).' - - return query_code - - - def bind_uri(self, net_name, node_reference): - - ref1 = f"{self.id}UriRef1" - ref2 = f"{self.id}UriRef2" - ref3 = f"{self.id}UriRef3" - - query_code = f""" - BIND (CONCAT(str(net:), "{self.type_name}") AS {ref1}). - BIND (CONCAT({ref1}, "_", {net_name}) AS {ref2}). - BIND (CONCAT({ref2}, "_", {node_reference}) AS {ref3}). - BIND (uri({ref3}) AS {self.id}).""" - - return query_code - - - - # ***************************************************************************************** - # - # OLD ***** OLD ******* OLD - # - # ****************************************************************************************** + # -- query code + select_data_list = ['?attr_value'] + clause_list = [] + predicate = self.referenceHandle.get_predicate_uri(f'{attr_key}') + clause_list.append(f'{self._uri} {predicate} ?attr_value.') + query_code = generate_select_query(select_data_list, clause_list) + # -- query application + query_result = self.support_graph.query(query_code) + + return query_result + + def __select_value_in_graph(self, attr_key): + res = None + value_set = self.__find_attr_value_in_graph(attr_key) + assert len(value_set) <= 1 + for v in value_set: + res = v.attr_value + return res + + def __select_value_list_in_graph(self, attr_key): + res = [] + value_set = self.__find_attr_value_in_graph(attr_key) + for v in value_set: + res.append(v.attr_value) + return res + + def get_attribute_value(self, **attr): + + res = None + for attr_key, attr_value in attr.items(): + if attr_value == None: + res = self.__select_value_in_graph(attr_key) + elif attr_value == []: + res = self.__select_value_list_in_graph(attr_key) + else: + res = attr_value + + return res #-------------------------------------------------------------------------- - # Method(s) to build 'Construct' parts (definition) + # Accessors for Net URI #-------------------------------------------------------------------------- - - def __define_attribute_triples(self, **net_attribute): - - query_code = "" - - # -- construct triples - for attr_ref in self.predicate_table.keys(): - if attr_ref in net_attribute.keys(): - predicate = self.__get_predicate(attr_ref) - attr_value = net_attribute.get(attr_ref) - query_code += f"{self.id} {predicate} {attr_value}." - query_code += f"\n{INDENT_STR}" - return query_code - - - def define(self, **net_attribute): - net_attribute.update({'structure': '?sentenceRef'}) - query_code = '' - query_code += f'{INDENT_STR}{self.id} a {self.type_uri}.\n' - #query_code += f'{self.__define_attribute_triples(**net_attribute)}' - return query_code + @property + def uri(self): + return self._uri - - def propagate_relations(self): - query_code = f""" - # -- Propagation of relations (from nodes to nets) - {self._in_relation_role} a net:Relation. - {self._in_net} {self._in_relation_role} {self.id}. - {self._out_relation_role} a net:Relation. - {self.id} {self._out_relation_role} {self._out_net}.""" - query_code += f"\n{INDENT_STR}" - query_code += self.__track_construction_progress(Net.RELATION_PROPAGATED) - return query_code - - - def construct(self, **net_attribute): - query_code = self.define_new_net(**net_attribute) - query_code += self.__track_construction_progress(Net.INITIALIZED) - # -- old --- query_code += self.propagate_relations() - return query_code - - - def add_attribute(self, **net_attribute): - query_code = self.__define_attribute_triples(**net_attribute) - return f""" - # -- Additional triple(s) for {self.id} - {query_code}""" - - - - def define_structure(self): - predicate = self.__get_predicate('structure') - query_code = f"{self.id} {predicate} {SENTENCE_REF}." - query_code += f"\n{INDENT_STR}" + @uri.setter + def uri(self, new_value): + self._uri = new_value + - return f""" - # -- Additional triple(s) for {self.id} - {query_code}""" - - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Complement Clause' parts - #-------------------------------------------------------------------------- - - def identify_structure(self): - return f""" - # -- Identify structure - ?root a amr:AMR_Root. - ?root amr:hasSentenceID {SENTENCE_REF}. - """ - - def identify_relations_for_propagation(self, base_node=''): - if base_node=='': - base_node = self.base_node - return f""" - # -- Identify inbound relations linked to the base leaf (for propagation) - OPTIONAL {{ - {self._in_net} a [rdfs:subClassOf* net:Net] ; - net:coverBaseNode ?inLeaf. - ?inLeaf ?inRelationEdge {base_node}. - ?inRelationEdge amr:hasAmrRole {self._in_relation_role}. - }} - - # -- Identify outgoing relations linked to the base leaf (for propagation) - OPTIONAL {{ - {self._out_net} a [rdfs:subClassOf* net:Net] ; - net:coverBaseNode ?outLeaf. - {base_node} ?outRelationEdge ?outLeaf. - ?outRelationEdge amr:hasAmrRole {self._out_relation_role}. - }} - """ - - def complete_clauses_for_construction(self, base_node=''): - query_code = self.identify_structure() - query_code += self.identify_relations_for_propagation(base_node) - return query_code - - #-------------------------------------------------------------------------- - # Method(s) to build 'Identification Clause' parts + # Accessors for Net Attributes #-------------------------------------------------------------------------- - - def __select_all_attribute_triples(self, **net_attribute): - - query_code = "" - - # -- construct triples with default object for non-declared attributes - for attr_ref in self.predicate_table.keys(): - - predicate = self.__get_predicate(attr_ref) - - if attr_ref in net_attribute.keys(): - attr_value = net_attribute.get(attr_ref) - optional_start = '' - optional_end = '' - comment = '' - else: - attr_value = self.__dict__[attr_ref] - optional_start = 'OPTIONAL {{ ' - optional_end = ' }}' - comment = '' - - query_code += f"{optional_start}" - query_code += f"{self.id} {predicate} {attr_value}.{comment}" - query_code += f"{optional_end}" - query_code += f"\n{INDENT_STR}" - return query_code - + @property + def node(self): + self._node = self.get_attribute_value(node=self._node) + return self._node - def __select_targeted_attribute_triples(self, **net_attribute): - - query_code = "" - - # -- select triples - for attr_ref in self.predicate_table.keys(): - - predicate = self.__get_predicate(attr_ref) - - if attr_ref in net_attribute.keys(): - attr_value = net_attribute.get(attr_ref) - comment = '' - - query_code += f"{self.id} {predicate} {attr_value}.{comment}" - query_code += f"\n{INDENT_STR}" + @node.setter + def node(self, new_value): + self._node = new_value - return query_code - + @property + def base_node(self): + self._base_node = self.get_attribute_value(base_node=self._base_node) + return self._base_node - def __select_optional_attribute_triples(self, **net_attribute): - - query_code = "" - - # -- construct triples with default object for non-declared attributes - for attr_ref in self.predicate_table.keys(): - - predicate = self.__get_predicate(attr_ref) - - if attr_ref not in net_attribute.keys(): - attr_value = self.__dict__[attr_ref] - optional_start = 'OPTIONAL {{ ' - optional_end = ' }}' - comment = '' - - query_code += f"{optional_start}" - query_code += f"{self.id} {predicate} {attr_value}.{comment}" - query_code += f"{optional_end}" - query_code += f"\n{INDENT_STR}" + @base_node.setter + def base_node(self, new_value): + self._base_node = new_value - return query_code - + @property + def structure(self): + self._structure = self.get_attribute_value(structure=self._structure) + return self._structure - #-------------------------------------------------------------------------- - # Method(s) to build 'Identification Clause' parts - #-------------------------------------------------------------------------- - - def __select_node(self): + @structure.setter + def structure(self, new_value): + self._structure = new_value - query_code = "" - - optional_start = 'OPTIONAL {{ ' - optional_end = ' }}' - select_predicates = f"""(net:coverNode|net:coverBaseNode|net:coverTargetNode|net:coverArgNode)""" - - query_code += f"{optional_start}" - query_code += f"# -- Select nodes of net {self.id} \n{INDENT_STR}" - query_code += f"{self.id} {select_predicates} {self.node}." - query_code += f"{optional_end}" - - return query_code - - - def identify(self, **net_attribute): - query_code = "" - query_code += f"{self.id} a [rdfs:subClassOf* {self.type_uri}]." - #query_code += f"{self.__select_all_attribute_triples(**net_attribute)}" - #query_code += f"{self.__select_node()}" - return query_code - - - def identify_net_without_optional_attribute(self, **net_attribute): - return f""" - # -- Identify net - {self.id} a [rdfs:subClassOf* {self.type_uri}]. - FILTER NOT EXISTS {{ {self.id} a net:Deprecated_Net. }} - {self.__select_targeted_attribute_triples(**net_attribute)} - {self.__select_node()}""" - + @property + def naming(self): + self._naming = self.get_attribute_value(naming=self._naming) + return self._naming - def identify_attribute(self, **net_attribute): - query_code = '' - for attr_ref in net_attribute.keys(): - predicate = self.__get_predicate(attr_ref) - attr_value = net_attribute.get(attr_ref) - query_code += f'\n{INDENT_STR}{self.id} {predicate} {attr_value}.' - return query_code - - - def identify_relation(self, relation_role, target_id): - return f'{self.id} {relation_role} {target_id}.' - - - def identify_composante(self, target_id): - predicate = self.__get_track_predicate('net_composante') - return f""" - # -- Identify net composante of {self.id} - {self.id} {predicate} {target_id}.""" - - - def identify_main_composante(self, target_id): - predicate = self.__get_track_predicate('main_net_composante') - return f""" - # -- Identify main net composante of {self.id} - {self.id} {predicate} {target_id}.""" - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Binding' parts - #-------------------------------------------------------------------------- - - # def bind_uri(self, net_name='nameless', node_reference='blank'): - - # ref1 = f"{self.id}Ref1" - # ref2 = f"{self.id}Ref2" - # ref3 = f"{self.id}Ref3" - - # if net_name=='nameless': - # net_name = f"'nameless'" - # refNet = f"?namelessRefNet" - # else: - # refNet = f"{net_name}RefNet" - - # if node_reference=='blank': - # node_reference = f"'blankNode'" - # refNode = f"?blankRefNode" - # else: - # refNode = f"{node_reference}RefNode" - - # return f""" - # BIND (REPLACE({net_name}, ' ', "") AS {refNet}). - # BIND (REPLACE({node_reference}, ' ', "") AS {refNode}). - # BIND (CONCAT(str(net:), '{self.type_name}') AS {ref1}). - # BIND (CONCAT({ref1}, '_', {refNet}) AS {ref2}). - # BIND (CONCAT({ref2}, '_', {refNode}) AS {ref3}). - # BIND (uri({ref3}) AS {self.id}).""" \ No newline at end of file + @naming.setter + def naming(self, new_value): + self._naming = new_value \ No newline at end of file diff --git a/tenet/febTransduction/net/or_composite_class_net.py b/tenet/febTransduction/net/or_composite_class_net.py deleted file mode 100644 index c2893cee..00000000 --- a/tenet/febTransduction/net/or_composite_class_net.py +++ /dev/null @@ -1,51 +0,0 @@ -#!/usr/bin/python3.10 -# -*-coding:Utf-8 -* - -#============================================================================== -# TENET: Atom Class Net Query Builder -#------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets -#============================================================================== - -#============================================================================== -# Importing required modules -#============================================================================== - -from .class_net import ClassNet - - -#============================================================================== -# Net Class -#============================================================================== - -class OrCompositeClassNet(ClassNet): - """ Class to generate SPARQL query parts related to semantic nets. - """ - - #-------------------------------------------------------------------------- - # Constructor(s) - #-------------------------------------------------------------------------- - - def __init__(self, num=''): - - # -- Net Signature - self.type_name = 'compositeClass' - self.type_id = 'Composite_Class_Net' - self.id = f'?{self.type_name}Net{num}' - self.type_uri = f'net:{self.type_id}' - - # -- Parent init - super().__init__(signature=True) - - # -- Net Attributes - self.node = f'{self.id}Node' - self.mother_class_net = f'{self.id}MotherClassNet' - self.restriction = f'{self.id}Restriction' - self.restriction01 = f'{self.id}Restriction01' - - self.predicate_table.update({ - 'node': 'coverNode', - 'mother_class_net': 'hasMotherClassNet', - 'restriction': 'hasRestriction', - 'restriction01': 'hasRestriction01' - }) \ No newline at end of file diff --git a/tenet/febTransduction/net/phenomena_net.py b/tenet/febTransduction/net/phenomena_net.py index 97c0449a..6780eda3 100644 --- a/tenet/febTransduction/net/phenomena_net.py +++ b/tenet/febTransduction/net/phenomena_net.py @@ -2,16 +2,12 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Phenomena Net Query Builder +# TENET: Phenomena Net #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -from .net import Net +from febTransduction.net import Net #============================================================================== @@ -19,112 +15,46 @@ from .net import Net #============================================================================== class PhenomenaNet(Net): - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ #-------------------------------------------------------------------------- # Constructor(s) #-------------------------------------------------------------------------- - def __init__(self, num=''): + def __init__(self, support_graph, uri=None): + + # -- Parent init + super().__init__(support_graph, uri) - # -- Net Signature + # -- Net Type self.type_name = 'phenomena' self.type_id = 'Phenomena_Net' - self.id = f'?{self.type_name}Net{num}' self.type_uri = f'net:{self.type_id}' - # -- Parent init - super().__init__(signature=True) - # -- Net Attributes - self.phenomena_type = f'{self.id}PhenomenaType' - self.phenomena_ref = f'{self.id}PhenomenaRef' + self.phenomena_type = None + self.phenomena_ref = None + - self.predicate_table.update({ - 'phenomena_type': 'hasPhenomenaType', - 'phenomena_ref': 'hasPhenomenaRef' - }) - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Construct' parts - #-------------------------------------------------------------------------- - - def construct(self, **net_attribute): - query_code = super().construct(**net_attribute) - return query_code - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Clause' parts - #-------------------------------------------------------------------------- - - def identify_operator(self, num, target_base_id): - relation_role = f'amr:role_op{num}' - target_id = f'{target_base_id}{num}' - return f""" - # -- Identify operator (amr:op) - {self.id} {relation_role} {target_id}.""" - - - def identify_optional_operator(self, num, target_base_id): - relation_role = f'amr:role_op{num}' - target_id = f'{target_base_id}{num}' - return f""" - # -- Identify optional operator (amr:op) - OPTIONAL {{ {self.id} {relation_role} {target_id}. }}""" - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Binding' parts + # Accessors for Net Attributes #-------------------------------------------------------------------------- - - def bind_uri(self, net_name='nameless', node_reference='00'): - return super().bind_uri(net_name, node_reference) - - - -#============================================================================== -# Development Test -#============================================================================== - -if __name__ == '__main__': - - print('\n' + ' *** Development Test ***') - print('\n' + ' -- test: Atom Class Net') - atom_class_net = AtomClassNet() - print(atom_class_net) + @property + def phenomena_type(self): + self._phenomena_type = super().get_attribute_value(phenomena_type=self._phenomena_type) + return self._phenomena_type + @phenomena_type.setter + def phenomena_type(self, new_value): + self._phenomena_type = new_value - print('\n' + ' -- test: construct') - construct_ctr = atom_class_net.construct(base_node='?node1', - structure='?structureRef', - class_name='?leaf1ConceptLabel') - print(construct_ctr) - - print('\n' + ' -- test: update a test query') - test_query= f"""[...] - CONSTRUCT {{ - {atom_class_net.construct(base_node='?node1', - structure='?structureRef', - class_name='?leaf1ConceptLabel')} - - {atom_class_net.propagate_relations()} - - }} - WHERE {{ - clause_1 - clause_2 - - {atom_class_net.identify_relations_for_propagation('?node1')} - - {atom_class_net.bind_uri('{{node1.concept_label}}', - '{{node1.variable_label}}')} - }} - """ - print(test_query) + @property + def phenomena_ref(self): + self._phenomena_ref = super().get_attribute_value(phenomena_ref=self._phenomena_ref) + return self._phenomena_ref - print('\n' + ' *** - ***') \ No newline at end of file + @phenomena_ref.setter + def phenomena_ref(self, new_value): + self._phenomena_ref = new_value \ No newline at end of file diff --git a/tenet/febTransduction/net/property_net.py b/tenet/febTransduction/net/property_net.py index 09a9488b..9caa07b0 100644 --- a/tenet/febTransduction/net/property_net.py +++ b/tenet/febTransduction/net/property_net.py @@ -2,16 +2,12 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Property Net Query Builder +# TENET: Property Net #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -from .net import Net +from febTransduction.net import Net #============================================================================== @@ -19,28 +15,36 @@ from .net import Net #============================================================================== class PropertyNet(Net): - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ #-------------------------------------------------------------------------- # Constructor(s) #-------------------------------------------------------------------------- - def __init__(self, num='', signature=False): - - # -- Net Signature - if not signature: - self.type_name = 'property' - self.type_id = 'Property_Net' - self.id = f'?{self.type_name}Net{num}' - self.type_uri = f'net:{self.type_id}' - + def __init__(self, support_graph, uri=None): + # -- Parent init - super().__init__(signature=True) + super().__init__(support_graph, uri) + + # -- Net Type + self.type_name = 'property' + self.type_id = 'Property_Net' + self.type_uri = f'net:{self.type_id}' # -- Net Attributes - self.property_name = f'{self.id}PropertyName' + self._property_name = None + + + #-------------------------------------------------------------------------- + # Accessors for Net Attributes + #-------------------------------------------------------------------------- - self.predicate_table.update({ - 'property_name': 'hasPropertyName' - }) \ No newline at end of file + @property + def property_name(self): + self._property_name = super().get_attribute_value(property_name=self._property_name) + return self._property_name + + @property_name.setter + def property_name(self, new_value): + self._property_name = new_value \ No newline at end of file diff --git a/tenet/febTransduction/net/restriction_net.py b/tenet/febTransduction/net/restriction_net.py index ca338fff..c9dde4bd 100644 --- a/tenet/febTransduction/net/restriction_net.py +++ b/tenet/febTransduction/net/restriction_net.py @@ -2,16 +2,12 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Atom Class Net Query Builder +# TENET: Restriction Net #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -from .net import Net +from febTransduction.net import Net #============================================================================== @@ -19,99 +15,56 @@ from .net import Net #============================================================================== class RestrictionNet(Net): - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ #-------------------------------------------------------------------------- # Constructor(s) #-------------------------------------------------------------------------- - def __init__(self, num=''): + def __init__(self, support_graph, uri=None): + + # -- Parent init + super().__init__(support_graph, uri) - # -- Net Signature + # -- Net Type self.type_name = 'restriction' self.type_id = 'Restriction_Net' - self.id = f'?{self.type_name}Net{num}' - self.type_uri = f'net:{self.type_id}' - - # -- Parent init - super().__init__(signature=True) + self.type_uri = f'net:{self.type_id}' # -- Net Attributes - self.target_node = f'{self.id}TargetNode' - self.restriction_property = f'{self.id}RestrictionOnProperty' - self.restriction_net_value = f'{self.id}RestrictionNetValue' + self.target_node = [] + self.restriction_property = None + self.restriction_net_value = None + - self.predicate_table.update({ - 'target_node': 'coverTargetNode', - 'restriction_property': 'hasRestrictionOnProperty', - 'restriction_net_value': 'hasRestrictionNetValue' - }) - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Construct' parts - #-------------------------------------------------------------------------- - - def construct(self, **net_attribute): - query_code = super().define_new_net(**net_attribute) - return query_code - - #-------------------------------------------------------------------------- - # Method(s) to build 'Complement Clause' parts + # Accessors for Net Attributes #-------------------------------------------------------------------------- - - def complete_clauses_for_construction(self): - query_code = self.identify_structure() - return query_code - - - #-------------------------------------------------------------------------- - # Method(s) to build 'Binding' parts - #-------------------------------------------------------------------------- - - def bind_uri(self, property_name='nameless', arg_name='nameless'): - ref1 = f"{self.id}Ref1" - ref2 = f"{self.id}Ref2" - ref3 = f"{self.id}Ref3" - return f""" - # -- New Restriction Net - BIND (CONCAT(str(net:), '{self.type_name}') AS {ref1}). - BIND (CONCAT({ref1}, '_', {property_name}) AS {ref2}). - BIND (CONCAT({ref2}, '_', {arg_name}) AS {ref3}). - BIND (uri({ref3}) AS {self.id}).""" - - -#============================================================================== -# Development Test -#============================================================================== - -if __name__ == '__main__': - - print('\n' + ' *** Development Test ***') - print('\n' + ' -- test: Net') - net = AtomClassNet() - print(net) + @property + def target_node(self): + self._target_node = super().get_attribute_value(target_node=self._target_node) + return self._target_node + + @target_node.setter + def target_node(self, new_value): + self._target_node = new_value - print('\n' + ' -- test: update a test query') - test_query= f"""[...] - CONSTRUCT {{ - {net.construct(base_node='?node1', - class_name='system')} + @property + def restriction_property(self): + self._restriction_property = self.get_attribute_value(restriction_property=self._restriction_property) + return self._restriction_property + + @restriction_property.setter + def restriction_property(self, new_value): + self._restriction_property = new_value - }} - WHERE {{ - clause_1 - clause_2 - - {net.complete_clauses_for_construction('?node1')} - - {net.bind_uri('{{node1.concept_label}}', - '{{node1.variable_label}}')} - }} - """ - print(test_query) + @property + def restriction_net_value(self): + self._restriction_net_value = super().get_attribute_value(restriction_net_value=self._restriction_net_value) + return self._restriction_net_value - print('\n' + ' *** - ***') \ No newline at end of file + @restriction_net_value.setter + def restriction_net_value(self, new_value): + self._restriction_net_value = new_value \ No newline at end of file diff --git a/tenet/febTransduction/net/semantic_net_rdf_reference.py b/tenet/febTransduction/net/semantic_net_rdf_reference.py new file mode 100644 index 00000000..4927e7c7 --- /dev/null +++ b/tenet/febTransduction/net/semantic_net_rdf_reference.py @@ -0,0 +1,129 @@ +#!/usr/bin/python3.10 +# -*-coding:Utf-8 -* + +#============================================================================== +# TENET: Net Query Builder +#------------------------------------------------------------------------------ +# Class to generate SPARQL query parts related to semantic nets +#============================================================================== + +# -- Useful Constant(s) +DEFAULT_ATTRIBUTE_VALUE = f'\"NA\"' +INDENT_STR = ' ' +SENTENCE_REF = '?sentenceRef' + + +#============================================================================== +# Net Class +#============================================================================== + +class SemanticNetReferenceHandle: + """ Class to handle RDF references (attributes) to semantic nets. + """ + + #-------------------------------------------------------------------------- + # Constructor + #-------------------------------------------------------------------------- + + def __init__(self): + + self._main_predicate_table = { + # *** [attribute_name: (predicate_ref, variable_ref)] *** + + # Net + 'node': 'coverNode', + 'base_node': 'coverBaseNode', + 'structure': 'hasStructure', + 'naming': 'hasNaming', + + # Class Net + 'class_name': 'hasClassName', + 'mother_class_net': 'hasMotherClassNet', + + # Property Net + 'property_name': 'hasPropertyName', + 'core_role': 'isCoreRoleLinked', + 'target_argument_node': 'targetArgumentNode', + 'property_type': 'hasPropertyType', + 'property_name01': 'hasPropertyName01', + 'property_name10': 'hasPropertyName10', + 'property_name12': 'hasPropertyName12', + + # Individual Net + 'base_class_name': 'hasBaseClassName', + 'individual_label': 'hasIndividualLabel', + + # Value Net + 'value_label': 'hasValueLabel', + + # Phenomena Net + 'phenomena_type': 'hasPhenomenaType', + 'phenomena_ref': 'hasPhenomenaRef', + + # Composite Net Restriction + 'restriction': 'hasRestriction', + 'restriction01': 'hasRestriction01', + + # Restriction Net + 'target_node': 'coverTargetNode', + 'restriction_property': 'hasRestrictionOnProperty', + 'restriction_net_value': 'hasRestrictionNetValue' + + } + + + self._track_predicate_table = { + # *** [attribute_name: predicate_ref] *** + + 'progress_step': 'trackProgress', + 'main_net_composante': 'trackMainNetComposante', + 'net_composante': 'trackNetComposante' + + } + + + #-------------------------------------------------------------------------- + # Accessor(s) + #-------------------------------------------------------------------------- + + def get_predicate_uri(self, attribute_name): + + assert (attribute_name in self._main_predicate_table.keys() or + attribute_name in self._track_predicate_table.keys()) + + predicate_uri = None + + if attribute_name in self._main_predicate_table.keys(): + predicate_rdf_reference = self._main_predicate_table[f'{attribute_name}'] + predicate_uri = f'net:{predicate_rdf_reference}' + + elif attribute_name in self._track_predicate_table.keys(): + predicate_rdf_reference = self._track_predicate_table[f'{attribute_name}'] + predicate_uri = f'net:{predicate_rdf_reference}' + + return predicate_uri + + +#============================================================================== +# Development Test +#============================================================================== + +if __name__ == '__main__': + + print('\n' + ' *** Development Test ***') + + print('\n -- Semantic Net Reference Table') + net_reference_handle = SemanticNetReferenceHandle() + + print('\n -- Some test of getting predicate uri') + + def test_getter_1(attr_ref): + attr_predicate = net_reference_handle.get_predicate_uri(attr_ref) + print(f" >>> {attr_ref}: {attr_predicate}") + + test_getter_1('base_node') + test_getter_1('progress_step') + test_getter_1('no-name') + test_getter_1('naming') + + print('\n' + ' *** - ***') \ No newline at end of file diff --git a/tenet/febTransduction/net/testGraph1.ttl b/tenet/febTransduction/net/testGraph1.ttl new file mode 100644 index 00000000..e3e90472 --- /dev/null +++ b/tenet/febTransduction/net/testGraph1.ttl @@ -0,0 +1,1572 @@ +@base <http://SolarSystemDev1/transduction> . +@prefix : <https://amr.tetras-libre.fr/rdf/schema#> . +@prefix cprm: <https://tenet.tetras-libre.fr/config/parameters#> . +@prefix net: <https://tenet.tetras-libre.fr/semantic-net#> . +@prefix ns11: <http://amr.isi.edu/rdf/amr-terms#> . +@prefix ns21: <http://amr.isi.edu/rdf/core-amr#> . +@prefix ns3: <http://amr.isi.edu/frames/ld/v1.2.2/> . +@prefix owl: <http://www.w3.org/2002/07/owl#> . +@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . +@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . +@prefix sys: <https://tenet.tetras-libre.fr/base-ontology#> . +@prefix xsd: <http://www.w3.org/2001/XMLSchema#> . + +ns21:Concept a rdfs:Class, + owl:Class ; + rdfs:label "AMR-Concept" ; + rdfs:subClassOf :AMR_Linked_Data . + +ns21:Role a rdfs:Class, + owl:Class ; + rdfs:label "AMR-Role" ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/amr_data/test-1#root01> ns21:hasID "test-1" ; + ns21:hasSentence "The sun is a star." ; + ns21:root <http://amr.isi.edu/amr_data/test-1#s> . + +<http://amr.isi.edu/amr_data/test-2#root01> ns21:hasID "test-2" ; + ns21:hasSentence "Earth is a planet." ; + ns21:root <http://amr.isi.edu/amr_data/test-2#p> . + +ns3:bind-01.ARG0 a ns3:FrameRole . + +ns3:bind-01.ARG1 a ns3:FrameRole . + +ns3:orbit-01.ARG0 a ns3:FrameRole . + +ns3:orbit-01.ARG1 a ns3:FrameRole . + +ns11:domain a ns21:Role, + owl:AnnotationProperty, + owl:NamedIndividual . + +ns11:op1 a ns21:Role . + +ns11:op2 a ns21:Role . + +ns21:hasID a owl:AnnotationProperty . + +ns21:hasSentence a owl:AnnotationProperty . + +ns21:root a owl:AnnotationProperty . + +<https://amr.tetras-libre.fr/rdf/schema> a owl:Ontology ; + owl:versionIRI :0.1 . + +:AMR_DataProperty a owl:DatatypeProperty . + +:AMR_Prep_Role a owl:Class ; + rdfs:subClassOf :AMR_Role . + +:edge_a_op1_s2 a :AMR_Edge ; + :hasAmrRole :role_op1 ; + :hasRoleID "op1" . + +:edge_a_op2_o a :AMR_Edge ; + :hasAmrRole :role_op2 ; + :hasRoleID "op2" . + +:edge_b_ARG0_g a :AMR_Edge ; + :hasAmrRole :role_ARG0 ; + :hasRoleID "ARG0" . + +:edge_b_ARG1_s a :AMR_Edge ; + :hasAmrRole :role_ARG1 ; + :hasRoleID "ARG1" . + +:edge_d2_polarity_negative a :AMR_Edge ; + :hasAmrRole :role_polarity ; + :hasRoleID "polarity" . + +:edge_m9_ARG0_o2 a :AMR_Edge ; + :hasAmrRole :role_ARG0 ; + :hasRoleID "ARG0" . + +:edge_m9_ARG1_o3 a :AMR_Edge ; + :hasAmrRole :role_ARG1 ; + :hasRoleID "ARG1" . + +:edge_o2_ARG0_o a :AMR_Edge ; + :hasAmrRole :role_ARG0 ; + :hasRoleID "ARG0" . + +:edge_o2_ARG1_s2 a :AMR_Edge ; + :hasAmrRole :role_ARG1 ; + :hasRoleID "ARG1" . + +:edge_o3_op1_d a :AMR_Edge ; + :hasAmrRole :role_op1 ; + :hasRoleID "op1" . + +:edge_o3_op2_d2 a :AMR_Edge ; + :hasAmrRole :role_op2 ; + :hasRoleID "op2" . + +:edge_p9_ARG0_s a :AMR_Edge ; + :hasAmrRole :role_ARG0 ; + :hasRoleID "ARG0" . + +:edge_p9_ARG1_a a :AMR_Edge ; + :hasAmrRole :role_ARG1 ; + :hasRoleID "ARG1" . + +:edge_p_name_SolarSystem a :AMR_Edge ; + :hasAmrRole :role_name ; + :hasRoleID "name" . + +:edge_s_domain_p a :AMR_Edge ; + :hasAmrRole :role_domain ; + :hasRoleID "domain" . + +:fromAmrLkFramerole a owl:AnnotationProperty ; + rdfs:subPropertyOf :fromAmrLk . + +:fromAmrLkRole a owl:AnnotationProperty ; + rdfs:subPropertyOf :fromAmrLk . + +:fromAmrLkRoot a owl:AnnotationProperty ; + rdfs:subPropertyOf :fromAmrLk . + +:getDirectPropertyName a owl:AnnotationProperty ; + rdfs:subPropertyOf :getProperty . + +:getInversePropertyName a owl:AnnotationProperty ; + rdfs:subPropertyOf :getProperty . + +:getPropertyType a owl:AnnotationProperty ; + rdfs:subPropertyOf :getProperty . + +:hasConcept a owl:ObjectProperty ; + rdfs:domain :AMR_Leaf ; + rdfs:subPropertyOf :AMR_ObjectProperty . + +:hasConceptLink a owl:AnnotationProperty ; + rdfs:subPropertyOf :hasLink . + +:hasEdgeLink a owl:AnnotationProperty ; + rdfs:subPropertyOf :hasLink . + +:hasReification a owl:AnnotationProperty ; + rdfs:range xsd:boolean ; + rdfs:subPropertyOf :AMR_AnnotationProperty . + +:hasReificationConcept a owl:AnnotationProperty ; + rdfs:subPropertyOf :hasReificationDefinition . + +:hasReificationDomain a owl:AnnotationProperty ; + rdfs:subPropertyOf :hasReificationDefinition . + +:hasReificationRange a owl:AnnotationProperty ; + rdfs:subPropertyOf :hasReificationDefinition . + +:hasRelationName a owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty . + +:hasRoleID a owl:ObjectProperty ; + rdfs:domain :AMR_Edge ; + rdfs:subPropertyOf :AMR_ObjectProperty . + +:hasRoleTag a owl:ObjectProperty ; + rdfs:domain :AMR_Edge ; + rdfs:subPropertyOf :AMR_ObjectProperty . + +:hasRolesetID a owl:ObjectProperty ; + rdfs:domain :AMR_Edge ; + rdfs:subPropertyOf :AMR_ObjectProperty . + +:hasRootLeaf a owl:ObjectProperty ; + rdfs:subPropertyOf :AMR_ObjectProperty . + +:hasSentenceID a owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty . + +:hasSentenceStatement a owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty . + +:hasVariable a owl:ObjectProperty ; + rdfs:domain :AMR_Leaf ; + rdfs:subPropertyOf :AMR_ObjectProperty . + +:label a owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty . + +:phenomena_degree a owl:Class ; + rdfs:subClassOf :AMR_Phenomena ; + :hasConceptLink "have-degree-91" ; + :label "degree" . + +:relation_domain a owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification false ; + :hasRelationName "domain" . + +:relation_manner a owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification true ; + :hasReificationConcept "hasManner" ; + :hasReificationDomain "ARG1" ; + :hasReificationRange "ARG2" ; + :hasRelationName "manner" . + +:relation_mod a owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification false ; + :hasRelationName "mod" . + +:relation_name a owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification false ; + :hasRelationName "name" . + +:relation_part a owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification true ; + :hasReificationConcept "hasPart" ; + :hasReificationDomain "ARG1" ; + :hasReificationRange "ARG2" ; + :hasRelationName "part" . + +:relation_polarity a owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification false ; + :hasRelationName "polarity" . + +:relation_quant a owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification false ; + :hasRelationName "quant" . + +:role_ARG2 a owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG2" . + +:role_ARG3 a owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG3" . + +:role_ARG4 a owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG4" . + +:role_ARG5 a owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG5" . + +:role_ARG6 a owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG6" . + +:role_ARG7 a owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG7" . + +:role_ARG8 a owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG8" . + +:role_ARG9 a owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG9" . + +:role_have-degree-91 a owl:Class ; + rdfs:subClassOf :AMR_Specific_Role ; + :getPropertyType <net:specificProperty> . + +:role_manner a owl:Class ; + rdfs:subClassOf :AMR_NonCore_Role ; + :getDirectPropertyName "manner" ; + :getPropertyType owl:DataProperty ; + :label "manner" ; + :toReifyAsConcept "manner" ; + :toReifyWithBaseEdge "ARG0" ; + :toReifyWithHeadEdge "ARG1" . + +:role_mod a owl:Class ; + rdfs:subClassOf :AMR_NonCore_Role ; + :getDirectPropertyName "hasFeature"^^xsd:string ; + :getPropertyType rdfs:subClassOf, + owl:ObjectProperty ; + :label "mod" ; + :toReifyAsConcept "mod" ; + :toReifyWithBaseEdge "ARG0" ; + :toReifyWithHeadEdge "ARG1" . + +:role_op3 a owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op3" . + +:role_op4 a owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op4" . + +:role_op5 a owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op5" . + +:role_op6 a owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op6" . + +:role_op7 a owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op7" . + +:role_op8 a owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op8" . + +:role_op9 a owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op9" . + +:role_part a owl:Class ; + rdfs:subClassOf :AMR_NonCore_Role ; + :getDirectPropertyName "hasPart"^^xsd:string ; + :getInversePropertyName "partOf"^^xsd:string ; + :getPropertyType owl:ObjectProperty ; + :toReifyAsConcept "part" ; + :toReifyWithBaseEdge "ARG0" ; + :toReifyWithHeadEdge "ARG1" . + +:role_quant a owl:Class ; + rdfs:subClassOf :AMR_Specific_Role ; + :label "quant" . + +:root_SSC-01-01 a :AMR_Root ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#root01> ; + :hasRootLeaf :leaf_system_s ; + :hasSentenceID "SSC-01-01" ; + :hasSentenceStatement "The Solar System is the gravitationally bound system of the Sun and the objects that orbit it, either directly or indirectly." . + +:toReifyAsConcept a owl:AnnotationProperty ; + rdfs:subPropertyOf :toReify . + +:toReifyWithBaseEdge a owl:AnnotationProperty ; + rdfs:subPropertyOf :toReify . + +:toReifyWithHeadEdge a owl:AnnotationProperty ; + rdfs:subPropertyOf :toReify . + +<https://tenet.tetras-libre.fr/base-ontology> a owl:Ontology . + +sys:Event a owl:Class ; + rdfs:subClassOf sys:Out_Structure . + +sys:Undetermined_Thing a owl:Class ; + rdfs:subClassOf sys:Out_Structure . + +sys:fromStructure a owl:AnnotationProperty ; + rdfs:subPropertyOf sys:Out_AnnotationProperty . + +sys:hasDegree a owl:ObjectProperty ; + rdfs:subPropertyOf sys:Out_ObjectProperty . + +sys:hasFeature a owl:ObjectProperty ; + rdfs:subPropertyOf sys:Out_ObjectProperty . + +<https://tenet.tetras-libre.fr/config/parameters> a owl:Ontology . + +cprm:Config_Parameters a owl:Class ; + cprm:baseURI "https://tenet.tetras-libre.fr/" ; + cprm:netURI "https://tenet.tetras-libre.fr/semantic-net#" ; + cprm:newClassRef "new-class#" ; + cprm:newPropertyRef "new-relation#" ; + cprm:objectRef "object_" ; + cprm:targetOntologyURI "https://tenet.tetras-libre.fr/base-ontology/" . + +cprm:baseURI a rdf:Property ; + rdfs:label "Base URI" ; + rdfs:domain cprm:Frame ; + rdfs:range xsd:string ; + rdfs:subPropertyOf cprm:configParamProperty . + +cprm:netURI a rdf:Property ; + rdfs:label "Net URI" ; + rdfs:domain cprm:Frame ; + rdfs:range xsd:string ; + rdfs:subPropertyOf cprm:configParamProperty . + +cprm:newClassRef a rdf:Property ; + rdfs:label "Reference for a new class" ; + rdfs:subPropertyOf cprm:configParamProperty . + +cprm:newPropertyRef a rdf:Property ; + rdfs:label "Reference for a new property" ; + rdfs:subPropertyOf cprm:configParamProperty . + +cprm:objectRef a rdf:Property ; + rdfs:label "Object Reference" ; + rdfs:subPropertyOf cprm:configParamProperty . + +cprm:targetOntologyURI a rdf:Property ; + rdfs:label "URI of classes in target ontology" ; + rdfs:domain cprm:Frame ; + rdfs:range xsd:string ; + rdfs:subPropertyOf cprm:configParamProperty . + +<https://tenet.tetras-libre.fr/semantic-net> a owl:Ontology . + +net:Instance a owl:Class ; + rdfs:label "Semantic Net Instance" ; + rdfs:subClassOf net:Net_Structure . + +net:Object a owl:Class ; + rdfs:label "Object using in semantic net instance" ; + rdfs:subClassOf net:Net_Structure . + +net:Property_Direction a owl:Class ; + rdfs:subClassOf net:Feature . + +net:abstractionClass a owl:AnnotationProperty ; + rdfs:label "abstraction class" ; + rdfs:subPropertyOf net:objectValue . + +net:atom a owl:Class ; + rdfs:label "atom" ; + rdfs:subClassOf net:Type . + +net:atomOf a owl:AnnotationProperty ; + rdfs:label "atom of" ; + rdfs:subPropertyOf net:typeProperty . + +net:atomType a owl:AnnotationProperty ; + rdfs:label "atom type" ; + rdfs:subPropertyOf net:objectType . + +net:class a owl:Class ; + rdfs:label "class" ; + rdfs:subClassOf net:Type . + +net:composite a owl:Class ; + rdfs:label "composite" ; + rdfs:subClassOf net:Type . + +net:conjunctive_list a owl:Class ; + rdfs:label "conjunctive-list" ; + rdfs:subClassOf net:list . + +net:disjunctive_list a owl:Class ; + rdfs:label "disjunctive-list" ; + rdfs:subClassOf net:list . + +net:entityClass a owl:AnnotationProperty ; + rdfs:label "entity class" ; + rdfs:subPropertyOf net:objectValue . + +net:entity_class_list a owl:Class ; + rdfs:label "entityClassList" ; + rdfs:subClassOf net:class_list . + +net:event a owl:Class ; + rdfs:label "event" ; + rdfs:subClassOf net:Type . + +net:featureClass a owl:AnnotationProperty ; + rdfs:label "feature class" ; + rdfs:subPropertyOf net:objectValue . + +net:has_atom a owl:AnnotationProperty ; + rdfs:label "has atom" ; + rdfs:subPropertyOf net:has_object . + +net:has_class a owl:AnnotationProperty ; + rdfs:label "is class" ; + rdfs:subPropertyOf net:objectValue . + +net:has_class_name a owl:AnnotationProperty ; + rdfs:subPropertyOf net:has_value . + +net:has_class_uri a owl:AnnotationProperty ; + rdfs:label "class uri" ; + rdfs:subPropertyOf net:objectValue . + +net:has_concept a owl:AnnotationProperty ; + rdfs:label "concept "@fr ; + rdfs:subPropertyOf net:objectValue . + +net:has_entity a owl:AnnotationProperty ; + rdfs:label "has entity" ; + rdfs:subPropertyOf net:has_object . + +net:has_feature a owl:AnnotationProperty ; + rdfs:label "has feature" ; + rdfs:subPropertyOf net:has_object . + +net:has_instance a owl:AnnotationProperty ; + rdfs:label "entity instance" ; + rdfs:subPropertyOf net:objectValue . + +net:has_instance_uri a owl:AnnotationProperty ; + rdfs:label "instance uri" ; + rdfs:subPropertyOf net:objectValue . + +net:has_item a owl:AnnotationProperty ; + rdfs:label "has item" ; + rdfs:subPropertyOf net:has_object . + +net:has_mother_class a owl:AnnotationProperty ; + rdfs:label "has mother class" ; + rdfs:subPropertyOf net:objectValue . + +net:has_mother_class_uri a owl:AnnotationProperty ; + rdfs:label "parent class uri" ; + rdfs:subPropertyOf net:objectValue . + +net:has_node a owl:AnnotationProperty ; + rdfs:label "UNL Node" ; + rdfs:subPropertyOf net:netProperty . + +net:has_parent a owl:AnnotationProperty ; + rdfs:label "has parent" ; + rdfs:subPropertyOf net:has_object . + +net:has_parent_class a owl:AnnotationProperty ; + rdfs:label "parent class" ; + rdfs:subPropertyOf net:objectValue . + +net:has_parent_class_uri a owl:AnnotationProperty ; + rdfs:label "parent class uri" ; + rdfs:subPropertyOf net:objectValue . + +net:has_possible_domain a owl:AnnotationProperty ; + rdfs:label "has possible domain" ; + rdfs:subPropertyOf net:has_object . + +net:has_possible_range a owl:AnnotationProperty ; + rdfs:label "has possible range" ; + rdfs:subPropertyOf net:has_object . + +net:has_relation a owl:AnnotationProperty ; + rdfs:label "has relation" ; + rdfs:subPropertyOf net:has_relation_value . + +net:has_source a owl:AnnotationProperty ; + rdfs:label "has source" ; + rdfs:subPropertyOf net:has_relation_value . + +net:has_structure a owl:AnnotationProperty ; + rdfs:label "Linguistic Structure (in UNL Document)" ; + rdfs:subPropertyOf net:netProperty . + +net:has_target a owl:AnnotationProperty ; + rdfs:label "has target" ; + rdfs:subPropertyOf net:has_relation_value . + +net:inverse_direction a owl:NamedIndividual . + +net:listBy a owl:AnnotationProperty ; + rdfs:label "list by" ; + rdfs:subPropertyOf net:typeProperty . + +net:listGuiding a owl:AnnotationProperty ; + rdfs:label "Guiding connector of a list (or, and)" ; + rdfs:subPropertyOf net:objectValue . + +net:listOf a owl:AnnotationProperty ; + rdfs:label "list of" ; + rdfs:subPropertyOf net:typeProperty . + +net:modCat1 a owl:AnnotationProperty ; + rdfs:label "Modality Category (level 1)" ; + rdfs:subPropertyOf net:objectValue . + +net:modCat2 a owl:AnnotationProperty ; + rdfs:label "Modality Category (level 2)" ; + rdfs:subPropertyOf net:objectValue . + +net:normal_direction a owl:NamedIndividual . + +net:relation a owl:Class ; + rdfs:label "relation" ; + rdfs:subClassOf net:Type . + +net:relationOf a owl:AnnotationProperty ; + rdfs:label "relation of" ; + rdfs:subPropertyOf net:typeProperty . + +net:state_property a owl:Class ; + rdfs:label "stateProperty" ; + rdfs:subClassOf net:Type . + +net:type a owl:AnnotationProperty ; + rdfs:label "type "@fr ; + rdfs:subPropertyOf net:netProperty . + +net:unary_list a owl:Class ; + rdfs:label "unary-list" ; + rdfs:subClassOf net:list . + +net:verbClass a owl:AnnotationProperty ; + rdfs:label "verb class" ; + rdfs:subPropertyOf net:objectValue . + +<http://amr.isi.edu/amr_data/SSC-01-01#b> a ns3:bind-01 ; + ns3:bind-01.ARG0 <http://amr.isi.edu/amr_data/SSC-01-01#g> ; + ns3:bind-01.ARG1 <http://amr.isi.edu/amr_data/SSC-01-01#s> ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/amr_data/SSC-01-01#o2> a ns3:orbit-01 ; + ns3:orbit-01.ARG0 <http://amr.isi.edu/amr_data/SSC-01-01#o> ; + ns3:orbit-01.ARG1 <http://amr.isi.edu/amr_data/SSC-01-01#s2> ; + ns11:manner <http://amr.isi.edu/amr_data/SSC-01-01#o3> ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/amr_data/SSC-01-01#root01> a ns21:AMR ; + ns21:has-id "SSC-01-01" ; + ns21:has-sentence "The Solar System is the gravitationally bound system of the Sun and the objects that orbit it, either directly or indirectly." ; + ns21:root <http://amr.isi.edu/amr_data/SSC-01-01#s> . + +<http://amr.isi.edu/amr_data/test-1#s> ns11:domain <http://amr.isi.edu/amr_data/test-1#s2> . + +<http://amr.isi.edu/amr_data/test-2#p> rdfs:label "Earth" . + +<http://amr.isi.edu/entity-types#planet> a ns21:NamedEntity ; + rdfs:comment "bug" ; + rdfs:subClassOf :AMR_Linked_Data . + +ns21:AMR a owl:Class ; + rdfs:subClassOf :AMR_Linked_Data . + +:AMR_Root a owl:Class ; + rdfs:subClassOf :AMR_Structure . + +:concept_and rdfs:subClassOf :AMR_Relation_Concept ; + :fromAmrLk ns21:and ; + :hasPhenomenaLink :phenomena_conjunction_and ; + :label "and" . + +:concept_bind-01 rdfs:subClassOf :AMR_Predicat_Concept ; + :fromAmrLk ns3:bind-01 ; + :label "bind-01" . + +:concept_gravitation rdfs:subClassOf :AMR_Term_Concept ; + :fromAmrLk ns11:gravitation ; + :label "gravitation" . + +:concept_manner rdfs:subClassOf :AMR_Predicat_Concept ; + :fromAmrLk ns11:manner ; + :isReifiedConcept true ; + :label "hasManner" . + +:concept_object rdfs:subClassOf :AMR_Term_Concept ; + :fromAmrLk ns11:object ; + :label "object" . + +:concept_or rdfs:subClassOf :AMR_Relation_Concept ; + :fromAmrLk ns21:or ; + :hasPhenomenaLink :phenomena_conjunction_or ; + :label "or" . + +:concept_orbit-01 rdfs:subClassOf :AMR_Predicat_Concept ; + :fromAmrLk ns3:orbit-01 ; + :label "orbit-01" . + +:concept_part rdfs:subClassOf :AMR_Predicat_Concept ; + :fromAmrLk ns11:part ; + :isReifiedConcept true ; + :label "hasPart" . + +:concept_sun rdfs:subClassOf :AMR_Term_Concept ; + :fromAmrLk ns11:sun ; + :label "sun" . + +:role_domain a owl:Class, + net:Relation ; + rdfs:subClassOf :AMR_NonCore_Role ; + :hasRelationName "domain" ; + :label "domain" ; + :toReifyAsConcept "domain" ; + :toReifyWithBaseEdge "ARG0" ; + :toReifyWithHeadEdge "ARG1" . + +:role_name a owl:Class, + net:Relation ; + rdfs:subClassOf :AMR_NonCore_Role ; + :label "name" . + +:role_polarity a owl:Class, + net:Relation ; + rdfs:subClassOf :AMR_Specific_Role ; + :label "polarity" . + +:value_SolarSystem a :AMR_Value ; + rdfs:label "Solar System" . + +:variable_a a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#a> ; + :label "a" . + +:variable_b a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#b> ; + :label "b" . + +:variable_d a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#d> ; + :label "d" . + +:variable_d2 a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#d2> ; + :label "d2" . + +:variable_g a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#g> ; + :label "g" . + +:variable_m9 a ns11:manner, + :AMR_Variable ; + :isReifiedVariable true ; + :label "m9" . + +:variable_o a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#o> ; + :label "o" . + +:variable_o2 a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#o2> ; + :label "o2" . + +:variable_o3 a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#o3> ; + :label "o3" . + +:variable_p a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#p> ; + :label "p" ; + :name "Solar System" . + +:variable_p9 a ns11:part, + :AMR_Variable ; + :isReifiedVariable true ; + :label "p9" . + +:variable_s a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#s> ; + :label "s" . + +:variable_s2 a :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#s2> ; + :label "s2" . + +sys:Degree a owl:Class ; + rdfs:subClassOf sys:Out_Structure . + +sys:Feature a owl:Class ; + rdfs:subClassOf sys:Out_Structure . + +sys:Out_AnnotationProperty a owl:AnnotationProperty . + +net:Composite_Property_Net a owl:Class ; + rdfs:subClassOf net:Property_Net . + +net:Feature a owl:Class ; + rdfs:subClassOf net:Net_Structure . + +net:Individual_Net a owl:Class ; + rdfs:subClassOf net:Net . + +net:Logical_Set_Net a owl:Class ; + rdfs:subClassOf net:Net . + +net:atomProperty_bind_b a net:Atom_Property_Net ; + :role_ARG0 net:atomClass_gravitation_g, + net:compositeClass_gravitation-binding-system-hasPart-sun-and-object_g, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_ARG1 net:atomClass_system_s, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s, + net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s, + net:compositeClass_system-hasPart-sun-and-object_s ; + net:coverBaseNode :leaf_bind-01_b ; + net:coverNode :leaf_bind-01_b ; + net:hasNaming "bind" ; + net:hasPropertyName "bind" ; + net:hasPropertyName01 "binding" ; + net:hasPropertyName10 "bind-by" ; + net:hasPropertyName12 "bind-of" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked true ; + net:targetArgumentNode :leaf_gravitation_g, + :leaf_system_s ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:atomProperty_hasManner_m9 a net:Atom_Property_Net ; + :role_ARG0 net:atomProperty_orbit_o2, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_ARG1 net:atomProperty_direct_d, + net:atomProperty_direct_d2, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:compositeProperty_not-direct_d2, + net:phenomena_conjunction-OR_o3 ; + net:coverBaseNode :leaf_hasManner_m9 ; + net:coverNode :leaf_hasManner_m9 ; + net:hasNaming "hasManner" ; + net:hasPropertyName "hasManner" ; + net:hasPropertyName01 "hasManner" ; + net:hasPropertyName10 "hasManner" ; + net:hasPropertyName12 "hasManner" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked true ; + net:targetArgumentNode :leaf_or_o3, + :leaf_orbit-01_o2 ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:class_list a owl:Class ; + rdfs:label "classList" ; + rdfs:subClassOf net:Type . + +net:compositeClass_gravitation-binding-system-hasPart-sun-and-object_g a net:Composite_Class_Net ; + net:coverBaseNode :leaf_gravitation_g ; + net:coverNode :leaf_and_a, + :leaf_bind-01_b, + :leaf_gravitation_g, + :leaf_hasPart_p9, + :leaf_system_s ; + net:coverNodeCount 5 ; + net:hasClassName "gravitation-binding-system-hasPart-sun-and-object" ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_gravitation_g ; + net:hasRestriction01 net:restriction_binding_system-hasPart-sun-and-object ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:has_value a owl:AnnotationProperty ; + rdfs:subPropertyOf net:netProperty . + +net:objectType a owl:AnnotationProperty ; + rdfs:label "object type" ; + rdfs:subPropertyOf net:objectProperty . + +net:phenomena_conjunction-AND_a a net:Phenomena_Net ; + :role_op1 net:atomClass_sun_s2, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_op2 net:atomClass_object_o, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:coverBaseNode :leaf_and_a ; + net:coverNode :leaf_and_a ; + net:hasNaming "conjunction-AND" ; + net:hasPhenomenaRef "and" ; + net:hasPhenomenaType :phenomena_conjunction_and ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:restriction_binding_system-hasPart-sun-and-object a net:Restriction_Net ; + net:coverBaseNode :leaf_gravitation_g ; + net:coverNode :leaf_and_a, + :leaf_bind-01_b, + :leaf_gravitation_g, + :leaf_hasPart_p9, + :leaf_system_s ; + net:coverTargetNode :leaf_and_a, + :leaf_bind-01_b, + :leaf_hasPart_p9, + :leaf_system_s ; + net:hasNaming "gravitation-binding-system-hasPart-sun-and-object" ; + net:hasRestrictionNetValue net:compositeClass_system-hasPart-sun-and-object_s ; + net:hasRestrictionOnProperty net:atomProperty_bind_b . + +net:value_negative_blankNode a net:Value_Net ; + net:hasNaming "negative" ; + net:hasStructure "SSC-01-01" ; + net:hasValueLabel "negative" ; + net:trackProgress net:initialized, + net:relation_propagated . + +<http://amr.isi.edu/amr_data/SSC-01-01#a> a ns21:and ; + ns11:op1 <http://amr.isi.edu/amr_data/SSC-01-01#s2> ; + ns11:op2 <http://amr.isi.edu/amr_data/SSC-01-01#o> ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/amr_data/SSC-01-01#d> a ns3:direct-02 ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/amr_data/SSC-01-01#d2> a ns3:direct-02 ; + ns11:polarity "-" ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/amr_data/SSC-01-01#g> a ns11:gravitation ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/amr_data/SSC-01-01#o3> a ns21:or ; + ns11:op1 <http://amr.isi.edu/amr_data/SSC-01-01#d> ; + ns11:op2 <http://amr.isi.edu/amr_data/SSC-01-01#d2> ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/amr_data/SSC-01-01#p> a <http://amr.isi.edu/entity-types#planet>, + <http://amr.isi.edu/entity-types#system> ; + rdfs:label "Solar System" ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/entity-types#system> a ns21:NamedEntity ; + rdfs:label "system" ; + rdfs:subClassOf :AMR_Linked_Data . + +ns3:bind-01 a ns21:Frame ; + rdfs:subClassOf :AMR_Linked_Data . + +ns3:orbit-01 a ns21:Frame ; + rdfs:subClassOf :AMR_Linked_Data . + +ns11:gravitation a ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data . + +ns11:manner a ns21:Role ; + rdfs:subClassOf :AMR_Linked_Data . + +ns11:object a ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data . + +ns11:part a ns21:Role ; + rdfs:subClassOf :AMR_Linked_Data . + +ns11:sun a ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data . + +ns11:system a ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data . + +ns21:NamedEntity a ns21:Concept, + owl:Class, + owl:NamedIndividual ; + rdfs:label "AMR-EntityType", + "AMR-Term" ; + rdfs:subClassOf :AMR_Linked_Data . + +ns21:and a ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data . + +ns21:or a ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data . + +:AMR_Phenomena a owl:Class ; + rdfs:subClassOf :AMR_Structure . + +:AMR_Relation_Concept a owl:Class ; + rdfs:subClassOf :AMR_Concept . + +:AMR_Value a owl:Class ; + rdfs:subClassOf :AMR_Element . + +:concept_direct-02 rdfs:subClassOf :AMR_Predicat_Concept ; + :fromAmrLk ns3:direct-02 ; + :label "direct-02" . + +:concept_system rdfs:subClassOf :AMR_Term_Concept ; + :fromAmrLk <http://amr.isi.edu/entity-types#system>, + ns11:system ; + :label "system" . + +:hasLink a owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty . + +:phenomena_conjunction a owl:Class ; + rdfs:subClassOf :AMR_Phenomena ; + :hasConceptLink "contrast-01", + "either", + "neither" ; + :label "conjunction" . + +:phenomena_conjunction_and a owl:Class ; + rdfs:subClassOf :phenomena_conjunction ; + :hasConceptLink "and" ; + :label "conjunction-AND" . + +:phenomena_conjunction_or a owl:Class ; + rdfs:subClassOf :phenomena_conjunction ; + :hasConceptLink "or" ; + :label "conjunction-OR" . + +:role_op1 a owl:Class, + net:Relation ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op1" . + +:role_op2 a owl:Class, + net:Relation ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op2" . + +:value_negative a :AMR_Value ; + rdfs:label "negative" . + +sys:Out_ObjectProperty a owl:ObjectProperty . + +net:Class_Net a owl:Class ; + rdfs:subClassOf net:Net . + +net:Deprecated_Net a owl:Class ; + rdfs:subClassOf net:Net . + +net:Phenomena_Net a owl:Class ; + rdfs:subClassOf net:Net . + +net:Property_Net a owl:Class ; + rdfs:subClassOf net:Net . + +net:Value_Net a owl:Class ; + rdfs:subClassOf net:Net . + +net:atomClass_gravitation_g a net:Atom_Class_Net ; + net:coverBaseNode :leaf_gravitation_g ; + net:coverNode :leaf_gravitation_g ; + net:coverNodeCount 1 ; + net:hasClassName "gravitation" ; + net:hasClassType sys:Entity ; + net:hasNaming "gravitation" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:logicalSet_and_a a net:Logical_Set_Net ; + :role_op1 net:atomClass_sun_s2, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_op2 net:atomClass_object_o, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:bindPropertyNet net:atomProperty_hasPart_p9 ; + net:bindRestriction net:restriction_hasPart_object, + net:restriction_hasPart_sun ; + net:containsNet net:atomClass_object_o, + net:atomClass_sun_s2 ; + net:containsNet1 net:atomClass_sun_s2 ; + net:containsNet2 net:atomClass_object_o ; + net:coverBaseNode :leaf_and_a ; + net:coverNode :leaf_and_a ; + net:hasLogicalConstraint "AND" ; + net:hasNaming "hasPart-sun-and-object" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:objectProperty a owl:AnnotationProperty ; + rdfs:label "object attribute" . + +net:phenomena_conjunction-OR_o3 a net:Phenomena_Net ; + :role_op1 net:atomProperty_direct_d, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_op2 net:atomProperty_direct_d2, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:compositeProperty_not-direct_d2 ; + net:coverBaseNode :leaf_or_o3 ; + net:coverNode :leaf_or_o3 ; + net:hasNaming "conjunction-OR" ; + net:hasPhenomenaRef "or" ; + net:hasPhenomenaType :phenomena_conjunction_or ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:value_SolarSystem_blankNode a net:Value_Net ; + net:hasNaming "Solar System" ; + net:hasStructure "SSC-01-01" ; + net:hasValueLabel "Solar System" ; + net:trackProgress net:initialized, + net:relation_propagated . + +<http://amr.isi.edu/amr_data/SSC-01-01#o> a ns11:object ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/amr_data/SSC-01-01#s> a ns11:system ; + ns11:domain <http://amr.isi.edu/amr_data/SSC-01-01#p> ; + ns11:part <http://amr.isi.edu/amr_data/SSC-01-01#a> ; + rdfs:subClassOf :AMR_Linked_Data . + +<http://amr.isi.edu/amr_data/SSC-01-01#s2> a ns11:sun ; + rdfs:subClassOf :AMR_Linked_Data . + +ns3:direct-02 a ns21:Frame ; + rdfs:subClassOf :AMR_Linked_Data . + +ns21:Frame a ns21:Concept, + owl:Class, + owl:NamedIndividual ; + rdfs:label "AMR-PropBank-Frame" ; + rdfs:subClassOf :AMR_Linked_Data . + +:AMR_Concept a owl:Class ; + rdfs:subClassOf :AMR_Element . + +:AMR_Specific_Role a owl:Class ; + rdfs:subClassOf :AMR_Role . + +:fromAmrLk a owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty . + +:getProperty a owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty . + +:hasReificationDefinition a owl:AnnotationProperty ; + rdfs:range rdfs:Literal ; + rdfs:subPropertyOf :AMR_AnnotationProperty . + +:leaf_direct-02_d a :AMR_Leaf ; + :hasConcept :concept_direct-02 ; + :hasVariable :variable_d . + +:leaf_hasManner_m9 a :AMR_Leaf ; + :edge_m9_ARG0_o2 :leaf_orbit-01_o2 ; + :edge_m9_ARG1_o3 :leaf_or_o3 ; + :hasConcept :concept_manner ; + :hasVariable :variable_m9 ; + :isReifiedLeaf true . + +:toReify a owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty . + +net:Restriction_Net a owl:Class ; + rdfs:subClassOf net:Net . + +net:atomProperty_orbit_o2 a net:Atom_Property_Net, + net:Deprecated_Net ; + :role_ARG0 net:atomClass_object_o, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_ARG1 net:atomClass_sun_s2, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:coverBaseNode :leaf_orbit-01_o2 ; + net:coverNode :leaf_orbit-01_o2 ; + net:hasNaming "orbit" ; + net:hasPropertyName "orbit" ; + net:hasPropertyName01 "orbiting" ; + net:hasPropertyName10 "orbit-by" ; + net:hasPropertyName12 "orbit-of" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked true ; + net:targetArgumentNode :leaf_object_o, + :leaf_sun_s2 ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s a net:Composite_Class_Net ; + :role_domain net:atomClass_system_p, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:individual_system_SolarSystem ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_and_a, + :leaf_hasPart_p9, + :leaf_object_o, + :leaf_system_s ; + net:coverNodeCount 4 ; + net:hasClassName "system-hasPart-sun-and-object-hasPart-object" ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_system_p, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:compositeClass_system-hasPart-sun-and-object_s ; + net:hasRestriction01 net:restriction_hasPart_object ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s a net:Composite_Class_Net ; + :role_domain net:atomClass_system_p, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:individual_system_SolarSystem ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_and_a, + :leaf_hasPart_p9, + :leaf_sun_s2, + :leaf_system_s ; + net:coverNodeCount 4 ; + net:hasClassName "system-hasPart-sun-and-object-hasPart-sun" ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_system_p, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:compositeClass_system-hasPart-sun-and-object_s ; + net:hasRestriction01 net:restriction_hasPart_sun ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:has_relation_value a owl:AnnotationProperty ; + rdfs:label "has relation value" ; + rdfs:subPropertyOf net:has_object . + +net:list a owl:Class ; + rdfs:label "list" ; + rdfs:subClassOf net:Type . + +net:restriction_hasPart_object a net:Restriction_Net ; + :role_domain net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_and_a, + :leaf_hasPart_p9, + :leaf_object_o, + :leaf_system_s ; + net:coverTargetNode :leaf_hasPart_p9, + :leaf_object_o ; + net:hasNaming "system-hasPart-sun-and-object-hasPart-object" ; + net:hasRestrictionNetValue net:atomClass_object_o ; + net:hasRestrictionOnProperty net:atomProperty_hasPart_p9 . + +net:restriction_hasPart_sun a net:Restriction_Net ; + :role_domain net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_and_a, + :leaf_hasPart_p9, + :leaf_sun_s2, + :leaf_system_s ; + net:coverTargetNode :leaf_hasPart_p9, + :leaf_sun_s2 ; + net:hasNaming "system-hasPart-sun-and-object-hasPart-sun" ; + net:hasRestrictionNetValue net:atomClass_sun_s2 ; + net:hasRestrictionOnProperty net:atomProperty_hasPart_p9 . + +ns3:FrameRole a ns21:Role, + owl:Class, + owl:NamedIndividual ; + rdfs:label "AMR-PropBank-Role" ; + rdfs:subClassOf :AMR_Linked_Data . + +:AMR_Element a owl:Class ; + rdfs:subClassOf :AMR_Structure . + +:AMR_Term_Concept a owl:Class ; + rdfs:subClassOf :AMR_Concept . + +:role_ARG0 a owl:Class, + net:Relation ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG0" . + +:role_ARG1 a owl:Class, + net:Relation ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG1" . + +net:atomProperty_direct_d a net:Atom_Property_Net ; + net:coverBaseNode :leaf_direct-02_d ; + net:coverNode :leaf_direct-02_d ; + net:hasNaming "direct" ; + net:hasPropertyName "direct" ; + net:hasPropertyName01 "directing" ; + net:hasPropertyName10 "direct-by" ; + net:hasPropertyName12 "direct-of" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked true ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:atomProperty_direct_d2 a net:Atom_Property_Net ; + :role_polarity net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:value_negative_blankNode ; + net:coverBaseNode :leaf_direct-02_d2 ; + net:coverNode :leaf_direct-02_d2 ; + net:hasNaming "direct" ; + net:hasPropertyName "direct" ; + net:hasPropertyName01 "directing" ; + net:hasPropertyName10 "direct-by" ; + net:hasPropertyName12 "direct-of" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked true ; + net:targetArgumentNode :value_negative ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:atomProperty_hasPart_p9 a net:Atom_Property_Net ; + :role_ARG0 net:atomClass_system_s, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s, + net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s, + net:compositeClass_system-hasPart-sun-and-object_s ; + :role_ARG1 net:atomClass_object_o, + net:atomClass_sun_s2, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:logicalSet_and_a, + net:phenomena_conjunction-AND_a ; + net:coverBaseNode :leaf_hasPart_p9 ; + net:coverNode :leaf_hasPart_p9 ; + net:hasNaming "hasPart" ; + net:hasPropertyName "hasPart" ; + net:hasPropertyName01 "hasPart" ; + net:hasPropertyName10 "hasPart" ; + net:hasPropertyName12 "hasPart" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked true ; + net:targetArgumentNode :leaf_and_a, + :leaf_system_s ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:compositeProperty_not-direct_d2 a net:Composite_Property_Net ; + :role_polarity net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:coverBaseNode :leaf_direct-02_d2 ; + net:coverNode :leaf_direct-02_d2 ; + net:hasNaming "not-direct" ; + net:hasPropertyName "not-direct" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:typeProperty a owl:AnnotationProperty ; + rdfs:label "type property" . + +:AMR_NonCore_Role a owl:Class ; + rdfs:subClassOf :AMR_Role . + +:AMR_Predicat_Concept a owl:Class ; + rdfs:subClassOf :AMR_Concept . + +:AMR_Role a owl:Class ; + rdfs:subClassOf :AMR_Element . + +:leaf_bind-01_b a :AMR_Leaf ; + :edge_b_ARG0_g :leaf_gravitation_g ; + :edge_b_ARG1_s :leaf_system_s ; + :hasConcept :concept_bind-01 ; + :hasVariable :variable_b . + +:leaf_direct-02_d2 a :AMR_Leaf ; + :edge_d2_polarity_negative :value_negative ; + :hasConcept :concept_direct-02 ; + :hasVariable :variable_d2 . + +:leaf_or_o3 a :AMR_Leaf ; + :edge_o3_op1_d :leaf_direct-02_d ; + :edge_o3_op2_d2 :leaf_direct-02_d2 ; + :hasConcept :concept_or ; + :hasVariable :variable_o3 . + +:leaf_orbit-01_o2 a :AMR_Leaf ; + :edge_o2_ARG0_o :leaf_object_o ; + :edge_o2_ARG1_s2 :leaf_sun_s2 ; + :hasConcept :concept_orbit-01 ; + :hasVariable :variable_o2 . + +:leaf_system_p a :AMR_Leaf ; + :edge_p_name_SolarSystem :value_SolarSystem ; + :hasConcept :concept_system ; + :hasVariable :variable_p . + +sys:Out_Structure a owl:Class ; + rdfs:label "Output Ontology Structure" . + +net:Atom_Class_Net a owl:Class ; + rdfs:subClassOf net:Class_Net . + +net:Composite_Class_Net a owl:Class ; + rdfs:subClassOf net:Class_Net . + +net:individual_system_SolarSystem a net:Individual_Net ; + :role_name net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:value_SolarSystem_blankNode ; + net:coverBaseNode :leaf_system_p ; + net:coverNode :leaf_system_p ; + net:hasIndividualLabel "Solar System" ; + net:hasMotherClassName net:atomClass_system_p ; + net:hasMotherClassNet net:atomClass_system_p, + net:atomClass_system_s, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s, + net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s, + net:compositeClass_system-hasPart-sun-and-object_s ; + net:hasNaming "system" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:netProperty a owl:AnnotationProperty ; + rdfs:label "netProperty" . + +:AMR_ObjectProperty a owl:ObjectProperty ; + rdfs:subPropertyOf owl:topObjectProperty . + +:AMR_Structure a owl:Class . + +cprm:configParamProperty a rdf:Property ; + rdfs:label "Config Parameter Property" . + +net:Atom_Property_Net a owl:Class ; + rdfs:subClassOf net:Property_Net . + +net:Net_Structure a owl:Class ; + rdfs:label "Semantic Net Structure" ; + rdfs:comment "A semantic net captures a set of nodes, and associates this set with type(s) and value(s)." . + +net:atomClass_system_s a net:Atom_Class_Net, + net:Deprecated_Net ; + :role_domain net:atomClass_system_p, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:individual_system_SolarSystem ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_system_s ; + net:coverNodeCount 1 ; + net:hasClassName "system" ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_system_p, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:hasNaming "system" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:compositeClass_system-hasPart-sun-and-object_s a net:Composite_Class_Net ; + :role_domain net:atomClass_system_p, + net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:individual_system_SolarSystem ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_and_a, + :leaf_hasPart_p9, + :leaf_system_s ; + net:coverNodeCount 3 ; + net:hasClassName "system-hasPart-sun-and-object" ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_system_p, + net:atomClass_system_s, + net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:hasNaming "system-hasPart-sun-and-object" ; + net:hasRestriction01 net:restriction_hasPart_object, + net:restriction_hasPart_sun ; + net:hasStructure "SSC-01-01" ; + net:trackMainNetComposante net:atomClass_system_s ; + net:trackNetComposante net:atomClass_system_s, + net:atomProperty_hasPart_p9, + net:logicalSet_and_a ; + net:trackProgress net:initialized, + net:relation_propagated . + +rdf:Property a owl:Class . + +:AMR_Relation a owl:Class ; + rdfs:subClassOf :AMR_Structure . + +net:Relation a owl:Class ; + rdfs:subClassOf net:Net_Structure . + +:leaf_gravitation_g a :AMR_Leaf ; + :hasConcept :concept_gravitation ; + :hasVariable :variable_g . + +:leaf_object_o a :AMR_Leaf ; + :hasConcept :concept_object ; + :hasVariable :variable_o . + +:leaf_sun_s2 a :AMR_Leaf ; + :hasConcept :concept_sun ; + :hasVariable :variable_s2 . + +net:Net a owl:Class ; + rdfs:subClassOf net:Net_Structure . + +net:Type a owl:Class ; + rdfs:label "Semantic Net Type" ; + rdfs:subClassOf net:Net_Structure . + +net:has_object a owl:AnnotationProperty ; + rdfs:label "relation" ; + rdfs:subPropertyOf net:netProperty . + +:AMR_Op_Role a owl:Class ; + rdfs:subClassOf :AMR_Role . + +net:atomClass_object_o a net:Atom_Class_Net ; + net:coverBaseNode :leaf_object_o ; + net:coverNode :leaf_object_o ; + net:coverNodeCount 1 ; + net:hasClassName "object" ; + net:hasClassType sys:Entity ; + net:hasNaming "object" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +net:atomClass_sun_s2 a net:Atom_Class_Net ; + net:coverBaseNode :leaf_sun_s2 ; + net:coverNode :leaf_sun_s2 ; + net:coverNodeCount 1 ; + net:hasClassName "sun" ; + net:hasClassType sys:Entity ; + net:hasNaming "sun" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +:AMR_AnnotationProperty a owl:AnnotationProperty . + +:AMR_Core_Role a owl:Class ; + rdfs:subClassOf :AMR_Role . + +sys:Entity a owl:Class ; + rdfs:subClassOf sys:Out_Structure . + +:leaf_hasPart_p9 a :AMR_Leaf ; + :edge_p9_ARG0_s :leaf_system_s ; + :edge_p9_ARG1_a :leaf_and_a ; + :hasConcept :concept_part ; + :hasVariable :variable_p9 ; + :isReifiedLeaf true . + +net:atomClass_system_p a net:Atom_Class_Net ; + :role_name net:compositeClass_orbit-hasManner-conjunction-OR_o2, + net:value_SolarSystem_blankNode ; + net:coverBaseNode :leaf_system_p ; + net:coverNode :leaf_system_p ; + net:coverNodeCount 1 ; + net:hasClassName "system" ; + net:hasNaming "system" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized, + net:relation_propagated . + +:AMR_Variable a owl:Class ; + rdfs:subClassOf :AMR_Element . + +:leaf_and_a a :AMR_Leaf ; + :edge_a_op1_s2 :leaf_sun_s2 ; + :edge_a_op2_o :leaf_object_o ; + :hasConcept :concept_and ; + :hasVariable :variable_a . + +:AMR_Leaf a owl:Class ; + rdfs:subClassOf :AMR_Structure . + +net:objectValue a owl:AnnotationProperty ; + rdfs:label "valuations"@fr ; + rdfs:subPropertyOf net:objectProperty . + +:AMR_Edge a owl:Class ; + rdfs:subClassOf :AMR_Structure . + +:leaf_system_s a :AMR_Leaf ; + :edge_s_domain_p :leaf_system_p ; + :hasConcept :concept_system ; + :hasVariable :variable_s . + +net:compositeClass_orbit-hasManner-conjunction-OR_o2 a net:Composite_Class_Net ; + :role_ARG0 net:atomClass_object_o ; + :role_ARG1 net:atomClass_sun_s2 ; + :role_domain net:atomClass_system_p, + net:individual_system_SolarSystem ; + :role_op1 net:atomClass_sun_s2, + net:atomProperty_direct_d ; + :role_op2 net:atomClass_object_o, + net:atomProperty_direct_d2, + net:compositeProperty_not-direct_d2 ; + net:coverNode :leaf_hasManner_m9, + :leaf_or_o3, + :leaf_orbit-01_o2 ; + net:coverNodeCount 3 ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_system_p ; + net:hasStructure "SSC-01-01" ; + net:trackMainNetComposante net:atomProperty_orbit_o2 ; + net:trackNetComposante net:atomProperty_direct_d, + net:atomProperty_direct_d2, + net:atomProperty_hasManner_m9, + net:atomProperty_orbit_o2, + net:compositeProperty_not-direct_d2, + net:phenomena_conjunction-OR_o3 ; + net:trackProgress net:relation_propagated . + +:AMR_Linked_Data a owl:Class . + +[] a owl:AllDisjointClasses ; + owl:members ( sys:Degree sys:Entity sys:Feature ) . + diff --git a/tenet/febTransduction/net/value_net.py b/tenet/febTransduction/net/value_net.py index 8be70cb7..570b298c 100644 --- a/tenet/febTransduction/net/value_net.py +++ b/tenet/febTransduction/net/value_net.py @@ -2,16 +2,12 @@ # -*-coding:Utf-8 -* #============================================================================== -# TENET: Value Net Query Builder +# TENET: Value Net #------------------------------------------------------------------------------ -# Class to generate SPARQL query parts related to semantic nets +# Class to handle semantic nets #============================================================================== -#============================================================================== -# Importing required modules -#============================================================================== - -from .net import Net +from febTransduction.net import Net #============================================================================== @@ -19,60 +15,36 @@ from .net import Net #============================================================================== class ValueNet(Net): - """ Class to generate SPARQL query parts related to semantic nets. + """ Class to handle semantic net. """ #-------------------------------------------------------------------------- # Constructor(s) #-------------------------------------------------------------------------- - def __init__(self, num=''): + def __init__(self, support_graph, uri=None): + + # -- Parent init + super().__init__(support_graph, uri) - # -- Net Signature + # -- Net Type self.type_name = 'value' self.type_id = 'Value_Net' - self.id = f'?{self.type_name}Net{num}' self.type_uri = f'net:{self.type_id}' - # -- Parent init - super().__init__(signature=True) - # -- Net Attributes - self.value_label = f'{self.id}ValueLabel' + self.value_label = None + - self.predicate_table.update({ - 'value_label': 'hasValueLabel' - }) - - - -#============================================================================== -# Development Test -#============================================================================== - -if __name__ == '__main__': - - print('\n' + ' *** Development Test ***') - - print('\n' + ' -- test: Net') - net = ValueNet() - print(net) - - print('\n' + ' -- test: update a test query') - test_query= f"""[...] - CONSTRUCT {{ - {net.construct(value_label='a-value')} + #-------------------------------------------------------------------------- + # Accessors for Net Attributes + #-------------------------------------------------------------------------- - }} - WHERE {{ - clause_1 - clause_2 - - {net.complete_clauses_for_construction('?node1')} - - {net.bind_uri('{{a_label}}')} - }} - """ - print(test_query) + @property + def value_label(self): + self._value_label = super().get_attribute_value(value_label=self._value_label) + return self._value_label - print('\n' + ' *** - ***') \ No newline at end of file + @value_label.setter + def value_label(self, new_value): + self._value_label = new_value \ No newline at end of file diff --git a/tests/input/testGraph1.ttl b/tests/input/testGraph1.ttl index e3e90472..5df94c1d 100644 --- a/tests/input/testGraph1.ttl +++ b/tests/input/testGraph1.ttl @@ -1,4 +1,5 @@ -@base <http://SolarSystemDev1/transduction> . +# baseURI: http://SolarSystemDev1/transduction + @prefix : <https://amr.tetras-libre.fr/rdf/schema#> . @prefix cprm: <https://tenet.tetras-libre.fr/config/parameters#> . @prefix net: <https://tenet.tetras-libre.fr/semantic-net#> . @@ -11,1562 +12,1883 @@ @prefix sys: <https://tenet.tetras-libre.fr/base-ontology#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . -ns21:Concept a rdfs:Class, - owl:Class ; - rdfs:label "AMR-Concept" ; - rdfs:subClassOf :AMR_Linked_Data . - -ns21:Role a rdfs:Class, - owl:Class ; - rdfs:label "AMR-Role" ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/amr_data/test-1#root01> ns21:hasID "test-1" ; - ns21:hasSentence "The sun is a star." ; - ns21:root <http://amr.isi.edu/amr_data/test-1#s> . - -<http://amr.isi.edu/amr_data/test-2#root01> ns21:hasID "test-2" ; - ns21:hasSentence "Earth is a planet." ; - ns21:root <http://amr.isi.edu/amr_data/test-2#p> . - -ns3:bind-01.ARG0 a ns3:FrameRole . - -ns3:bind-01.ARG1 a ns3:FrameRole . - -ns3:orbit-01.ARG0 a ns3:FrameRole . - -ns3:orbit-01.ARG1 a ns3:FrameRole . - -ns11:domain a ns21:Role, - owl:AnnotationProperty, - owl:NamedIndividual . - -ns11:op1 a ns21:Role . - -ns11:op2 a ns21:Role . - -ns21:hasID a owl:AnnotationProperty . - -ns21:hasSentence a owl:AnnotationProperty . - -ns21:root a owl:AnnotationProperty . - -<https://amr.tetras-libre.fr/rdf/schema> a owl:Ontology ; - owl:versionIRI :0.1 . - -:AMR_DataProperty a owl:DatatypeProperty . - -:AMR_Prep_Role a owl:Class ; - rdfs:subClassOf :AMR_Role . - -:edge_a_op1_s2 a :AMR_Edge ; - :hasAmrRole :role_op1 ; - :hasRoleID "op1" . - -:edge_a_op2_o a :AMR_Edge ; - :hasAmrRole :role_op2 ; - :hasRoleID "op2" . - -:edge_b_ARG0_g a :AMR_Edge ; - :hasAmrRole :role_ARG0 ; - :hasRoleID "ARG0" . - -:edge_b_ARG1_s a :AMR_Edge ; - :hasAmrRole :role_ARG1 ; - :hasRoleID "ARG1" . - -:edge_d2_polarity_negative a :AMR_Edge ; - :hasAmrRole :role_polarity ; - :hasRoleID "polarity" . - -:edge_m9_ARG0_o2 a :AMR_Edge ; - :hasAmrRole :role_ARG0 ; - :hasRoleID "ARG0" . - -:edge_m9_ARG1_o3 a :AMR_Edge ; - :hasAmrRole :role_ARG1 ; - :hasRoleID "ARG1" . - -:edge_o2_ARG0_o a :AMR_Edge ; - :hasAmrRole :role_ARG0 ; - :hasRoleID "ARG0" . - -:edge_o2_ARG1_s2 a :AMR_Edge ; - :hasAmrRole :role_ARG1 ; - :hasRoleID "ARG1" . - -:edge_o3_op1_d a :AMR_Edge ; - :hasAmrRole :role_op1 ; - :hasRoleID "op1" . - -:edge_o3_op2_d2 a :AMR_Edge ; - :hasAmrRole :role_op2 ; - :hasRoleID "op2" . - -:edge_p9_ARG0_s a :AMR_Edge ; - :hasAmrRole :role_ARG0 ; - :hasRoleID "ARG0" . - -:edge_p9_ARG1_a a :AMR_Edge ; - :hasAmrRole :role_ARG1 ; - :hasRoleID "ARG1" . - -:edge_p_name_SolarSystem a :AMR_Edge ; - :hasAmrRole :role_name ; - :hasRoleID "name" . - -:edge_s_domain_p a :AMR_Edge ; - :hasAmrRole :role_domain ; - :hasRoleID "domain" . - -:fromAmrLkFramerole a owl:AnnotationProperty ; - rdfs:subPropertyOf :fromAmrLk . - -:fromAmrLkRole a owl:AnnotationProperty ; - rdfs:subPropertyOf :fromAmrLk . - -:fromAmrLkRoot a owl:AnnotationProperty ; - rdfs:subPropertyOf :fromAmrLk . - -:getDirectPropertyName a owl:AnnotationProperty ; - rdfs:subPropertyOf :getProperty . - -:getInversePropertyName a owl:AnnotationProperty ; - rdfs:subPropertyOf :getProperty . - -:getPropertyType a owl:AnnotationProperty ; - rdfs:subPropertyOf :getProperty . - -:hasConcept a owl:ObjectProperty ; - rdfs:domain :AMR_Leaf ; - rdfs:subPropertyOf :AMR_ObjectProperty . - -:hasConceptLink a owl:AnnotationProperty ; - rdfs:subPropertyOf :hasLink . - -:hasEdgeLink a owl:AnnotationProperty ; - rdfs:subPropertyOf :hasLink . - -:hasReification a owl:AnnotationProperty ; - rdfs:range xsd:boolean ; - rdfs:subPropertyOf :AMR_AnnotationProperty . - -:hasReificationConcept a owl:AnnotationProperty ; - rdfs:subPropertyOf :hasReificationDefinition . - -:hasReificationDomain a owl:AnnotationProperty ; - rdfs:subPropertyOf :hasReificationDefinition . - -:hasReificationRange a owl:AnnotationProperty ; - rdfs:subPropertyOf :hasReificationDefinition . - -:hasRelationName a owl:AnnotationProperty ; - rdfs:subPropertyOf :AMR_AnnotationProperty . - -:hasRoleID a owl:ObjectProperty ; - rdfs:domain :AMR_Edge ; - rdfs:subPropertyOf :AMR_ObjectProperty . - -:hasRoleTag a owl:ObjectProperty ; - rdfs:domain :AMR_Edge ; - rdfs:subPropertyOf :AMR_ObjectProperty . - -:hasRolesetID a owl:ObjectProperty ; - rdfs:domain :AMR_Edge ; - rdfs:subPropertyOf :AMR_ObjectProperty . - -:hasRootLeaf a owl:ObjectProperty ; - rdfs:subPropertyOf :AMR_ObjectProperty . - -:hasSentenceID a owl:AnnotationProperty ; - rdfs:subPropertyOf :AMR_AnnotationProperty . - -:hasSentenceStatement a owl:AnnotationProperty ; - rdfs:subPropertyOf :AMR_AnnotationProperty . - -:hasVariable a owl:ObjectProperty ; - rdfs:domain :AMR_Leaf ; - rdfs:subPropertyOf :AMR_ObjectProperty . - -:label a owl:AnnotationProperty ; - rdfs:subPropertyOf :AMR_AnnotationProperty . - -:phenomena_degree a owl:Class ; - rdfs:subClassOf :AMR_Phenomena ; - :hasConceptLink "have-degree-91" ; - :label "degree" . - -:relation_domain a owl:Class ; - rdfs:subClassOf :AMR_Relation ; - :hasReification false ; - :hasRelationName "domain" . - -:relation_manner a owl:Class ; - rdfs:subClassOf :AMR_Relation ; - :hasReification true ; - :hasReificationConcept "hasManner" ; - :hasReificationDomain "ARG1" ; - :hasReificationRange "ARG2" ; - :hasRelationName "manner" . - -:relation_mod a owl:Class ; - rdfs:subClassOf :AMR_Relation ; - :hasReification false ; - :hasRelationName "mod" . - -:relation_name a owl:Class ; - rdfs:subClassOf :AMR_Relation ; - :hasReification false ; - :hasRelationName "name" . - -:relation_part a owl:Class ; - rdfs:subClassOf :AMR_Relation ; - :hasReification true ; - :hasReificationConcept "hasPart" ; - :hasReificationDomain "ARG1" ; - :hasReificationRange "ARG2" ; - :hasRelationName "part" . - -:relation_polarity a owl:Class ; - rdfs:subClassOf :AMR_Relation ; - :hasReification false ; - :hasRelationName "polarity" . - -:relation_quant a owl:Class ; - rdfs:subClassOf :AMR_Relation ; - :hasReification false ; - :hasRelationName "quant" . - -:role_ARG2 a owl:Class ; - rdfs:subClassOf :AMR_Core_Role ; - :label "ARG2" . - -:role_ARG3 a owl:Class ; - rdfs:subClassOf :AMR_Core_Role ; - :label "ARG3" . - -:role_ARG4 a owl:Class ; - rdfs:subClassOf :AMR_Core_Role ; - :label "ARG4" . - -:role_ARG5 a owl:Class ; - rdfs:subClassOf :AMR_Core_Role ; - :label "ARG5" . - -:role_ARG6 a owl:Class ; - rdfs:subClassOf :AMR_Core_Role ; - :label "ARG6" . - -:role_ARG7 a owl:Class ; - rdfs:subClassOf :AMR_Core_Role ; - :label "ARG7" . - -:role_ARG8 a owl:Class ; - rdfs:subClassOf :AMR_Core_Role ; - :label "ARG8" . - -:role_ARG9 a owl:Class ; - rdfs:subClassOf :AMR_Core_Role ; - :label "ARG9" . - -:role_have-degree-91 a owl:Class ; - rdfs:subClassOf :AMR_Specific_Role ; - :getPropertyType <net:specificProperty> . - -:role_manner a owl:Class ; - rdfs:subClassOf :AMR_NonCore_Role ; - :getDirectPropertyName "manner" ; - :getPropertyType owl:DataProperty ; - :label "manner" ; - :toReifyAsConcept "manner" ; - :toReifyWithBaseEdge "ARG0" ; - :toReifyWithHeadEdge "ARG1" . - -:role_mod a owl:Class ; - rdfs:subClassOf :AMR_NonCore_Role ; - :getDirectPropertyName "hasFeature"^^xsd:string ; - :getPropertyType rdfs:subClassOf, - owl:ObjectProperty ; - :label "mod" ; - :toReifyAsConcept "mod" ; - :toReifyWithBaseEdge "ARG0" ; - :toReifyWithHeadEdge "ARG1" . - -:role_op3 a owl:Class ; - rdfs:subClassOf :AMR_Op_Role ; - :label "op3" . - -:role_op4 a owl:Class ; - rdfs:subClassOf :AMR_Op_Role ; - :label "op4" . - -:role_op5 a owl:Class ; - rdfs:subClassOf :AMR_Op_Role ; - :label "op5" . - -:role_op6 a owl:Class ; - rdfs:subClassOf :AMR_Op_Role ; - :label "op6" . - -:role_op7 a owl:Class ; - rdfs:subClassOf :AMR_Op_Role ; - :label "op7" . - -:role_op8 a owl:Class ; - rdfs:subClassOf :AMR_Op_Role ; - :label "op8" . - -:role_op9 a owl:Class ; - rdfs:subClassOf :AMR_Op_Role ; - :label "op9" . - -:role_part a owl:Class ; - rdfs:subClassOf :AMR_NonCore_Role ; - :getDirectPropertyName "hasPart"^^xsd:string ; - :getInversePropertyName "partOf"^^xsd:string ; - :getPropertyType owl:ObjectProperty ; - :toReifyAsConcept "part" ; - :toReifyWithBaseEdge "ARG0" ; - :toReifyWithHeadEdge "ARG1" . - -:role_quant a owl:Class ; - rdfs:subClassOf :AMR_Specific_Role ; - :label "quant" . - -:root_SSC-01-01 a :AMR_Root ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#root01> ; - :hasRootLeaf :leaf_system_s ; - :hasSentenceID "SSC-01-01" ; - :hasSentenceStatement "The Solar System is the gravitationally bound system of the Sun and the objects that orbit it, either directly or indirectly." . - -:toReifyAsConcept a owl:AnnotationProperty ; - rdfs:subPropertyOf :toReify . - -:toReifyWithBaseEdge a owl:AnnotationProperty ; - rdfs:subPropertyOf :toReify . - -:toReifyWithHeadEdge a owl:AnnotationProperty ; - rdfs:subPropertyOf :toReify . - -<https://tenet.tetras-libre.fr/base-ontology> a owl:Ontology . - -sys:Event a owl:Class ; - rdfs:subClassOf sys:Out_Structure . - -sys:Undetermined_Thing a owl:Class ; - rdfs:subClassOf sys:Out_Structure . - -sys:fromStructure a owl:AnnotationProperty ; - rdfs:subPropertyOf sys:Out_AnnotationProperty . - -sys:hasDegree a owl:ObjectProperty ; - rdfs:subPropertyOf sys:Out_ObjectProperty . - -sys:hasFeature a owl:ObjectProperty ; - rdfs:subPropertyOf sys:Out_ObjectProperty . - -<https://tenet.tetras-libre.fr/config/parameters> a owl:Ontology . - -cprm:Config_Parameters a owl:Class ; - cprm:baseURI "https://tenet.tetras-libre.fr/" ; - cprm:netURI "https://tenet.tetras-libre.fr/semantic-net#" ; - cprm:newClassRef "new-class#" ; - cprm:newPropertyRef "new-relation#" ; - cprm:objectRef "object_" ; - cprm:targetOntologyURI "https://tenet.tetras-libre.fr/base-ontology/" . - -cprm:baseURI a rdf:Property ; - rdfs:label "Base URI" ; - rdfs:domain cprm:Frame ; - rdfs:range xsd:string ; - rdfs:subPropertyOf cprm:configParamProperty . - -cprm:netURI a rdf:Property ; - rdfs:label "Net URI" ; - rdfs:domain cprm:Frame ; - rdfs:range xsd:string ; - rdfs:subPropertyOf cprm:configParamProperty . - -cprm:newClassRef a rdf:Property ; - rdfs:label "Reference for a new class" ; - rdfs:subPropertyOf cprm:configParamProperty . - -cprm:newPropertyRef a rdf:Property ; - rdfs:label "Reference for a new property" ; - rdfs:subPropertyOf cprm:configParamProperty . - -cprm:objectRef a rdf:Property ; - rdfs:label "Object Reference" ; - rdfs:subPropertyOf cprm:configParamProperty . - -cprm:targetOntologyURI a rdf:Property ; - rdfs:label "URI of classes in target ontology" ; - rdfs:domain cprm:Frame ; - rdfs:range xsd:string ; - rdfs:subPropertyOf cprm:configParamProperty . - -<https://tenet.tetras-libre.fr/semantic-net> a owl:Ontology . - -net:Instance a owl:Class ; - rdfs:label "Semantic Net Instance" ; - rdfs:subClassOf net:Net_Structure . - -net:Object a owl:Class ; - rdfs:label "Object using in semantic net instance" ; - rdfs:subClassOf net:Net_Structure . - -net:Property_Direction a owl:Class ; - rdfs:subClassOf net:Feature . - -net:abstractionClass a owl:AnnotationProperty ; - rdfs:label "abstraction class" ; - rdfs:subPropertyOf net:objectValue . - -net:atom a owl:Class ; - rdfs:label "atom" ; - rdfs:subClassOf net:Type . - -net:atomOf a owl:AnnotationProperty ; - rdfs:label "atom of" ; - rdfs:subPropertyOf net:typeProperty . - -net:atomType a owl:AnnotationProperty ; - rdfs:label "atom type" ; - rdfs:subPropertyOf net:objectType . - -net:class a owl:Class ; - rdfs:label "class" ; - rdfs:subClassOf net:Type . - -net:composite a owl:Class ; - rdfs:label "composite" ; - rdfs:subClassOf net:Type . - -net:conjunctive_list a owl:Class ; - rdfs:label "conjunctive-list" ; - rdfs:subClassOf net:list . - -net:disjunctive_list a owl:Class ; - rdfs:label "disjunctive-list" ; - rdfs:subClassOf net:list . - -net:entityClass a owl:AnnotationProperty ; - rdfs:label "entity class" ; - rdfs:subPropertyOf net:objectValue . - -net:entity_class_list a owl:Class ; - rdfs:label "entityClassList" ; - rdfs:subClassOf net:class_list . - -net:event a owl:Class ; - rdfs:label "event" ; - rdfs:subClassOf net:Type . - -net:featureClass a owl:AnnotationProperty ; - rdfs:label "feature class" ; - rdfs:subPropertyOf net:objectValue . - -net:has_atom a owl:AnnotationProperty ; - rdfs:label "has atom" ; - rdfs:subPropertyOf net:has_object . - -net:has_class a owl:AnnotationProperty ; - rdfs:label "is class" ; - rdfs:subPropertyOf net:objectValue . - -net:has_class_name a owl:AnnotationProperty ; - rdfs:subPropertyOf net:has_value . - -net:has_class_uri a owl:AnnotationProperty ; - rdfs:label "class uri" ; - rdfs:subPropertyOf net:objectValue . - -net:has_concept a owl:AnnotationProperty ; - rdfs:label "concept "@fr ; - rdfs:subPropertyOf net:objectValue . - -net:has_entity a owl:AnnotationProperty ; - rdfs:label "has entity" ; - rdfs:subPropertyOf net:has_object . - -net:has_feature a owl:AnnotationProperty ; - rdfs:label "has feature" ; - rdfs:subPropertyOf net:has_object . - -net:has_instance a owl:AnnotationProperty ; - rdfs:label "entity instance" ; - rdfs:subPropertyOf net:objectValue . - -net:has_instance_uri a owl:AnnotationProperty ; - rdfs:label "instance uri" ; - rdfs:subPropertyOf net:objectValue . - -net:has_item a owl:AnnotationProperty ; - rdfs:label "has item" ; - rdfs:subPropertyOf net:has_object . - -net:has_mother_class a owl:AnnotationProperty ; - rdfs:label "has mother class" ; - rdfs:subPropertyOf net:objectValue . - -net:has_mother_class_uri a owl:AnnotationProperty ; - rdfs:label "parent class uri" ; - rdfs:subPropertyOf net:objectValue . - -net:has_node a owl:AnnotationProperty ; - rdfs:label "UNL Node" ; - rdfs:subPropertyOf net:netProperty . - -net:has_parent a owl:AnnotationProperty ; - rdfs:label "has parent" ; - rdfs:subPropertyOf net:has_object . - -net:has_parent_class a owl:AnnotationProperty ; - rdfs:label "parent class" ; - rdfs:subPropertyOf net:objectValue . - -net:has_parent_class_uri a owl:AnnotationProperty ; - rdfs:label "parent class uri" ; - rdfs:subPropertyOf net:objectValue . - -net:has_possible_domain a owl:AnnotationProperty ; - rdfs:label "has possible domain" ; - rdfs:subPropertyOf net:has_object . - -net:has_possible_range a owl:AnnotationProperty ; - rdfs:label "has possible range" ; - rdfs:subPropertyOf net:has_object . - -net:has_relation a owl:AnnotationProperty ; - rdfs:label "has relation" ; - rdfs:subPropertyOf net:has_relation_value . - -net:has_source a owl:AnnotationProperty ; - rdfs:label "has source" ; - rdfs:subPropertyOf net:has_relation_value . - -net:has_structure a owl:AnnotationProperty ; - rdfs:label "Linguistic Structure (in UNL Document)" ; - rdfs:subPropertyOf net:netProperty . - -net:has_target a owl:AnnotationProperty ; - rdfs:label "has target" ; - rdfs:subPropertyOf net:has_relation_value . - -net:inverse_direction a owl:NamedIndividual . - -net:listBy a owl:AnnotationProperty ; - rdfs:label "list by" ; - rdfs:subPropertyOf net:typeProperty . - -net:listGuiding a owl:AnnotationProperty ; - rdfs:label "Guiding connector of a list (or, and)" ; - rdfs:subPropertyOf net:objectValue . - -net:listOf a owl:AnnotationProperty ; - rdfs:label "list of" ; - rdfs:subPropertyOf net:typeProperty . - -net:modCat1 a owl:AnnotationProperty ; - rdfs:label "Modality Category (level 1)" ; - rdfs:subPropertyOf net:objectValue . - -net:modCat2 a owl:AnnotationProperty ; - rdfs:label "Modality Category (level 2)" ; - rdfs:subPropertyOf net:objectValue . - -net:normal_direction a owl:NamedIndividual . - -net:relation a owl:Class ; - rdfs:label "relation" ; - rdfs:subClassOf net:Type . - -net:relationOf a owl:AnnotationProperty ; - rdfs:label "relation of" ; - rdfs:subPropertyOf net:typeProperty . - -net:state_property a owl:Class ; - rdfs:label "stateProperty" ; - rdfs:subClassOf net:Type . - -net:type a owl:AnnotationProperty ; - rdfs:label "type "@fr ; - rdfs:subPropertyOf net:netProperty . - -net:unary_list a owl:Class ; - rdfs:label "unary-list" ; - rdfs:subClassOf net:list . - -net:verbClass a owl:AnnotationProperty ; - rdfs:label "verb class" ; - rdfs:subPropertyOf net:objectValue . - -<http://amr.isi.edu/amr_data/SSC-01-01#b> a ns3:bind-01 ; - ns3:bind-01.ARG0 <http://amr.isi.edu/amr_data/SSC-01-01#g> ; - ns3:bind-01.ARG1 <http://amr.isi.edu/amr_data/SSC-01-01#s> ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/amr_data/SSC-01-01#o2> a ns3:orbit-01 ; - ns3:orbit-01.ARG0 <http://amr.isi.edu/amr_data/SSC-01-01#o> ; - ns3:orbit-01.ARG1 <http://amr.isi.edu/amr_data/SSC-01-01#s2> ; - ns11:manner <http://amr.isi.edu/amr_data/SSC-01-01#o3> ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/amr_data/SSC-01-01#root01> a ns21:AMR ; - ns21:has-id "SSC-01-01" ; - ns21:has-sentence "The Solar System is the gravitationally bound system of the Sun and the objects that orbit it, either directly or indirectly." ; - ns21:root <http://amr.isi.edu/amr_data/SSC-01-01#s> . - -<http://amr.isi.edu/amr_data/test-1#s> ns11:domain <http://amr.isi.edu/amr_data/test-1#s2> . - -<http://amr.isi.edu/amr_data/test-2#p> rdfs:label "Earth" . - -<http://amr.isi.edu/entity-types#planet> a ns21:NamedEntity ; - rdfs:comment "bug" ; - rdfs:subClassOf :AMR_Linked_Data . - -ns21:AMR a owl:Class ; - rdfs:subClassOf :AMR_Linked_Data . - -:AMR_Root a owl:Class ; - rdfs:subClassOf :AMR_Structure . - -:concept_and rdfs:subClassOf :AMR_Relation_Concept ; - :fromAmrLk ns21:and ; - :hasPhenomenaLink :phenomena_conjunction_and ; - :label "and" . - -:concept_bind-01 rdfs:subClassOf :AMR_Predicat_Concept ; - :fromAmrLk ns3:bind-01 ; - :label "bind-01" . - -:concept_gravitation rdfs:subClassOf :AMR_Term_Concept ; - :fromAmrLk ns11:gravitation ; - :label "gravitation" . - -:concept_manner rdfs:subClassOf :AMR_Predicat_Concept ; - :fromAmrLk ns11:manner ; - :isReifiedConcept true ; - :label "hasManner" . - -:concept_object rdfs:subClassOf :AMR_Term_Concept ; - :fromAmrLk ns11:object ; - :label "object" . - -:concept_or rdfs:subClassOf :AMR_Relation_Concept ; - :fromAmrLk ns21:or ; - :hasPhenomenaLink :phenomena_conjunction_or ; - :label "or" . - -:concept_orbit-01 rdfs:subClassOf :AMR_Predicat_Concept ; - :fromAmrLk ns3:orbit-01 ; - :label "orbit-01" . - -:concept_part rdfs:subClassOf :AMR_Predicat_Concept ; - :fromAmrLk ns11:part ; - :isReifiedConcept true ; - :label "hasPart" . - -:concept_sun rdfs:subClassOf :AMR_Term_Concept ; - :fromAmrLk ns11:sun ; - :label "sun" . - -:role_domain a owl:Class, - net:Relation ; - rdfs:subClassOf :AMR_NonCore_Role ; - :hasRelationName "domain" ; - :label "domain" ; - :toReifyAsConcept "domain" ; - :toReifyWithBaseEdge "ARG0" ; - :toReifyWithHeadEdge "ARG1" . - -:role_name a owl:Class, - net:Relation ; - rdfs:subClassOf :AMR_NonCore_Role ; - :label "name" . - -:role_polarity a owl:Class, - net:Relation ; - rdfs:subClassOf :AMR_Specific_Role ; - :label "polarity" . - -:value_SolarSystem a :AMR_Value ; - rdfs:label "Solar System" . - -:variable_a a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#a> ; - :label "a" . - -:variable_b a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#b> ; - :label "b" . - -:variable_d a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#d> ; - :label "d" . - -:variable_d2 a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#d2> ; - :label "d2" . - -:variable_g a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#g> ; - :label "g" . - -:variable_m9 a ns11:manner, - :AMR_Variable ; - :isReifiedVariable true ; - :label "m9" . - -:variable_o a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#o> ; - :label "o" . - -:variable_o2 a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#o2> ; - :label "o2" . - -:variable_o3 a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#o3> ; - :label "o3" . - -:variable_p a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#p> ; - :label "p" ; - :name "Solar System" . - -:variable_p9 a ns11:part, - :AMR_Variable ; - :isReifiedVariable true ; - :label "p9" . - -:variable_s a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#s> ; - :label "s" . - -:variable_s2 a :AMR_Variable ; - :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#s2> ; - :label "s2" . - -sys:Degree a owl:Class ; - rdfs:subClassOf sys:Out_Structure . - -sys:Feature a owl:Class ; - rdfs:subClassOf sys:Out_Structure . - -sys:Out_AnnotationProperty a owl:AnnotationProperty . - -net:Composite_Property_Net a owl:Class ; - rdfs:subClassOf net:Property_Net . - -net:Feature a owl:Class ; - rdfs:subClassOf net:Net_Structure . - -net:Individual_Net a owl:Class ; - rdfs:subClassOf net:Net . - -net:Logical_Set_Net a owl:Class ; - rdfs:subClassOf net:Net . - -net:atomProperty_bind_b a net:Atom_Property_Net ; - :role_ARG0 net:atomClass_gravitation_g, - net:compositeClass_gravitation-binding-system-hasPart-sun-and-object_g, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - :role_ARG1 net:atomClass_system_s, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s, - net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s, - net:compositeClass_system-hasPart-sun-and-object_s ; - net:coverBaseNode :leaf_bind-01_b ; - net:coverNode :leaf_bind-01_b ; - net:hasNaming "bind" ; - net:hasPropertyName "bind" ; - net:hasPropertyName01 "binding" ; - net:hasPropertyName10 "bind-by" ; - net:hasPropertyName12 "bind-of" ; - net:hasPropertyType owl:ObjectProperty ; - net:hasStructure "SSC-01-01" ; - net:isCoreRoleLinked true ; - net:targetArgumentNode :leaf_gravitation_g, - :leaf_system_s ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:atomProperty_hasManner_m9 a net:Atom_Property_Net ; - :role_ARG0 net:atomProperty_orbit_o2, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - :role_ARG1 net:atomProperty_direct_d, - net:atomProperty_direct_d2, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:compositeProperty_not-direct_d2, - net:phenomena_conjunction-OR_o3 ; - net:coverBaseNode :leaf_hasManner_m9 ; - net:coverNode :leaf_hasManner_m9 ; - net:hasNaming "hasManner" ; - net:hasPropertyName "hasManner" ; - net:hasPropertyName01 "hasManner" ; - net:hasPropertyName10 "hasManner" ; - net:hasPropertyName12 "hasManner" ; - net:hasPropertyType owl:ObjectProperty ; - net:hasStructure "SSC-01-01" ; - net:isCoreRoleLinked true ; - net:targetArgumentNode :leaf_or_o3, - :leaf_orbit-01_o2 ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:class_list a owl:Class ; - rdfs:label "classList" ; - rdfs:subClassOf net:Type . - -net:compositeClass_gravitation-binding-system-hasPart-sun-and-object_g a net:Composite_Class_Net ; - net:coverBaseNode :leaf_gravitation_g ; - net:coverNode :leaf_and_a, - :leaf_bind-01_b, - :leaf_gravitation_g, - :leaf_hasPart_p9, - :leaf_system_s ; - net:coverNodeCount 5 ; - net:hasClassName "gravitation-binding-system-hasPart-sun-and-object" ; - net:hasClassType sys:Entity ; - net:hasMotherClassNet net:atomClass_gravitation_g ; - net:hasRestriction01 net:restriction_binding_system-hasPart-sun-and-object ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:has_value a owl:AnnotationProperty ; - rdfs:subPropertyOf net:netProperty . - -net:objectType a owl:AnnotationProperty ; - rdfs:label "object type" ; - rdfs:subPropertyOf net:objectProperty . - -net:phenomena_conjunction-AND_a a net:Phenomena_Net ; - :role_op1 net:atomClass_sun_s2, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - :role_op2 net:atomClass_object_o, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - net:coverBaseNode :leaf_and_a ; - net:coverNode :leaf_and_a ; - net:hasNaming "conjunction-AND" ; - net:hasPhenomenaRef "and" ; - net:hasPhenomenaType :phenomena_conjunction_and ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:restriction_binding_system-hasPart-sun-and-object a net:Restriction_Net ; - net:coverBaseNode :leaf_gravitation_g ; - net:coverNode :leaf_and_a, - :leaf_bind-01_b, - :leaf_gravitation_g, - :leaf_hasPart_p9, - :leaf_system_s ; - net:coverTargetNode :leaf_and_a, - :leaf_bind-01_b, - :leaf_hasPart_p9, - :leaf_system_s ; - net:hasNaming "gravitation-binding-system-hasPart-sun-and-object" ; - net:hasRestrictionNetValue net:compositeClass_system-hasPart-sun-and-object_s ; - net:hasRestrictionOnProperty net:atomProperty_bind_b . - -net:value_negative_blankNode a net:Value_Net ; - net:hasNaming "negative" ; - net:hasStructure "SSC-01-01" ; - net:hasValueLabel "negative" ; - net:trackProgress net:initialized, - net:relation_propagated . - -<http://amr.isi.edu/amr_data/SSC-01-01#a> a ns21:and ; - ns11:op1 <http://amr.isi.edu/amr_data/SSC-01-01#s2> ; - ns11:op2 <http://amr.isi.edu/amr_data/SSC-01-01#o> ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/amr_data/SSC-01-01#d> a ns3:direct-02 ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/amr_data/SSC-01-01#d2> a ns3:direct-02 ; - ns11:polarity "-" ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/amr_data/SSC-01-01#g> a ns11:gravitation ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/amr_data/SSC-01-01#o3> a ns21:or ; - ns11:op1 <http://amr.isi.edu/amr_data/SSC-01-01#d> ; - ns11:op2 <http://amr.isi.edu/amr_data/SSC-01-01#d2> ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/amr_data/SSC-01-01#p> a <http://amr.isi.edu/entity-types#planet>, - <http://amr.isi.edu/entity-types#system> ; - rdfs:label "Solar System" ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/entity-types#system> a ns21:NamedEntity ; - rdfs:label "system" ; - rdfs:subClassOf :AMR_Linked_Data . - -ns3:bind-01 a ns21:Frame ; - rdfs:subClassOf :AMR_Linked_Data . - -ns3:orbit-01 a ns21:Frame ; - rdfs:subClassOf :AMR_Linked_Data . - -ns11:gravitation a ns21:Concept ; - rdfs:subClassOf :AMR_Linked_Data . - -ns11:manner a ns21:Role ; - rdfs:subClassOf :AMR_Linked_Data . - -ns11:object a ns21:Concept ; - rdfs:subClassOf :AMR_Linked_Data . - -ns11:part a ns21:Role ; - rdfs:subClassOf :AMR_Linked_Data . - -ns11:sun a ns21:Concept ; - rdfs:subClassOf :AMR_Linked_Data . - -ns11:system a ns21:Concept ; - rdfs:subClassOf :AMR_Linked_Data . - -ns21:NamedEntity a ns21:Concept, - owl:Class, - owl:NamedIndividual ; - rdfs:label "AMR-EntityType", - "AMR-Term" ; - rdfs:subClassOf :AMR_Linked_Data . - -ns21:and a ns21:Concept ; - rdfs:subClassOf :AMR_Linked_Data . - -ns21:or a ns21:Concept ; - rdfs:subClassOf :AMR_Linked_Data . - -:AMR_Phenomena a owl:Class ; - rdfs:subClassOf :AMR_Structure . - -:AMR_Relation_Concept a owl:Class ; - rdfs:subClassOf :AMR_Concept . - -:AMR_Value a owl:Class ; - rdfs:subClassOf :AMR_Element . - -:concept_direct-02 rdfs:subClassOf :AMR_Predicat_Concept ; - :fromAmrLk ns3:direct-02 ; - :label "direct-02" . - -:concept_system rdfs:subClassOf :AMR_Term_Concept ; - :fromAmrLk <http://amr.isi.edu/entity-types#system>, - ns11:system ; - :label "system" . - -:hasLink a owl:AnnotationProperty ; - rdfs:subPropertyOf :AMR_AnnotationProperty . - -:phenomena_conjunction a owl:Class ; - rdfs:subClassOf :AMR_Phenomena ; - :hasConceptLink "contrast-01", - "either", - "neither" ; - :label "conjunction" . - -:phenomena_conjunction_and a owl:Class ; - rdfs:subClassOf :phenomena_conjunction ; - :hasConceptLink "and" ; - :label "conjunction-AND" . - -:phenomena_conjunction_or a owl:Class ; - rdfs:subClassOf :phenomena_conjunction ; - :hasConceptLink "or" ; - :label "conjunction-OR" . - -:role_op1 a owl:Class, - net:Relation ; - rdfs:subClassOf :AMR_Op_Role ; - :label "op1" . - -:role_op2 a owl:Class, - net:Relation ; - rdfs:subClassOf :AMR_Op_Role ; - :label "op2" . - -:value_negative a :AMR_Value ; - rdfs:label "negative" . - -sys:Out_ObjectProperty a owl:ObjectProperty . - -net:Class_Net a owl:Class ; - rdfs:subClassOf net:Net . - -net:Deprecated_Net a owl:Class ; - rdfs:subClassOf net:Net . - -net:Phenomena_Net a owl:Class ; - rdfs:subClassOf net:Net . - -net:Property_Net a owl:Class ; - rdfs:subClassOf net:Net . - -net:Value_Net a owl:Class ; - rdfs:subClassOf net:Net . - -net:atomClass_gravitation_g a net:Atom_Class_Net ; - net:coverBaseNode :leaf_gravitation_g ; - net:coverNode :leaf_gravitation_g ; - net:coverNodeCount 1 ; - net:hasClassName "gravitation" ; - net:hasClassType sys:Entity ; - net:hasNaming "gravitation" ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:logicalSet_and_a a net:Logical_Set_Net ; - :role_op1 net:atomClass_sun_s2, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - :role_op2 net:atomClass_object_o, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - net:bindPropertyNet net:atomProperty_hasPart_p9 ; - net:bindRestriction net:restriction_hasPart_object, - net:restriction_hasPart_sun ; - net:containsNet net:atomClass_object_o, - net:atomClass_sun_s2 ; - net:containsNet1 net:atomClass_sun_s2 ; - net:containsNet2 net:atomClass_object_o ; - net:coverBaseNode :leaf_and_a ; - net:coverNode :leaf_and_a ; - net:hasLogicalConstraint "AND" ; - net:hasNaming "hasPart-sun-and-object" ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:objectProperty a owl:AnnotationProperty ; - rdfs:label "object attribute" . - -net:phenomena_conjunction-OR_o3 a net:Phenomena_Net ; - :role_op1 net:atomProperty_direct_d, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - :role_op2 net:atomProperty_direct_d2, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:compositeProperty_not-direct_d2 ; - net:coverBaseNode :leaf_or_o3 ; - net:coverNode :leaf_or_o3 ; - net:hasNaming "conjunction-OR" ; - net:hasPhenomenaRef "or" ; - net:hasPhenomenaType :phenomena_conjunction_or ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:value_SolarSystem_blankNode a net:Value_Net ; - net:hasNaming "Solar System" ; - net:hasStructure "SSC-01-01" ; - net:hasValueLabel "Solar System" ; - net:trackProgress net:initialized, - net:relation_propagated . - -<http://amr.isi.edu/amr_data/SSC-01-01#o> a ns11:object ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/amr_data/SSC-01-01#s> a ns11:system ; - ns11:domain <http://amr.isi.edu/amr_data/SSC-01-01#p> ; - ns11:part <http://amr.isi.edu/amr_data/SSC-01-01#a> ; - rdfs:subClassOf :AMR_Linked_Data . - -<http://amr.isi.edu/amr_data/SSC-01-01#s2> a ns11:sun ; - rdfs:subClassOf :AMR_Linked_Data . - -ns3:direct-02 a ns21:Frame ; - rdfs:subClassOf :AMR_Linked_Data . - -ns21:Frame a ns21:Concept, - owl:Class, - owl:NamedIndividual ; - rdfs:label "AMR-PropBank-Frame" ; - rdfs:subClassOf :AMR_Linked_Data . - -:AMR_Concept a owl:Class ; - rdfs:subClassOf :AMR_Element . - -:AMR_Specific_Role a owl:Class ; - rdfs:subClassOf :AMR_Role . - -:fromAmrLk a owl:AnnotationProperty ; - rdfs:subPropertyOf :AMR_AnnotationProperty . - -:getProperty a owl:AnnotationProperty ; - rdfs:subPropertyOf :AMR_AnnotationProperty . - -:hasReificationDefinition a owl:AnnotationProperty ; - rdfs:range rdfs:Literal ; - rdfs:subPropertyOf :AMR_AnnotationProperty . - -:leaf_direct-02_d a :AMR_Leaf ; - :hasConcept :concept_direct-02 ; - :hasVariable :variable_d . - -:leaf_hasManner_m9 a :AMR_Leaf ; - :edge_m9_ARG0_o2 :leaf_orbit-01_o2 ; - :edge_m9_ARG1_o3 :leaf_or_o3 ; - :hasConcept :concept_manner ; - :hasVariable :variable_m9 ; - :isReifiedLeaf true . - -:toReify a owl:AnnotationProperty ; - rdfs:subPropertyOf :AMR_AnnotationProperty . - -net:Restriction_Net a owl:Class ; - rdfs:subClassOf net:Net . - -net:atomProperty_orbit_o2 a net:Atom_Property_Net, - net:Deprecated_Net ; - :role_ARG0 net:atomClass_object_o, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - :role_ARG1 net:atomClass_sun_s2, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - net:coverBaseNode :leaf_orbit-01_o2 ; - net:coverNode :leaf_orbit-01_o2 ; - net:hasNaming "orbit" ; - net:hasPropertyName "orbit" ; - net:hasPropertyName01 "orbiting" ; - net:hasPropertyName10 "orbit-by" ; - net:hasPropertyName12 "orbit-of" ; - net:hasPropertyType owl:ObjectProperty ; - net:hasStructure "SSC-01-01" ; - net:isCoreRoleLinked true ; - net:targetArgumentNode :leaf_object_o, - :leaf_sun_s2 ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s a net:Composite_Class_Net ; - :role_domain net:atomClass_system_p, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:individual_system_SolarSystem ; - net:coverBaseNode :leaf_system_s ; - net:coverNode :leaf_and_a, - :leaf_hasPart_p9, - :leaf_object_o, - :leaf_system_s ; - net:coverNodeCount 4 ; - net:hasClassName "system-hasPart-sun-and-object-hasPart-object" ; - net:hasClassType sys:Entity ; - net:hasMotherClassNet net:atomClass_system_p, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:compositeClass_system-hasPart-sun-and-object_s ; - net:hasRestriction01 net:restriction_hasPart_object ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s a net:Composite_Class_Net ; - :role_domain net:atomClass_system_p, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:individual_system_SolarSystem ; - net:coverBaseNode :leaf_system_s ; - net:coverNode :leaf_and_a, - :leaf_hasPart_p9, - :leaf_sun_s2, - :leaf_system_s ; - net:coverNodeCount 4 ; - net:hasClassName "system-hasPart-sun-and-object-hasPart-sun" ; - net:hasClassType sys:Entity ; - net:hasMotherClassNet net:atomClass_system_p, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:compositeClass_system-hasPart-sun-and-object_s ; - net:hasRestriction01 net:restriction_hasPart_sun ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:has_relation_value a owl:AnnotationProperty ; - rdfs:label "has relation value" ; - rdfs:subPropertyOf net:has_object . - -net:list a owl:Class ; - rdfs:label "list" ; - rdfs:subClassOf net:Type . - -net:restriction_hasPart_object a net:Restriction_Net ; - :role_domain net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - net:coverBaseNode :leaf_system_s ; - net:coverNode :leaf_and_a, - :leaf_hasPart_p9, - :leaf_object_o, - :leaf_system_s ; - net:coverTargetNode :leaf_hasPart_p9, - :leaf_object_o ; - net:hasNaming "system-hasPart-sun-and-object-hasPart-object" ; - net:hasRestrictionNetValue net:atomClass_object_o ; - net:hasRestrictionOnProperty net:atomProperty_hasPart_p9 . - -net:restriction_hasPart_sun a net:Restriction_Net ; - :role_domain net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - net:coverBaseNode :leaf_system_s ; - net:coverNode :leaf_and_a, - :leaf_hasPart_p9, - :leaf_sun_s2, - :leaf_system_s ; - net:coverTargetNode :leaf_hasPart_p9, - :leaf_sun_s2 ; - net:hasNaming "system-hasPart-sun-and-object-hasPart-sun" ; - net:hasRestrictionNetValue net:atomClass_sun_s2 ; - net:hasRestrictionOnProperty net:atomProperty_hasPart_p9 . - -ns3:FrameRole a ns21:Role, - owl:Class, - owl:NamedIndividual ; - rdfs:label "AMR-PropBank-Role" ; - rdfs:subClassOf :AMR_Linked_Data . - -:AMR_Element a owl:Class ; - rdfs:subClassOf :AMR_Structure . - -:AMR_Term_Concept a owl:Class ; - rdfs:subClassOf :AMR_Concept . - -:role_ARG0 a owl:Class, - net:Relation ; - rdfs:subClassOf :AMR_Core_Role ; - :label "ARG0" . - -:role_ARG1 a owl:Class, - net:Relation ; - rdfs:subClassOf :AMR_Core_Role ; - :label "ARG1" . - -net:atomProperty_direct_d a net:Atom_Property_Net ; - net:coverBaseNode :leaf_direct-02_d ; - net:coverNode :leaf_direct-02_d ; - net:hasNaming "direct" ; - net:hasPropertyName "direct" ; - net:hasPropertyName01 "directing" ; - net:hasPropertyName10 "direct-by" ; - net:hasPropertyName12 "direct-of" ; - net:hasPropertyType owl:ObjectProperty ; - net:hasStructure "SSC-01-01" ; - net:isCoreRoleLinked true ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:atomProperty_direct_d2 a net:Atom_Property_Net ; - :role_polarity net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:value_negative_blankNode ; - net:coverBaseNode :leaf_direct-02_d2 ; - net:coverNode :leaf_direct-02_d2 ; - net:hasNaming "direct" ; - net:hasPropertyName "direct" ; - net:hasPropertyName01 "directing" ; - net:hasPropertyName10 "direct-by" ; - net:hasPropertyName12 "direct-of" ; - net:hasPropertyType owl:ObjectProperty ; - net:hasStructure "SSC-01-01" ; - net:isCoreRoleLinked true ; - net:targetArgumentNode :value_negative ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:atomProperty_hasPart_p9 a net:Atom_Property_Net ; - :role_ARG0 net:atomClass_system_s, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s, - net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s, - net:compositeClass_system-hasPart-sun-and-object_s ; - :role_ARG1 net:atomClass_object_o, - net:atomClass_sun_s2, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:logicalSet_and_a, - net:phenomena_conjunction-AND_a ; - net:coverBaseNode :leaf_hasPart_p9 ; - net:coverNode :leaf_hasPart_p9 ; - net:hasNaming "hasPart" ; - net:hasPropertyName "hasPart" ; - net:hasPropertyName01 "hasPart" ; - net:hasPropertyName10 "hasPart" ; - net:hasPropertyName12 "hasPart" ; - net:hasPropertyType owl:ObjectProperty ; - net:hasStructure "SSC-01-01" ; - net:isCoreRoleLinked true ; - net:targetArgumentNode :leaf_and_a, - :leaf_system_s ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:compositeProperty_not-direct_d2 a net:Composite_Property_Net ; - :role_polarity net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - net:coverBaseNode :leaf_direct-02_d2 ; - net:coverNode :leaf_direct-02_d2 ; - net:hasNaming "not-direct" ; - net:hasPropertyName "not-direct" ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:typeProperty a owl:AnnotationProperty ; - rdfs:label "type property" . - -:AMR_NonCore_Role a owl:Class ; - rdfs:subClassOf :AMR_Role . - -:AMR_Predicat_Concept a owl:Class ; - rdfs:subClassOf :AMR_Concept . - -:AMR_Role a owl:Class ; - rdfs:subClassOf :AMR_Element . - -:leaf_bind-01_b a :AMR_Leaf ; - :edge_b_ARG0_g :leaf_gravitation_g ; - :edge_b_ARG1_s :leaf_system_s ; - :hasConcept :concept_bind-01 ; - :hasVariable :variable_b . - -:leaf_direct-02_d2 a :AMR_Leaf ; - :edge_d2_polarity_negative :value_negative ; - :hasConcept :concept_direct-02 ; - :hasVariable :variable_d2 . - -:leaf_or_o3 a :AMR_Leaf ; - :edge_o3_op1_d :leaf_direct-02_d ; - :edge_o3_op2_d2 :leaf_direct-02_d2 ; - :hasConcept :concept_or ; - :hasVariable :variable_o3 . - -:leaf_orbit-01_o2 a :AMR_Leaf ; - :edge_o2_ARG0_o :leaf_object_o ; - :edge_o2_ARG1_s2 :leaf_sun_s2 ; - :hasConcept :concept_orbit-01 ; - :hasVariable :variable_o2 . - -:leaf_system_p a :AMR_Leaf ; - :edge_p_name_SolarSystem :value_SolarSystem ; - :hasConcept :concept_system ; - :hasVariable :variable_p . - -sys:Out_Structure a owl:Class ; - rdfs:label "Output Ontology Structure" . - -net:Atom_Class_Net a owl:Class ; - rdfs:subClassOf net:Class_Net . - -net:Composite_Class_Net a owl:Class ; - rdfs:subClassOf net:Class_Net . - -net:individual_system_SolarSystem a net:Individual_Net ; - :role_name net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:value_SolarSystem_blankNode ; - net:coverBaseNode :leaf_system_p ; - net:coverNode :leaf_system_p ; - net:hasIndividualLabel "Solar System" ; - net:hasMotherClassName net:atomClass_system_p ; - net:hasMotherClassNet net:atomClass_system_p, - net:atomClass_system_s, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s, - net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s, - net:compositeClass_system-hasPart-sun-and-object_s ; - net:hasNaming "system" ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:netProperty a owl:AnnotationProperty ; - rdfs:label "netProperty" . - -:AMR_ObjectProperty a owl:ObjectProperty ; - rdfs:subPropertyOf owl:topObjectProperty . - -:AMR_Structure a owl:Class . - -cprm:configParamProperty a rdf:Property ; - rdfs:label "Config Parameter Property" . - -net:Atom_Property_Net a owl:Class ; - rdfs:subClassOf net:Property_Net . - -net:Net_Structure a owl:Class ; - rdfs:label "Semantic Net Structure" ; - rdfs:comment "A semantic net captures a set of nodes, and associates this set with type(s) and value(s)." . - -net:atomClass_system_s a net:Atom_Class_Net, - net:Deprecated_Net ; - :role_domain net:atomClass_system_p, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:individual_system_SolarSystem ; - net:coverBaseNode :leaf_system_s ; - net:coverNode :leaf_system_s ; - net:coverNodeCount 1 ; - net:hasClassName "system" ; - net:hasClassType sys:Entity ; - net:hasMotherClassNet net:atomClass_system_p, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - net:hasNaming "system" ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:compositeClass_system-hasPart-sun-and-object_s a net:Composite_Class_Net ; - :role_domain net:atomClass_system_p, - net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:individual_system_SolarSystem ; - net:coverBaseNode :leaf_system_s ; - net:coverNode :leaf_and_a, - :leaf_hasPart_p9, - :leaf_system_s ; - net:coverNodeCount 3 ; - net:hasClassName "system-hasPart-sun-and-object" ; - net:hasClassType sys:Entity ; - net:hasMotherClassNet net:atomClass_system_p, - net:atomClass_system_s, - net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; - net:hasNaming "system-hasPart-sun-and-object" ; - net:hasRestriction01 net:restriction_hasPart_object, - net:restriction_hasPart_sun ; - net:hasStructure "SSC-01-01" ; - net:trackMainNetComposante net:atomClass_system_s ; - net:trackNetComposante net:atomClass_system_s, - net:atomProperty_hasPart_p9, - net:logicalSet_and_a ; - net:trackProgress net:initialized, - net:relation_propagated . - -rdf:Property a owl:Class . - -:AMR_Relation a owl:Class ; - rdfs:subClassOf :AMR_Structure . - -net:Relation a owl:Class ; - rdfs:subClassOf net:Net_Structure . - -:leaf_gravitation_g a :AMR_Leaf ; - :hasConcept :concept_gravitation ; - :hasVariable :variable_g . - -:leaf_object_o a :AMR_Leaf ; - :hasConcept :concept_object ; - :hasVariable :variable_o . - -:leaf_sun_s2 a :AMR_Leaf ; - :hasConcept :concept_sun ; - :hasVariable :variable_s2 . - -net:Net a owl:Class ; - rdfs:subClassOf net:Net_Structure . - -net:Type a owl:Class ; - rdfs:label "Semantic Net Type" ; - rdfs:subClassOf net:Net_Structure . - -net:has_object a owl:AnnotationProperty ; - rdfs:label "relation" ; - rdfs:subPropertyOf net:netProperty . - -:AMR_Op_Role a owl:Class ; - rdfs:subClassOf :AMR_Role . - -net:atomClass_object_o a net:Atom_Class_Net ; - net:coverBaseNode :leaf_object_o ; - net:coverNode :leaf_object_o ; - net:coverNodeCount 1 ; - net:hasClassName "object" ; - net:hasClassType sys:Entity ; - net:hasNaming "object" ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -net:atomClass_sun_s2 a net:Atom_Class_Net ; - net:coverBaseNode :leaf_sun_s2 ; - net:coverNode :leaf_sun_s2 ; - net:coverNodeCount 1 ; - net:hasClassName "sun" ; - net:hasClassType sys:Entity ; - net:hasNaming "sun" ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -:AMR_AnnotationProperty a owl:AnnotationProperty . - -:AMR_Core_Role a owl:Class ; - rdfs:subClassOf :AMR_Role . - -sys:Entity a owl:Class ; - rdfs:subClassOf sys:Out_Structure . - -:leaf_hasPart_p9 a :AMR_Leaf ; - :edge_p9_ARG0_s :leaf_system_s ; - :edge_p9_ARG1_a :leaf_and_a ; - :hasConcept :concept_part ; - :hasVariable :variable_p9 ; - :isReifiedLeaf true . - -net:atomClass_system_p a net:Atom_Class_Net ; - :role_name net:compositeClass_orbit-hasManner-conjunction-OR_o2, - net:value_SolarSystem_blankNode ; - net:coverBaseNode :leaf_system_p ; - net:coverNode :leaf_system_p ; - net:coverNodeCount 1 ; - net:hasClassName "system" ; - net:hasNaming "system" ; - net:hasStructure "SSC-01-01" ; - net:trackProgress net:initialized, - net:relation_propagated . - -:AMR_Variable a owl:Class ; - rdfs:subClassOf :AMR_Element . - -:leaf_and_a a :AMR_Leaf ; - :edge_a_op1_s2 :leaf_sun_s2 ; - :edge_a_op2_o :leaf_object_o ; - :hasConcept :concept_and ; - :hasVariable :variable_a . - -:AMR_Leaf a owl:Class ; - rdfs:subClassOf :AMR_Structure . - -net:objectValue a owl:AnnotationProperty ; - rdfs:label "valuations"@fr ; - rdfs:subPropertyOf net:objectProperty . - -:AMR_Edge a owl:Class ; - rdfs:subClassOf :AMR_Structure . - -:leaf_system_s a :AMR_Leaf ; - :edge_s_domain_p :leaf_system_p ; - :hasConcept :concept_system ; - :hasVariable :variable_s . - -net:compositeClass_orbit-hasManner-conjunction-OR_o2 a net:Composite_Class_Net ; - :role_ARG0 net:atomClass_object_o ; - :role_ARG1 net:atomClass_sun_s2 ; - :role_domain net:atomClass_system_p, - net:individual_system_SolarSystem ; - :role_op1 net:atomClass_sun_s2, - net:atomProperty_direct_d ; - :role_op2 net:atomClass_object_o, - net:atomProperty_direct_d2, - net:compositeProperty_not-direct_d2 ; - net:coverNode :leaf_hasManner_m9, - :leaf_or_o3, - :leaf_orbit-01_o2 ; - net:coverNodeCount 3 ; - net:hasClassType sys:Entity ; - net:hasMotherClassNet net:atomClass_system_p ; - net:hasStructure "SSC-01-01" ; - net:trackMainNetComposante net:atomProperty_orbit_o2 ; - net:trackNetComposante net:atomProperty_direct_d, - net:atomProperty_direct_d2, - net:atomProperty_hasManner_m9, - net:atomProperty_orbit_o2, - net:compositeProperty_not-direct_d2, - net:phenomena_conjunction-OR_o3 ; - net:trackProgress net:relation_propagated . - -:AMR_Linked_Data a owl:Class . - -[] a owl:AllDisjointClasses ; - owl:members ( sys:Degree sys:Entity sys:Feature ) . - +<http://amr.isi.edu/amr_data/SSC-01-01#a> + rdf:type ns21:and ; + ns11:op1 <http://amr.isi.edu/amr_data/SSC-01-01#s2> ; + ns11:op2 <http://amr.isi.edu/amr_data/SSC-01-01#o> ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#b> + rdf:type ns3:bind-01 ; + <http://amr.isi.edu/frames/ld/v1.2.2/bind-01.ARG0> <http://amr.isi.edu/amr_data/SSC-01-01#g> ; + <http://amr.isi.edu/frames/ld/v1.2.2/bind-01.ARG1> <http://amr.isi.edu/amr_data/SSC-01-01#s> ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#d> + rdf:type ns3:direct-02 ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#d2> + rdf:type ns3:direct-02 ; + ns11:polarity "-" ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#g> + rdf:type ns11:gravitation ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#o> + rdf:type ns11:object ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#o2> + rdf:type ns3:orbit-01 ; + <http://amr.isi.edu/frames/ld/v1.2.2/orbit-01.ARG0> <http://amr.isi.edu/amr_data/SSC-01-01#o> ; + <http://amr.isi.edu/frames/ld/v1.2.2/orbit-01.ARG1> <http://amr.isi.edu/amr_data/SSC-01-01#s2> ; + ns11:manner <http://amr.isi.edu/amr_data/SSC-01-01#o3> ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#o3> + rdf:type ns21:or ; + ns11:op1 <http://amr.isi.edu/amr_data/SSC-01-01#d> ; + ns11:op2 <http://amr.isi.edu/amr_data/SSC-01-01#d2> ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#p> + rdf:type <http://amr.isi.edu/entity-types#planet> ; + rdf:type <http://amr.isi.edu/entity-types#system> ; + rdfs:label "Solar System" ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#root01> + rdf:type ns21:AMR ; + ns21:has-id "SSC-01-01" ; + ns21:has-sentence "The Solar System is the gravitationally bound system of the Sun and the objects that orbit it, either directly or indirectly." ; + ns21:root <http://amr.isi.edu/amr_data/SSC-01-01#s> ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#s> + rdf:type ns11:system ; + ns11:domain <http://amr.isi.edu/amr_data/SSC-01-01#p> ; + ns11:part <http://amr.isi.edu/amr_data/SSC-01-01#a> ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/SSC-01-01#s2> + rdf:type ns11:sun ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/amr_data/test-1#root01> + ns21:hasID "test-1" ; + ns21:hasSentence "The sun is a star." ; + ns21:root <http://amr.isi.edu/amr_data/test-1#s> ; +. +<http://amr.isi.edu/amr_data/test-1#s> + ns11:domain <http://amr.isi.edu/amr_data/test-1#s2> ; +. +<http://amr.isi.edu/amr_data/test-2#p> + rdfs:label "Earth" ; +. +<http://amr.isi.edu/amr_data/test-2#root01> + ns21:hasID "test-2" ; + ns21:hasSentence "Earth is a planet." ; + ns21:root <http://amr.isi.edu/amr_data/test-2#p> ; +. +<http://amr.isi.edu/entity-types#planet> + rdf:type ns21:NamedEntity ; + rdfs:comment "bug" ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/entity-types#system> + rdf:type ns21:NamedEntity ; + rdfs:label "system" ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns3:FrameRole + rdf:type ns21:Role ; + rdf:type owl:Class ; + rdf:type owl:NamedIndividual ; + rdfs:label "AMR-PropBank-Role" ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns3:bind-01 + rdf:type ns21:Frame ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/frames/ld/v1.2.2/bind-01.ARG0> + rdf:type ns3:FrameRole ; +. +<http://amr.isi.edu/frames/ld/v1.2.2/bind-01.ARG1> + rdf:type ns3:FrameRole ; +. +ns3:direct-02 + rdf:type ns21:Frame ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns3:orbit-01 + rdf:type ns21:Frame ; + rdfs:subClassOf :AMR_Linked_Data ; +. +<http://amr.isi.edu/frames/ld/v1.2.2/orbit-01.ARG0> + rdf:type ns3:FrameRole ; +. +<http://amr.isi.edu/frames/ld/v1.2.2/orbit-01.ARG1> + rdf:type ns3:FrameRole ; +. +ns11:domain + rdf:type ns21:Role ; + rdf:type owl:AnnotationProperty ; + rdf:type owl:NamedIndividual ; +. +ns11:gravitation + rdf:type ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns11:manner + rdf:type ns21:Role ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns11:object + rdf:type ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns11:op1 + rdf:type ns21:Role ; +. +ns11:op2 + rdf:type ns21:Role ; +. +ns11:part + rdf:type ns21:Role ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns11:sun + rdf:type ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns11:system + rdf:type ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns21:AMR + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns21:Concept + rdf:type rdfs:Class ; + rdf:type owl:Class ; + rdfs:label "AMR-Concept" ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns21:Frame + rdf:type ns21:Concept ; + rdf:type owl:Class ; + rdf:type owl:NamedIndividual ; + rdfs:label "AMR-PropBank-Frame" ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns21:NamedEntity + rdf:type ns21:Concept ; + rdf:type owl:Class ; + rdf:type owl:NamedIndividual ; + rdfs:label "AMR-EntityType" ; + rdfs:label "AMR-Term" ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns21:Role + rdf:type rdfs:Class ; + rdf:type owl:Class ; + rdfs:label "AMR-Role" ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns21:and + rdf:type ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns21:hasID + rdf:type owl:AnnotationProperty ; +. +ns21:hasSentence + rdf:type owl:AnnotationProperty ; +. +ns21:or + rdf:type ns21:Concept ; + rdfs:subClassOf :AMR_Linked_Data ; +. +ns21:root + rdf:type owl:AnnotationProperty ; +. +rdf:Property + rdf:type owl:Class ; +. +<https://amr.tetras-libre.fr/rdf/schema> + rdf:type owl:Ontology ; + owl:versionIRI <https://amr.tetras-libre.fr/rdf/schema#0.1> ; +. +:AMR_AnnotationProperty + rdf:type owl:AnnotationProperty ; +. +:AMR_Concept + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Element ; +. +:AMR_Core_Role + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Role ; +. +:AMR_DataProperty + rdf:type owl:DatatypeProperty ; +. +:AMR_Edge + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Structure ; +. +:AMR_Element + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Structure ; +. +:AMR_Leaf + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Structure ; +. +:AMR_Linked_Data + rdf:type owl:Class ; +. +:AMR_NonCore_Role + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Role ; +. +:AMR_ObjectProperty + rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf owl:topObjectProperty ; +. +:AMR_Op_Role + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Role ; +. +:AMR_Phenomena + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Structure ; +. +:AMR_Predicat_Concept + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Concept ; +. +:AMR_Prep_Role + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Role ; +. +:AMR_Relation + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Structure ; +. +:AMR_Relation_Concept + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Concept ; +. +:AMR_Role + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Element ; +. +:AMR_Root + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Structure ; +. +:AMR_Specific_Role + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Role ; +. +:AMR_Structure + rdf:type owl:Class ; +. +:AMR_Term_Concept + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Concept ; +. +:AMR_Value + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Element ; +. +:AMR_Variable + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Element ; +. +:concept_and + rdfs:subClassOf :AMR_Relation_Concept ; + :fromAmrLk ns21:and ; + :hasPhenomenaLink :phenomena_conjunction_and ; + :label "and" ; +. +:concept_bind-01 + rdfs:subClassOf :AMR_Predicat_Concept ; + :fromAmrLk ns3:bind-01 ; + :label "bind-01" ; +. +:concept_direct-02 + rdfs:subClassOf :AMR_Predicat_Concept ; + :fromAmrLk ns3:direct-02 ; + :label "direct-02" ; +. +:concept_gravitation + rdfs:subClassOf :AMR_Term_Concept ; + :fromAmrLk ns11:gravitation ; + :label "gravitation" ; +. +:concept_manner + rdfs:subClassOf :AMR_Predicat_Concept ; + :fromAmrLk ns11:manner ; + :isReifiedConcept "true"^^xsd:boolean ; + :label "hasManner" ; +. +:concept_object + rdfs:subClassOf :AMR_Term_Concept ; + :fromAmrLk ns11:object ; + :label "object" ; +. +:concept_or + rdfs:subClassOf :AMR_Relation_Concept ; + :fromAmrLk ns21:or ; + :hasPhenomenaLink :phenomena_conjunction_or ; + :label "or" ; +. +:concept_orbit-01 + rdfs:subClassOf :AMR_Predicat_Concept ; + :fromAmrLk ns3:orbit-01 ; + :label "orbit-01" ; +. +:concept_part + rdfs:subClassOf :AMR_Predicat_Concept ; + :fromAmrLk ns11:part ; + :isReifiedConcept "true"^^xsd:boolean ; + :label "hasPart" ; +. +:concept_sun + rdfs:subClassOf :AMR_Term_Concept ; + :fromAmrLk ns11:sun ; + :label "sun" ; +. +:concept_system + rdfs:subClassOf :AMR_Term_Concept ; + :fromAmrLk <http://amr.isi.edu/entity-types#system> ; + :fromAmrLk ns11:system ; + :label "system" ; +. +:edge_a_op1_s2 + rdf:type :AMR_Edge ; + :hasAmrRole :role_op1 ; + :hasRoleID "op1" ; +. +:edge_a_op2_o + rdf:type :AMR_Edge ; + :hasAmrRole :role_op2 ; + :hasRoleID "op2" ; +. +:edge_b_ARG0_g + rdf:type :AMR_Edge ; + :hasAmrRole :role_ARG0 ; + :hasRoleID "ARG0" ; +. +:edge_b_ARG1_s + rdf:type :AMR_Edge ; + :hasAmrRole :role_ARG1 ; + :hasRoleID "ARG1" ; +. +:edge_d2_polarity_negative + rdf:type :AMR_Edge ; + :hasAmrRole :role_polarity ; + :hasRoleID "polarity" ; +. +:edge_m9_ARG0_o2 + rdf:type :AMR_Edge ; + :hasAmrRole :role_ARG0 ; + :hasRoleID "ARG0" ; +. +:edge_m9_ARG1_o3 + rdf:type :AMR_Edge ; + :hasAmrRole :role_ARG1 ; + :hasRoleID "ARG1" ; +. +:edge_o2_ARG0_o + rdf:type :AMR_Edge ; + :hasAmrRole :role_ARG0 ; + :hasRoleID "ARG0" ; +. +:edge_o2_ARG1_s2 + rdf:type :AMR_Edge ; + :hasAmrRole :role_ARG1 ; + :hasRoleID "ARG1" ; +. +:edge_o3_op1_d + rdf:type :AMR_Edge ; + :hasAmrRole :role_op1 ; + :hasRoleID "op1" ; +. +:edge_o3_op2_d2 + rdf:type :AMR_Edge ; + :hasAmrRole :role_op2 ; + :hasRoleID "op2" ; +. +:edge_p9_ARG0_s + rdf:type :AMR_Edge ; + :hasAmrRole :role_ARG0 ; + :hasRoleID "ARG0" ; +. +:edge_p9_ARG1_a + rdf:type :AMR_Edge ; + :hasAmrRole :role_ARG1 ; + :hasRoleID "ARG1" ; +. +:edge_p_name_SolarSystem + rdf:type :AMR_Edge ; + :hasAmrRole :role_name ; + :hasRoleID "name" ; +. +:edge_s_domain_p + rdf:type :AMR_Edge ; + :hasAmrRole :role_domain ; + :hasRoleID "domain" ; +. +:fromAmrLk + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty ; +. +:fromAmrLkFramerole + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :fromAmrLk ; +. +:fromAmrLkRole + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :fromAmrLk ; +. +:fromAmrLkRoot + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :fromAmrLk ; +. +:getDirectPropertyName + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :getProperty ; +. +:getInversePropertyName + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :getProperty ; +. +:getProperty + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty ; +. +:getPropertyType + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :getProperty ; +. +:hasConcept + rdf:type owl:ObjectProperty ; + rdfs:domain :AMR_Leaf ; + rdfs:subPropertyOf :AMR_ObjectProperty ; +. +:hasConceptLink + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :hasLink ; +. +:hasEdgeLink + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :hasLink ; +. +:hasLink + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty ; +. +:hasReification + rdf:type owl:AnnotationProperty ; + rdfs:range xsd:boolean ; + rdfs:subPropertyOf :AMR_AnnotationProperty ; +. +:hasReificationConcept + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :hasReificationDefinition ; +. +:hasReificationDefinition + rdf:type owl:AnnotationProperty ; + rdfs:range rdfs:Literal ; + rdfs:subPropertyOf :AMR_AnnotationProperty ; +. +:hasReificationDomain + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :hasReificationDefinition ; +. +:hasReificationRange + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :hasReificationDefinition ; +. +:hasRelationName + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty ; +. +:hasRoleID + rdf:type owl:ObjectProperty ; + rdfs:domain :AMR_Edge ; + rdfs:subPropertyOf :AMR_ObjectProperty ; +. +:hasRoleTag + rdf:type owl:ObjectProperty ; + rdfs:domain :AMR_Edge ; + rdfs:subPropertyOf :AMR_ObjectProperty ; +. +:hasRolesetID + rdf:type owl:ObjectProperty ; + rdfs:domain :AMR_Edge ; + rdfs:subPropertyOf :AMR_ObjectProperty ; +. +:hasRootLeaf + rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf :AMR_ObjectProperty ; +. +:hasSentenceID + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty ; +. +:hasSentenceStatement + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty ; +. +:hasVariable + rdf:type owl:ObjectProperty ; + rdfs:domain :AMR_Leaf ; + rdfs:subPropertyOf :AMR_ObjectProperty ; +. +:label + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty ; +. +:leaf_and_a + rdf:type :AMR_Leaf ; + :edge_a_op1_s2 :leaf_sun_s2 ; + :edge_a_op2_o :leaf_object_o ; + :hasConcept :concept_and ; + :hasVariable :variable_a ; +. +:leaf_bind-01_b + rdf:type :AMR_Leaf ; + :edge_b_ARG0_g :leaf_gravitation_g ; + :edge_b_ARG1_s :leaf_system_s ; + :hasConcept :concept_bind-01 ; + :hasVariable :variable_b ; +. +:leaf_direct-02_d + rdf:type :AMR_Leaf ; + :hasConcept :concept_direct-02 ; + :hasVariable :variable_d ; +. +:leaf_direct-02_d2 + rdf:type :AMR_Leaf ; + :edge_d2_polarity_negative :value_negative ; + :hasConcept :concept_direct-02 ; + :hasVariable :variable_d2 ; +. +:leaf_gravitation_g + rdf:type :AMR_Leaf ; + :hasConcept :concept_gravitation ; + :hasVariable :variable_g ; +. +:leaf_hasManner_m9 + rdf:type :AMR_Leaf ; + :edge_m9_ARG0_o2 :leaf_orbit-01_o2 ; + :edge_m9_ARG1_o3 :leaf_or_o3 ; + :hasConcept :concept_manner ; + :hasVariable :variable_m9 ; + :isReifiedLeaf "true"^^xsd:boolean ; +. +:leaf_hasPart_p9 + rdf:type :AMR_Leaf ; + :edge_p9_ARG0_s :leaf_system_s ; + :edge_p9_ARG1_a :leaf_and_a ; + :hasConcept :concept_part ; + :hasVariable :variable_p9 ; + :isReifiedLeaf "true"^^xsd:boolean ; +. +:leaf_object_o + rdf:type :AMR_Leaf ; + :hasConcept :concept_object ; + :hasVariable :variable_o ; +. +:leaf_or_o3 + rdf:type :AMR_Leaf ; + :edge_o3_op1_d :leaf_direct-02_d ; + :edge_o3_op2_d2 :leaf_direct-02_d2 ; + :hasConcept :concept_or ; + :hasVariable :variable_o3 ; +. +:leaf_orbit-01_o2 + rdf:type :AMR_Leaf ; + :edge_o2_ARG0_o :leaf_object_o ; + :edge_o2_ARG1_s2 :leaf_sun_s2 ; + :hasConcept :concept_orbit-01 ; + :hasVariable :variable_o2 ; +. +:leaf_sun_s2 + rdf:type :AMR_Leaf ; + :hasConcept :concept_sun ; + :hasVariable :variable_s2 ; +. +:leaf_system_p + rdf:type :AMR_Leaf ; + :edge_p_name_SolarSystem :value_SolarSystem ; + :hasConcept :concept_system ; + :hasVariable :variable_p ; +. +:leaf_system_s + rdf:type :AMR_Leaf ; + :edge_s_domain_p :leaf_system_p ; + :hasConcept :concept_system ; + :hasVariable :variable_s ; +. +:phenomena_conjunction + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Phenomena ; + :hasConceptLink "contrast-01" ; + :hasConceptLink "either" ; + :hasConceptLink "neither" ; + :label "conjunction" ; +. +:phenomena_conjunction_and + rdf:type owl:Class ; + rdfs:subClassOf :phenomena_conjunction ; + :hasConceptLink "and" ; + :label "conjunction-AND" ; +. +:phenomena_conjunction_or + rdf:type owl:Class ; + rdfs:subClassOf :phenomena_conjunction ; + :hasConceptLink "or" ; + :label "conjunction-OR" ; +. +:phenomena_degree + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Phenomena ; + :hasConceptLink "have-degree-91" ; + :label "degree" ; +. +:relation_domain + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification "false"^^xsd:boolean ; + :hasRelationName "domain" ; +. +:relation_manner + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification "true"^^xsd:boolean ; + :hasReificationConcept "hasManner" ; + :hasReificationDomain "ARG1" ; + :hasReificationRange "ARG2" ; + :hasRelationName "manner" ; +. +:relation_mod + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification "false"^^xsd:boolean ; + :hasRelationName "mod" ; +. +:relation_name + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification "false"^^xsd:boolean ; + :hasRelationName "name" ; +. +:relation_part + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification "true"^^xsd:boolean ; + :hasReificationConcept "hasPart" ; + :hasReificationDomain "ARG1" ; + :hasReificationRange "ARG2" ; + :hasRelationName "part" ; +. +:relation_polarity + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification "false"^^xsd:boolean ; + :hasRelationName "polarity" ; +. +:relation_quant + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Relation ; + :hasReification "false"^^xsd:boolean ; + :hasRelationName "quant" ; +. +:role_ARG0 + rdf:type owl:Class ; + rdf:type net:Relation ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG0" ; +. +:role_ARG1 + rdf:type owl:Class ; + rdf:type net:Relation ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG1" ; +. +:role_ARG2 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG2" ; +. +:role_ARG3 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG3" ; +. +:role_ARG4 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG4" ; +. +:role_ARG5 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG5" ; +. +:role_ARG6 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG6" ; +. +:role_ARG7 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG7" ; +. +:role_ARG8 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG8" ; +. +:role_ARG9 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Core_Role ; + :label "ARG9" ; +. +:role_domain + rdf:type owl:Class ; + rdf:type net:Relation ; + rdfs:subClassOf :AMR_NonCore_Role ; + :hasRelationName "domain" ; + :label "domain" ; + :toReifyAsConcept "domain" ; + :toReifyWithBaseEdge "ARG0" ; + :toReifyWithHeadEdge "ARG1" ; +. +:role_have-degree-91 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Specific_Role ; + :getPropertyType <net:specificProperty> ; +. +:role_manner + rdf:type owl:Class ; + rdfs:subClassOf :AMR_NonCore_Role ; + :getDirectPropertyName "manner" ; + :getPropertyType owl:DataProperty ; + :label "manner" ; + :toReifyAsConcept "manner" ; + :toReifyWithBaseEdge "ARG0" ; + :toReifyWithHeadEdge "ARG1" ; +. +:role_mod + rdf:type owl:Class ; + rdfs:subClassOf :AMR_NonCore_Role ; + :getDirectPropertyName "hasFeature" ; + :getPropertyType rdfs:subClassOf ; + :getPropertyType owl:ObjectProperty ; + :label "mod" ; + :toReifyAsConcept "mod" ; + :toReifyWithBaseEdge "ARG0" ; + :toReifyWithHeadEdge "ARG1" ; +. +:role_name + rdf:type owl:Class ; + rdf:type net:Relation ; + rdfs:subClassOf :AMR_NonCore_Role ; + :label "name" ; +. +:role_op1 + rdf:type owl:Class ; + rdf:type net:Relation ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op1" ; +. +:role_op2 + rdf:type owl:Class ; + rdf:type net:Relation ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op2" ; +. +:role_op3 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op3" ; +. +:role_op4 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op4" ; +. +:role_op5 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op5" ; +. +:role_op6 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op6" ; +. +:role_op7 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op7" ; +. +:role_op8 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op8" ; +. +:role_op9 + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Op_Role ; + :label "op9" ; +. +:role_part + rdf:type owl:Class ; + rdfs:subClassOf :AMR_NonCore_Role ; + :getDirectPropertyName "hasPart" ; + :getInversePropertyName "partOf" ; + :getPropertyType owl:ObjectProperty ; + :toReifyAsConcept "part" ; + :toReifyWithBaseEdge "ARG0" ; + :toReifyWithHeadEdge "ARG1" ; +. +:role_polarity + rdf:type owl:Class ; + rdf:type net:Relation ; + rdfs:subClassOf :AMR_Specific_Role ; + :label "polarity" ; +. +:role_quant + rdf:type owl:Class ; + rdfs:subClassOf :AMR_Specific_Role ; + :label "quant" ; +. +:root_SSC-01-01 + rdf:type :AMR_Root ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#root01> ; + :hasRootLeaf :leaf_system_s ; + :hasSentenceID "SSC-01-01" ; + :hasSentenceStatement "The Solar System is the gravitationally bound system of the Sun and the objects that orbit it, either directly or indirectly." ; +. +:toReify + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :AMR_AnnotationProperty ; +. +:toReifyAsConcept + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :toReify ; +. +:toReifyWithBaseEdge + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :toReify ; +. +:toReifyWithHeadEdge + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf :toReify ; +. +:value_SolarSystem + rdf:type :AMR_Value ; + rdfs:label "Solar System" ; +. +:value_negative + rdf:type :AMR_Value ; + rdfs:label "negative" ; +. +:variable_a + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#a> ; + :label "a" ; +. +:variable_b + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#b> ; + :label "b" ; +. +:variable_d + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#d> ; + :label "d" ; +. +:variable_d2 + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#d2> ; + :label "d2" ; +. +:variable_g + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#g> ; + :label "g" ; +. +:variable_m9 + rdf:type ns11:manner ; + rdf:type :AMR_Variable ; + :isReifiedVariable "true"^^xsd:boolean ; + :label "m9" ; +. +:variable_o + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#o> ; + :label "o" ; +. +:variable_o2 + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#o2> ; + :label "o2" ; +. +:variable_o3 + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#o3> ; + :label "o3" ; +. +:variable_p + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#p> ; + :label "p" ; + :name "Solar System" ; +. +:variable_p9 + rdf:type ns11:part ; + rdf:type :AMR_Variable ; + :isReifiedVariable "true"^^xsd:boolean ; + :label "p9" ; +. +:variable_s + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#s> ; + :label "s" ; +. +:variable_s2 + rdf:type :AMR_Variable ; + :fromAmrLk <http://amr.isi.edu/amr_data/SSC-01-01#s2> ; + :label "s2" ; +. +<https://tenet.tetras-libre.fr/base-ontology> + rdf:type owl:Ontology ; +. +sys:Degree + rdf:type owl:Class ; + rdfs:subClassOf sys:Out_Structure ; +. +sys:Entity + rdf:type owl:Class ; + rdfs:subClassOf sys:Out_Structure ; +. +sys:Event + rdf:type owl:Class ; + rdfs:subClassOf sys:Out_Structure ; +. +sys:Feature + rdf:type owl:Class ; + rdfs:subClassOf sys:Out_Structure ; +. +sys:Out_AnnotationProperty + rdf:type owl:AnnotationProperty ; +. +sys:Out_ObjectProperty + rdf:type owl:ObjectProperty ; +. +sys:Out_Structure + rdf:type owl:Class ; + rdfs:label "Output Ontology Structure" ; +. +sys:Undetermined_Thing + rdf:type owl:Class ; + rdfs:subClassOf sys:Out_Structure ; +. +sys:fromStructure + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf sys:Out_AnnotationProperty ; +. +sys:hasDegree + rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf sys:Out_ObjectProperty ; +. +sys:hasFeature + rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf sys:Out_ObjectProperty ; +. +<https://tenet.tetras-libre.fr/config/parameters> + rdf:type owl:Ontology ; +. +cprm:Config_Parameters + rdf:type owl:Class ; + cprm:baseURI "https://tenet.tetras-libre.fr/" ; + cprm:netURI "https://tenet.tetras-libre.fr/semantic-net#" ; + cprm:newClassRef "new-class#" ; + cprm:newPropertyRef "new-relation#" ; + cprm:objectRef "object_" ; + cprm:targetOntologyURI "https://tenet.tetras-libre.fr/base-ontology/" ; +. +cprm:baseURI + rdf:type rdf:Property ; + rdfs:domain cprm:Frame ; + rdfs:label "Base URI" ; + rdfs:range xsd:string ; + rdfs:subPropertyOf cprm:configParamProperty ; +. +cprm:configParamProperty + rdf:type rdf:Property ; + rdfs:label "Config Parameter Property" ; +. +cprm:netURI + rdf:type rdf:Property ; + rdfs:domain cprm:Frame ; + rdfs:label "Net URI" ; + rdfs:range xsd:string ; + rdfs:subPropertyOf cprm:configParamProperty ; +. +cprm:newClassRef + rdf:type rdf:Property ; + rdfs:label "Reference for a new class" ; + rdfs:subPropertyOf cprm:configParamProperty ; +. +cprm:newPropertyRef + rdf:type rdf:Property ; + rdfs:label "Reference for a new property" ; + rdfs:subPropertyOf cprm:configParamProperty ; +. +cprm:objectRef + rdf:type rdf:Property ; + rdfs:label "Object Reference" ; + rdfs:subPropertyOf cprm:configParamProperty ; +. +cprm:targetOntologyURI + rdf:type rdf:Property ; + rdfs:domain cprm:Frame ; + rdfs:label "URI of classes in target ontology" ; + rdfs:range xsd:string ; + rdfs:subPropertyOf cprm:configParamProperty ; +. +<https://tenet.tetras-libre.fr/semantic-net> + rdf:type owl:Ontology ; +. +net:Atom_Class_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Class_Net ; +. +net:Atom_Property_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Property_Net ; +. +net:Class_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Net ; +. +net:Composite_Class_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Class_Net ; +. +net:Composite_Property_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Property_Net ; +. +net:Deprecated_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Net ; +. +net:Feature + rdf:type owl:Class ; + rdfs:subClassOf net:Net_Structure ; +. +net:Individual_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Net ; +. +net:Instance + rdf:type owl:Class ; + rdfs:label "Semantic Net Instance" ; + rdfs:subClassOf net:Net_Structure ; +. +net:Logical_Set_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Net ; +. +net:Net + rdf:type owl:Class ; + rdfs:subClassOf net:Net_Structure ; +. +net:Net_Structure + rdf:type owl:Class ; + rdfs:comment "A semantic net captures a set of nodes, and associates this set with type(s) and value(s)." ; + rdfs:label "Semantic Net Structure" ; +. +net:Object + rdf:type owl:Class ; + rdfs:label "Object using in semantic net instance" ; + rdfs:subClassOf net:Net_Structure ; +. +net:Phenomena_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Net ; +. +net:Property_Direction + rdf:type owl:Class ; + rdfs:subClassOf net:Feature ; +. +net:Property_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Net ; +. +net:Relation + rdf:type owl:Class ; + rdfs:subClassOf net:Net_Structure ; +. +net:Restriction_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Net ; +. +net:Type + rdf:type owl:Class ; + rdfs:label "Semantic Net Type" ; + rdfs:subClassOf net:Net_Structure ; +. +net:Value_Net + rdf:type owl:Class ; + rdfs:subClassOf net:Net ; +. +net:abstractionClass + rdf:type owl:AnnotationProperty ; + rdfs:label "abstraction class" ; + rdfs:subPropertyOf net:objectValue ; +. +net:atom + rdf:type owl:Class ; + rdfs:label "atom" ; + rdfs:subClassOf net:Type ; +. +net:atomClass_gravitation_g + rdf:type net:Atom_Class_Net ; + net:coverBaseNode :leaf_gravitation_g ; + net:coverNode :leaf_gravitation_g ; + net:coverNodeCount 1 ; + net:hasClassName "gravitation" ; + net:hasClassType sys:Entity ; + net:hasNaming "gravitation" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomClass_object_o + rdf:type net:Atom_Class_Net ; + net:coverBaseNode :leaf_object_o ; + net:coverNode :leaf_object_o ; + net:coverNodeCount 1 ; + net:hasClassName "object" ; + net:hasClassType sys:Entity ; + net:hasNaming "object" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomClass_sun_s2 + rdf:type net:Atom_Class_Net ; + net:coverBaseNode :leaf_sun_s2 ; + net:coverNode :leaf_sun_s2 ; + net:coverNodeCount 1 ; + net:hasClassName "sun" ; + net:hasClassType sys:Entity ; + net:hasNaming "sun" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomClass_system_p + rdf:type net:Atom_Class_Net ; + :role_name net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_name net:value_SolarSystem_blankNode ; + net:coverBaseNode :leaf_system_p ; + net:coverNode :leaf_system_p ; + net:coverNodeCount 1 ; + net:hasClassName "system" ; + net:hasNaming "system" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomClass_system_s + rdf:type net:Atom_Class_Net ; + rdf:type net:Deprecated_Net ; + :role_domain net:atomClass_system_p ; + :role_domain net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_domain net:individual_system_SolarSystem ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_system_s ; + net:coverNodeCount 1 ; + net:hasClassName "system" ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_system_p ; + net:hasMotherClassNet net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:hasNaming "system" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomOf + rdf:type owl:AnnotationProperty ; + rdfs:label "atom of" ; + rdfs:subPropertyOf net:typeProperty ; +. +net:atomProperty_bind_b + rdf:type net:Atom_Property_Net ; + :role_ARG0 net:atomClass_gravitation_g ; + :role_ARG0 net:compositeClass_gravitation-binding-system-hasPart-sun-and-object_g ; + :role_ARG0 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_ARG1 net:atomClass_system_s ; + :role_ARG1 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_ARG1 net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s ; + :role_ARG1 net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s ; + :role_ARG1 net:compositeClass_system-hasPart-sun-and-object_s ; + net:coverBaseNode :leaf_bind-01_b ; + net:coverNode :leaf_bind-01_b ; + net:hasNaming "bind" ; + net:hasPropertyName "bind" ; + net:hasPropertyName01 "binding" ; + net:hasPropertyName10 "bind-by" ; + net:hasPropertyName12 "bind-of" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked "true"^^xsd:boolean ; + net:targetArgumentNode :leaf_gravitation_g ; + net:targetArgumentNode :leaf_system_s ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomProperty_direct_d + rdf:type net:Atom_Property_Net ; + net:coverBaseNode :leaf_direct-02_d ; + net:coverNode :leaf_direct-02_d ; + net:hasNaming "direct" ; + net:hasPropertyName "direct" ; + net:hasPropertyName01 "directing" ; + net:hasPropertyName10 "direct-by" ; + net:hasPropertyName12 "direct-of" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked "true"^^xsd:boolean ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomProperty_direct_d2 + rdf:type net:Atom_Property_Net ; + :role_polarity net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_polarity net:value_negative_blankNode ; + net:coverBaseNode :leaf_direct-02_d2 ; + net:coverNode :leaf_direct-02_d2 ; + net:hasNaming "direct" ; + net:hasPropertyName "direct" ; + net:hasPropertyName01 "directing" ; + net:hasPropertyName10 "direct-by" ; + net:hasPropertyName12 "direct-of" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked "true"^^xsd:boolean ; + net:targetArgumentNode :value_negative ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomProperty_hasManner_m9 + rdf:type net:Atom_Property_Net ; + :role_ARG0 net:atomProperty_orbit_o2 ; + :role_ARG0 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_ARG1 net:atomProperty_direct_d ; + :role_ARG1 net:atomProperty_direct_d2 ; + :role_ARG1 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_ARG1 net:compositeProperty_not-direct_d2 ; + :role_ARG1 net:phenomena_conjunction-OR_o3 ; + net:coverBaseNode :leaf_hasManner_m9 ; + net:coverNode :leaf_hasManner_m9 ; + net:hasNaming "hasManner" ; + net:hasPropertyName "hasManner" ; + net:hasPropertyName01 "hasManner" ; + net:hasPropertyName10 "hasManner" ; + net:hasPropertyName12 "hasManner" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked "true"^^xsd:boolean ; + net:targetArgumentNode :leaf_or_o3 ; + net:targetArgumentNode :leaf_orbit-01_o2 ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomProperty_hasPart_p9 + rdf:type net:Atom_Property_Net ; + :role_ARG0 net:atomClass_system_s ; + :role_ARG0 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_ARG0 net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s ; + :role_ARG0 net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s ; + :role_ARG0 net:compositeClass_system-hasPart-sun-and-object_s ; + :role_ARG1 net:atomClass_object_o ; + :role_ARG1 net:atomClass_sun_s2 ; + :role_ARG1 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_ARG1 net:logicalSet_and_a ; + :role_ARG1 net:phenomena_conjunction-AND_a ; + net:coverBaseNode :leaf_hasPart_p9 ; + net:coverNode :leaf_hasPart_p9 ; + net:hasNaming "hasPart" ; + net:hasPropertyName "hasPart" ; + net:hasPropertyName01 "hasPart" ; + net:hasPropertyName10 "hasPart" ; + net:hasPropertyName12 "hasPart" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked "true"^^xsd:boolean ; + net:targetArgumentNode :leaf_and_a ; + net:targetArgumentNode :leaf_system_s ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomProperty_orbit_o2 + rdf:type net:Atom_Property_Net ; + rdf:type net:Deprecated_Net ; + :role_ARG0 net:atomClass_object_o ; + :role_ARG0 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_ARG1 net:atomClass_sun_s2 ; + :role_ARG1 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:coverBaseNode :leaf_orbit-01_o2 ; + net:coverNode :leaf_orbit-01_o2 ; + net:hasNaming "orbit" ; + net:hasPropertyName "orbit" ; + net:hasPropertyName01 "orbiting" ; + net:hasPropertyName10 "orbit-by" ; + net:hasPropertyName12 "orbit-of" ; + net:hasPropertyType owl:ObjectProperty ; + net:hasStructure "SSC-01-01" ; + net:isCoreRoleLinked "true"^^xsd:boolean ; + net:targetArgumentNode :leaf_object_o ; + net:targetArgumentNode :leaf_sun_s2 ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:atomType + rdf:type owl:AnnotationProperty ; + rdfs:label "atom type" ; + rdfs:subPropertyOf net:objectType ; +. +net:class + rdf:type owl:Class ; + rdfs:label "class" ; + rdfs:subClassOf net:Type ; +. +net:class_list + rdf:type owl:Class ; + rdfs:label "classList" ; + rdfs:subClassOf net:Type ; +. +net:composite + rdf:type owl:Class ; + rdfs:label "composite" ; + rdfs:subClassOf net:Type ; +. +net:compositeClass_gravitation-binding-system-hasPart-sun-and-object_g + rdf:type net:Composite_Class_Net ; + net:coverBaseNode :leaf_gravitation_g ; + net:coverNode :leaf_and_a ; + net:coverNode :leaf_bind-01_b ; + net:coverNode :leaf_gravitation_g ; + net:coverNode :leaf_hasPart_p9 ; + net:coverNode :leaf_system_s ; + net:coverNodeCount 5 ; + net:hasClassName "gravitation-binding-system-hasPart-sun-and-object" ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_gravitation_g ; + net:hasRestriction01 net:restriction_binding_system-hasPart-sun-and-object ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:compositeClass_orbit-hasManner-conjunction-OR_o2 + rdf:type net:Composite_Class_Net ; + :role_ARG0 net:atomClass_object_o ; + :role_ARG1 net:atomClass_sun_s2 ; + :role_domain net:atomClass_system_p ; + :role_domain net:individual_system_SolarSystem ; + :role_op1 net:atomClass_sun_s2 ; + :role_op1 net:atomProperty_direct_d ; + :role_op2 net:atomClass_object_o ; + :role_op2 net:atomProperty_direct_d2 ; + :role_op2 net:compositeProperty_not-direct_d2 ; + net:coverNode :leaf_hasManner_m9 ; + net:coverNode :leaf_or_o3 ; + net:coverNode :leaf_orbit-01_o2 ; + net:coverNodeCount 3 ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_system_p ; + net:hasStructure "SSC-01-01" ; + net:trackMainNetComposante net:atomProperty_orbit_o2 ; + net:trackNetComposante net:atomProperty_direct_d ; + net:trackNetComposante net:atomProperty_direct_d2 ; + net:trackNetComposante net:atomProperty_hasManner_m9 ; + net:trackNetComposante net:atomProperty_orbit_o2 ; + net:trackNetComposante net:compositeProperty_not-direct_d2 ; + net:trackNetComposante net:phenomena_conjunction-OR_o3 ; + net:trackProgress net:relation_propagated ; +. +net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s + rdf:type net:Composite_Class_Net ; + :role_domain net:atomClass_system_p ; + :role_domain net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_domain net:individual_system_SolarSystem ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_and_a ; + net:coverNode :leaf_hasPart_p9 ; + net:coverNode :leaf_object_o ; + net:coverNode :leaf_system_s ; + net:coverNodeCount 4 ; + net:hasClassName "system-hasPart-sun-and-object-hasPart-object" ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_system_p ; + net:hasMotherClassNet net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:hasMotherClassNet net:compositeClass_system-hasPart-sun-and-object_s ; + net:hasRestriction01 net:restriction_hasPart_object ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s + rdf:type net:Composite_Class_Net ; + :role_domain net:atomClass_system_p ; + :role_domain net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_domain net:individual_system_SolarSystem ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_and_a ; + net:coverNode :leaf_hasPart_p9 ; + net:coverNode :leaf_sun_s2 ; + net:coverNode :leaf_system_s ; + net:coverNodeCount 4 ; + net:hasClassName "system-hasPart-sun-and-object-hasPart-sun" ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_system_p ; + net:hasMotherClassNet net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:hasMotherClassNet net:compositeClass_system-hasPart-sun-and-object_s ; + net:hasRestriction01 net:restriction_hasPart_sun ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:compositeClass_system-hasPart-sun-and-object_s + rdf:type net:Composite_Class_Net ; + :role_domain net:atomClass_system_p ; + :role_domain net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_domain net:individual_system_SolarSystem ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_and_a ; + net:coverNode :leaf_hasPart_p9 ; + net:coverNode :leaf_system_s ; + net:coverNodeCount 3 ; + net:hasClassName "system-hasPart-sun-and-object" ; + net:hasClassType sys:Entity ; + net:hasMotherClassNet net:atomClass_system_s ; + net:hasNaming "system-hasPart-sun-and-object" ; + net:hasRestriction01 net:restriction_hasPart_object ; + net:hasRestriction01 net:restriction_hasPart_sun ; + net:hasStructure "SSC-01-01" ; + net:trackMainNetComposante net:atomClass_system_s ; + net:trackNetComposante net:atomClass_system_s ; + net:trackNetComposante net:atomProperty_hasPart_p9 ; + net:trackNetComposante net:logicalSet_and_a ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:compositeProperty_not-direct_d2 + rdf:type net:Composite_Property_Net ; + :role_polarity net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:coverBaseNode :leaf_direct-02_d2 ; + net:coverNode :leaf_direct-02_d2 ; + net:hasNaming "not-direct" ; + net:hasPropertyName "not-direct" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:conjunctive_list + rdf:type owl:Class ; + rdfs:label "conjunctive-list" ; + rdfs:subClassOf net:list ; +. +net:disjunctive_list + rdf:type owl:Class ; + rdfs:label "disjunctive-list" ; + rdfs:subClassOf net:list ; +. +net:entityClass + rdf:type owl:AnnotationProperty ; + rdfs:label "entity class" ; + rdfs:subPropertyOf net:objectValue ; +. +net:entity_class_list + rdf:type owl:Class ; + rdfs:label "entityClassList" ; + rdfs:subClassOf net:class_list ; +. +net:event + rdf:type owl:Class ; + rdfs:label "event" ; + rdfs:subClassOf net:Type ; +. +net:featureClass + rdf:type owl:AnnotationProperty ; + rdfs:label "feature class" ; + rdfs:subPropertyOf net:objectValue ; +. +net:has_atom + rdf:type owl:AnnotationProperty ; + rdfs:label "has atom" ; + rdfs:subPropertyOf net:has_object ; +. +net:has_class + rdf:type owl:AnnotationProperty ; + rdfs:label "is class" ; + rdfs:subPropertyOf net:objectValue ; +. +net:has_class_name + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf net:has_value ; +. +net:has_class_uri + rdf:type owl:AnnotationProperty ; + rdfs:label "class uri" ; + rdfs:subPropertyOf net:objectValue ; +. +net:has_concept + rdf:type owl:AnnotationProperty ; + rdfs:label "concept "@fr ; + rdfs:subPropertyOf net:objectValue ; +. +net:has_entity + rdf:type owl:AnnotationProperty ; + rdfs:label "has entity" ; + rdfs:subPropertyOf net:has_object ; +. +net:has_feature + rdf:type owl:AnnotationProperty ; + rdfs:label "has feature" ; + rdfs:subPropertyOf net:has_object ; +. +net:has_instance + rdf:type owl:AnnotationProperty ; + rdfs:label "entity instance" ; + rdfs:subPropertyOf net:objectValue ; +. +net:has_instance_uri + rdf:type owl:AnnotationProperty ; + rdfs:label "instance uri" ; + rdfs:subPropertyOf net:objectValue ; +. +net:has_item + rdf:type owl:AnnotationProperty ; + rdfs:label "has item" ; + rdfs:subPropertyOf net:has_object ; +. +net:has_mother_class + rdf:type owl:AnnotationProperty ; + rdfs:label "has mother class" ; + rdfs:subPropertyOf net:objectValue ; +. +net:has_mother_class_uri + rdf:type owl:AnnotationProperty ; + rdfs:label "parent class uri" ; + rdfs:subPropertyOf net:objectValue ; +. +net:has_node + rdf:type owl:AnnotationProperty ; + rdfs:label "UNL Node" ; + rdfs:subPropertyOf net:netProperty ; +. +net:has_object + rdf:type owl:AnnotationProperty ; + rdfs:label "relation" ; + rdfs:subPropertyOf net:netProperty ; +. +net:has_parent + rdf:type owl:AnnotationProperty ; + rdfs:label "has parent" ; + rdfs:subPropertyOf net:has_object ; +. +net:has_parent_class + rdf:type owl:AnnotationProperty ; + rdfs:label "parent class" ; + rdfs:subPropertyOf net:objectValue ; +. +net:has_parent_class_uri + rdf:type owl:AnnotationProperty ; + rdfs:label "parent class uri" ; + rdfs:subPropertyOf net:objectValue ; +. +net:has_possible_domain + rdf:type owl:AnnotationProperty ; + rdfs:label "has possible domain" ; + rdfs:subPropertyOf net:has_object ; +. +net:has_possible_range + rdf:type owl:AnnotationProperty ; + rdfs:label "has possible range" ; + rdfs:subPropertyOf net:has_object ; +. +net:has_relation + rdf:type owl:AnnotationProperty ; + rdfs:label "has relation" ; + rdfs:subPropertyOf net:has_relation_value ; +. +net:has_relation_value + rdf:type owl:AnnotationProperty ; + rdfs:label "has relation value" ; + rdfs:subPropertyOf net:has_object ; +. +net:has_source + rdf:type owl:AnnotationProperty ; + rdfs:label "has source" ; + rdfs:subPropertyOf net:has_relation_value ; +. +net:has_structure + rdf:type owl:AnnotationProperty ; + rdfs:label "Linguistic Structure (in UNL Document)" ; + rdfs:subPropertyOf net:netProperty ; +. +net:has_target + rdf:type owl:AnnotationProperty ; + rdfs:label "has target" ; + rdfs:subPropertyOf net:has_relation_value ; +. +net:has_value + rdf:type owl:AnnotationProperty ; + rdfs:subPropertyOf net:netProperty ; +. +net:individual_system_SolarSystem + rdf:type net:Individual_Net ; + :role_name net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_name net:value_SolarSystem_blankNode ; + net:coverBaseNode :leaf_system_p ; + net:coverNode :leaf_system_p ; + net:hasIndividualLabel "Solar System" ; + net:hasMotherClassName net:atomClass_system_p ; + net:hasMotherClassNet net:atomClass_system_p ; + net:hasMotherClassNet net:atomClass_system_s ; + net:hasMotherClassNet net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:hasMotherClassNet net:compositeClass_system-hasPart-sun-and-object-hasPart-object_s ; + net:hasMotherClassNet net:compositeClass_system-hasPart-sun-and-object-hasPart-sun_s ; + net:hasMotherClassNet net:compositeClass_system-hasPart-sun-and-object_s ; + net:hasNaming "system" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:inverse_direction + rdf:type owl:NamedIndividual ; +. +net:list + rdf:type owl:Class ; + rdfs:label "list" ; + rdfs:subClassOf net:Type ; +. +net:listBy + rdf:type owl:AnnotationProperty ; + rdfs:label "list by" ; + rdfs:subPropertyOf net:typeProperty ; +. +net:listGuiding + rdf:type owl:AnnotationProperty ; + rdfs:label "Guiding connector of a list (or, and)" ; + rdfs:subPropertyOf net:objectValue ; +. +net:listOf + rdf:type owl:AnnotationProperty ; + rdfs:label "list of" ; + rdfs:subPropertyOf net:typeProperty ; +. +net:logicalSet_and_a + rdf:type net:Logical_Set_Net ; + :role_op1 net:atomClass_sun_s2 ; + :role_op1 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_op2 net:atomClass_object_o ; + :role_op2 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:bindPropertyNet net:atomProperty_hasPart_p9 ; + net:bindRestriction net:restriction_hasPart_object ; + net:bindRestriction net:restriction_hasPart_sun ; + net:containsNet net:atomClass_object_o ; + net:containsNet net:atomClass_sun_s2 ; + net:containsNet1 net:atomClass_sun_s2 ; + net:containsNet2 net:atomClass_object_o ; + net:coverBaseNode :leaf_and_a ; + net:coverNode :leaf_and_a ; + net:hasLogicalConstraint "AND" ; + net:hasNaming "hasPart-sun-and-object" ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:modCat1 + rdf:type owl:AnnotationProperty ; + rdfs:label "Modality Category (level 1)" ; + rdfs:subPropertyOf net:objectValue ; +. +net:modCat2 + rdf:type owl:AnnotationProperty ; + rdfs:label "Modality Category (level 2)" ; + rdfs:subPropertyOf net:objectValue ; +. +net:netProperty + rdf:type owl:AnnotationProperty ; + rdfs:label "netProperty" ; +. +net:normal_direction + rdf:type owl:NamedIndividual ; +. +net:objectProperty + rdf:type owl:AnnotationProperty ; + rdfs:label "object attribute" ; +. +net:objectType + rdf:type owl:AnnotationProperty ; + rdfs:label "object type" ; + rdfs:subPropertyOf net:objectProperty ; +. +net:objectValue + rdf:type owl:AnnotationProperty ; + rdfs:label "valuations"@fr ; + rdfs:subPropertyOf net:objectProperty ; +. +net:phenomena_conjunction-AND_a + rdf:type net:Phenomena_Net ; + :role_op1 net:atomClass_sun_s2 ; + :role_op1 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_op2 net:atomClass_object_o ; + :role_op2 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:coverBaseNode :leaf_and_a ; + net:coverNode :leaf_and_a ; + net:hasNaming "conjunction-AND" ; + net:hasPhenomenaRef "and" ; + net:hasPhenomenaType :phenomena_conjunction_and ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:phenomena_conjunction-OR_o3 + rdf:type net:Phenomena_Net ; + :role_op1 net:atomProperty_direct_d ; + :role_op1 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_op2 net:atomProperty_direct_d2 ; + :role_op2 net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + :role_op2 net:compositeProperty_not-direct_d2 ; + net:coverBaseNode :leaf_or_o3 ; + net:coverNode :leaf_or_o3 ; + net:hasNaming "conjunction-OR" ; + net:hasPhenomenaRef "or" ; + net:hasPhenomenaType :phenomena_conjunction_or ; + net:hasStructure "SSC-01-01" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:relation + rdf:type owl:Class ; + rdfs:label "relation" ; + rdfs:subClassOf net:Type ; +. +net:relationOf + rdf:type owl:AnnotationProperty ; + rdfs:label "relation of" ; + rdfs:subPropertyOf net:typeProperty ; +. +net:restriction_binding_system-hasPart-sun-and-object + rdf:type net:Restriction_Net ; + net:coverBaseNode :leaf_gravitation_g ; + net:coverNode :leaf_and_a ; + net:coverNode :leaf_bind-01_b ; + net:coverNode :leaf_gravitation_g ; + net:coverNode :leaf_hasPart_p9 ; + net:coverNode :leaf_system_s ; + net:coverTargetNode :leaf_and_a ; + net:coverTargetNode :leaf_bind-01_b ; + net:coverTargetNode :leaf_hasPart_p9 ; + net:coverTargetNode :leaf_system_s ; + net:hasNaming "gravitation-binding-system-hasPart-sun-and-object" ; + net:hasRestrictionNetValue net:compositeClass_system-hasPart-sun-and-object_s ; + net:hasRestrictionOnProperty net:atomProperty_bind_b ; +. +net:restriction_hasPart_object + rdf:type net:Restriction_Net ; + :role_domain net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_and_a ; + net:coverNode :leaf_hasPart_p9 ; + net:coverNode :leaf_object_o ; + net:coverNode :leaf_system_s ; + net:coverTargetNode :leaf_hasPart_p9 ; + net:coverTargetNode :leaf_object_o ; + net:hasNaming "system-hasPart-sun-and-object-hasPart-object" ; + net:hasRestrictionNetValue net:atomClass_object_o ; + net:hasRestrictionOnProperty net:atomProperty_hasPart_p9 ; +. +net:restriction_hasPart_sun + rdf:type net:Restriction_Net ; + :role_domain net:compositeClass_orbit-hasManner-conjunction-OR_o2 ; + net:coverBaseNode :leaf_system_s ; + net:coverNode :leaf_and_a ; + net:coverNode :leaf_hasPart_p9 ; + net:coverNode :leaf_sun_s2 ; + net:coverNode :leaf_system_s ; + net:coverTargetNode :leaf_hasPart_p9 ; + net:coverTargetNode :leaf_sun_s2 ; + net:hasNaming "system-hasPart-sun-and-object-hasPart-sun" ; + net:hasRestrictionNetValue net:atomClass_sun_s2 ; + net:hasRestrictionOnProperty net:atomProperty_hasPart_p9 ; +. +net:state_property + rdf:type owl:Class ; + rdfs:label "stateProperty" ; + rdfs:subClassOf net:Type ; +. +net:type + rdf:type owl:AnnotationProperty ; + rdfs:label "type "@fr ; + rdfs:subPropertyOf net:netProperty ; +. +net:typeProperty + rdf:type owl:AnnotationProperty ; + rdfs:label "type property" ; +. +net:unary_list + rdf:type owl:Class ; + rdfs:label "unary-list" ; + rdfs:subClassOf net:list ; +. +net:value_SolarSystem_blankNode + rdf:type net:Value_Net ; + net:hasNaming "Solar System" ; + net:hasStructure "SSC-01-01" ; + net:hasValueLabel "Solar System" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:value_negative_blankNode + rdf:type net:Value_Net ; + net:hasNaming "negative" ; + net:hasStructure "SSC-01-01" ; + net:hasValueLabel "negative" ; + net:trackProgress net:initialized ; + net:trackProgress net:relation_propagated ; +. +net:verbClass + rdf:type owl:AnnotationProperty ; + rdfs:label "verb class" ; + rdfs:subPropertyOf net:objectValue ; +. +[ + rdf:type owl:AllDisjointClasses ; + owl:members ( + sys:Degree + sys:Entity + sys:Feature + ) ; +]. diff --git a/tests/test_tenet_semantic_net.py b/tests/test_tenet_semantic_net.py new file mode 100644 index 00000000..0e5329f8 --- /dev/null +++ b/tests/test_tenet_semantic_net.py @@ -0,0 +1,185 @@ +#!/usr/bin/python3.10 +# -*-coding:Utf-8 -* + +#============================================================================== +# TENET: Semantic Net Class Test +#------------------------------------------------------------------------------ +# Script to test the semantic net classes +#============================================================================== + +import subprocess, os +from rdflib import Graph +from rdflib import Namespace +from rdflib.namespace import NamespaceManager + +FILE_PATH = f'{os.path.dirname(os.path.abspath(__file__))}' +INPUT_DIR_PATH = f'{FILE_PATH}/input/' +OUTPUT_DIR_PATH = f'{FILE_PATH}/output/' +TEST_GRAPH = f'{INPUT_DIR_PATH}testGraph1.ttl' + +from context import tenet +from tenet.febTransduction.net import Net + +from tenet.febTransduction.net import ClassNet +from tenet.febTransduction.net import AtomClassNet +from tenet.febTransduction.net import CompositeClassNet + +from tenet.febTransduction.net import PropertyNet +from tenet.febTransduction.net import AtomPropertyNet +from tenet.febTransduction.net import CompositePropertyNet + +from tenet.febTransduction.net import IndividualNet + +from tenet.febTransduction.net import ValueNet + +from tenet.febTransduction.net import PhenomenaNet + +from tenet.febTransduction.net import RestrictionNet + + + +#============================================================================== +# Test Methods +#============================================================================== + +def test_base_attribute_access(net): + print(f'\n *** Base attributes ({net.type_id})) ***') + print(f' ----- uri: {net.uri}') + print(f' ----- node: {net.node}') + print(f' ----- base_node: {net.base_node}') + print(f' ----- structure: {net.structure}') + print(f' ----- naming: {net.naming}') + + +def test_class_attribute_access(net): + print(f'\n *** Class attributes ({net.type_id})) ***') + print(f' ----- class_name: {net.class_name}') + +def test_composite_class_attribute_access(net): + print(f'\n *** Composite Class attributes ({net.type_id})) ***') + print(f' ----- mother_class_net: {net.mother_class_net}') + print(f' ----- restriction: {net.restriction}') + print(f' ----- restriction01: {net.restriction01}') + +def test_property_attribute_access(net): + print(f'\n *** Property attributes ({net.type_id})) ***') + print(f' ----- property_name: {net.property_name}') + +def test_atom_property_attribute_access(net): + print(f'\n *** Atom Property attributes ({net.type_id})) ***') + print(f' ----- core_role: {net.core_role}') + print(f' ----- target_argument_node: {net.target_argument_node}') + print(f' ----- property_type: {net.property_type}') + print(f' ----- property_name01: {net.property_name01}') + print(f' ----- property_name10: {net.property_name10}') + print(f' ----- property_name12: {net.property_name12}') + +def test_composite_property_attribute_access(net): + print(f'\n *** Composite Property attributes ({net.type_id})) ***') + print(f' ----- core_role: {net.core_role}') + print(f' ----- target_argument_node: {net.target_argument_node}') + print(f' ----- property_type: {net.property_type}') + print(f' ----- restriction: {net.restriction}') + + +def test_restriction_attribute_access(net): + print(f'\n *** Restriction attributes ({net.type_id})) ***') + print(f' ----- target_node: {net.target_node}') + print(f' ----- restriction_property: {net.restriction_property}') + print(f' ----- restriction_net_value: {net.restriction_net_value}') + + +def test_individual_attribute_access(net): + print(f'\n *** Individual attributes ({net.type_id})) ***') + print(f' ----- base_class_name: {net.base_class_name}') + print(f' ----- mother_class_net: {net.mother_class_net}') + print(f' ----- individual_label: {net.individual_label}') + + +def test_value_attribute_access(net): + print(f'\n *** Value attributes ({net.type_id})) ***') + print(f' ----- value_label: {net.value_label}') + + +def test_phenomena_attribute_access(net): + print(f'\n *** Phenomena attributes ({net.type_id})) ***') + print(f' ----- phenomena_type: {net.phenomena_type}') + print(f' ----- phenomena_ref: {net.phenomena_ref}') + + +#============================================================================== +# Development Test +#============================================================================== + +print('\n' + ' *** Development Test ***') + +print(f'\n -- Test Graph Loading') +graph = Graph() +graph.bind('net', Namespace('https://tenet.tetras-libre.fr/semantic-net#')) +graph.parse(TEST_GRAPH) +print(f" ----- Graph Loaded ({len(graph)})") + +print('\n -- Net') +net = Net(graph, uri='net:atomClass_sun_s2') +test_base_attribute_access(net) + +print('\n -- Class Net') +net = ClassNet(graph, uri='net:atomClass_sun_s2') +test_base_attribute_access(net) +test_class_attribute_access(net) + +print('\n -- Atom Class Net') +net = AtomClassNet(graph, uri='net:atomClass_sun_s2') +test_base_attribute_access(net) +test_class_attribute_access(net) + +print('\n -- Composite Class Net (1)') +net = CompositeClassNet(graph, uri='net:compositeClass_orbit-hasManner-conjunction-OR_o2') +test_base_attribute_access(net) +test_class_attribute_access(net) +test_composite_class_attribute_access(net) + +print('\n -- Composite Class Net (2)') +net = CompositeClassNet(graph, uri='net:compositeClass_system-hasPart-sun-and-object_s') +test_base_attribute_access(net) +test_class_attribute_access(net) +test_composite_class_attribute_access(net) + +print('\n -- Property Net') +net = AtomPropertyNet(graph, uri='net:atomProperty_orbit_o2') +test_base_attribute_access(net) +test_property_attribute_access(net) + +print('\n -- Atom Property Net') +net = AtomPropertyNet(graph, uri='net:atomProperty_orbit_o2') +test_base_attribute_access(net) +test_property_attribute_access(net) +test_atom_property_attribute_access(net) + +print('\n -- Composite Property Net') +net = CompositePropertyNet(graph, uri='net:compositeProperty_not-direct_d2') +test_base_attribute_access(net) +test_property_attribute_access(net) +test_composite_property_attribute_access(net) + +print('\n -- Individual Net') +net = IndividualNet(graph, uri='net:individual_system_SolarSystem') +test_individual_attribute_access(net) + +print('\n -- Value Net') +net = ValueNet(graph, uri='net:value_SolarSystem_blankNode') +test_value_attribute_access(net) + +print('\n -- Phenomena Net (1)') +net = PhenomenaNet(graph, uri='net:phenomena_conjunction-AND_a') +test_phenomena_attribute_access(net) + +print('\n -- Phenomena Net (1)') +net = PhenomenaNet(graph, uri='net:phenomena_conjunction-OR_o3') +test_phenomena_attribute_access(net) + +print('\n -- Restriction Net') +net = RestrictionNet(graph, uri='net:restriction_hasPart_sun') +test_restriction_attribute_access(net) + +print('\n' + ' *** - ***') \ No newline at end of file -- GitLab