Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I select multiple sets of attributes within an XML document using XPath?

Tags:

xml

xpath

I am having trouble constructing a single XPath statement to return two different sets of attributes.

For example take the following XML document:

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

If I use the following XPath statement:

//@alpha

It yields the following attribute set:

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

What statement do I use to yield the following attribute set:

alpha="a1"
alpha="a2"
alpha="a3"
beta="b1"
beta="b2"
beta="b3"
like image 371
chinna Avatar asked Nov 20 '08 00:11

chinna


1 Answers

By using the | operator in an XPath expression you can select several paths:

//@alpha | //@beta
like image 79
Oppositional Avatar answered Oct 30 '22 01:10

Oppositional