1. Install XML::Rules
  2. Run XML::Rules->inferRulesFromExample() on a (few) example(s) to obtain the base set of rules (using them you end up with a datastructure that looks very similar or exactly the same as the one you get from XML::Simple).
  3. Tweak the ruleset to skip the tags you are not interested in or convert a list of <field name="...">...value...</field> style tags into a hash etc.
  4. If the data are still too big, change the rules for some tags to process the data at whatever level that's convenient. The subroutines you specify as the rules for those tags will receive all the data from that tag and children "simplified" according to the rules of the child tags.

It's "push" rather than "pull" as soon as you start using the subroutine rules, but it's pretty powerful once you get used to the style.

Jenda
Enoch was right!
Enjoy the last years of Rome.


In reply to Re: XML::LibXML::Reader - wish it had a Simplify function... by Jenda
in thread XML::LibXML::Reader - wish it had a Simplify function... by KalTorak

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.