Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > XML > Are there standard namespaces that don't need URIs?

Reply
Thread Tools

Are there standard namespaces that don't need URIs?

 
 
Grant Robertson
Guest
Posts: n/a
 
      02-03-2007
As I am learning about XML I seen that xmlns is used with a colon after
it as if it were a namespace itself. However, I have never seen a URI
given for it. Is "xmlns" a sort of predefined word in that all XML
software just knows what it means without it needing a URI?

Are there any more of these special words that need no definition within
any schema? I know there are other special words like "element" and
"targetNamespace" but these seem to be defined within the XML Schema
schema definition. It seems that only "xmlns" must be known before
anything else can be known.

Am I totally missing the boat on this or what?
 
Reply With Quote
 
 
 
 
Martin Honnen
Guest
Posts: n/a
 
      02-03-2007
Grant Robertson wrote:
> As I am learning about XML I seen that xmlns is used with a colon after
> it as if it were a namespace itself. However, I have never seen a URI
> given for it. Is "xmlns" a sort of predefined word in that all XML
> software just knows what it means without it needing a URI?


The relevant specification is the "Namespaces in XML 1.0" specificaton:
<http://www.w3.org/TR/xml-names/>
You will see that <http://www.w3.org/TR/xml-names/#ns-decl> reserves a
family of attributes for namespace declaration, namely either 'xmlns' or
a qualified name beginning with 'xmlns:'.
<element xmlns="http://example.com/ns1">
is a default namespace declaration.
So any namespace aware XML parser "knows" the meaning of xmlns and
xmlns:some-prefix attributes as declaring XML namespaces.

--

Martin Honnen
http://JavaScript.FAQTs.com/
 
Reply With Quote
 
 
 
 
Eric Amick
Guest
Posts: n/a
 
      02-03-2007
On Sat, 3 Feb 2007 08:02:34 -0600, Grant Robertson <(E-Mail Removed)>
wrote:

>As I am learning about XML I seen that xmlns is used with a colon after
>it as if it were a namespace itself. However, I have never seen a URI
>given for it. Is "xmlns" a sort of predefined word in that all XML
>software just knows what it means without it needing a URI?
>
>Are there any more of these special words that need no definition within
>any schema? I know there are other special words like "element" and
>"targetNamespace" but these seem to be defined within the XML Schema
>schema definition. It seems that only "xmlns" must be known before
>anything else can be known.


xmlns is a namespace prefix, not a namespace; namespaces are identified
by a URI. Anyway, the xmlns prefix is associated with the URI
http://www.w3.org/2000/xmlns/, and the namespace standard forbids any
other prefix from being associated with that URI. You can get all the
details, including a description of other reserved prefixes, from the
standard at http://www.w3.org/TR/2006/REC-xml-names-20060816/.
--
Eric Amick
Columbia, MD
 
Reply With Quote
 
Dimitre Novatchev
Guest
Posts: n/a
 
      02-03-2007

"Grant Robertson" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed).. .
> As I am learning about XML I seen that xmlns is used with a colon after
> it as if it were a namespace itself. However, I have never seen a URI
> given for it. Is "xmlns" a sort of predefined word in that all XML
> software just knows what it means without it needing a URI?
>
> Are there any more of these special words that need no definition within
> any schema? I know there are other special words like "element" and
> "targetNamespace" but these seem to be defined within the XML Schema
> schema definition. It seems that only "xmlns" must be known before
> anything else can be known.
>
> Am I totally missing the boat on this or what?


First of all, any namespace "needs" (has) a namespace-uri. What you are
asking here is not namespaces that don't have uri-s, but *reserved
prefixes*, that must always be associated with specific namespace-uri-s

