From b865d14e411a65658a093c8b782bb4b68cc6ba65 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Aur=C3=A9lien=20Lamercerie?=
 <aurelien.lamercerie@laposte.net>
Date: Thu, 26 Aug 2021 10:29:03 +0200
Subject: [PATCH] Clean project after add of RDF Transductions Schemes
 definition

---
 CHANGELOG                                   |   4 +-
 config/transduction-schemes.ttl             |  34 +-
 cts/generation/classification/401.cts       |  38 --
 cts/generation/classification/402.cts       |  35 --
 cts/net_extension/entity_extraction/301.cts |  38 --
 cts/net_extension/entity_extraction/302.cts |  36 --
 cts/net_extension/entity_extraction/303.cts |  34 --
 cts/net_extension/entity_extraction/304.cts |  36 --
 cts/net_extension/entity_extraction/305.cts |  36 --
 cts/net_extension/entity_extraction/306.cts |  53 --
 cts/net_extension/entity_extraction/307.cts |  55 --
 cts/net_extension/entity_extraction/308.cts |  55 --
 cts/preprocessing/reification/201.cts       |  20 -
 cts/preprocessing/reification/202.cts       |  25 -
 cts/selection/101.cts                       |  16 -
 cts/selection/102.cts                       |  21 -
 extraction-rules.shapes.ttl                 | 582 --------------------
 17 files changed, 24 insertions(+), 1094 deletions(-)
 delete mode 100644 cts/generation/classification/401.cts
 delete mode 100644 cts/generation/classification/402.cts
 delete mode 100644 cts/net_extension/entity_extraction/301.cts
 delete mode 100644 cts/net_extension/entity_extraction/302.cts
 delete mode 100644 cts/net_extension/entity_extraction/303.cts
 delete mode 100644 cts/net_extension/entity_extraction/304.cts
 delete mode 100644 cts/net_extension/entity_extraction/305.cts
 delete mode 100644 cts/net_extension/entity_extraction/306.cts
 delete mode 100644 cts/net_extension/entity_extraction/307.cts
 delete mode 100644 cts/net_extension/entity_extraction/308.cts
 delete mode 100644 cts/preprocessing/reification/201.cts
 delete mode 100644 cts/preprocessing/reification/202.cts
 delete mode 100644 cts/selection/101.cts
 delete mode 100644 cts/selection/102.cts
 delete mode 100644 extraction-rules.shapes.ttl

diff --git a/CHANGELOG b/CHANGELOG
index 376d8120..d1f20843 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -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
-- Compositionnal Trandusction Scheme (CTS)
+- Trandusction Schemes as RDF definition using SHACL rules
 - Command **_extract.py_** to analyse one sentence
 - Init corpus ABCD (dev test)
 
diff --git a/config/transduction-schemes.ttl b/config/transduction-schemes.ttl
index ab74a3a0..01e82c46 100644
--- a/config/transduction-schemes.ttl
+++ b/config/transduction-schemes.ttl
@@ -1,11 +1,5 @@
 # baseURI: https://unsel.tetras-libre.fr/tenet/transduction-schemes
 # 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: <https://unsel.tetras-libre.fr/tenet/transduction-schemes#> .
@@ -23,12 +17,6 @@ sh:SPARQLRule
 <https://unsel.tetras-libre.fr/tenet/transduction-schemes>
   rdf:type owl:Ontology ;
   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
   rdf:type owl:Class ;
@@ -333,6 +321,7 @@ cts:dev_schemes
   rdf:type sh:NodeShape ;
   rdfs:label "dev schemes" ;
   rdfs:subClassOf cts:Transduction_Schemes ;
+  sh:rule cts:test_1 ;
 .
 cts:entity_extraction
   rdf:type owl:Class ;
