FAQ,
My XML looks like
<x>
<y y1="somexml"><![CDATA[<queries><abc>123</abc></queries>]]></y>
</x>
and my xsl snippet is
<xsl:value-of select="y[(_at_)y1='somexml']"/>
Now, when I run it through a transformation, I get an output
without the
markup:
<queries><abc>123</abc></queries>
You didn't have markup in the first place, so you don't get markup in the
output either.
I would like to retain the markup in the output
(<queries><abc>123</abc></queries>).
Is there any way to achieve this using a xalan/xerces parser.
No, because "<queries>..." is not markup inside CDATA section, it's just text.
If you want to output the text node in a CDATA section, use
cdata-section-elements attribute in xsl:output with the value of the name of
the element inside which the text appears, e.g. if the output element is "foo",
the use
<xsl:output cdata-section-elements="foo"/>
But again, note that
<foo><![CDATA[<queries><abc>123</abc></queries>]]></foo>
and
<foo><queries><abc>123</abc></queries></foo>
are equal.
Cheers,
Jarno