[Dev] Proposal: simplify parcel XML namespaces

Phillip J. Eby pje at telecommunity.com
Mon Jun 27 10:34:09 PDT 2005


At 09:53 AM 6/27/2005 -0700, Alec Flett wrote:
>Wait, before we go any further trying to make xml namespaces work, I have 
>a suggestion:
>
>Phillip J. Eby wrote:
>
>>
>>Then we should get rid of XML namespaces altogether here; parcel 
>>namespaces are *not* globally unique and never have been; repository 
>>paths and Python package namespace requirements prevent them from being 
>>globally unique.
>+1 to removing all XML namespaces altogether, and here's a brainstorm 
>about how to do it We use them inappropriately anyway.

Well, as I've said before, it's not *really* inappropriate.  There are 
plenty of other XML applications that do the same thing; i.e. use XML 
namespaces to define prefixes that are then also used in attribute 
values.  I pretty much consider that a logical extension of the use of XML 
namespaces, and it avoids having to come up with other ways to spell 
something that's basically the same thing.


>I haven't completely flushed out this idea, but anyone else have any 
>thoughts or other approaches to removing the need for <foo:someKind> ?

I don't think that's necessary; XML namespaces are a perfectly valid way to 
do this.

The main thing I'm trying to avoid with my proposal is the need to maintain 
a mapping of things-that-aren't-unique-anyway to 
things-that-we-meant-to-start-with.  :)

About the only way I see to dodge XML namespace definitions altogether is 
to use fully qualified element tags, e.g.::

     <osaf.framework.blocks.Block.Block itsName="thisIsRidiculous">
       ...
     </osaf.framework.blocks.Block.Block>

I think this is a pretty obvious non-starter, even if we were able to 
flatten it to:

     <osaf.gui.blocks.Block itsName="thisIsStillTooVerbose">
       ...
     </osaf.gui.blocks.Block>

at a later time.  This just won't work for the poor guy or gal writing the XML.



More information about the Dev mailing list