Faire correspondre un noeud en fonction de la valeur d’un frère avec XPath

Avoir un document XML comme celui-ci:

   svn A 86400 69075 0 xxx Y xxx.xxx.xxx.xxx   domain.tld. NS 86400 xxx 0 xxx Y domain.tld.   blog A 86400 xxx 0 xxx Y xxx.xxx.xxx.xxx   

Comment faire correspondre tous les / records / enregistrement / nom ayant comme frère / enregistrements / enregistrement / type d’enregistrement avec la valeur “A”?

Trouvé:

 /records/record/name[../record-type/text() = "A"] 

Vous pouvez également filtrer un élément parent par ses enfants:

/records/record[record-type[text()='A']]/name

Étonnamment, aucune des réponses apscopes à cette question ne constitue la solution XPath la plus simple .

Ce simple XPath

 /records/record[record-type = "A"]/name 

sélectionne

 svn blog 

comme demandé.

 /records/record[record-type='A']