NAME
JSON::JOM::Plugins::JsonPath - search for nodes using JSONPath.
SYNOPSIS
use JSON::JOM;
my $jom = to_jom({
test => {
foo => [{quux=>1},{quux=>2},{quux=>3}],
bar => [{quux=>4},{quux=>5},{quux=>6}],
},
});
my @nodes = $jom->{test}->findNodes("\$[*][*]");
foreach my $node (@nodes)
{
if ($node->matchesPath("\$[*]['bar'][*]"))
{
print "bar has object with quux=".$node->{quux}."\n";
}
}
DESCRIPTION
This JOM plugin adds the following method to JOM objects and arrays:
* "findNodes" - search for descendant nodes using a JSONPath path.
* "matchesPath" - check to see if a node matches a search path.
Note that the core JOM functionality includes a "nodePath" method to get
a canonical JSONPath path for each node.
BUGS
Please report any bugs to .
SEE ALSO
JSON::JOM, JSON::JOM::Plugins.
JSON::Path.
AUTHOR
Toby Inkster .
COPYRIGHT
Copyright 2010 Toby Inkster
This library is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.