FullSemanticsDeclarations

From OWL
Jump to: navigation, search

Goto OWL 2 Full Semantics Page


!!! OBSOLETED: THIS FEATURE DOES NOT EXIST ANYMORE IN OWL 2 !!!

The OWL 2 Full semantics of Declarations.

Declarations are used in OWL 2 DL to declare the category of a named entity. They are used as a kind of replacement for typing triples, which were used in OWL 1 for this purpose.

Note: It is unclear to me how to cope with declarations in OWL 2 Full. So I will propose two different semantics, and the WG will have to discuss which one to use. I won't be able to decide this alone.

Declarations

Syntax

 w owl11:declaredAs owl11:Individual
 C owl11:declaredAs owl:Class
 D owl11:declaredAs rdfs:Datatype
 p owl11:declaredAs owl:ObjectProperty
 p owl11:declaredAs owl:DatatypeProperty

Semantics

There are currently two different options which I consider:

Option: declarations as annotations with weak semantics

In this case, declaration triples can be seen as special kinds of annotations. So the Full semantics should be as weak as possible, in order to avoid semantical side effects. Only saying that 'owl:declaredAs' denotes some property is no big news.

Axiomatic triples:

 owl:declaredAs rdf:type owl:ObjectProperty
 owl:declaredAs rdfs:domain owl:Thing
 owl:declaredAs rdfs:range [ owl:oneOf( owl11:Individual owl:Class rdfs:Datatype owl:ObjectProperty owl:DatatypeProperty ) ]

Option: declarations as aliases for typing triples

In OWL-1.1-DL, typing triples having one of the main OWL parts at RHS are not regarded to be axioms, but only "hints" to the parser, see Boris' mail. The problem with this is that in the case that there is only a single typing triple for some entity, this typing triple and therefore this entity gets lost. So people will have to start to write declaration triples instead of typing triples in OWL-1.1-DL.

But this has consequences for OWL 2 Full: In Full, a typing triple is a pretty strong axiom, from which several other triples can be entailed. If now OWL 2 DL ontologies contain declarations instead of typing triples, from the OWL Full perspective relevant semantical information gets lost.

In order to remedy this problem, my idea is to make declarations semantically equivalent to typing triples in the case that the RHS of such a triple denotes one of the OWL parts.

Axiomatic triples: as above:

Main semantic condition:

 IF
   t ∈ {
     S_I(owl11:Individual),
     S_I(owl:Class),
     S_I(rdfs:Datatype),
     S_I(owl:ObjectProperty),
     S_I(owl:DatatypeProperty)
   }
 THEN
     (x,t) ∈ EXT_I(S_I(owl11:declaredAs))
   IF AND ONLY IF
     (x,t) ∈ EXT_I(S_I(rdf:type))

Considerations


Goto OWL 2 Full Semantics Page