The Peace Process: DOM and namespaces...
James Clark
jjc at jclark.com
Thu Feb 11 07:53:24 GMT 1999
Tyler Baker wrote:
>
> James Clark wrote:
>
> > Rick Ross wrote:
> >
> > > the XSL working draft
> > > specification requires namespace support that apparently cannot be
> > > implemented effectively if the primary input source is a dynamically built
> > > DOM tree.
> >
> > I can't see this.
> >
> > Why can't you put a layer on top of the DOM that provides namespace
> > processing? For example, you could have an NSNode object that points to
> > the DOM Node and a set of prefix bindings (and probably a parent
> > NSNode). The NSNode objects will be temporary. You wouldn't have to
> > reparse the document, and you don't have to keep two trees in memory.
> > You can also provide other things in this layer that help XSL
> > performance such as document order comparison.
>
> This is a familiar design model when you want to add functionality to a business object
> without formally extending it. I have looked into this myself, but it still poses problems,
> namely you need to either build this entire map from iterating over the entire DOM tree and
> writing code like this for every node in the document:
...
> In terms of O notation (I hate to be academic here) that is N^2 plus the underlying cost of
> string comparisons.
Huh? The time for each element is linear in the number of attributes
that the element has.
> And you still need to reparse the entire document each time to safely create these bindings as
> the source tree can mutate at any time.
You need to do the namespace processing each time. You don't have to do
the parsing each time.
James
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list