RE: UPDATE: why RDF syntax is not suitable for OWL

On Fri, 2002-02-15 at 12:18, Smith, Michael K wrote:
> Dan,
> 
> Sure, there are various places where the triple syntax is defined.  And the
> model theory uses it.  Which is appropriate, the model theory should be
> using an abstract syntax.  But in neither case is this defined to be the
> syntax of RDF.  There is a chapter called 
> 
>   6. Formal Grammar for RDF
> 
> which I take to be the syntax of RDF.  And it has many advantages over the
> section you point to.  Has it been demonstrated that the description in
> section 5 admits all and only the triples that are implied by the formal
> grammar of section 6?

In practice, yes. The various RDF parser APIs generally just
emit triples (or: allow access to triples). So in practice,
if you use RDF tools, you get all and only the triples
from section 6 of the spec.

In fine technical detail, there are some issues. For example,
a property could be named
	http://vocab/bad-name/
and there's no way to break that into a namespace name
and a localname ala...

	<bad-name/ xmlns="http://vocab/"/>

since / isn't allowed in an XML name.

There are various limitations of this sort in the RDF/xml syntax.
These are acknowledged in the RDF issues list, e.g.
  http://www.w3.org/2000/03/rdf-tracking/#rdfms-syntax-incomplete
and explained in recent RDF syntax drafts.

  6 Serialising an RDF Graph to RDF/XML

  It is not possible for all graphs that can be expressed in
  the RDF Model Theory ([RDF-MODEL]) to be encoded in this syntax.
 
http://www.w3.org/TR/2001/WD-rdf-syntax-grammar-20011218/#section-Serialising


> Again, the wording in section 5 talks about the requirement that "the
> elements of Ord must be used in sequence starting with RDF:_1".  But we have
> an open world.  What does it mean if I don't find RDF:_2, but I have RDF:_3?
> As far as I can tell, it means nothing other than that I may not be looking
> everywhere I need to.  

Right; the RDF Core WG decided this is a bug in the spec;
cf http://www.w3.org/2000/03/rdf-tracking/#rdf-containers-formalmodel

it's not in the recent model theory/syntax specs.

> The RDF:LI syntax of section 6 seems much easier to both present and reason
> about. Though I confess I still don't know what the following means, in that
> I don't know what the first element of the sequence is.
> 
> <rdf:Seq ID="pages">
>   <rdf:li resource="http://foo.org/foo.html" />
>   <rdf:li resource="http://bar.org/bar.html" />
> </rdf:Seq>
> <rdf:Seq about="#pages">
>   <rdf:li resource="http://foo.org/bim.html" />
> </rdf:Seq>
> 
> Or maybe this is not permissible.

It's not a syntax error.

You'll get both 
	pages rdf:_1 foo
and
	pages rdf:_1 bim

I would probably conclude that foo=bim, but I'm not sure if the
specs say that. I'd have to double-check.

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

Received on Friday, 15 February 2002 14:33:16 UTC