diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6df95a08481f9b5499bd8fa3321e99cd2f43b4ec
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+*.pyc
+__pycache__ 
+*.todo
+devtemp.py
+corpus/CCTP-SRSA-IP*
diff --git a/CHANGELOG b/CHANGELOG
index 66a758912615c264d764e5ba0ddff58c27ed0a98..901fed689c02c7e850bf60d73500594c993bc80b 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -24,10 +24,4 @@ All notable changes to this project will be documented in this file.
 
 ### Added
 - Init project
-- Module: --
-
-### Changed
-- TODO
-
-### Fix
-- TODO
+- Directory: config, corpus, frame
diff --git a/README.md b/README.md
index bdd36a2863906879c2766c23bc7def855da2b501..6b24da12c08b4adbad6d68774dcbf6012a1bfe8a 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# TENET - Terminology Extraction using Net Extension by (semantic) Transduction
+# TENET - Tool for Extraction using Net Extension by (semantic) Transduction
 -------------------------------------------------------------------------------
 
 This tool exploits an intermediate semantic representation (UNL-RDF graphs) to 
@@ -43,7 +43,15 @@ All dependencies are listed in requirements.txt. These dependencies are used for
 The input directories contain evaluation files with some test corpus.
 
 
-## 3 - Execution
+## 3 - Content
+
+The **config** directory contains various configuration files for the process:
+
+  - **unl-rdf-schema.ttl**: RDF schema for the interpretation of UNL graphs
+  - **smenet.ttl**: RDF schema of the semantic rules 
+
+
+## 4 - Execution
 
 The application runs in a terminal using the tenet.py script: **python3 tenet.py <command> <args>**.
 
@@ -56,7 +64,7 @@ The following times were measured for the processing of a file of 10 sentences:
   * about xxx second for reasonning process.
 
 
-## 4 - Commands
+## 5 - Commands
 
 Following commands are proposed to execute the different steps of the process:
 
@@ -68,14 +76,14 @@ Following commands are proposed to execute the different steps of the process:
 
 These commands are used with the python script _tenet.py_.
 
-## 5 - Example
+## 6 - Example
 
 [TODO: end-to-end example] 
 
 
 
 
-## 5 - Evaluation
+## 7 - Evaluation
 
 [TODO: experimentation]
 
