Hallo zusammen,
ich habe aktuell ein XML-Element in dessen Inhalt Zeilenumbrüche durch die HTML-Zeilenumbrüche ersetzt werden. Dies geschieht rekursiv mit folgendem XSL-Template:
Das Template wird mit dem Knoteninhalt des Text-Elements <text> aufgerufen.
Mein Problem ist jetzt, dass ich in diesem Text weitere Elemente habe die eigentlich übersetzt werden sollten, z.B. "<code>ein programmierbeispiel..</code>". Wie kann ich diese Element trotz Zeilenumbruchsersetzung auch noch transformieren lassen?
Viele Grüße ,
Felix
ich habe aktuell ein XML-Element in dessen Inhalt Zeilenumbrüche durch die HTML-Zeilenumbrüche ersetzt werden. Dies geschieht rekursiv mit folgendem XSL-Template:
<xsl:template name="linebreaks">
<xslaram name="text" select="."/>
<xsl:choose>
<xsl:when test="contains($text, '
')">
<xsl:value-of select="substring-before($text, '
')"/>
<br/>
<xsl:call-template name="linebreaks">
<xsl:with-param name="text" select="substring-after($text,
'
')"/>
</xsl:call-template>
</xsl:when>
<xsltherwise>
<xsl:value-of select="$text"/>
<!-- xsl:apply-templates select="$text"/-->
</xsltherwise>
</xsl:choose>
</xsl:template>
<xslaram name="text" select="."/>
<xsl:choose>
<xsl:when test="contains($text, '
')">
<xsl:value-of select="substring-before($text, '
')"/>
<br/>
<xsl:call-template name="linebreaks">
<xsl:with-param name="text" select="substring-after($text,
'
')"/>
</xsl:call-template>
</xsl:when>
<xsltherwise>
<xsl:value-of select="$text"/>
<!-- xsl:apply-templates select="$text"/-->
</xsltherwise>
</xsl:choose>
</xsl:template>
...
<xslaram name="text" select="text"/>
...
<xsl:call-template name="linebreaks">
<xsl:with-param name="text" select="$text"/>
</xsl:call-template>
<xslaram name="text" select="text"/>
...
<xsl:call-template name="linebreaks">
<xsl:with-param name="text" select="$text"/>
</xsl:call-template>
Viele Grüße ,
Felix