W3C home > Mailing lists > Public > semantic-web@w3.org > December 2007

Re: Re[4]: XML namespaces and RDF

From: Tim Berners-Lee <timbl@w3.org>
Date: Thu, 20 Dec 2007 08:39:07 -0500
To: Max Voelkel <voelkel@fzi.de>
Message-Id: <A6DF74F5-512A-4258-BDDE-8444C638E124@w3.org>
Cc: Semantic Web <semantic-web@w3.org>, Michael Rys <mrys@microsoft.com>

On 2007-12 -20, at 04:00, Max Voelkel wrote:

> Hi,
>  so I understand now that RDF people hijacked the XML namespace idea.

No, RDF asked XML for namespaces.
They were an RDF requirement.
To an extent, adding namespaces was a prerequisite fro RDF to use XML.
This unfortunately led to them being added without the XML folks being  
into the user cases, and so without a motivation within the XMLNS  

>  There is currently no defined way to arrive from
> <x xmlns:edi='http://ecommerce.example.org/schema'>
>  <!-- the "edi" prefix is bound to http://ecommerce.example.org/schema
>       for the "x" element and contents -->
> </x>
>  to a URI for "x". Options are:
> - The RDF/XML community default (just appendd)
>  http://ecommerce.example.org/schemax

That's not just a 'community default, it is the RDF/XML spec.   RDF  
uses URIs, namespaces are just a syntax.

> -  The  RDF/XML  community default for namespaces that have no "#"  
> or "/" at end
>   http://ecommerce.example.org/schema#x

No. The RDF namespace is schema#

> - The third option
>   http://ecommerce.example.org/schema/x
> - There are of course further options..

In XML there is no defined algorithm.

> Can  we  make  the  semantic  web  a  better  place  by  releasing   
> a small note
> (preferably from W3C) that says:
> "To  get  a URI from an XML qname within an XML namespace, the last  
> character of
> the  namespace  URI  is  relevant. If it ends with a "#" or "/", the  
> full URI is
> namespace + qname. If not, the full URI is namespace + "#" + qname."


(1) There is no consistent use in XML of URIs. Parsers for example  
regard the (ns, ln) pair as the token, an pass that around,

(2) In RDF the rule is always just concatenation.

So long as you are using RDF everything is well defined.
There is confusion in the overlap of RDF and non-RDF use,
which is mainly around XML datatypes.
Here, the XML folks don't bother with the #, but for RDF you have to  
use it.


> Something like this would ensure that all semantic web people use  
> the same URIs,
> e.g. for XML datatypes. And all other kind of XML data.

In general, there is no rule like this, so the XML community has done  
all kinds of things.
RDF folks asked XML schema to give URIs to all concepts in an XML  
schema, and the XML folks
came back with weird component identifiers.  Similar things happened  
with WSDL.

When these URIs are provided by people who are not RDF users then they  
can end up looking weird from the RDF
point of view.

If you stay within RDF world, though, things seem fine.

Received on Thursday, 20 December 2007 13:39:14 UTC

This archive was generated by hypermail 2.4.0 : Tuesday, 5 July 2022 08:45:04 UTC