Re: forest grammar/tree regular expression for RDF (fwd)

Dan Brickley wrote:

> ---------- Forwarded message ----------
> Date: Thu, 21 Jun 2001 21:17:27 -0400
> From: Jonathan Borden <jborden@mediaone.net>
> To: www-rdf-comments <www-rdf-comments@w3.org>
> Cc: www-rdf-interest <www-rdf-interest@w3.org>
> Subject: forest grammar/tree regular expression for RDF
> Resent-Date: Thu, 21 Jun 2001 21:19:34 -0400 (EDT)
> Resent-From: www-rdf-comments@w3.org
> 
> I hope the RDFCore WG will consider the forest grammar/tree regular
> expression as a specification of the formal RDF XML syntax. The unordered
> nature of RDF is best described as a forest grammar and this presents
> difficulties for traditional XML schema languages such as DTDs.
> 
> I have specified this as a RELAXNG schema for RDF
> http://www.openhealth.org/RDF/RDF1.rng in terms of solidifying the RDF XML
> syntax under the issue:
> http://www.w3.org/2000/03/rdf-tracking/#rdfms-formal-grammar

Very nice!

It has a few special cases that I don't think are necessary
(e.g. rdf:value is just another propertyElement/propertyAttribute,
and rdf:Description is just a typedNode) but other than
that, it seems to be quite a compact and precise description of
the RDF syntax.

Is there an online service ala XSV that checks documents
w.r.t. this sort of schema? let's see if I can find
one by following my nose from the namespace name...
sigh... 404 at http://relaxng.org/ns/structure/0.9



> 
> An advantage of specifying the grammar in this language is that it has a
> good formal semantics which is based on the formal semantics of XDuce.
> http://www.cis.upenn.edu/~hahosoya/xduce/ . Note that the XML Schema
> formalism in http://www.w3.org/TR/xmlschema-formal appears to be based on
> XDuce as well which is referenced.
> 
> Because I realize the politics around RELAXNG, I have converted this to the
> language used by XDuce and by the XML Schema Formalism:
> http://www.openhealth.org/RDF/RDFSyntaxFormal.

Ah.. that's even easier to read.

Production 4 is ambiguous, no?

4.type description = 
             rdf:Description[
                     idAboutAttr?,
                     bagIdAttr?,
                     propAttr?,
                     propertyElt*
             ] |
             typedNode

<rdf:Description/> matches both alternatives, no?

As I say, I don't see any need to special-case
rdf:Description in the grammar.

And I must have been mis-reading the other syntax;
I don't see the rdf:value special case here.

Where is the definition of the literal type? I don't
see any use of the 'any' type.

> It is really quite simple.
> 
> Jonathan Borden
> The Open Healthcare Group
> http://www.openhealth.org

-- 
Dan Connolly, W3C http://www.w3.org/People/Connolly/

Received on Monday, 25 June 2001 00:58:08 UTC