There are two such reserved prefixes (xml and xmlns) and they are listed in
the Namespaces specification
(http://www.w3.org/TR/xml-names/#sec-namespaces):

"Namespace constraint: Reserved Prefixes and Namespace Names
The prefix xml is by definition bound to the namespace name
http://www.w3.org/XML/1998/namespace. It MAY, but need not, be declared, and
MUST NOT be bound to any other namespace name. Other prefixes MUST NOT be
bound to this namespace name, and it MUST NOT be declared as the default
namespace.

The prefix xmlns is used only to declare namespace bindings and is by
definition bound to the namespace name http://www.w3.org/2000/xmlns/. It
MUST NOT be declared . Other prefixes MUST NOT be bound to this namespace
name, and it MUST NOT be declared as the default namespace. Element names
MUST NOT have the prefix xmlns.

All other prefixes beginning with the three-letter sequence x, m, l, in any
case combination, are reserved. This means that:

a.. users SHOULD NOT use them except as defined by later specifications

b.. processors MUST NOT treat them as fatal errors.

Though they are not themselves reserved, it is inadvisable to use prefixed
names whose LocalPart begins with the letters x, m, l, in any case
combination, as these names would be reserved if used without a prefix. "

So, when using a global attribute like xml:space, one doesn't need to define
the prefix "xml" -- it is known to the parser.



Cheers,

Dimitre Novatchev


 
Reply With Quote
 
Richard Tobin
Guest
Posts: n/a
 
      02-03-2007
In article <(E-Mail Removed)>,
Grant Robertson <(E-Mail Removed)> wrote:

>Is "xmlns" a sort of predefined word in that all XML
>software just knows what it means without it needing a URI?


That's the right way to look at it; xmlns is part of the syntax.
There *is* a URI associated with it, which you don't need to declare
(and indeed mustn't) but you can ignore it for most purposes.

The only other prefix that doesn't need to be declared is "xml", as
used in xml:space, xml:lang, xml:base.

-- Richard
--
"Consideration shall be given to the need for as many as 32 characters
in some alphabets" - X3.4, 1963.
 
Reply With Quote
 
Grant Robertson
Guest
Posts: n/a
 
      02-03-2007
Thanks everyone! I always get the best, right to the point, answers in
this newsgroup. It is such a relief from trying to get any straight
answers in any Microsoft newsgroup.

No matter how many times I go over it I keep forgetting that the prefix
is just a local shorthand within the XML document for the actual
namespace which is the URI. I see the prefix with the colon after it and
think I am seeing a namespace name. Hopefully once I learn enough to
start designing my schema and actual work with XML files more than just
looking at examples, then I will get it through my head.

Thanks again.
 
Reply With Quote
 
Dimitre Novatchev
Guest
Posts: n/a
 
      02-04-2007
> I always get the best, right to the point, answers in
> this newsgroup. It is such a relief from trying to get any straight
> answers in any Microsoft newsgroup.


Probably you haven't tried this Microsoft forum:
XML and the .NET Framework
http://forums.microsoft.com/MSDN/Sho...ID=38&SiteID=1

I'll be glad to answer your questions there, too )

Cheers,
Dimitre Novatchev



"Grant Robertson" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed).. .
> Thanks everyone! I always get the best, right to the point, answers in
> this newsgroup. It is such a relief from trying to get any straight
> answers in any Microsoft newsgroup.
>
> No matter how many times I go over it I keep forgetting that the prefix
> is just a local shorthand within the XML document for the actual
> namespace which is the URI. I see the prefix with the colon after it and
> think I am seeing a namespace name. Hopefully once I learn enough to
> start designing my schema and actual work with XML files more than just
> looking at examples, then I will get it through my head.
>
> Thanks again.



 
Reply With Quote
 
usenet@tech-know-ware.com
Guest
Posts: n/a
 
      02-05-2007
On 3 Feb, 21:11, Grant Robertson <(E-Mail Removed)> wrote:
> Thanks everyone! I always get the best, right to the point, answers in
> this newsgroup. It is such a relief from trying to get any straight
> answers in any Microsoft newsgroup.
>
> No matter how many times I go over it I keep forgetting that the prefix
> is just a local shorthand within the XML document for the actual
> namespace which is the URI. I see the prefix with the colon after it and
> think I am seeing a namespace name. Hopefully once I learn enough to
> start designing my schema and actual work with XML files more than just
> looking at examples, then I will get it through my head.
>
> Thanks again.


Hi Grant,
It looks like you pretty much understand the namespace thing and just
need more practice. However, just in case a alternative way of
looking at it might be helpful, you might find the approach used by
James Clark on the following page useful:

http://www.jclark.com/xml/xmlns.htm

Perhaps more for the benefit of others that happen to drift this way
in future looking for answers, the most concise description of XML
namespaces I've found so far is:

http://atmanes.blogspot.com/2006/07/...amespaces.html

Cheers,

Pete.
--
=============================================
Pete Cordell
Tech-Know-Ware Ltd
for XML to C++ data binding visit
http://www.tech-know-ware.com/lmx
(or http://www.xml2cpp.com)
=============================================

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
problem in running a basic code in python 3.3.0 that includes HTML file Satabdi Mukherjee Python 1 04-04-2013 07:48 PM
Placing new names under standard namespaces? Ammar Ali Ruby 2 10-25-2010 12:53 PM
add pexpect to the standard library, standard "install" mechanism. funkyj Python 5 01-20-2006 08:35 PM
How standard is the standard library? steve.leach Python 1 04-18-2005 04:07 PM
Namespaces, classes, and using standard modules Dan Rawson Python 3 08-13-2003 06:54 PM



Advertisments