W3C home > Mailing lists > Public > www-rdf-interest@w3.org > June 2001

RE: Namespaces and URIs

From: Pierre-Antoine CHAMPIN <champin@bat710.univ-lyon1.fr>
Date: 08 Jun 2001 16:07:18 +0200
To: Patrick.Stickler@nokia.com
Cc: www-rdf-interest@w3.org
Message-Id: <992009240.1980.8.camel@lisiperso3>
Patrick, I'm affraid you didn't get my point

On 08 Jun 2001 16:31:21 +0300, Patrick.Stickler@nokia.com wrote:
> Having a single URI (URN) scheme such as "name:champin.y2001/foo",
> requiring that all namespace names be instances of that scheme, and
> defining an absolute, explicit, and reliable mapping algorithm
> for deriving full URIs from namespace + name, certainly would 
> go along way towards a solution.

I do not suggest that anyone use the same URI scheme to name their
The XML Namespaces recomendation works very well as is, as far as it is

The problem is RDF-related, when we try to *talk* about namespaces and
The mistake was, IMHO, to use the "namespace name" as the URI of the
although namespace names are usually URIs, they are not *the* URI of the
but we could easily build such a URI, as I proposed...

[about me being naughty]

> > Does this mean I'm a naughty boy, using the same URI for 2 distinct
> > things ? no, I argue:
> > - I use it as a URI identifying my homepage
> > - I use it as a unique and persistent string to identify my namespace
> > I could even have used the string "champin.y2001" for the namespace !
> Insofar as the namespace spec is concerned, yes, you are a naughty
> boy; not because the namespace is a URL (all the namespace spec requires
> is that the namespace name is some kind of URI, and it is in your example)
> but because you have identified *two* distinct resources with the 
> same URI.

No I'm not:
I use that "namespace name" (a character string) for one unique
namespace, and always will;
hence I respect the constraints of name and persistence.

> Also, insofar as the semantics and behavior of the http:// URI 
> (URL) scheme is concerned, you are IMO a naughty boy in using such
> a URL as the name of what is intrinsicly an abstract resource.

No I'm not:
as a URI, I use it to identify only my homepage.
as a character string, I can use it for whatever I care ;)

> Furthermore, insofar as RDF is concerned, IMO you also are a naughty boy
> because you have made it impossible to differentiate between statements
> made about your web page identified by the specified URL and the namespace
> identified by the *same* URL.

Because you take for granted that the *namespace name" I use, which
happen to be *a* URI,
is *the* URI for that namespace, which I argue is not true,
and which is not specified as such in the [XMLNS] recommendation.

Since it is a custom to use URIs are "namespace names", everybody found
natural that those URIs should be the URIs of the namespaces... I argue
that this is not recomended by [XMLNS], and indeed should *not* be
Wich lead me to my question:

> > So, what *is* the URI of the namespace ??

I meant *my* namespace, not *any* namespace in general...

> > An immediate 
> > solution would
> > be
> >     xmlns:http://champin.y2001/
> >     xmlns:champin.y2001
> > where 'xmlns:' is a URI scheme, even URN I think.
> > Let's be clear: the xmlns attributes do not have to contain 
> > the "xmlns:"
> > prefix ! Why should they, by the way... they clearly define a context
> > where the *string* has to be interpreted as a 'xmlns:' URI.
> Firstly, your second example is not a URI,

yes it is, it matches the opaque_part production rule, Annex A of RFC2396.

> and namespace names must be valid URIs.

no they don't. They only have to be unique and persistent.
see http://www.w3.org/TR/REC-xml-names/#ns-decl

> Secondly, whether you use URIs or any other *string* as
> a context for names, you still need to map the namespace + name into
> a consistent identity.

Right, but I was not adressing the "QName to URI" issue yet.
Only the one of namespaces being abstract things, hence having a URN
rather than a URI.

 hope I've been clearer

Received on Friday, 8 June 2001 10:06:06 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:49 GMT