Subject: Re: [xsl] Doubled output of text nodes From: "Thomas B. Passin" <tpassin@xxxxxxxxxxxx> Date: Thu, 11 Jul 2002 13:05:15 -0400 |
This will do it - <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" indent="yes" encoding="UTF-8" /> <xsl:template match="/root"> <root id='{generate-id()}'> <xsl:apply-templates /> </root> </xsl:template> <xsl:template match="node"> <node id='{generate-id()}'> <xsl:apply-templates/> </node> </xsl:template> <!-- Identity transformation template --> <xsl:template match='*|@*'> <xsl:copy> <xsl:apply-templates select="@*|node()"/> </xsl:copy> </xsl:template> </xsl:stylesheet> You see the idea - use the identity transformation for everything except the exact elements that you wish to change. Those elements you change as you wish. Cheers, Tom P [Charles Knell] > I have an application which produces XML docs similar to this one: > --------------------------------------------------------- > <?xml version="1.0"?> > <root> > <node> > <node>Topic A > <node>Subtopic A.1 > <node>Subtopic A.1.a</node> > </node> > </node> > <node>Topic B</node> > </node> > </root> > --------------------------------------------------------- > I wish to use XLT to add unique id's to each node element, but otherwise > copy the content unchanged to the output. I have worked out this XSLT: >... XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Doubled output of text nodes, Charles Knell | Thread | Re: [xsl] Doubled output of text no, Marrow |
Re: [xsl] Doubled output of text no, Charles Knell | Date | Re: [xsl] substring function, Agnes Kielen |
Month |