Re: [xsl] Unicode and <xsl:character-map/>

Subject: Re: [xsl] Unicode and <xsl:character-map/>
From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx>
Date: Wed, 29 Aug 2007 18:37:29 +0100
On 8/29/07, Steve Ylvisaker <sylvisaker@xxxxxxxxxxxxxxxxxx> wrote:
> I am working with Saxon8.
>
> I have a Unicode source XML file that contains the code points °C (U+00B0 and U+0043). When I encounter this string pattern I would like to substitute the Unicode character for ℃ (U+2103). I have implemented the following code, which compiles fine but has no impact on the data. Is there something I am missing?
>
> <xsl:output method="xml" omit-xml-declaration="no" encoding="utf-8" indent="no" use-character-maps="degree"/>
>
> <xsl:character-map name="degree">
>         <xsl:output-character character="&#x2103;" string="&#x00B0;#x0043;"/> </xsl:character-map>
>
> Please help me out with this concept.

'tis vice versa - character maps replace single characters with a
string of characters: http://www.w3.org/TR/xslt20/#character-maps

You need replace() eg:

select="replace(., '&#xB0;&#x43;' ,'&#x2103;')"

cheers
andrew
-- 
http://andrewjwelch.com

Current Thread