This script works with and without XPathContext. Why should I use it with XPathContext?
#!/usr/bin/env perl
use warnings; use stric
The primary reason for using XPathContext elements is namespaces. Your document has no namespaces so XPathContexts don't add anything to your query. Now, imagine that you actually had the following xml
my $doc = $parser->parse_string(<
Text im Dokument
EOT
You would need to define an XPathContext in order to have namespaces defined so that you could make namespace aware XPath queries:
my $root = $doc->documentElement;
my $xc = XML::LibXML::XPathContext->new( $root );
$xc->registerNs("ns2", "http://your.company.com/nstwo");
$xc->registerNs("ns1", "http://my.company.com/nsone");
my $nodes = $xc->findnodes( '/ns1:xml/ns2:element[@id="myID"]' );
Otherwise, you have no simple way to use namespace aware XPath statements.