【发布时间】:2016-10-23 22:14:37
【问题描述】:
我在使用 Protégé 在 OWL 中建模时遇到以下问题:
多个Songs 可以在不同的Performances 中执行。每个Song可以被不同的Arranger排列在不同的Performance中。
我已经知道如何使用对象属性将Song 与Performance 关联起来。现在,如何将Song-Performance 对映射到Arranger? (在关系数据库中,我将其称为多对多Song-Performance 关系的“描述性属性”。
我知道我可以对对象属性使用注释,但我希望能够从该属性中推断出一些东西。 (例如:Song 有一个Arranger 排列在哪个Performance 中?)据我所知,我无法从注释中进行推断。
【问题讨论】:
-
在其他本体编辑器中,例如 TopBraid,您可以具体化三元组。这在 Protégé 中是不可能的,但您可以通过其他方式获得类似的结果,例如使用等效类。如果您提供有关数据的更多详细信息以及您想要实现的目标,那么提出解决方案会更容易。
-
此类问题的标准阅读材料:Defining N-ary Relations on the Semantic Web.
-
我会说这可以被认为是 How can I express additional information (time, probability) about a relation in RDF? 的复制品,它还包括 Protege 之外的更多可能性(例如,在 Triple 和 Quad-Stores 中)。
标签: semantic-web owl protege object-property