- From: Ivan Herman <ivan@w3.org>
- Date: Tue, 18 Nov 2008 08:47:16 +0100
- To: Boris Motik <boris.motik@comlab.ox.ac.uk>
- CC: 'W3C OWL Working Group' <public-owl-wg@w3.org>
- Message-ID: <49227304.1000307@w3.org>
Boris, I will not be at the phone meeting, so: I like what I read:-) I am all for a simplification and this looks like one... You write that it affects the RDF Mapping; I presume it is the RDF->FS that is affected and not the other way round, right? Thanks Ivan Boris Motik wrote: > Hello, > > I know it is quite late in the day, but while I was implementing the resolution from the last F2F, I've noticed several > opportunities for simplification of the current spec. Please understand that > > - this would be just a simplification/clean-up of the structural specification and it does not incur any fundamental changes > regarding the actual capabilities of annotations, and > > - it would affect only the structural specification, the RDF Mapping, and the XML Syntax documents. > > > Problem > ---------------------- > > Currently, in the metamodel of OWL 2 we have three classes for various types of annotations: > > - AnnotationByURI, > - AnnotationByLiteral, and > - AnnotationByAnonymousIndividual. > > This is quite unwieldy. > > Furthermore, the metamodel of OWL 2 currently contains two different axioms for associating annotations with things: > > - URIAnnotation and > - AnonymousIndividualAnnotation. > > Again, quite unwieldy. > > Another problem is that, while it would be intuitive to expect the structure of annotations to be similar to assertions, this is not > the case. A property assertion consists of two individuals and a property, and it specifies just one fact. In contrast, a single > annotation axiom specifies a set of annotations for an individual, and essentially specifies more than one fact. Consider the > following examples: > > (1) PropertyAssertion( P i1 i2 ) > (2) URIAnnotation( i1 Annotation( AP1 v1 ) Annotation( AP2 v2) ) > > In fact latter syntax is quite unwieldy, because it uses the terminal 'Annotation' quite often. > > Because of this, round-tripping of annotations through RDF is not possible. If you wrote (2) as two separate annotations, serialized > the ontology into RDF, and read everything back, your two annotation axioms would be merged into one axiom (2). > > > Proposal Outline > ---------------------- > > The proposal consists of two changes. > > The first problem could be addressed by introducing a class called, say, AnnotationValue, as a superclass of URI, Literal, and > AnonymousIndividual. Then, we could replace three types of annotations with just one type that refers to AnnotationValue. > > The second problem could be addressed by breaking up axioms of the form (2) into several axioms, each of which provides just one > annotation value. Thus, instead of (2), we would write something like this: > > (3) Annotation( AP1 i1 v1 ) > (4) Annotation( AP1 i2 v2 ) > > This would actually bring the structural specification closer to RDF. > > > Concrete Proposal for the Grammar > ---------------------- > > Here is what the grammar of the FS might look like: > > AnnotationSubject := URI | AnonymousIndividual > AnnotationValue := URI | AnonymousIndividual | Literal > Annotation := 'Annotation' '(' axiomAnnotations AnnotationSubject AnnotationValue ')' > > axiomAnnotations := { StatementAnnotation } > StatementAnnotation := 'StatementAnnotation' '(' > { StatementAnnotation } AnnotationProperty AnnotationValue ')' > AnnotationAxiom := Annotation | SubAnnotationPropertyOf | > AnnotationPropertyDomain | AnnotationPropertyRange > > Here is a summary of the grammar changes: > > - What is currently the Annotation nonterminal would become StatementAnnotation. > - What is currently URIAnnotation and AnonymousIndividualAnnotation would become Annotation. > > I believe that the result would be a much simpler metamodel and a much nicer syntax. I could enact this change really quickly. > > > > Please let me know how you feel about this. Could we perhaps discuss this at the next teleconf? > > Regards, > > Boris > > -- Ivan Herman, W3C Semantic Web Activity Lead Home: http://www.w3.org/People/Ivan/ PGP Key: http://www.ivan-herman.net/pgpkey.html FOAF: http://www.ivan-herman.net/foaf.rdf
Received on Tuesday, 18 November 2008 07:47:54 UTC