NAME

XML::Grove::Path - return the object at a path

SYNOPSIS

use XML::Grove::Path;

# Using at_path method on XML::Grove::Document or XML::Grove::Element:
$xml_obj = $grove_object->at_path("/some/path");

# Using an XML::Grove::Path instance:
$pather = XML::Grove::Path->new();
$xml_obj = $pather->at_path($grove_object);

DESCRIPTION

XML::Grove::Path returns XML objects located at paths. Paths are strings of element names or XML object types seperated by slash ("/") characters. Paths must always start at the grove object passed to `at_path()'. XML::Grove::Path is not XPath, but it should become obsolete when an XPath implementation is available.

Paths are like URLs

/html/body/ul/li[4]
/html/body/#pi[2]

The path segments can be element names or object types, the objects types are named using:

#element
#pi
#comment
#text
#cdata
#any

The `#any' object type matches any type of object, it is essentially an index into the contents of the parent object.

The `#text' object type treats text objects as if they are not normalized. Two consecutive text objects are seperate text objects.

AUTHOR

Ken MacLeod, ken@bitsko.slc.ut.us

SEE ALSO

perl(1), XML::Grove(3)

Extensible Markup Language (XML) <http://www.w3c.org/XML>