Thomas J.S.: XSLT / XPath translate() / $apos

Beitrag lesen

Hallo,

ich möchte gern das Apostroph ($apos) mit der XPath-Funktion translate() in einen Unterstrich umwandeln.
In einem Forum im Internet habe ich einen Eintrag hierzu von Michael Kay gelesen:
URL: http://www.stylusstudio.com/xsllist/200701/post90250.html

Komischerweise wird das Apostroph nicht in einen Unterstrich umgewandelt. Dafür wird der Buchstabe danach gelöscht.

Ich benutze für die Transformation übrigens die Standard-Engine vom AltovaXMLSpy.

<data>
 Hermine's Buch
</data>
--------
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
 <xsl:template match="/data">
  <xsl:variable name="apos">'</xsl:variable>
  <xsl:value-of select="translate(., $apos, '_')" />
 </xsl:template>
</xsl:stylesheet>
------
 Hermine_s Buch

Gestest mit
AltovaXML Version 2007 rel. 3
build: May 31 2007

und mit Saxon8b

Grüße
Thomas