W3C home > Mailing lists > Public > www-rdf-comments@w3.org > October to December 2001

Skipping the Sax-model transformation step in the new RDF/XML syntax spec

From: Sjoerd Visscher <sjoerd@w3future.com>
Date: Mon, 24 Dec 2001 01:38:01 +0100
Message-ID: <000801c18c13$3e8e8780$f01f79c3@woonkamer>
To: <dave.beckett@bristol.ac.uk>
Cc: <www-rdf-comments@w3.org>
Hello,

I'm sorry to mail to you directly about this, but the www-rdf-comments lists
seems to contain only spam.

I like the direction the new RDF/XML Syntax Specification is going. However,
I had the feeling the intermediate SAX-like model was a step too much. So I
tried to express the RDF/XML Grammar directly in Infoset terms, using
http://www.w3.org/2001/04/infoset

It turned out to be quite straight forward, it looks a lot like the Relax NG
Schema. You'll find it attached. I tried to use the same notation as the
Spec uses, i.e. classname(propertyname restriction [,...]) Properties that
have no restrictions aren't shown, f.e.:

nodeElement = Element(
  attributes=set((idAttr | aboutAttr)?, bagIdAttr?, propertyAttr*),
  children=propertyEltList)

Which means that the namespaceName and localName are unrestricted.
Unrestricted means unrestricted from the RDF Grammar point of view,
properties like 'parent' are already restricted by the infoset
specification.

Some specific features:

ws = Character(
  elementContentWhitespace=Boolean.true)

Boolean.true is defined in the rdf version of the infoset.

parseTypeLiteralPropertyElt = Element(
  attributes=set(idAttr?, parseLiteral))

Here the children property is unrestricted.

It is also easy to check what Infoset features remain unrestricted:
prefixes, namespace declarations, if attributes are specified in a DTD or
not, CDATA, etc. And which are restricted: PI's or comments are not allowed,
except inside the parseTypeLiteralPropertyElt, and no document type
declaration. But maybe that is a too strict translation.

Kind regards,

Sjoerd Visscher
  w3future.com


Received on Sunday, 23 December 2001 19:38:02 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 21 September 2012 14:16:30 GMT