courses:semint:lab_reasoning

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
courses:semint:lab_reasoning [2022/09/08 22:18] – created kktcourses:semint:lab_reasoning [2023/11/20 13:25] (current) – [Lab instructions] kkt
Line 1: Line 1:
 ===== Reasoning in ontologies ===== ===== Reasoning in ontologies =====
  
-  * Last verification: **20220909**+  * Last verification: **20221121**
   * Tools required for this lab:   * Tools required for this lab:
-    * [[http://protege.stanford.edu/products.php#desktop-protege|Protégé Desktop 5]] +    * [[https://protege.stanford.edu/software.php#desktop-protege|Protégé Desktop 5]] 
-    * [[http://semanticweb.org/wiki/Pellet|Pellet 2.3.1]] ({{https://krzysztof.kutt.pl/didactics/semweb/pellet-2.3.1.zip|pellet-2.3.1.zip}})+    * Reasoner: 
 +      * [[http://www.hermit-reasoner.com/|HermiT]] (mirror: {{https://krzysztof.kutt.pl/didactics/semweb/HermiT-1.3.8.1099.zip|HermiT-1.3.8.1099.zip}}) 
 +      * [[http://semanticweb.org/wiki/Pellet|Pellet 2.3.1]] (mirror: {{https://krzysztof.kutt.pl/didactics/semweb/pellet-2.3.1.zip|pellet-2.3.1.zip}}) (works only on Java <= 8)
  
 ==== Prepare yourself for the lab ==== ==== Prepare yourself for the lab ====
Line 103: Line 105:
 Description Logics (DL) reasoners may be integrated with other tools -- as in the case of Protege presented before -- as well as run independently via various interfaces. Popular DL reasoners include: FaCT++, Pellet, HermiT, RacerPro and many others. Description Logics (DL) reasoners may be integrated with other tools -- as in the case of Protege presented before -- as well as run independently via various interfaces. Popular DL reasoners include: FaCT++, Pellet, HermiT, RacerPro and many others.
  
-We will use the {{http://krzysztof.kutt.pl/didactics/semweb/pellet-2.3.1.zip|Pellet}} reasoner. +We will use the [[http://www.hermit-reasoner.com/|HermiT]] reasoner (//you can also use Pellet reasoner; the link is at the top of this page//)
-  - Unpack the zip. +  - Download the reasoner and unpack the zip. 
-  - Run ''pellet.sh help'' to get familiar with available commands. +  - Get familiar with available commands: 
-    * Use ''pellet.bat'' if you are using Windows. +    * For HermiT: ''java -jar HermiT.jar --help'' 
-  - Try ''pellet.sh consistency <ontology>'' where the ''<ontology>'' is: +    * For Pellet: ''pellet.sh help'' (use ''pellet.bat'' if you are using Windows) 
-    Your ontology from [[.:lab_onto2|previous lab]] +  - Check the consistency of the ontology and observe the results: 
-    ''people+pets.owl'' ontology provided with Pellet in ''examples/data/'' directory \\ and observe the results +    * For HermiT: ''java -jar HermiT.jar -k <ontology>'' where ''<ontology>'' is: 
-  Try ''pellet.sh classify <ontology>'' with the two above mentioned ontologies and observe the results.+      * Your ontology from [[.:lab_onto2|previous lab]] 
 +      * ''pizza.owl'' ontology provided with HermiT in ''project/examples/ontologies/'' directory 
 +    * For Pellet: ''pellet.sh consistency <ontology>'' where the ''<ontology>'' is: 
 +      Your ontology from [[.:lab_onto2|previous lab]] 
 +      ''people+pets.owl'' ontology provided with Pellet in ''examples/data/'' directory  
 +  - Classify two above mentioned ontologies and observe the results: 
 +    * For HermiT: ''java -jar HermiT.jar -cP <ontology>'' 
 +    * For Pellet: ''pellet.sh classify <ontology>''
  
 === 5. Advanced OWL reasoning [50 minutes] === === 5. Advanced OWL reasoning [50 minutes] ===
Line 141: Line 150:
   - Close the previous ontology. Load ''Family-tree-2.owl''   - Close the previous ontology. Load ''Family-tree-2.owl''
   - Create or find datatype properties: ''birthYear'', ''deathYear'', make them //functional//. \\ {{.:owl-datatypes.png?direct&200|}}   - Create or find datatype properties: ''birthYear'', ''deathYear'', make them //functional//. \\ {{.:owl-datatypes.png?direct&200|}}
-  - Create ''Victorian'' class: ''Person and birthYear some integer[>=1837, <=1901]''+  - Create ''Victorian'' class: ''<nowiki>Person and birthYear some integer[>=1837, <=1901]</nowiki>'' 
 +    * If ''<nowiki><=</nowiki>'' does not work, try: ''<nowiki>Person and (birthYear some xsd:integer[>=1837]) and not (birthYear some xsd:integer[>1901])</nowiki>''
   - Classify the ontology. How many individuals have been classified as Victorians?   - Classify the ontology. How many individuals have been classified as Victorians?
  
  • courses/semint/lab_reasoning.1662675522.txt.gz
  • Last modified: 3 years ago
  • by kkt