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


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [xml-dev] RE: Namespaces Best Practice

At 10:43 AM 9/19/2001 -0700, Joe English wrote:
>I think that any sensible Infoset implementation wouldn't
>actually allocate storage for each namespace node.
>Instead, it would synthesize a list of namespace nodes from
>the in-scope namespace declaration nodes on demand.

I'm working on this right now in a generic XML-handling framework, and it's 
not an easy problem to solve.  Preserving namespace nodes from the original 
document is handy because:

a) it preserves the original document structure, when that's valued
b) it tends to reduce the number of times a namespace is declared over the 
course of a document.  (unless, of course, the creator of the document was 
deliberately perverse.)

Synthesizing lists is useful because:
a) it reduces the amount of storage needed overall
b) it makes it much simpler to chop pieces out of documents and reuse them 

The problem I'm finding is that synthesizing lists efficiently is 
hard.  I've tolerated the results in things like David Megginson's (very 
useful) XML Writer classes, but I tend to wind up with many more namespace 
declarations than I wanted.

I'm still looking for efficient approaches to managing namespace context 
and declaration generation, and haven't yet found something I'm happy 
with.  (I've only been addressing the problem directly for about a month, 
so maybe I just haven't figured it out yet.)

The xmlns or xmlns:prefix approach has also made things more complicated 
than I thought they'd be, but I'm past most of that.

Simon St.Laurent
Associate Editor
O'Reilly & Associates, Inc.