Can XPath do a foreign key lookup across two subtrees of an XML?
Say I have the following XML... <root> <base> <tent key="1" color="red"/> <tent key="2" color="yellow"/> <tent key="3" color="blue"/> </base> <bucket> <tent key="1"/> <tent key="3"/> </bucket> </root> ...what would the XPath be that returns that the "bucket" contains "red" and "blue"? 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(