Ein anderer Use Case für so eine Character Map wäre, unsichtbare Zeichen sichtbar zu machen. Z.B. stellen XML Editoren, wie XMetal, auch unsichtbare Zeichen im Klartext dar. Man sieht also nicht, ob z.B. ein geschütztes Leerzeichen oder ein geschützter Bindestrich bedatet ist. Die folgende Character Map Deklaration würde diese Zeichen als Entität sichtbar machen - möglich ist das z.B. als Vorprozessierung der XMetal Eingabe, wenn diese Zeichen per Copy 'n Paste eingefügt werden:
<xsl:character-map name="desired-entities"> <xsl:output-character character=" " string="&nbsp;"/> <xsl:output-character character="‑" string="&nbhy;"/> </xsl:character-map>Plain Text
Hilfreich ist in diesem Zusammenhang vielleicht auch die Möglichkeit, dass Saxon direkt Entities in den Ausgabebaum schreiben kann. Hierzu gibt es die Erweiterung saxon:character-representation , vgl. Saxon Doku