Integrating ontology extensions
In order to integrate an ontology extension, you have to accomplish two steps:
- the new classes should subclass protons:Entity
- set the new classes' visibility level
Subclass protons:Entity
Inheritance
Make sure that the new classes inherit at least http://proton.semanticweb.org/2006/05/protons#Entity, directly or indirectly.
![]() | We recommend that, if applicable, your classes inherit one of these PROTON Top classes: |
Configuration
By default, the ontology extension modules (* .owl) are located in the <KIM_HOME>/context/default/kb/owl folder. You can place them somewhere else if you prefer, as long as you include them in the OWLIM configuration file correctly.
Schema specifics
All classes should have the "label" attribute set. You should pay special attention when using a third-party schema designer to create the ontology extension.
Here is an example extension module that defines "Robot" as a class and also defines the relation "createdBy":
example: in.space.owl
If you have an existing ontology in OWL, you can alternatively create a separate mapping file with only rdfs:subClass statements . Then add both your ontology and the mapping file to the KIM Server installation. See this step-by-step mapping from DBPedia ontology integration case-study as an example:
KIM User Interface (UI) visibility
All new classes that should be visible in the class hierarchy in the web interface and in the Structure/Patterns screens must be declared "visible" in the <KIM_HOME>/context/default/kb/visibility.nt file like this:
Example: visibility.nt (addition)