jenaowlontologyjena-rules

Specifying class equivalence in Jena rules


Given an ontology with Class A and Class B I am stating a rule:

[-> (ns:Class_A owl:equivalentClass ns:Class_B)]

However the Jena generic rule reasoner is only applying the tag equivalentClass to Class A, i. e. it is not stating Class B equivalentClass Class A.

Furthermore, I have an object A that is an individual of Class A, the reasoner is not applying Class B as a type of object A.

Is there another way to specify class equivalence through Jena rules? And is it better to use the generic rule reasoner for this reasoning task or call the in-built Jena OWL reasoner? Or is there another reasoner that accepts Jena rules?


Solution

  • This problem was solved through the application of the owl reasoner Jena provides. We generated the model using the generic rule reasoner and then fed that model to the owl reasoner. The owl reasoner proceeds to apply the equivalentClass tag to all applicable classes