diff --git a/tenet/scheme/amr_clara_rule/transduction/odrl_rule_extractor.py b/tenet/scheme/amr_clara_rule/transduction/odrl_rule_extractor.py
index efa5a49f1c9fbaa1b95458daf03ddf7f94575454..8b950634d090143f75ecb07b21b7887a121b6b6f 100644
--- a/tenet/scheme/amr_clara_rule/transduction/odrl_rule_extractor.py
+++ b/tenet/scheme/amr_clara_rule/transduction/odrl_rule_extractor.py
@@ -32,14 +32,15 @@ def __get_query_code(graph, phenomena_uri, arg_relation):
     clause_list = [f'?phenomena_net a [rdfs:subClassOf* net:Phenomena_Net].',
                     f'?phenomena_net {PHENOMENA_TYPE_RELATION} {phenomena_uri}.',
                     f'FILTER NOT EXISTS {{ ?phenomena_net a net:Deprecated_Net. }}',
-                    f'?phenomena_net {arg_relation} ?action_net.']
+                    f'?phenomena_net {arg_relation} ?action_net.',
+                    f'?action_net a [rdfs:subClassOf* net:Action_Net].']
     return generate_select_query(graph, select_data_list, clause_list)
 
 
 def __search_pattern(graph, phenomena_uri):
     query_code = ''
     result_set = []
-    for arg_relation in ['amr:role_arg1', 'amr:role_arg2']:
+    for arg_relation in ['amr:role_ARG1', 'amr:role_ARG2']:
         query_code = __get_query_code(graph, phenomena_uri, arg_relation)
         result_set += graph.query(query_code)
     return query_code, result_set
@@ -52,22 +53,6 @@ def __search_pattern(graph, phenomena_uri):
 
 def __define_naming(rule_relation):
     return f'{rule_relation}'
-
-
-def __filter_relation(relation_list):
-    result_list = []
-    for relation in relation_list:
-        check = True
-        (s, p, o) = relation
-        if s == o: check = False
-        if check: result_list.append(relation)
-    return result_list
-
-
-def __propagate_relation(target_net, base_net):
-    # -- target_net.input_relation_list = base_net.input_relation_list
-    out_relation_list = __filter_relation(base_net.output_relation_list)
-    target_net.output_relation_list = out_relation_list
     
     
     
@@ -83,7 +68,7 @@ def __construct_rule_net(graph, rule_relation, phenomena_net, action_net):
     
     # -- Data Computation
     rule_net.rule_relation_name = rule_relation
-    rule_net.rule_action_net = action_net
+    rule_net.rule_action_net = action_net.uri
     
     # -- Relation Propagation
     # None
diff --git a/tenet/tenet.log b/tenet/tenet.log
index 2841fd3d55f4395cab97e2208c6cb21ee03d7de7..826e43a31d438245cc562dd26afd23c8893da253 100644
--- a/tenet/tenet.log
+++ b/tenet/tenet.log
@@ -72,25 +72,25 @@
 - DEBUG - ----- Total rule number: 87
 - INFO - -- Applying extraction step: preprocessing
 - INFO - --- *** November Transduction *** Sequence: amrld-correcting-sequence
-- DEBUG - ----- fix-amr-bug-about-system-solar-planet: 0/0 new triple (551, 0:00:00.026090)
+- DEBUG - ----- fix-amr-bug-about-system-solar-planet: 0/0 new triple (551, 0:00:00.026522)
 - INFO - --- *** November Transduction *** Sequence: amr-reification-sequence
-- INFO - ----- reclassify-concept-1: 5/5 new triples (556, 0:00:00.155584)
-- DEBUG - ----- reclassify-concept-2: 0/0 new triple (556, 0:00:00.088235)
-- INFO - ----- reclassify-concept-3: 4/4 new triples (560, 0:00:00.062718)
-- INFO - ----- reclassify-concept-4: 4/4 new triples (564, 0:00:00.082489)
-- INFO - ----- reclassify-concept-5: 4/4 new triples (568, 0:00:00.068534)
-- DEBUG - ----- reify-roles-as-concept: 0/0 new triple (568, 0:00:00.064127)
-- INFO - ----- reclassify-existing-variable: 17/17 new triples (585, 0:00:00.046664)
-- DEBUG - ----- add-new-variable-for-reified-concept: 0/0 new triple (585, 0:00:00.064438)
-- INFO - ----- add-amr-leaf-for-reclassified-concept: 12/12 new triples (597, 0:00:00.041507)
-- DEBUG - ----- add-amr-leaf-for-reified-concept: 0/0 new triple (597, 0:00:00.038529)
-- INFO - ----- add-amr-edge-for-core-relation: 9/9 new triples (606, 0:00:00.110154)
-- DEBUG - ----- add-amr-edge-for-reified-concept: 0/0 new triple (606, 0:00:00.078440)
-- INFO - ----- add-amr-edge-for-name-relation: 5/5 new triples (611, 0:00:00.069045)
-- DEBUG - ----- add-value-for-quant-relation: 0/0 new triple (611, 0:00:00.160406)
-- INFO - ----- add-amr-edge-for-polarity-relation: 5/5 new triples (616, 0:00:00.077850)
-- INFO - ----- update-amr-edge-role-1: 5/5 new triples (621, 0:00:00.035889)
-- INFO - ----- add-amr-root: 5/5 new triples (626, 0:00:00.024260)
+- INFO - ----- reclassify-concept-1: 5/5 new triples (556, 0:00:00.105608)
+- DEBUG - ----- reclassify-concept-2: 0/0 new triple (556, 0:00:00.064289)
+- INFO - ----- reclassify-concept-3: 4/4 new triples (560, 0:00:00.048410)
+- INFO - ----- reclassify-concept-4: 4/4 new triples (564, 0:00:00.058512)
+- INFO - ----- reclassify-concept-5: 4/4 new triples (568, 0:00:00.041019)
+- DEBUG - ----- reify-roles-as-concept: 0/0 new triple (568, 0:00:00.043750)
+- INFO - ----- reclassify-existing-variable: 17/17 new triples (585, 0:00:00.031118)
+- DEBUG - ----- add-new-variable-for-reified-concept: 0/0 new triple (585, 0:00:00.042439)
+- INFO - ----- add-amr-leaf-for-reclassified-concept: 12/12 new triples (597, 0:00:00.040535)
+- DEBUG - ----- add-amr-leaf-for-reified-concept: 0/0 new triple (597, 0:00:00.039820)
+- INFO - ----- add-amr-edge-for-core-relation: 9/9 new triples (606, 0:00:00.092282)
+- DEBUG - ----- add-amr-edge-for-reified-concept: 0/0 new triple (606, 0:00:00.083474)
+- INFO - ----- add-amr-edge-for-name-relation: 5/5 new triples (611, 0:00:00.080671)
+- DEBUG - ----- add-value-for-quant-relation: 0/0 new triple (611, 0:00:00.079411)
+- INFO - ----- add-amr-edge-for-polarity-relation: 5/5 new triples (616, 0:00:00.081605)
+- INFO - ----- update-amr-edge-role-1: 5/5 new triples (621, 0:00:00.050274)
+- INFO - ----- add-amr-root: 5/5 new triples (626, 0:00:00.032472)
 - DEBUG - --- Serializing graph to tenet.tetras-libre.fr_demo_clara_03_preprocessing 
 - DEBUG - ----- step: preprocessing
 - DEBUG - ----- id: https://tenet.tetras-libre.fr/demo/clara/03/
@@ -99,47 +99,47 @@
 - INFO - ----- 75 triples extracted during preprocessing step
 - INFO - -- Applying extraction step: transduction
 - INFO - --- *** February Transduction *** Sequence: atomic extraction sequence
-- INFO - ----- extract atom classes: 12/12 new triples (638, 0:00:00.060479)
-- INFO - ----- extract atom individuals: 7/7 new triples (645, 0:00:00.049196)
-- INFO - ----- extract atomic properties: 13/13 new triples (658, 0:00:00.044546)
-- INFO - ----- extract atom values: 10/10 new triples (668, 0:00:00.055160)
-- INFO - ----- extract atom phenomena: 7/7 new triples (675, 0:00:00.050796)
-- INFO - ----- propagate atom relations: 11/22 new triples (686, 0:00:00.409716)
+- INFO - ----- extract atom classes: 12/12 new triples (638, 0:00:00.069749)
+- INFO - ----- extract atom individuals: 7/7 new triples (645, 0:00:00.050061)
+- INFO - ----- extract atomic properties: 13/13 new triples (658, 0:00:00.127397)
+- INFO - ----- extract atom values: 10/10 new triples (668, 0:00:00.050948)
+- INFO - ----- extract atom phenomena: 7/7 new triples (675, 0:00:00.041708)
+- INFO - ----- propagate atom relations: 11/22 new triples (686, 0:00:00.311171)
 - INFO - --- *** February Transduction *** Sequence: phenomena analyze sequence (1)
-- DEBUG - ----- analyze "polarity" phenomena (1): 0/0 new triple (686, 0:00:00.010474)
-- INFO - ----- analyze "polarity" phenomena (2): 12/14 new triples (698, 0:00:00.074936)
-- DEBUG - ----- analyze modifier phenomena (mod): 0/0 new triple (698, 0:00:00.013942)
+- DEBUG - ----- analyze "polarity" phenomena (1): 0/0 new triple (686, 0:00:00.009125)
+- INFO - ----- analyze "polarity" phenomena (2): 12/14 new triples (698, 0:00:00.076581)
+- DEBUG - ----- analyze modifier phenomena (mod): 0/0 new triple (698, 0:00:00.009838)
 - INFO - --- *** February Transduction *** Sequence: phenomena analyze sequence (2)
-- DEBUG - ----- analyze "or" phenomena (1): 0/0 new triple (698, 0:00:00.016933)
-- DEBUG - ----- analyze "or" phenomena (2): 0/0 new triple (698, 0:00:00.015729)
+- DEBUG - ----- analyze "or" phenomena (1): 0/0 new triple (698, 0:00:00.010714)
+- DEBUG - ----- analyze "or" phenomena (2): 0/0 new triple (698, 0:00:00.014737)
 - INFO - --- *** February Transduction *** Sequence: composite class extraction sequence
-- INFO - ----- extract composite classes (1): 23/24 new triples (721, 0:00:00.125977)
-- DEBUG - ----- extract composite classes (2): 0/0 new triple (721, 0:00:00.018812)
+- INFO - ----- extract composite classes (1): 23/24 new triples (721, 0:00:00.126944)
+- DEBUG - ----- extract composite classes (2): 0/0 new triple (721, 0:00:00.025372)
 - INFO - --- *** February Transduction *** Sequence: ODRL extraction sequence
-- INFO - ----- extract ODRL actions: 12/14 new triples (733, 0:00:00.085487)
-- DEBUG - ----- extract ODRL rules: 0/0 new triple (733, 0:00:00.065613)
+- INFO - ----- extract ODRL actions: 12/14 new triples (733, 0:00:00.093927)
+- INFO - ----- extract ODRL rules: 11/11 new triples (744, 0:00:00.116949)
 - DEBUG - --- Serializing graph to tenet.tetras-libre.fr_demo_clara_03_transduction 
 - DEBUG - ----- step: transduction
 - DEBUG - ----- id: https://tenet.tetras-libre.fr/demo/clara/03/
 - DEBUG - ----- work_file: /home/lamenji/Workspace/Tetras/tenet/tests/output/aos03-20230413/technical-data/tenet.tetras-libre.fr_demo_clara_03-0/tenet.tetras-libre.fr_demo_clara_03_transduction.ttl
 - DEBUG - ----- base: http://https://tenet.tetras-libre.fr/demo/clara/03//transduction
-- INFO - ----- 107 triples extracted during transduction step
+- INFO - ----- 118 triples extracted during transduction step
 - INFO - -- Applying extraction step: generation
 - INFO - --- *** February Transduction *** Sequence: ODRL Rule Generation Sequence
-- DEBUG - ----- generate ODRL rule: 0/0 new triple (733, 0:00:00.007352)
+- INFO - ----- generate ODRL rule: 1/1 new triple (745, 0:00:00.016414)
 - DEBUG - --- Serializing graph to tenet.tetras-libre.fr_demo_clara_03_generation 
 - DEBUG - ----- step: generation
 - DEBUG - ----- id: https://tenet.tetras-libre.fr/demo/clara/03/
 - DEBUG - ----- work_file: /home/lamenji/Workspace/Tetras/tenet/tests/output/aos03-20230413/technical-data/tenet.tetras-libre.fr_demo_clara_03-0/tenet.tetras-libre.fr_demo_clara_03_generation.ttl
 - DEBUG - ----- base: http://https://tenet.tetras-libre.fr/demo/clara/03//generation
-- INFO - ----- 0 triples extracted during generation step
+- INFO - ----- 1 triples extracted during generation step
 - DEBUG - --- Serializing graph to factoid file (/home/lamenji/Workspace/Tetras/tenet/tests/output/aos03-20230413/technical-data/tenet.tetras-libre.fr_demo_clara_03-0/tenet.tetras-libre.fr_demo_clara_03_factoid.ttl)
-- DEBUG - ----- Number of factoids: 0
+- DEBUG - ----- Number of factoids: 1
 - DEBUG - ----- Graph base: http://https://tenet.tetras-libre.fr/demo/clara/03//factoid
 - INFO - 
  === Final Ontology Generation  === 
 - INFO - -- Making complete factoid graph by merging the result factoids
-- INFO - ----- Total factoid number: 0
+- INFO - ----- Total factoid number: 1
 - INFO - -- Serializing graph to factoid string
 - INFO - ----- Graph base: http://https://tenet.tetras-libre.fr/demo/clara/03//factoid
 - INFO - -- Serializing graph to factoid file
@@ -149,6 +149,6 @@
 - INFO - 
   *** Execution Time *** 
 ----- Function: create_ontology_from_amrld_file (tenet.main)
------ Total Time: 0:00:02.801447
------ Process Time: 0:00:02.754288
+----- Total Time: 0:00:02.567053
+----- Process Time: 0:00:02.538713
   *** - *** 
