猫头鹰;检查泛化是否已满

时间:2014-09-02 20:27:05

标签: owl ontology

让我们考虑一个由基类(动物)和两个子类(狗,猫)组成的简单本体。 无论如何在模式级别(而不是数据级别)上确保每个类(动物)都是狗或猫。 我的意思是如何检查一个类的每个人总是一个子类的个体(任何子类,无论哪个)。这是关于本体模式级别的,而不是数据级别的? 换句话说,在UML概括中,我们有全部和部分的概括;因此,我想确保我对本体论的概括是完全的。

1 个答案:

答案 0 :(得分:0)

当然,你需要做的就是说每只动物都是狗或猫。在这种情况下,由于狗和猫都是动物的子类,你可以简单地说:

  

动物≡(狗⊔猫)

  

Animal EquivalentClass(Dog or Cat)

这意味着如果某物是动物,那么它也是(狗或猫)。如果某事是(狗或猫),那么它必须是狗或猫。

更一般地说,如果你只是想说每个X都是Y或Z,但是你仍然希望允许Y或Z不一定是X(这是相反的对于你的问题,既然每只猫和每只狗都是动物,你可以简单地说X是(Y或Z)的子类。那就是:

  

X⊑(Y⊔Z)

  

X SubClassOf(Y或Z)