1use Test; 2BEGIN { plan tests => 7 } 3 4use XML::XPath; 5ok(1); 6 7my $xp = XML::XPath->new(ioref => *DATA); 8ok($xp); 9 10my @nodes; 11@nodes = $xp->findnodes('/AAA/XXX/preceding-sibling::*'); 12ok(@nodes, 1); 13ok($nodes[0]->getName, "BBB"); 14 15@nodes = $xp->findnodes('//CCC/preceding-sibling::*'); 16ok(@nodes, 4); 17 18@nodes = $xp->findnodes('/AAA/CCC/preceding-sibling::*[1]'); 19ok($nodes[0]->getName, "XXX"); 20 21@nodes = $xp->findnodes('/AAA/CCC/preceding-sibling::*[2]'); 22ok($nodes[0]->getName, "BBB"); 23 24__DATA__ 25<AAA> 26 <BBB> 27 <CCC/> 28 <DDD/> 29 </BBB> 30 <XXX> 31 <DDD> 32 <EEE/> 33 <DDD/> 34 <CCC/> 35 <FFF/> 36 <FFF> 37 <GGG/> 38 </FFF> 39 </DDD> 40 </XXX> 41 <CCC> 42 <DDD/> 43 </CCC> 44</AAA> 45