@@ -527,6 +516,27 @@ cts:preprocessing_1
   rdf:type cts:preprocessing ;
   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
   rdf:type sh:SPARQLRule ;
   sh:construct """PREFIX owl: <http://www.w3.org/2002/07/owl#>
diff --git a/cts/generation/classification/401.cts b/cts/generation/classification/401.cts
deleted file mode 100644
index a90a295d..00000000
--- a/cts/generation/classification/401.cts
+++ /dev/null
@@ -1,38 +0,0 @@
-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}
-}
-
diff --git a/cts/generation/classification/402.cts b/cts/generation/classification/402.cts
deleted file mode 100644
index 958d42d6..00000000
--- a/cts/generation/classification/402.cts
+++ /dev/null
@@ -1,35 +0,0 @@
-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).
-}
-
diff --git a/cts/net_extension/entity_extraction/301.cts b/cts/net_extension/entity_extraction/301.cts
deleted file mode 100644
index 1b56e93d..00000000
--- a/cts/net_extension/entity_extraction/301.cts
+++ /dev/null
@@ -1,38 +0,0 @@
-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))  ).
-}
diff --git a/cts/net_extension/entity_extraction/302.cts b/cts/net_extension/entity_extraction/302.cts
deleted file mode 100644
index ed55c2db..00000000
--- a/cts/net_extension/entity_extraction/302.cts
+++ /dev/null
@@ -1,36 +0,0 @@
-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).
-}
-
diff --git a/cts/net_extension/entity_extraction/303.cts b/cts/net_extension/entity_extraction/303.cts
deleted file mode 100644
index 2ff2b7de..00000000
--- a/cts/net_extension/entity_extraction/303.cts
+++ /dev/null
@@ -1,34 +0,0 @@
-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)
-}
-
diff --git a/cts/net_extension/entity_extraction/304.cts b/cts/net_extension/entity_extraction/304.cts
deleted file mode 100644
index b5653999..00000000
--- a/cts/net_extension/entity_extraction/304.cts
+++ /dev/null
@@ -1,36 +0,0 @@
-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)) ).
-}
-
diff --git a/cts/net_extension/entity_extraction/305.cts b/cts/net_extension/entity_extraction/305.cts
deleted file mode 100644
index 7a4d7ec5..00000000
--- a/cts/net_extension/entity_extraction/305.cts
+++ /dev/null
@@ -1,36 +0,0 @@
-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))  ).
-}
-
diff --git a/cts/net_extension/entity_extraction/306.cts b/cts/net_extension/entity_extraction/306.cts
deleted file mode 100644
index 36f86e3a..00000000
--- a/cts/net_extension/entity_extraction/306.cts
+++ /dev/null
@@ -1,53 +0,0 @@
-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).
-}
-
diff --git a/cts/net_extension/entity_extraction/307.cts b/cts/net_extension/entity_extraction/307.cts
deleted file mode 100644
index 115917df..00000000
--- a/cts/net_extension/entity_extraction/307.cts
+++ /dev/null
@@ -1,55 +0,0 @@
-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 )
-}
-
diff --git a/cts/net_extension/entity_extraction/308.cts b/cts/net_extension/entity_extraction/308.cts
deleted file mode 100644
index 2ae5ae43..00000000
--- a/cts/net_extension/entity_extraction/308.cts
+++ /dev/null
@@ -1,55 +0,0 @@
-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 )
-}
-
diff --git a/cts/preprocessing/reification/201.cts b/cts/preprocessing/reification/201.cts
deleted file mode 100644
index ffaccc76..00000000
--- a/cts/preprocessing/reification/201.cts
+++ /dev/null
@@ -1,20 +0,0 @@
-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.
-} 
diff --git a/cts/preprocessing/reification/202.cts b/cts/preprocessing/reification/202.cts
deleted file mode 100644
index 0c5cd9b1..00000000
--- a/cts/preprocessing/reification/202.cts
+++ /dev/null
@@ -1,25 +0,0 @@
-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.
-} 
diff --git a/cts/selection/101.cts b/cts/selection/101.cts
deleted file mode 100644
index 35784e82..00000000
--- a/cts/selection/101.cts
+++ /dev/null
@@ -1,16 +0,0 @@
-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.
-} 
diff --git a/cts/selection/102.cts b/cts/selection/102.cts
deleted file mode 100644
index d874d405..00000000
--- a/cts/selection/102.cts
+++ /dev/null
@@ -1,21 +0,0 @@
-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 )
-}  
diff --git a/extraction-rules.shapes.ttl b/extraction-rules.shapes.ttl
deleted file mode 100644
index 7be7aecd..00000000
--- a/extraction-rules.shapes.ttl
+++ /dev/null
@@ -1,582 +0,0 @@
-# baseURI: http://unsel.unl-rdf.org/extraction-rules
-# imports: http://datashapes.org/dash
-# imports: http://unsel.rdf-unl.org/store/CCTP-SRSA-IP-20210625/SRSA-IP_STB_PHON_00300/current/sentence_0#ontology
-# 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 : <http://unsel.unl-rdf.org/extraction-rules#> .
-@prefix dash: <http://datashapes.org/dash#> .
-@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 schema: <https://unl.tetras-libre.fr/rdf/schema#> .
-@prefix sentence_0: <http://unsel.rdf-unl.org/store/CCTP-SRSA-IP-20210625/SRSA-IP_STB_PHON_00300/current/sentence_0#> .
-@prefix sh: <http://www.w3.org/ns/shacl#> .
-@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
-
-<http://unsel.unl-rdf.org/extraction-rules>
-  rdf:type owl:Ontology ;
-  owl:imports <http://datashapes.org/dash> ;
-  owl:imports sentence_0:ontology ;
-  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> ;
-  owl:versionInfo "Created with TopBraid Composer" ;
-.
-<http://unsel.unl-rdf.org/extraction-rules#301>
-  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#>
-    
-# -- Query to create Entity net
-CONSTRUCT { 
-   ?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))  ).
-}""" ;
-  sh:order "301"^^xsd:decimal ;
-.
-<http://unsel.unl-rdf.org/extraction-rules#302>
-  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#>
-    
-# -- Query to initialize a ModList net
-CONSTRUCT { 
-   ?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).
-}""" ;
-  sh:order "302"^^xsd:decimal ;
-.
-<http://unsel.unl-rdf.org/extraction-rules#303>
-  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#>
-    
-# -- Query to extend a ModList net
-CONSTRUCT { 
-   ?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)
-}
-
-""" ;
-  sh:order "303"^^xsd:decimal ;
-.
-<http://unsel.unl-rdf.org/extraction-rules#304>
-  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#>
-    
-# -- Query to typify a ModList net as entity
-CONSTRUCT { 
-   ?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)) ).
-}
-
-""" ;
-  sh:order "304"^^xsd:decimal ;
-.
-<http://unsel.unl-rdf.org/extraction-rules#305>
-  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#>
-    
-# -- Query to typify a ModList net as complement
-CONSTRUCT { 
-   ?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))  ).
-}
-
-""" ;
-  sh:order "305"^^xsd:decimal ;
-.
-<http://unsel.unl-rdf.org/extraction-rules#306>
-  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#>
-
-# -- Query to compose an Entity net and a Complement ModList net    
-CONSTRUCT { 
-   ?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).
-}
-
-""" ;
-  sh:order "306"^^xsd:decimal ;
-.
-<http://unsel.unl-rdf.org/extraction-rules#307>
-  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#>
-    
-# -- Query to compose an Entity net and an Entity ModList net (with same entity classes)
-CONSTRUCT { 
-   ?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 )
-}
-
-""" ;
-  sh:order "307"^^xsd:decimal ;
-.
-<http://unsel.unl-rdf.org/extraction-rules#308>
-  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#>
-    
-# -- Query to compose an Entity net and an Entity ModList net (with distinct entity classes)
-CONSTRUCT { 
-   ?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 )
-}
-
-""" ;
-  sh:order "308"^^xsd:decimal ;
-.
-<http://unsel.unl-rdf.org/extraction-rules#401>
-  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#>
-    
-# -- Query to add Entity classes in System Ontology
-CONSTRUCT { 
-   ?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}
-}
-
-""" ;
-  sh:order "401"^^xsd:decimal ;
-.
-<http://unsel.unl-rdf.org/extraction-rules#402>
-  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#>
-    
-# -- Query to complement Entity classes in System Ontology
-CONSTRUCT { 
-   ?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).
-}
-
-""" ;
-  sh:order "402"^^xsd:decimal ;
-.
-:bypass-reification
-  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#>
-    
-# -- Request to extend UNL relation 
-CONSTRUCT { 
-    ?node1 ?unlRel ?node2. 
-}
-WHERE {
-    ?rel unl:has_source ?node1.
-    ?rel unl:has_target ?node2.
-    ?rel a ?unlRel.
-} """ ;
-  sh:order "0"^^xsd:decimal ;
-.
-:extraction_rules
-  rdf:type owl:Class ;
-  rdfs:subClassOf owl:Thing ;
-.
-:generation
-  rdf:type rdfs:Class ;
-  rdfs:subClassOf sh:SPARQLRule ;
-.
-:link-to-scope-entry
-  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#>
-    
-# -- Request to extend UNL relation to scopes 
-# (by connecting the source node of the scope to the entry node of the scope) 
-CONSTRUCT { 
-    ?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.
-} """ ;
-  sh:order "0"^^xsd:decimal ;
-.
-:net_extension
-  rdf:type rdfs:Class ;
-  rdfs:subClassOf sh:SPARQLRule ;
-.
-:preprocessing
-  rdf:type rdfs:Class ;
-  rdfs:subClassOf :extraction_rules ;
-.
-sh:SPARQLRule
-  rdfs:subClassOf owl:Thing ;
-.
-schema:UNL_Sentence
-  rdf:type sh:NodeShape ;
-  sh:rule <http://unsel.unl-rdf.org/extraction-rules#301> ;
-  sh:rule <http://unsel.unl-rdf.org/extraction-rules#302> ;
-  sh:rule <http://unsel.unl-rdf.org/extraction-rules#303> ;
-  sh:rule <http://unsel.unl-rdf.org/extraction-rules#304> ;
-  sh:rule <http://unsel.unl-rdf.org/extraction-rules#305> ;
-  sh:rule <http://unsel.unl-rdf.org/extraction-rules#306> ;
-  sh:rule <http://unsel.unl-rdf.org/extraction-rules#307> ;
-  sh:rule <http://unsel.unl-rdf.org/extraction-rules#308> ;
-  sh:rule <http://unsel.unl-rdf.org/extraction-rules#401> ;
-  sh:rule <http://unsel.unl-rdf.org/extraction-rules#402> ;
-  sh:rule :bypass-reification ;
-  sh:rule :link-to-scope-entry ;
-.
-- 
GitLab