¿Es posible usar XPath para seleccionar solo los nodos que tienen elementos secundarios en particular? Por ejemplo, de este XML solo quiero los elementos en mascotas que tienen un hijo de 'barra'. Por lo que el conjunto de datos resultante contendría los lizard
y pig
elementos de este ejemplo:¿Puede XPath devolver solo nodos que tengan un hijo de X?
<pets>
<cat>
<foo>don't care about this</foo>
</cat>
<dog>
<foo>not this one either</foo>
</dog>
<lizard>
<bar>lizard should be returned, because it has a child of bar</bar>
</lizard>
<pig>
<bar>return pig, too</bar>
</pig>
</pets>
Este Xpath me da todas las mascotas: "/pets/*"
, pero sólo quiere que los animales que tienen un nodo hijo del nombre 'bar'
.
No subestime las especificaciones de W3C en cuanto a la legibilidad y utilidad. Probablemente sea más rápido buscar las respuestas a preguntas como estas en the spec, que es muy legible y completo, con muchos ejemplos. – Confusion