Instance 实例的闭包公理,以便推理者能够正确地对本体中的实例进行分类

Instance 实例的闭包公理,以便推理者能够正确地对本体中的实例进行分类,instance,classification,owl,ontology,reasoning,Instance,Classification,Owl,Ontology,Reasoning,我是一位地理学家,也是本体论领域的新手,试图从这两个方面理解问题。因此,我创建了一个简单的本体,如下所示: Thing Feature Lane Segment(equivalent to Arc) Geometry Arc (equivalent to Segment) Node Dangling_Node Intersection_node Node and (i

我是一位地理学家,也是本体论领域的新手,试图从这两个方面理解问题。因此,我创建了一个简单的本体,如下所示:

Thing
    Feature
        Lane
        Segment(equivalent to Arc)
    Geometry
        Arc (equivalent to Segment)
        Node
            Dangling_Node
            Intersection_node
Node and (is_extent_of max 1 Arc) SubClassOf Dangling_node
您可以找到用一个非常简单的空间道路数据集实例化的
.owl文件(图1)

本体在没有实例和有实例的情况下是一致的,但是当我运行reasoner时,悬空节点实例(连接到一个链接或弧的节点)没有正确地分配给相关子类,而只分配给节点超类。交叉点节点(连接到多个链接的节点)实例已正确指定

我猜根据开放世界的假设,推理者认为节点可能是另一个弧的“is_extent_”,但这里没有提到

我是否需要,或者我如何能够拥有一个实例的闭包公理? 我的本体实现的哪一部分是错误的

编辑:

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)
悬挂_节点的一般类公理如下:

Thing
    Feature
        Lane
        Segment(equivalent to Arc)
    Geometry
        Arc (equivalent to Segment)
        Node
            Dangling_Node
            Intersection_node
Node and (is_extent_of max 1 Arc) SubClassOf Dangling_node
悬空_节点实例(连接到一条链路或多条链路的节点) arc)未正确分配

你需要断言什么是真的,然后是什么不是真的。例如,由于节点_005仅连接到Arc_004,您需要这样说:

(1) 连接到(节点005,弧004)

(2) {Node_005}&sqsubsetq;∀连接到{Arc_004}

(1) 表示节点实际上已连接到圆弧。(2) 表示节点连接到的所有对象都是类{Arc_004}的元素,也就是说,它唯一连接到的对象就是该Arc。然后,你会发现一个公理,如果某个东西连接到最多一个弧,那么它就是一个悬挂的节点:

(3) (≤ 连接到(1)和SQ子部分;悬挂节点

(3) 是一个普遍的类公理。您可以在Protege中输入这些内容,但UI不会使其变得明显。有关如何创建这些的更多信息,请参见

这是Protege中的情况(除了一般的类公理(3),我只是将悬挂等同于连接到正好1):

悬空的类定义

关于节点的公理

推理器的结果(节点悬空)

很遗憾,您的owl文件无法访问。不过,你的拼写要远一点。您希望将悬空节点实例推理到哪里(即“相关”子类是什么)。@PhilLord:我修复了链接,请再次检查。我希望根据节点实例连接到的弧数对节点实例进行分类。如果只连接了一个弧,则节点悬空。我想知道,如果我没有将实例指定为node对象,推理程序仍然可以将其分配给node的正确子类。或者,如果我将实例指定为节点,那么Reasonier应该能够将实例分类为正确的子类。我已经有了第一个和最后一个,但对我来说,第二个听起来像是实例需要的闭包。你能告诉我如何定义2号吗?我编辑了我的问题,以便讨论可能的错误。应该明确定义类型“connectedtoonly{arc004}”。不能从断言中得出结论吗?不知何故,一种计算节点连接到的弧实例数的机制……这就是它成为闭包公理的原因。你可以看看其他的断言,找出一些已知与之相关的东西,但是如果没有“仅连接到{Arc_004}”,你就无法知道它与其他任何东西无关。谢谢,我明白你的意思了。但是我想要的是有一个通用的闭包公理,就像GCI公理或者必要和足够公理一样,但是为什么我使用的这些公理不起作用呢@我不知道你所说的“一般闭包公理”是什么意思。在说“……与……完全相关”的过程中,没有什么可以概括的。这是针对每个人的。