如何使用相同的对象属性断言获取OWLIndividual的集合?

时间:2015-08-27 17:32:40

标签: java semantic-web owl protege owl-api

我有一个使用Protegé4.3.0创建的本体,我会使用推理器来检索具有相同对象属性断言的OWLIndividual个体。

我读过this Q&A,但我想我应该调整建议的解决方案,因为我的问题略有不同,如下所述。

  • 本体包含一组代表某种动物的个体(鼠标 Cat Dog )。< / p>

  • 本体包含一组个体( mouseEyes mouseEars mouseLegs catEyes catEars catLegs dogEyes dogEars dogLegs )与不同相关联课程(眼睛耳朵)。

    • 个人 mouseEyes catEyes dogEyes 与班级 Eyes 相关联。
    • 个人 mouseEars catEars dogEars Ears 类相关联。
    • 个人 mouseLegs catLegs dogLegs Legs 类相关联。
  • 例如,单个 catEyes 具有对象属性断言 arePartOf ,它关联 catEyes Cat 。其他人之间的关系与此类似。

mouseEyes mouseEars mouseLegs catEyes catEars < em>, catLegs dogEyes dogEars dogLegs ,我会检索具有相同对象的个人集合财产主张。例如,如果指定的个人是 catEyes ,那么推理者应该检索 catEyes catEars catLegs 。< / p>

我如何使用推理器来完成此任务?

1 个答案:

答案 0 :(得分:0)

我发现OWLReasoner中的方法Product对于使用推理器解决问题中暴露的问题非常有用。正如this comment中所指出的,SPARQL确实是查询模型的更好方法。

以下是我使用推理器实现的解决方案。

getObjectPropertyValues