... even weirder, it returns li/@id=last three times
--Marc
On Sun, Nov 16, 2014 at 12:51 PM, Marc van Grootel marc.van.grootel@gmail.com wrote:
Hi,
I think I bumped into a bug (on 8.0 snapshot)
let $input := <ul> <li id="first">item 1</li> <li>item 2</li> <li id="last">item 3</li> </ul>
return outermost(( $input//li[@id = 'last'], $input//li, $input//li[@id = 'first'] ))
=>
<li id="first">item 1</li> <li>item 2</li> <li id="last">item 3</li> <li id="last">item 3</li> <li id="last">item 3</li>
This is in document order but duplicates are not eliminated. The same happens with fn:innermost.
According to the spec[1] "takes as input a sequence of nodes, and returns every node within the sequence that does not have another node within the sequence as an ancestor; the nodes are returned in document order with duplicates eliminated."
[1] http://www.w3.org/TR/xpath-functions-30/#func-outermost
--Marc