RE: Difference between RDF/XML and RDF/XML-ABBREV

 

> -----Original Message-----
> From: semantic-web-request@w3.org 
> [mailto:semantic-web-request@w3.org] On Behalf Of Danny Ayers
> Sent: 12 April 2006 12:35
> To: semantic_web@googlegroups.com
> Cc: Semantic Web
> Subject: Re: Difference between RDF/XML and RDF/XML-ABBREV
> 
> 
> On 4/12/06, Michael Schneider <m_schnei@gmx.de> wrote:
> 
> > I have learned the XML serialization of RDF a few months 
> ago, which is 
> > called RDF/XML. Now I found out that there is another 
> serialization, 
> > which is called RDF/XML-ABBREV. I did not find anything about it in 
> > the official W3C documents. Can anybody tell me the 
> difference between 
> > both serializations and if this is an offical standard?

There is one RDF/XML syntax.  The original RDF Model and Syntax
document, updated in the more recent series of recommendations including
RDF/XML Syntax (Revised) talked of a basic syntax and a number of
extentions or abbreviates which allowed more compact representation of
the same graph.
But this just means that there is a subset of RDF/XML which is
sufficient to write a graph, but that there additional features that
allow a more compact representation.

By the way you have spelled these you may be using Jena.  Jena has two
different writers for writing graphs as RDF/XML.  The original uses a
simple algorithm which produces simple, verbose, RDF/XML and does not
take full advantage of the features that the grammer allows.  The output
(used to be) is of the form

...
<rdf:Descrition ...>
  ... All the properties for this resource
</rdf:Description>
... Repeat until done...

The other writer, written later by Jeremy Carroll, uses more of the
features of the RDF/XML syntax, but is not advised for writing very
large graphs.

So there were two different writers, but we couldn't replace the
original with the new one, as it can run out of memory on large graphs.
So how do we tell Jena which writer to use?  Jena has way to specify
select the writer to use by specifying the output language, e.g.

  Model.write(foo, "N3");
  model.write(bar, "RDF/XML");

To allow specifying the use of the new writer we added a new 'language',
RDF/XML-ABBREV:

  model.write(foobar, "RDF/XML-ABBREV)

Will use the new compact RDF/XML writer.

A bit of a bodge, I suppose.

Anyway, Danny is right - there is only one RDF/XML language.

Brian

  

Received on Wednesday, 12 April 2006 14:12:11 UTC