This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: String comparisons fail unexpectedly: how can 'USA' not be 'USA'?
- From: Joerg Pietschmann <joerg dot pietschmann at zkb dot ch>
- To: XSL List <xsl-list at lists dot mulberrytech dot com>
- Date: Wed, 27 Feb 2002 16:37:57 +0100
- Subject: Re: [xsl] String comparisons fail unexpectedly: how can 'USA' not be 'USA'?
- Organization: ZKB
- Reply-to: xsl-list at lists dot mulberrytech dot com
TSchutzerWeissmann@uk.imshealth.com wrote:
> tried this:
> <xsl:value-of select="Billcode[2]/@country"/>
> <xsl:value-of select="'USA'=Billcode[2]/@country"/>
> and got, to my surprise, "USAfalse".
Did you type in both your XML and XSL with the same editor
on the same machine? If not, dump both with the same encoding
and examine the hexadecimal values of the relevant character
codes. There are for example several Unicode characters which
could give you the glyph "A" on display.
There are further possibilities, like a bug in your processor.
A behaviour change for example if unrelated parts of the XML
are deleted would hint in this direction.
What does your processor produce on
<?xml version="1.0"?>
<test>USA</test>
transformed by
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:template match="test">
<xsl:value-of select="'USA'=."/>
</xsl:template>
</xsl:stylesheet>
Saxon produces
<?xml version="1.0" encoding="utf-8"?>true
HTH
J.Pietschmann
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list