If the input is validated against a schema, then the type annotation of
the @type attribute will affect the semantics of the comparison. Is
there a schema involved?
When the comparison is in a match pattern, a type error will probably be
masked and simply treated as a no-match. For example, if @type is a
QName, comparison of QName to string will fail, and this will simply
result in the pattern not matching.
On 05/02/2013 17:31, Andrew Welch wrote:
> I've tried (and failed) to create a small complete sample to recreate
> this issue in the time I have, so not sure how useful this will be....
> I've got a no-op template like this:
> <xsl:template match="thing[not(@type = ('one', 'two', 'three'))]"/>
> this works as expected with HE 18.104.22.168, however with EE 22.214.171.124 (in
> oXygen) it fails to match, and I had to modify it to:
> <xsl:template match="thing[not(string(@type) = ('one', 'two', 'three'))]"/>
> As I say, I did try and recreate this issue outside of the full
> transforms but haven't been able to so far... if you aren't already
> aware of an issue like this I'll put in time at some point.