【问题标题】:How the multiple statements on Extenstial restrictions and universal restriction interpreted in protegeprotege 中关于外延限制和普遍限制的多重陈述如何解释
【发布时间】:2015-07-01 12:20:42
【问题描述】:

我是 Protégé 的新手。我有一个与 Protégé 中使用 existential 限制和 universal 限制有关的问题。 我从 Protégé Pizza 本体指南中举了一个例子。 根据指南中的说明

当使用多个限制时,总描述被视为单个限制的交集

因此让我们说:

hasTopping some CheeseTopping
hasTopping some VegetableTopping

应该解释为

hasTopping some (CheeseTopping and VegetableTopping)

hasTopping only CheeseTopping
hasTopping only VegetableTopping

应该解释为

hasTopping only (CheeseTopping and VegetableTopping)

现在根据上述理解,因为CheeseToppingVegetableTopping 类是Disjoint,因此,这两个语句在逻辑上应该是正确的。但是为什么在上面的语句中 protege 给出了通用限制语句的错误:

hasTopping only CheeseTopping
hasTopping only VegetableTopping

而对于存在限制,以下语句是正确的?

hasTopping some CheeseTopping
hasTopping some VegetableTopping

请帮助我澄清这个问题。

提前致谢

@Artemis,感谢您的澄清。根据我对您的最终评论的理解,如果我接受“某些”限制,由于开放世界假设,这个陈述被 protege reasoner 视为真实。但是,如果我阅读上面的示例行,其中如果发生 2 个浇头的交集,即 hasTopping some(CheeseTopping 和 VegetableTopping),从逻辑上讲这将是不正确的,因为这两个类都是不相交的,但由于存在一些余地,这个陈述被 protege reasoner 判定为 True。而唯一的限制是硬限制,它没有量化任何回旋余地,从而导致 protege reasoner 的错误。但是我觉得如果本体非常大,处理“一些”限制是非常令人困惑的情况。

【问题讨论】:

    标签: owl ontology protege restrictions


    【解决方案1】:

    逻辑上一个通用量词提到:

    包含 owl:allValuesFrom 约束的限制用于描述所有个体的类,其中考虑的属性的所有值要么是类描述的类扩展的成员,要么是数据指定数据范围内的值。换句话说,它定义了一个个体 x 的类,它认为如果对 (x,y) 是 P(相关属性)的一个实例,那么 y 应该是类描述的一个实例或数据中的一个值范围,分别。

    但是,存在量词提到:

    包含 owl:someValuesFrom 约束的限制描述了所有个体的类,对于这些个体,相关属性的至少一个值是类描述的实例或数据范围内的数据值。换句话说,它定义了一类个体 x,其中至少有一个 y(类描述的一个实例或数据范围的值),使得对 (x,y) 是 P 的一个实例。不排除 P 的其他实例 (x,y') 的 y' 不属于类描述或数据范围。

    这就是推理器不接受其中一个定义的原因。所以推理器假设hasTopping only (CheeseTopping and VegetableTopping) 对这个类的所有 成员都是正确的,这显然是不正确的。

    基本上only 是一个硬性限制。 some 表示它必须至少有一个 x 类的个体,但可以有其他类的其他个体。使用only,你是说这个属性范围内的每个个体都必须是X类的个体。因此,当使用交叉点时,在处理some时有一个余地,除非你有与此规则相抵触的个人,可能不会发生这种情况。但是在only的情况下,无论本体中有什么,这条规则总是矛盾的。

    【讨论】:

    • 我的目的是理解为什么以不同的方式保护这两个语句。根据我的理解,上述两个陈述都应该是错误的,即 1(EXTENSTIAL):hasTopping some CheeseTopping,hasTopping some VegetableTopping 和 2)(UNIVERSAL)hasTopping only CheeseTopping,hasTopping only VegetableTopping。因为 CheeseTopping 和 VegetableTopping 类都是不相交的。但是在上述声明的保护中,扩展声明很好,但通用声明给出了错误。
    • 我在答案中添加了更多解释,因为评论框还不够。我希望它能澄清这个问题。
    • 我在我的问题部分添加了更多关于我对此的理解的内容。谢谢
    • 你是对的,一开始有点混乱,但这些是逻辑的基础。我建议您从本体中抽象出来,并阅读一些关于描述逻辑的内容。我认为这可能会让你的生活更轻松。此外,如果您得到了答案,您应该将问题标记为已回答,以便标记该问题以供将来参考。如果您没有得到答案,您需要编辑您的问题以反映这一点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多