Skip to content
Snippets Groups Projects
Commit 9431756b authored by Aurélien Lamercerie's avatar Aurélien Lamercerie
Browse files

Development of febTransduction (in progress)

parent 9570e61b
Branches
Tags
No related merge requests found
from .pattern import Pattern
\ No newline at end of file
......@@ -2,71 +2,54 @@
# -*-coding:Utf-8 -*
#==============================================================================
# TENET: Transduction Rule
# TENET: Pattern
#------------------------------------------------------------------------------
# Class to define a Compositional Transduction Rule (CTR), namely a rule
# associating a semantic graph pattern and a semantic net constructor.
# Several methods are proposed to translate the rule into a sequence of SPARQL
# queries applicable to a semantic graph.
# Class to define a pattern to find in a semantic graph. The pattern is
# composed of a list of semantic nets to be extracted from the graph and
# associated with a set of clauses (identification or relational clauses).
#==============================================================================
if __name__ == '__main__':
import os, sys
LIB_PATH = f'{os.path.dirname(os.path.abspath(__file__))}/..'
sys.path.insert(0, os.path.abspath(LIB_PATH))
print(sys.path[0])
import logging
from rdflib import Graph
from rdflib import Namespace
from rdflib.namespace import NamespaceManager
import febTransduction.query_builder as query_builder
import febTransduction.net as net
# -- Useful Constant(s)
DEFAULT_ATTRIBUTE_VALUE = f'\"NA\"'
INDENT_STR = ' '
SENTENCE_REF = '?sentenceRef'
from febTransduction.net.semantic_net_rdf_reference import SemanticNetReferenceHandle
#==============================================================================
# Net Class
# Class
#==============================================================================
class Rule:
""" Class to define a Compositional Transduction Rule (CTR), namely a rule
associating a semantic graph pattern and a semantic net constructor.
class Pattern:
""" Class to define a pattern to find in a semantic graph. The pattern is
composed of a list of semantic nets to be extracted from the graph and
associated with a set of clauses (identification or relational clauses).
"""
#--------------------------------------------------------------------------
# Class Attributes
#--------------------------------------------------------------------------
# None
#--------------------------------------------------------------------------
# Constructor
#--------------------------------------------------------------------------
def __init__(self, label, net):
def __init__(self, *nets):
# -- Base
self.label = label
self.new_net = net
# -- Pattern
self._identification_pattern_dict = {}
self._composition_pattern_list = []
self._restriction_pattern_list = []
# -- SPARQL Query
self.query_list = []
self.label = f' ----- finding'
self.net_list = []
for net in nets:
self.label += f' {net}'
self.net_list.append(f'?{net}')
# -- Reference Handle
self.referenceHandle = SemanticNetReferenceHandle()
#--------------------------------------------------------------------------
# Accessor(s)
#--------------------------------------------------------------------------
# --
# -- Pattern
self._identification_pattern_list = []
self._relation_pattern_list = []
#--------------------------------------------------------------------------
......@@ -74,162 +57,35 @@ class Rule:
#--------------------------------------------------------------------------
def add_identification_pattern(self, net, **net_attribute):
self._identification_pattern_dict[net] = net.identify_attribute(**net_attribute)
for attr_ref in net_attribute.keys():
attr_predicate = self.referenceHandle.get_predicate(attr_ref)
attr_value = net_attribute.get(attr_ref)
self._identification_pattern_list.append(())
def add_composition_pattern(self, net_1, relation, net_2):
self._composition_pattern_list.append((net_1, relation, net_2))
def add_restriction_pattern(self, net_1, relation, net_2):
self._restriction_pattern_list.append((net_1, relation, net_2))
def add_relation_pattern(self, net_1, relation, net_2):
self._relation_pattern_list.append((net_1, relation, net_2))
#--------------------------------------------------------------------------
# Method(s) to construct a new semantic net by composition of net(s)
# Pattern Application Method
#--------------------------------------------------------------------------
def __define_identification_clause(self, *nets):
clause_part = f"\n{INDENT_STR}"
clause_part += f"# -- Identify Net(s)"
for net in nets:
clause_part += f"\n{INDENT_STR}"
clause_part += net.identify()
if net in self._identification_pattern_dict:
clause_part += self._identification_pattern_dict[net]
return clause_part
def __define_pattern_clause(self):
clause_part = f"\n{INDENT_STR}"
clause_part += f"# -- Identify Pattern "
for (net_1, relation, net_2) in self._composition_pattern_list:
clause_part += f"\n{INDENT_STR}"
clause_part += f'{net_1.id} {relation} {net_2.id}.'
return clause_part
def __define_tracking_data_selection_clause(self, *nets):
clause_part = f"\n{INDENT_STR}"
clause_part += f"# -- Data Selection "
for net in nets:
clause_part += f"\n{INDENT_STR}"
clause_part += net.select_tracking_data()
return clause_part
def apply(self, graph):
def __define_new_net_binding_clause(self, *nets):
# -- Select Data List
select_data_list = []
for net in net_list:
select_data_list.append(net.id)
assert len(nets) > 0, '__define_new_net_binding_clause impossible without net'
clause_part = f"\n{INDENT_STR}"
clause_part += f"""# *** Identify variable label of base leaf ***
{nets[0].select_data('base_node')}
{nets[0].base_node} a amr:AMR_Leaf ;
amr:hasVariable ?variable.
?variable amr:label ?varLabel."""
clause_part += f"\n\n{INDENT_STR}"
clause_part += f"# -- Naming Binding \n{INDENT_STR}"
clause_part += self.new_net.bind_naming(*nets)
clause_part += f"\n\n{INDENT_STR}"
clause_part += f"# -- URI Binding"
clause_part += self.new_net.bind_uri(self.new_net.naming, '?varLabel')
return clause_part
def __define_new_net(self):
construct_part = f"\n{INDENT_STR}"
construct_part += f'# -- New net \n'
construct_part += self.new_net.define()
return construct_part
def __define_composition(self, *nets):
construct_part = f"\n{INDENT_STR}"
construct_part += f'# -- Composition Tracking for {self.new_net.id}'
main = True
for net in nets:
construct_part += f"\n{INDENT_STR}"
construct_part += self.new_net.track_composante(net, main)
main = False
return construct_part
def __define_deprecate_net(self, *nets):
if (nets is not None) & (len(nets) != 0):
construct_part = f'\n{INDENT_STR}'
construct_part += f'# -- Deprecate net \n{INDENT_STR}'
construct_part += f'{nets[0].id} a net:Deprecated_Net.'
return construct_part
def compose(self, *nets):
query_label = 'new net construction'
# -- Clause Part
clause_part = ''
clause_part += self.__define_identification_clause(*nets)
clause_part += '\n'
clause_part += self.__define_pattern_clause()
clause_part += '\n'
clause_part += self.__define_tracking_data_selection_clause(*nets)
clause_part += '\n'
clause_part += self.__define_new_net_binding_clause(*nets)
# -- Construct Part
construct_part = ''
construct_part += self.__define_new_net()
construct_part += self.__define_composition(*nets)
construct_part += self.__define_deprecate_net(*nets)
# -- Clause List
clause_list = []
for (attr_predicate, attr_value) in relation_pattern_list:
clause_list.append(f'{self.id} {attr_predicate} {attr_value}.')
for (net_1, relation, net_2) in relation_pattern_list:
clause_list.append(f'{net_1.id} {relation} {net_2.id}.')
# -- Query Generation
compose_query = query_builder.generate_construct_query(construct_part, clause_part)
self.query_list.append((query_label, compose_query))
#==============================================================================
# Development Test
#==============================================================================
if __name__ == '__main__':
print('\n' + ' *** Development Test ***')
# print('\n' + ' -- Net Definition')
property_net_0 = net.PropertyNet(0)
property_net_1 = net.PropertyNet(1)
phenomena_net = net.PhenomenaNet()
or_composite_class_net = net.OrCompositeClassNet()
# print('\n' + ' -- Test Rule 1')
rule = Rule('Test Rule', or_composite_class_net)
rule.add_identification_pattern(phenomena_net, phenomena_type='amr:phenomena_conjunction_or')
rule.add_composition_pattern(property_net_1, 'amr:role_ARG0', property_net_0)
rule.add_composition_pattern(property_net_1, 'amr:role_ARG1', phenomena_net)
rule.compose(property_net_0, property_net_1, phenomena_net)
rule.compute_data()
num = 0
for query_label, query in rule.query_list:
num += 1
print(f'*** query {num} - {query_label} ***\n{query}\n')
# print('\n' + ' -- load a rule definition from a dictionary')
# rule.load_dict(rule_def_1)
# print(rule)
# print('\n' + ' -- load a prefix list')
# rule.load_prefix_list(prefix_list_1)
# print(rule)
# print('\n' + ' -- get the SPARQL query')
# query = rule.get_query()
# print(query)
query_code = query_builder.generate_select_query(select_data_list, clause_list)
query_result = graph.query(test_query)
print('\n' + ' *** - ***')
\ No newline at end of file
return query_result
\ No newline at end of file
......@@ -2,97 +2,167 @@
# -*-coding:Utf-8 -*
#==============================================================================
# TENET: AMR CTR at 'Net Expansion' level
# TENET: AMR CTR at 'Net Expansion' level for phenomena application (or)
#------------------------------------------------------------------------------
# Module grouping compositional transduction rule_sets (CTR) for the analysis
# of AMR structures, at 'Net Expansion' level
#==============================================================================
import subprocess, os
from rdflib import Graph
from rdflib import Namespace
from rdflib.namespace import NamespaceManager
if __name__ == '__main__':
import os, sys
LIB_PATH = f'{os.path.dirname(os.path.abspath(__file__))}/../../..'
LIB_PATH = f'{os.path.dirname(os.path.abspath(__file__))}/..'
sys.path.insert(0, os.path.abspath(LIB_PATH))
print(sys.path[0])
import febTransduction as transduction
from febTransduction.query_builder import generate_select_query
#==============================================================================
# Rule to analyze conjunction phenomena
# Rule with pattern property(class, or_phenomena)
#==============================================================================
def __select_pattern_1():
# -- Select Data List
select_data_list = ['?property_net', '?class_net', '?phenomena_net']
# -- Clause List
clause_list = []
clause_list.append(f'?property_net a [rdfs:subClassOf* net:Property_Net].')
clause_list.append(f'?class_net a [rdfs:subClassOf* net:Class_Net].')
clause_list.append(f'?phenomena_net a [rdfs:subClassOf* net:Phenomena_Net].')
clause_list.append(f'?phenomena_net net:hasPhenomenaType amr:phenomena_conjunction_or.')
clause_list.append(f'?property_net amr:role_ARG0 ?class_net.')
clause_list.append(f'?property_net amr:role_ARG1 ?phenomena_net.')
# -- Query Generation
query_code = transduction.query_builder.generate_select_query(select_data_list, clause_list)
return query_code
# pattern = transduction.Pattern('class_net', 'property_net', 'phenomena_net')
# pattern.add_identification_pattern(phenomena_net, phenomena_type='amr:phenomena_conjunction_or')
# pattern.add_composition_pattern(property_net, 'amr:role_ARG0', class_net_0)
# pattern.add_composition_pattern(property_net, 'amr:role_ARG1', phenomena_net)
# pattern_query = pattern.get_select_query()
# return pattern_query
def __op_pattern_1(phenomena_net_uri, num):
assert 1 <= num <= 9
# -- Select Data List
select_data_list = ['?class_net']
# -- Clause List
clause_list = []
clause_list.append(f'?class_net a [rdfs:subClassOf* net:Class_Net].')
clause_list.append(f'{phenomena_net_uri} amr:role_op{num} ?class_net.')
# -- Query Generation
query_code = transduction.query_builder.generate_select_query(select_data_list, clause_list)
return query_code
def __define_restriction(net, op_set): # TODO
pass
return net
def analyze_phenomena_or_1(graph):
# -- Rule Initialization
rule_label = '"or" phenomena analysis 1 (targetting class)'
print(f"--- *** February Transduction *** Sequence: {rule_label}")
#logger.info(f"--- *** February Transduction *** Sequence: {rule_label}")
# -- Net Instanciation
property_net = net.PropertyNet(graph)
class_net_0 = net.ClassNet(graph)
phenomena_net = net.PhenomenaNet(graph)
composite_class_net = net.CompositeClassNet(graph)
# -- Selection Pattern Application
query_code = __select_pattern_1()
pattern_set = graph.query(query_code)
# -- Rule Initialization
pattern = transduction.Pattern(class_net_0, property_net, phenomena_net)
pattern.add_identification_pattern(phenomena_net, phenomena_type='amr:phenomena_conjunction_or')
pattern.add_composition_pattern(property_net, 'amr:role_ARG0', class_net_0)
pattern.add_composition_pattern(property_net, 'amr:role_ARG1', phenomena_net)
pattern.apply(graph) # ou class_net_0, property_net, phenomena_net = pattern.apply(graph)
# -- New Net Computing
new_triple_list = []
for selection in pattern_set:
# -- Net Composition
composite_class_net.compose(class_net_0, property_net, phenomena_net)
class_net = net.ClassNet(graph, selection.class_net)
property_net = net.PropertyNet(graph, selection.property_net)
phenomena_net = net.PhenomenaNet(graph, selection.phenomena_net)
composite_class_net = net.CompositeClassNet(graph)
composite_class_net.compose(class_net, property_net, phenomena_net)
# -- Data Computation
composite_class_net.mother_class = class_net_0
composite_class_net.mother_class = class_net
# etc
# -- Restriction Computation
# TODO
composite_class_net.restriction = restriction
for num in range(1, 9+1):
query_code = __op_pattern_1(selection.phenomena_net, num)
op_set = graph.query(query_code)
composite_class_net = __define_restriction(composite_class_net, op_set)
# -- Relation Propagation
for (n1, rel, _) in class_net_0.input_relation_list:
for (n1, rel, _) in class_net.input_relation_list:
composite_class_net.add_input_relation(n1, rel)
# TODO: à voir si on veut d'autres relations
# -- Finalization
composite_class_net.finalize()
new_triple_list = composite_class_net.generate_triple_definition()
new_triples = composite_class_net.generate_triple_definition()
new_triple_list.append(new_triples)
return rule_label, new_triple_list
def analyze_phenomena_or_2():
#==============================================================================
# Rule with pattern property(property, or_phenomena)
#==============================================================================
# -- Net Instanciation
property_net_0 = net.PropertyNet(0)
property_net_1 = net.PropertyNet(1)
phenomena_net = net.PhenomenaNet()
or_composite_class_net = net.OrCompositeClassNet()
def __select_pattern_2():
# -- Rule Initialization
rule = transduction.Rule('"or" phenomena analysis 2 (targetting property)',
or_composite_class_net)
# -- Select Data List
select_data_list = ['?property_net_0', '?property_net', '?phenomena_net']
# -- Net Composition
rule.add_identification_pattern(phenomena_net, phenomena_type='amr:phenomena_conjunction_or')
rule.add_composition_pattern(property_net_1, 'amr:role_ARG0', property_net_0)
rule.add_composition_pattern(property_net_1, 'amr:role_ARG1', phenomena_net)
rule.compose(property_net_0, property_net_1, phenomena_net)
# -- Clause List
clause_list = []
clause_list.append(f'?property_net a [rdfs:subClassOf* net:Property_Net].')
clause_list.append(f'?property_net_0 a [rdfs:subClassOf* net:Property_Net].')
clause_list.append(f'?phenomena_net a [rdfs:subClassOf* net:Phenomena_Net].')
clause_list.append(f'?phenomena_net net:hasPhenomenaType amr:phenomena_conjunction_or.')
clause_list.append(f'?property_net amr:role_ARG0 ?property_net_0.')
clause_list.append(f'?property_net amr:role_ARG1 ?phenomena_net.')
# -- Data Computation
# rule.compute_data(mother_class_net=property_net_0.id)
# -- Query Generation
query_code = transduction.query_builder.generate_select_query(select_data_list, clause_list)
# -- Restriction Computation
# TODO
return query_code
# -- Relation Propagation
# TODO
# -- Finalization
# TODO
def analyze_phenomena_or_2():
return rule
# -- Rule Initialization
rule_label = '"or" phenomena analysis 2 (targetting class)'
print(f"--- *** February Transduction *** Sequence: {rule_label}")
# -- Selection Pattern Application
query_code = __select_pattern_2()
pattern_set = graph.query(query_code)
# -- New Net Computing
new_triple_list = []
for selection in pattern_set:
pass
return rule_label, new_triple_list
......@@ -104,11 +174,43 @@ if __name__ == '__main__':
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('testGraph1.ttl')
print(f"----- Graph Loaded ({len(graph)})")
print('\n -- Select Pattern Application 1')
query_code = __select_pattern_1()
print(query_code)
pattern_result_set = graph.query(query_code)
print(f'\n ----- number of selection found: {len(pattern_result_set)}')
for selection in pattern_result_set:
result_str = f'>>> '
result_str += f'{selection.property_net.n3(graph.namespace_manager)}'
result_str += f' {selection.class_net.n3(graph.namespace_manager)}'
result_str += f' {selection.phenomena_net.n3(graph.namespace_manager)}'
print(result_str)
print('\n -- Select Pattern Application 2')
query_code = __select_pattern_2()
print(query_code)
pattern_result_set = graph.query(query_code)
print(f'\n ----- number of selection found: {len(pattern_result_set)}')
for selection in pattern_result_set:
result_str = f'>>> '
result_str += f'{selection.property_net.n3(graph.namespace_manager)}'
result_str += f' {selection.property_net_0.n3(graph.namespace_manager)}'
result_str += f' {selection.phenomena_net.n3(graph.namespace_manager)}'
print(result_str)
print('\n -- Rule')
rule = analyze_phenomena_or_1()
# rule = analyze_phenomena_or_1()
num = 0
for query_label, query in rule.query_list:
num += 1
print(f'*** query {num} - {query_label} ***\n{query}\n')
# num = 0
# for query_label, query in rule.query_list:
# num += 1
# print(f'*** query {num} - {query_label} ***\n{query}\n')
\ No newline at end of file
@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 ) .
......@@ -9,6 +9,8 @@
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/'
......@@ -16,7 +18,7 @@ OUTPUT_DIR_PATH = f'{FILE_PATH}/output/'
TEST_GRAPH = f'{INPUT_DIR_PATH}testGraph1.ttl'
from context import tenet
from tenet.febTransduction import query_builder
from tenet.febTransduction import phenomena_application_or
INDENT_STR = ' '
......@@ -41,27 +43,34 @@ print('\n *** Development Test ***')
print(f'\n -- Test Graph Loading')
work_graph = Graph()
work_graph.bind('net', Namespace('https://tenet.tetras-libre.fr/semantic-net#'))
work_graph.parse(TEST_GRAPH)
print(f"----- Graph Loaded ({len(work_graph)})")
print(f'\n -- Test Nets')
property_net = '?property_net'
class_net_0 = '?class_net_0'
phenomena_net = '?phenomena_net'
# print(f'\n -- Test Nets')
# property_net = '?property_net'
# class_net_0 = '?class_net_0'
# phenomena_net = '?phenomena_net'
print(f'\n -- Select Query Test')
select_data_list = [class_net_0, property_net, phenomena_net]
composition_pattern_list = []
composition_pattern_list.append((property_net, 'amr:role_ARG0', class_net_0))
composition_pattern_list.append((property_net, 'amr:role_ARG1', phenomena_net))
clause_list = define_clause_list(composition_pattern_list)
test_query = query_builder.generate_select_query(select_data_list, clause_list)
print(test_query)
query_result = work_graph.query(test_query)
for row in query_result:
print(f"{row.class_net_0} - {row.property_net} - {row.phenomena_net} ")
# select_data_list = [class_net_0, property_net, phenomena_net]
# composition_pattern_list = []
# composition_pattern_list.append((property_net, 'amr:role_ARG0', class_net_0))
# composition_pattern_list.append((property_net, 'amr:role_ARG1', phenomena_net))
# clause_list = define_clause_list(composition_pattern_list)
# test_query = query_builder.generate_select_query(select_data_list, clause_list)
# print(test_query)
# query_result = work_graph.query(test_query)
pattern_result_set = phenomena_application_or.apply_or_phenomena_pattern_1(work_graph)
print(f'\n *** Select Result ***')
for selection in pattern_result_set:
result_str = f'>>> '
result_str += f'{selection.class_net_0.n3(work_graph.namespace_manager)}'
result_str += f' {selection.property_net.n3(work_graph.namespace_manager)}'
result_str += f' {selection.phenomena_net.n3(work_graph.namespace_manager)}'
print(result_str)
print(f'\n -- Insert Query Test')
triple_list = ['net:net1 a net:ClassNet.',
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment