Re: Rich Annotation System Proposal

On Nov 7, 2007, at 3:17 AM, Achille Fokoue wrote:
[snip]
> >> My concern here is that we won't be able to go from XML to N3 or
> >> RDF/XML representation without loosing information, which seems to
> >> give a higher status to the XML representation.
>
> >Why? I mean, isn't this just a function of the RDF mapping? You can
> >always map:
> >
> >                 SubClassOf( Annotations("<b>Hiya Mom!</b>"), C, D)
> >
> >to
> >                 _:x a Statement.
> >                 _:x hasAnnotationBlob "<b>Hiya Mom!</b>".
> >                 #rest of the reified statement
> >
> > so what's the problem?
>
> I think that, in your example, the structure of the content of the  
> annotation has been lost: it appears only as a string literal.

It could be an XMLLiteral. Besides, isn't the acid test of lost  
structure whether I can roundtrip it? And I can.

>  If we could somehow restrict the content of annotations to RDF/ 
> XML, we would then also easily preserve the structure of the  
> annotation in the RDF representation.
>
>         SubClassOf( Annotations(<rdf:Description><b>Hiya Mom!</b></ 
> rdf:Description>), C, D)

But the "<b>" is an *HTML* tag!

>                _:x a Statement.
>                 _:x hasAnnotationBlob _:y.
>                 _:y a Statement.
>                 _:y rdf:predicate b.
>                 _:y rdf:subject _:x.
>                 _:y rdf:object "Hiya Mom!".
>                 #rest of the reified statements

So this is just a wrong representation!

> Note that this restriction to RDF/XML does not prevent you from  
> encoding as string literal arbitrary XML content.

Well, that's my point. First, I wouldn't use RDF/XML in the  
functional syntax, but property assertions. Second, I can roundtrip  
aribitrary xml through XML literals related to the annotatee.
[snip]
> To conclude, I would like to preserve as much as possible the  
> structure of the content of annotations in the RDF representation.

Right, which your example above failed to do, and mine did :)

> >Just because the *content* of an annotationAssertions is arbitrary
> >XML doesn't mean that an annotationByBlob can't be RDFed.
> >
> >This isn't saying that arbitrary XML is necessary, but I don't
> >understand your objection.
>
> I hope that I have clarified my concern.

Still seems like a misunderstanding to me. I don't see why:

	1) SubClassOf( Annotations(<html><head><head><body><p><b>Hiya Mom!</ 
b></p></body></html>), C, D)

Is worse than:
	2) SubClassOf( Annotations(<rdf:Description  
rdf:about="__Self"><rdfs:comment  
rdf:datatype="&rdf;XMLLiteral"><html><head><head><body><p><b>Hiya Mom! 
</b></p></body></html></rdf:value></rdfs:comment>), C, D)

Which is definitely worse than:

	3) SubClassOf( Annotations(Self rdfs:comment  
"""<html><head><head><body><p><b>Hiya Mom!</b></p></body></ 
html>"""^^rdf:XMLLiteral), C, D)

Which would be available anyway. It's not the worst thing in the  
world to force 3 but it's definitely not more *structure* or  
*information* preserving than A given a suitable mapping, and 2 is  
Just Wrong because it forces a certain serialization into the  
functional syntax.

Anyway, if the point is to allow for, e.g., a literate OWL ontology  
(aking to literate programming), so that the annotation space forms  
an HTML (or rif) document, forcing this indirection in the content of  
the annotation seems to add a bit of pain for no gain.

Hope this is clear.

Cheers.

Received on Wednesday, 7 November 2007 07:21:24 UTC