【发布时间】:2017-05-24 17:19:34
【问题描述】:
我在 Protege 5.2 中创建了一个本体,现在我正在尝试正确创建相应类的对象属性。这是我构建本体的 UML 图的 sn-p: Snippet of my ontology
关于 isLocated 对象属性,它们的特征如下:如果节点 X 有一个 SITE 值 Z,并且相同的值 Z 出现在位置 Y 的 SITEIST 中,则节点 X 位于位置 Y。
我应该查看 SWRL 规则还是有什么方法可以在不必去那里进行编码?
提前谢谢你们!
【问题讨论】:
-
所以@StanislanKralin 您是否建议我创建一些对象属性,例如为节点类创建一些对象属性,例如:hasNodeId、hasPlaceInstId 等?在这种情况下,您对每个对象属性的域和范围有什么想法吗?
-
我不知道你的节点和位置是什么......我的意思是这样的:
:nodeXXX :hasSite:zipArea85223,:locationYYY :hasSiteIst :zipArea85223=>:nodeXXX :isLocatedIn :locationYYY。 -
我的位置如下所示:imgur.com/a/KMmVk,我的节点如下所示:imgur.com/a/FXf8Y。如您所见,Node 中的站点和 Location 中的 sitemek 在此实例中具有相同的值 335836,因此我想创建一个名为 isLocated 的新对象属性,每次都是这种情况。现在,我正在尝试在 Protege 中创建这个帮助谓词 hasNodeId。这就是我尝试过的:imgur.com/a/Hdd55。我想为每个节点的每个 node_id 自动创建谓词 hasNodeId 。你知道如何在 Protege 中做到这一点吗?
-
我认为这是不可能的。但如果
site和siteist是object propertyiew,而不是data properties,那就有可能了。
标签: ontology protege description-logic object-properties