2015-04-23 54 views
0

我是Protégé的新手。我有一个问题,即与在门户中限制使用存在性限制通用有关。 我以ProtégéPizza本体指南为例。 作为每导向关于扩展限制和通用限制的多条语句如何解释

当多个限制所使用的总的描述中的说明被视为对个别限制的交点

therfore让我们说:

hasTopping some CheeseTopping 
hasTopping some VegetableTopping 

应被解释为

hasTopping some (CheeseTopping and VegetableTopping) 

hasTopping only CheeseTopping 
hasTopping only VegetableTopping 

应该从上面的理解,因为CheeseToppingVegetableToppingDisjoint因此,无论是陈述的逻辑上应是正确解释为

hasTopping only (CheeseTopping and VegetableTopping) 

现在。但是,为什么在上面的语句门生给错误通用限制声明:

hasTopping only CheeseTopping 
hasTopping only VegetableTopping 

而对于生存限制以下statemets是正确的?

hasTopping some CheeseTopping 
hasTopping some VegetableTopping 

请帮我澄清此查询。

在此先感谢

@Artemis,感谢您的澄清。根据我对你最终评论的理解,如果我正在采取“一些”限制,由于公开世界的假设,这个陈述被保护推理者视为真实。然而,如果我阅读我上面的示例行,其中如果交叉的2个浇头发生,即hasTopping一些(CheeseTopping和VegetableTopping),逻辑上这将是不正确的,因为两个类都是不相交的,但由于事实上可以有一些余地,这个陈述被推理者推理为真。而唯一的限制是硬限制,它不能量化任何余地,从而导致推理者导致错误。但是,如果本体非常大,我觉得在处理“某些”限制的情况下这是相当混乱的情况。

回答

1

逻辑上的通用量词提到:

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

然而,生存量词提到:

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

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

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

+0

我的意图是明白为什么要以不同的方式保护2条语句。从我的理解上述两个陈述应该是错误的,即1(EXTENSTIAL):hasTopping一些CheeseTopping,hasTopping一些VegetableTopping和2)(UNIVERSAL)hasTopping仅CheeseTopping,hasTopping仅VegetableTopping。因为这两个类奶酪屠宰和VegetableTopping不相交。但是从上面的陈述中可以看出,Extenstial语句没问题,但Universal语句给出错误。 – aditya

+0

我对答案增加了一些解释,因为评论框不够用。我希望它澄清这个问题。 – Artemis

+0

我在我的问题部分添加了更多关于我对此的理解。谢谢 – aditya