Subject: Re: [xsl] how to include nodes inside CData tags From: Michael Kay <mike@xxxxxxxxxxxx> Date: Tue, 30 Apr 2013 14:44:10 +0100 |
It's a very confused question. "tags" exist in lexical (angle-bracket) XML, "nodes" exist in the tree representation of XML, and the two things are quite distinct, so nodes can't appear within tags. More particularly, element markup can't appear within CDATA tags. The whole purpose of CDATA is to say "stuff in here that looks like markup is not markup at all, it is ordinary characters". So the answer is, generate characters that look like markup. Using disable-output-escaping is completely wrong: d-o-e stops markup characters being treated as plain text, whereas you want plain text to be treated as markup characters. Michael Kay Saxonica On 30 Apr 2013, at 14:16, Terry Ofner wrote: > I need to generate the following format: > > <question> > <![CDATA[The city council passed the new <strong>regulation</strong>.]]> > </question> > > from this input: > > <question>The city council passed the new <strong>regulation</strong>.></question> > > when I add cdata-section-elements="question" to my xsl:output statement, I get this results: > > <question><![CDATA[6. The city council passed the new ]]><strong>regulation</strong><![CDATA[.]]></question> > > > Is there a way to include the <strong> element in the CDATA? > > I have tried to convert the <strong> tag to text: > > <xsl:text disable-output-escaping="yes">&#x003C;strong&#x003E;</xsl:text> > <xsl:apply-templates/> > <xsl:text disable-output-escaping="yes">&#x003C;/strong&#x003E;</xsl:text> > > but to no avail. > > I am using xslt 2.0 > > Any help would be appreciated. > > Terry
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] how to include nodes insi, Andrew Welch | Thread | Re: [xsl] how to include nodes insi, Dimitre Novatchev |
Re: [xsl] how to include nodes insi, Andrew Welch | Date | Re: [xsl] how to include nodes insi, Dimitre Novatchev |
Month |