【发布时间】: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)
现在根据上述理解,因为CheeseTopping 和VegetableTopping 类是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