use Test; BEGIN { plan tests => 11 } use XML::XPath; ok(1); my $xp = XML::XPath->new(ioref => *DATA); ok($xp); my @nodes; @nodes = $xp->findnodes('//GGG/ancestor::*'); ok(@nodes, 4); @nodes = $xp->findnodes('//GGG/descendant::*'); ok(@nodes, 3); @nodes = $xp->findnodes('//GGG/following::*'); ok(@nodes, 3); ok($nodes[0]->getName, "VVV"); @nodes = $xp->findnodes('//GGG/preceding::*'); ok(@nodes, 5); ok($nodes[0]->getName, "BBB"); # document order, not HHH @nodes = $xp->findnodes('//GGG/self::*'); ok(@nodes, 1); ok($nodes[0]->getName, "GGG"); @nodes = $xp->findnodes('//GGG/ancestor::* | //GGG/descendant::* | //GGG/following::* | //GGG/preceding::* | //GGG/self::*'); ok(@nodes, 16); __DATA__