File: Transform.xslt
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" use-character-maps="sample"/>
<xsl:character-map name="sample" use-character-maps="circles">
<xsl:output-character character="	" string=" "/>
</xsl:character-map>
<xsl:character-map name="circles">
<xsl:output-character character="➀" string="<img src="images/circle1.gif" width="28" height="28"/>"/>
<xsl:output-character character="➁" string="<img src="images/circle2.gif" width="28" height="28"/>"/>
</xsl:character-map>
<xsl:template match="char-test">
<html>
<head>
<title>title</title>
</head>
<body>
<xsl:apply-templates select="*"/>
</body>
</html>
</xsl:template>
<xsl:template match="tabs">
<pre>
<xsl:value-of select="."/>
</pre>
</xsl:template>
<xsl:template match="special-char">
<p style="font-size: 200%;">
<xsl:text>Here"s a special character: </xsl:text>
<xsl:value-of select="."/>
</p>
</xsl:template>
</xsl:stylesheet>