I tried the following. All get a ConversionException.
//public static final OntModelSpec INFERENCE_RULES = OntModelSpec.OWL_DL_MEM; public static final OntModelSpec INFERENCE_RULES = OntModelSpec.OWL_MEM; //public static final OntModelSpec INFERENCE_RULES = OntModelSpec.OWL_MEM_MICRO_RULE_INF; //public static final OntModelSpec INFERENCE_RULES = OntModelSpec.OWL_MEM_MINI_RULE_INF; //public static final OntModelSpec INFERENCE_RULES = OntModelSpec.OWL_LITE_MEM;
On 10/24/2021 1:28 PM, Dave Reynolds wrote:
On 24/10/2021 12:42, Steve Vestal wrote:I omitted a detail that seems to be important.//OntModel m = ModelFactory.createOntologyModel(); OntModel m = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM);String uri = "http://ex.org/A"; OntClass cls = m.createClass(uri); cls.createIndividual(uri); System.out.println("Test model " + uri); m.write(System.out, "Turtle");If I run the version without an OntModelSpec, it works. If I run the version with OntModelSpec.OWL_DL_MEM, then I get a ConversionException. I am running Jena 3.17.Use the OWL_MEM* OntModelSpecs not OWL_DL_MEM. OWL_MEM is set up to support OWL Full and so allows punning.OWL_MEM itself does not include any reasoner configuration, but then none is needed for this test case case. The OWL_MEM rule reasoner configurations support various subsets of OWL full so are also compatible with punning.The Javadoc says the default is a "weak reasoner." I may be able to work around this in this one app, but I'm wondering what will happen when the model is later loaded with another choice of reasoner such as OWL_DL_MEM or Openllet.OWL_DL_MEM doesn't include any reasoner, I can't speak to what Openllet supports in the way of punning.Dave
OpenPGP_signature
Description: OpenPGP digital signature