OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: [xml-dev] namespace inheritance

[ Lists Home | Date Index | Thread Index ]

On Thu, May 05, 2005 at 10:32:58PM +0400, Oleg A. Paraschenko wrote:
>  First, as I understand, if an attribute has no ns prefix, and the
>attribute's element has a ns prefix, then the attribute inherits the ns
>URI from the element. So the following two XML documents are equal:


>1) <ns:elem xmlns:ns="ns:ns:ns" ns:attr="smth" />
>2) <ns:elem xmlns:ns="ns:ns:ns" attr="smth" />
>  Using the James Clark notation, the both examples define the following:
><{ns:ns:ns}elem {ns:ns:ns}attr="smth" />
>  Am I right?


Attributes live in the global namespace by default; they do *not* inherit
the default namespace, unlike elements.  Therefore, your first example above
defines the result you show, and the second defines:

<{ns:ns:ns}elem {}attr="smth" />

The only way to get an element in a namespace is to put it there; an
attribute without a prefix is always in the global (unnamed) namespace.

This usually confuses people, because it isn't the way that elements behave. 
It is, however, what the namespaces specification defines.

Amelia A. Lewis                    amyzing {at} talsever.com
The one thing you can't trade for your heart's desire is your heart.
		-- Miles Vorkosigan


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS