【发布时间】:2015-05-21 12:44:58
【问题描述】:
我是一名地理学家,也是本体论领域的新人,我试图从这两者中理解。因此,我创建了一个简单的本体,如下:
Thing
Feature
Lane
Segment(equivalent to Arc)
Geometry
Arc (equivalent to Segment)
Node
Dangling_Node
Intersection_node
您可以找到使用非常简单的空间道路数据集(图 1)实例化的 .owl file here。
本体在没有和有实例的情况下是一致的,但是当我运行推理器时,Dangling_node 实例(连接到一个链接或弧的节点)没有正确分配给相关子类,而只分配给 Node 超类。正确分配了intersection_node(连接到多个链接的节点)实例。
我猜根据开放世界假设,推理者认为该节点可能是另一个 Arc 的“is_extent_of”,但此处未提及。
我是否需要,或者我怎么可能拥有实例的闭包公理? 我的本体实现的哪一部分是错误的?
已编辑:
Equivalent to:
Node and (is_extent_of max 1 Arc)
Subclass of (Anonymous Ancester):
(is_extent_of only Arc) and (is_extent_of min 1 Arc)
Dangling_node 的通用类公理如下:
Node and (is_extent_of max 1 Arc) SubClassOf Dangling_node
【问题讨论】:
-
很遗憾,您的 owl 文件无法访问。不过,你把事情拼写得更远一点。您期望将 dangling_node 实例推理到哪里(即“相关”子类是什么)。
-
@PhilLord:我修复了链接,请再次检查。我希望节点实例根据它们连接的弧数进行分类。如果只连接一个弧,则该节点为 Dangling。我想知道,如果我不将实例指定为节点对象,推理器仍然可以将其分配给节点的正确子类。或者如果我将实例指定为节点,推理器仍然应该能够将实例分类为正确的子类。
标签: instance classification owl ontology reasoning