2010-11-16 4 views
8

Was ist der Unterschied zwischen EquivalentClass und SubClass? Während durch OWL Primer zu lesen, finde ich das Tutorial subClassOf viel verwendet eine neue Klasse, wie folgtOWL's EquivalentClass vs. SubClassOf

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

Kann ich schreiben

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

statt zu erklären?

Antwort

15

Wenn die besagt, dass A eine Unterklasse vonB, schränkt dies A notwendigerweise alle Merkmale von B, zu erben, aber nicht umgekehrt. In Ihrem Beispiel, A = Teenager, und B = hasAge [12:19] (meine eigene Notation, aber Sie bekommen die Idee).

Dies bedeutet, dass jede Instanz von Teenager in der OWL Ontologie muss unbedingt auch die Eigenschaft hat, hasAge mit einem Wert im Bereich [12:19], aber nicht andersrum. Konkret bedeutet dies nicht, dass eine Instanz von etwas mit der Eigenschaft hasAge mit einem Wert im Bereich [12:19] auch eine Instanz von Teenager ist. Um dies zu verdeutlichen, betrachten Sie eine Instanz (c) der Klasse Car. Wir könnten auch sagen, dass:

c . hasAge 13

Diese besagt, dass Instanz c von Car 13 Jahre alt ist. Doch mit der Unterklasse Axiom definieren Teenager oben, ein reasoner würde nicht folgern, dass c ist auch eine Instanz von Teenager (vielleicht, wie wir wollen würde, wenn Jugendliche sind Menschen, keine Autos).

Der Unterschied bei der Verwendung der Äquivalenz ist, dass die Unterklassenbeziehung impliziert wird beide Richtungen. Also, wenn wir das zweite Axiom stattdessen enthalten waren, die Teenager definierten äquivalent zu irgendetwas mit der Eigenschaft seinen hasAge mit einem Wert im Bereich [12:19], dann wäre ein reasoner folgert, dass das Auto c ist auch eine Instanz von Teenager.

+1

sehr gute Erklärung und das Beispiel –

2

Equivalent-Klassen könnten dieselben Elemente besitzen, beispielsweise

:USPresident owl:equivalentClass :USCommanderInChief 

haben beide die gleichen Individuen (alle oder einige der US-Präsidenten). Wenn wir also behaupten, dass John Adams ein USCommanderInChief war, kann man folgern, dass John Adams auch US-Präsident war.

Mit Unterklasse geben wir eine Hierarchie an. Beispielsweise ist GrannySmithApple eine Art von Apple.

Verwandte Themen