- From: Drew McDermott <drew.mcdermott@yale.edu>
- Date: Tue, 22 May 2001 11:23:43 -0400 (EDT)
- To: www-rdf-logic@w3.org
[me]
> In the DAML+OIL example, we have
>
> <rdf:RDF
> xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
...
> xmlns ="http://www.daml.org/2001/03/daml+oil-ex#"
> >
>
> The Allegro XML parser claims these are malformed URIs.
Well, they're perfectly good namespace names, i.e. URI references.
They work in lots of XML/XSLT/XML Schema software I use.
The Allegro XML parser is complaining for no good reason.
> At first I
> thought I needed to do some "escape" trickery to get those #'s in, but
> my second thought was that the Allegro parser is correct. Shouldn't
> the #'s just go away?
No.
> Namespaces are not the same as URL + name
> fragments.
Actually, they are:
[[[
[Definition:] An XML namespace is a collection of names, identified by a
URI
reference [RFC2396],
]]]
-- Namespaces in XML
http://www.w3.org/TR/1999/REC-xml-names-19990114/#dt-namespace
Thu, 14 Jan 1999 22:24:57 GMT
[[[
4. URI References
The term "URI-reference" is used here to denote the common usage of a
resource identifier. A URI reference may be absolute or relative,
and may have additional information attached in the form of a
fragment identifier.
]]]
Okay, more research has turned up the following, from
http://www.w3.org/Addressing/URL/4_2_Fragments.html
which is a section of
http://www.w3.org/Addressing/URL/URI_Overview.html
by Tim Berners-Lee:
The fragment-id follows the URL of the whole object from which it is
separated by a hash sign (#). If the fragment-id is void, the hash
sign may be omitted: A void fragment-id with or without the hash sign
means that the URL refers to the whole object.
So
xmlns:foo="http://random.org/expl#"
and
xmlns:bar="http://random.org/expl"
use the *same* URI written two different ways, and hence define the
same namespace. So Allegro's parser should not complain when it sees
the trailing #, although it could discard it.
Thanks.
-- Drew McDermott
Received on Tuesday, 22 May 2001 11:23:46 UTC