Firstly, I assume you're using an XSLT 2.0 processor - in 1.0, this would be an error.
The semantics of != can be surprising. Your condition $isThere !=$valid/klm/abc is true if there is a pair of values, one from the sequence $isThere and one from the sequence $valid/klm/abc, such that the two values in the pair are unequal.
You probably mean not($isThere = $valid/klm/abc), which is true if there is no pair of values that are equal.
__________________
Michael Kay
http://www.saxonica.com/
Author, XSLT 2.0 and XPath 2.0 Programmer\'s Reference
|