Say I have the following XML...
I think this will work:
/root/base/tent[/root/bucket/tent/@key = @key ]/@color
It's not pretty. As with any lookup, you need to use current():
/root/bucket[/root/base/tent[@key = current()/tent/@key]/@color = 'blue' or /root/base/tent[@key = current()/tent/@key]/@color = 'red']
If you're using XSLT, I'd recommend setting up a key:
<xsl:key name="tents" match="base/tent" use="@key" />
You can then get the <tent>
within <base>
with a particular key
using
key('tents', $id)
Then you can do
key('tents', /root/bucket/tent/@key)/@color
or, if $bucket
is a particular <bucket>
element,
key('tents', $bucket/tent/@key)/@color
JeniT has the appropriate response / code listed here. You need to create the key before you walk the XML Document, then perform matches against that key.