Java 利用owlapi推断等式语义(owl2rl)
我试图使用OWLAPI为OWL2RL“平等的语义”中的规则生成蕴涵。我已经试过了: 并尝试预先计算相同的单个推断:Java 利用owlapi推断等式语义(owl2rl),java,inference,owl-api,reasoner,Java,Inference,Owl Api,Reasoner,我试图使用OWLAPI为OWL2RL“平等的语义”中的规则生成蕴涵。我已经试过了: 并尝试预先计算相同的单个推断: reasoner.precomputeInferences(InferenceType.SAME_INDIVIDUAL); ontologyInf.addAxioms(reasoner.getPendingAxiomAdditions()); 我已经尝试使用Openllet和hermit作为推理机 但我仍然不能产生这样的蕴涵: If: T(?x, owl:sameAs, ?y)
reasoner.precomputeInferences(InferenceType.SAME_INDIVIDUAL);
ontologyInf.addAxioms(reasoner.getPendingAxiomAdditions());
我已经尝试使用Openllet和hermit作为推理机
但我仍然不能产生这样的蕴涵:
If:
T(?x, owl:sameAs, ?y)
T(?y, owl:sameAs, ?z)
Then:
T(?x, owl:sameAs, ?z)
或者平等语义中的任何东西。没有推理的公理生成器将
sameAs
关系具体化。您可以自己编写一个,例如基于InferedPropertyAssertionGenerator
,或者您可以在OWLAPI GitHub repo上打开一个问题,以将功能添加到库中
If:
T(?x, owl:sameAs, ?y)
T(?y, owl:sameAs, ?z)
Then:
T(?x, owl:sameAs, ?z)