我是否应该始终在OWL本体中创建双向关系?

时间:2017-12-22 01:46:22

标签: owl ontology

例如,对于BookAuthor类,我可以有authorOf关系,或hasAuthor关系。对于StudentCourse类,我可以在两者之间建立courseOfhasCourse个关系。

总是在两个方向上建立关系似乎是多余的。是否有处理情况的指导原则或原则?

1 个答案:

答案 0 :(得分:2)

我不知道有任何建议总是明确提供反向属性。

反向属性至少有两个用例:

  • 需要引用inverse属性,我们称之为“IP”, 在本体内部。

    我们可能需要声明另一个属性与IP不相交。或者另一个属性相当于IP。现在,我们提供IP以允许该声明。另一个非常简单的例子是希望在正确的地方发表评论。你可以定义IP只是为了放置一个rdfs:comment。

  • 需要从外部引用反向属性。

    一个例子是:我们的应用程序将自然语言的翻译分配给ObjectProperties。在着名的Protege Pizza Ontology的情况下,我们将“hasTopping”翻译为“en:has topping”等字符串。我们还想用自然语言表达“en:是顶峰”。 (我们的应用程序语义需要它。)这是创建反向属性“isToppingOf”的原因:要拥有一个实例,相应的URI,我们的翻译可以参考。