我是一名地理学家,也是本体论领域的新人,试图从这两者中理解。因此,我创建了一个简单的本体,如下:
Thing
Feature
Lane
Segment(equivalent to Arc)
Geometry
Arc (equivalent to Segment)
Node
Dangling_Node
Intersection_node
您可以在.owl file
此处找到使用非常简单的空间道路数据集(图 1)进行实例化的示例。
本体在没有和有实例的情况下是一致的,但是当我运行推理器时,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