Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re^3: xpath problem using XML::LibXML

by kcott (Archbishop)
on Apr 12, 2014 at 23:04 UTC ( [id://1082130]=note: print w/replies, xml ) Need Help??


in reply to Re^2: xpath problem using XML::LibXML
in thread xpath problem using XML::LibXML

"Fwiw the change of quoting you suggested doesn't actually fix my mistake."

My apologies if the change in quoting was misinterpreted as part of the fix.

The change from //vm to //matrix/vm was the fix.

You had multiple instances of \' and \@ (within double-quoted strings) throughout your post: the quoting change was a cure for backslashitis. :-)

Here's the test I ran prior to posting:

#!/usr/bin/env perl -l use strict; use warnings; use XML::LibXML; my $file = 'pm_1082058_n4000-small.xml'; my $parser = XML::LibXML->new(); my $doc = $parser->parse_file($file); for my $vm ($doc->findnodes('//matrix/vm[@type="br"]')) { my $version = $vm->findvalue('./release/@version'); print 'Version: ', $version; print 'Wanted: ', $vm->findvalue('./release/@wanted'); if ($version eq '7.2.1') { print 'Found!'; last; } }

Output:

Version: 7.2.2 Wanted: Version: 7.2.1 Wanted: YES Found!

As you can see, there's no backslashes here at all (which I find makes the code more readable). The '//matrix/vm[@type="br"]' solution which I posted in my original reply was copied directly from that. If you want to run that test (or modifiy it for other tests), the data I used (pm_1082058_n4000-small.xml) is in the spoiler below.

-- Ken

Replies are listed 'Best First'.
Re^4: xpath problem using XML::LibXML
by anadem (Scribe) on Apr 14, 2014 at 16:06 UTC
    Ah, thanks, understood. Yes, the de-backslashed code is much easier to grasp. And thank you for pointing the xpath element fix.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others about the Monastery: (7)
As of 2024-03-28 16:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found