nestable C/C++ XML parser?

Mike Williams mikew at o3.co.uk
Wed Dec 8 09:37:41 GMT 1999


  >>> On Tue, 07 Dec 1999 13:57:43 -0500,
  >>> "Paul" == Paul Miller <stele at fxtech.com> wrote:

  Paul> No, I did want things pushed at me (via callbacks), but I want the
  Paul> opportunity to do some object-specific processing "inside" one of the
  Paul> callbacks, after the next set of *nested* elements were processed. This
  Paul> requires a nestable parser, where I can pick up the parsing inside a
  Paul> different scope. 

What about using nestable *handlers*.  Say you're parsing something like
this:

    ...
    <foo>
        <bar>xxx</bar>
    </foo>
    ...

When your main handler sees the <foo> tag, create a new "FooHandler"
object.  Your main handler would then need to delegate all events to the
FooHandler, until the corresponding </foo> is seen.

Not that this is particularly easy to implement.  In fact, I started to
implement something similar (in Java), but got fed up ... I've reverted to
using a DOM as input, for the time being.  

The main complication is that the delegating handler has to maintain a
context-stack while it's delegating, in order to match the correct
end-tag.  One way around this might be to get the FooHandler to notify the
main handler when it's finished.

Just an idea ...

-- 
Mike Williams

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 unsubscribe, mailto:majordomo at ic.ac.uk the following message;
unsubscribe 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