The semantic translator executes predefined ontology mapping to mediate differences between ontologies.
We generally use the Jena framework to handle the semantic level operations, and the open-source Pellet reasoner for reasoning, which is a complete OWL DL reasoner and can reason with SWRL rules, to implement the semantic translator.
- The translator is fed with serialized ontology instances.
- It parses the input using Jena Ontology API (OntModel type defined in Jena framework)
- then loads ontology mapping from the knowledge base (the configuration parameter "mappingRef").
- The data and mapping knowledge is passed to the Pellet reasoner to produce new facts, such as new classification of an instance in terms of the target ontology (InfModel in Jena framework).
- Then the result is serialized as translation output (OntModel in RDF/XML).