W3C home > Mailing lists > Public > public-rdf-in-xhtml-tf@w3.org > November 2005

CURIEs vs. QNames (was Re: CURIEs, xmlns and bandwidth)

From: Henry S. Thompson <ht@inf.ed.ac.uk>
Date: Fri, 04 Nov 2005 10:27:04 +0000
To: public-rdf-in-xhtml-tf@w3.org
Message-ID: <f5bfyqcr9mv.fsf@erasmus.inf.ed.ac.uk>

Hash: SHA1

Ben Adida writes:

> The resolution of a CURIE is exactly the same as that of a QName.

> . . .

> Let me put it differently: a QName is a valid CURIE. Moreover, a
> QName, resolved according to CURIE rules, resolves to exactly the
> same thing it would resolve to under QName rules. It's just that
> there are some CURIEs that are not valid QNames.

Um, I _think_, as I read the current CURIE spec. [1], this is
profoundly misleading.

The immediate semantics of a QName, in content or as an element or
attribute name, is an expanded name, that is, a pair of a namespace
name/URI and a local name.  The semantics of a CURIE is a URI.

For a QName, you form the pair by splitting it on the colon, looking
up the prefix in the in-scope namespaces to find the namespace name,
and you have the pair.  For a CURIE, you split at the colon, look up
the prefix, and prepend the result to the bit after the colon.

So, in Norm's example

<myvocab pointer="x:foo" xmlns:x="http://example.org/">
  <h:div someAttribute="x:foo"/>

if someAttribute is interpreted as a QName, its value is

   < "http://example.org/" , "foo" >

whereas if it's interpreted as a CURIE, its value is


which is seriously different.

Different semantics, please use a different syntax!


[1] http://www.w3.org/2001/sw/BestPractices/HTML/2005-10-27-CURIE
- -- 
 Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
                     Half-time member of W3C Team
    2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
            Fax: (44) 131 650-4587, e-mail: ht@inf.ed.ac.uk
                   URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]
Version: GnuPG v1.2.6 (GNU/Linux)

Received on Friday, 4 November 2005 10:27:10 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:50:19 UTC