Having this (simplified) XML:
<?xml version="1.0" encoding="UTF-8"?>
<kml>
<Document>
<Placemark>
<name>Poly 1</name>
<Polygon>
<coordinates>
-58.40844625779582,-34.60295278618136,0
</coordinates>
</Polygon>
</Placemark>
<Placemark>
<name>Poly 2</name>
<Polygon>
<coordinates>
-58.40414334150432,-34.59992445476809,0
</coordinates>
</Polygon>
</Placemark>
</Document>
</kml>
How can I select the name and coordinates of each Placemark? Right now I can select their name with the following XPath expression:
//Document//Placemark//name
How can I select both without any other data?
You can use a union in your XPath expression. Just use the operator: |
//Document/Placemark/name | //Document/Placemark/Polygon/coordinates
Don't use the //
(descendant axis) if you don't need to. Using //
, this would also work: //name | //coordinates
. It's better performance-wise to specify the exact path.