2010-11-16 67 views
8

EquivalentClass和SubClass of之间有什么区别?尽管通读OWL底漆,我发现教程使用SubClassOf很多声明一个新的类,如下所示OWL的EquivalentClass与SubClassOf

SubClassOf(
    :Teenager 
    DataSomeValuesFrom(:hasAge 
    DatatypeRestriction(xsd:integer 
     xsd:minExclusive "12"^^xsd:integer 
     xsd:maxInclusive "19"^^xsd:integer 
    ) 
) 
) 

我可以写

EquivalentClass(
    :Teenager 
    DataSomeValuesFrom(:hasAge 
    DatatypeRestriction(xsd:integer 
     xsd:minExclusive "12"^^xsd:integer 
     xsd:maxInclusive "19"^^xsd:integer 
    ) 
) 
) 

呢?

回答

15

时指出A子类B,这限制A到一定继承B而不是周围的其他方法所有特性。在你的榜样,A = TeenagerB = hasAge [12:19](我自己的符号,但你的想法)。

这意味着在OWL本体Teenager任何情况下必然也有物业hasAge与范围[12:19]值,但周围的其他方式。具体而言,这并不意味着东西与物业hasAge与范围[12:19]值的任何实例也是Teenager一个实例。为了清楚说明,请考虑类Car的实例(称为c)。我们也可以说:

c . hasAge 13

这是说实例Carc是13岁。然而,与子类公理定义上面Teenager,一个推理推断c也是Teenager实例(也许我们会想,如果青少年,而不是汽车)。

使用等价关系时的差异是暗示子类关系隐含在两个方向之间。所以,如果我们不是包括定义Teenager第二公理是相当于到任何与物业hasAge与范围[12:19]的值,那么推理就会推断该车c也是Teenager一个实例。

+1

非常好的解释和例子 – 2014-10-01 14:59:54

2

等价类可能具有相同的成员,例如,

:USPresident owl:equivalentClass :USCommanderInChief 

都将具有相同的个体(全部或部分的美国总统)。因此,如果我们断言约翰亚当斯是美国司令官,那么可以推断约翰亚当斯也是美国总统。

随着子类,我们表明一个层次。例如,GrannySmithApple是Apple的一种类型。