Subject: RE: [xsl] Copy CDATA nodes from XML to XML format w/ XALAN From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx> Date: Sun, 3 Mar 2002 22:27:58 -0000 |
> I'm dealing with a similar issue. I'm trying to implement > a very simple compositional XSLT based query language. No, this isn't similar at all, because all the information you need is present in the XPath data model. > > My question is, is there a way to output tagged elements, > ie. given the XML document: > > <data> > <test>aa</test> > </data> > > I wish to apply XSLT to output > > <test>aa</test> Well, the simplest way is <xsl:template match="data"> <xsl:copy-of select="child::node()"/> </xsl:template> > > I'm interested in doing this because the content of the data > element may be any XML document and I need to translate all > newline characters of that into whitespaces. Eg. given > > <data> > <a> > <b>content</b> > </a> > </data> > > I need to output > > <a><b>content</b></a> > > Any hints on how to accomplish this? If the whitespace that you want to get rid of is all in separate text nodes (i.e. it is not adjacent to non-whitespace text), simply add to the stylesheet the top-level declaration <xsl:strip-space elements="*"/> If the changes you want to make are more subtle, you'll need to depart from the <xsl:copy-of> approach, and instead do a recursive apply-templates all down the tree. For example: <xsl:template match="*"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:apply-templates/> </xsl:copy> </xsl:template> <xsl:template match="text()"> <xsl:value-of select="normalize-space(.)"/> </xsl:template> will achieve a rather more brutal pruning of whitespace if that's what you want. Michael Kay Software AG home: Michael.H.Kay@xxxxxxxxxxxx work: Michael.Kay@xxxxxxxxxxxxxx XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Copy CDATA nodes from XML, Morten Primdahl | Thread | Re: [xsl] Copy CDATA nodes from XML, Morten Primdahl |
Re: [xsl] Copy CDATA nodes from XML, Morten Primdahl | Date | RE: [xsl] XSLT 2.0 HTML output of n, Michael Kay |
Month |