My read is that in both these cases ( document ordering and sibling access) that you would only have access to the information if you had a reference to the parent (or sequence).
Sequence order :
sequence [ A , 1 , B , 2 ]
Given the sequence we know the order A,1,B,2
But given just the "B" (say it is passed to a function) ... I dont think it would have a sibling axis like
function x( B ) {
B/previous-sibling::
}
x( sequence[ 3 ] )
---- > how does fucntion x work ? I dont think it can.
<child1 [ A, B ] >
<child2 [ C , D ] >
<root>
create a sequence [ child2/D , child1/A ]
Order it in document order .... [ CRASH ] ... I dont think you can because A and D dont have reference to their parents so dont know which come first when pulled out of the tree.