在Protege 5中向objectProperty添加多个域

时间:2015-08-17 13:38:00

标签: semantic-web owl ontology protege

我使用Protege 5-beta-17创建了一个本体。在我的本体论中,我有一些课程:

Mountain, Lake, Location etc...

我还有一个对象属性:

hasLocation.

对于此对象属性,我已将范围设置为“Location”类和域 “山”和“湖”班。

当我尝试使用CMap工具查看本体时,它只显示

"Mountain" "hasLocation" "Location".

“Lake”类没有“hasLocation”对象属性。

我做错了什么吗?我是否在Protege中做了其他事情?

1 个答案:

答案 0 :(得分:8)

我发现了问题所在。

在对象属性中添加域/范围时,您必须单击以下按钮并选择其中一个类:

enter image description here

如果要添加其他域/范围,只需再次单击其中一个按钮,然后添加另一个类。如果你这样做你告诉Protege你的对象属性的域/范围是两个类的INTERSECTION。这意味着将占据域/范围位置的个体是两个类别的实例而不是它们中的一个。 这是我的错。我是以错误的方式将类添加到域中。

所以......为对象属性添加多个不同域的正确方法如下:

只需再次单击域/范围按钮,然后选择“类表达式编辑器”选项卡: enter image description here

在“类表达式编辑器”中输入您的类:“ClassA或ClassB或ClassC或......”。

就我而言,它是“山或湖”。

之后点击“确定”即可。