Re: strange treatment of namespaces in RDF/XML

From: "Bill Kearney" <wkearney99@hotmail.com>
Subject: Re: strange treatment of namespaces in RDF/XML
Date: Wed, 4 Jun 2003 20:49:09 -0400

[...]

> > The example should be
> >
> > So
> > ... xmlns:xm = "http://www.w3.org/XML/1998/namesp"
> > .. <xm:acehi ... /> ...
> > is legal, as is
> > ... xmlns:xmx = "http://www.w3.org/XML/1998/namespace"
> > .. <xmx:hi ... /> ...
> > but
> > ... xmlns:xmxx = "http://www.w3.org/XML/1998/namespaceh"
> > .. <xmxx:i ... /> ...
> > is not.
> 
> I'm still not clear on what you're on about.
> 
> While they might be legal, they're not equivalent.  Are you saying the first two
> examples are expected to be equivalent somehow?  As in, the <hi> element from
> the "http://www.w3.org/XML/1998/namespace" namespace?  Your two examples aren't
> equivalent.  The first one is the <acehi> element from the
> http://www.w3.org/XML/1998/namesp namespace.  The second one is the <hi> element
> from the http://www.w3.org/XML/1998/namespace namespace.  The third one is the
> <i> element from the http://www.w3.org/XML/1998/namespaceh namespace.  Near as I
> can tell, they're all /legal/, at least in the RDF serialized in XML sense, but
> they're not equivalent.

Well, as far as RDF goes, they would, if legal, all be equivalent.  To be
precise the following documents, 

1/

<rdf:RDF xmlns:xm = "http://www.w3.org/XML/1998/namesp"
         xmlns:ex = "http://foo.ex#">
  <xm:acehi>
    <ex:prop rdf:resource="http://foo.ex#object" />
  </xm:acehi>
</rdf:RDF> 

2/

<rdf:RDF xmlns:xmx = "http://www.w3.org/XML/1998/namespace"
         xmlns:ex = "http://foo.ex#">
  <xmx:hi>
    <ex:prop rdf:resource="http://foo.ex#object" />
  </xmx:hi>
</rdf:RDF> 

3/

<rdf:RDF xmlns:xmxx = "http://www.w3.org/XML/1998/namespaceh"
         xmlns:ex = "http://foo.ex#">
  <xmxx:i>
    <ex:prop rdf:resource="http://foo.ex#object" />
  </xmxx:i>
</rdf:RDF> 

if treated as legal RDF/XML documents all produce equivalent RDF graphs
that can be written in RDF triples as

  _:a <http://foo.ex#prop> <http://foo.ex#object> .
  _:a <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/XML/1998/namespacehi> .


> As for the original examples, using rdf:about="#sometext" presumes, in RDF/XML,
> that you're linking to another element elsewhere in the same document marked up
> with rdf:ID="sometext".

Not really.  There is no need to have an rdf:ID="sometext" to have an
rdf:about="#sometext", even leaving aside issues having to do with xml:base.

> But I get the feeling you already know this so I'm confused as to the point
> being made.

This is a different issue.  I do admit that I also feel rather confused
when I try to sort all these issues out.

> -Bill Kearney

Peter F. Patel-Schneider
Bell Labs Research
Lucent Technologies

Received on Wednesday, 4 June 2003 23:14:19 UTC