Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • It might help to answer your question if we knew what you want to do with the tree.

    One of the disadvantages of a complex tree structure is the tedium of navigating it to access the data you want. In the XML world, the XPath query language is great for pulling data out of the DOM tree. So having a parser that uses a generic tree module without XPath support doesn't sound particularly appealing.

    The most popular XML module is probably XML::LibXML. Its tree nodes and XPath query engine are implemented in the

    • Hi Grant

      'tedium of navigating' is your problem :-). I'm quite happy to think in terms of tree traversal.

      Also, I have no intention of using XPath for the sorts of things /I/ want to do.

      Also, I'm interested in what motivates people to write modules in various ways.

      Also, I'm interested in a pure Perl solution.

      Also, I'm not worried about the overhead of various mechanisms, but I am interested in the /availability/ of various mechanisms,


  • I wrote Tree::Simple::SAX [] a while back but never really went anywhere with it. If nothing more it would be a good starting point.

    - Stevan

    • Hi Stevan

      The problem is that your sub characters() assumes it is called only once per set of chars, but as explained in XML::SAX::Intro this is not necessarily true :-(.


      • Ron,

        I suspect that is easy to fix, you are welcome to fork this on github [] and patch away. In fact if you want I will gladly give you co-maint on CPAN as well.

        - Stevan

        • Hi Stevan

          Thanx for the offer, and yes, I'm sure it's be easy to fix. I'll tempted, so I'll think about it...
          And I do love SAX-style processing.