This is a multi-part message in MIME format.
Hi,
This may be more XPath than XQuery so I hope you don't mind me posting here.
I want to write a query that given a string (let's say "Torbay") will return the uid attribute of the element with the name attribute equal to the string value.
I have only got so far as being able to get the whole node (i.e. including children) with the matching name attribute as follows:
for $areaserved in doc("...")/*[@name = "Torquay"] return $areaserved
I should say that the matching name attribute could appear at any level in the XML document and may or may not have child elements.
Example XML:
<?xml version="1.0" encoding="UTF-8"?>
<county name="Devon" uid="0">
<district uid="8" name="Torbay">
<town uid="210" name="Brixham" pct="Torbay"/>
<town uid="211" name="Paignton" pct="Torbay"/>
<town uid="212" name="Torquay" pct="Torbay">
<settlement name="Babbacombe" uid="979"/>
<settlement name="Barton" uid="803"/>
<settlement name="Chelston" uid="804"/>
</town>
</district>
</county>
Many Thanks
Rob Walpole
|