diff --git a/tests/dev_tests/test_data/odrl-rule-devGraph-1.result.ttl b/tests/dev_tests/test_data/odrl-rule-devGraph-1.result.ttl
new file mode 100644
index 0000000000000000000000000000000000000000..bbf6674233a1fc62d365e437e7bf6f353ee1abe4
--- /dev/null
+++ b/tests/dev_tests/test_data/odrl-rule-devGraph-1.result.ttl
@@ -0,0 +1,893 @@
+@base <https://amr.tetras-libre.fr/rdf/odrl-rule-devGraph-1/result> .
+@prefix : <https://amr.tetras-libre.fr/rdf/schema#> .
+@prefix cprm: <https://tenet.tetras-libre.fr/config/parameters#> .
+@prefix net: <https://tenet.tetras-libre.fr/semantic-net#> .
+@prefix ns11: <http://amr.isi.edu/rdf/core-amr#> .
+@prefix ns2: <http://amr.isi.edu/rdf/amr-terms#> .
+@prefix ns21: <http://amr.isi.edu/frames/ld/v1.2.2/> .
+@prefix owl: <http://www.w3.org/2002/07/owl#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix sys: <https://tenet.tetras-libre.fr/base-ontology#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+ns11:Concept a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Concept" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:Role a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/test-1#root01> ns11:hasID "test-1" ;
+    ns11:hasSentence "The sun is a star." ;
+    ns11:root <http://amr.isi.edu/amr_data/test-1#s> .
+
+<http://amr.isi.edu/amr_data/test-2#root01> ns11:hasID "test-2" ;
+    ns11:hasSentence "Earth is a planet." ;
+    ns11:root <http://amr.isi.edu/amr_data/test-2#p> .
+
+ns21:possible-01.ARG1 a ns21:FrameRole .
+
+ns21:use-01.ARG1 a ns21:FrameRole .
+
+ns2:domain a ns11:Role,
+        owl:AnnotationProperty,
+        owl:NamedIndividual .
+
+ns11:NamedEntity a ns11:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-EntityType",
+        "AMR-Term" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:hasID a owl:AnnotationProperty .
+
+ns11:hasSentence a owl:AnnotationProperty .
+
+ns11:root a owl:AnnotationProperty .
+
+<https://amr.tetras-libre.fr/rdf/schema> a owl:Ontology ;
+    owl:versionIRI :0.1 .
+
+:AMR_DataProperty a owl:DatatypeProperty .
+
+:AMR_Prep_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:edge_m_name_9898 a :AMR_Edge ;
+    :hasAmrRole :role_name ;
+    :hasRoleID "name" .
+
+:edge_p_ARG1_u a :AMR_Edge ;
+    :hasAmrRole :role_ARG1 ;
+    :hasRoleID "ARG1" .
+
+:edge_u_ARG1_m a :AMR_Edge ;
+    :hasAmrRole :role_ARG1 ;
+    :hasRoleID "ARG1" .
+
+:fromAmrLkFramerole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRoot a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:getDirectPropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getInversePropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getPropertyType a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:hasConcept a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasConceptLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasEdgeLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasReification a owl:AnnotationProperty ;
+    rdfs:range xsd:boolean ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationDomain a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationRange a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasRelationName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasRoleID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRoleTag a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRolesetID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRootLeaf a owl:ObjectProperty ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasSentenceID a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasSentenceStatement a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasVariable a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:label a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction_and a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "and" ;
+    :label "conjunction-AND" .
+
+:phenomena_conjunction_or a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "or" ;
+    :label "conjunction-OR" .
+
+:phenomena_degree a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "have-degree-91" ;
+    :label "degree" .
+
+:phenomena_modality_obligation a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "obligate-01" ;
+    :label "obligation-modality" .
+
+:phenomena_modality_prohibition a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :label "prohibition-modality" .
+
+:relation_domain a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "domain" .
+
+:relation_manner a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasManner" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "manner" .
+
+:relation_mod a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "mod" .
+
+:relation_name a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "name" .
+
+:relation_part a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasPart" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "part" .
+
+:relation_polarity a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "polarity" .
+
+:relation_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "quant" .
+
+:role_ARG0 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG0" .
+
+:role_ARG2 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG2" .
+
+:role_ARG3 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG3" .
+
+:role_ARG4 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG4" .
+
+:role_ARG5 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG5" .
+
+:role_ARG6 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG6" .
+
+:role_ARG7 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG7" .
+
+:role_ARG8 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG8" .
+
+:role_ARG9 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG9" .
+
+:role_domain a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :hasRelationName "domain" ;
+    :label "domain" ;
+    :toReifyAsConcept "domain" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_have-degree-91 a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :getPropertyType <net:specificProperty> .
+
+:role_manner a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "manner" ;
+    :getPropertyType owl:DataProperty ;
+    :label "manner" ;
+    :toReifyAsConcept "manner" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_mod a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasFeature"^^xsd:string ;
+    :getPropertyType rdfs:subClassOf,
+        owl:ObjectProperty ;
+    :label "mod" ;
+    :toReifyAsConcept "mod" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_op1 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op1" .
+
+:role_op2 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op2" .
+
+:role_op3 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op3" .
+
+:role_op4 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op4" .
+
+:role_op5 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op5" .
+
+:role_op6 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op6" .
+
+:role_op7 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op7" .
+
+:role_op8 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op8" .
+
+:role_op9 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op9" .
+
+:role_part a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasPart"^^xsd:string ;
+    :getInversePropertyName "partOf"^^xsd:string ;
+    :getPropertyType owl:ObjectProperty ;
+    :toReifyAsConcept "part" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_polarity a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "polarity" .
+
+:role_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "quant" .
+
+:root_document-01 a :AMR_Root ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-01#root01> ;
+    :hasRootLeaf :leaf_possible-01_p ;
+    :hasSentenceID "document-01" ;
+    :hasSentenceStatement "Movie9898 can be used." .
+
+:toReifyAsConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithBaseEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithHeadEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+<https://tenet.tetras-libre.fr/base-ontology> a owl:Ontology .
+
+sys:Event a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Undetermined_Thing a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:fromStructure a owl:AnnotationProperty ;
+    rdfs:subPropertyOf sys:Out_AnnotationProperty .
+
+sys:hasDegree a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+sys:hasFeature a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+<https://tenet.tetras-libre.fr/config/parameters> a owl:Ontology .
+
+cprm:Config_Parameters a owl:Class ;
+    cprm:baseURI "https://tenet.tetras-libre.fr/" ;
+    cprm:netURI "https://tenet.tetras-libre.fr/semantic-net#" ;
+    cprm:newClassRef "new-class#" ;
+    cprm:newPropertyRef "new-relation#" ;
+    cprm:objectRef "object_" ;
+    cprm:targetOntologyURI "https://tenet.tetras-libre.fr/base-ontology/" .
+
+cprm:baseURI a rdf:Property ;
+    rdfs:label "Base URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:netURI a rdf:Property ;
+    rdfs:label "Net URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newClassRef a rdf:Property ;
+    rdfs:label "Reference for a new class" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newPropertyRef a rdf:Property ;
+    rdfs:label "Reference for a new property" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:objectRef a rdf:Property ;
+    rdfs:label "Object Reference" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:targetOntologyURI a rdf:Property ;
+    rdfs:label "URI of classes in target ontology" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+<https://tenet.tetras-libre.fr/semantic-net> a owl:Ontology .
+
+net:Composite_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Composite_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Deprecated_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Feature a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:abstractionClass a owl:AnnotationProperty ;
+    rdfs:label "abstraction class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:atomType a owl:AnnotationProperty ;
+    rdfs:label "atom type" ;
+    rdfs:subPropertyOf net:objectType .
+
+net:entityClass a owl:AnnotationProperty ;
+    rdfs:label "entity class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:featureClass a owl:AnnotationProperty ;
+    rdfs:label "feature class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_atom a owl:AnnotationProperty ;
+    rdfs:label "has atom" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_class a owl:AnnotationProperty ;
+    rdfs:label "is class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_class_name a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:has_value .
+
+net:has_class_uri a owl:AnnotationProperty ;
+    rdfs:label "class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_concept a owl:AnnotationProperty ;
+    rdfs:label "concept "@fr ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_entity a owl:AnnotationProperty ;
+    rdfs:label "has entity" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_feature a owl:AnnotationProperty ;
+    rdfs:label "has feature" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_instance a owl:AnnotationProperty ;
+    rdfs:label "entity instance" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_instance_uri a owl:AnnotationProperty ;
+    rdfs:label "instance uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_item a owl:AnnotationProperty ;
+    rdfs:label "has item" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_mother_class a owl:AnnotationProperty ;
+    rdfs:label "has mother class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_mother_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_node a owl:AnnotationProperty ;
+    rdfs:label "UNL Node" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_parent a owl:AnnotationProperty ;
+    rdfs:label "has parent" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_parent_class a owl:AnnotationProperty ;
+    rdfs:label "parent class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_parent_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_possible_domain a owl:AnnotationProperty ;
+    rdfs:label "has possible domain" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_possible_range a owl:AnnotationProperty ;
+    rdfs:label "has possible range" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_relation a owl:AnnotationProperty ;
+    rdfs:label "has relation" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_source a owl:AnnotationProperty ;
+    rdfs:label "has source" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_structure a owl:AnnotationProperty ;
+    rdfs:label "Linguistic Structure (in UNL Document)" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_target a owl:AnnotationProperty ;
+    rdfs:label "has target" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:inverse_direction a owl:NamedIndividual .
+
+net:listGuiding a owl:AnnotationProperty ;
+    rdfs:label "Guiding connector of a list (or, and)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat1 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 1)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat2 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 2)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:normal_direction a owl:NamedIndividual .
+
+net:rule_permission_p a net:Rule_Net ;
+    net:composeFrom net:action_use_u,
+        net:phenomena_possible-modality_p ;
+    net:coverBaseNode :leaf_possible-01_p ;
+    net:coverNode :leaf_movie_m,
+        :leaf_possible-01_p,
+        :leaf_use-01_u ;
+    net:hasNaming "permission" ;
+    net:hasRuleActionURI net:action_use_u ;
+    net:hasRuleRelationName "permission" ;
+    net:hasStructure "document-01" .
+
+net:type a owl:AnnotationProperty ;
+    rdfs:label "type "@fr ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:verbClass a owl:AnnotationProperty ;
+    rdfs:label "verb class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+<http://amr.isi.edu/amr_data/document-01#root01> a ns11:AMR ;
+    ns11:has-id "document-01" ;
+    ns11:has-sentence "Movie9898 can be used." ;
+    ns11:root <http://amr.isi.edu/amr_data/document-01#p> .
+
+<http://amr.isi.edu/amr_data/test-1#s> ns2:domain <http://amr.isi.edu/amr_data/test-1#s2> .
+
+<http://amr.isi.edu/amr_data/test-2#p> rdfs:label "Earth" .
+
+ns11:AMR a owl:Class ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Predicat_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Relation_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Root a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Term_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Value a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:concept_movie rdfs:subClassOf :AMR_Term_Concept ;
+    :fromAmrLk ns2:movie ;
+    :label "movie" .
+
+:concept_possible-01 rdfs:subClassOf :AMR_Relation_Concept ;
+    :fromAmrLk ns21:possible-01 ;
+    :hasPhenomenaLink :phenomena_modality_possible ;
+    :label "possible-01" .
+
+:concept_use-01 rdfs:subClassOf :AMR_Predicat_Concept ;
+    :fromAmrLk ns21:use-01 ;
+    :label "use-01" .
+
+:role_name a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :label "name" .
+
+:variable_m a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-01#m> ;
+    :label "m" ;
+    :name "9898" .
+
+:variable_p a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-01#p> ;
+    :label "p" .
+
+:variable_u a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-01#u> ;
+    :label "u" .
+
+sys:Degree a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Entity a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Feature a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Out_AnnotationProperty a owl:AnnotationProperty .
+
+net:Action_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Atom_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Atom_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Individual_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Phenomena_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Rule_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Value_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:has_value a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:individual_9898_m a net:Individual_Net ;
+    :role_name net:value_9898_blankNode ;
+    net:coverBaseNode :leaf_movie_m ;
+    net:coverNode :leaf_movie_m ;
+    net:hasIndividualLabel "9898" ;
+    net:hasMotherClassNet net:atomClass_movie_m ;
+    net:hasNaming "9898" ;
+    net:hasStructure "document-01" .
+
+net:objectType a owl:AnnotationProperty ;
+    rdfs:label "object type" ;
+    rdfs:subPropertyOf net:objectProperty .
+
+net:phenomena_possible-modality_p a net:Phenomena_Net ;
+    :role_ARG1 net:action_use_u,
+        net:atomProperty_use_u ;
+    net:coverBaseNode :leaf_possible-01_p ;
+    net:coverNode :leaf_possible-01_p ;
+    net:hasNaming "possible-modality" ;
+    net:hasPhenomenaRef "possible-01" ;
+    net:hasPhenomenaType :phenomena_modality_possible ;
+    net:hasStructure "document-01" .
+
+<http://amr.isi.edu/amr_data/document-01#m> a ns2:movie ;
+    rdfs:label "9898" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-01#p> a ns21:possible-01 ;
+    ns21:possible-01.ARG1 <http://amr.isi.edu/amr_data/document-01#u> ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-01#u> a ns21:use-01 ;
+    ns21:use-01.ARG1 <http://amr.isi.edu/amr_data/document-01#m> ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:FrameRole a ns11:Role,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:possible-01 a ns11:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:use-01 a ns11:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns2:movie a ns11:Concept ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:Frame a ns11:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Frame" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:hasLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "contrast-01",
+        "either",
+        "neither" ;
+    :label "conjunction" .
+
+:phenomena_modality_possible a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "allow-01",
+        "grant-01",
+        "likely-01",
+        "permit-01",
+        "possible-01" ;
+    :label "possible-modality" .
+
+:role_ARG1 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG1" .
+
+:value_9898 a :AMR_Value ;
+    rdfs:label "9898" .
+
+sys:Out_ObjectProperty a owl:ObjectProperty .
+
+net:Class_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Property_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Relation a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:atomProperty_use_u a net:Atom_Property_Net ;
+    :role_ARG1 net:atomClass_movie_m,
+        net:individual_9898_m ;
+    net:coverBaseNode :leaf_use-01_u ;
+    net:coverNode :leaf_use-01_u ;
+    net:hasNaming "use" ;
+    net:hasPropertyName "use" ;
+    net:hasPropertyName01 "useing" ;
+    net:hasPropertyName10 "use-by" ;
+    net:hasPropertyName12 "use-of" ;
+    net:hasPropertyType owl:ObjectProperty ;
+    net:hasStructure "document-01" ;
+    net:isCoreRoleLinked "true" ;
+    net:targetArgumentNode :leaf_movie_m .
+
+net:objectProperty a owl:AnnotationProperty ;
+    rdfs:label "object attribute" .
+
+net:value_9898_blankNode a net:Value_Net ;
+    net:coverAmrValue :value_9898 ;
+    net:hasNaming "9898" ;
+    net:hasStructure "document-01" ;
+    net:hasValueLabel "9898" .
+
+:AMR_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:AMR_Phenomena a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Specific_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Variable a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:fromAmrLk a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:getProperty a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationDefinition a owl:AnnotationProperty ;
+    rdfs:range rdfs:Literal ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_modality a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena .
+
+:toReify a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+net:Net_Structure a owl:Class ;
+    rdfs:label "Semantic Net Structure" ;
+    rdfs:comment "A semantic net captures a set of nodes, and associates this set with type(s) and value(s)." .
+
+net:action_use_u a net:Action_Net ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomProperty_use_u ;
+    net:coverBaseNode :leaf_use-01_u ;
+    net:coverNode :leaf_movie_m,
+        :leaf_use-01_u ;
+    net:hasActionName "use" ;
+    net:hasNaming "use" ;
+    net:hasStructure "document-01" ;
+    net:hasTargetNet net:atomClass_movie_m .
+
+net:has_relation_value a owl:AnnotationProperty ;
+    rdfs:label "has relation value" ;
+    rdfs:subPropertyOf net:has_object .
+
+:AMR_Element a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+net:atomClass_movie_m a net:Atom_Class_Net ;
+    :role_name net:value_9898_blankNode ;
+    net:coverBaseNode :leaf_movie_m ;
+    net:coverNode :leaf_movie_m ;
+    net:hasClassName "movie" ;
+    net:hasNaming "movie" ;
+    net:hasStructure "document-01" .
+
+:AMR_Leaf a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_NonCore_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:leaf_possible-01_p a :AMR_Leaf ;
+    :edge_p_ARG1_u :leaf_use-01_u ;
+    :hasConcept :concept_possible-01 ;
+    :hasVariable :variable_p .
+
+sys:Out_Structure a owl:Class ;
+    rdfs:label "Output Ontology Structure" .
+
+net:netProperty a owl:AnnotationProperty ;
+    rdfs:label "netProperty" .
+
+:AMR_Edge a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_ObjectProperty a owl:ObjectProperty ;
+    rdfs:subPropertyOf owl:topObjectProperty .
+
+:AMR_Structure a owl:Class .
+
+:leaf_use-01_u a :AMR_Leaf ;
+    :edge_u_ARG1_m :leaf_movie_m ;
+    :hasConcept :concept_use-01 ;
+    :hasVariable :variable_u .
+
+cprm:configParamProperty a rdf:Property ;
+    rdfs:label "Config Parameter Property" .
+
+rdf:Property a owl:Class .
+
+:AMR_Relation a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:leaf_movie_m a :AMR_Leaf ;
+    :edge_m_name_9898 :value_9898 ;
+    :hasConcept :concept_movie ;
+    :hasVariable :variable_m .
+
+net:Net a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:has_object a owl:AnnotationProperty ;
+    rdfs:label "relation" ;
+    rdfs:subPropertyOf net:netProperty .
+
+:AMR_Op_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_AnnotationProperty a owl:AnnotationProperty .
+
+:AMR_Core_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Linked_Data a owl:Class .
+
+net:objectValue a owl:AnnotationProperty ;
+    rdfs:label "valuations"@fr ;
+    rdfs:subPropertyOf net:objectProperty .
+
+[] a owl:AllDisjointClasses ;
+    owl:members ( sys:Degree sys:Entity sys:Feature ) .
+
diff --git a/tests/dev_tests/test_data/odrl-rule-devGraph-1.ttl b/tests/dev_tests/test_data/odrl-rule-devGraph-1.ttl
new file mode 100644
index 0000000000000000000000000000000000000000..22d38dedd371b2464492ba757d161a1d9dda7e3e
--- /dev/null
+++ b/tests/dev_tests/test_data/odrl-rule-devGraph-1.ttl
@@ -0,0 +1,881 @@
+@base <https://amr.tetras-libre.fr/rdf/odrl-action-devGraph-1/result> .
+@prefix : <https://amr.tetras-libre.fr/rdf/schema#> .
+@prefix cprm: <https://tenet.tetras-libre.fr/config/parameters#> .
+@prefix net: <https://tenet.tetras-libre.fr/semantic-net#> .
+@prefix ns11: <http://amr.isi.edu/rdf/core-amr#> .
+@prefix ns2: <http://amr.isi.edu/rdf/amr-terms#> .
+@prefix ns21: <http://amr.isi.edu/frames/ld/v1.2.2/> .
+@prefix owl: <http://www.w3.org/2002/07/owl#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix sys: <https://tenet.tetras-libre.fr/base-ontology#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+ns11:Concept a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Concept" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:Role a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/test-1#root01> ns11:hasID "test-1" ;
+    ns11:hasSentence "The sun is a star." ;
+    ns11:root <http://amr.isi.edu/amr_data/test-1#s> .
+
+<http://amr.isi.edu/amr_data/test-2#root01> ns11:hasID "test-2" ;
+    ns11:hasSentence "Earth is a planet." ;
+    ns11:root <http://amr.isi.edu/amr_data/test-2#p> .
+
+ns21:possible-01.ARG1 a ns21:FrameRole .
+
+ns21:use-01.ARG1 a ns21:FrameRole .
+
+ns2:domain a ns11:Role,
+        owl:AnnotationProperty,
+        owl:NamedIndividual .
+
+ns11:NamedEntity a ns11:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-EntityType",
+        "AMR-Term" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:hasID a owl:AnnotationProperty .
+
+ns11:hasSentence a owl:AnnotationProperty .
+
+ns11:root a owl:AnnotationProperty .
+
+<https://amr.tetras-libre.fr/rdf/schema> a owl:Ontology ;
+    owl:versionIRI :0.1 .
+
+:AMR_DataProperty a owl:DatatypeProperty .
+
+:AMR_Prep_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:edge_m_name_9898 a :AMR_Edge ;
+    :hasAmrRole :role_name ;
+    :hasRoleID "name" .
+
+:edge_p_ARG1_u a :AMR_Edge ;
+    :hasAmrRole :role_ARG1 ;
+    :hasRoleID "ARG1" .
+
+:edge_u_ARG1_m a :AMR_Edge ;
+    :hasAmrRole :role_ARG1 ;
+    :hasRoleID "ARG1" .
+
+:fromAmrLkFramerole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRoot a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:getDirectPropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getInversePropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getPropertyType a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:hasConcept a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasConceptLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasEdgeLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasReification a owl:AnnotationProperty ;
+    rdfs:range xsd:boolean ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationDomain a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationRange a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasRelationName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasRoleID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRoleTag a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRolesetID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRootLeaf a owl:ObjectProperty ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasSentenceID a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasSentenceStatement a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasVariable a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:label a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction_and a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "and" ;
+    :label "conjunction-AND" .
+
+:phenomena_conjunction_or a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "or" ;
+    :label "conjunction-OR" .
+
+:phenomena_degree a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "have-degree-91" ;
+    :label "degree" .
+
+:phenomena_modality_obligation a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "obligate-01" ;
+    :label "obligation-modality" .
+
+:phenomena_modality_prohibition a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :label "prohibition-modality" .
+
+:relation_domain a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "domain" .
+
+:relation_manner a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasManner" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "manner" .
+
+:relation_mod a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "mod" .
+
+:relation_name a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "name" .
+
+:relation_part a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasPart" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "part" .
+
+:relation_polarity a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "polarity" .
+
+:relation_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "quant" .
+
+:role_ARG0 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG0" .
+
+:role_ARG2 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG2" .
+
+:role_ARG3 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG3" .
+
+:role_ARG4 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG4" .
+
+:role_ARG5 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG5" .
+
+:role_ARG6 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG6" .
+
+:role_ARG7 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG7" .
+
+:role_ARG8 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG8" .
+
+:role_ARG9 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG9" .
+
+:role_domain a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :hasRelationName "domain" ;
+    :label "domain" ;
+    :toReifyAsConcept "domain" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_have-degree-91 a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :getPropertyType <net:specificProperty> .
+
+:role_manner a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "manner" ;
+    :getPropertyType owl:DataProperty ;
+    :label "manner" ;
+    :toReifyAsConcept "manner" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_mod a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasFeature"^^xsd:string ;
+    :getPropertyType rdfs:subClassOf,
+        owl:ObjectProperty ;
+    :label "mod" ;
+    :toReifyAsConcept "mod" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_op1 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op1" .
+
+:role_op2 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op2" .
+
+:role_op3 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op3" .
+
+:role_op4 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op4" .
+
+:role_op5 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op5" .
+
+:role_op6 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op6" .
+
+:role_op7 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op7" .
+
+:role_op8 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op8" .
+
+:role_op9 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op9" .
+
+:role_part a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasPart"^^xsd:string ;
+    :getInversePropertyName "partOf"^^xsd:string ;
+    :getPropertyType owl:ObjectProperty ;
+    :toReifyAsConcept "part" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_polarity a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "polarity" .
+
+:role_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "quant" .
+
+:root_document-01 a :AMR_Root ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-01#root01> ;
+    :hasRootLeaf :leaf_possible-01_p ;
+    :hasSentenceID "document-01" ;
+    :hasSentenceStatement "Movie9898 can be used." .
+
+:toReifyAsConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithBaseEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithHeadEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+<https://tenet.tetras-libre.fr/base-ontology> a owl:Ontology .
+
+sys:Event a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Undetermined_Thing a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:fromStructure a owl:AnnotationProperty ;
+    rdfs:subPropertyOf sys:Out_AnnotationProperty .
+
+sys:hasDegree a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+sys:hasFeature a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+<https://tenet.tetras-libre.fr/config/parameters> a owl:Ontology .
+
+cprm:Config_Parameters a owl:Class ;
+    cprm:baseURI "https://tenet.tetras-libre.fr/" ;
+    cprm:netURI "https://tenet.tetras-libre.fr/semantic-net#" ;
+    cprm:newClassRef "new-class#" ;
+    cprm:newPropertyRef "new-relation#" ;
+    cprm:objectRef "object_" ;
+    cprm:targetOntologyURI "https://tenet.tetras-libre.fr/base-ontology/" .
+
+cprm:baseURI a rdf:Property ;
+    rdfs:label "Base URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:netURI a rdf:Property ;
+    rdfs:label "Net URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newClassRef a rdf:Property ;
+    rdfs:label "Reference for a new class" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newPropertyRef a rdf:Property ;
+    rdfs:label "Reference for a new property" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:objectRef a rdf:Property ;
+    rdfs:label "Object Reference" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:targetOntologyURI a rdf:Property ;
+    rdfs:label "URI of classes in target ontology" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+<https://tenet.tetras-libre.fr/semantic-net> a owl:Ontology .
+
+net:Composite_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Composite_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Deprecated_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Feature a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:Rule_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:abstractionClass a owl:AnnotationProperty ;
+    rdfs:label "abstraction class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:atomType a owl:AnnotationProperty ;
+    rdfs:label "atom type" ;
+    rdfs:subPropertyOf net:objectType .
+
+net:entityClass a owl:AnnotationProperty ;
+    rdfs:label "entity class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:featureClass a owl:AnnotationProperty ;
+    rdfs:label "feature class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_atom a owl:AnnotationProperty ;
+    rdfs:label "has atom" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_class a owl:AnnotationProperty ;
+    rdfs:label "is class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_class_name a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:has_value .
+
+net:has_class_uri a owl:AnnotationProperty ;
+    rdfs:label "class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_concept a owl:AnnotationProperty ;
+    rdfs:label "concept "@fr ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_entity a owl:AnnotationProperty ;
+    rdfs:label "has entity" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_feature a owl:AnnotationProperty ;
+    rdfs:label "has feature" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_instance a owl:AnnotationProperty ;
+    rdfs:label "entity instance" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_instance_uri a owl:AnnotationProperty ;
+    rdfs:label "instance uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_item a owl:AnnotationProperty ;
+    rdfs:label "has item" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_mother_class a owl:AnnotationProperty ;
+    rdfs:label "has mother class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_mother_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_node a owl:AnnotationProperty ;
+    rdfs:label "UNL Node" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_parent a owl:AnnotationProperty ;
+    rdfs:label "has parent" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_parent_class a owl:AnnotationProperty ;
+    rdfs:label "parent class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_parent_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_possible_domain a owl:AnnotationProperty ;
+    rdfs:label "has possible domain" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_possible_range a owl:AnnotationProperty ;
+    rdfs:label "has possible range" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_relation a owl:AnnotationProperty ;
+    rdfs:label "has relation" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_source a owl:AnnotationProperty ;
+    rdfs:label "has source" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_structure a owl:AnnotationProperty ;
+    rdfs:label "Linguistic Structure (in UNL Document)" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_target a owl:AnnotationProperty ;
+    rdfs:label "has target" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:inverse_direction a owl:NamedIndividual .
+
+net:listGuiding a owl:AnnotationProperty ;
+    rdfs:label "Guiding connector of a list (or, and)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat1 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 1)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat2 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 2)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:normal_direction a owl:NamedIndividual .
+
+net:phenomena_possible-modality_p a net:Phenomena_Net ;
+    :role_ARG1 net:action_use_u,
+        net:atomProperty_use_u ;
+    net:coverBaseNode :leaf_possible-01_p ;
+    net:coverNode :leaf_possible-01_p ;
+    net:hasNaming "possible-modality" ;
+    net:hasPhenomenaRef "possible-01" ;
+    net:hasPhenomenaType :phenomena_modality_possible ;
+    net:hasStructure "document-01" .
+
+net:type a owl:AnnotationProperty ;
+    rdfs:label "type "@fr ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:verbClass a owl:AnnotationProperty ;
+    rdfs:label "verb class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+<http://amr.isi.edu/amr_data/document-01#root01> a ns11:AMR ;
+    ns11:has-id "document-01" ;
+    ns11:has-sentence "Movie9898 can be used." ;
+    ns11:root <http://amr.isi.edu/amr_data/document-01#p> .
+
+<http://amr.isi.edu/amr_data/test-1#s> ns2:domain <http://amr.isi.edu/amr_data/test-1#s2> .
+
+<http://amr.isi.edu/amr_data/test-2#p> rdfs:label "Earth" .
+
+ns11:AMR a owl:Class ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Predicat_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Relation_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Root a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Term_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Value a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:concept_movie rdfs:subClassOf :AMR_Term_Concept ;
+    :fromAmrLk ns2:movie ;
+    :label "movie" .
+
+:concept_possible-01 rdfs:subClassOf :AMR_Relation_Concept ;
+    :fromAmrLk ns21:possible-01 ;
+    :hasPhenomenaLink :phenomena_modality_possible ;
+    :label "possible-01" .
+
+:concept_use-01 rdfs:subClassOf :AMR_Predicat_Concept ;
+    :fromAmrLk ns21:use-01 ;
+    :label "use-01" .
+
+:role_name a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :label "name" .
+
+:variable_m a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-01#m> ;
+    :label "m" ;
+    :name "9898" .
+
+:variable_p a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-01#p> ;
+    :label "p" .
+
+:variable_u a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-01#u> ;
+    :label "u" .
+
+sys:Degree a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Entity a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Feature a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Out_AnnotationProperty a owl:AnnotationProperty .
+
+net:Action_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Atom_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Atom_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Individual_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Phenomena_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Value_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:action_use_u a net:Action_Net ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomProperty_use_u ;
+    net:coverBaseNode :leaf_use-01_u ;
+    net:coverNode :leaf_movie_m,
+        :leaf_use-01_u ;
+    net:hasActionName "use" ;
+    net:hasNaming "use" ;
+    net:hasStructure "document-01" ;
+    net:hasTargetNet net:atomClass_movie_m .
+
+net:has_value a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:individual_9898_m a net:Individual_Net ;
+    :role_name net:value_9898_blankNode ;
+    net:coverBaseNode :leaf_movie_m ;
+    net:coverNode :leaf_movie_m ;
+    net:hasIndividualLabel "9898" ;
+    net:hasMotherClassNet net:atomClass_movie_m ;
+    net:hasNaming "9898" ;
+    net:hasStructure "document-01" .
+
+net:objectType a owl:AnnotationProperty ;
+    rdfs:label "object type" ;
+    rdfs:subPropertyOf net:objectProperty .
+
+<http://amr.isi.edu/amr_data/document-01#m> a ns2:movie ;
+    rdfs:label "9898" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-01#p> a ns21:possible-01 ;
+    ns21:possible-01.ARG1 <http://amr.isi.edu/amr_data/document-01#u> ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-01#u> a ns21:use-01 ;
+    ns21:use-01.ARG1 <http://amr.isi.edu/amr_data/document-01#m> ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:FrameRole a ns11:Role,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:possible-01 a ns11:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:use-01 a ns11:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns2:movie a ns11:Concept ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:Frame a ns11:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Frame" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:hasLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "contrast-01",
+        "either",
+        "neither" ;
+    :label "conjunction" .
+
+:phenomena_modality_possible a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "allow-01",
+        "grant-01",
+        "likely-01",
+        "permit-01",
+        "possible-01" ;
+    :label "possible-modality" .
+
+:role_ARG1 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG1" .
+
+:value_9898 a :AMR_Value ;
+    rdfs:label "9898" .
+
+sys:Out_ObjectProperty a owl:ObjectProperty .
+
+net:Class_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Property_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Relation a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:atomProperty_use_u a net:Atom_Property_Net ;
+    :role_ARG1 net:atomClass_movie_m,
+        net:individual_9898_m ;
+    net:coverBaseNode :leaf_use-01_u ;
+    net:coverNode :leaf_use-01_u ;
+    net:hasNaming "use" ;
+    net:hasPropertyName "use" ;
+    net:hasPropertyName01 "useing" ;
+    net:hasPropertyName10 "use-by" ;
+    net:hasPropertyName12 "use-of" ;
+    net:hasPropertyType owl:ObjectProperty ;
+    net:hasStructure "document-01" ;
+    net:isCoreRoleLinked "true" ;
+    net:targetArgumentNode :leaf_movie_m .
+
+net:objectProperty a owl:AnnotationProperty ;
+    rdfs:label "object attribute" .
+
+net:value_9898_blankNode a net:Value_Net ;
+    net:coverAmrValue :value_9898 ;
+    net:hasNaming "9898" ;
+    net:hasStructure "document-01" ;
+    net:hasValueLabel "9898" .
+
+:AMR_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:AMR_Phenomena a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Specific_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Variable a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:fromAmrLk a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:getProperty a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationDefinition a owl:AnnotationProperty ;
+    rdfs:range rdfs:Literal ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:leaf_possible-01_p a :AMR_Leaf ;
+    :edge_p_ARG1_u :leaf_use-01_u ;
+    :hasConcept :concept_possible-01 ;
+    :hasVariable :variable_p .
+
+:phenomena_modality a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena .
+
+:toReify a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+net:Net_Structure a owl:Class ;
+    rdfs:label "Semantic Net Structure" ;
+    rdfs:comment "A semantic net captures a set of nodes, and associates this set with type(s) and value(s)." .
+
+net:has_relation_value a owl:AnnotationProperty ;
+    rdfs:label "has relation value" ;
+    rdfs:subPropertyOf net:has_object .
+
+:AMR_Element a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+net:atomClass_movie_m a net:Atom_Class_Net ;
+    :role_name net:value_9898_blankNode ;
+    net:coverBaseNode :leaf_movie_m ;
+    net:coverNode :leaf_movie_m ;
+    net:hasClassName "movie" ;
+    net:hasNaming "movie" ;
+    net:hasStructure "document-01" .
+
+:AMR_Leaf a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_NonCore_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:leaf_use-01_u a :AMR_Leaf ;
+    :edge_u_ARG1_m :leaf_movie_m ;
+    :hasConcept :concept_use-01 ;
+    :hasVariable :variable_u .
+
+sys:Out_Structure a owl:Class ;
+    rdfs:label "Output Ontology Structure" .
+
+net:netProperty a owl:AnnotationProperty ;
+    rdfs:label "netProperty" .
+
+:AMR_Edge a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_ObjectProperty a owl:ObjectProperty ;
+    rdfs:subPropertyOf owl:topObjectProperty .
+
+:AMR_Structure a owl:Class .
+
+cprm:configParamProperty a rdf:Property ;
+    rdfs:label "Config Parameter Property" .
+
+rdf:Property a owl:Class .
+
+:AMR_Relation a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:leaf_movie_m a :AMR_Leaf ;
+    :edge_m_name_9898 :value_9898 ;
+    :hasConcept :concept_movie ;
+    :hasVariable :variable_m .
+
+net:Net a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:has_object a owl:AnnotationProperty ;
+    rdfs:label "relation" ;
+    rdfs:subPropertyOf net:netProperty .
+
+:AMR_Op_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_AnnotationProperty a owl:AnnotationProperty .
+
+:AMR_Core_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Linked_Data a owl:Class .
+
+net:objectValue a owl:AnnotationProperty ;
+    rdfs:label "valuations"@fr ;
+    rdfs:subPropertyOf net:objectProperty .
+
+[] a owl:AllDisjointClasses ;
+    owl:members ( sys:Degree sys:Entity sys:Feature ) .
+
diff --git a/tests/dev_tests/test_data/odrl-rule-devGraph-2.result.ttl b/tests/dev_tests/test_data/odrl-rule-devGraph-2.result.ttl
new file mode 100644
index 0000000000000000000000000000000000000000..80a9bb0a725338cfe39e91ca5808e5cbdf24da1c
--- /dev/null
+++ b/tests/dev_tests/test_data/odrl-rule-devGraph-2.result.ttl
@@ -0,0 +1,956 @@
+@base <https://amr.tetras-libre.fr/rdf/odrl-rule-devGraph-2/result> .
+@prefix : <https://amr.tetras-libre.fr/rdf/schema#> .
+@prefix cprm: <https://tenet.tetras-libre.fr/config/parameters#> .
+@prefix net: <https://tenet.tetras-libre.fr/semantic-net#> .
+@prefix ns11: <http://amr.isi.edu/frames/ld/v1.2.2/> .
+@prefix ns2: <http://amr.isi.edu/rdf/amr-terms#> .
+@prefix ns21: <http://amr.isi.edu/rdf/core-amr#> .
+@prefix ns4: <http://amr.isi.edu/entity-types#> .
+@prefix owl: <http://www.w3.org/2002/07/owl#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix sys: <https://tenet.tetras-libre.fr/base-ontology#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+ns21:Concept a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Concept" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:Role a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/test-1#root01> ns21:hasID "test-1" ;
+    ns21:hasSentence "The sun is a star." ;
+    ns21:root <http://amr.isi.edu/amr_data/test-1#s> .
+
+<http://amr.isi.edu/amr_data/test-2#root01> ns21:hasID "test-2" ;
+    ns21:hasSentence "Earth is a planet." ;
+    ns21:root <http://amr.isi.edu/amr_data/test-2#p> .
+
+ns11:obligate-01.ARG2 a ns11:FrameRole .
+
+ns11:play-02.ARG0 a ns11:FrameRole .
+
+ns11:play-02.ARG1 a ns11:FrameRole .
+
+ns2:domain a ns21:Role,
+        owl:AnnotationProperty,
+        owl:NamedIndividual .
+
+ns21:hasID a owl:AnnotationProperty .
+
+ns21:hasSentence a owl:AnnotationProperty .
+
+ns21:root a owl:AnnotationProperty .
+
+<https://amr.tetras-libre.fr/rdf/schema> a owl:Ontology ;
+    owl:versionIRI :0.1 .
+
+:AMR_DataProperty a owl:DatatypeProperty .
+
+:AMR_Prep_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:edge_o_ARG2_p a :AMR_Edge ;
+    :hasAmrRole :role_ARG2 ;
+    :hasRoleID "ARG2" .
+
+:edge_p2_name_John a :AMR_Edge ;
+    :hasAmrRole :role_name ;
+    :hasRoleID "name" .
+
+:edge_p_ARG0_p2 a :AMR_Edge ;
+    :hasAmrRole :role_ARG0 ;
+    :hasRoleID "ARG0" .
+
+:edge_p_ARG1_m a :AMR_Edge ;
+    :hasAmrRole :role_ARG1 ;
+    :hasRoleID "ARG1" .
+
+:fromAmrLkFramerole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRoot a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:getDirectPropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getInversePropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getPropertyType a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:hasConcept a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasConceptLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasEdgeLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasReification a owl:AnnotationProperty ;
+    rdfs:range xsd:boolean ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationDomain a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationRange a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasRelationName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasRoleID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRoleTag a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRolesetID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRootLeaf a owl:ObjectProperty ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasSentenceID a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasSentenceStatement a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasVariable a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:label a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction_and a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "and" ;
+    :label "conjunction-AND" .
+
+:phenomena_conjunction_or a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "or" ;
+    :label "conjunction-OR" .
+
+:phenomena_degree a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "have-degree-91" ;
+    :label "degree" .
+
+:phenomena_modality_possible a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "allow-01",
+        "grant-01",
+        "likely-01",
+        "permit-01",
+        "possible-01" ;
+    :label "possible-modality" .
+
+:phenomena_modality_prohibition a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :label "prohibition-modality" .
+
+:relation_domain a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "domain" .
+
+:relation_manner a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasManner" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "manner" .
+
+:relation_mod a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "mod" .
+
+:relation_name a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "name" .
+
+:relation_part a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasPart" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "part" .
+
+:relation_polarity a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "polarity" .
+
+:relation_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "quant" .
+
+:role_ARG3 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG3" .
+
+:role_ARG4 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG4" .
+
+:role_ARG5 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG5" .
+
+:role_ARG6 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG6" .
+
+:role_ARG7 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG7" .
+
+:role_ARG8 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG8" .
+
+:role_ARG9 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG9" .
+
+:role_domain a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :hasRelationName "domain" ;
+    :label "domain" ;
+    :toReifyAsConcept "domain" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_have-degree-91 a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :getPropertyType <net:specificProperty> .
+
+:role_manner a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "manner" ;
+    :getPropertyType owl:DataProperty ;
+    :label "manner" ;
+    :toReifyAsConcept "manner" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_mod a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasFeature"^^xsd:string ;
+    :getPropertyType rdfs:subClassOf,
+        owl:ObjectProperty ;
+    :label "mod" ;
+    :toReifyAsConcept "mod" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_op1 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op1" .
+
+:role_op2 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op2" .
+
+:role_op3 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op3" .
+
+:role_op4 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op4" .
+
+:role_op5 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op5" .
+
+:role_op6 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op6" .
+
+:role_op7 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op7" .
+
+:role_op8 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op8" .
+
+:role_op9 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op9" .
+
+:role_part a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasPart"^^xsd:string ;
+    :getInversePropertyName "partOf"^^xsd:string ;
+    :getPropertyType owl:ObjectProperty ;
+    :toReifyAsConcept "part" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_polarity a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "polarity" .
+
+:role_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "quant" .
+
+:root_document-02 a :AMR_Root ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-02#root01> ;
+    :hasRootLeaf :leaf_obligate-01_o ;
+    :hasSentenceID "document-02" ;
+    :hasSentenceStatement "John must play the movie." .
+
+:toReifyAsConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithBaseEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithHeadEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+<https://tenet.tetras-libre.fr/base-ontology> a owl:Ontology .
+
+sys:Event a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Undetermined_Thing a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:fromStructure a owl:AnnotationProperty ;
+    rdfs:subPropertyOf sys:Out_AnnotationProperty .
+
+sys:hasDegree a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+sys:hasFeature a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+<https://tenet.tetras-libre.fr/config/parameters> a owl:Ontology .
+
+cprm:Config_Parameters a owl:Class ;
+    cprm:baseURI "https://tenet.tetras-libre.fr/" ;
+    cprm:netURI "https://tenet.tetras-libre.fr/semantic-net#" ;
+    cprm:newClassRef "new-class#" ;
+    cprm:newPropertyRef "new-relation#" ;
+    cprm:objectRef "object_" ;
+    cprm:targetOntologyURI "https://tenet.tetras-libre.fr/base-ontology/" .
+
+cprm:baseURI a rdf:Property ;
+    rdfs:label "Base URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:netURI a rdf:Property ;
+    rdfs:label "Net URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newClassRef a rdf:Property ;
+    rdfs:label "Reference for a new class" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newPropertyRef a rdf:Property ;
+    rdfs:label "Reference for a new property" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:objectRef a rdf:Property ;
+    rdfs:label "Object Reference" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:targetOntologyURI a rdf:Property ;
+    rdfs:label "URI of classes in target ontology" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+<https://tenet.tetras-libre.fr/semantic-net> a owl:Ontology .
+
+net:Composite_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Feature a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:abstractionClass a owl:AnnotationProperty ;
+    rdfs:label "abstraction class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:atomType a owl:AnnotationProperty ;
+    rdfs:label "atom type" ;
+    rdfs:subPropertyOf net:objectType .
+
+net:compositeProperty_person-play-movie_p2 a net:Composite_Property_Net ;
+    :role_name net:value_John_blankNode ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomClass_person_p2,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_movie_m,
+        :leaf_person_p2,
+        :leaf_play-02_p ;
+    net:hasNaming "person-play-movie" ;
+    net:hasRestriction net:restriction_play-movie_p ;
+    net:hasStructure "document-02" .
+
+net:entityClass a owl:AnnotationProperty ;
+    rdfs:label "entity class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:featureClass a owl:AnnotationProperty ;
+    rdfs:label "feature class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_atom a owl:AnnotationProperty ;
+    rdfs:label "has atom" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_class a owl:AnnotationProperty ;
+    rdfs:label "is class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_class_name a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:has_value .
+
+net:has_class_uri a owl:AnnotationProperty ;
+    rdfs:label "class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_concept a owl:AnnotationProperty ;
+    rdfs:label "concept "@fr ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_entity a owl:AnnotationProperty ;
+    rdfs:label "has entity" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_feature a owl:AnnotationProperty ;
+    rdfs:label "has feature" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_instance a owl:AnnotationProperty ;
+    rdfs:label "entity instance" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_instance_uri a owl:AnnotationProperty ;
+    rdfs:label "instance uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_item a owl:AnnotationProperty ;
+    rdfs:label "has item" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_mother_class a owl:AnnotationProperty ;
+    rdfs:label "has mother class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_mother_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_node a owl:AnnotationProperty ;
+    rdfs:label "UNL Node" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_parent a owl:AnnotationProperty ;
+    rdfs:label "has parent" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_parent_class a owl:AnnotationProperty ;
+    rdfs:label "parent class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_parent_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_possible_domain a owl:AnnotationProperty ;
+    rdfs:label "has possible domain" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_possible_range a owl:AnnotationProperty ;
+    rdfs:label "has possible range" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_relation a owl:AnnotationProperty ;
+    rdfs:label "has relation" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_source a owl:AnnotationProperty ;
+    rdfs:label "has source" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_structure a owl:AnnotationProperty ;
+    rdfs:label "Linguistic Structure (in UNL Document)" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_target a owl:AnnotationProperty ;
+    rdfs:label "has target" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:inverse_direction a owl:NamedIndividual .
+
+net:listGuiding a owl:AnnotationProperty ;
+    rdfs:label "Guiding connector of a list (or, and)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat1 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 1)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat2 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 2)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:normal_direction a owl:NamedIndividual .
+
+net:rule_obligation_o a net:Rule_Net ;
+    net:composeFrom net:action_play_p,
+        net:phenomena_obligation-modality_o ;
+    net:coverBaseNode :leaf_obligate-01_o ;
+    net:coverNode :leaf_movie_m,
+        :leaf_obligate-01_o,
+        :leaf_play-02_p ;
+    net:hasNaming "obligation" ;
+    net:hasRuleActionURI net:action_play_p ;
+    net:hasRuleRelationName "obligation" ;
+    net:hasStructure "document-02" .
+
+net:type a owl:AnnotationProperty ;
+    rdfs:label "type "@fr ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:verbClass a owl:AnnotationProperty ;
+    rdfs:label "verb class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+<http://amr.isi.edu/amr_data/document-02#root01> a ns21:AMR ;
+    ns21:has-id "document-02" ;
+    ns21:has-sentence "John must play the movie." ;
+    ns21:root <http://amr.isi.edu/amr_data/document-02#o> .
+
+<http://amr.isi.edu/amr_data/test-1#s> ns2:domain <http://amr.isi.edu/amr_data/test-1#s2> .
+
+<http://amr.isi.edu/amr_data/test-2#p> rdfs:label "Earth" .
+
+ns21:AMR a owl:Class ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:NamedEntity a ns21:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-EntityType",
+        "AMR-Term" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Predicat_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Relation_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Root a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Value a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:concept_movie rdfs:subClassOf :AMR_Term_Concept ;
+    :fromAmrLk ns2:movie ;
+    :label "movie" .
+
+:concept_obligate-01 rdfs:subClassOf :AMR_Relation_Concept ;
+    :fromAmrLk ns11:obligate-01 ;
+    :hasPhenomenaLink :phenomena_modality_obligation ;
+    :label "obligate-01" .
+
+:concept_person rdfs:subClassOf :AMR_Term_Concept ;
+    :fromAmrLk ns4:person ;
+    :label "person" .
+
+:concept_play-02 rdfs:subClassOf :AMR_Predicat_Concept ;
+    :fromAmrLk ns11:play-02 ;
+    :label "play-02" .
+
+:role_ARG0 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG0" .
+
+:role_ARG1 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG1" .
+
+:role_ARG2 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG2" .
+
+:role_name a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :label "name" .
+
+:variable_m a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-02#m> ;
+    :label "m" .
+
+:variable_o a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-02#o> ;
+    :label "o" .
+
+:variable_p a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-02#p> ;
+    :label "p" .
+
+:variable_p2 a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-02#p2> ;
+    :label "p2" ;
+    :name "John" .
+
+sys:Degree a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Entity a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Feature a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Out_AnnotationProperty a owl:AnnotationProperty .
+
+net:Action_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Atom_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Composite_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Deprecated_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Individual_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Phenomena_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Rule_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Value_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:has_value a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:individual_John_p2 a net:Individual_Net ;
+    :role_name net:value_John_blankNode ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_person_p2 ;
+    net:hasIndividualLabel "John" ;
+    net:hasMotherClassNet net:atomClass_person_p2 ;
+    net:hasNaming "John" ;
+    net:hasStructure "document-02" .
+
+net:objectType a owl:AnnotationProperty ;
+    rdfs:label "object type" ;
+    rdfs:subPropertyOf net:objectProperty .
+
+net:phenomena_obligation-modality_o a net:Phenomena_Net ;
+    :role_ARG2 net:action_play_p,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_obligate-01_o ;
+    net:coverNode :leaf_obligate-01_o ;
+    net:hasNaming "obligation-modality" ;
+    net:hasPhenomenaRef "obligate-01" ;
+    net:hasPhenomenaType :phenomena_modality_obligation ;
+    net:hasStructure "document-02" .
+
+net:restriction_play-movie_p a net:Restriction_Net ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_play-02_p ;
+    net:coverNode :leaf_movie_m,
+        :leaf_play-02_p ;
+    net:hasNaming "play-movie" ;
+    net:hasRestrictionNetValue net:atomClass_movie_m ;
+    net:hasRestrictionOnProperty net:atomProperty_play_p ;
+    net:hasStructure "document-02" .
+
+<http://amr.isi.edu/amr_data/document-02#m> a ns2:movie ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-02#o> a ns11:obligate-01 ;
+    ns11:obligate-01.ARG2 <http://amr.isi.edu/amr_data/document-02#p> ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-02#p> a ns11:play-02 ;
+    ns11:play-02.ARG0 <http://amr.isi.edu/amr_data/document-02#p2> ;
+    ns11:play-02.ARG1 <http://amr.isi.edu/amr_data/document-02#m> ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-02#p2> a ns4:person ;
+    rdfs:label "John" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns4:person a ns21:NamedEntity ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:obligate-01 a ns21:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:play-02 a ns21:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns2:movie a ns21:Concept ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:Frame a ns21:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Frame" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Term_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:hasLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "contrast-01",
+        "either",
+        "neither" ;
+    :label "conjunction" .
+
+:phenomena_modality_obligation a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "obligate-01" ;
+    :label "obligation-modality" .
+
+:value_John a :AMR_Value ;
+    rdfs:label "John" .
+
+sys:Out_ObjectProperty a owl:ObjectProperty .
+
+net:Atom_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Class_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Property_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:objectProperty a owl:AnnotationProperty ;
+    rdfs:label "object attribute" .
+
+ns11:FrameRole a ns21:Role,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:AMR_Phenomena a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Specific_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:fromAmrLk a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:getProperty a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationDefinition a owl:AnnotationProperty ;
+    rdfs:range rdfs:Literal ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_modality a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena .
+
+:toReify a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+net:Net_Structure a owl:Class ;
+    rdfs:label "Semantic Net Structure" ;
+    rdfs:comment "A semantic net captures a set of nodes, and associates this set with type(s) and value(s)." .
+
+net:action_play_p a net:Action_Net ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_play-02_p ;
+    net:coverNode :leaf_movie_m,
+        :leaf_play-02_p ;
+    net:hasActionName "play" ;
+    net:hasNaming "play" ;
+    net:hasStructure "document-02" ;
+    net:hasTargetNet net:atomClass_movie_m .
+
+net:atomClass_person_p2 a net:Atom_Class_Net,
+        net:Deprecated_Net ;
+    :role_name net:value_John_blankNode ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_person_p2 ;
+    net:hasClassName "person" ;
+    net:hasNaming "person" ;
+    net:hasStructure "document-02" .
+
+net:has_relation_value a owl:AnnotationProperty ;
+    rdfs:label "has relation value" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:value_John_blankNode a net:Value_Net ;
+    net:coverAmrValue :value_John ;
+    net:hasNaming "John" ;
+    net:hasStructure "document-02" ;
+    net:hasValueLabel "John" .
+
+:AMR_Element a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Variable a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+net:Relation a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+:AMR_NonCore_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:leaf_obligate-01_o a :AMR_Leaf ;
+    :edge_o_ARG2_p :leaf_play-02_p ;
+    :hasConcept :concept_obligate-01 ;
+    :hasVariable :variable_o .
+
+sys:Out_Structure a owl:Class ;
+    rdfs:label "Output Ontology Structure" .
+
+net:atomProperty_play_p a net:Atom_Property_Net ;
+    :role_ARG0 net:atomClass_person_p2,
+        net:individual_John_p2 ;
+    :role_ARG1 net:atomClass_movie_m ;
+    net:coverBaseNode :leaf_play-02_p ;
+    net:coverNode :leaf_play-02_p ;
+    net:hasNaming "play" ;
+    net:hasPropertyName "play" ;
+    net:hasPropertyName01 "playing" ;
+    net:hasPropertyName10 "play-by" ;
+    net:hasPropertyName12 "play-of" ;
+    net:hasPropertyType owl:ObjectProperty ;
+    net:hasStructure "document-02" ;
+    net:isCoreRoleLinked "true" ;
+    net:targetArgumentNode :leaf_movie_m,
+        :leaf_person_p2 .
+
+net:netProperty a owl:AnnotationProperty ;
+    rdfs:label "netProperty" .
+
+:AMR_Leaf a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_ObjectProperty a owl:ObjectProperty ;
+    rdfs:subPropertyOf owl:topObjectProperty .
+
+:AMR_Structure a owl:Class .
+
+cprm:configParamProperty a rdf:Property ;
+    rdfs:label "Config Parameter Property" .
+
+net:atomClass_movie_m a net:Atom_Class_Net ;
+    net:coverBaseNode :leaf_movie_m ;
+    net:coverNode :leaf_movie_m ;
+    net:hasClassName "movie" ;
+    net:hasNaming "movie" ;
+    net:hasStructure "document-02" .
+
+rdf:Property a owl:Class .
+
+:AMR_Edge a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Relation a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:leaf_movie_m a :AMR_Leaf ;
+    :hasConcept :concept_movie ;
+    :hasVariable :variable_m .
+
+:leaf_person_p2 a :AMR_Leaf ;
+    :edge_p2_name_John :value_John ;
+    :hasConcept :concept_person ;
+    :hasVariable :variable_p2 .
+
+net:Net a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:has_object a owl:AnnotationProperty ;
+    rdfs:label "relation" ;
+    rdfs:subPropertyOf net:netProperty .
+
+:AMR_Op_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:leaf_play-02_p a :AMR_Leaf ;
+    :edge_p_ARG0_p2 :leaf_person_p2 ;
+    :edge_p_ARG1_m :leaf_movie_m ;
+    :hasConcept :concept_play-02 ;
+    :hasVariable :variable_p .
+
+:AMR_AnnotationProperty a owl:AnnotationProperty .
+
+:AMR_Core_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Linked_Data a owl:Class .
+
+net:objectValue a owl:AnnotationProperty ;
+    rdfs:label "valuations"@fr ;
+    rdfs:subPropertyOf net:objectProperty .
+
+[] a owl:AllDisjointClasses ;
+    owl:members ( sys:Degree sys:Entity sys:Feature ) .
+
diff --git a/tests/dev_tests/test_data/odrl-rule-devGraph-2.ttl b/tests/dev_tests/test_data/odrl-rule-devGraph-2.ttl
new file mode 100644
index 0000000000000000000000000000000000000000..0ddbd80ea7b3be80bb0ecb1802b9481f9f6abade
--- /dev/null
+++ b/tests/dev_tests/test_data/odrl-rule-devGraph-2.ttl
@@ -0,0 +1,944 @@
+@base <https://amr.tetras-libre.fr/rdf/odrl-action-devGraph-2/result> .
+@prefix : <https://amr.tetras-libre.fr/rdf/schema#> .
+@prefix cprm: <https://tenet.tetras-libre.fr/config/parameters#> .
+@prefix net: <https://tenet.tetras-libre.fr/semantic-net#> .
+@prefix ns11: <http://amr.isi.edu/frames/ld/v1.2.2/> .
+@prefix ns2: <http://amr.isi.edu/rdf/amr-terms#> .
+@prefix ns21: <http://amr.isi.edu/rdf/core-amr#> .
+@prefix ns4: <http://amr.isi.edu/entity-types#> .
+@prefix owl: <http://www.w3.org/2002/07/owl#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix sys: <https://tenet.tetras-libre.fr/base-ontology#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+ns21:Concept a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Concept" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:Role a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/test-1#root01> ns21:hasID "test-1" ;
+    ns21:hasSentence "The sun is a star." ;
+    ns21:root <http://amr.isi.edu/amr_data/test-1#s> .
+
+<http://amr.isi.edu/amr_data/test-2#root01> ns21:hasID "test-2" ;
+    ns21:hasSentence "Earth is a planet." ;
+    ns21:root <http://amr.isi.edu/amr_data/test-2#p> .
+
+ns11:obligate-01.ARG2 a ns11:FrameRole .
+
+ns11:play-02.ARG0 a ns11:FrameRole .
+
+ns11:play-02.ARG1 a ns11:FrameRole .
+
+ns2:domain a ns21:Role,
+        owl:AnnotationProperty,
+        owl:NamedIndividual .
+
+ns21:hasID a owl:AnnotationProperty .
+
+ns21:hasSentence a owl:AnnotationProperty .
+
+ns21:root a owl:AnnotationProperty .
+
+<https://amr.tetras-libre.fr/rdf/schema> a owl:Ontology ;
+    owl:versionIRI :0.1 .
+
+:AMR_DataProperty a owl:DatatypeProperty .
+
+:AMR_Prep_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:edge_o_ARG2_p a :AMR_Edge ;
+    :hasAmrRole :role_ARG2 ;
+    :hasRoleID "ARG2" .
+
+:edge_p2_name_John a :AMR_Edge ;
+    :hasAmrRole :role_name ;
+    :hasRoleID "name" .
+
+:edge_p_ARG0_p2 a :AMR_Edge ;
+    :hasAmrRole :role_ARG0 ;
+    :hasRoleID "ARG0" .
+
+:edge_p_ARG1_m a :AMR_Edge ;
+    :hasAmrRole :role_ARG1 ;
+    :hasRoleID "ARG1" .
+
+:fromAmrLkFramerole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRoot a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:getDirectPropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getInversePropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getPropertyType a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:hasConcept a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasConceptLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasEdgeLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasReification a owl:AnnotationProperty ;
+    rdfs:range xsd:boolean ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationDomain a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationRange a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasRelationName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasRoleID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRoleTag a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRolesetID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRootLeaf a owl:ObjectProperty ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasSentenceID a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasSentenceStatement a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasVariable a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:label a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction_and a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "and" ;
+    :label "conjunction-AND" .
+
+:phenomena_conjunction_or a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "or" ;
+    :label "conjunction-OR" .
+
+:phenomena_degree a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "have-degree-91" ;
+    :label "degree" .
+
+:phenomena_modality_possible a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "allow-01",
+        "grant-01",
+        "likely-01",
+        "permit-01",
+        "possible-01" ;
+    :label "possible-modality" .
+
+:phenomena_modality_prohibition a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :label "prohibition-modality" .
+
+:relation_domain a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "domain" .
+
+:relation_manner a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasManner" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "manner" .
+
+:relation_mod a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "mod" .
+
+:relation_name a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "name" .
+
+:relation_part a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasPart" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "part" .
+
+:relation_polarity a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "polarity" .
+
+:relation_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "quant" .
+
+:role_ARG3 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG3" .
+
+:role_ARG4 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG4" .
+
+:role_ARG5 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG5" .
+
+:role_ARG6 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG6" .
+
+:role_ARG7 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG7" .
+
+:role_ARG8 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG8" .
+
+:role_ARG9 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG9" .
+
+:role_domain a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :hasRelationName "domain" ;
+    :label "domain" ;
+    :toReifyAsConcept "domain" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_have-degree-91 a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :getPropertyType <net:specificProperty> .
+
+:role_manner a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "manner" ;
+    :getPropertyType owl:DataProperty ;
+    :label "manner" ;
+    :toReifyAsConcept "manner" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_mod a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasFeature"^^xsd:string ;
+    :getPropertyType rdfs:subClassOf,
+        owl:ObjectProperty ;
+    :label "mod" ;
+    :toReifyAsConcept "mod" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_op1 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op1" .
+
+:role_op2 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op2" .
+
+:role_op3 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op3" .
+
+:role_op4 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op4" .
+
+:role_op5 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op5" .
+
+:role_op6 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op6" .
+
+:role_op7 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op7" .
+
+:role_op8 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op8" .
+
+:role_op9 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op9" .
+
+:role_part a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasPart"^^xsd:string ;
+    :getInversePropertyName "partOf"^^xsd:string ;
+    :getPropertyType owl:ObjectProperty ;
+    :toReifyAsConcept "part" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_polarity a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "polarity" .
+
+:role_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "quant" .
+
+:root_document-02 a :AMR_Root ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-02#root01> ;
+    :hasRootLeaf :leaf_obligate-01_o ;
+    :hasSentenceID "document-02" ;
+    :hasSentenceStatement "John must play the movie." .
+
+:toReifyAsConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithBaseEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithHeadEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+<https://tenet.tetras-libre.fr/base-ontology> a owl:Ontology .
+
+sys:Event a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Undetermined_Thing a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:fromStructure a owl:AnnotationProperty ;
+    rdfs:subPropertyOf sys:Out_AnnotationProperty .
+
+sys:hasDegree a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+sys:hasFeature a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+<https://tenet.tetras-libre.fr/config/parameters> a owl:Ontology .
+
+cprm:Config_Parameters a owl:Class ;
+    cprm:baseURI "https://tenet.tetras-libre.fr/" ;
+    cprm:netURI "https://tenet.tetras-libre.fr/semantic-net#" ;
+    cprm:newClassRef "new-class#" ;
+    cprm:newPropertyRef "new-relation#" ;
+    cprm:objectRef "object_" ;
+    cprm:targetOntologyURI "https://tenet.tetras-libre.fr/base-ontology/" .
+
+cprm:baseURI a rdf:Property ;
+    rdfs:label "Base URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:netURI a rdf:Property ;
+    rdfs:label "Net URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newClassRef a rdf:Property ;
+    rdfs:label "Reference for a new class" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newPropertyRef a rdf:Property ;
+    rdfs:label "Reference for a new property" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:objectRef a rdf:Property ;
+    rdfs:label "Object Reference" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:targetOntologyURI a rdf:Property ;
+    rdfs:label "URI of classes in target ontology" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+<https://tenet.tetras-libre.fr/semantic-net> a owl:Ontology .
+
+net:Composite_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Feature a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:Rule_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:abstractionClass a owl:AnnotationProperty ;
+    rdfs:label "abstraction class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:atomType a owl:AnnotationProperty ;
+    rdfs:label "atom type" ;
+    rdfs:subPropertyOf net:objectType .
+
+net:compositeProperty_person-play-movie_p2 a net:Composite_Property_Net ;
+    :role_name net:value_John_blankNode ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomClass_person_p2,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_movie_m,
+        :leaf_person_p2,
+        :leaf_play-02_p ;
+    net:hasNaming "person-play-movie" ;
+    net:hasRestriction net:restriction_play-movie_p ;
+    net:hasStructure "document-02" .
+
+net:entityClass a owl:AnnotationProperty ;
+    rdfs:label "entity class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:featureClass a owl:AnnotationProperty ;
+    rdfs:label "feature class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_atom a owl:AnnotationProperty ;
+    rdfs:label "has atom" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_class a owl:AnnotationProperty ;
+    rdfs:label "is class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_class_name a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:has_value .
+
+net:has_class_uri a owl:AnnotationProperty ;
+    rdfs:label "class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_concept a owl:AnnotationProperty ;
+    rdfs:label "concept "@fr ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_entity a owl:AnnotationProperty ;
+    rdfs:label "has entity" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_feature a owl:AnnotationProperty ;
+    rdfs:label "has feature" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_instance a owl:AnnotationProperty ;
+    rdfs:label "entity instance" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_instance_uri a owl:AnnotationProperty ;
+    rdfs:label "instance uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_item a owl:AnnotationProperty ;
+    rdfs:label "has item" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_mother_class a owl:AnnotationProperty ;
+    rdfs:label "has mother class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_mother_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_node a owl:AnnotationProperty ;
+    rdfs:label "UNL Node" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_parent a owl:AnnotationProperty ;
+    rdfs:label "has parent" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_parent_class a owl:AnnotationProperty ;
+    rdfs:label "parent class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_parent_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_possible_domain a owl:AnnotationProperty ;
+    rdfs:label "has possible domain" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_possible_range a owl:AnnotationProperty ;
+    rdfs:label "has possible range" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_relation a owl:AnnotationProperty ;
+    rdfs:label "has relation" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_source a owl:AnnotationProperty ;
+    rdfs:label "has source" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_structure a owl:AnnotationProperty ;
+    rdfs:label "Linguistic Structure (in UNL Document)" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_target a owl:AnnotationProperty ;
+    rdfs:label "has target" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:inverse_direction a owl:NamedIndividual .
+
+net:listGuiding a owl:AnnotationProperty ;
+    rdfs:label "Guiding connector of a list (or, and)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat1 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 1)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat2 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 2)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:normal_direction a owl:NamedIndividual .
+
+net:phenomena_obligation-modality_o a net:Phenomena_Net ;
+    :role_ARG2 net:action_play_p,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_obligate-01_o ;
+    net:coverNode :leaf_obligate-01_o ;
+    net:hasNaming "obligation-modality" ;
+    net:hasPhenomenaRef "obligate-01" ;
+    net:hasPhenomenaType :phenomena_modality_obligation ;
+    net:hasStructure "document-02" .
+
+net:type a owl:AnnotationProperty ;
+    rdfs:label "type "@fr ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:verbClass a owl:AnnotationProperty ;
+    rdfs:label "verb class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+<http://amr.isi.edu/amr_data/document-02#root01> a ns21:AMR ;
+    ns21:has-id "document-02" ;
+    ns21:has-sentence "John must play the movie." ;
+    ns21:root <http://amr.isi.edu/amr_data/document-02#o> .
+
+<http://amr.isi.edu/amr_data/test-1#s> ns2:domain <http://amr.isi.edu/amr_data/test-1#s2> .
+
+<http://amr.isi.edu/amr_data/test-2#p> rdfs:label "Earth" .
+
+ns21:AMR a owl:Class ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:NamedEntity a ns21:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-EntityType",
+        "AMR-Term" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Predicat_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Relation_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Root a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Value a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:concept_movie rdfs:subClassOf :AMR_Term_Concept ;
+    :fromAmrLk ns2:movie ;
+    :label "movie" .
+
+:concept_obligate-01 rdfs:subClassOf :AMR_Relation_Concept ;
+    :fromAmrLk ns11:obligate-01 ;
+    :hasPhenomenaLink :phenomena_modality_obligation ;
+    :label "obligate-01" .
+
+:concept_person rdfs:subClassOf :AMR_Term_Concept ;
+    :fromAmrLk ns4:person ;
+    :label "person" .
+
+:concept_play-02 rdfs:subClassOf :AMR_Predicat_Concept ;
+    :fromAmrLk ns11:play-02 ;
+    :label "play-02" .
+
+:role_ARG0 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG0" .
+
+:role_ARG1 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG1" .
+
+:role_ARG2 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG2" .
+
+:role_name a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :label "name" .
+
+:variable_m a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-02#m> ;
+    :label "m" .
+
+:variable_o a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-02#o> ;
+    :label "o" .
+
+:variable_p a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-02#p> ;
+    :label "p" .
+
+:variable_p2 a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-02#p2> ;
+    :label "p2" ;
+    :name "John" .
+
+sys:Degree a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Entity a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Feature a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Out_AnnotationProperty a owl:AnnotationProperty .
+
+net:Action_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Atom_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Composite_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Deprecated_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Individual_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Phenomena_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Value_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:action_play_p a net:Action_Net ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_play-02_p ;
+    net:coverNode :leaf_movie_m,
+        :leaf_play-02_p ;
+    net:hasActionName "play" ;
+    net:hasNaming "play" ;
+    net:hasStructure "document-02" ;
+    net:hasTargetNet net:atomClass_movie_m .
+
+net:has_value a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:individual_John_p2 a net:Individual_Net ;
+    :role_name net:value_John_blankNode ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_person_p2 ;
+    net:hasIndividualLabel "John" ;
+    net:hasMotherClassNet net:atomClass_person_p2 ;
+    net:hasNaming "John" ;
+    net:hasStructure "document-02" .
+
+net:objectType a owl:AnnotationProperty ;
+    rdfs:label "object type" ;
+    rdfs:subPropertyOf net:objectProperty .
+
+net:restriction_play-movie_p a net:Restriction_Net ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_play-02_p ;
+    net:coverNode :leaf_movie_m,
+        :leaf_play-02_p ;
+    net:hasNaming "play-movie" ;
+    net:hasRestrictionNetValue net:atomClass_movie_m ;
+    net:hasRestrictionOnProperty net:atomProperty_play_p ;
+    net:hasStructure "document-02" .
+
+<http://amr.isi.edu/amr_data/document-02#m> a ns2:movie ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-02#o> a ns11:obligate-01 ;
+    ns11:obligate-01.ARG2 <http://amr.isi.edu/amr_data/document-02#p> ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-02#p> a ns11:play-02 ;
+    ns11:play-02.ARG0 <http://amr.isi.edu/amr_data/document-02#p2> ;
+    ns11:play-02.ARG1 <http://amr.isi.edu/amr_data/document-02#m> ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-02#p2> a ns4:person ;
+    rdfs:label "John" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns4:person a ns21:NamedEntity ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:obligate-01 a ns21:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:play-02 a ns21:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns2:movie a ns21:Concept ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns21:Frame a ns21:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Frame" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Term_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:hasLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "contrast-01",
+        "either",
+        "neither" ;
+    :label "conjunction" .
+
+:phenomena_modality_obligation a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "obligate-01" ;
+    :label "obligation-modality" .
+
+:value_John a :AMR_Value ;
+    rdfs:label "John" .
+
+sys:Out_ObjectProperty a owl:ObjectProperty .
+
+net:Atom_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Class_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Property_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:objectProperty a owl:AnnotationProperty ;
+    rdfs:label "object attribute" .
+
+ns11:FrameRole a ns21:Role,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:AMR_Phenomena a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Specific_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:fromAmrLk a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:getProperty a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationDefinition a owl:AnnotationProperty ;
+    rdfs:range rdfs:Literal ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:leaf_obligate-01_o a :AMR_Leaf ;
+    :edge_o_ARG2_p :leaf_play-02_p ;
+    :hasConcept :concept_obligate-01 ;
+    :hasVariable :variable_o .
+
+:phenomena_modality a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena .
+
+:toReify a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+net:Net_Structure a owl:Class ;
+    rdfs:label "Semantic Net Structure" ;
+    rdfs:comment "A semantic net captures a set of nodes, and associates this set with type(s) and value(s)." .
+
+net:atomClass_person_p2 a net:Atom_Class_Net,
+        net:Deprecated_Net ;
+    :role_name net:value_John_blankNode ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_person_p2 ;
+    net:hasClassName "person" ;
+    net:hasNaming "person" ;
+    net:hasStructure "document-02" .
+
+net:has_relation_value a owl:AnnotationProperty ;
+    rdfs:label "has relation value" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:value_John_blankNode a net:Value_Net ;
+    net:coverAmrValue :value_John ;
+    net:hasNaming "John" ;
+    net:hasStructure "document-02" ;
+    net:hasValueLabel "John" .
+
+:AMR_Element a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Variable a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+net:Relation a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+:AMR_NonCore_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+sys:Out_Structure a owl:Class ;
+    rdfs:label "Output Ontology Structure" .
+
+net:atomProperty_play_p a net:Atom_Property_Net ;
+    :role_ARG0 net:atomClass_person_p2,
+        net:individual_John_p2 ;
+    :role_ARG1 net:atomClass_movie_m ;
+    net:coverBaseNode :leaf_play-02_p ;
+    net:coverNode :leaf_play-02_p ;
+    net:hasNaming "play" ;
+    net:hasPropertyName "play" ;
+    net:hasPropertyName01 "playing" ;
+    net:hasPropertyName10 "play-by" ;
+    net:hasPropertyName12 "play-of" ;
+    net:hasPropertyType owl:ObjectProperty ;
+    net:hasStructure "document-02" ;
+    net:isCoreRoleLinked "true" ;
+    net:targetArgumentNode :leaf_movie_m,
+        :leaf_person_p2 .
+
+net:netProperty a owl:AnnotationProperty ;
+    rdfs:label "netProperty" .
+
+:AMR_Leaf a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_ObjectProperty a owl:ObjectProperty ;
+    rdfs:subPropertyOf owl:topObjectProperty .
+
+:AMR_Structure a owl:Class .
+
+cprm:configParamProperty a rdf:Property ;
+    rdfs:label "Config Parameter Property" .
+
+net:atomClass_movie_m a net:Atom_Class_Net ;
+    net:coverBaseNode :leaf_movie_m ;
+    net:coverNode :leaf_movie_m ;
+    net:hasClassName "movie" ;
+    net:hasNaming "movie" ;
+    net:hasStructure "document-02" .
+
+rdf:Property a owl:Class .
+
+:AMR_Edge a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Relation a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:leaf_movie_m a :AMR_Leaf ;
+    :hasConcept :concept_movie ;
+    :hasVariable :variable_m .
+
+:leaf_person_p2 a :AMR_Leaf ;
+    :edge_p2_name_John :value_John ;
+    :hasConcept :concept_person ;
+    :hasVariable :variable_p2 .
+
+:leaf_play-02_p a :AMR_Leaf ;
+    :edge_p_ARG0_p2 :leaf_person_p2 ;
+    :edge_p_ARG1_m :leaf_movie_m ;
+    :hasConcept :concept_play-02 ;
+    :hasVariable :variable_p .
+
+net:Net a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:has_object a owl:AnnotationProperty ;
+    rdfs:label "relation" ;
+    rdfs:subPropertyOf net:netProperty .
+
+:AMR_Op_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_AnnotationProperty a owl:AnnotationProperty .
+
+:AMR_Core_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Linked_Data a owl:Class .
+
+net:objectValue a owl:AnnotationProperty ;
+    rdfs:label "valuations"@fr ;
+    rdfs:subPropertyOf net:objectProperty .
+
+[] a owl:AllDisjointClasses ;
+    owl:members ( sys:Degree sys:Entity sys:Feature ) .
+
diff --git a/tests/dev_tests/test_data/odrl-rule-devGraph-3.result.ttl b/tests/dev_tests/test_data/odrl-rule-devGraph-3.result.ttl
new file mode 100644
index 0000000000000000000000000000000000000000..64383f897fae88b3e5910afb841b391e95ae692e
--- /dev/null
+++ b/tests/dev_tests/test_data/odrl-rule-devGraph-3.result.ttl
@@ -0,0 +1,986 @@
+@base <https://amr.tetras-libre.fr/rdf/odrl-rule-devGraph-3/result> .
+@prefix : <https://amr.tetras-libre.fr/rdf/schema#> .
+@prefix cprm: <https://tenet.tetras-libre.fr/config/parameters#> .
+@prefix net: <https://tenet.tetras-libre.fr/semantic-net#> .
+@prefix ns11: <http://amr.isi.edu/rdf/core-amr#> .
+@prefix ns2: <http://amr.isi.edu/rdf/amr-terms#> .
+@prefix ns3: <http://amr.isi.edu/frames/ld/v1.2.2/> .
+@prefix ns4: <http://amr.isi.edu/entity-types#> .
+@prefix owl: <http://www.w3.org/2002/07/owl#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix sys: <https://tenet.tetras-libre.fr/base-ontology#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+ns11:Concept a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Concept" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:Role a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/test-1#root01> ns11:hasID "test-1" ;
+    ns11:hasSentence "The sun is a star." ;
+    ns11:root <http://amr.isi.edu/amr_data/test-1#s> .
+
+<http://amr.isi.edu/amr_data/test-2#root01> ns11:hasID "test-2" ;
+    ns11:hasSentence "Earth is a planet." ;
+    ns11:root <http://amr.isi.edu/amr_data/test-2#p> .
+
+ns3:allow-01.ARG1 a ns3:FrameRole .
+
+ns3:play-01.ARG0 a ns3:FrameRole .
+
+ns3:play-01.ARG1 a ns3:FrameRole .
+
+ns2:domain a ns11:Role,
+        owl:AnnotationProperty,
+        owl:NamedIndividual .
+
+ns11:hasID a owl:AnnotationProperty .
+
+ns11:hasSentence a owl:AnnotationProperty .
+
+ns11:root a owl:AnnotationProperty .
+
+<https://amr.tetras-libre.fr/rdf/schema> a owl:Ontology ;
+    owl:versionIRI :0.1 .
+
+:AMR_DataProperty a owl:DatatypeProperty .
+
+:AMR_Prep_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:edge_a_ARG1_p a :AMR_Edge ;
+    :hasAmrRole :role_ARG1 ;
+    :hasRoleID "ARG1" .
+
+:edge_a_polarity_negative a :AMR_Edge ;
+    :hasAmrRole :role_polarity ;
+    :hasRoleID "polarity" .
+
+:edge_p2_name_John a :AMR_Edge ;
+    :hasAmrRole :role_name ;
+    :hasRoleID "name" .
+
+:edge_p_ARG0_p2 a :AMR_Edge ;
+    :hasAmrRole :role_ARG0 ;
+    :hasRoleID "ARG0" .
+
+:edge_p_ARG1_m a :AMR_Edge ;
+    :hasAmrRole :role_ARG1 ;
+    :hasRoleID "ARG1" .
+
+:fromAmrLkFramerole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRoot a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:getDirectPropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getInversePropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getPropertyType a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:hasConcept a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasConceptLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasEdgeLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasReification a owl:AnnotationProperty ;
+    rdfs:range xsd:boolean ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationDomain a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationRange a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasRelationName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasRoleID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRoleTag a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRolesetID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRootLeaf a owl:ObjectProperty ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasSentenceID a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasSentenceStatement a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasVariable a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:label a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction_and a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "and" ;
+    :label "conjunction-AND" .
+
+:phenomena_conjunction_or a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "or" ;
+    :label "conjunction-OR" .
+
+:phenomena_degree a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "have-degree-91" ;
+    :label "degree" .
+
+:phenomena_modality_obligation a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "obligate-01" ;
+    :label "obligation-modality" .
+
+:relation_domain a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "domain" .
+
+:relation_manner a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasManner" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "manner" .
+
+:relation_mod a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "mod" .
+
+:relation_name a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "name" .
+
+:relation_part a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasPart" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "part" .
+
+:relation_polarity a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "polarity" .
+
+:relation_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "quant" .
+
+:role_ARG2 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG2" .
+
+:role_ARG3 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG3" .
+
+:role_ARG4 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG4" .
+
+:role_ARG5 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG5" .
+
+:role_ARG6 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG6" .
+
+:role_ARG7 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG7" .
+
+:role_ARG8 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG8" .
+
+:role_ARG9 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG9" .
+
+:role_domain a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :hasRelationName "domain" ;
+    :label "domain" ;
+    :toReifyAsConcept "domain" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_have-degree-91 a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :getPropertyType <net:specificProperty> .
+
+:role_manner a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "manner" ;
+    :getPropertyType owl:DataProperty ;
+    :label "manner" ;
+    :toReifyAsConcept "manner" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_mod a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasFeature"^^xsd:string ;
+    :getPropertyType rdfs:subClassOf,
+        owl:ObjectProperty ;
+    :label "mod" ;
+    :toReifyAsConcept "mod" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_op1 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op1" .
+
+:role_op2 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op2" .
+
+:role_op3 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op3" .
+
+:role_op4 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op4" .
+
+:role_op5 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op5" .
+
+:role_op6 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op6" .
+
+:role_op7 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op7" .
+
+:role_op8 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op8" .
+
+:role_op9 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op9" .
+
+:role_part a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasPart"^^xsd:string ;
+    :getInversePropertyName "partOf"^^xsd:string ;
+    :getPropertyType owl:ObjectProperty ;
+    :toReifyAsConcept "part" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "quant" .
+
+:root_document-03 a :AMR_Root ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-03#root01> ;
+    :hasRootLeaf :leaf_allow-01_a ;
+    :hasSentenceID "document-03" ;
+    :hasSentenceStatement "John is not allowed to play the movie.." .
+
+:toReifyAsConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithBaseEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithHeadEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+<https://tenet.tetras-libre.fr/base-ontology> a owl:Ontology .
+
+sys:Event a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Undetermined_Thing a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:fromStructure a owl:AnnotationProperty ;
+    rdfs:subPropertyOf sys:Out_AnnotationProperty .
+
+sys:hasDegree a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+sys:hasFeature a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+<https://tenet.tetras-libre.fr/config/parameters> a owl:Ontology .
+
+cprm:Config_Parameters a owl:Class ;
+    cprm:baseURI "https://tenet.tetras-libre.fr/" ;
+    cprm:netURI "https://tenet.tetras-libre.fr/semantic-net#" ;
+    cprm:newClassRef "new-class#" ;
+    cprm:newPropertyRef "new-relation#" ;
+    cprm:objectRef "object_" ;
+    cprm:targetOntologyURI "https://tenet.tetras-libre.fr/base-ontology/" .
+
+cprm:baseURI a rdf:Property ;
+    rdfs:label "Base URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:netURI a rdf:Property ;
+    rdfs:label "Net URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newClassRef a rdf:Property ;
+    rdfs:label "Reference for a new class" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newPropertyRef a rdf:Property ;
+    rdfs:label "Reference for a new property" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:objectRef a rdf:Property ;
+    rdfs:label "Object Reference" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:targetOntologyURI a rdf:Property ;
+    rdfs:label "URI of classes in target ontology" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+<https://tenet.tetras-libre.fr/semantic-net> a owl:Ontology .
+
+net:Composite_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Feature a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:abstractionClass a owl:AnnotationProperty ;
+    rdfs:label "abstraction class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:atomType a owl:AnnotationProperty ;
+    rdfs:label "atom type" ;
+    rdfs:subPropertyOf net:objectType .
+
+net:compositeProperty_person-play-movie_p2 a net:Composite_Property_Net ;
+    :role_name net:value_John_blankNode ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomClass_person_p2,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_movie_m,
+        :leaf_person_p2,
+        :leaf_play-01_p ;
+    net:hasNaming "person-play-movie" ;
+    net:hasRestriction net:restriction_play-movie_p ;
+    net:hasStructure "document-03" .
+
+net:entityClass a owl:AnnotationProperty ;
+    rdfs:label "entity class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:featureClass a owl:AnnotationProperty ;
+    rdfs:label "feature class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_atom a owl:AnnotationProperty ;
+    rdfs:label "has atom" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_class a owl:AnnotationProperty ;
+    rdfs:label "is class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_class_name a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:has_value .
+
+net:has_class_uri a owl:AnnotationProperty ;
+    rdfs:label "class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_concept a owl:AnnotationProperty ;
+    rdfs:label "concept "@fr ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_entity a owl:AnnotationProperty ;
+    rdfs:label "has entity" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_feature a owl:AnnotationProperty ;
+    rdfs:label "has feature" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_instance a owl:AnnotationProperty ;
+    rdfs:label "entity instance" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_instance_uri a owl:AnnotationProperty ;
+    rdfs:label "instance uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_item a owl:AnnotationProperty ;
+    rdfs:label "has item" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_mother_class a owl:AnnotationProperty ;
+    rdfs:label "has mother class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_mother_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_node a owl:AnnotationProperty ;
+    rdfs:label "UNL Node" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_parent a owl:AnnotationProperty ;
+    rdfs:label "has parent" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_parent_class a owl:AnnotationProperty ;
+    rdfs:label "parent class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_parent_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_possible_domain a owl:AnnotationProperty ;
+    rdfs:label "has possible domain" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_possible_range a owl:AnnotationProperty ;
+    rdfs:label "has possible range" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_relation a owl:AnnotationProperty ;
+    rdfs:label "has relation" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_source a owl:AnnotationProperty ;
+    rdfs:label "has source" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_structure a owl:AnnotationProperty ;
+    rdfs:label "Linguistic Structure (in UNL Document)" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_target a owl:AnnotationProperty ;
+    rdfs:label "has target" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:inverse_direction a owl:NamedIndividual .
+
+net:listGuiding a owl:AnnotationProperty ;
+    rdfs:label "Guiding connector of a list (or, and)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat1 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 1)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat2 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 2)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:normal_direction a owl:NamedIndividual .
+
+net:rule_prohibition_a a net:Rule_Net ;
+    net:composeFrom net:action_play_p,
+        net:phenomena_prohibition-modality_a ;
+    net:coverBaseNode :leaf_allow-01_a ;
+    net:coverNode :leaf_allow-01_a,
+        :leaf_movie_m,
+        :leaf_play-01_p ;
+    net:hasNaming "prohibition" ;
+    net:hasRuleActionURI net:action_play_p ;
+    net:hasRuleRelationName "prohibition" ;
+    net:hasStructure "document-03" .
+
+net:type a owl:AnnotationProperty ;
+    rdfs:label "type "@fr ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:verbClass a owl:AnnotationProperty ;
+    rdfs:label "verb class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+<http://amr.isi.edu/amr_data/document-03#root01> a ns11:AMR ;
+    ns11:has-id "document-03" ;
+    ns11:has-sentence "John is not allowed to play the movie.." ;
+    ns11:root <http://amr.isi.edu/amr_data/document-03#a> .
+
+<http://amr.isi.edu/amr_data/test-1#s> ns2:domain <http://amr.isi.edu/amr_data/test-1#s2> .
+
+<http://amr.isi.edu/amr_data/test-2#p> rdfs:label "Earth" .
+
+ns11:AMR a owl:Class ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:NamedEntity a ns11:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-EntityType",
+        "AMR-Term" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Predicat_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Relation_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Root a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:concept_allow-01 rdfs:subClassOf :AMR_Relation_Concept ;
+    :fromAmrLk ns3:allow-01 ;
+    :hasPhenomenaLink :phenomena_modality_possible ;
+    :label "allow-01" .
+
+:concept_movie rdfs:subClassOf :AMR_Term_Concept ;
+    :fromAmrLk ns2:movie ;
+    :label "movie" .
+
+:concept_person rdfs:subClassOf :AMR_Term_Concept ;
+    :fromAmrLk ns4:person ;
+    :label "person" .
+
+:concept_play-01 rdfs:subClassOf :AMR_Predicat_Concept ;
+    :fromAmrLk ns3:play-01 ;
+    :label "play-01" .
+
+:phenomena_modality_prohibition a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :label "prohibition-modality" .
+
+:role_ARG0 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG0" .
+
+:role_name a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :label "name" .
+
+:role_polarity a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "polarity" .
+
+:variable_a a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-03#a> ;
+    :label "a" .
+
+:variable_m a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-03#m> ;
+    :label "m" .
+
+:variable_p a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-03#p> ;
+    :label "p" .
+
+:variable_p2 a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-03#p2> ;
+    :label "p2" ;
+    :name "John" .
+
+sys:Degree a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Entity a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Feature a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Out_AnnotationProperty a owl:AnnotationProperty .
+
+net:Action_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Atom_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Composite_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Individual_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Rule_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:has_value a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:individual_John_p2 a net:Individual_Net ;
+    :role_name net:value_John_blankNode ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_person_p2 ;
+    net:hasIndividualLabel "John" ;
+    net:hasMotherClassNet net:atomClass_person_p2 ;
+    net:hasNaming "John" ;
+    net:hasStructure "document-03" .
+
+net:objectType a owl:AnnotationProperty ;
+    rdfs:label "object type" ;
+    rdfs:subPropertyOf net:objectProperty .
+
+net:phenomena_possible-modality_a a net:Deprecated_Net,
+        net:Phenomena_Net ;
+    :role_ARG1 net:action_play_p,
+        net:atomProperty_play_p ;
+    :role_polarity net:value_negative_blankNode ;
+    net:coverBaseNode :leaf_allow-01_a ;
+    net:coverNode :leaf_allow-01_a ;
+    net:hasNaming "possible-modality" ;
+    net:hasPhenomenaRef "allow-01" ;
+    net:hasPhenomenaType :phenomena_modality_possible ;
+    net:hasStructure "document-03" .
+
+net:phenomena_prohibition-modality_a a net:Phenomena_Net ;
+    :role_ARG1 net:action_play_p,
+        net:atomProperty_play_p ;
+    :role_polarity net:value_negative_blankNode ;
+    net:composeFrom net:phenomena_possible-modality_a,
+        net:value_negative_blankNode ;
+    net:coverBaseNode :leaf_allow-01_a ;
+    net:coverNode :leaf_allow-01_a ;
+    net:hasNaming "prohibition-modality" ;
+    net:hasPhenomenaRef "not-[rdflib.term.Literal('allow-01')]" ;
+    net:hasPhenomenaType :phenomena_modality_prohibition ;
+    net:hasStructure "document-03" .
+
+net:restriction_play-movie_p a net:Restriction_Net ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_play-01_p ;
+    net:coverNode :leaf_movie_m,
+        :leaf_play-01_p ;
+    net:hasNaming "play-movie" ;
+    net:hasRestrictionNetValue net:atomClass_movie_m ;
+    net:hasRestrictionOnProperty net:atomProperty_play_p ;
+    net:hasStructure "document-03" .
+
+<http://amr.isi.edu/amr_data/document-03#a> a ns3:allow-01 ;
+    ns3:allow-01.ARG1 <http://amr.isi.edu/amr_data/document-03#p> ;
+    ns2:polarity "-" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-03#m> a ns2:movie ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-03#p> a ns3:play-01 ;
+    ns3:play-01.ARG0 <http://amr.isi.edu/amr_data/document-03#p2> ;
+    ns3:play-01.ARG1 <http://amr.isi.edu/amr_data/document-03#m> ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-03#p2> a ns4:person ;
+    rdfs:label "John" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns4:person a ns11:NamedEntity ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns3:allow-01 a ns11:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns3:play-01 a ns11:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns2:movie a ns11:Concept ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:Frame a ns11:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Frame" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Term_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Value a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:hasLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "contrast-01",
+        "either",
+        "neither" ;
+    :label "conjunction" .
+
+:phenomena_modality_possible a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "allow-01",
+        "grant-01",
+        "likely-01",
+        "permit-01",
+        "possible-01" ;
+    :label "possible-modality" .
+
+:role_ARG1 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG1" .
+
+:value_John a :AMR_Value ;
+    rdfs:label "John" .
+
+:value_negative a :AMR_Value ;
+    rdfs:label "negative" .
+
+sys:Out_ObjectProperty a owl:ObjectProperty .
+
+net:Atom_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Class_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Deprecated_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Phenomena_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Property_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Value_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:objectProperty a owl:AnnotationProperty ;
+    rdfs:label "object attribute" .
+
+ns3:FrameRole a ns11:Role,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:AMR_Phenomena a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Specific_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:fromAmrLk a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:getProperty a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationDefinition a owl:AnnotationProperty ;
+    rdfs:range rdfs:Literal ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_modality a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena .
+
+:toReify a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+net:Net_Structure a owl:Class ;
+    rdfs:label "Semantic Net Structure" ;
+    rdfs:comment "A semantic net captures a set of nodes, and associates this set with type(s) and value(s)." .
+
+net:atomClass_person_p2 a net:Atom_Class_Net,
+        net:Deprecated_Net ;
+    :role_name net:value_John_blankNode ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_person_p2 ;
+    net:hasClassName "person" ;
+    net:hasNaming "person" ;
+    net:hasStructure "document-03" .
+
+net:has_relation_value a owl:AnnotationProperty ;
+    rdfs:label "has relation value" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:value_John_blankNode a net:Value_Net ;
+    net:coverAmrValue :value_John ;
+    net:hasNaming "John" ;
+    net:hasStructure "document-03" ;
+    net:hasValueLabel "John" .
+
+net:value_negative_blankNode a net:Value_Net ;
+    net:coverAmrValue :value_negative ;
+    net:hasNaming "negative" ;
+    net:hasStructure "document-03" ;
+    net:hasValueLabel "negative" .
+
+:AMR_Element a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Variable a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+net:Relation a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:action_play_p a net:Action_Net ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_play-01_p ;
+    net:coverNode :leaf_movie_m,
+        :leaf_play-01_p ;
+    net:hasActionName "play" ;
+    net:hasNaming "play" ;
+    net:hasStructure "document-03" ;
+    net:hasTargetNet net:atomClass_movie_m .
+
+:AMR_NonCore_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+sys:Out_Structure a owl:Class ;
+    rdfs:label "Output Ontology Structure" .
+
+net:netProperty a owl:AnnotationProperty ;
+    rdfs:label "netProperty" .
+
+:AMR_Leaf a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_ObjectProperty a owl:ObjectProperty ;
+    rdfs:subPropertyOf owl:topObjectProperty .
+
+:AMR_Structure a owl:Class .
+
+cprm:configParamProperty a rdf:Property ;
+    rdfs:label "Config Parameter Property" .
+
+net:atomClass_movie_m a net:Atom_Class_Net ;
+    net:coverBaseNode :leaf_movie_m ;
+    net:coverNode :leaf_movie_m ;
+    net:hasClassName "movie" ;
+    net:hasNaming "movie" ;
+    net:hasStructure "document-03" .
+
+net:atomProperty_play_p a net:Atom_Property_Net ;
+    :role_ARG0 net:atomClass_person_p2,
+        net:individual_John_p2 ;
+    :role_ARG1 net:atomClass_movie_m ;
+    net:coverBaseNode :leaf_play-01_p ;
+    net:coverNode :leaf_play-01_p ;
+    net:hasNaming "play" ;
+    net:hasPropertyName "play" ;
+    net:hasPropertyName01 "playing" ;
+    net:hasPropertyName10 "play-by" ;
+    net:hasPropertyName12 "play-of" ;
+    net:hasPropertyType owl:ObjectProperty ;
+    net:hasStructure "document-03" ;
+    net:isCoreRoleLinked "true" ;
+    net:targetArgumentNode :leaf_movie_m,
+        :leaf_person_p2 .
+
+rdf:Property a owl:Class .
+
+:AMR_Relation a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:leaf_allow-01_a a :AMR_Leaf ;
+    :edge_a_ARG1_p :leaf_play-01_p ;
+    :edge_a_polarity_negative :value_negative ;
+    :hasConcept :concept_allow-01 ;
+    :hasVariable :variable_a .
+
+:AMR_Edge a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:leaf_movie_m a :AMR_Leaf ;
+    :hasConcept :concept_movie ;
+    :hasVariable :variable_m .
+
+:leaf_person_p2 a :AMR_Leaf ;
+    :edge_p2_name_John :value_John ;
+    :hasConcept :concept_person ;
+    :hasVariable :variable_p2 .
+
+net:Net a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:has_object a owl:AnnotationProperty ;
+    rdfs:label "relation" ;
+    rdfs:subPropertyOf net:netProperty .
+
+:AMR_Op_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:leaf_play-01_p a :AMR_Leaf ;
+    :edge_p_ARG0_p2 :leaf_person_p2 ;
+    :edge_p_ARG1_m :leaf_movie_m ;
+    :hasConcept :concept_play-01 ;
+    :hasVariable :variable_p .
+
+:AMR_AnnotationProperty a owl:AnnotationProperty .
+
+:AMR_Core_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Linked_Data a owl:Class .
+
+net:objectValue a owl:AnnotationProperty ;
+    rdfs:label "valuations"@fr ;
+    rdfs:subPropertyOf net:objectProperty .
+
+[] a owl:AllDisjointClasses ;
+    owl:members ( sys:Degree sys:Entity sys:Feature ) .
+
diff --git a/tests/dev_tests/test_data/odrl-rule-devGraph-3.ttl b/tests/dev_tests/test_data/odrl-rule-devGraph-3.ttl
new file mode 100644
index 0000000000000000000000000000000000000000..94b7688083a2ff7a617fbd1e9d0b02a1d1574df3
--- /dev/null
+++ b/tests/dev_tests/test_data/odrl-rule-devGraph-3.ttl
@@ -0,0 +1,974 @@
+@base <https://amr.tetras-libre.fr/rdf/odrl-action-devGraph-3/result> .
+@prefix : <https://amr.tetras-libre.fr/rdf/schema#> .
+@prefix cprm: <https://tenet.tetras-libre.fr/config/parameters#> .
+@prefix net: <https://tenet.tetras-libre.fr/semantic-net#> .
+@prefix ns11: <http://amr.isi.edu/rdf/core-amr#> .
+@prefix ns2: <http://amr.isi.edu/rdf/amr-terms#> .
+@prefix ns3: <http://amr.isi.edu/frames/ld/v1.2.2/> .
+@prefix ns4: <http://amr.isi.edu/entity-types#> .
+@prefix owl: <http://www.w3.org/2002/07/owl#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix sys: <https://tenet.tetras-libre.fr/base-ontology#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+ns11:Concept a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Concept" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:Role a rdfs:Class,
+        owl:Class ;
+    rdfs:label "AMR-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/test-1#root01> ns11:hasID "test-1" ;
+    ns11:hasSentence "The sun is a star." ;
+    ns11:root <http://amr.isi.edu/amr_data/test-1#s> .
+
+<http://amr.isi.edu/amr_data/test-2#root01> ns11:hasID "test-2" ;
+    ns11:hasSentence "Earth is a planet." ;
+    ns11:root <http://amr.isi.edu/amr_data/test-2#p> .
+
+ns3:allow-01.ARG1 a ns3:FrameRole .
+
+ns3:play-01.ARG0 a ns3:FrameRole .
+
+ns3:play-01.ARG1 a ns3:FrameRole .
+
+ns2:domain a ns11:Role,
+        owl:AnnotationProperty,
+        owl:NamedIndividual .
+
+ns11:hasID a owl:AnnotationProperty .
+
+ns11:hasSentence a owl:AnnotationProperty .
+
+ns11:root a owl:AnnotationProperty .
+
+<https://amr.tetras-libre.fr/rdf/schema> a owl:Ontology ;
+    owl:versionIRI :0.1 .
+
+:AMR_DataProperty a owl:DatatypeProperty .
+
+:AMR_Prep_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:edge_a_ARG1_p a :AMR_Edge ;
+    :hasAmrRole :role_ARG1 ;
+    :hasRoleID "ARG1" .
+
+:edge_a_polarity_negative a :AMR_Edge ;
+    :hasAmrRole :role_polarity ;
+    :hasRoleID "polarity" .
+
+:edge_p2_name_John a :AMR_Edge ;
+    :hasAmrRole :role_name ;
+    :hasRoleID "name" .
+
+:edge_p_ARG0_p2 a :AMR_Edge ;
+    :hasAmrRole :role_ARG0 ;
+    :hasRoleID "ARG0" .
+
+:edge_p_ARG1_m a :AMR_Edge ;
+    :hasAmrRole :role_ARG1 ;
+    :hasRoleID "ARG1" .
+
+:fromAmrLkFramerole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRole a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:fromAmrLkRoot a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :fromAmrLk .
+
+:getDirectPropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getInversePropertyName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:getPropertyType a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :getProperty .
+
+:hasConcept a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasConceptLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasEdgeLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasLink .
+
+:hasReification a owl:AnnotationProperty ;
+    rdfs:range xsd:boolean ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationDomain a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasReificationRange a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :hasReificationDefinition .
+
+:hasRelationName a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasRoleID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRoleTag a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRolesetID a owl:ObjectProperty ;
+    rdfs:domain :AMR_Edge ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasRootLeaf a owl:ObjectProperty ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:hasSentenceID a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasSentenceStatement a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasVariable a owl:ObjectProperty ;
+    rdfs:domain :AMR_Leaf ;
+    rdfs:subPropertyOf :AMR_ObjectProperty .
+
+:label a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction_and a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "and" ;
+    :label "conjunction-AND" .
+
+:phenomena_conjunction_or a owl:Class ;
+    rdfs:subClassOf :phenomena_conjunction ;
+    :hasConceptLink "or" ;
+    :label "conjunction-OR" .
+
+:phenomena_degree a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "have-degree-91" ;
+    :label "degree" .
+
+:phenomena_modality_obligation a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "obligate-01" ;
+    :label "obligation-modality" .
+
+:relation_domain a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "domain" .
+
+:relation_manner a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasManner" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "manner" .
+
+:relation_mod a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "mod" .
+
+:relation_name a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "name" .
+
+:relation_part a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification true ;
+    :hasReificationConcept "hasPart" ;
+    :hasReificationDomain "ARG1" ;
+    :hasReificationRange "ARG2" ;
+    :hasRelationName "part" .
+
+:relation_polarity a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "polarity" .
+
+:relation_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Relation ;
+    :hasReification false ;
+    :hasRelationName "quant" .
+
+:role_ARG2 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG2" .
+
+:role_ARG3 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG3" .
+
+:role_ARG4 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG4" .
+
+:role_ARG5 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG5" .
+
+:role_ARG6 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG6" .
+
+:role_ARG7 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG7" .
+
+:role_ARG8 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG8" .
+
+:role_ARG9 a owl:Class ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG9" .
+
+:role_domain a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :hasRelationName "domain" ;
+    :label "domain" ;
+    :toReifyAsConcept "domain" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_have-degree-91 a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :getPropertyType <net:specificProperty> .
+
+:role_manner a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "manner" ;
+    :getPropertyType owl:DataProperty ;
+    :label "manner" ;
+    :toReifyAsConcept "manner" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_mod a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasFeature"^^xsd:string ;
+    :getPropertyType rdfs:subClassOf,
+        owl:ObjectProperty ;
+    :label "mod" ;
+    :toReifyAsConcept "mod" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_op1 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op1" .
+
+:role_op2 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op2" .
+
+:role_op3 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op3" .
+
+:role_op4 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op4" .
+
+:role_op5 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op5" .
+
+:role_op6 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op6" .
+
+:role_op7 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op7" .
+
+:role_op8 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op8" .
+
+:role_op9 a owl:Class ;
+    rdfs:subClassOf :AMR_Op_Role ;
+    :label "op9" .
+
+:role_part a owl:Class ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :getDirectPropertyName "hasPart"^^xsd:string ;
+    :getInversePropertyName "partOf"^^xsd:string ;
+    :getPropertyType owl:ObjectProperty ;
+    :toReifyAsConcept "part" ;
+    :toReifyWithBaseEdge "ARG0" ;
+    :toReifyWithHeadEdge "ARG1" .
+
+:role_quant a owl:Class ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "quant" .
+
+:root_document-03 a :AMR_Root ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-03#root01> ;
+    :hasRootLeaf :leaf_allow-01_a ;
+    :hasSentenceID "document-03" ;
+    :hasSentenceStatement "John is not allowed to play the movie.." .
+
+:toReifyAsConcept a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithBaseEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+:toReifyWithHeadEdge a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :toReify .
+
+<https://tenet.tetras-libre.fr/base-ontology> a owl:Ontology .
+
+sys:Event a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Undetermined_Thing a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:fromStructure a owl:AnnotationProperty ;
+    rdfs:subPropertyOf sys:Out_AnnotationProperty .
+
+sys:hasDegree a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+sys:hasFeature a owl:ObjectProperty ;
+    rdfs:subPropertyOf sys:Out_ObjectProperty .
+
+<https://tenet.tetras-libre.fr/config/parameters> a owl:Ontology .
+
+cprm:Config_Parameters a owl:Class ;
+    cprm:baseURI "https://tenet.tetras-libre.fr/" ;
+    cprm:netURI "https://tenet.tetras-libre.fr/semantic-net#" ;
+    cprm:newClassRef "new-class#" ;
+    cprm:newPropertyRef "new-relation#" ;
+    cprm:objectRef "object_" ;
+    cprm:targetOntologyURI "https://tenet.tetras-libre.fr/base-ontology/" .
+
+cprm:baseURI a rdf:Property ;
+    rdfs:label "Base URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:netURI a rdf:Property ;
+    rdfs:label "Net URI" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newClassRef a rdf:Property ;
+    rdfs:label "Reference for a new class" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:newPropertyRef a rdf:Property ;
+    rdfs:label "Reference for a new property" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:objectRef a rdf:Property ;
+    rdfs:label "Object Reference" ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+cprm:targetOntologyURI a rdf:Property ;
+    rdfs:label "URI of classes in target ontology" ;
+    rdfs:domain cprm:Frame ;
+    rdfs:range xsd:string ;
+    rdfs:subPropertyOf cprm:configParamProperty .
+
+<https://tenet.tetras-libre.fr/semantic-net> a owl:Ontology .
+
+net:Composite_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Feature a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:Rule_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:abstractionClass a owl:AnnotationProperty ;
+    rdfs:label "abstraction class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:atomType a owl:AnnotationProperty ;
+    rdfs:label "atom type" ;
+    rdfs:subPropertyOf net:objectType .
+
+net:compositeProperty_person-play-movie_p2 a net:Composite_Property_Net ;
+    :role_name net:value_John_blankNode ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomClass_person_p2,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_movie_m,
+        :leaf_person_p2,
+        :leaf_play-01_p ;
+    net:hasNaming "person-play-movie" ;
+    net:hasRestriction net:restriction_play-movie_p ;
+    net:hasStructure "document-03" .
+
+net:entityClass a owl:AnnotationProperty ;
+    rdfs:label "entity class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:featureClass a owl:AnnotationProperty ;
+    rdfs:label "feature class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_atom a owl:AnnotationProperty ;
+    rdfs:label "has atom" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_class a owl:AnnotationProperty ;
+    rdfs:label "is class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_class_name a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:has_value .
+
+net:has_class_uri a owl:AnnotationProperty ;
+    rdfs:label "class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_concept a owl:AnnotationProperty ;
+    rdfs:label "concept "@fr ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_entity a owl:AnnotationProperty ;
+    rdfs:label "has entity" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_feature a owl:AnnotationProperty ;
+    rdfs:label "has feature" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_instance a owl:AnnotationProperty ;
+    rdfs:label "entity instance" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_instance_uri a owl:AnnotationProperty ;
+    rdfs:label "instance uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_item a owl:AnnotationProperty ;
+    rdfs:label "has item" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_mother_class a owl:AnnotationProperty ;
+    rdfs:label "has mother class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_mother_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_node a owl:AnnotationProperty ;
+    rdfs:label "UNL Node" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_parent a owl:AnnotationProperty ;
+    rdfs:label "has parent" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_parent_class a owl:AnnotationProperty ;
+    rdfs:label "parent class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_parent_class_uri a owl:AnnotationProperty ;
+    rdfs:label "parent class uri" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:has_possible_domain a owl:AnnotationProperty ;
+    rdfs:label "has possible domain" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_possible_range a owl:AnnotationProperty ;
+    rdfs:label "has possible range" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:has_relation a owl:AnnotationProperty ;
+    rdfs:label "has relation" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_source a owl:AnnotationProperty ;
+    rdfs:label "has source" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:has_structure a owl:AnnotationProperty ;
+    rdfs:label "Linguistic Structure (in UNL Document)" ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:has_target a owl:AnnotationProperty ;
+    rdfs:label "has target" ;
+    rdfs:subPropertyOf net:has_relation_value .
+
+net:inverse_direction a owl:NamedIndividual .
+
+net:listGuiding a owl:AnnotationProperty ;
+    rdfs:label "Guiding connector of a list (or, and)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat1 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 1)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:modCat2 a owl:AnnotationProperty ;
+    rdfs:label "Modality Category (level 2)" ;
+    rdfs:subPropertyOf net:objectValue .
+
+net:normal_direction a owl:NamedIndividual .
+
+net:phenomena_prohibition-modality_a a net:Phenomena_Net ;
+    :role_ARG1 net:action_play_p,
+        net:atomProperty_play_p ;
+    :role_polarity net:value_negative_blankNode ;
+    net:composeFrom net:phenomena_possible-modality_a,
+        net:value_negative_blankNode ;
+    net:coverBaseNode :leaf_allow-01_a ;
+    net:coverNode :leaf_allow-01_a ;
+    net:hasNaming "prohibition-modality" ;
+    net:hasPhenomenaRef "not-[rdflib.term.Literal('allow-01')]" ;
+    net:hasPhenomenaType :phenomena_modality_prohibition ;
+    net:hasStructure "document-03" .
+
+net:type a owl:AnnotationProperty ;
+    rdfs:label "type "@fr ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:verbClass a owl:AnnotationProperty ;
+    rdfs:label "verb class" ;
+    rdfs:subPropertyOf net:objectValue .
+
+<http://amr.isi.edu/amr_data/document-03#root01> a ns11:AMR ;
+    ns11:has-id "document-03" ;
+    ns11:has-sentence "John is not allowed to play the movie.." ;
+    ns11:root <http://amr.isi.edu/amr_data/document-03#a> .
+
+<http://amr.isi.edu/amr_data/test-1#s> ns2:domain <http://amr.isi.edu/amr_data/test-1#s2> .
+
+<http://amr.isi.edu/amr_data/test-2#p> rdfs:label "Earth" .
+
+ns11:AMR a owl:Class ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:NamedEntity a ns11:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-EntityType",
+        "AMR-Term" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Predicat_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Relation_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Root a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:concept_allow-01 rdfs:subClassOf :AMR_Relation_Concept ;
+    :fromAmrLk ns3:allow-01 ;
+    :hasPhenomenaLink :phenomena_modality_possible ;
+    :label "allow-01" .
+
+:concept_movie rdfs:subClassOf :AMR_Term_Concept ;
+    :fromAmrLk ns2:movie ;
+    :label "movie" .
+
+:concept_person rdfs:subClassOf :AMR_Term_Concept ;
+    :fromAmrLk ns4:person ;
+    :label "person" .
+
+:concept_play-01 rdfs:subClassOf :AMR_Predicat_Concept ;
+    :fromAmrLk ns3:play-01 ;
+    :label "play-01" .
+
+:phenomena_modality_prohibition a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :label "prohibition-modality" .
+
+:role_ARG0 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG0" .
+
+:role_name a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_NonCore_Role ;
+    :label "name" .
+
+:role_polarity a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Specific_Role ;
+    :label "polarity" .
+
+:variable_a a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-03#a> ;
+    :label "a" .
+
+:variable_m a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-03#m> ;
+    :label "m" .
+
+:variable_p a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-03#p> ;
+    :label "p" .
+
+:variable_p2 a :AMR_Variable ;
+    :fromAmrLk <http://amr.isi.edu/amr_data/document-03#p2> ;
+    :label "p2" ;
+    :name "John" .
+
+sys:Degree a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Entity a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Feature a owl:Class ;
+    rdfs:subClassOf sys:Out_Structure .
+
+sys:Out_AnnotationProperty a owl:AnnotationProperty .
+
+net:Action_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Atom_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Composite_Property_Net a owl:Class ;
+    rdfs:subClassOf net:Property_Net .
+
+net:Individual_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:has_value a owl:AnnotationProperty ;
+    rdfs:subPropertyOf net:netProperty .
+
+net:individual_John_p2 a net:Individual_Net ;
+    :role_name net:value_John_blankNode ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_person_p2 ;
+    net:hasIndividualLabel "John" ;
+    net:hasMotherClassNet net:atomClass_person_p2 ;
+    net:hasNaming "John" ;
+    net:hasStructure "document-03" .
+
+net:objectType a owl:AnnotationProperty ;
+    rdfs:label "object type" ;
+    rdfs:subPropertyOf net:objectProperty .
+
+net:phenomena_possible-modality_a a net:Deprecated_Net,
+        net:Phenomena_Net ;
+    :role_ARG1 net:action_play_p,
+        net:atomProperty_play_p ;
+    :role_polarity net:value_negative_blankNode ;
+    net:coverBaseNode :leaf_allow-01_a ;
+    net:coverNode :leaf_allow-01_a ;
+    net:hasNaming "possible-modality" ;
+    net:hasPhenomenaRef "allow-01" ;
+    net:hasPhenomenaType :phenomena_modality_possible ;
+    net:hasStructure "document-03" .
+
+net:restriction_play-movie_p a net:Restriction_Net ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_play-01_p ;
+    net:coverNode :leaf_movie_m,
+        :leaf_play-01_p ;
+    net:hasNaming "play-movie" ;
+    net:hasRestrictionNetValue net:atomClass_movie_m ;
+    net:hasRestrictionOnProperty net:atomProperty_play_p ;
+    net:hasStructure "document-03" .
+
+<http://amr.isi.edu/amr_data/document-03#a> a ns3:allow-01 ;
+    ns3:allow-01.ARG1 <http://amr.isi.edu/amr_data/document-03#p> ;
+    ns2:polarity "-" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-03#m> a ns2:movie ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-03#p> a ns3:play-01 ;
+    ns3:play-01.ARG0 <http://amr.isi.edu/amr_data/document-03#p2> ;
+    ns3:play-01.ARG1 <http://amr.isi.edu/amr_data/document-03#m> ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+<http://amr.isi.edu/amr_data/document-03#p2> a ns4:person ;
+    rdfs:label "John" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns4:person a ns11:NamedEntity ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns3:allow-01 a ns11:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns3:play-01 a ns11:Frame ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns2:movie a ns11:Concept ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+ns11:Frame a ns11:Concept,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Frame" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Term_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Concept .
+
+:AMR_Value a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:hasLink a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_conjunction a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena ;
+    :hasConceptLink "contrast-01",
+        "either",
+        "neither" ;
+    :label "conjunction" .
+
+:phenomena_modality_possible a owl:Class ;
+    rdfs:subClassOf :phenomena_modality ;
+    :hasConceptLink "allow-01",
+        "grant-01",
+        "likely-01",
+        "permit-01",
+        "possible-01" ;
+    :label "possible-modality" .
+
+:role_ARG1 a owl:Class,
+        net:Relation ;
+    rdfs:subClassOf :AMR_Core_Role ;
+    :label "ARG1" .
+
+:value_John a :AMR_Value ;
+    rdfs:label "John" .
+
+:value_negative a :AMR_Value ;
+    rdfs:label "negative" .
+
+sys:Out_ObjectProperty a owl:ObjectProperty .
+
+net:Atom_Class_Net a owl:Class ;
+    rdfs:subClassOf net:Class_Net .
+
+net:Class_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Deprecated_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Phenomena_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Property_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:Value_Net a owl:Class ;
+    rdfs:subClassOf net:Net .
+
+net:action_play_p a net:Action_Net ;
+    net:composeFrom net:atomClass_movie_m,
+        net:atomProperty_play_p ;
+    net:coverBaseNode :leaf_play-01_p ;
+    net:coverNode :leaf_movie_m,
+        :leaf_play-01_p ;
+    net:hasActionName "play" ;
+    net:hasNaming "play" ;
+    net:hasStructure "document-03" ;
+    net:hasTargetNet net:atomClass_movie_m .
+
+net:objectProperty a owl:AnnotationProperty ;
+    rdfs:label "object attribute" .
+
+ns3:FrameRole a ns11:Role,
+        owl:Class,
+        owl:NamedIndividual ;
+    rdfs:label "AMR-PropBank-Role" ;
+    rdfs:subClassOf :AMR_Linked_Data .
+
+:AMR_Concept a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:AMR_Phenomena a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Specific_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:fromAmrLk a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:getProperty a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:hasReificationDefinition a owl:AnnotationProperty ;
+    rdfs:range rdfs:Literal ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+:phenomena_modality a owl:Class ;
+    rdfs:subClassOf :AMR_Phenomena .
+
+:toReify a owl:AnnotationProperty ;
+    rdfs:subPropertyOf :AMR_AnnotationProperty .
+
+net:Net_Structure a owl:Class ;
+    rdfs:label "Semantic Net Structure" ;
+    rdfs:comment "A semantic net captures a set of nodes, and associates this set with type(s) and value(s)." .
+
+net:atomClass_person_p2 a net:Atom_Class_Net,
+        net:Deprecated_Net ;
+    :role_name net:value_John_blankNode ;
+    net:coverBaseNode :leaf_person_p2 ;
+    net:coverNode :leaf_person_p2 ;
+    net:hasClassName "person" ;
+    net:hasNaming "person" ;
+    net:hasStructure "document-03" .
+
+net:has_relation_value a owl:AnnotationProperty ;
+    rdfs:label "has relation value" ;
+    rdfs:subPropertyOf net:has_object .
+
+net:value_John_blankNode a net:Value_Net ;
+    net:coverAmrValue :value_John ;
+    net:hasNaming "John" ;
+    net:hasStructure "document-03" ;
+    net:hasValueLabel "John" .
+
+net:value_negative_blankNode a net:Value_Net ;
+    net:coverAmrValue :value_negative ;
+    net:hasNaming "negative" ;
+    net:hasStructure "document-03" ;
+    net:hasValueLabel "negative" .
+
+:AMR_Element a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_Variable a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+net:Relation a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+:AMR_NonCore_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Element .
+
+:leaf_allow-01_a a :AMR_Leaf ;
+    :edge_a_ARG1_p :leaf_play-01_p ;
+    :edge_a_polarity_negative :value_negative ;
+    :hasConcept :concept_allow-01 ;
+    :hasVariable :variable_a .
+
+sys:Out_Structure a owl:Class ;
+    rdfs:label "Output Ontology Structure" .
+
+net:netProperty a owl:AnnotationProperty ;
+    rdfs:label "netProperty" .
+
+:AMR_Leaf a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:AMR_ObjectProperty a owl:ObjectProperty ;
+    rdfs:subPropertyOf owl:topObjectProperty .
+
+:AMR_Structure a owl:Class .
+
+cprm:configParamProperty a rdf:Property ;
+    rdfs:label "Config Parameter Property" .
+
+net:atomClass_movie_m a net:Atom_Class_Net ;
+    net:coverBaseNode :leaf_movie_m ;
+    net:coverNode :leaf_movie_m ;
+    net:hasClassName "movie" ;
+    net:hasNaming "movie" ;
+    net:hasStructure "document-03" .
+
+net:atomProperty_play_p a net:Atom_Property_Net ;
+    :role_ARG0 net:atomClass_person_p2,
+        net:individual_John_p2 ;
+    :role_ARG1 net:atomClass_movie_m ;
+    net:coverBaseNode :leaf_play-01_p ;
+    net:coverNode :leaf_play-01_p ;
+    net:hasNaming "play" ;
+    net:hasPropertyName "play" ;
+    net:hasPropertyName01 "playing" ;
+    net:hasPropertyName10 "play-by" ;
+    net:hasPropertyName12 "play-of" ;
+    net:hasPropertyType owl:ObjectProperty ;
+    net:hasStructure "document-03" ;
+    net:isCoreRoleLinked "true" ;
+    net:targetArgumentNode :leaf_movie_m,
+        :leaf_person_p2 .
+
+rdf:Property a owl:Class .
+
+:AMR_Relation a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:leaf_movie_m a :AMR_Leaf ;
+    :hasConcept :concept_movie ;
+    :hasVariable :variable_m .
+
+:AMR_Edge a owl:Class ;
+    rdfs:subClassOf :AMR_Structure .
+
+:leaf_person_p2 a :AMR_Leaf ;
+    :edge_p2_name_John :value_John ;
+    :hasConcept :concept_person ;
+    :hasVariable :variable_p2 .
+
+:leaf_play-01_p a :AMR_Leaf ;
+    :edge_p_ARG0_p2 :leaf_person_p2 ;
+    :edge_p_ARG1_m :leaf_movie_m ;
+    :hasConcept :concept_play-01 ;
+    :hasVariable :variable_p .
+
+net:Net a owl:Class ;
+    rdfs:subClassOf net:Net_Structure .
+
+net:has_object a owl:AnnotationProperty ;
+    rdfs:label "relation" ;
+    rdfs:subPropertyOf net:netProperty .
+
+:AMR_Op_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_AnnotationProperty a owl:AnnotationProperty .
+
+:AMR_Core_Role a owl:Class ;
+    rdfs:subClassOf :AMR_Role .
+
+:AMR_Linked_Data a owl:Class .
+
+net:objectValue a owl:AnnotationProperty ;
+    rdfs:label "valuations"@fr ;
+    rdfs:subPropertyOf net:objectProperty .
+
+[] a owl:AllDisjointClasses ;
+    owl:members ( sys:Degree sys:Entity sys:Feature ) .
+
diff --git a/tests/dev_tests/test_rule_odrl_rule.py b/tests/dev_tests/test_rule_odrl_rule.py
new file mode 100644
index 0000000000000000000000000000000000000000..0874408f616827a678063ae353d0b141fa8609a2
--- /dev/null
+++ b/tests/dev_tests/test_rule_odrl_rule.py
@@ -0,0 +1,148 @@
+#!/usr/bin/python3.10
+# -*-coding:Utf-8 -*
+
+#==============================================================================
+# TENET: Extraction Rule Test
+#------------------------------------------------------------------------------
+# Script to test rules under development
+#==============================================================================
+
+import subprocess, os
+from rdflib import Graph, Namespace
+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/'
+
+TEST_FILE_NAME_1 = 'odrl-rule-devGraph-1'
+TEST_FILE_NAME_2 = 'odrl-rule-devGraph-2'
+TEST_FILE_NAME_3 = 'odrl-rule-devGraph-3'
+
+from context import tenet
+from tenet.scheme.amr_clara_rule.transduction import odrl_rule_extractor as rule_1
+from tenet.scheme import amr_clara_rule as rule
+
+from tenet.transduction import net
+from tenet.transduction.rdfterm_computer import __update_uri_with_prefix
+from tenet.transduction import prefix_handle
+
+
+
+#==============================================================================
+# Useful Methods
+#==============================================================================
+
+def load_test_graph(test_file_name):
+    print(f'\n -- Test Graph Loading')
+    graph = Graph()
+    prefix_handle.update_graph_namespacemanager(graph)
+    graph_path = f'{INPUT_DIR_PATH}{test_file_name}.ttl'
+    graph.parse(graph_path)
+    print(f" ----- Graph Loaded ({len(graph)})")
+    return graph
+
+
+def print_net_attributes(net):
+    print(f'\n *** Net attributes ({net.type_id}: {net.uri}) ***')
+    for attr in net.attr_list:
+        net_attr_ref = f'net.{attr}'
+        print(f' ----- {attr}: {eval(net_attr_ref)}') 
+
+
+def print_triple(graph, triple, num=-1):
+    num_str = f'[{num}]' if num > -1 else '[-]'
+    (s, p, o) = triple
+    s = __update_uri_with_prefix(graph, s)
+    p = __update_uri_with_prefix(graph, p)
+    o = __update_uri_with_prefix(graph, o)
+    print(f' {num_str} {s} {p} {o}')
+    
+
+def add_triples_in_graph(test_file_name, graph, triple_list):
+    print(f'\n -- Adding triple(s) in graph')       
+    print(f" ----- Graph length before update: {len(graph)}")
+    print(f" ----- Number of triples to add: {len(triple_list)}")
+    
+    print(f" ----- Added triples:")
+    n = 0
+    graph_length = len(graph)
+    for triple in triple_list:
+        graph.add(triple)
+        if graph_length < len(graph):
+            n += 1
+            graph_length = len(graph)
+            print_triple(graph, triple, num=n)      
+        
+    print(f" ----- Graph length after update: {len(graph)}")
+    
+    output_graph_path = f'{OUTPUT_DIR_PATH}{test_file_name}.result.ttl'
+    output_graph_uri = f'https://amr.tetras-libre.fr/rdf/{test_file_name}/result'
+    print(f'\n -- Serialize test graph to {output_graph_path}')
+    graph.serialize(destination=output_graph_path, 
+                    format='turtle',
+                    base=output_graph_uri)
+
+
+#==============================================================================
+# Development Test
+#==============================================================================
+        
+def test_search_pattern_1(graph, phenomena_uri):    
+    query_code, pattern_set = rule_1.__search_pattern(graph, phenomena_uri)
+    print(f'\n ----- query code: {query_code}')
+    print(f'\n ----- number of selection found: {len(pattern_set)}')
+    for selection in pattern_set: 
+        result_str = f'>>> '
+        result_str += f'{selection.phenomena_net.n3(graph.namespace_manager)}'
+        result_str += f' {selection.action_net.n3(graph.namespace_manager)}'
+        print(result_str)        
+    return pattern_set
+    
+
+#==============================================================================
+# Unit Test
+#==============================================================================
+
+def test_rule_application(test_file_name, graph, rule):    
+    print('\n -- Rule Test')
+    
+    rule_label, new_triple_list = rule(graph)
+    print(f' ----- label: {rule_label}')
+    
+    add_triples_in_graph(test_file_name, graph, new_triple_list)
+    
+
+
+#==============================================================================
+# Test Script
+#==============================================================================
+
+if __name__ == '__main__':
+      
+    print('\n *** Test Preparation ***')
+    graph_1 = load_test_graph(TEST_FILE_NAME_1)
+    graph_2 = load_test_graph(TEST_FILE_NAME_2)
+    graph_3 = load_test_graph(TEST_FILE_NAME_3)
+    print('\n \n')
+    
+    
+    print('\n ///////////////////// Extraction Rule 1')
+    
+    print('\n *** Step Test ***')
+    
+    print('\n -- Step 1: Search Pattern')
+    for (rule_relation, phenomena_uri) in rule_1.MODALITY_TABLE:
+        pattern_set = test_search_pattern_1(graph_1, phenomena_uri)
+            
+    print('\n \n')
+    
+    print('\n *** Unit Test ***')
+    test_rule_application(TEST_FILE_NAME_1, graph_1, rule.extract_odrl_rule)
+    test_rule_application(TEST_FILE_NAME_2, graph_2, rule.extract_odrl_rule)
+    test_rule_application(TEST_FILE_NAME_3, graph_3, rule.extract_odrl_rule)
+    print('\n \n')
+    
+    
+    print('\n *** - ***')
\ No newline at end of file