2008-11-20 9 views
8

J'ai des difficultés à créer une seule instruction XPath pour renvoyer deux ensembles d'attributs différents.Comment sélectionner plusieurs ensembles d'attributs dans un document XML à l'aide de XPath?

Par exemple prendre le document XML suivant:

<root> 
<line name="one" alpha="a1" beta="b1"/> 
<line name="two" alpha="a2" beta="b2"/> 
<line name="three" alpha="a3" beta="b3"/> 
</root> 

Si j'utilise l'instruction XPath suivante:

//@alpha 

Il donne l'ensemble d'attributs suivants:

alpha="a1" 
alpha="a2" 
alpha="a3" 

Quelle déclaration Dois-je utiliser pour obtenir le jeu d'attributs suivant:

alpha="a1" 
alpha="a2" 
alpha="a3" 
beta="b1" 
beta="b2" 
beta="b3" 

Répondre

13

En utilisant l'opérateur | dans une expression XPath, vous pouvez sélectionner plusieurs chemins:

//@alpha | //@beta 
11
//@*[name()='alpha' or name()='beta'] 
Questions connexes