diff --git a/config/semnet.ttl b/config/semnet.ttl
new file mode 100644
index 0000000000000000000000000000000000000000..6851c36a0fad6512fbd4e1e8c3b002f29cb40ff2
--- /dev/null
+++ b/config/semnet.ttl
@@ -0,0 +1,76 @@
+# baseURI: https://unsel.tenet.fr/semnet
+# prefix: net
+
+@prefix net: <https://unsel.tenet.fr/semnet#> .
+@prefix owl: <http://www.w3.org/2002/07/owl#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+<https://unsel.tenet.fr/semnet>
+  rdf:type owl:Ontology ;
+.
+net:Instance
+  rdf:type owl:Class ;
+  rdfs:label "Semantic Net" ;
+  rdfs:subClassOf owl:Thing ;
+.
+net:Type
+  rdf:type owl:Class ;
+  rdfs:label "Semantic Net Type" ;
+  rdfs:subClassOf owl:Thing ;
+.
+net:agent
+  rdf:type owl:Class ;
+  rdfs:label "agent "@fr ;
+  rdfs:subClassOf net:Type ;
+.
+net:class
+  rdf:type owl:Class ;
+  rdfs:label "Agent" ;
+  rdfs:label "Class" ;
+  rdfs:label "Complement" ;
+  rdfs:subClassOf net:Type ;
+.
+net:class1
+  rdf:type rdf:Property ;
+  rdfs:label "class1 "@fr ;
+  rdfs:subPropertyOf net:value ;
+.
+net:class2
+  rdf:type rdf:Property ;
+  rdfs:label "class2 "@fr ;
+  rdfs:subPropertyOf net:value ;
+.
+net:class_list
+  rdf:type owl:Class ;
+  rdfs:label "List of classes" ;
+  rdfs:subClassOf net:Type ;
+.
+net:complement
+  rdf:type owl:Class ;
+  rdfs:label "complement "@fr ;
+  rdfs:subClassOf net:Type ;
+.
+net:concept
+  rdf:type rdf:Property ;
+  rdfs:label "concept "@fr ;
+  rdfs:subPropertyOf net:value ;
+.
+net:mod_list
+  rdf:type owl:Class ;
+  rdfs:label "List of modifiers" ;
+  rdfs:subClassOf net:Type ;
+.
+net:node
+  rdf:type rdf:Property ;
+  rdfs:label "node "@fr ;
+.
+net:type
+  rdf:type rdf:Property ;
+  rdfs:label "type "@fr ;
+.
+net:value
+  rdf:type rdf:Property ;
+  rdfs:label "valuations"@fr ;
+.
diff --git a/config/unl-rdf-schema.ttl b/config/unl-rdf-schema.ttl
new file mode 100644
index 0000000000000000000000000000000000000000..318757e5f6315ef280fa1a75920a6840f595adc1
--- /dev/null
+++ b/config/unl-rdf-schema.ttl
@@ -0,0 +1,2971 @@
+# baseURI: https://unl.tetras-libre.fr/rdf/schema
+# imports: http://www.w3.org/2008/05/skos-xl
+
+@prefix : <https://unl.tetras-libre.fr/rdf/schema#> .
+@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 skos: <http://www.w3.org/2004/02/skos/core#> .
+@prefix xml: <http://www.w3.org/XML/1998/namespace> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+<https://unl.tetras-libre.fr/rdf/schema>
+  rdf:type owl:Ontology ;
+  owl:imports <http://www.w3.org/2008/05/skos-xl> ;
+  owl:versionIRI <https://unl.tetras-libre.fr/rdf/schema#0.1> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@ability>
+  rdf:type owl:Class ;
+  rdfs:label "ability" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@about>
+  rdf:type owl:Class ;
+  rdfs:label "about" ;
+  rdfs:subClassOf :nominal_attributes ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@above>
+  rdf:type owl:Class ;
+  rdfs:label "above" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@according_to>
+  rdf:type owl:Class ;
+  rdfs:label "according to" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@across>
+  rdf:type owl:Class ;
+  rdfs:label "across" ;
+  rdfs:subClassOf :direction ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@active>
+  rdf:type owl:Class ;
+  rdfs:label "active" ;
+  rdfs:subClassOf :voice ;
+  skos:definition "He built this house in 1895" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@adjective>
+  rdf:type owl:Class ;
+  rdfs:label "adjective" ;
+  rdfs:subClassOf :lexical_category ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@adverb>
+  rdf:type owl:Class ;
+  rdfs:label "adverb" ;
+  rdfs:subClassOf :lexical_category ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@advice>
+  rdf:type owl:Class ;
+  rdfs:label "advice" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@after>
+  rdf:type owl:Class ;
+  rdfs:label "after" ;
+  rdfs:subClassOf :other ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@again>
+  rdf:type owl:Class ;
+  rdfs:label "again" ;
+  rdfs:subClassOf :positive ;
+  skos:definition "iterative" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@against>
+  rdf:type owl:Class ;
+  rdfs:label "against" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@agreement>
+  rdf:type owl:Class ;
+  rdfs:label "agreement" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@all>
+  rdf:type owl:Class ;
+  rdfs:label "all" ;
+  rdfs:subClassOf :quantification ;
+  skos:definition "universal quantifier" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@almost>
+  rdf:type owl:Class ;
+  rdfs:label "almost" ;
+  rdfs:subClassOf :degree ;
+  skos:definition "approximative" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@along>
+  rdf:type owl:Class ;
+  rdfs:label "along" ;
+  rdfs:subClassOf :direction ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@also>
+  rdf:type owl:Class ;
+  rdfs:label "also" ;
+  rdfs:subClassOf :degree ;
+  rdfs:subClassOf :specification ;
+  skos:definition "repetitive" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@although>
+  rdf:type owl:Class ;
+  rdfs:label "although" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@among>
+  rdf:type owl:Class ;
+  rdfs:label "among" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@and>
+  rdf:type owl:Class ;
+  rdfs:label "and" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@anger>
+  rdf:type owl:Class ;
+  rdfs:label "anger" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@angle_bracket>
+  rdf:type owl:Class ;
+  rdfs:label "angle bracket" ;
+  rdfs:subClassOf :conventions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@anterior>
+  rdf:type owl:Class ;
+  rdfs:label "anterior" ;
+  rdfs:subClassOf :relative_tense ;
+  skos:definition "before some other time other than the time of utterance" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@anthropomorphism>
+  rdf:type owl:Class ;
+  rdfs:label "anthropomorphism" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Ascribing human characteristics to something that is not human, such as an animal or a god (see zoomorphism)" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@antiphrasis>
+  rdf:type owl:Class ;
+  rdfs:label "antiphrasis" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Word or words used contradictory to their usual meaning, often with irony" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@antonomasia>
+  rdf:type owl:Class ;
+  rdfs:label "antonomasia" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Substitution of a phrase for a proper name or vice versa" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@any>
+  rdf:type owl:Class ;
+  rdfs:label "any" ;
+  rdfs:subClassOf :quantification ;
+  skos:definition "existential quantifier" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@archaic>
+  rdf:type owl:Class ;
+  rdfs:label "archaic" ;
+  rdfs:subClassOf :register ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@around>
+  rdf:type owl:Class ;
+  rdfs:label "around" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@as>
+  rdf:type owl:Class ;
+  rdfs:label "as" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@as.@if>
+  rdf:type owl:Class ;
+  rdfs:label "as.@if" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@as_far_as>
+  rdf:type owl:Class ;
+  rdfs:label "as far as" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@as_of>
+  rdf:type owl:Class ;
+  rdfs:label "as of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@as_per>
+  rdf:type owl:Class ;
+  rdfs:label "as per" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@as_regards>
+  rdf:type owl:Class ;
+  rdfs:label "as regards" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@as_well_as>
+  rdf:type owl:Class ;
+  rdfs:label "as well as" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@assertion>
+  rdf:type owl:Class ;
+  rdfs:label "assertion" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@assumption>
+  rdf:type owl:Class ;
+  rdfs:label "assumption" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@at>
+  rdf:type owl:Class ;
+  rdfs:label "at" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@attention>
+  rdf:type owl:Class ;
+  rdfs:label "attention" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@back>
+  rdf:type owl:Class ;
+  rdfs:label "back" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@barring>
+  rdf:type owl:Class ;
+  rdfs:label "barring" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@because>
+  rdf:type owl:Class ;
+  rdfs:label "because" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@because_of>
+  rdf:type owl:Class ;
+  rdfs:label "because of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@before>
+  rdf:type owl:Class ;
+  rdfs:label "before" ;
+  rdfs:subClassOf :other ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@behind>
+  rdf:type owl:Class ;
+  rdfs:label "behind" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@belief>
+  rdf:type owl:Class ;
+  rdfs:label "belief" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@below>
+  rdf:type owl:Class ;
+  rdfs:label "below" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@beside>
+  rdf:type owl:Class ;
+  rdfs:label "beside" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@besides>
+  rdf:type owl:Class ;
+  rdfs:label "besides" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@between>
+  rdf:type owl:Class ;
+  rdfs:label "between" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@beyond>
+  rdf:type owl:Class ;
+  rdfs:label "beyond" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@both>
+  rdf:type owl:Class ;
+  rdfs:label "both" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@def> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@bottom>
+  rdf:type owl:Class ;
+  rdfs:label "bottom" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@brace>
+  rdf:type owl:Class ;
+  rdfs:label "brace" ;
+  rdfs:subClassOf :conventions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@brachylogia>
+  rdf:type owl:Class ;
+  rdfs:label "brachylogia" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "omission of conjunctions between a series of words" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@but>
+  rdf:type owl:Class ;
+  rdfs:label "but" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@by>
+  rdf:type owl:Class ;
+  rdfs:label "by" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@by_means_of>
+  rdf:type owl:Class ;
+  rdfs:label "by means of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@catachresis>
+  rdf:type owl:Class ;
+  rdfs:label "catachresis" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "use an existing word to denote something that has no name in the current language" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@causative>
+  rdf:type owl:Class ;
+  rdfs:label "causative" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "causative" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@certain>
+  rdf:type owl:Class ;
+  rdfs:label "certain" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@indef> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@chiasmus>
+  rdf:type owl:Class ;
+  rdfs:label "chiasmus" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "reversal of grammatical structures in successive clauses" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@circa>
+  rdf:type owl:Class ;
+  rdfs:label "circa" ;
+  rdfs:subClassOf :specification ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@climax>
+  rdf:type owl:Class ;
+  rdfs:label "climax" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "arrangement of words in order of increasing importance" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@clockwise>
+  rdf:type owl:Class ;
+  rdfs:label "clockwise" ;
+  rdfs:subClassOf :direction ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@colloquial>
+  rdf:type owl:Class ;
+  rdfs:label "colloquial" ;
+  rdfs:subClassOf :register ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@command>
+  rdf:type owl:Class ;
+  rdfs:label "command" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@comment>
+  rdf:type owl:Class ;
+  rdfs:label "comment" ;
+  rdfs:subClassOf :information_structure ;
+  skos:definition "what is being said about the topic" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@concerning>
+  rdf:type owl:Class ;
+  rdfs:label "concerning" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@conclusion>
+  rdf:type owl:Class ;
+  rdfs:label "conclusion" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@condition>
+  rdf:type owl:Class ;
+  rdfs:label "condition" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@confirmation>
+  rdf:type owl:Class ;
+  rdfs:label "confirmation" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@consent>
+  rdf:type owl:Class ;
+  rdfs:label "consent" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@consequence>
+  rdf:type owl:Class ;
+  rdfs:label "consequence" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@consonance>
+  rdf:type owl:Class ;
+  rdfs:label "consonance" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "repetition of consonant sounds without the repetition of the vowel sounds" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@contact>
+  rdf:type owl:Class ;
+  rdfs:label "contact" ;
+  rdfs:subClassOf :position ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@contentment>
+  rdf:type owl:Class ;
+  rdfs:label "contentment" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@continuative>
+  rdf:type owl:Class ;
+  rdfs:label "continuative" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "continuous" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@conviction>
+  rdf:type owl:Class ;
+  rdfs:label "conviction" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@decision>
+  rdf:type owl:Class ;
+  rdfs:label "decision" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@deduction>
+  rdf:type owl:Class ;
+  rdfs:label "deduction" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@def>
+  rdf:type owl:Class ;
+  rdfs:label "def" ;
+  rdfs:subClassOf :specification ;
+  skos:definition "definite" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@desire>
+  rdf:type owl:Class ;
+  rdfs:label "desire" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@despite>
+  rdf:type owl:Class ;
+  rdfs:label "despite" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@determination>
+  rdf:type owl:Class ;
+  rdfs:label "determination" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@dialect>
+  rdf:type owl:Class ;
+  rdfs:label "dialect" ;
+  rdfs:subClassOf :register ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@disagreement>
+  rdf:type owl:Class ;
+  rdfs:label "disagreement" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@discontentment>
+  rdf:type owl:Class ;
+  rdfs:label "discontentment" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@dissent>
+  rdf:type owl:Class ;
+  rdfs:label "dissent" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@distal>
+  rdf:type owl:Class ;
+  rdfs:label "distal" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@def> ;
+  skos:definition "far from the speaker" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@double_negative>
+  rdf:type owl:Class ;
+  rdfs:label "double negative" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Grammar construction that can be used as an expression and it is the repetition of negative words" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@double_parenthesis>
+  rdf:type owl:Class ;
+  rdfs:label "double parenthesis" ;
+  rdfs:subClassOf :conventions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@double_quote>
+  rdf:type owl:Class ;
+  rdfs:label "double quote" ;
+  rdfs:subClassOf :conventions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@doubt>
+  rdf:type owl:Class ;
+  rdfs:label "doubt" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@down>
+  rdf:type owl:Class ;
+  rdfs:label "down" ;
+  rdfs:subClassOf :direction ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@dual>
+  rdf:type owl:Class ;
+  rdfs:label "dual" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@pl> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@due_to>
+  rdf:type owl:Class ;
+  rdfs:label "due to" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@during>
+  rdf:type owl:Class ;
+  rdfs:label "during" ;
+  rdfs:subClassOf :other ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@dysphemism>
+  rdf:type owl:Class ;
+  rdfs:label "dysphemism" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Substitution of a harsher, more offensive, or more disagreeable term for another. Opposite of euphemism" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@each>
+  rdf:type owl:Class ;
+  rdfs:label "each" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@def> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@either>
+  rdf:type owl:Class ;
+  rdfs:label "either" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@def> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@ellipsis>
+  rdf:type owl:Class ;
+  rdfs:label "ellipsis" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "omission of words" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@emphasis>
+  rdf:type owl:Class ;
+  rdfs:label "emphasis" ;
+  rdfs:subClassOf :positive ;
+  skos:definition "emphasis" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@enough>
+  rdf:type owl:Class ;
+  rdfs:label "enough" ;
+  rdfs:subClassOf :positive ;
+  skos:definition "sufficiently (enough)" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@entire>
+  rdf:type owl:Class ;
+  rdfs:label "entire" ;
+  rdfs:subClassOf :quantification ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@entry>
+  rdf:type owl:Class ;
+  rdfs:label "entry" ;
+  rdfs:subClassOf :syntactic_structures ;
+  skos:definition "sentence head" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@epanalepsis>
+  rdf:type owl:Class ;
+  rdfs:label "epanalepsis" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "repetition of the initial word or words of a clause or sentence at the end of the clause or sentence" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@epanorthosis>
+  rdf:type owl:Class ;
+  rdfs:label "epanorthosis" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Immediate and emphatic self-correction, often following a slip of the tongue" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@equal>
+  rdf:type owl:Class ;
+  rdfs:label "equal" ;
+  rdfs:subClassOf :comparative ;
+  skos:definition "comparative of equality" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@equivalent>
+  rdf:type owl:Class ;
+  rdfs:label "equivalent" ;
+  rdfs:subClassOf :social_deixis ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@euphemism>
+  rdf:type owl:Class ;
+  rdfs:label "euphemism" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Substitution of a less offensive or more agreeable term for another" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@even>
+  rdf:type owl:Class ;
+  rdfs:label "even" ;
+  rdfs:subClassOf :specification ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@even.@if>
+  rdf:type owl:Class ;
+  rdfs:label "even.@if" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@except>
+  rdf:type owl:Class ;
+  rdfs:label "except" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@except.@if>
+  rdf:type owl:Class ;
+  rdfs:label "except.@if" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@except_for>
+  rdf:type owl:Class ;
+  rdfs:label "except for" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@exclamation>
+  rdf:type owl:Class ;
+  rdfs:label "exclamation" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@excluding>
+  rdf:type owl:Class ;
+  rdfs:label "excluding" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@exhortation>
+  rdf:type owl:Class ;
+  rdfs:label "exhortation" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@expectation>
+  rdf:type owl:Class ;
+  rdfs:label "expectation" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@experiential>
+  rdf:type owl:Class ;
+  rdfs:label "experiential" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "experience" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@extra>
+  rdf:type owl:Class ;
+  rdfs:label "extra" ;
+  rdfs:subClassOf :positive ;
+  skos:definition "excessively (too)" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@failing>
+  rdf:type owl:Class ;
+  rdfs:label "failing" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@familiar>
+  rdf:type owl:Class ;
+  rdfs:label "familiar" ;
+  rdfs:subClassOf :social_deixis ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@far>
+  rdf:type owl:Class ;
+  rdfs:label "far" ;
+  rdfs:subClassOf :position ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@fear>
+  rdf:type owl:Class ;
+  rdfs:label "fear" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@female>
+  rdf:type owl:Class ;
+  rdfs:label "female" ;
+  rdfs:subClassOf :gender ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@focus>
+  rdf:type owl:Class ;
+  rdfs:label "focus" ;
+  rdfs:subClassOf :information_structure ;
+  skos:definition "information that is contrary to the presuppositions of the interlocutor" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@following>
+  rdf:type owl:Class ;
+  rdfs:label "following" ;
+  rdfs:subClassOf :other ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@for>
+  rdf:type owl:Class ;
+  rdfs:label "for" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@from>
+  rdf:type owl:Class ;
+  rdfs:label "from" ;
+  rdfs:subClassOf :direction ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@front>
+  rdf:type owl:Class ;
+  rdfs:label "front" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@future>
+  rdf:type owl:Class ;
+  rdfs:label "future" ;
+  rdfs:subClassOf :absolute_tense ;
+  skos:definition "at a time after the moment of utterance" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@generic>
+  rdf:type owl:Class ;
+  rdfs:label "generic" ;
+  rdfs:subClassOf :quantification ;
+  skos:definition "no quantification" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@given>
+  rdf:type owl:Class ;
+  rdfs:label "given" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@habitual>
+  rdf:type owl:Class ;
+  rdfs:label "habitual" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "habitual" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@half>
+  rdf:type owl:Class ;
+  rdfs:label "half" ;
+  rdfs:subClassOf :quantification ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@hesitation>
+  rdf:type owl:Class ;
+  rdfs:label "hesitation" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@hope>
+  rdf:type owl:Class ;
+  rdfs:label "hope" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@hyperbole>
+  rdf:type owl:Class ;
+  rdfs:label "hyperbole" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Use of exaggerated terms for emphasis" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@hypothesis>
+  rdf:type owl:Class ;
+  rdfs:label "hypothesis" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@if>
+  rdf:type owl:Class ;
+  rdfs:label "if" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@if.@only>
+  rdf:type owl:Class ;
+  rdfs:label "if.@only" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@imperfective>
+  rdf:type owl:Class ;
+  rdfs:label "imperfective" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "uncompleted" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@in>
+  rdf:type owl:Class ;
+  rdfs:label "in" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@in_accordance_with>
+  rdf:type owl:Class ;
+  rdfs:label "in accordance with" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@in_addition_to>
+  rdf:type owl:Class ;
+  rdfs:label "in addition to" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@in_case>
+  rdf:type owl:Class ;
+  rdfs:label "in case" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@in_case_of>
+  rdf:type owl:Class ;
+  rdfs:label "in case of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@in_favor_of>
+  rdf:type owl:Class ;
+  rdfs:label "in favor of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@in_place_of>
+  rdf:type owl:Class ;
+  rdfs:label "in place of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@in_spite_of>
+  rdf:type owl:Class ;
+  rdfs:label "in spite of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@inceptive>
+  rdf:type owl:Class ;
+  rdfs:label "inceptive" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "beginning" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@inchoative>
+  rdf:type owl:Class ;
+  rdfs:label "inchoative" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "change of state" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@including>
+  rdf:type owl:Class ;
+  rdfs:label "including" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@indef>
+  rdf:type owl:Class ;
+  rdfs:label "indef" ;
+  rdfs:subClassOf :specification ;
+  skos:definition "indefinite" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@inferior>
+  rdf:type owl:Class ;
+  rdfs:label "inferior" ;
+  rdfs:subClassOf :social_deixis ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@inside>
+  rdf:type owl:Class ;
+  rdfs:label "inside" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@instead_of>
+  rdf:type owl:Class ;
+  rdfs:label "instead of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@intention>
+  rdf:type owl:Class ;
+  rdfs:label "intention" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@interrogation>
+  rdf:type owl:Class ;
+  rdfs:label "interrogation" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@interruption>
+  rdf:type owl:Class ;
+  rdfs:label "interruption" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "insertion of a clause or sentence in a place where it interrupts the natural flow of the sentence" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@intimate>
+  rdf:type owl:Class ;
+  rdfs:label "intimate" ;
+  rdfs:subClassOf :social_deixis ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@invitation>
+  rdf:type owl:Class ;
+  rdfs:label "invitation" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@irony>
+  rdf:type owl:Class ;
+  rdfs:label "irony" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Use of word in a way that conveys a meaning opposite to its usual meaning" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@iterative>
+  rdf:type owl:Class ;
+  rdfs:label "iterative" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "repetition" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@jargon>
+  rdf:type owl:Class ;
+  rdfs:label "jargon" ;
+  rdfs:subClassOf :register ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@judgement>
+  rdf:type owl:Class ;
+  rdfs:label "judgement" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@least>
+  rdf:type owl:Class ;
+  rdfs:label "least" ;
+  rdfs:subClassOf :superlative ;
+  skos:definition "superlative of inferiority" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@left>
+  rdf:type owl:Class ;
+  rdfs:label "left" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@less>
+  rdf:type owl:Class ;
+  rdfs:label "less" ;
+  rdfs:subClassOf :comparative ;
+  skos:definition "comparative of inferiority" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@like>
+  rdf:type owl:Class ;
+  rdfs:label "like" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@literary>
+  rdf:type owl:Class ;
+  rdfs:label "literary" ;
+  rdfs:subClassOf :register ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@majority>
+  rdf:type owl:Class ;
+  rdfs:label "majority" ;
+  rdfs:subClassOf :quantification ;
+  skos:definition "a major part" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@male>
+  rdf:type owl:Class ;
+  rdfs:label "male" ;
+  rdfs:subClassOf :gender ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@maybe>
+  rdf:type owl:Class ;
+  rdfs:label "maybe" ;
+  rdfs:subClassOf :polarity ;
+  skos:definition "dubitative" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@medial>
+  rdf:type owl:Class ;
+  rdfs:label "medial" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@def> ;
+  skos:definition "near the addressee" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@metaphor>
+  rdf:type owl:Class ;
+  rdfs:label "metaphor" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Stating one entity is another for the purpose of comparing them in quality" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@metonymy>
+  rdf:type owl:Class ;
+  rdfs:label "metonymy" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Substitution of a word to suggest what is really meant" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@minority>
+  rdf:type owl:Class ;
+  rdfs:label "minority" ;
+  rdfs:subClassOf :quantification ;
+  skos:definition "a minor part" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@minus>
+  rdf:type owl:Class ;
+  rdfs:label "minus" ;
+  rdfs:subClassOf :positive ;
+  skos:definition "downtoned (a little)" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@more>
+  rdf:type owl:Class ;
+  rdfs:label "more" ;
+  rdfs:subClassOf :comparative ;
+  skos:definition "comparative of superiority" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@most>
+  rdf:type owl:Class ;
+  rdfs:label "most" ;
+  rdfs:subClassOf :superlative ;
+  skos:definition "superlative of superiority" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@multal>
+  rdf:type owl:Class ;
+  rdfs:label "multal" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@pl> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@narrative>
+  rdf:type owl:Class ;
+  rdfs:label "narrative" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@near>
+  rdf:type owl:Class ;
+  rdfs:label "near" ;
+  rdfs:subClassOf :position ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@necessity>
+  rdf:type owl:Class ;
+  rdfs:label "necessity" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@neither>
+  rdf:type owl:Class ;
+  rdfs:label "neither" ;
+  rdfs:subClassOf :specification ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@neutral>
+  rdf:type owl:Class ;
+  rdfs:label "neutral" ;
+  rdfs:subClassOf :gender ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@no>
+  rdf:type owl:Class ;
+  rdfs:label "no" ;
+  rdfs:subClassOf :quantification ;
+  skos:definition "none" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@not>
+  rdf:type owl:Class ;
+  rdfs:label "not" ;
+  rdfs:subClassOf :polarity ;
+  skos:definition "negative" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@notwithstanding>
+  rdf:type owl:Class ;
+  rdfs:label "notwithstanding" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@noun>
+  rdf:type owl:Class ;
+  rdfs:label "noun" ;
+  rdfs:subClassOf :lexical_category ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@obligation>
+  rdf:type owl:Class ;
+  rdfs:label "obligation" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@of>
+  rdf:type owl:Class ;
+  rdfs:label "of" ;
+  rdfs:subClassOf :nominal_attributes ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@off>
+  rdf:type owl:Class ;
+  rdfs:label "off" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@on>
+  rdf:type owl:Class ;
+  rdfs:label "on" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@on_account_of>
+  rdf:type owl:Class ;
+  rdfs:label "on account of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@on_behalf_of>
+  rdf:type owl:Class ;
+  rdfs:label "on behalf of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@one>
+  rdf:type owl:Class ;
+  rdfs:label "1" ;
+  rdfs:subClassOf :person ;
+  skos:definition "first person speaker" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@only>
+  rdf:type owl:Class ;
+  rdfs:label "only" ;
+  rdfs:subClassOf :specification ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@onomatopoeia>
+  rdf:type owl:Class ;
+  rdfs:label "onomatopoeia" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Words that sound like their meaning" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@opinion>
+  rdf:type owl:Class ;
+  rdfs:label "opinion" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@opposite>
+  rdf:type owl:Class ;
+  rdfs:label "opposite" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@or>
+  rdf:type owl:Class ;
+  rdfs:label "or" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@ordinal>
+  rdf:type owl:Class ;
+  rdfs:label "ordinal" ;
+  rdfs:subClassOf :specification ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@other>
+  rdf:type owl:Class ;
+  rdfs:label "other" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@def> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@outside>
+  rdf:type owl:Class ;
+  rdfs:label "outside" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@over>
+  rdf:type owl:Class ;
+  rdfs:label "over" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@owing_to>
+  rdf:type owl:Class ;
+  rdfs:label "owing to" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@own>
+  rdf:type owl:Class ;
+  rdfs:label "own" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@def> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@oxymoron>
+  rdf:type owl:Class ;
+  rdfs:label "oxymoron" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Using two terms together, that normally contradict each other" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@pace>
+  rdf:type owl:Class ;
+  rdfs:label "pace" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@pain>
+  rdf:type owl:Class ;
+  rdfs:label "pain" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@paradox>
+  rdf:type owl:Class ;
+  rdfs:label "paradox" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Use of apparently contradictory ideas to point out some underlying truth" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@parallelism>
+  rdf:type owl:Class ;
+  rdfs:label "parallelism" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "use of similar structures in two or more clauses" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@parenthesis>
+  rdf:type owl:Class ;
+  rdfs:label "parenthesis" ;
+  rdfs:subClassOf :conventions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@paronomasia>
+  rdf:type owl:Class ;
+  rdfs:label "paronomasia" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "A form of pun, in which words similar in sound but with different meanings are used" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@part>
+  rdf:type owl:Class ;
+  rdfs:label "part" ;
+  rdfs:subClassOf :quantification ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@passive>
+  rdf:type owl:Class ;
+  rdfs:label "passive" ;
+  rdfs:subClassOf :voice ;
+  skos:definition "This house was built in 1895." ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@past>
+  rdf:type owl:Class ;
+  rdfs:label "past" ;
+  rdfs:subClassOf :absolute_tense ;
+  skos:definition "at a time before the moment of utterance" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@paucal>
+  rdf:type owl:Class ;
+  rdfs:label "paucal" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@pl> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@pejorative>
+  rdf:type owl:Class ;
+  rdfs:label "pejorative" ;
+  rdfs:subClassOf :register ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@per>
+  rdf:type owl:Class ;
+  rdfs:label "per" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@perfect>
+  rdf:type owl:Class ;
+  rdfs:label "perfect" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "perfect" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@perfective>
+  rdf:type owl:Class ;
+  rdfs:label "perfective" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "completed" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@periphrasis>
+  rdf:type owl:Class ;
+  rdfs:label "periphrasis" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Using several words instead of few" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@permission>
+  rdf:type owl:Class ;
+  rdfs:label "permission" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@permissive>
+  rdf:type owl:Class ;
+  rdfs:label "permissive" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "permissive" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@persistent>
+  rdf:type owl:Class ;
+  rdfs:label "persistent" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "persistent" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@person>
+  rdf:type owl:Class ;
+  rdfs:label "person" ;
+  rdfs:subClassOf :animacy ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@pl>
+  rdf:type owl:Class ;
+  rdfs:label "pl" ;
+  rdfs:subClassOf :quantification ;
+  skos:definition "plural" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@pleonasm>
+  rdf:type owl:Class ;
+  rdfs:label "pleonasm" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "Use of superfluous or redundant words" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@plus>
+  rdf:type owl:Class ;
+  rdfs:label "plus" ;
+  rdfs:subClassOf :positive ;
+  skos:definition "intensified (very)" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@polite>
+  rdf:type owl:Class ;
+  rdfs:label "polite" ;
+  rdfs:subClassOf :social_deixis ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@polyptoton>
+  rdf:type owl:Class ;
+  rdfs:label "polyptoton" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "repetition of words derived from the same root" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@polysyndeton>
+  rdf:type owl:Class ;
+  rdfs:label "polysyndeton" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "repetition of conjunctions" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@possibility>
+  rdf:type owl:Class ;
+  rdfs:label "possibility" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@posterior>
+  rdf:type owl:Class ;
+  rdfs:label "posterior" ;
+  rdfs:subClassOf :relative_tense ;
+  skos:definition "after some other time other than the time of utterance" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@prediction>
+  rdf:type owl:Class ;
+  rdfs:label "prediction" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@present>
+  rdf:type owl:Class ;
+  rdfs:label "present" ;
+  rdfs:subClassOf :absolute_tense ;
+  skos:definition "at the moment of utterance" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@presumption>
+  rdf:type owl:Class ;
+  rdfs:label "presumption" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@prior_to>
+  rdf:type owl:Class ;
+  rdfs:label "prior to" ;
+  rdfs:subClassOf :other ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@probability>
+  rdf:type owl:Class ;
+  rdfs:label "probability" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@progressive>
+  rdf:type owl:Class ;
+  rdfs:label "progressive" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "ongoing" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@prohibition>
+  rdf:type owl:Class ;
+  rdfs:label "prohibition" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@promise>
+  rdf:type owl:Class ;
+  rdfs:label "promise" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@prospective>
+  rdf:type owl:Class ;
+  rdfs:label "prospective" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "imminent" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@proximal>
+  rdf:type owl:Class ;
+  rdfs:label "proximal" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@def> ;
+  skos:definition "near the speaker" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@pursuant_to>
+  rdf:type owl:Class ;
+  rdfs:label "pursuant to" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@qua>
+  rdf:type owl:Class ;
+  rdfs:label "qua" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@quadrual>
+  rdf:type owl:Class ;
+  rdfs:label "quadrual" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@pl> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@recent>
+  rdf:type owl:Class ;
+  rdfs:label "recent" ;
+  rdfs:subClassOf :absolute_tense ;
+  skos:definition "close to the moment of utterance" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@reciprocal>
+  rdf:type owl:Class ;
+  rdfs:label "reciprocal" ;
+  rdfs:subClassOf :voice ;
+  skos:definition "They killed each other." ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@reflexive>
+  rdf:type owl:Class ;
+  rdfs:label "reflexive" ;
+  rdfs:subClassOf :voice ;
+  skos:definition "He killed himself." ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@regarding>
+  rdf:type owl:Class ;
+  rdfs:label "regarding" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@regardless_of>
+  rdf:type owl:Class ;
+  rdfs:label "regardless of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@regret>
+  rdf:type owl:Class ;
+  rdfs:label "regret" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@relative>
+  rdf:type owl:Class ;
+  rdfs:label "relative" ;
+  rdfs:subClassOf :syntactic_structures ;
+  skos:definition "relative clause head" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@relief>
+  rdf:type owl:Class ;
+  rdfs:label "relief" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@remote>
+  rdf:type owl:Class ;
+  rdfs:label "remote" ;
+  rdfs:subClassOf :absolute_tense ;
+  skos:definition "remote from the moment of utterance" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@repetition>
+  rdf:type owl:Class ;
+  rdfs:label "repetition" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Repeated usage of word(s)/group of words in the same sentence to create a poetic/rhythmic effect" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@request>
+  rdf:type owl:Class ;
+  rdfs:label "request" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@result>
+  rdf:type owl:Class ;
+  rdfs:label "result" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "result" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@reverential>
+  rdf:type owl:Class ;
+  rdfs:label "reverential" ;
+  rdfs:subClassOf :social_deixis ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@right>
+  rdf:type owl:Class ;
+  rdfs:label "right" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@round>
+  rdf:type owl:Class ;
+  rdfs:label "round" ;
+  rdfs:subClassOf :nominal_attributes ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@same>
+  rdf:type owl:Class ;
+  rdfs:label "same" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@def> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@save>
+  rdf:type owl:Class ;
+  rdfs:label "save" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@side>
+  rdf:type owl:Class ;
+  rdfs:label "side" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@since>
+  rdf:type owl:Class ;
+  rdfs:label "since" ;
+  rdfs:subClassOf :other ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@single_quote>
+  rdf:type owl:Class ;
+  rdfs:label "single quote" ;
+  rdfs:subClassOf :conventions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@singular>
+  rdf:type owl:Class ;
+  rdfs:label "singular" ;
+  rdfs:subClassOf :quantification ;
+  skos:definition "default" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@slang>
+  rdf:type owl:Class ;
+  rdfs:label "slang" ;
+  rdfs:subClassOf :register ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@so>
+  rdf:type owl:Class ;
+  rdfs:label "so" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@speculation>
+  rdf:type owl:Class ;
+  rdfs:label "speculation" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@speech>
+  rdf:type owl:Class ;
+  rdfs:label "speech" ;
+  rdfs:subClassOf :syntactic_structures ;
+  skos:definition "direct speech" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@square_bracket>
+  rdf:type owl:Class ;
+  rdfs:label "square bracket" ;
+  rdfs:subClassOf :conventions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@subsequent_to>
+  rdf:type owl:Class ;
+  rdfs:label "subsequent to" ;
+  rdfs:subClassOf :other ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@such>
+  rdf:type owl:Class ;
+  rdfs:label "such" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@def> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@suggestion>
+  rdf:type owl:Class ;
+  rdfs:label "suggestion" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@superior>
+  rdf:type owl:Class ;
+  rdfs:label "superior" ;
+  rdfs:subClassOf :social_deixis ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@surprise>
+  rdf:type owl:Class ;
+  rdfs:label "surprise" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@symploce>
+  rdf:type owl:Class ;
+  rdfs:label "symploce" ;
+  rdfs:subClassOf :Schemes ;
+  skos:definition "combination of anaphora and epistrophe" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@synecdoche>
+  rdf:type owl:Class ;
+  rdfs:label "synecdoche" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Form of metonymy, in which a part stands for the whole" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@synesthesia>
+  rdf:type owl:Class ;
+  rdfs:label "synesthesia" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Description of one kind of sense impression by using words that normally describe another." ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@taboo>
+  rdf:type owl:Class ;
+  rdfs:label "taboo" ;
+  rdfs:subClassOf :register ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@terminative>
+  rdf:type owl:Class ;
+  rdfs:label "terminative" ;
+  rdfs:subClassOf :aspect ;
+  skos:definition "cessation" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@than>
+  rdf:type owl:Class ;
+  rdfs:label "than" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@thanks_to>
+  rdf:type owl:Class ;
+  rdfs:label "thanks to" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@that_of>
+  rdf:type owl:Class ;
+  rdfs:label "that of" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@thing>
+  rdf:type owl:Class ;
+  rdfs:label "thing" ;
+  rdfs:subClassOf :animacy ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@threat>
+  rdf:type owl:Class ;
+  rdfs:label "threat" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@three>
+  rdf:type owl:Class ;
+  rdfs:label "3" ;
+  rdfs:subClassOf :person ;
+  skos:definition "third person" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@through>
+  rdf:type owl:Class ;
+  rdfs:label "through" ;
+  rdfs:subClassOf :direction ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@throughout>
+  rdf:type owl:Class ;
+  rdfs:label "throughout" ;
+  rdfs:subClassOf :direction ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@times>
+  rdf:type owl:Class ;
+  rdfs:label "times" ;
+  rdfs:subClassOf :quantification ;
+  skos:definition "multiplicative" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@title>
+  rdf:type owl:Class ;
+  rdfs:label "title" ;
+  rdfs:subClassOf :syntactic_structures ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@to>
+  rdf:type owl:Class ;
+  rdfs:label "to" ;
+  rdfs:subClassOf :direction ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@top>
+  rdf:type owl:Class ;
+  rdfs:label "top" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@topic>
+  rdf:type owl:Class ;
+  rdfs:label "topic" ;
+  rdfs:subClassOf :information_structure ;
+  skos:definition "what is being talked about" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@towards>
+  rdf:type owl:Class ;
+  rdfs:label "towards" ;
+  rdfs:subClassOf :direction ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@trial>
+  rdf:type owl:Class ;
+  rdfs:label "trial" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@pl> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@tuple>
+  rdf:type owl:Class ;
+  rdfs:label "tuple" ;
+  rdfs:subClassOf :quantification ;
+  skos:definition "collective" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@two>
+  rdf:type owl:Class ;
+  rdfs:label "2" ;
+  rdfs:subClassOf :person ;
+  skos:definition "second person addressee" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@under>
+  rdf:type owl:Class ;
+  rdfs:label "under" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@unit>
+  rdf:type owl:Class ;
+  rdfs:label "unit" ;
+  rdfs:subClassOf :quantification ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@unless>
+  rdf:type owl:Class ;
+  rdfs:label "unless" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@unlike>
+  rdf:type owl:Class ;
+  rdfs:label "unlike" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@until>
+  rdf:type owl:Class ;
+  rdfs:label "until" ;
+  rdfs:subClassOf :other ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@up>
+  rdf:type owl:Class ;
+  rdfs:label "up" ;
+  rdfs:subClassOf :direction ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@verb>
+  rdf:type owl:Class ;
+  rdfs:label "verb" ;
+  rdfs:subClassOf :lexical_category ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@versus>
+  rdf:type owl:Class ;
+  rdfs:label "versus" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@vocative>
+  rdf:type owl:Class ;
+  rdfs:label "vocative" ;
+  rdfs:subClassOf :syntactic_structures ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@warning>
+  rdf:type owl:Class ;
+  rdfs:label "warning" ;
+  rdfs:subClassOf :modality ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@weariness>
+  rdf:type owl:Class ;
+  rdfs:label "weariness" ;
+  rdfs:subClassOf :emotions ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@wh>
+  rdf:type owl:Class ;
+  rdfs:label "wh" ;
+  rdfs:subClassOf <https://unl.tetras-libre.fr/rdf/schema#@indef> ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@with>
+  rdf:type owl:Class ;
+  rdfs:label "with" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@with_regard_to>
+  rdf:type owl:Class ;
+  rdfs:label "with regard to" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@with_relation_to>
+  rdf:type owl:Class ;
+  rdfs:label "with relation to" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@with_respect_to>
+  rdf:type owl:Class ;
+  rdfs:label "with respect to" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@within>
+  rdf:type owl:Class ;
+  rdfs:label "within" ;
+  rdfs:subClassOf :location ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@without>
+  rdf:type owl:Class ;
+  rdfs:label "without" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@worth>
+  rdf:type owl:Class ;
+  rdfs:label "worth" ;
+  rdfs:subClassOf :manner ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@yes>
+  rdf:type owl:Class ;
+  rdfs:label "yes" ;
+  rdfs:subClassOf :polarity ;
+  skos:definition "affirmative" ;
+.
+<https://unl.tetras-libre.fr/rdf/schema#@zoomorphism>
+  rdf:type owl:Class ;
+  rdfs:label "zoomorphism" ;
+  rdfs:subClassOf :Tropes ;
+  skos:definition "Applying animal characteristics to humans or gods" ;
+.
+:Schemes
+  rdf:type owl:Class ;
+  rdfs:subClassOf :figure_of_speech ;
+.
+:Tropes
+  rdf:type owl:Class ;
+  rdfs:subClassOf :figure_of_speech ;
+.
+:UNLKB_Node
+  rdf:type owl:Class ;
+  rdfs:subClassOf :UNL_Node ;
+.
+:UNLKB_Top_Concept
+  rdf:type owl:Class ;
+  rdfs:comment "Top concepts of a UNL Knoledge Base that shall not correspond to a UW." ;
+  rdfs:subClassOf :UNLKB_Node ;
+  rdfs:subClassOf :Universal_Word ;
+.
+:UNL_Document
+  rdf:type owl:Class ;
+  rdfs:comment """For more information about UNL Documents, see :
+http://www.unlweb.net/wiki/UNL_document""" ;
+  rdfs:subClassOf :UNL_Structure ;
+.
+:UNL_Graph_Node
+  rdf:type owl:Class ;
+  rdfs:subClassOf :UNL_Node ;
+.
+:UNL_Node
+  rdf:type owl:Class ;
+  rdfs:subClassOf :UNL_Structure ;
+.
+:UNL_Paragraph
+  rdf:type owl:Class ;
+  rdfs:comment """For more information about UNL Paragraphs, see :
+http://www.unlweb.net/wiki/UNL_document""" ;
+  rdfs:subClassOf :UNL_Structure ;
+.
+:UNL_Scope
+  rdf:type owl:Class ;
+  rdfs:comment """For more information about UNL Scopes, see : 
+http://www.unlweb.net/wiki/Scope
+
+The UNL representation is a hyper-graph, which means that it may consist of several interlinked or subordinate sub-graphs. These sub-graphs are represented as hyper-nodes and correspond roughly to the concept of dependent (subordinate) clauses, i.e., groups of words that consist of a subject (explicit or implied) and a predicate and which are embedded in a larger structure (the independent clause). They are used to define the boundaries between complex semantic entities being represented.""" ;
+  rdfs:subClassOf :UNL_Graph_Node ;
+.
+:UNL_Sentence
+  rdf:type owl:Class ;
+  rdfs:comment """For mor information about UNL Sentences, see :
+http://www.unlweb.net/wiki/UNL_sentence 
+
+UNL sentences, or UNL expressions, are sentences of UNL. They are hypergraphs made out of nodes (Universal Words) interlinked by binary semantic Universal Relations and modified by Universal Attributes. UNL sentences have been the basic unit of representation inside the UNL framework.""" ;
+  rdfs:subClassOf :UNL_Structure ;
+.
+:UNL_Structure
+  rdf:type owl:Class ;
+  rdfs:comment "Sentences expressed in UNL can be organized in paragraphs and documents" ;
+  rdfs:label "UNL Structure" ;
+.
+:UW_Lexeme
+  rdf:type owl:Class ;
+  rdfs:subClassOf skos:Concept ;
+  rdfs:subClassOf :UNLKB_Node ;
+  rdfs:subClassOf :Universal_Word ;
+.
+:UW_Occurrence
+  rdf:type owl:Class ;
+  rdfs:subClassOf :UNL_Graph_Node ;
+  rdfs:subClassOf :Universal_Word ;
+.
+:Universal_Attribute
+  rdf:type rdfs:Datatype ;
+  rdf:type owl:Class ;
+  rdfs:comment """More informations about Universal Attributes here :
+http://www.unlweb.net/wiki/Universal_Attributes
+
+Classes in this hierarchy are informative.
+Universal attributes must be expressed as strings (label of the attribute) with datatype :Universal_Attribute.
+
+Universal Attributes are arcs linking a node to itself. In opposition to Universal Relations, they correspond to one-place predicates, i.e., functions that take a single argument. In UNL, attributes have been normally used to represent information conveyed by natural language grammatical categories (such as tense, mood, aspect, number, etc). The set of attributes, which is claimed to be universal, is defined in the UNL Specs and is not open to frequent additions.""" ;
+  rdfs:label "Universal Attribute" ;
+  rdfs:subClassOf :UNL_Structure ;
+  owl:equivalentClass [
+      rdf:type rdfs:Datatype ;
+      owl:oneOf (
+          ".@1"
+          ".@2"
+          ".@3"
+          ".@ability"
+          ".@about"
+          ".@above"
+          ".@according_to"
+          ".@across"
+          ".@active"
+          ".@adjective"
+          ".@adverb"
+          ".@advice"
+          ".@after"
+          ".@again"
+          ".@against"
+          ".@agreement"
+          ".@all"
+          ".@alliteration"
+          ".@almost"
+          ".@along"
+          ".@also"
+          ".@although"
+          ".@among"
+          ".@anacoluthon"
+          ".@anadiplosis"
+          ".@anaphora"
+          ".@anastrophe"
+          ".@and"
+          ".@anger"
+          ".@angle_bracket"
+          ".@antanaclasis"
+          ".@anterior"
+          ".@anthropomorphism"
+          ".@anticlimax"
+          ".@antimetabole"
+          ".@antiphrasis"
+          ".@antithesis"
+          ".@antonomasia"
+          ".@any"
+          ".@apposition"
+          ".@archaic"
+          ".@around"
+          ".@as"
+          ".@as.@if"
+          ".@as_far_as"
+          ".@as_of"
+          ".@as_per"
+          ".@as_regards"
+          ".@as_well_as"
+          ".@assertion"
+          ".@assonance"
+          ".@assumption"
+          ".@asyndeton"
+          ".@at"
+          ".@attention"
+          ".@back"
+          ".@barring"
+          ".@because"
+          ".@because_of"
+          ".@before"
+          ".@behind"
+          ".@belief"
+          ".@below"
+          ".@beside"
+          ".@besides"
+          ".@between"
+          ".@beyond"
+          ".@both"
+          ".@bottom"
+          ".@brace"
+          ".@brachylogia"
+          ".@but"
+          ".@by"
+          ".@by_means_of"
+          ".@catachresis"
+          ".@causative"
+          ".@certain"
+          ".@chiasmus"
+          ".@circa"
+          ".@climax"
+          ".@clockwise"
+          ".@colloquial"
+          ".@command"
+          ".@comment"
+          ".@concerning"
+          ".@conclusion"
+          ".@condition"
+          ".@confirmation"
+          ".@consent"
+          ".@consequence"
+          ".@consonance"
+          ".@contact"
+          ".@contentment"
+          ".@continuative"
+          ".@conviction"
+          ".@decision"
+          ".@deduction"
+          ".@def"
+          ".@desire"
+          ".@despite"
+          ".@determination"
+          ".@dialect"
+          ".@disagreement"
+          ".@discontentment"
+          ".@dissent"
+          ".@distal"
+          ".@double_negative"
+          ".@double_parenthesis"
+          ".@double_quote"
+          ".@doubt"
+          ".@down"
+          ".@dual"
+          ".@due_to"
+          ".@during"
+          ".@dysphemism"
+          ".@each"
+          ".@either"
+          ".@ellipsis"
+          ".@emphasis"
+          ".@enough"
+          ".@entire"
+          ".@entry"
+          ".@epanalepsis"
+          ".@epanorthosis"
+          ".@equal"
+          ".@equivalent"
+          ".@euphemism"
+          ".@even"
+          ".@even.@if"
+          ".@except"
+          ".@except.@if"
+          ".@except_for"
+          ".@exclamation"
+          ".@excluding"
+          ".@exhortation"
+          ".@expectation"
+          ".@experiential"
+          ".@extra"
+          ".@failing"
+          ".@familiar"
+          ".@far"
+          ".@fear"
+          ".@female"
+          ".@focus"
+          ".@following"
+          ".@for"
+          ".@from"
+          ".@front"
+          ".@future"
+          ".@generic"
+          ".@given"
+          ".@habitual"
+          ".@half"
+          ".@hesitation"
+          ".@hope"
+          ".@hyperbole"
+          ".@hypothesis"
+          ".@if"
+          ".@if.@only"
+          ".@imperfective"
+          ".@in"
+          ".@in_accordance_with"
+          ".@in_addition_to"
+          ".@in_case"
+          ".@in_case_of"
+          ".@in_front_of"
+          ".@in_place_of"
+          ".@in_spite_of"
+          ".@inceptive"
+          ".@inchoative"
+          ".@including"
+          ".@indef"
+          ".@inferior"
+          ".@inside"
+          ".@instead_of"
+          ".@intention"
+          ".@interrogation"
+          ".@intimate"
+          ".@invitation"
+          ".@irony"
+          ".@iterative"
+          ".@jargon"
+          ".@judgement"
+          ".@least"
+          ".@left"
+          ".@less"
+          ".@like"
+          ".@literary"
+          ".@majority"
+          ".@male"
+          ".@maybe"
+          ".@medial"
+          ".@metaphor"
+          ".@metonymy"
+          ".@minority"
+          ".@minus"
+          ".@more"
+          ".@most"
+          ".@multal"
+          ".@narrative"
+          ".@near"
+          ".@near_to"
+          ".@necessity"
+          ".@neither"
+          ".@neutral"
+          ".@no"
+          ".@not"
+          ".@notwithstanding"
+          ".@noun"
+          ".@obligation"
+          ".@of"
+          ".@off"
+          ".@on"
+          ".@on_account_of"
+          ".@on_behalf_of"
+          ".@on_top_of"
+          ".@only"
+          ".@onomatopoeia"
+          ".@opinion"
+          ".@opposite"
+          ".@or"
+          ".@ordinal"
+          ".@other"
+          ".@outside"
+          ".@over"
+          ".@owing_to"
+          ".@own"
+          ".@oxymoron"
+          ".@pace"
+          ".@pain"
+          ".@paradox"
+          ".@parallelism"
+          ".@parenthesis"
+          ".@paronomasia"
+          ".@part"
+          ".@passive"
+          ".@past"
+          ".@paucal"
+          ".@pejorative"
+          ".@per"
+          ".@perfect"
+          ".@perfective"
+          ".@periphrasis"
+          ".@permission"
+          ".@permissive"
+          ".@persistent"
+          ".@person"
+          ".@pl"
+          ".@pleonasm"
+          ".@plus"
+          ".@polite"
+          ".@polyptoton"
+          ".@polysyndeton"
+          ".@possibility"
+          ".@posterior"
+          ".@prediction"
+          ".@present"
+          ".@presumption"
+          ".@prior_to"
+          ".@probability"
+          ".@progressive"
+          ".@prohibition"
+          ".@promise"
+          ".@prospective"
+          ".@proximal"
+          ".@pursuant_to"
+          ".@qua"
+          ".@quadrual"
+          ".@recent"
+          ".@reciprocal"
+          ".@reflexive"
+          ".@regarding"
+          ".@regardless_of"
+          ".@regret"
+          ".@relative"
+          ".@relief"
+          ".@remote"
+          ".@repetition"
+          ".@request"
+          ".@result"
+          ".@reverential"
+          ".@right"
+          ".@round"
+          ".@same"
+          ".@save"
+          ".@side"
+          ".@since"
+          ".@single_quote"
+          ".@singular"
+          ".@slang"
+          ".@so"
+          ".@speculation"
+          ".@speech"
+          ".@square_bracket"
+          ".@subsequent_to"
+          ".@such"
+          ".@suggestion"
+          ".@superior"
+          ".@surprise"
+          ".@symploce"
+          ".@synecdoche"
+          ".@synesthesia"
+          ".@taboo"
+          ".@terminative"
+          ".@than"
+          ".@thanks_to"
+          ".@that_of"
+          ".@thing"
+          ".@threat"
+          ".@through"
+          ".@throughout"
+          ".@times"
+          ".@title"
+          ".@to"
+          ".@top"
+          ".@topic"
+          ".@towards"
+          ".@trial"
+          ".@tuple"
+          ".@under"
+          ".@unit"
+          ".@unless"
+          ".@unlike"
+          ".@until"
+          ".@up"
+          ".@upon"
+          ".@verb"
+          ".@versus"
+          ".@vocative"
+          ".@warning"
+          ".@weariness"
+          ".@wh"
+          ".@with"
+          ".@with_regard_to"
+          ".@with_respect_to"
+          ".@within"
+          ".@without"
+          ".@worth"
+          ".@yes"
+          ".@zoomorphism"
+        ) ;
+    ] ;
+.
+:Universal_Relation
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:comment """For detailled specifications about UNL Universal Relations, see :
+http://www.unlweb.net/wiki/Universal_Relations
+
+Universal Relations, formerly known as \"links\", are labelled arcs connecting a node to another node in a UNL graph. They correspond to two-place semantic predicates holding between two Universal Words. In UNL, universal relations have been normally used to represent semantic cases or thematic roles (such as agent, object, instrument, etc.) between UWs. The repertoire of universal relations is defined in the UNL Specs and it is not open to frequent additions.
+
+Universal Relations are organized in a hierarchy where lower nodes subsume upper nodes. The topmost level is the relation \"rel\", which simply indicates that there is a semantic relation between two elements.
+
+Universal Relations as Object Properties are used only in UNL Knowledge Bases. In UNL graphs, you must use the reified versions of those properties in order to specify the scopes (and not only the sources and targets).""" ;
+  rdfs:domain :UNL_Node ;
+  rdfs:label "Universal Relation" ;
+  rdfs:range :UNL_Node ;
+  rdfs:subClassOf :UNL_Structure ;
+  rdfs:subPropertyOf skos:semanticRelation ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+  skos:altLabel "universal relation" ;
+  skos:definition "Simply indicates that there is a semantic relation (unspecified) between two elements. Use the sub-properties to specify a semantic relation." ;
+.
+:Universal_Word
+  rdf:type owl:Class ;
+  rdfs:comment """For details abour UWs, see :
+http://www.unlweb.net/wiki/Universal_Words
+
+Universal Words, or simply UW's, are the words of UNL, and correspond to nodes - to be interlinked by Universal Relations and specified by Universal Attributes - in a UNL graph.""" ;
+  rdfs:label "Universal Word" ;
+  rdfs:subClassOf :UNL_Structure ;
+.
+:absolute_tense
+  rdf:type owl:Class ;
+  rdfs:subClassOf :time ;
+.
+:agt
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "agt" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "agent"@en ;
+  skos:definition "A participant in an action or process that provokes a change of state or location."@en ;
+  skos:example """John killed Mary = agt(killed;John)
+Mary was killed by John = agt(killed;John)
+arrival of John = agt(arrival;John)"""@en ;
+.
+:and
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "and" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "conjunction"@en ;
+  skos:definition "Used to state a conjunction between two entities."@en ;
+  skos:example """John and Mary = and(John;Mary)
+both John and Mary = and(John;Mary)
+neither John nor Mary = and(John;Mary)
+John as well as Mary = and(John;Mary)"""@en ;
+.
+:animacy
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:ant
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "ant" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :aoj ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :aoj ;
+  skos:altLabel "opposition or concession"@en ;
+  skos:definition "Used to indicate that two entities do not share the same meaning or reference. Also used to indicate concession."@en ;
+  skos:example """John is not Peter = ant(Peter;John)
+3 + 2 != 6 = ant(6;3+2)
+Although he's quiet, he's not shy = ant(he's not shy;he's quiet)"""@en ;
+.
+:aoj
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "aoj" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "object of an attribute"@en ;
+  skos:definition "The subject of an stative verb. Also used to express the predicative relation between the predicate and the subject."@en ;
+  skos:example """John has two daughters = aoj(have;John)
+the book belongs to Mary = aoj(belong;book)
+the book contains many pictures = aoj(contain;book)
+John is sad = aoj(sad;John)
+John looks sad = aoj(sad;John)"""@en ;
+.
+:aspect
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:bas
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "bas" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :per ;
+  rdfs:subPropertyOf :per ;
+  skos:altLabel "basis for a comparison" ;
+.
+:ben
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "ben" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "beneficiary"@en ;
+  skos:definition "A participant who is advantaged or disadvantaged by an event."@en ;
+  skos:example """John works for Peter = ben(works;Peter)
+John gave the book to Mary for Peter = ben(gave;Peter)"""@en ;
+.
+:cnt
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "cnt" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "content or theme"@en ;
+  skos:definition "The object of an stative or experiental verb, or the theme of an entity."@en ;
+  skos:example """John has two daughters = cnt(have;two daughters)
+the book belongs to Mary = cnt(belong;Mary)
+the book contains many pictures = cnt(contain;many pictures)
+John believes in Mary = cnt(believe;Mary)
+John saw Mary = cnt(saw;Mary)
+John loves Mary = cnt(love;Mary)
+The explosion was heard by everyone = cnt(hear;explosion)
+a book about Peter = cnt(book;Peter)"""@en ;
+.
+:comparative
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:con
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "con" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "condition"@en ;
+  skos:definition "A condition of an event."@en ;
+  skos:example """If I see him, I will tell him = con(I will tell him;I see him)
+I will tell him if I see him = con(I will tell him;I see him)"""@en ;
+.
+:conventions
+  rdf:type owl:Class ;
+  rdfs:subClassOf :syntactic_structures ;
+.
+:coo
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "coo" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :dur ;
+  rdfs:subPropertyOf :dur ;
+  skos:altLabel "co-occurrence" ;
+.
+:degree
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:direction
+  rdf:type owl:Class ;
+  rdfs:subClassOf :place ;
+.
+:dur
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "dur" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :tim ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :tim ;
+  skos:altLabel "duration or co-occurrence"@en ;
+  skos:definition "The duration of an entity or event."@en ;
+  skos:example """John worked for five hours = dur(worked;five hours)
+John worked hard the whole summer = dur(worked;the whole summer)
+John completed the task in ten minutes = dur(completed;ten minutes)
+John was reading while Peter was cooking = dur(John was reading;Peter was cooking)"""@en ;
+.
+:emotions
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:equ
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "equ" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :aoj ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :aoj ;
+  skos:altLabel "synonym or paraphrase"@en ;
+  skos:definition "Used to indicate that two entities share the same meaning or reference. Also used to indicate semantic apposition."@en ;
+  skos:example """The morning star is the evening star = equ(evening star;morning star)
+3 + 2 = 5 = equ(5;3+2)
+UN (United Nations) = equ(UN;United Nations)
+John, the brother of Mary = equ(John;the brother of Mary)"""@en ;
+.
+:exp
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "exp" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "experiencer"@en ;
+  skos:definition "A participant in an action or process who receives a sensory impression or is the locus of an experiential event."@en ;
+  skos:example """John believes in Mary = exp(believe;John)
+John saw Mary = exp(saw;John)
+John loves Mary = exp(love;John)
+The explosion was heard by everyone = exp(hear;everyone)"""@en ;
+.
+:figure_of_speech
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:fld
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "fld" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :aoj ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :aoj ;
+  skos:altLabel "field"@en ;
+  skos:definition "Used to indicate the semantic domain of an entity."@en ;
+  skos:example "sentence (linguistics) = fld(sentence;linguistics)"@en ;
+.
+:gender
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:gol
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "gol" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :plc ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :plc ;
+  skos:altLabel "final state, place, destination or recipient"@en ;
+  skos:definition "The final state, place, destination or recipient of an entity or event."@en ;
+  skos:example """John received the book = gol(received;John)
+John won the prize = gol(won;John)
+John changed from poor to rich = gol(changed;rich)
+John gave the book to Mary = gol(gave;Mary)
+He threw the book at me = gol(threw;me)
+John goes to NY = gol(go;NY)
+train to NY = gol(train;NY)"""@en ;
+.
+:has_attribute
+  rdf:type owl:DatatypeProperty ;
+  rdfs:domain :UNL_Node ;
+  rdfs:range :attribute ;
+  rdfs:subPropertyOf :unlDatatypeProperty ;
+.
+:has_id
+  rdf:type owl:AnnotationProperty ;
+  rdfs:domain :UNL_Structure ;
+  rdfs:subPropertyOf :unlAnnotationProperty ;
+.
+:has_index
+  rdf:type owl:DatatypeProperty ;
+  rdfs:domain :UNL_Structure ;
+  rdfs:range xsd:integer ;
+  rdfs:subPropertyOf :unlDatatypeProperty ;
+.
+:has_master_definition
+  rdf:type owl:AnnotationProperty ;
+  rdfs:domain :UW_Lexeme ;
+  rdfs:range xsd:string ;
+  rdfs:subPropertyOf :unlAnnotationProperty ;
+.
+:has_occurrence
+  rdf:type owl:ObjectProperty ;
+  rdfs:domain :UW_Lexeme ;
+  rdfs:range :UW_Occurrence ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+  owl:inverseOf :is_occurrence_of ;
+.
+:has_scope
+  rdf:type owl:ObjectProperty ;
+  rdfs:domain :Universal_Relation ;
+  rdfs:range :UNL_Scope ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+  owl:inverseOf :is_scope_of ;
+.
+:has_source
+  rdf:type owl:ObjectProperty ;
+  rdfs:domain :Universal_Relation ;
+  rdfs:range :UNL_Node ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+  owl:equivalentProperty :is_source_of ;
+.
+:has_target
+  rdf:type owl:ObjectProperty ;
+  rdfs:domain :Universal_Relation ;
+  rdfs:range :UNL_Node ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+  owl:inverseOf :is_target_of ;
+.
+:icl
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "icl" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :aoj ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :aoj ;
+  skos:altLabel "hyponymy, is a kind of"@en ;
+  skos:definition "Used to refer to a subclass of a class."@en ;
+  skos:example "Dogs are mammals = icl(mammal;dogs)"@en ;
+.
+:information_structure
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:ins
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "ins" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :man ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :man ;
+  skos:altLabel "instrument or method"@en ;
+  skos:definition "An inanimate entity or method that an agent uses to implement an event. It is the stimulus or immediate physical cause of an event."@en ;
+  skos:example """The cook cut the cake with a knife = ins(cut;knife)
+She used a crayon to scribble a note = ins(used;crayon)
+That window was broken by a hammer = ins(broken;hammer)
+He solved the problem with a new algorithm = ins(solved;a new algorithm)
+He solved the problem using an algorithm = ins(solved;using an algorithm)
+He used Mathematics to solve the problem = ins(used;Mathematics)"""@en ;
+.
+:iof
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "iof" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :aoj ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :aoj ;
+  skos:altLabel "is an instance of"@en ;
+  skos:definition "Used to refer to an instance or individual element of a class."@en ;
+  skos:example "John is a human being = iof(human being;John)"@en ;
+.
+:is_occurrence_of
+  rdf:type owl:ObjectProperty ;
+  rdfs:domain :UW_Occurrence ;
+  rdfs:range :UW_Lexeme ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+  owl:inverseOf :has_occurrence ;
+.
+:is_scope_of
+  rdf:type owl:ObjectProperty ;
+  rdfs:domain :UNL_Scope ;
+  rdfs:range :Universal_Relation ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+.
+:is_source_of
+  rdf:type owl:ObjectProperty ;
+  rdfs:domain :UNL_Node ;
+  rdfs:range :Universal_Relation ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+.
+:is_substructure_of
+  rdf:type owl:ObjectProperty ;
+  rdfs:domain :UNL_Structure ;
+  rdfs:range :UNL_Structure ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+  owl:inverseOf :is_superstructure_of ;
+.
+:is_superstructure_of
+  rdf:type owl:ObjectProperty ;
+  rdfs:domain :UNL_Structure ;
+  rdfs:range :UNL_Structure ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+.
+:is_target_of
+  rdf:type owl:ObjectProperty ;
+  rdfs:domain :UNL_Node ;
+  rdfs:range :Universal_Relation ;
+  rdfs:subPropertyOf :unlObjectProperty ;
+.
+:lexical_category
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:location
+  rdf:type owl:Class ;
+  rdfs:subClassOf :place ;
+.
+:lpl
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "lpl" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :plc ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :plc ;
+  skos:altLabel "logical place"@en ;
+  skos:definition "A non-physical place where an entity or event occurs or a state exists."@en ;
+  skos:example """John works in politics = lpl(works;politics)
+John is in love = lpl(John;love)
+officer in command = lpl(officer;command)"""@en ;
+.
+:man
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "man" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "manner"@en ;
+  skos:definition "Used to indicate how the action, experience or process of an event is carried out."@en ;
+  skos:example """John bought the car quickly = man(bought;quickly)
+John bought the car in equal payments = man(bought;in equal payments)
+John paid in cash = man(paid;in cash)
+John wrote the letter in German = man(wrote;in German)
+John wrote the letter in a bad manner = man(wrote;in a bad manner)"""@en ;
+.
+:manner
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:mat
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "mat" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :mod ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :mod ;
+  skos:altLabel "material"@en ;
+  skos:definition "Used to indicate the material of which an entity is made."@en ;
+  skos:example """A statue in bronze = mat(statue;bronze)
+a wood box = mat(box;wood)
+a glass mug = mat(mug;glass)"""@en ;
+.
+:met
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "met" ;
+  rdfs:subClassOf :ins ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :ins ;
+  skos:altLabel "method" ;
+.
+:mod
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "mod" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "modifier"@en ;
+  skos:definition "A general modification of an entity."@en ;
+  skos:example """a beautiful book = mod(book;beautiful)
+an old book = mod(book;old)
+a book with 10 pages = mod(book;with 10 pages)
+a book in hard cover = mod(book;in hard cover)
+a poem in iambic pentameter = mod(poem;in iambic pentamenter)
+a man in an overcoat = mod(man;in an overcoat)"""@en ;
+.
+:modality
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:nam
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "nam" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :mod ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :mod ;
+  skos:altLabel "name"@en ;
+  skos:definition "The name of an entity."@en ;
+  skos:example """The city of New York = nam(city;New York)
+my friend Willy = nam(friend;Willy)"""@en ;
+.
+:nominal_attributes
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:obj
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "obj" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "patient"@en ;
+  skos:definition "A participant in an action or process undergoing a change of state or location."@en ;
+  skos:example """John killed Mary = obj(killed;Mary)
+Mary died = obj(died;Mary)
+The snow melts = obj(melts;snow)"""@en ;
+.
+:opl
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "opl" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :obj ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :obj ;
+  skos:altLabel "objective place"@en ;
+  skos:definition "A place affected by an action or process."@en ;
+  skos:example """John was hit in the face = opl(hit;face)
+John fell in the water = opl(fell;water)"""@en ;
+.
+:or
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "or" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "disjunction"@en ;
+  skos:definition "Used to indicate a disjunction between two entities."@en ;
+  skos:example """John or Mary = or(John;Mary)
+either John or Mary = or(John;Mary)"""@en ;
+.
+:other
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:per
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "per" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "proportion, rate, distribution, measure or basis for a comparison"@en ;
+  skos:definition "Used to indicate a measure or quantification of an event."@en ;
+  skos:example """The course was split in two parts = per(split;in two parts)
+twice a week = per(twice;week)
+The new coat costs $70 = per(cost;$70)
+John is more beautiful than Peter = per(beautiful;Peter)
+John is as intelligent as Mary = per(intelligent;Mary)
+John is the most intelligent of us = per(intelligent;we)"""@en ;
+.
+:person
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:place
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:plc
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "plc" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "place"@en ;
+  skos:definition "The location or spatial orientation of an entity or event."@en ;
+  skos:example """John works here = plc(work;here)
+John works in NY = plc(work;NY)
+John works in the office = plc(work;office)
+John is in the office = plc(John;office)
+a night in Paris = plc(night;Paris)"""@en ;
+.
+:pof
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "pof" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :aoj ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :aoj ;
+  skos:altLabel "is part of"@en ;
+  skos:definition "Used to refer to a part of a whole."@en ;
+  skos:example "John is part of the family = pof(family;John)"@en ;
+.
+:polarity
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:pos
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "pos" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :mod ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :mod ;
+  skos:altLabel "possessor"@en ;
+  skos:definition "The possessor of a thing."@en ;
+  skos:example """the book of John = pos(book;John)
+John's book = pos(book;John)
+his book = pos(book;he)"""@en ;
+.
+:position
+  rdf:type owl:Class ;
+  rdfs:subClassOf :place ;
+.
+:positive
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:ptn
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "ptn" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "partner"@en ;
+  skos:definition "A secondary (non-focused) participant in an event."@en ;
+  skos:example """John fights with Peter = ptn(fight;Peter)
+John wrote the letter with Peter = ptn(wrote;Peter)
+John lives with Peter = ptn(live;Peter)"""@en ;
+.
+:pur
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "pur" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :man ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :man ;
+  skos:altLabel "purpose"@en ;
+  skos:definition "The purpose of an entity or event."@en ;
+  skos:example """John left early in order to arrive early = pur(John left early;arrive early)
+You should come to see us = pur(you should come;see us)
+book for children = pur(book;children)"""@en ;
+.
+:qua
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "qua" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :mod ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :mod ;
+  skos:altLabel "quantity"@en ;
+  skos:definition "Used to express the quantity of an entity."@en ;
+  skos:example """two books = qua(book;2)
+a group of students = qua(students;group)"""@en ;
+.
+:quantification
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:register
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:relative_tense
+  rdf:type owl:Class ;
+  rdfs:subClassOf :time ;
+.
+:res
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "res" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :obj ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :obj ;
+  skos:altLabel "result or factitive"@en ;
+  skos:definition "A referent that results from an entity or event."@en ;
+  skos:example """The cook bake a cake = res(bake;cake)
+They built a very nice building = res(built;a very nice building)"""@en ;
+.
+:rsn
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "rsn" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "reason"@en ;
+  skos:definition "The reason of an entity or event."@en ;
+  skos:example """John left because it was late = rsn(John left;it was late)
+John killed Mary because of John = rsn(killed;John)"""@en ;
+.
+:seq
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "seq" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "consequence"@en ;
+  skos:definition "Used to express consequence."@en ;
+  skos:example "I think therefore I am = seq(I think;I am)"@en ;
+.
+:social_deixis
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:specification
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:src
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "src" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :plc ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :plc ;
+  skos:altLabel "initial state, place, origin or source"@en ;
+  skos:definition "The initial state, place, origin or source of an entity or event."@en ;
+  skos:example """John came from NY = src(came;NY)
+John is from NY = src(John;NY)
+train from NY = src(train;NY)
+John changed from poor into rich = src(changed;poor)
+John received the book from Peter = src(received;Peter)
+John withdrew the money from the cashier = src(withdrew;cashier)"""@en ;
+.
+:superlative
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:syntactic_structures
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:tim
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "tim" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  skos:altLabel "time"@en ;
+  skos:definition "The temporal placement of an entity or event."@en ;
+  skos:example """The whistle will sound at noon = tim(sound;noon)
+John came yesterday = tim(came;yesterday)"""@en ;
+.
+:time
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
+:tmf
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "tmf" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :tim ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :tim ;
+  skos:altLabel "initial time"@en ;
+  skos:definition "The initial time of an entity or event."@en ;
+  skos:example "John worked since early = tmf(worked;early)"@en ;
+.
+:tmt
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "tmt" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :tim ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :tim ;
+  skos:altLabel "final time"@en ;
+  skos:definition "The final time of an entity or event."@en ;
+  skos:example "John worked until late = tmt(worked;late)"@en ;
+.
+:unlAnnotationProperty
+  rdf:type owl:AnnotationProperty ;
+  rdfs:subPropertyOf :unlProperty ;
+.
+:unlDatatypeProperty
+  rdf:type owl:DatatypeProperty ;
+  rdfs:subPropertyOf :unlProperty ;
+.
+:unlObjectProperty
+  rdf:type owl:ObjectProperty ;
+  rdfs:subPropertyOf :unlProperty ;
+.
+:unlProperty
+  rdf:type rdf:Property ;
+.
+:via
+  rdf:type owl:Class ;
+  rdf:type owl:ObjectProperty ;
+  rdfs:label "bas" ;
+  rdfs:label "met" ;
+  rdfs:label "via" ;
+  rdfs:subClassOf :Universal_Relation ;
+  rdfs:subClassOf :plc ;
+  rdfs:subPropertyOf :Universal_Relation ;
+  rdfs:subPropertyOf :plc ;
+  skos:altLabel "intermediate state or place"@en ;
+  skos:definition "The intermediate place or state of an entity or event."@en ;
+  skos:example """John went from NY to Geneva through Paris = via(went;Paris)
+The baby crawled across the room = via(crawled;across the room)"""@en ;
+.
+:voice
+  rdf:type owl:Class ;
+  rdfs:subClassOf :Universal_Attribute ;
+.
diff --git a/frame/requirement-ontology.ttl b/frame/requirement-ontology.ttl
new file mode 100644
index 0000000000000000000000000000000000000000..52b0c59dd430021a57c510b20836fa636ce7aa3f
--- /dev/null
+++ b/frame/requirement-ontology.ttl
@@ -0,0 +1,72 @@
+# baseURI: https://unsel.tetras-libre.fr/rdf/requirement-ontology
+# prefix: requirement-ontology
+
+@prefix CCTP-SRSA-IP-20210625: <http://rdf-unl.org/CCTP-SRSA-IP-20210625#> .
+@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 requirement-ontology: <https://unsel.tetras-libre.fr/rdf/requirement-ontology#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+<https://unsel.tetras-libre.fr/rdf/requirement-ontology>
+  rdf:type owl:Ontology ;
+  owl:versionInfo "Created with TopBraid Composer" ;
+.
+requirement-ontology:contingent
+  rdf:type owl:Class ;
+  rdfs:comment "if it is not necessarily false and not necessarily true (i.e. possible but not necessarily true)" ;
+  rdfs:label "contingent "@fr ;
+  rdfs:label "contingent"@en ;
+  rdfs:subClassOf requirement-ontology:modality ;
+.
+requirement-ontology:impossible
+  rdf:type owl:Class ;
+  rdfs:comment "if it is not possibly true (i.e. false and necessarily false)" ;
+  rdfs:label "impossible "@fr ;
+  rdfs:label "impossible"@en ;
+  rdfs:subClassOf requirement-ontology:modality ;
+.
+requirement-ontology:modality
+  rdf:type owl:Class ;
+  rdfs:label "modality"@en ;
+  rdfs:label "modalité"@fr ;
+  rdfs:subClassOf owl:Thing ;
+.
+requirement-ontology:necessary
+  rdf:type owl:Class ;
+  rdfs:comment "if it is not possibly false (i.e. true and necessarily true)" ;
+  rdfs:label "necessary"@en ;
+  rdfs:label "nécessaire "@fr ;
+  rdfs:subClassOf requirement-ontology:modality ;
+.
+requirement-ontology:possible
+  rdf:type owl:Class ;
+  rdfs:comment "if it is not necessarily false (regardless of whether it is actually true or actually false)" ;
+  rdfs:label "possible "@fr ;
+  rdfs:label "possible"@en ;
+  rdfs:subClassOf requirement-ontology:modality ;
+.
+requirement-ontology:requirement
+  rdf:type owl:Class ;
+  rdfs:label "exigence"@fr ;
+  rdfs:label "requirement"@en ;
+  rdfs:subClassOf requirement-ontology:statement_type ;
+.
+requirement-ontology:statement_type
+  rdf:type owl:Class ;
+  rdfs:label "Statement type"@en ;
+  rdfs:label "Type d'énoncé "@fr ;
+  rdfs:subClassOf owl:Thing ;
+.
+requirement-ontology:terminology
+  rdf:type owl:Class ;
+  rdfs:label "terminologie "@fr ;
+  rdfs:label "terminology"@en ;
+  rdfs:subClassOf requirement-ontology:statement_type ;
+.
+requirement-ontology:unknown
+  rdf:type owl:Class ;
+  rdfs:label "inconnu"@fr ;
+  rdfs:label "unknown "@en ;
+  rdfs:subClassOf requirement-ontology:modality ;
+.
diff --git a/frame/system-ontology.ttl b/frame/system-ontology.ttl
new file mode 100644
index 0000000000000000000000000000000000000000..ee6e79ea3e96dc66fb60e5cd65c87b674cf2f45f
--- /dev/null
+++ b/frame/system-ontology.ttl
@@ -0,0 +1,56 @@
+# baseURI: https://unsel.tetras-libre.fr/rdf/system-ontology
+# prefix: system-ontology
+
+@prefix : <https://unsel.tetras-libre.fr/rdf/system-ontology#> .
+@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 system-ontology: <https://unsel.tetras-libre.fr/rdf/system-ontology#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+<https://unsel.tetras-libre.fr/rdf/system-ontology>
+  rdf:type owl:Ontology ;
+  owl:versionInfo "Created with TopBraid Composer" ;
+.
+system-ontology:action
+  rdf:type owl:Class ;
+  rdfs:label "action "@en ;
+  rdfs:label "action "@fr ;
+  rdfs:subClassOf system-ontology:property ;
+.
+system-ontology:agent
+  rdf:type owl:Class ;
+  rdfs:label "agent"@en ;
+  rdfs:label "agent"@fr ;
+  rdfs:subClassOf system-ontology:entity ;
+.
+system-ontology:attribute
+  rdf:type owl:Class ;
+  rdfs:label "attribut"@fr ;
+  rdfs:label "attribute "@en ;
+  rdfs:subClassOf system-ontology:property ;
+.
+system-ontology:component
+  rdf:type owl:Class ;
+  rdfs:label "component"@en ;
+  rdfs:label "composant"@fr ;
+  rdfs:subClassOf system-ontology:entity ;
+.
+system-ontology:entity
+  rdf:type owl:Class ;
+  rdfs:label "entity"@en ;
+  rdfs:label "entité"@fr ;
+  rdfs:subClassOf owl:Thing ;
+.
+system-ontology:message
+  rdf:type owl:Class ;
+  rdfs:label "message"@en ;
+  rdfs:label "message"@fr ;
+  rdfs:subClassOf system-ontology:entity ;
+.
+system-ontology:property
+  rdf:type owl:Class ;
+  rdfs:label "property"@en ;
+  rdfs:label "propriété"@fr ;
+  rdfs:subClassOf owl:Thing ;
+.
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f1ddd6747ba30b973c6463e27c2f818e3956d0c9
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,2 @@
+rdflib
+sparqlwrapper