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
, определив, действительно ли он способен на правило.