Let's consider

(1) P Domain CSuper

(2) CSub subClassOf CSuper

Using Jena, I'm trying to list the declared properties for CSub. What I believe is that P mustn't be listed as a declared property for CSub. My justification: P is a declared property for CSub, iff CSub is a domain for P, from (1) CSuper is a domain for P which doesn't imply that CSub is also a domain; (1) means that if (x, y) is P, then x is CSuper, clearly x may (not) be CSub. The surprising thing is that Jena is listing P as a declared property for CSub when using listDeclaredProperties method even using OntModelSpec.OWL_DL_MEM_RULE_INF or Pellet! Am I missing something?

Similar questions and discussions