Re: [xsl] CDATA help

Subject: Re: [xsl] CDATA help
From: Midsummer Sun <midsummer.sun@xxxxxxxxx>
Date: Fri, 11 Mar 2005 23:44:07 +0530
Thanks David.

So I have written..

<?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" indent="yes" />    
  
  <xsl:template match="/">
    <xsl:element name="xsl:stylesheet"
namespace="http://www.w3.org/1999/XSL/Transform";>
      <xsl:attribute name="version">1.0</xsl:attribute>      
      <xsl:element name="xsl:template">
        <xsl:attribute name="match">xyz</xsl:attribute>      
      </xsl:element>      
    </xsl:element>  
  </xsl:template>  
  
</xsl:stylesheet>

It gives me output :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; version="1.0">
   <xsl:template match="xyz"/>
</xsl:stylesheet>

Which is what I need.

Can you please comment whether the above syntax is the best way to start..

Thank you.

On Fri, 11 Mar 2005 17:53:15 GMT, David Carlisle <davidc@xxxxxxxxx> wrote:
> 
> > I am also curious why with my above stylesheet the output is showing
> > &lt; &gt; and not < > ?
> 
> Because that is what you put in the stylesheet.
> 
> <![CDATA[
>       <?xml version="1.0" encoding="UTF-8"?>
>       <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
> 
> in an XML file is exactly the same thing as
> 
> 
>       &lt;?xml version="1.0" encoding="UTF-8"?>
>       &lt;xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
> 
> Just as <a="2"> is the same thing as <a = '2' >
> In both cases the XML parser will report the same thing so XSLT will see
> the same input.(A parser may have the possibility of reporting that
> CDATA quoting was used but XSLT and most other XML systems won't use
> that).
> 
> CDATA is just a convenience of human authors to save quoting every < and
> &. Since you want to generate element nodes you don't want CDATA at all
> you want,eg
> <xsl:element name="xsl:stylesheet">
> 
> David

Current Thread