Re: case insensitive comparison

Subject: Re: case insensitive comparison
From: Jeni Tennison <mail@xxxxxxxxxxxxxxxx>
Date: Tue, 12 Sep 2000 18:29:21 +0100
Oliver Becker wrote:
>But this was discussed too:
>
>> 	   <xsl:when test= "self::node()[@internal = //bookmark/@name]">
>
>the predicate is true if @internal equals one of the string-values of
>the node-set //bookmark/@name
>
>> <xsl:when test= "self::node()
>>              [translate(@internal,$u,$l) = 
>>               translate(//bookmark/@name,$u,$l)]">
>
>in this case translate gets as parameter a node-set, i.e. it translates
>only the string-value of the first node.
>
>Or did I misunderstand something in XPath?

No, that's right.  The solution is to turn it around and test whether there
exist any bookmark @names that translate to the same value as the
translated version of @internal:

<xsl:when test="//bookmark[translate(@name, $u, $l) = 
                           translate(current()/@internal, $u, $l)]">
  ...
</xsl:when>

Cheers,

Jeni

Jeni Tennison
http://www.jenitennison.com/


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread