Jena在返回模型的推理器时提供了一个通用的Reasoner接口。如何确定它是否基于规则,因此我可以将其转换为GenericRuleReasoner
并使用这些方法来操作规则?
注意:不使用instanceof
:)
实施例
// 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();
所以现在推理者是由com.hp.hpl.jena.reasoner.rulesys.OWLMicroReasoner
确定的.getClass()
,但我想通过确定它是否具有规则能力来将其转换为GenericRuleReasoner
。