[xsl] Problem with < and > in front and after CDATA section

Subject: [xsl] Problem with < and > in front and after CDATA section
From: "jo lemen" <jo_lemen@xxxxxxxxxxxxx>
Date: Sat, 6 Dec 2008 17:09:15 +0100
I'm having trouble parsing an RSS feed (version 2.0), over which I have no
control, server-side using using classic ASP and XSL (version 1)
Mu guess is that the problem lies in the following line of the RSS feed:
<description>&lt;![CDATA[ text ]]&gt;</description>
The result is that none of the content in between the description tag shows up
on screen. Below are the relevant pieces of code.

Is there a way in XSL 1.0 to fix the &lt; and &gt; in front of and after the
CDATA section? If it can only be done in XSLT 2.0, I would be glad to learn
how. Thanks in advance.

The RSS source file

<rss version="2.0">
<title>Title text</title>
<description>&lt;![CDATA[description text]]&gt;</description>
.. 3 other items

HTML I want
<strong>Title text</strong>
<br />
<em>( Date: pubDate )</em>
<br />
description text .. <a href="URL">.. details</a>

XSL code used:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
<xsl:output method="html"/>
<xsl:template match="/">
<xsl:apply-templates select="/rss/channel/item"/>

<xsl:template match="/rss/channel/item">
<xsl:if test="position() &lt; 2">
<p><strong><xsl:value-of select="title"/></strong>
<xsl:text disable-output-escaping="yes">&lt;br /&gt;</xsl:text>
<em>( Date: <xsl:value-of select="substring(pubDate, 6, 11)" /> )</em>
<xsl:text disable-output-escaping="yes">&lt;br /&gt;</xsl:text>
<xsl:value-of select="description" disable-output-escaping="yes" />
<xsl:text>.. </xsl:text>
<a><xsl:attribute name="href"><xsl:value-of select="link" /></xsl:attribute>
<xsl:attribute name="title">.. details</xsl:attribute>
<xsl:text>.. details</xsl:text>

Resulting HTML source code:
<p><strong>Title text</strong>
<br />
<em>( Date: pubDate )</em>
<br />
<![CDATA[description text]]>.. <a href="URL" title=".. details">..

Resulting text on screen:
Title text
( Date: pubDate )
.. .. details

Title text
( Date: pubDate )
.. .. details

Surf the Web in a faster, safer and easier way:
Download Opera 9 at http://www.opera.com

Powered by Outblaze

Current Thread