DOM, SAX and Events
davids at mannanetwork.com
Mon Jun 7 11:03:06 BST 1999
XML4j parser (from IBM) implements the Visitor pattern.
You run a traversal on the DOM tree and receive *events* into a visitor
that rides piggy back on the traversal object.
I'm currently using a SAX parser to parse an XML script which
drives some application processing. I used SAX as it gave a
nice fit with the Java event system. I've layered a lightweight
application specific event system on top of SAX so those details
are hidden from the application itself. This all works very nicely
and is nothing new.
However I now realise that I may need to repeat parts of the script,
i.e. run a particular section multiple times before continuing. I can't
simply copy and paste parts of the XML doc as I don't know a priori
how many repetitions are required. I also can't revisit that part
of the document because the SAX parser doesn't allow this.
So, I'm going to move to a DOM representation and do a tree-walk
instead. I can then revisit subtrees whenever required.
This should be no problem to implement, but leads me to wonder
whether other people have met this same problem, and if
so whether it'd be useful to have an event driven interface to
Basically the interface just involves tree-walking and determining the
types of nodes and generating the correct callbacks similar to
SAX, albeit at a slightly higher level.
Is this something others have encountered? Is it an already solved
problem and I've missed something?
Manna Network Technologies
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;
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev