I am experiencing some issues with version 0.41 of owlready2 when working with an ontology file (which I can provide here shacl_test.owx
). My primary focus is on inferring object properties between individuals using the Pellet and/or HermiT reasoners, with the infer_property_values option set to True. The ontology file contains several OWL subproperty and inverse property axioms. In Protegé, both reasoners produce the expected results, including the inferred object properties derived from inverse and subproperty axioms.
However, when using owlready2, I observed that the HermiT reasoner output (checked in the console) did not contain any inferred object properties, indicating an issue with HermiT. The input temp file appeared to be correct and similar to the one used in Protegé. The following command line was used for HermiT:
HermiT.jar org.semanticweb.HermiT.cli.CommandLine -c -O -D -I temp_file -Y
The functional OWL output did not include any object properties between individuals, with the exception of classification. For example :inLine properties and :containsPhenomenon properties are missing.
Regarding the Pellet reasoner, the direct output seems accurate (on console), containing all necessary inferred object properties. However, the output parsed by owlready2 seems to be missing some inferred properties, particularly those resulting from an inverse axiom. E.g. inferred :inLine property instances are there in the owlready2 ontology, but :containsPhenomenon properties are missing.The following command line input was used for Pellet:
pellet.Pellet realize --loader Jena --input-format N-Triples --infer-prop-values --ignore-imports temp_file
Any ideas on this?