RE: [xsl] manipulating string

Subject: RE: [xsl] manipulating string
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 16 Sep 2005 22:52:42 +0100
> I have an XML which looks like this:
> <item id="6902" sort="0">
> 	<name>Industrial Stripe Shirt</name>
> 	<description><![CDATA[
> 		<ul><li> TouchTex</li>
> 		<li> Convertible</li>
> 		<li> Pockets <br/>with pencil</li></ul>]]>
> 	</description>
> </item>
> Notice that description is CDATA and has some html
> tags. 

Sigh. The CDATA section doesn't contain html tags. The purpose of CDATA is
to say "this stuff might look like markup, but it isn't to be treated as
such". If you want it treated as markup, don't put it in CDATA.

What you have to do is to extract the text from the CDATA section and parse
it as XML. Saxon has an extension function saxon:parse() to achieve that
(because lots of people do this, hence the sigh).

Michael Kay

Current Thread