Я работаю над переводом XHTML в другой XHTML (для локализации), инструмент, который мы можем использовать, это только XSLT, что является ограничением.Теперь, когда я пытаюсь скопировать весь код в целях тестирования, значения CDATA исходного XHTML теряются.Я использовал ниже тег cdata-section-elements = "script", но он комментирует весь CDATA и приводит к потере формата моего оригинального XHTML
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/1999/xhtml">
<xsl:output method="html" cdata-section-elements="script"
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"/>
<xsl:template match="div[@id='HEADER']">
<div id="HEADER">
<p>This is the <em>improved</em> header.</p>
</div>
</xsl:template>
<xsl:template match="script|style">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:value-of disable-output-escaping="yes" select="concat('//<![CDATA[
',text(),'
//]]>')" />
</xsl:copy>
</xsl:template>
<xsl:template match="*|@*" >
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>