xsl-list
[Top] [All Lists]

Re: [xsl] Validation XSLT using XSLT 1.0

2008-07-03 02:41:30
Michael Kay schrieb:
Does anyone know of a tool that parses an XML document and
outputs it as ASCII replacing characters with named entities
instead of numeric entites? Named entites you'd probably have
to supply yourself?

You can do that in XSLT 2.0 with an identity transformation,
serializing the result using character maps.

Thanks! This works great for me, and it'll also work for Ganesh to solve
the second problem in his original post to this thread if he upgrades to
XSLT 2.0.

<?xml version="1.0" encoding="UTF-8"?>
<xsl:transform version="2.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
  <xsl:output use-character-maps="Zeichen"/>
  <xsl:character-map name="Zeichen" use-character-maps="Umlaute-und-ß">
    <xsl:output-character character="&#160;" string="&amp;nbsp;"/>
  </xsl:character-map>
  <xsl:character-map name="Umlaute-und-ß">
    <xsl:output-character character="&#196;" string="&amp;Auml;"/><!--Ä-->
    <xsl:output-character character="&#214;" string="&amp;Ouml;"/><!--Ö-->
    <xsl:output-character character="&#220;" string="&amp;Uuml;"/><!--Ü-->
    <xsl:output-character character="&#223;" string="&amp;szlig;"/><!--ß-->
    <xsl:output-character character="&#228;" string="&amp;auml;"/><!--ä-->
    <xsl:output-character character="&#246;" string="&amp;ouml;"/><!--ö-->
    <xsl:output-character character="&#252;" string="&amp;uuml;"/><!--ü-->
  </xsl:character-map>
  <xsl:template match="@*|node()">
    <xsl:copy>
      <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
  </xsl:template>
</xsl:transform>

I had my employer buy a copy of the 4th edition of your XSLT 2.0 and
XPath 2.0 reference. I used it to read up on character references and
are very pleased with both the contents and the page-number-annotated
cross-references. I haven't read more yet, but I'm sure this is as
excellent a book as many people on this list have pointed out. Thanks!

Michael Ludwig

--~------------------------------------------------------------------
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>
--~--