I have xml in substantially the following form:
<root>
<choices>
<choice>A</choice>
<choice>B</choice>
<choice>C</choice>
<choice>D</choice>
</choices>
<items>
<item id="1">A</item>
<item id="2">X</item>
<item id="3">B</item>
<item id="4">C</item>
<item id="5">Y</item>
<item id="6">Z</item>
</item>
</root>
I need to process each item where its content is not one of
the choice values. I need a very efficient solution since I
have say up to 10,000 <items>s and perhaps 100 difference <choice>'s.
<xsl:key name="c" match="choice" use="."/>
then
<xsl:for-each select="item[not(key('c',.))]">
Michael Kay
Software AG
home: Michael(_dot_)H(_dot_)Kay(_at_)ntlworld(_dot_)com
work: Michael(_dot_)Kay(_at_)softwareag(_dot_)com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list