Xpath afin de sélectionner uniquement les nœuds où enfant il existe des éléments?

Cela devrait être facile, mais cela me donne un mal. Compte tenu de cette structure:

<root>
  <a>
    <b/>
  </a>
  <a/>
</root>

Je suis en train de formuler une expression xpath qui ne donne que de la non-vide "une" des éléments, c'est à dire ceux qui ont les éléments enfants. Donc je veux que la première occurrence de "a" retourné, mais pas la seconde.

Pour l'instant j'ai "/root/a/self::*" mais qui est de retour moi à la fois une.

J'ai aussi trouvé que cela fonctionne: /root/[child::*] Mais je vais vous donner Adrian crédit pour une réponse qui fonctionne aussi! 🙂

OriginalL'auteur Kevin Pauli | 2009-07-17