This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Copy CDATA nodes from XML to XML format w/ XALAN


> ...But if one of the descendants of the data element contain an
> attribute, I need to escape the quotes used there as well, eg.
>
> <data>
> <a>
>   <b foo="bar">"Bub"</b>
> </a>
> </data>
>
> Should become <a><b foo=\"bar\">\"Bub\"</b></a>

Presumably you're using the text output method, which means that in effect
you are serializing the XML by hand within the stylesheet?

If so, it's easy enough to do:

<xsl:template match="*">
<xsl:text>&lt;</xsl:text>
<xsl:value-of select="name()"/>
<xsl:apply-templates select="@*"/>
<xsl:text>&gt;</xsl:text>
<xsl:apply-templates/>
<xsl:text>&lt;/</xsl:text>
<xsl:value-of select="name()"/>
<xsl:text>&gt;</xsl:text>
</xsl:template>

<xsl:template match="@*">
<xsl:text> </xsl:text>
<xsl:value-of select="name()">
<xsl:text>=\"</xsl:text>
<xsl:call-template name="output-attribute-value"/>
<xsl:text>\"</xsl:text>
</xsl:template>

Michael Kay
Software AG
home: Michael.H.Kay@ntlworld.com
work: Michael.Kay@softwareag.com


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]