如何在 OWL2 中声明自定义 class 关系

How to declare a custom class relation in OWL2

如果我的问题太基础,我深表歉意,但经过一段时间寻找答案后,我无处可去,只能在这里。

假设 class 在 ontology 中(在 OWL 2 文件中表示):

<owl:Class rdf:ID="ClasseOne">
</owl:Class>

<owl:Class rdf:ID="ClasseTwo">
</owl:Class>

我有 1000 个 ClassOne 实例和 5000 个 ClassTwo 实例。在我的现实中 all ClassOne 实例以完全相同的方式关联(假设关系被命名为 "isRelatedTo")到 all ClassTwo.

的实例

我的想法是声明一个 class 关系并在 ClassOne 的声明中使用它,而不是让一个 ObjectProperty 应该在每个 ClassOne 实例中声明其值。

如何实现?

提前致谢!

类 与 OWL 中的属性无关,subsumption/equivalence 除外。通常,class A 的个体通过 属性 p 与 class B 的个体相关,例如A(a1), B(b1), p(a1, b1) 指出 class A 的个人 a1 通过 p 与 class [=11] 的个人 b1 相关=].

您可以通过使用带有 OWL class 表达式的子class 公理来表达 A 的任何个体与 B 的个体具有 p 关系作为超级 class,例如

Class: A SubClassOf: p some B

(在曼彻斯特 OWL 语法在这里)

请注意,这不一定意味着相反,即方向很重要。