如何在 OWL 和 OWL-API 中表示 n 元数据类型属性

How to represent n-ary dataytypes properties in OWL and in OWL-API

我们可以很容易地表示二进制数据属性,例如 class 披萨有数据 属性 hasCalorificContentValue 一些 xsd:integer

假设我们要表示两个人location1 和location2 与Class 位置之间的距离,我们想说这些位置之间的距离等于一个整数,我们该怎么做?

这个关系是三个事物之间的关系(n元);在 location1、location2 之间,一些整数。 (在这个例子中,location1 和 location2 碰巧来自同一个 Class,在其他例子中,它们可能有不同的 classes.

在 OWL 和 OWL-API 中描述这种关系的最佳方式是什么? 我在 https://www.w3.org/TR/swbp-n-aryRelations/#useCase1 中读到过这个 但是我不确定我是否做对了以及如何在 OWL-API

中表示

我将附上一张图片,说明我是如何考虑处理这个问题的 ->: Class definition

请教我,如果这是正确的方法,以及在OWL-API

中该怎么做

此致

这与表示对象属性的 n-ary 关系的方式相同。您需要创建一个代表关系的个体并向其添加(二进制)属性。如果它适合您的用例,个人可以命名或未命名,您可以为这个个人定义一个命名的 class 或不。

此场景没有实用程序 class,因此您必须手动创建至少四个断言公理 - 一个针对个人,三个从个人到位置和距离。