RE: Proposed tweaks to Annotations

Hello,

I believe there are slight problems with both of these proposals.

----------------------------------------------------------

1. If we make owl:annotationSubPropertyOf a subproperty of rdfs:subPropertyOf, then we haven’t really achieved anything with adding
owl:annotationSubPropertyOf, and we might as well save ourselves the trouble. Please let me explain.

There is no problem with extending the structural specification of OWL 2 with three new axiom types:

- SubAnnotationPropertyOf
- AnnotationPropertyDomain
- AnnotationPropertyRange

These could even be mapped into RDF using the existing OWL/RDF vocabulary. For example,

(1) SubAnnotationPropertyOf( ap1 ap2 )

could be mapped into the RDF triple

(2) <ap1, rdfs:subPropertyOf, ap2>

without any problems. The reason why this is so is declarations: to be able to use ap1 and ap2 in this axiom, both should be
declared as annotations. Thus, we'll also have these triples:

(3) <ap1, rdf:type, owl:AnnotationProperty>
(4) <ap2, rdf:type, owl:AnnotationProperty>

Now reverse-transformation is not difficult: by looking at the declarations, we know that we should translate (2) into (1).


The problem with this approach is not in the RDF mapping, but in the difference in the semantics: in OWL 2 DL, we are completely
ignoring the semantics of axioms such as (1), but this is not the case with OWL 2 Full. Consider the following example:

(5) AnnotationPropertyDomain( ap C )
(6) EntityAnnotation( NamedIndividual( i ) Annotation( ap "bla" ) )

In OWL 2 DL, axioms (5)--(6) *do not* have any semantics, and they *do not* entail the following assertion:

(7) ClassAssertion( C i )

Now consider what happens in OWL Full. The translation of (5)--(6) into RDF is this:

(8) <ap, rdfs:domain, C>
(9) <i, ap, "bla">

By the OWL Full semantics, the following triple is implied:

(10) <i, rdf:type, C>

Note that (10) corresponds to (7), but (7) is not entailed whereas (10) is. This is a problem: annotations bring OWL 2 DL and OWL 2
Full further apart.


Now the proposed change does not help: even if we convert (8) into

(11) <ap, owl:annotationDomain, C>

triple (10) is still entailed in OWL 2 Full if owl:annotationDomain is a subproperty of rdfs:domain. At the same time, (7) is still
not entailed in OWL 2 DL. Thus, we haven't actually solved the problem.


One possible solution to this problem would be *not to make* if owl:annotationDomain a subproperty of rdfs:domain in OWL 2 Full. In
this way, (11) *would not* be entailed in OWL 2 Full, and this would match the situation in OWL 2 DL. (I understand that some people
might not like this; that's why I'm saying "a possible solution".)

Another solution is to decide that we don't care about this semantic divergence between the two languages. In that case, we don't
need the new properties: as I explained, we can reverse-map everything without any problems.

----------------------------------------------------------

2. The second proposal has a significant drawback that all ontologies that use rdfs:label would not be OWL 2 DL ontologies any more
(and I believe that these are actually most ontologies). In order to bring these ontologies into OWL 2 DL, one would need to
explicitly add the triple 

(12) <rdfs:label, rdf:type, owl:AnnotationProperty>

It seems to me that this would potentially annoy quite a few people.



Regards,

	Boris

________________________________________
From: public-owl-wg-request@w3.org [mailto:public-owl-wg-request@w3.org] On Behalf Of Alan Ruttenberg
Sent: 03 October 2008 14:01
To: W3C OWL Working Group
Subject: Proposed tweaks to Annotations

I'd like to suggest two tweaks on annotations that might address some problems with them.

1) Introduction of new properties owl:annotationSubPropertyOf owl:annotationDomain owl:annotationRange. In OWL DL these could be
considered annotations in this version but with notice that their behavior may be changed in subsequent versions of OWL. For OWL
Full we would make them sub properties of the corresponding non-annotation properties. 

2) No explicit declaration of any properties as Annotation by default. Currently rdfs:label, rdfs:comment several others are so
defined as built-ins. Because of this it is not possible to do any DL reasoning with them, such as making real sub properties of
them. I think it would be better to not commit on this and instead leave to the editors of ontologies the choice of whether to
consider them to be annotation or not.  We could leave it to tool to, as a courtesy, add annotation property declarations to the
would-be-former built-ins in the case that a user does not supply them.

For SKOS we could advise that they choose one of these two options to handle their extensive use of subproperty axioms on annotation
properties such as label.

-Alan

Received on Friday, 3 October 2008 13:53:43 UTC