Consider the following xml:
<node value="£">Hello World</node>
I have the problem where I need characters outside the ascii
range to be output as references, apart from the pound sign,
which must remain as the actual character.
I don't understand. You want the output to be ASCII, but you want the # sign
output as a hex A3 byte? Those are surely contradictory requirements.
Michael Kay
The processor is Saxon 7.8 and is fixed. I can't use d-o-e
as the pound sign is always an attribute value, and saxon 7.8
no longer supports d-o-e on attributes in favour of character
maps. When I use the following stylesheet, I get a '?'
character instead of the the pound, I guess because Saxon
can't output the pound sign because it's not in the ascii range...
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:saxon="http://saxon.net.sf/"
exclude-result-prefixes="saxon">
<xsl:output method="xhtml" encoding="ascii"
omit-xml-declaration="yes" use-character-maps="style"/>
<xsl:character-map name="style">
<xsl:output-character character="£" string="£"/>
</xsl:character-map>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Outputs:
<node value="?">Hello World</node>
I'm really after an exact copy of the input:
<node value="£">Hello World</node>
Any ideas?
cheers
andrew
--+------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--+--