2008-11-20 20 views
8

Tengo problemas para construir una sola instrucción XPath para devolver dos conjuntos diferentes de atributos.¿Cómo selecciono varios conjuntos de atributos dentro de un documento XML usando XPath?

Por ejemplo tomar el siguiente documento XML:

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

Si utilizo la siguiente declaración XPath:

//@alpha 

Se produce el siguiente conjunto de atributos:

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

Qué declaración Cómo utilizo para obtener el siguiente conjunto de atributos:

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

Respuesta

13

Al utilizar el operador | en una expresión XPath puede seleccionar varios caminos:

//@alpha | //@beta 
11
//@*[name()='alpha' or name()='beta'] 
Cuestiones relacionadas