Digamos que estoy consultando un documento xhtml y quiero consultar a todos los hermanos que siguen una tabla con id='target'
. Además, no quiero el primer hermano <table>
ni el primer hermano <ol>
de este elemento en particular. Aquí está lo mejor que pude encontrar:XPath - Todos los hermanos siguientes excepto los primeros elementos específicos
//table[@id='target']/following-sibling::*[not(self::table[1]) and not(self::ol[1])]
Sin embargo, esto no está dando ningún resultado cuando debería. Obviamente, no estoy entendiendo algo de la sintaxis para esto (no pude encontrar una buena fuente de información). Ciertamente agradecería que alguien más experimentado con la sintaxis XPath pudiera echarme una mano. Además, con fines puramente académicos, me gustaría saber qué está haciendo realmente lo anterior.
ACTUALIZACIÓN:
Consulte la respuesta de LarsH para obtener una explicación de por qué mi XPath no funcionaba, y vea la respuesta de Dimitre para la solución aceptada.
Buena pregunta, +1. Vea mi respuesta para una sola expresión XPath que selecciona exactamente los nodos deseados. :) –