private static int findNodeIndex(NodeInfo node) { if (node.getParent() == null) return 0; final AxisIterator it = node.iterateAxis(Axis.PRECEDING_SIBLING); int result = 0; Item i = it.next(); while (i != null) { result++; i = it.next(); } return result; }