xsl-list
[Top] [All Lists]

Re: [xsl] Content of Script element getting wrapped by CDATA

2008-10-23 05:23:15
Oops! It works only with Sablatron. Libxslt wraps the processed value
again in another CDATA tag and Xalan and Saxon shows the message
"Error on line 0"

On Thu, Oct 23, 2008 at 2:48 PM, Joyce Babu <joyce(_at_)joycebabu(_dot_)com> 
wrote:
It did work. Here is the final working code

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

<xsl:output method="xml" omit-xml-declaration="yes" indent="no"
encoding="utf-8" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"/>

<xsl:template match="/">
  <html xml:lang="en" lang="en">
     <!-- Include Header-->
     <xsl:apply-templates select="/head" />
     <body>
     </body>
  </html>
</xsl:template>

<xsl:template match="script">
  <xsl:copy>
     <xsl:apply-templates select="@*"/>
                <xsl:value-of disable-output-escaping="yes"

select="concat('//&lt;![CDATA[&#xA;',text(),'&#xA;//]]&gt;')"/>
  </xsl:copy>
</xsl:template>
<xsl:template match="style">
  <xsl:copy>
     <xsl:apply-templates select="@*"/>
     <xsl:value-of disable-output-escaping="yes"

select="concat('&lt;![CDATA[&#xA;',text(),'&#xA;]]&gt;')"/>
  </xsl:copy>
</xsl:template>

<!--Identity Transform-->
<xsl:template match="*">
  <xsl:copy>
     <xsl:apply-templates select="@* | node()"/>
     <!--xsl:apply-templates select="node()"/-->
  </xsl:copy>
</xsl:template>
<xsl:template match="@*|text()|comment()|processing-instruction()">
  <xsl:copy/>
</xsl:template>

</xsl:stylesheet>

I wrote a separate template for style, since I don't think the single
line comment (//) is not supported by css.

Thanks a lot for helping me with this.

Joyce


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