How to work with the ontologies? - OliverKrr/ES-Robot-Component-Design GitHub Wiki

Wiki page on "How to work with the ontologies"

  • The ontologies are located here
  • The protégé editor can be used to modify the ontologies
  • The abstract and parts of the reasoning ontology have a direct dependency to the code
    • The code-generation plugin is used to generate a Vocabulary of the classes, object- and data properties in the ontologies, which can be directly used in the code over constants
    1. Download the plugin here
    2. Copy the file to the "plugins" dir of protégé (e.g. C:\Program Files\Protege-5.2.0\plugins).
    3. Remove the old code-generation plugin
    4. Open the reasoning ontology with protégé
    5. Click: Tools > Generate Java code...
    6. Root output folder: ES-Robot-Component-Design\InferenceEngine\src\main\java
    7. Java package: edu.kit.anthropomatik.h2t.expertsystem.generated
    8. Ok

Component Ontology

  • New components can be added here
  • New component types have to be a subclass of "Subcomponent"
  • New components of existing types are required to have the same data properties values as the other components

Reasoning Ontology

  • This ontology includes the reasoning procedure and rules
  • The reasoning procedure is defined as a reasoning tree
  • The rules are located in a txt file and in the ontology.

Tips & Tricks

  • Renaming or deleting of classes in the ontology can lead to deletion of rules. Because of that, I have kept the rules in the ontology update to date with the txt file
  • The reasoning can be fragile to small changes in the rules. I recommend to incrementally test changes