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

CTS update: atomOf points to the class containing seeds (insteads of mother class)

parent 7fb59ae8
Branches
Tags
No related merge requests found
......@@ -253,6 +253,16 @@ net:objectValue
rdfs:label "valuations"@fr ;
rdfs:subPropertyOf net:objectProperty ;
.
net:relation
rdf:type owl:Class ;
rdfs:label "relation" ;
rdfs:subClassOf net:Type ;
.
net:relationOf
rdf:type rdf:Property ;
rdfs:label "relation of" ;
rdfs:subPropertyOf net:typeProperty ;
.
net:state_property
rdf:type owl:Class ;
rdfs:label "stateProperty" ;
......
......@@ -296,6 +296,7 @@ cts:batch_execution
sh:rule cts:compute-domain-range-of-state-property-object-properties ;
sh:rule cts:compute-instance-uri-of-net-object ;
sh:rule cts:create-atom-net ;
sh:rule cts:create-relation-net ;
sh:rule cts:create-unary-atom-list-net ;
sh:rule cts:define-uw-id ;
sh:rule cts:extend-atom-list-net ;
......@@ -402,7 +403,7 @@ WHERE {
# net1: verb
?net1 a net:Instance.
?net1 net:type net:atom.
?net1 net:atomOf sys:Verb.
?net1 net:atomOf sys:action_verb.
?net1 net:has_structure ?req.
?net1 net:has_node ?uw1.
?net1 net:has_atom ?verbObject.
......@@ -474,7 +475,7 @@ WHERE {
# net1: verb
?net1 a net:Instance.
?net1 net:type net:atom.
?net1 net:atomOf sys:Verb.
?net1 net:atomOf sys:attributive_verb.
?net1 net:has_structure ?req.
?net1 net:has_node ?uw1.
?net1 net:has_atom ?verbObject.
......@@ -881,10 +882,10 @@ CONSTRUCT {
}
WHERE {
# Atom Description (from System Ontology)
?targetClass rdfs:subClassOf* sys:Structure.
?targetClass sys:has_mother_class ?atomMother.
?targetClass sys:is_class ?atomClass.
?targetClass sys:has_restriction ?restriction.
?atomMother rdfs:subClassOf* sys:Structure.
# -- old --- ?targetClass sys:has_mother_class ?atomMother.
?atomMother sys:is_class ?atomClass.
?atomMother sys:has_restriction ?restriction.
# UW: type UW-Occurrence and substructure of req sentence
?uw1 rdf:type unl:UW_Occurrence.
?uw1 unl:is_substructure_of ?req.
......@@ -909,6 +910,56 @@ WHERE {
}""" ;
sh:order 2.11 ;
.
cts:create-relation-net
rdf:type sh:SPARQLRule ;
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#>
# -- Create relation net
CONSTRUCT {
# Net: Relation
?newNet a net:Instance.
?newNet net:type net:relation.
?newNet net:relationOf ?relationMother.
?newNet net:has_structure ?req.
?newNet net:has_node ?uw1.
?newNet net:has_verb ?verbObject.
# -- todo? --- ?newNet net:has_possible_domain ?domainClass.
# -- todo? --- ?newNet net:has_possible_range ?rangeClass.
}
WHERE {
# Relation Description (from System Ontology)
?targetProperty rdfs:subPropertyOf* sys:Relation.
?targetProperty sys:has_mother_property ?relationMother.
?targetProperty sys:has_reference ?relationReference.
?targetProperty sys:has_restriction_on_class ?classRestriction.
# net1: atom of relation
?net1 a net:Instance.
?net1 net:type net:atom.
?net1 net:atomOf ?atomCategory.
?atomCategory rdfs:subClassOf* ?classRestriction.
?net1 net:has_structure ?req.
?net1 net:has_node ?uw1.
?net1 net:has_atom ?verbObject.
?verbObject net:has_parent_class ?classRestriction.
# Label: Id
?uw1 unl:has_id ?uw1Id.
# URI (for Event Net)
cprm:Config_Parameters cprm:netURI ?netURI.
BIND (concat( ?netURI, ?relationReference, '_') AS ?n1).
BIND (concat(?n1, ?uw1Id) AS ?n2).
BIND (uri(?n2) AS ?newNet).
}""" ;
sh:order 2.41 ;
.
cts:create-unary-atom-list-net
rdf:type sh:SPARQLRule ;
sh:construct """PREFIX owl: <http://www.w3.org/2002/07/owl#>
......
......@@ -47,6 +47,14 @@ sys:Feature
rdfs:subClassOf sys:Structure ;
sys:is_class "Feature" ;
.
sys:Relation
rdf:type rdf:Property ;
rdfs:label "system property" ;
.
sys:Seed
rdf:type rdf:Property ;
rdfs:label "seed property" ;
.
sys:State_Property
rdf:type owl:Class ;
rdfs:label "Propriété d'état"@fr ;
......@@ -75,6 +83,14 @@ sys:abstract_thing
sys:has_restriction "icl>abstract_thing" ;
sys:is_class "abstract_thing" ;
.
sys:action
rdf:type rdf:Property ;
rdfs:label "action" ;
rdfs:subPropertyOf sys:Relation ;
sys:has_mother_property "sys:action" ;
sys:has_reference "relation_action" ;
sys:has_restriction_on_class "action_verb" ;
.
sys:action_verb
rdf:type owl:Class ;
rdfs:label "action verb" ;
......@@ -153,7 +169,7 @@ sys:has_feature
sys:has_frame_base_uri
rdf:type rdf:Property ;
rdfs:label "has frame base uri" ;
rdfs:subPropertyOf sys:seedProperty ;
rdfs:subPropertyOf sys:Seed ;
sys:has_frame_base_uri "https://unsel.tetras-libre.fr/tenet/frame/system-ontology/" ;
.
sys:has_frame_uri
......@@ -165,24 +181,49 @@ sys:has_mother_class
rdf:type rdf:Property ;
rdfs:label "has mother class" ;
rdfs:range owl:Thing ;
rdfs:subPropertyOf sys:seedProperty ;
rdfs:subPropertyOf sys:Seed ;
sys:has_mother_class "Entity" ;
sys:has_restriction "icl>administrator" ;
sys:has_restriction "icl>operator" ;
sys:has_restriction "icl>person" ;
sys:is_class "agent" ;
.
sys:has_mother_property
rdf:type rdf:Property ;
rdfs:label "has mother property" ;
rdfs:subPropertyOf sys:Seed ;
.
sys:has_object_property
rdf:type rdf:Property ;
rdfs:label "has object property" ;
rdfs:subPropertyOf sys:seedProperty ;
rdfs:subPropertyOf sys:Seed ;
sys:has_object_property "eventObjectProperty" ;
sys:is_class "Event" ;
.
sys:has_reference
rdf:type rdf:Property ;
rdfs:label "is property" ;
rdfs:subPropertyOf sys:Seed ;
.
sys:has_restriction
rdf:type rdf:Property ;
rdfs:label "has restriction" ;
rdfs:subPropertyOf sys:seedProperty ;
rdfs:subPropertyOf sys:Seed ;
.
sys:has_restriction_on_class
rdf:type rdf:Property ;
rdfs:label "has restriction on class" ;
rdfs:subPropertyOf sys:Seed ;
.
sys:has_restriction_on_unl_relation_source
rdf:type rdf:Property ;
rdfs:label "has restriction on unl relation source" ;
rdfs:subPropertyOf sys:Seed ;
.
sys:has_restriction_on_unl_relation_target
rdf:type rdf:Property ;
rdfs:label "has restriction on unl relation target" ;
rdfs:subPropertyOf sys:Seed ;
.
sys:has_target
rdf:type rdf:Property ;
......@@ -197,7 +238,7 @@ sys:has_verb
sys:is_class
rdf:type rdf:Property ;
rdfs:label "is class" ;
rdfs:subPropertyOf sys:seedProperty ;
rdfs:subPropertyOf sys:Seed ;
sys:has_object_property "statePropertyObjectProperty" ;
sys:is_class "State_Property" ;
.
......@@ -225,9 +266,13 @@ sys:place
sys:has_restriction "icl>place" ;
sys:is_class "place" ;
.
sys:seedProperty
sys:stateProperty
rdf:type rdf:Property ;
rdfs:label "seed property" ;
rdfs:label "state property" ;
rdfs:subPropertyOf sys:Relation ;
sys:has_mother_property "sys:stateProperty" ;
sys:has_reference "relation_stateProperty" ;
sys:has_restriction_on_class "attributive_verb" ;
.
sys:statePropertyObjectProperty
rdf:type rdf:Property ;
......
......@@ -204,10 +204,10 @@ def run(corpus, source_ref, target_ref):
if __name__ == '__main__':
target_ref = "system"
#target_ref = "environment"
run(req_100, 'R100d', target_ref)
run(req_200, 'R200d', target_ref)
run(req_300, 'R300d', target_ref)
run(corpus_40, 'Corpus-CCTP-40d', target_ref)
run(req_100, 'R100e', target_ref)
run(req_200, 'R200e', target_ref)
run(req_300, 'R300e', target_ref)
#run(corpus_40, 'Corpus-CCTP-40e', target_ref)
#run(corpus_ERTMS, 'Corpus-ERTMS', target_ref)
#run(corpus_PEV, 'Corpus-PEV', target_ref)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment