Jena provides a generic Reasoner interface when returning the reasoner of a model. How can I determine if it is a Rule based, so I can cast it to a GenericRuleReasoner
and use the methods for manipulating rules?
Note: without using instanceof
:)
Example
// in one part of the app it something like this
OntModelSpec spec = OntModelSpec.OWL_MEM_MICRO_RULE_INF;
OntModel ontologyModel = ModelFactory.createOntologyModel(spec, model);
// in another part
Reasoner reasoner = ontologyModel.getReasoner();
So now the reasoner is a com.hp.hpl.jena.reasoner.rulesys.OWLMicroReasoner
determined by .getClass()
but I want to cast it to a GenericRuleReasoner
by determining if it IS a rule capable one.