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

Update query_builder to run specific ASK query (is_class_net, is_individual_net)

parent 3314f3a5
No related branches found
No related tags found
1 merge request!1Master
Showing
with 5580 additions and 273 deletions
- INFO - [TENET] Extraction Processing
- INFO -
=== Process Initialization ===
- INFO - -- Process Setting
- INFO - ----- Corpus source: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_data/amrDocuments/dev/solar-system-01/ (amr)
- INFO - ----- Base output dir: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/SolarSystemDev01_factoid.ttl
- INFO - ----- technical dir path: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/technical-data/
- INFO - ----- Ontology target (id): https://tenet.tetras-libre.fr/demo/01/
- INFO - ----- Current path: /home/lamenji/Workspace/Tetras/tenet/tenet
- DEBUG - ----- Config file: /home/lamenji/Workspace/Tetras/tenet/tenet/owl_amr_config.xml
- DEBUG -
*** Config (Full Parameters) ***
-- Base Parameters
----- config file: /home/lamenji/Workspace/Tetras/tenet/tenet/owl_amr_config.xml
----- uuid: https://tenet.tetras-libre.fr/demo/01/
----- technical base name: tenet.tetras-libre.fr_demo_01
----- source corpus: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_data/amrDocuments/dev/solar-system-01/
----- target reference: base
----- process level: sentence
----- source type: amr
----- extraction scheme: owl_amr_scheme_1
-- Directories
----- base directory: ./
----- structure directory: ./structure/
----- CTS directory: ./scheme/
----- target frame directory: ./../input/targetFrameStructure/
----- input document directory:
----- base output dir: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/SolarSystemDev01_factoid.ttl
----- output directory: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/SolarSystemDev01_factoid.ttltenet.tetras-libre.fr_demo_01-20230606/
----- sentence output directory: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/technical-data/
----- technical dir path: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/technical-data/
-- Config File Definition
----- schema file: ./structure/amr-rdf-schema.ttl
----- semantic net file: ./structure/owl-snet-schema.ttl
----- config param file: ./structure/config-parameters.ttl
----- base ontology file: ./structure/base-ontology.ttl
----- CTS file: ./scheme/owl_amr_scheme_1.py
-- Useful References for Ontology
----- base URI: https://tenet.tetras-libre.fr/working
----- ontology suffix: -ontology.ttl
----- ontology seed suffix: -ontology-seed.ttl
-- Source File Definition
----- source sentence file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_data/amrDocuments/dev/solar-system-01/**/*.ttl
-- Target File Definition
----- frame ontology file: ./../input/targetFrameStructure/base-ontology.ttl
----- frame ontology seed file: ./../input/targetFrameStructure/base-ontology-seed.ttl
-- Output
----- ontology namespace: https://tenet.tetras-libre.fr/base-ontology/
----- output file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/technical-data/tenet.tetras-libre.fr_demo_01.ttl
*** - ***
- DEBUG - -- Counting number of graph files (sentences)
- INFO - ----- Number of Graphs: 1
- INFO -
=== Extraction Processing ===
- INFO - *** sentence 1 ***
- INFO - -- Work Structure Preparation
- DEBUG - --- Graph Initialization
- DEBUG - ----- Configuration Loading
- DEBUG - -------- RDF Schema (320)
- DEBUG - -------- Semantic Net Definition (486)
- DEBUG - -------- Config Parameter Definition (520)
- DEBUG - ----- Frame Ontology Loading
- DEBUG - -------- Base Ontology produced as output (550)
- DEBUG - --- Source Data Import
- DEBUG - ----- Sentence Loading
- DEBUG - -------- /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_data/amrDocuments/dev/solar-system-01/SSC-01-01.stog.amr.ttl (598)
- DEBUG - --- Export work graph as turtle
- DEBUG - ----- Work graph file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/technical-data/tenet.tetras-libre.fr_demo_01-1/tenet.tetras-libre.fr_demo_01.ttl
- INFO - ----- Sentence (id): SSC-01-01
- INFO - ----- Sentence (text): The Solar System is the gravitationally bound system of the Sun and the objects that orbit it, either directly or indirectly.
- INFO - -- Loading Extraction Scheme (owl_amr_scheme_1)
- DEBUG - ----- Step number: 3
- INFO - -- Loading Extraction Rules (amr_master_rule/*)
- DEBUG - ----- Total rule number: 87
- INFO - -- Step 1: Preprocessing
- INFO - --- *** November Transduction *** Sequence: amrld-correcting-sequence
- INFO - ----- fix-amr-bug-about-system-solar-planet: 5/5 new triples (603, 0:00:00.038989)
- INFO - --- *** November Transduction *** Sequence: amr-reification-sequence
- INFO - ----- reclassify-concept-1: 10/10 new triples (613, 0:00:00.174521)
- DEBUG - ----- reclassify-concept-2: 0/0 new triple (613, 0:00:00.073971)
- INFO - ----- reclassify-concept-3: 12/12 new triples (625, 0:00:00.057736)
- INFO - ----- reclassify-concept-4: 16/16 new triples (641, 0:00:00.073357)
- INFO - ----- reclassify-concept-5: 2/4 new triples (643, 0:00:00.065874)
- INFO - ----- reify-roles-as-concept: 10/10 new triples (653, 0:00:00.079893)
- INFO - ----- reclassify-existing-variable: 45/45 new triples (698, 0:00:00.052533)
- INFO - ----- add-new-variable-for-reified-concept: 8/8 new triples (706, 0:00:00.059580)
- INFO - ----- add-amr-leaf-for-reclassified-concept: 33/33 new triples (739, 0:00:00.060242)
- INFO - ----- add-amr-leaf-for-reified-concept: 8/8 new triples (747, 0:00:00.037744)
- INFO - ----- add-amr-edge-for-core-relation: 27/27 new triples (774, 0:00:00.129266)
- INFO - ----- add-amr-edge-for-reified-concept: 12/12 new triples (786, 0:00:00.143947)
- INFO - ----- add-amr-edge-for-name-relation: 5/5 new triples (791, 0:00:00.081179)
- DEBUG - ----- add-value-for-quant-relation: 0/0 new triple (791, 0:00:00.079992)
- INFO - ----- add-amr-edge-for-polarity-relation: 5/5 new triples (796, 0:00:00.128074)
- INFO - ----- update-amr-edge-role-1: 15/15 new triples (811, 0:00:00.099327)
- INFO - ----- add-amr-root: 5/5 new triples (816, 0:00:00.028138)
- DEBUG - --- Serializing graph to tenet.tetras-libre.fr_demo_01_Preprocessing
- DEBUG - ----- step: Preprocessing
- DEBUG - ----- id: https://tenet.tetras-libre.fr/demo/01/
- DEBUG - ----- work_file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/technical-data/tenet.tetras-libre.fr_demo_01-1/tenet.tetras-libre.fr_demo_01_Preprocessing.ttl
- DEBUG - ----- base: http://https://tenet.tetras-libre.fr/demo/01//Preprocessing
- INFO - ----- 218 triples extracted during Preprocessing step
- INFO - -- Step 2: Transduction
- INFO - --- Sequence: atomic extraction sequence
- INFO - ----- extract atom classes: 30/30 new triples (846, 0:00:00.198462)
- INFO - ----- extract atom individuals: 8/8 new triples (854, 0:00:00.060506)
- INFO - ----- extract atomic properties: 75/75 new triples (929, 0:00:00.278958)
- INFO - ----- extract atom values: 10/10 new triples (939, 0:00:00.058076)
- INFO - ----- extract atom phenomena: 14/14 new triples (953, 0:00:00.065811)
- INFO - ----- propagate atom relations: 24/68 new triples (977, 0:00:01.549289)
- INFO - --- Sequence: classification sequence (1)
- DEBUG - ----- classify modality phenomena: 0/0 new triple (977, 0:00:00.032699)
- INFO - ----- reclassify argument property to class: 11/14 new triples (988, 0:00:00.108566)
- INFO - --- Sequence: phenomena analyze sequence (1)
- INFO - ----- analyze "polarity" phenomena (1): 32/36 new triples (1020, 0:00:00.126232)
- DEBUG - ----- analyze "polarity" phenomena (2): 0/0 new triple (1020, 0:00:00.023238)
- DEBUG - ----- analyze "polarity" phenomena (3): 0/0 new triple (1020, 0:00:00.023798)
- DEBUG - ----- analyze "polarity" phenomena (4): 0/0 new triple (1020, 0:00:00.053396)
- DEBUG - ----- analyze "polarity" phenomena (5): 0/0 new triple (1020, 0:00:00.047825)
- DEBUG - ----- analyze modifier phenomena (mod): 0/0 new triple (1020, 0:00:00.011056)
- DEBUG - ----- classify modality phenomena: 0/0 new triple (1020, 0:00:00.025444)
- INFO - --- Sequence: phenomena analyze sequence (2)
- INFO - ----- analyze "or" phenomena (1): 1/1 new triple (1021, 0:00:00.090211)
- INFO - ----- analyze "or" phenomena (2): 55/82 new triples (1076, 0:00:00.291587)
- INFO - ----- analyze "and" phenomena (1): 2/14 new triples (1078, 0:00:00.280517)
- DEBUG - ----- analyze "and" phenomena (2): 0/0 new triple (1078, 0:00:00.025398)
- INFO - --- Sequence: composite class extraction sequence
- INFO - ----- extract composite classes (1): 127/138 new triples (1205, 0:00:00.522583)
- DEBUG - ----- extract composite classes (2): 0/0 new triple (1205, 0:00:00.029241)
- INFO - --- Sequence: classification sequence (2)
- INFO - ----- classify class net as entity from core arguments: 10/181 new triples (1215, 0:00:00.315035)
- DEBUG - ----- classify class net as entity from :part relation: 0/0 new triple (1215, 0:00:00.011966)
- DEBUG - ----- classify class net as entity from degree arguments: 0/0 new triple (1215, 0:00:00.024185)
- INFO - ----- Associate mother to class net from :domain relation: 5/34 new triples (1220, 0:00:00.121333)
- DEBUG - ----- Propagate individuals to net with same base node: 0/10 new triple (1220, 0:00:00.032254)
- INFO - ----- Propagate individuals to net with domain link: 3/60 new triples (1223, 0:00:00.152513)
- DEBUG - --- Serializing graph to tenet.tetras-libre.fr_demo_01_Transduction
- DEBUG - ----- step: Transduction
- DEBUG - ----- id: https://tenet.tetras-libre.fr/demo/01/
- DEBUG - ----- work_file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/technical-data/tenet.tetras-libre.fr_demo_01-1/tenet.tetras-libre.fr_demo_01_Transduction.ttl
- DEBUG - ----- base: http://https://tenet.tetras-libre.fr/demo/01//Transduction
- INFO - ----- 407 triples extracted during Transduction step
- INFO - -- Step 3: Generation
- INFO - --- Sequence: OWL Generation Sequence
- INFO - ----- generate OWL class: 52/55 new triples (1275, 0:00:00.702493)
- INFO - ----- generate OWL property: 29/29 new triples (1304, 0:00:00.319180)
- INFO - --- *** November Transduction *** Sequence: main-generation-sequence
- DEBUG - ----- generate-individual: 0/0 new triple (1304, 0:00:00.010755)
- DEBUG - ----- classify-individual-1: 0/0 new triple (1304, 0:00:00.009131)
- DEBUG - ----- classify-individual-2: 0/0 new triple (1304, 0:00:00.009673)
- DEBUG - ----- add-restriction-to-class-1: 0/0 new triple (1304, 0:00:00.019321)
- DEBUG - ----- add-restriction-to-class-2: 0/0 new triple (1304, 0:00:00.013663)
- DEBUG - ----- add-restriction-to-class-3: 0/0 new triple (1304, 0:00:00.023042)
- DEBUG - ----- add-restriction-to-class-4: 0/0 new triple (1304, 0:00:00.015425)
- DEBUG - ----- add-restriction-to-class-5: 0/0 new triple (1304, 0:00:00.016686)
- DEBUG - ----- add-restriction-to-class-6: 0/0 new triple (1304, 0:00:00.015678)
- DEBUG - --- Serializing graph to tenet.tetras-libre.fr_demo_01_Generation
- DEBUG - ----- step: Generation
- DEBUG - ----- id: https://tenet.tetras-libre.fr/demo/01/
- DEBUG - ----- work_file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/technical-data/tenet.tetras-libre.fr_demo_01-1/tenet.tetras-libre.fr_demo_01_Generation.ttl
- DEBUG - ----- base: http://https://tenet.tetras-libre.fr/demo/01//Generation
- INFO - ----- 81 triples extracted during Generation step
- DEBUG - --- Serializing graph to factoid file (/home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/technical-data/tenet.tetras-libre.fr_demo_01-1/tenet.tetras-libre.fr_demo_01_factoid.ttl)
- DEBUG - ----- Number of factoids: 84
- DEBUG - ----- Graph base: http://https://tenet.tetras-libre.fr/demo/01//factoid
- INFO -
=== Final Ontology Generation ===
- INFO - -- Making complete factoid graph by merging the result factoids
- INFO - ----- Total factoid number: 84
- INFO - -- Serializing graph to factoid string
- INFO - ----- Graph base: http://https://tenet.tetras-libre.fr/demo/01//factoid
- INFO - -- Serializing graph to factoid file
- INFO - ----- Ontology Turtle File: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230606/SolarSystemDev01_factoid.ttl
- INFO -
=== Done ===
- INFO -
*** Execution Time ***
----- Function: create_ontology_from_amrld_dir (tenet.main)
----- Total Time: 0:00:07.781671
----- Process Time: 0:00:07.615548
*** - ***
......@@ -4,12 +4,11 @@
#==============================================================================
# TENET: SPARQL Query Builder
#------------------------------------------------------------------------------
# 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.
# ...
#==============================================================================
from rdflib import Graph, Namespace
from rdflib.plugins.sparql import prepareQuery
from transduction.rdfterm_computer import produce_sparql_term
# -- Useful Constant(s)
......@@ -17,6 +16,7 @@ DEFAULT_ATTRIBUTE_VALUE = f'\"NA\"'
INDENT_STR = ' '
SENTENCE_REF = '?sentenceRef'
# -- RDF Prefix List
PREFIX_LIST = [('owl', 'http://www.w3.org/2002/07/owl#'),
('rdf', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'),
('rdfs', 'http://www.w3.org/2000/01/rdf-schema#'),
......@@ -33,9 +33,15 @@ PREFIX_LIST = [('owl', 'http://www.w3.org/2002/07/owl#'),
('ext-out', 'https://tenet.tetras-libre.fr/extract-result#')]
# RDF Prefix Definitions
rdf = Namespace("http://www.w3.org/1999/02/22-rdf-syntax-ns#")
rdfs = Namespace("http://www.w3.org/2000/01/rdf-schema#")
net = Namespace("https://tenet.tetras-libre.fr/semantic-net#")
#==============================================================================
# Method to generate construct query
# Method to generate a generic SPARQL SELECT query
#==============================================================================
def get_prefix_def():
......@@ -103,72 +109,49 @@ def generate_select_query(graph, select_data_list, clause_list):
def generate_ask_query(graph, clause_list):
prefix = get_prefix_def()
clause_part = __define_clause_part(graph, clause_list)
query_code = f'{prefix}'
query_code += f'\n ASK {{ {clause_part} \n }}'
return query_code
#==============================================================================
# Method to generate a generic SPARQL ASK query
#==============================================================================
def generate_construct_query(construct_part, clause_list, binding_part=''):
def generate_ask_query(graph, clause_list):
prefix = get_prefix_def()
clause_part = __define_clause_part(graph, clause_list)
query_code = f'{prefix}'
query_code += f'\n CONSTRUCT {{ {construct_part} \n }}'
query_code += f'\n WHERE {{ {clause_part} \n {binding_part} \n }}'
query_code += f'\n ASK {{ {clause_part} \n }}'
return query_code
def generate_insert_query(triple_list):
prefix = get_prefix_def()
data_part = ''
for triple in triple_list:
data_part += f'\n {triple}'
query_code = f'{prefix}'
query_code += f'\n INSERT DATA {{ {data_part} \n }}'
#==============================================================================
# Method(s) to run specific SPARQL ASK query
#==============================================================================
return query_code
def is_class_net(graph, net_uri):
# SPARQL query construction
clause_list = ['?classUri a [rdfs:subClassOf* net:Class_Net].']
query_code = generate_ask_query(graph, clause_list)
#==============================================================================
# Development Test
#==============================================================================
# SPARQL query execution
result = graph.query(query_code, initBindings={'classUri': net_uri})
if __name__ == '__main__':
# Result (True or False)
return query_code, bool(result)
print('\n' + ' *** Development Test ***')
print('\n -- Generate SPARQL construct query')
query = generate_construct_query('construct', 'identify', 'BIND')
print(query)
def is_individual_net(graph, net_uri):
print('\n -- Generate SPARQL select query')
select_data_list = ['net1', 'net2', 'net3']
clause_list = ['net1 a net:ClassNet.',
'net2 a net:PropertyNet.',
'net3 a net:ClassNet.']
query = generate_select_query(select_data_list, clause_list)
print(query)
# SPARQL query construction
clause_list = ['?classUri a [rdfs:subClassOf* net:Individual_Net].']
query_code = generate_ask_query(graph, clause_list)
print('\n -- Generate SPARQL insert query')
triple_list = ['net:net1 a net:ClassNet.',
'net:net2 a net:PropertyNet.',
'net:net3 a net:ClassNet.']
query = generate_insert_query(triple_list)
print(query)
# SPARQL query execution
result = graph.query(query_code, initBindings={'classUri': net_uri})
print('\n' + ' *** - ***')
\ No newline at end of file
# Result (True or False)
return query_code, bool(result)
\ No newline at end of file
......@@ -9,9 +9,11 @@
import subprocess, os
from rdflib import Graph, Namespace
from rdflib.plugins.sparql import prepareQuery
from rdflib.namespace import NamespaceManager, FOAF, RDF
from rdflib import URIRef, Literal, BNode
FILE_PATH = f'{os.path.dirname(os.path.abspath(__file__))}'
INPUT_DIR_PATH = f'{FILE_PATH}/test_data/'
OUTPUT_DIR_PATH = f'{FILE_PATH}/test_data/'
......@@ -23,8 +25,15 @@ OUTPUT_GRAPH_URI = f'https://amr.tetras-libre.fr/rdf/{TEST_FILE_NAME}/result'
from context import tenet
from tenet.transduction.rdfterm_computer import __update_uri_with_prefix
from tenet.transduction import query_builder
# Module to test
from tenet.transduction.query_builder import (
generate_select_query,
generate_ask_query,
is_class_net,
is_individual_net
)
from tenet.transduction.rdfterm_computer import produce_uriref
from tenet.transduction import prefix_handle
INDENT_STR = ' '
......@@ -45,46 +54,42 @@ def load_test_graph():
#==============================================================================
# Development Test
#==============================================================================
def devtest_insert_query(graph):
print(f'\n -- Insert Query Test')
triple_list = ['net:net1 a net:ClassNet.',
'net:net2 a net:PropertyNet.',
'net:net3 a net:ClassNet.']
test_query = query_builder.generate_insert_query(triple_list)
print(test_query)
graph.update(test_query)
print(f"----- Graph Updated ({len(graph)})")
#==============================================================================
# Unit Test
#==============================================================================
# TODO
#==============================================================================
# Test Script
#==============================================================================
# RDF Prefix Definitions
rdf = Namespace("http://www.w3.org/1999/02/22-rdf-syntax-ns#")
rdfs = Namespace("http://www.w3.org/2000/01/rdf-schema#")
net = Namespace("https://tenet.tetras-libre.fr/semantic-net#")
if __name__ == '__main__':
print('\n *** Test Preparation ***')
# Load RDF graph
graph = load_test_graph()
print('\n \n')
print('\n *** Development Test ***')
devtest_insert_query(graph)
print('\n \n')
print('\n *** Unit Test ***')
# TODO
print('\n \n')
print('\n *** - ***')
\ No newline at end of file
# Test generate_select_query function
select_data_list = ['var1', 'var2', 'var3']
clause_list = [(f'?class_net a net:Atom_Class_Net.')]
query = generate_select_query(graph, select_data_list, clause_list)
print(f"Generated SELECT query:\n{query}\n")
# Test generate_ask_query function
query = generate_ask_query(graph, clause_list)
print(f"Generated ASK query:\n{query}\n")
# Test is_class_net function
net_uri = produce_uriref(graph, 'net:atomClass_sun_s2')
query_code, is_class = is_class_net(graph, net_uri)
print(f"Specific ASK query:\n{query_code}\n")
print(f"Is {net_uri} a net:Class_Net? {is_class}\n")
# Test is_individual_net function (1)
net_uri = produce_uriref(graph, 'net:atomClass_sun_s2')
_, is_individual = is_individual_net(graph, net_uri)
print(f"Is {net_uri} a subclass of net:Individual_Net? {is_individual}\n")
# Test is_individual_net function (2)
net_uri = produce_uriref(graph, 'net:individual_system_SolarSystem')
_, is_individual = is_individual_net(graph, net_uri)
print(f"Is {net_uri} a subclass of net:Individual_Net? {is_individual}\n")
@base <http://https://tenet.tetras-libre.fr/demo/01//factoid> .
@prefix ns1: <https://tenet.tetras-libre.fr/base-ontology#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
<https://tenet.tetras-libre.fr/extract-result#direct> a owl:ObjectProperty ;
rdfs:label "direct" ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#gravitation-bind-system> a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty <https://tenet.tetras-libre.fr/extract-result#bind> ;
owl:someValuesFrom <https://tenet.tetras-libre.fr/extract-result#system> ],
<https://tenet.tetras-libre.fr/extract-result#gravitation> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#hasManner> a owl:ObjectProperty ;
rdfs:label "hasManner" ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#not-direct> a owl:ObjectProperty ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#object-orbit-hasManner-direct-sun> a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty <https://tenet.tetras-libre.fr/extract-result#orbit-hasManner-direct> ;
owl:someValuesFrom <https://tenet.tetras-libre.fr/extract-result#sun> ],
<https://tenet.tetras-libre.fr/extract-result#object> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#object-orbit-hasManner-not-direct-sun> a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty <https://tenet.tetras-libre.fr/extract-result#orbit-hasManner-not-direct> ;
owl:someValuesFrom <https://tenet.tetras-libre.fr/extract-result#sun> ],
<https://tenet.tetras-libre.fr/extract-result#object> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#system-hasPart-object> a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty <https://tenet.tetras-libre.fr/extract-result#hasPart> ;
owl:someValuesFrom <https://tenet.tetras-libre.fr/extract-result#object> ],
<https://tenet.tetras-libre.fr/extract-result#system> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#system-hasPart-sun> a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty <https://tenet.tetras-libre.fr/extract-result#hasPart> ;
owl:someValuesFrom <https://tenet.tetras-libre.fr/extract-result#sun> ],
<https://tenet.tetras-libre.fr/extract-result#system> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#bind> a owl:ObjectProperty ;
rdfs:label "bind" ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#gravitation> a owl:Class ;
rdfs:label "gravitation" ;
rdfs:subClassOf ns1:Entity ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#orbit-hasManner-direct> a owl:ObjectProperty ;
rdfs:subPropertyOf <https://tenet.tetras-libre.fr/extract-result#orbit> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#orbit-hasManner-not-direct> a owl:ObjectProperty ;
rdfs:subPropertyOf <https://tenet.tetras-libre.fr/extract-result#orbit> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#hasPart> a owl:ObjectProperty ;
rdfs:label "hasPart" ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#orbit> a owl:ObjectProperty ;
rdfs:label "orbit" ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#object> a owl:Class ;
rdfs:label "object" ;
rdfs:subClassOf ns1:Entity ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#sun> a owl:Class ;
rdfs:label "sun" ;
rdfs:subClassOf ns1:Entity ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#system> a owl:Class ;
rdfs:label "system" ;
rdfs:subClassOf ns1:Entity,
ns1:Undetermined_Thing ;
ns1:fromStructure "SSC-01-01" .
- INFO - [TENET] Extraction Processing
- INFO -
=== Process Initialization ===
- INFO - -- Process Setting
- INFO - ----- Corpus source: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_data/amrDocuments/dev/solar-system-01/ (amr)
- INFO - ----- Base output dir: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/SolarSystemDev01_factoid.ttl
- INFO - ----- technical dir path: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/technical-data/
- INFO - ----- Ontology target (id): https://tenet.tetras-libre.fr/demo/01/
- INFO - ----- Current path: /home/lamenji/Workspace/Tetras/tenet/tenet
- DEBUG - ----- Config file: /home/lamenji/Workspace/Tetras/tenet/tenet/owl_amr_config.xml
- DEBUG -
*** Config (Full Parameters) ***
-- Base Parameters
----- config file: /home/lamenji/Workspace/Tetras/tenet/tenet/owl_amr_config.xml
----- uuid: https://tenet.tetras-libre.fr/demo/01/
----- technical base name: tenet.tetras-libre.fr_demo_01
----- source corpus: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_data/amrDocuments/dev/solar-system-01/
----- target reference: base
----- process level: sentence
----- source type: amr
----- extraction scheme: owl_amr_scheme_1
-- Directories
----- base directory: ./
----- structure directory: ./structure/
----- CTS directory: ./scheme/
----- target frame directory: ./../input/targetFrameStructure/
----- input document directory:
----- base output dir: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/SolarSystemDev01_factoid.ttl
----- output directory: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/SolarSystemDev01_factoid.ttltenet.tetras-libre.fr_demo_01-20230607/
----- sentence output directory: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/technical-data/
----- technical dir path: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/technical-data/
-- Config File Definition
----- schema file: ./structure/amr-rdf-schema.ttl
----- semantic net file: ./structure/owl-snet-schema.ttl
----- config param file: ./structure/config-parameters.ttl
----- base ontology file: ./structure/base-ontology.ttl
----- CTS file: ./scheme/owl_amr_scheme_1.py
-- Useful References for Ontology
----- base URI: https://tenet.tetras-libre.fr/working
----- ontology suffix: -ontology.ttl
----- ontology seed suffix: -ontology-seed.ttl
-- Source File Definition
----- source sentence file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_data/amrDocuments/dev/solar-system-01/**/*.ttl
-- Target File Definition
----- frame ontology file: ./../input/targetFrameStructure/base-ontology.ttl
----- frame ontology seed file: ./../input/targetFrameStructure/base-ontology-seed.ttl
-- Output
----- ontology namespace: https://tenet.tetras-libre.fr/base-ontology/
----- output file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/technical-data/tenet.tetras-libre.fr_demo_01.ttl
*** - ***
- DEBUG - -- Counting number of graph files (sentences)
- INFO - ----- Number of Graphs: 1
- INFO -
=== Extraction Processing ===
- INFO - *** sentence 1 ***
- INFO - -- Work Structure Preparation
- DEBUG - --- Graph Initialization
- DEBUG - ----- Configuration Loading
- DEBUG - -------- RDF Schema (320)
- DEBUG - -------- Semantic Net Definition (486)
- DEBUG - -------- Config Parameter Definition (520)
- DEBUG - ----- Frame Ontology Loading
- DEBUG - -------- Base Ontology produced as output (550)
- DEBUG - --- Source Data Import
- DEBUG - ----- Sentence Loading
- DEBUG - -------- /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_data/amrDocuments/dev/solar-system-01/SSC-01-01.stog.amr.ttl (598)
- DEBUG - --- Export work graph as turtle
- DEBUG - ----- Work graph file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/technical-data/tenet.tetras-libre.fr_demo_01-1/tenet.tetras-libre.fr_demo_01.ttl
- INFO - ----- Sentence (id): SSC-01-01
- INFO - ----- Sentence (text): The Solar System is the gravitationally bound system of the Sun and the objects that orbit it, either directly or indirectly.
- INFO - -- Loading Extraction Scheme (owl_amr_scheme_1)
- DEBUG - ----- Step number: 3
- INFO - -- Loading Extraction Rules (amr_master_rule/*)
- DEBUG - ----- Total rule number: 87
- INFO - -- Step 1: Preprocessing
- INFO - --- *** November Transduction *** Sequence: amrld-correcting-sequence
- INFO - ----- fix-amr-bug-about-system-solar-planet: 5/5 new triples (603, 0:00:00.030399)
- INFO - --- *** November Transduction *** Sequence: amr-reification-sequence
- INFO - ----- reclassify-concept-1: 10/10 new triples (613, 0:00:00.157238)
- DEBUG - ----- reclassify-concept-2: 0/0 new triple (613, 0:00:00.066780)
- INFO - ----- reclassify-concept-3: 12/12 new triples (625, 0:00:00.046627)
- INFO - ----- reclassify-concept-4: 16/16 new triples (641, 0:00:00.062558)
- INFO - ----- reclassify-concept-5: 2/4 new triples (643, 0:00:00.045841)
- INFO - ----- reify-roles-as-concept: 10/10 new triples (653, 0:00:00.046275)
- INFO - ----- reclassify-existing-variable: 45/45 new triples (698, 0:00:00.032289)
- INFO - ----- add-new-variable-for-reified-concept: 8/8 new triples (706, 0:00:00.045437)
- INFO - ----- add-amr-leaf-for-reclassified-concept: 33/33 new triples (739, 0:00:00.043069)
- INFO - ----- add-amr-leaf-for-reified-concept: 8/8 new triples (747, 0:00:00.028202)
- INFO - ----- add-amr-edge-for-core-relation: 27/27 new triples (774, 0:00:00.110534)
- INFO - ----- add-amr-edge-for-reified-concept: 12/12 new triples (786, 0:00:00.126485)
- INFO - ----- add-amr-edge-for-name-relation: 5/5 new triples (791, 0:00:00.074225)
- DEBUG - ----- add-value-for-quant-relation: 0/0 new triple (791, 0:00:00.060572)
- INFO - ----- add-amr-edge-for-polarity-relation: 5/5 new triples (796, 0:00:00.078471)
- INFO - ----- update-amr-edge-role-1: 15/15 new triples (811, 0:00:00.089760)
- INFO - ----- add-amr-root: 5/5 new triples (816, 0:00:00.026956)
- DEBUG - --- Serializing graph to tenet.tetras-libre.fr_demo_01_Preprocessing
- DEBUG - ----- step: Preprocessing
- DEBUG - ----- id: https://tenet.tetras-libre.fr/demo/01/
- DEBUG - ----- work_file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/technical-data/tenet.tetras-libre.fr_demo_01-1/tenet.tetras-libre.fr_demo_01_Preprocessing.ttl
- DEBUG - ----- base: http://https://tenet.tetras-libre.fr/demo/01//Preprocessing
- INFO - ----- 218 triples extracted during Preprocessing step
- INFO - -- Step 2: Transduction
- INFO - --- Sequence: atomic extraction sequence
- INFO - ----- extract atom classes: 30/30 new triples (846, 0:00:00.142146)
- INFO - ----- extract atom individuals: 8/8 new triples (854, 0:00:00.050765)
- INFO - ----- extract atomic properties: 75/75 new triples (929, 0:00:00.211753)
- INFO - ----- extract atom values: 10/10 new triples (939, 0:00:00.053667)
- INFO - ----- extract atom phenomena: 14/14 new triples (953, 0:00:00.072069)
- INFO - ----- propagate atom relations: 24/68 new triples (977, 0:00:01.082822)
- INFO - --- Sequence: classification sequence (1)
- DEBUG - ----- classify modality phenomena: 0/0 new triple (977, 0:00:00.015675)
- INFO - ----- reclassify argument property to class: 11/14 new triples (988, 0:00:00.065641)
- INFO - --- Sequence: phenomena analyze sequence (1)
- INFO - ----- analyze "polarity" phenomena (1): 32/36 new triples (1020, 0:00:00.084990)
- DEBUG - ----- analyze "polarity" phenomena (2): 0/0 new triple (1020, 0:00:00.021535)
- DEBUG - ----- analyze "polarity" phenomena (3): 0/0 new triple (1020, 0:00:00.014894)
- DEBUG - ----- analyze "polarity" phenomena (4): 0/0 new triple (1020, 0:00:00.033570)
- DEBUG - ----- analyze "polarity" phenomena (5): 0/0 new triple (1020, 0:00:00.045120)
- DEBUG - ----- analyze modifier phenomena (mod): 0/0 new triple (1020, 0:00:00.009501)
- DEBUG - ----- classify modality phenomena: 0/0 new triple (1020, 0:00:00.037509)
- INFO - --- Sequence: phenomena analyze sequence (2)
- INFO - ----- analyze "or" phenomena (1): 1/1 new triple (1021, 0:00:00.154759)
- INFO - ----- analyze "or" phenomena (2): 55/82 new triples (1076, 0:00:00.274200)
- INFO - ----- analyze "and" phenomena (1): 2/14 new triples (1078, 0:00:00.135006)
- DEBUG - ----- analyze "and" phenomena (2): 0/0 new triple (1078, 0:00:00.012529)
- INFO - --- Sequence: composite class extraction sequence
- INFO - ----- extract composite classes (1): 127/138 new triples (1205, 0:00:00.477197)
- DEBUG - ----- extract composite classes (2): 0/0 new triple (1205, 0:00:00.022984)
- INFO - --- Sequence: classification sequence (2)
- INFO - ----- classify class net as entity from core arguments: 10/181 new triples (1215, 0:00:00.329055)
- DEBUG - ----- classify class net as entity from :part relation: 0/0 new triple (1215, 0:00:00.010577)
- DEBUG - ----- classify class net as entity from degree arguments: 0/0 new triple (1215, 0:00:00.021244)
- INFO - ----- Associate mother to class net from :domain relation: 5/34 new triples (1220, 0:00:00.072415)
- DEBUG - ----- Propagate individuals to net with same base node: 0/10 new triple (1220, 0:00:00.042265)
- INFO - ----- Propagate individuals to net with domain link: 3/60 new triples (1223, 0:00:00.137930)
- DEBUG - --- Serializing graph to tenet.tetras-libre.fr_demo_01_Transduction
- DEBUG - ----- step: Transduction
- DEBUG - ----- id: https://tenet.tetras-libre.fr/demo/01/
- DEBUG - ----- work_file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/technical-data/tenet.tetras-libre.fr_demo_01-1/tenet.tetras-libre.fr_demo_01_Transduction.ttl
- DEBUG - ----- base: http://https://tenet.tetras-libre.fr/demo/01//Transduction
- INFO - ----- 407 triples extracted during Transduction step
- INFO - -- Step 3: Generation
- INFO - --- Sequence: OWL Generation Sequence
- INFO - ----- generate OWL class: 52/55 new triples (1275, 0:00:00.582687)
- INFO - ----- generate OWL property: 29/29 new triples (1304, 0:00:00.370962)
- INFO - --- *** November Transduction *** Sequence: main-generation-sequence
- DEBUG - ----- generate-individual: 0/0 new triple (1304, 0:00:00.009683)
- DEBUG - ----- classify-individual-1: 0/0 new triple (1304, 0:00:00.007736)
- DEBUG - ----- classify-individual-2: 0/0 new triple (1304, 0:00:00.010955)
- DEBUG - ----- add-restriction-to-class-1: 0/0 new triple (1304, 0:00:00.022417)
- DEBUG - ----- add-restriction-to-class-2: 0/0 new triple (1304, 0:00:00.015102)
- DEBUG - ----- add-restriction-to-class-3: 0/0 new triple (1304, 0:00:00.018685)
- DEBUG - ----- add-restriction-to-class-4: 0/0 new triple (1304, 0:00:00.021309)
- DEBUG - ----- add-restriction-to-class-5: 0/0 new triple (1304, 0:00:00.019380)
- DEBUG - ----- add-restriction-to-class-6: 0/0 new triple (1304, 0:00:00.014781)
- DEBUG - --- Serializing graph to tenet.tetras-libre.fr_demo_01_Generation
- DEBUG - ----- step: Generation
- DEBUG - ----- id: https://tenet.tetras-libre.fr/demo/01/
- DEBUG - ----- work_file: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/technical-data/tenet.tetras-libre.fr_demo_01-1/tenet.tetras-libre.fr_demo_01_Generation.ttl
- DEBUG - ----- base: http://https://tenet.tetras-libre.fr/demo/01//Generation
- INFO - ----- 81 triples extracted during Generation step
- DEBUG - --- Serializing graph to factoid file (/home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/technical-data/tenet.tetras-libre.fr_demo_01-1/tenet.tetras-libre.fr_demo_01_factoid.ttl)
- DEBUG - ----- Number of factoids: 84
- DEBUG - ----- Graph base: http://https://tenet.tetras-libre.fr/demo/01//factoid
- INFO -
=== Final Ontology Generation ===
- INFO - -- Making complete factoid graph by merging the result factoids
- INFO - ----- Total factoid number: 84
- INFO - -- Serializing graph to factoid string
- INFO - ----- Graph base: http://https://tenet.tetras-libre.fr/demo/01//factoid
- INFO - -- Serializing graph to factoid file
- INFO - ----- Ontology Turtle File: /home/lamenji/Workspace/Tetras/tenet/tests/main_tests/test_owl_output/SolarSystemDev01-20230607/SolarSystemDev01_factoid.ttl
- INFO -
=== Done ===
@base <http://https://tenet.tetras-libre.fr/demo/01//factoid> .
@prefix ns1: <https://tenet.tetras-libre.fr/base-ontology#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
<https://tenet.tetras-libre.fr/extract-result#direct> a owl:ObjectProperty ;
rdfs:label "direct" ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#gravitation-bind-system> a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty <https://tenet.tetras-libre.fr/extract-result#bind> ;
owl:someValuesFrom <https://tenet.tetras-libre.fr/extract-result#system> ],
<https://tenet.tetras-libre.fr/extract-result#gravitation> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#hasManner> a owl:ObjectProperty ;
rdfs:label "hasManner" ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#not-direct> a owl:ObjectProperty ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#object-orbit-hasManner-direct-sun> a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty <https://tenet.tetras-libre.fr/extract-result#orbit-hasManner-direct> ;
owl:someValuesFrom <https://tenet.tetras-libre.fr/extract-result#sun> ],
<https://tenet.tetras-libre.fr/extract-result#object> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#object-orbit-hasManner-not-direct-sun> a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty <https://tenet.tetras-libre.fr/extract-result#orbit-hasManner-not-direct> ;
owl:someValuesFrom <https://tenet.tetras-libre.fr/extract-result#sun> ],
<https://tenet.tetras-libre.fr/extract-result#object> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#system-hasPart-object> a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty <https://tenet.tetras-libre.fr/extract-result#hasPart> ;
owl:someValuesFrom <https://tenet.tetras-libre.fr/extract-result#object> ],
<https://tenet.tetras-libre.fr/extract-result#system> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#system-hasPart-sun> a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty <https://tenet.tetras-libre.fr/extract-result#hasPart> ;
owl:someValuesFrom <https://tenet.tetras-libre.fr/extract-result#sun> ],
<https://tenet.tetras-libre.fr/extract-result#system> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#bind> a owl:ObjectProperty ;
rdfs:label "bind" ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#gravitation> a owl:Class ;
rdfs:label "gravitation" ;
rdfs:subClassOf ns1:Entity ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#orbit-hasManner-direct> a owl:ObjectProperty ;
rdfs:subPropertyOf <https://tenet.tetras-libre.fr/extract-result#orbit> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#orbit-hasManner-not-direct> a owl:ObjectProperty ;
rdfs:subPropertyOf <https://tenet.tetras-libre.fr/extract-result#orbit> ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#hasPart> a owl:ObjectProperty ;
rdfs:label "hasPart" ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#orbit> a owl:ObjectProperty ;
rdfs:label "orbit" ;
rdfs:subPropertyOf ns1:Out_ObjectProperty ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#object> a owl:Class ;
rdfs:label "object" ;
rdfs:subClassOf ns1:Entity ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#sun> a owl:Class ;
rdfs:label "sun" ;
rdfs:subClassOf ns1:Entity ;
ns1:fromStructure "SSC-01-01" .
<https://tenet.tetras-libre.fr/extract-result#system> a owl:Class ;
rdfs:label "system" ;
rdfs:subClassOf ns1:Entity,
ns1:Undetermined_Thing ;
ns1:fromStructure "SSC-01-01" .
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment