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

Clean project after add of RDF Transductions Schemes definition

parent 44a637f1
No related branches found
No related tags found
No related merge requests found
Showing
with 24 additions and 1094 deletions
...@@ -5,10 +5,10 @@ All notable changes to this project will be documented in this file. ...@@ -5,10 +5,10 @@ All notable changes to this project will be documented in this file.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
## [0.1.1] - 2021-08-24 ## [0.1.1] - 2021-08-26
### Added ### Added
- Compositionnal Trandusction Scheme (CTS) - Trandusction Schemes as RDF definition using SHACL rules
- Command **_extract.py_** to analyse one sentence - Command **_extract.py_** to analyse one sentence
- Init corpus ABCD (dev test) - Init corpus ABCD (dev test)
......
# baseURI: https://unsel.tetras-libre.fr/tenet/transduction-schemes # baseURI: https://unsel.tetras-libre.fr/tenet/transduction-schemes
# imports: http://datashapes.org/dash # imports: http://datashapes.org/dash
# imports: https://unl.tetras-libre.fr/rdf/schema
# imports: https://unsel.tetras-libre.fr/tenet/config/parameters
# imports: https://unsel.tetras-libre.fr/tenet/frame/parameters
# imports: https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology
# imports: https://unsel.tetras-libre.fr/tenet/frame/system-ontology
# imports: https://unsel.tetras-libre.fr/tenet/semantic-net
# prefix: cts # prefix: cts
@prefix cts: <https://unsel.tetras-libre.fr/tenet/transduction-schemes#> . @prefix cts: <https://unsel.tetras-libre.fr/tenet/transduction-schemes#> .
...@@ -23,12 +17,6 @@ sh:SPARQLRule ...@@ -23,12 +17,6 @@ sh:SPARQLRule
<https://unsel.tetras-libre.fr/tenet/transduction-schemes> <https://unsel.tetras-libre.fr/tenet/transduction-schemes>
rdf:type owl:Ontology ; rdf:type owl:Ontology ;
owl:imports <http://datashapes.org/dash> ; owl:imports <http://datashapes.org/dash> ;
owl:imports <https://unl.tetras-libre.fr/rdf/schema> ;
owl:imports <https://unsel.tetras-libre.fr/tenet/config/parameters> ;
owl:imports <https://unsel.tetras-libre.fr/tenet/frame/parameters> ;
owl:imports <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology> ;
owl:imports <https://unsel.tetras-libre.fr/tenet/frame/system-ontology> ;
owl:imports <https://unsel.tetras-libre.fr/tenet/semantic-net> ;
. .
cts:Transduction_Schemes cts:Transduction_Schemes
rdf:type owl:Class ; rdf:type owl:Class ;
...@@ -333,6 +321,7 @@ cts:dev_schemes ...@@ -333,6 +321,7 @@ cts:dev_schemes
rdf:type sh:NodeShape ; rdf:type sh:NodeShape ;
rdfs:label "dev schemes" ; rdfs:label "dev schemes" ;
rdfs:subClassOf cts:Transduction_Schemes ; rdfs:subClassOf cts:Transduction_Schemes ;
sh:rule cts:test_1 ;
. .
cts:entity_extraction cts:entity_extraction
rdf:type owl:Class ; rdf:type owl:Class ;
...@@ -527,6 +516,27 @@ cts:preprocessing_1 ...@@ -527,6 +516,27 @@ cts:preprocessing_1
rdf:type cts:preprocessing ; rdf:type cts:preprocessing ;
rdfs:label "preprocessing 1" ; rdfs:label "preprocessing 1" ;
. .
cts:test_1
rdf:type sh:SPARQLRule ;
rdfs:label "test 1" ;
sh:construct """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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
CONSTRUCT {
?net1 a net:Instance.
}
WHERE {
?net1 a net:Instance.
}""" ;
.
cts:typify-modlist-entity cts:typify-modlist-entity
rdf:type sh:SPARQLRule ; rdf:type sh:SPARQLRule ;
sh:construct """PREFIX owl: <http://www.w3.org/2002/07/owl#> sh:construct """PREFIX owl: <http://www.w3.org/2002/07/owl#>
......
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to add Entity classes in System Ontology
INSERT {
?mainEntityUri rdfs:subClassOf ?entityUri.
?subEntityUri rdfs:subClassOf ?mainEntityUri.
?mainEntityUri rdfs:label ?mainEntity.
?subEntityUri rdfs:label ?subEntity.
}
WHERE {
# net1: entity class list
?net1 a net:Instance.
?net1 net:type net:entity_class_list.
?net1 net:entityClass ?entityClass.
?net1 net:class1 ?mainEntity.
?net1 net:class2 ?subEntity.
# Label(s) / URI
cprm:Config_Parameters cprm:baseURI ?baseURI.
fprm:System_Ontology fprm:frameURI ?frameURI.
fprm:System_Entity rdfs:label ?entityLabel.
BIND (concat( ?frameURI, ?entityClass) AS ?s1).
BIND (concat(?s1, '_', ?mainEntity) AS ?s2).
BIND (concat(?s1, '_', ?subEntity) AS ?s3).
BIND (uri( ?s1) AS ?entityUri).
BIND (uri(?s2) AS ?mainEntityUri).
BIND (uri(?s3) AS ?subEntityUri).
FILTER NOT EXISTS { ?net2 net:class2 ?mainEntity}
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to complement Entity classes in System Ontology
INSERT {
?subEntityUri rdfs:subClassOf ?mainEntityUri.
?subEntityUri rdfs:label ?subEntity.
}
WHERE {
# net1: entity class list
?net1 a net:Instance.
?net1 net:type net:entity_class_list.
?net1 net:entityClass ?entityClass.
?net1 net:class1 ?mainEntity.
?net1 net:class2 ?subEntity.
# Label(s) / URI
cprm:Config_Parameters cprm:baseURI ?baseURI.
fprm:System_Ontology fprm:frameURI ?frameURI.
fprm:System_Entity rdfs:label ?entityLabel.
BIND (concat( ?frameURI, ?entityClass) AS ?s1).
BIND (concat(?s1, '_', ?mainEntity) AS ?s2).
BIND (concat(?s1, '_', ?subEntity) AS ?s3).
BIND (uri( ?s1) AS ?entityUri).
BIND (uri(?s2) AS ?mainEntityUri).
BIND (uri(?s3) AS ?subEntityUri).
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to create Entity net
INSERT {
?semNet a net:Instance.
?semNet net:type net:entity.
?semNet net:node ?uw1.
?semNet net:entityClass ?entityClass.
?semNet net:concept ?concept1.
}
WHERE {
# Entity (from System Ontology)
?entity rdf:type fprm:System_Entity.
?entity fprm:class ?entityClass.
?entity fprm:restriction ?entityRestriction.
# UW: type UW-Occurrence and substructure of req sentence
?uw1 rdf:type unl:UW_Occurrence.
?uw1 unl:is_substructure_of ?req.
# ------ ?uw1 unl:is_occurrence_of ?lexTrg.
# Label(s) / URI
?uw1 rdfs:label ?uw1Label.
cprm:Config_Parameters cprm:netURI ?netURI
BIND (strbefore(?uw1Label, '(') AS ?concept1).
BIND (concat( ?netURI, ?entityClass, '_') AS ?s1).
BIND (concat(?s1, ?concept1) AS ?s2).
BIND (uri(?s2) AS ?semNet).
# Filter
FILTER ( regex(str(?uw1Label),str(?entityRestriction)) ).
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to initialize a ModList net
INSERT {
?semNet a net:Instance.
?semNet net:type net:mod_list.
?semNet net:node ?uw1.
}
WHERE {
# UW: type UW-Occurrence and substructure of req sentence
?uwSource rdf:type unl:UW_Occurrence.
?uw1 rdf:type unl:UW_Occurrence.
?uwSource unl:is_substructure_of ?req.
?uw1 unl:is_substructure_of ?req.
# selection: target UW of modifier (mod)
?uwSource unl:mod ?uw1.
# Label(s) / URI
?uw1 rdfs:label ?uw1Label.
cprm:Config_Parameters cprm:netURI ?netURI.
net:mod_list rdfs:label ?modListLabel.
BIND (strbefore(?uw1Label, '(') AS ?concept1).
BIND (strbefore(?uw2Label, '(') AS ?concept2).
BIND (concat( ?netURI, ?modListLabel, '_') AS ?s1).
BIND (concat(?s1, ?concept1) AS ?s2).
BIND (uri(?s2) AS ?semNet).
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to extend a ModList net
INSERT {
?semNet net:node ?uw2.
}
WHERE {
# UW: type UW-Occurrence and substructure of req sentence
?uw1 rdf:type unl:UW_Occurrence.
?uw2 rdf:type unl:UW_Occurrence.
?uw1 unl:is_substructure_of ?req.
?uw2 unl:is_substructure_of ?req.
# selection: modList net
?semNet a net:Instance.
?semNet net:type net:mod_list.
?semNet net:node ?uw1.
# extension: disjunction of UW
?uw1 (unl:or|unl:and) ?uw2.
# Label(s) / URI
# ----- ?uw1 rdfs:label ?uw1Label.
# ----- ?uw2 rdfs:label ?uw2Label.
# ----- BIND (strbefore(?uw1Label, '(') AS ?concept1)
# ----- BIND (strbefore(?uw2Label, '(') AS ?concept2)
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to typify a ModList net as entity
INSERT {
?semNet net:type net:entity_mod_list.
?semNet net:entityClass ?entityClass.
?semNet net:concept ?concept1.
}
WHERE {
# Entity (from System Ontology)
?entity rdf:type fprm:System_Entity.
?entity fprm:class ?entityClass.
?entity fprm:restriction ?entityRestriction.
# UW: type UW-Occurrence and substructure of req sentence
?uw1 rdf:type unl:UW_Occurrence.
?uw1 unl:is_substructure_of ?req.
# net: modList
?semNet a net:Instance.
?semNet net:type net:mod_list.
?semNet net:node ?uw1.
# Label(s) / URI
?uw1 rdfs:label ?uw1Label.
BIND (strbefore(?uw1Label, '(') AS ?concept1)
# Filter
FILTER ( regex(str(?uw1Label),str(?entityRestriction)) ).
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to typify a ModList net as complement
INSERT {
?semNet net:type net:complement_mod_list.
?semNet net:featureClass ?featureClass.
?semNet net:concept ?concept1.
}
WHERE {
# Entity Feature (from System Ontology)
?entity rdf:type fprm:System_Feature.
?entity fprm:class ?featureClass.
?entity fprm:restriction ?featureRestriction.
# UW: type UW-Occurrence and substructure of req sentence
?uw1 rdf:type unl:UW_Occurrence.
?uw1 unl:is_substructure_of ?req.
# net: modList
?semNet a net:Instance.
?semNet net:type net:mod_list.
?semNet net:node ?uw1.
# Label(s) / URI
?uw1 rdfs:label ?uw1Label.
BIND (strbefore(?uw1Label, '(') AS ?concept1)
# Filter
FILTER ( regex(str(?uw1Label),str(?featureRestriction)) ).
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to compose an Entity net and a Complement ModList net
INSERT {
?newNet a net:Instance.
?newNet net:type net:entity_class_list.
?newNet net:node ?uw1.
?newNet net:node ?uw2.
?newNet net:node ?uw3.
?newNet net:entityClass ?entityClass.
?newNet net:featureClass ?featureClass.
?newNet net:class1 ?mainEntity.
?newNet net:class2 ?subEntity.
}
WHERE {
# UW: type UW-Occurrence and substructure of req sentence
?uw1 rdf:type unl:UW_Occurrence.
?uw2 rdf:type unl:UW_Occurrence.
?uw1 unl:is_substructure_of ?req.
?uw2 unl:is_substructure_of ?req.
# net1: entity
?net1 a net:Instance.
?net1 net:type net:entity.
?net1 net:node ?uw1.
?net1 net:entityClass ?entityClass.
?net1 net:concept ?mainEntity.
# net2: complement modList
?net2 a net:Instance.
?net2 net:type net:complement_mod_list.
?net2 net:node ?uw2.
?net2 net:node ?uw3.
?net2 net:featureClass ?featureClass.
?net2 net:concept ?subComplement.
# condition: mod(net1, net2)
?uw1 unl:mod ?uw2.
# Label(s) / URI
cprm:Config_Parameters cprm:netURI ?netURI.
net:class_list rdfs:label ?classListLabel.
BIND (concat(?subComplement, '-', ?mainEntity) AS ?subEntity).
BIND (concat( ?netURI, ?classListLabel, '_') AS ?s1).
BIND (concat(?s1, ?mainEntity, '-', ?featureClass) AS ?s2).
BIND (uri(?s2) AS ?newNet).
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to compose an Entity net and an Entity ModList net (with same entity classes)
INSERT {
?newNet a net:Instance.
?newNet net:type net:entity_class_list.
?newNet net:node ?uw1.
?newNet net:node ?uw2.
?newNet net:node ?uw3.
?newNet net:entityClass ?entityClass1.
?newNet net:class1 ?mainEntity.
?newNet net:class2 ?subEntity.
}
WHERE {
# UW: type UW-Occurrence and substructure of req sentence
?uw1 rdf:type unl:UW_Occurrence.
?uw2 rdf:type unl:UW_Occurrence.
?uw1 unl:is_substructure_of ?req.
?uw2 unl:is_substructure_of ?req.
# net1: agent
?net1 a net:Instance.
?net1 net:type net:entity.
?net1 net:node ?uw1.
?net1 net:entityClass ?entityClass1.
?net1 net:concept ?mainEntity.
# net2: complement modList
?net2 a net:Instance.
?net2 net:type net:entity_mod_list.
?net2 net:node ?uw2.
?net2 net:node ?uw3.
?net2 net:entityClass ?entityClass2.
?net2 net:concept ?subEntity.
# condition: mod(net1, net2)
?uw1 unl:mod ?uw2.
# Label(s) / URI
?uw2 rdfs:label ?uw2Label.
cprm:Config_Parameters cprm:netURI ?netURI.
net:class_list rdfs:label ?classListLabel.
BIND (strbefore(?uw2Label, '(') AS ?uw2Concept).
BIND (concat( ?netURI, ?classListLabel, '_') AS ?s1).
BIND (concat(?s1, ?mainEntity, '-', ?uw2Concept) AS ?s2).
BIND (uri(?s2) AS ?newNet).
# Filter: same entity classes
FILTER ( ?entityClass1 = ?entityClass2 )
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to compose an Entity net and an Entity ModList net (with distinct entity classes)
INSERT {
?newNet a net:Instance.
?newNet net:type net:entity_class_list.
?newNet net:node ?uw1.
?newNet net:node ?uw2.
?newNet net:node ?uw3.
?newNet net:entityClass ?entityClass1.
?newNet net:class1 ?mainEntity.
?newNet net:class2 ?subEntity.
}
WHERE {
# UW: type UW-Occurrence and substructure of req sentence
?uw1 rdf:type unl:UW_Occurrence.
?uw2 rdf:type unl:UW_Occurrence.
?uw1 unl:is_substructure_of ?req.
?uw2 unl:is_substructure_of ?req.
# net1: agent
?net1 a net:Instance.
?net1 net:type net:entity.
?net1 net:node ?uw1.
?net1 net:entityClass ?entityClass1.
?net1 net:concept ?mainEntity.
# net2: complement modList
?net2 a net:Instance.
?net2 net:type net:entity_mod_list.
?net2 net:node ?uw2.
?net2 net:node ?uw3.
?net2 net:entityClass ?entityClass2.
?net2 net:concept ?subEntity.
# condition: mod(net1, net2)
?uw1 unl:mod ?uw2.
# Label(s) / URI
?uw2 rdfs:label ?uw2Label.
cprm:Config_Parameters cprm:netURI ?netURI.
net:class_list rdfs:label ?classListLabel.
BIND (strbefore(?uw2Label, '(') AS ?uw2Concept).
BIND (concat( ?netURI, ?classListLabel, '_') AS ?s1).
BIND (concat(?s1, ?mainEntity, '-', ?uw2Concept) AS ?s2).
BIND (uri(?s2) AS ?newNet).
# Filter: distinct entity classes
FILTER ( ?entityClass1 != ?entityClass2 )
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Request to extend UNL relation
INSERT {
?node1 ?unlRel ?node2.
}
WHERE {
?rel unl:has_source ?node1.
?rel unl:has_target ?node2.
?rel a ?unlRel.
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Request to extend UNL relation to scopes
# (by connecting the source node of the scope to the entry node of the scope)
INSERT {
?node1Occ ?unlRel ?node2Occ.
}
WHERE {
?scope rdf:type unl:UNL_Scope.
?node1Occ unl:is_source_of ?rel.
?rel unl:has_target ?scope.
?scope unl:is_scope_of ?scopeRel.
?scopeRel unl:has_source ?node2Occ.
?node2Occ unl:has_attribute ".@entry".
?rel a ?unlRel.
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
# -- Query to select net instance
SELECT ?net
WHERE {
?net rdf:type net:Instance.
}
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 xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX unl: <https://unl.tetras-libre.fr/rdf/schema#>
PREFIX net: <https://unsel.tetras-libre.fr/tenet/semantic-net#>
PREFIX cprm: <https://unsel.tetras-libre.fr/tenet/config/parameters#>
PREFIX req: <https://unsel.tetras-libre.fr/tenet/frame/requirement-ontology#>
PREFIX sys: <https://unsel.tetras-libre.fr/tenet/frame/system-ontology#>
PREFIX fprm: <https://unsel.tetras-libre.fr/tenet/frame/parameters#>
SELECT ?entity
WHERE {
?entity rdfs:subClassOf* ?entityClass.
fprm:System_Ontology fprm:frameURI ?frameURI.
fprm:System_Entity rdfs:label ?entityLabel.
?entityClass rdfs:subClassOf ?entityClass2.
BIND (concat( ?frameURI, ?entityLabel) AS ?s1).
BIND (uri(?s1) AS ?entityUri).
FILTER ( ?entityClass = ?entityUri )
}
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment