|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Relative Namespaces
>> <foo:bar xmlns:foo="http://foo.com">
>> <foo:baz xmlns:foo=""/>
>> </foo:bar>
As already noted, this is illegal according to the namespaces spec.
>I think that this is a way to have the foo:baz element have no namespace
>rather than that of its parent. How else could you indicate that, if an empty
>string were different from no namespace?
You would indicate it by not using foo:baz! The *only* way to get
an element that is in no namespace is by using an unprefixed name:
<foo:bar xmlns:foo="http://foo.com">
<baz xmlns=""/>
</foo:bar>
(The xmlns="" won't of course be necessary if nothing outside binds
the default namespace.)
Is it a problem that prefixed elements can't be in no namespace? Not
a serious one I think, just a small non-orthogonality. In particular,
since they can't happen, you never have to worry about fixing them up
when cutting-and-pasting them between documents. For example, if you
want to insert this document:
<foo/>
into this element:
<bar xmlns="http://example.org">
</bar>
then it's important that you can undeclare the default namespace:
<bar xmlns="http://example.org">
<foo xmlns=""/>
</bar>
But you never need to be able to do the same when inserting:
<abc:foo/>
since it cannot have been in no namespace to start with.
-- Richard
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








