NAME Data::DPath - DPath is not XPath! SYNOPSIS use Data::DPath 'dpath'; my $data = { AAA => { BBB => { CCC => [ qw/ XXX YYY ZZZ / ] }, RRR => { CCC => [ qw/ RR1 RR2 RR3 / ] }, DDD => { EEE => [ qw/ uuu vvv www / ] }, }, }; @resultlist = dpath('/AAA/BBB/CCC')->match($data); # ( ['XXX', 'YYY', 'ZZZ'] ) @resultlist = dpath('/AAA/*/CCC')->match($data); # ( ['XXX', 'YYY', 'ZZZ'], [ 'RR1', 'RR2', 'RR3' ] ) @resultlist = dpath('/AAA/BBB/CCC/../../DDD')->match($data); # ( { EEE => [ qw/ uuu vvv www / ] } ) See currently working paths in t/data_dpath.t. INSTALLATION perl Makefile.PL make make test make install FUNCTIONS dpath Meant as the front end function for everyday use of Data::DPath. It takes a path string and returns a Data::DPath::Path object on which the match method can be called with data structures. See SYNOPSIS. METHODS match($data, $path) Returns all values in data that match the path as an array. get_context($path) Returns a Data::DPath::Context object that matches the path and can be used to incrementally dig into it. AUTHOR Steffen Schwigon, "" BUGS Please report any bugs or feature requests to "bug-data-dpath at rt.cpan.org", or through the web interface at . I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. SUPPORT You can find documentation for this module with the perldoc command. perldoc Data::DPath You can also look for information at: * RT: CPAN's request tracker * AnnoCPAN: Annotated CPAN documentation * CPAN Ratings * Search CPAN REPOSITORY The public repository is hosted on github: git clone git://github.com/renormalist/data-dpath.git ACKNOWLEDGEMENTS COPYRIGHT & LICENSE Copyright 2008 Steffen Schwigon. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.