A Perl 6 Library for parsing and evaluating XPath Statements.
Specification on XPath Expressions can be found at https://www.w3.org/TR/xpath/.
use XML::XPath;
my $xpath = XML::XPath.new(xml => '... xml ...');
my $result = $xpath.find('/foo/bar');
If you want to see more examples please have a look at the testcases.
XML::XPath creates a XML Document from a $file
or from $xml
unless you provide a $document
in the constructor.
Evaluates the XPath Expression and returns the results of the match. If a $start node is provided it starts there instead of beginning of the XML Document. If $to-list is True the result will allways be an Array, otherwise it might return Any or a single element (e.g XML::Node, Str, Nummeric, Bool)
This method sets a namespace, so the value of $ns.key
can be used in the XPath expression to look nodes a
certain namespace.
$x.set-namespace: 'goo' => "foobar.example.com";
$set = $x.find('//goo:something');
Clears all namespaces that have been set via .set-namespace
.
Just parses $xpath
expression.
Artistic License 2.0.