Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

Re: XML access the REPEATING NODE VALUES

by Anonymous Monk
on Jun 26, 2018 at 12:52 UTC ( #1217434=note: print w/replies, xml ) Need Help??


in reply to XML access the REPEATING NODE VALUES

When an XSLT query, as supported by XML::LibXML would accomplish this task with no Perl custom-programming at all, the use of Simple is, simply, unjustifiable. The LibXML package uses an industry-standard binary library to do any sort of XML manipulation that you may require. (And, if the XML file is so enormous that you simply can't parse it into memory, use XML::Twig.) Don't use anything else today.
  • Comment on Re: XML access the REPEATING NODE VALUES

Replies are listed 'Best First'.
Re^2: XML access the repeating node values
by haukex (Canon) on Jun 26, 2018 at 13:00 UTC
    When an XSLT query, as supported by XML::LibXML

    This is incorrect, XML::LibXML doesn't support XSLT - that would be XML::LibXSLT.

    Don't use anything else today.

    There are plenty of good XML processing modules, more than those two. For example, XML::Rules, XML::Compile, ...

      You are indeed correct it has been factored-out. Thank you for the clarification. Nevertheless, XSLT is there and well-supported to do exactly jobs like this, with or without(!) Perl being involved. Logic that attempts to do this "by hand" becomes extremely specific to the XML data structure that was originally parsed when it was originally written, and can be extremely difficult to accurately update when the XML definition changes. Fully-leveraging XML technologies via these standard binaries eliminates great code complexity and improves maintainability.
        Logic that attempts to do this "by hand" becomes extremely specific to the XML data structure that was originally parsed when it was originally written, and can be extremely difficult to accurately update when the XML definition changes.

        This sentence could just as well apply to XSLT. Properly written Perl code will be easy to adapt to changes in the XML.

        Fully-leveraging XML technologies via these standard binaries eliminates great code complexity

        I've written XSLT, and I found its syntax somewhat cumbersome.

        Plus, Perl is much more powerful (regexes, the ability to access other data sources like databases, JSON, and so on). Sorry, I currently don't see the strength of your argument for XSLT. But perhaps you could write an XSLT solution that demonstrates its advantages.

        You are indeed correct it has been factored-out.

        Yeah, but only 17 years ago so you were definitely on point, geologically speaking. And it was the other way around. XML::LibXML was part of the XML::LibXSLT dist but what's a bucket of chum between friends!

        XSLT is there and well-supported to do exactly jobs like this, with or without(!) Perl being involved.

        Can't wait to see you post an example that solves an OP's question with either recommended approach! Heat death of Universe being the scientifically predicted time scale in that case.

        Fully-leveraging XML technologies via these standard binaries eliminates great code complexity and improves maintainability.

        ^^^ Imagine if you will a fortune cookie in the role of PM.

Re^2: XML access the REPEATING NODE VALUES
by Your Mother (Bishop) on Jun 26, 2018 at 17:18 UTC

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1217434]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (5)
As of 2019-04-20 14:29 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    I am most likely to install a new module from CPAN if:
















    Results (110 votes). Check out past polls.

    Notices?
    • (Sep 10, 2018 at 22:53 UTC) Welcome new users!