Subject: [xsl] Re: Re: simple tree problem ... From: Dimitre Novatchev <dnovatchev@xxxxxxxxx> Date: Thu, 25 Oct 2001 08:13:05 -0700 (PDT) |
Using better data it can be seen that the solution I proposed was wrong! A small modification to Mike's solution makes it perform correctly (originally it didn't output the labels of the upper-most nodes): source xml: ---------- <snip> <position id="1"> <position id="2"> <position id="3" /> </position> <position id="4"> <position id="6"/> </position> </position> <position id="5"> <position id="7"/> </position> </snip> stylesheet: ---------- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text" /> <xsl:template match="snip"> <xsl:apply-templates select="position" mode="visit"/> <xsl:apply-templates select="position"/> </xsl:template> <xsl:template match="position"> <xsl:apply-templates select="position" mode="visit"/> <xsl:apply-templates select="position"/> </xsl:template> <xsl:template match="position" mode="visit"> <xsl:value-of select="@id" /> </xsl:template> </xsl:stylesheet> Result: ------ 1524367 Cheers, Dimitre Novatchev. --- Dimitre Novatchev <dnovatchev@xxxxxxxxx> wrote: > Maybe this is just a little bit more simple and efficient. Do note, that I cleaned > the source xml: > > source xml: > ---------- > <snip> > <position id="1"> > <position id="2"> > <position id="3" /> > </position> > <position id="4" /> > </position> > <position id="5" /> > </snip> > > > stylesheet: > ---------- > <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <xsl:output method="text"/> > <xsl:template match="snip"> > <xsl:apply-templates select="child::position[1]"/> > </xsl:template> > > <xsl:template match="position"> > <xsl:value-of select="@id" /> > > <xsl:apply-templates select="following-sibling::position[1]" /> > <xsl:apply-templates select="child::position[1]" /> > </xsl:template> > </xsl:stylesheet> > > > Result: > ------ > 15243 > > > Cheers, > Dimitre Novatchev. > > > > Jörg Heinicke wrote: > > <xsl:template match="snip"> > <xsl:apply-templates select="descendant::position"> > <xsl:sort select="count(ancestor::position)"/> > </xsl:apply-templates> > </xsl:template> > > <xsl:template match="position"> > <!-- do what you want --> > </xsl:template> > > > > __________________________________________________ > Do You Yahoo!? > Make a great connection at Yahoo! Personals. > http://personals.yahoo.com > __________________________________________________ Do You Yahoo!? Make a great connection at Yahoo! Personals. http://personals.yahoo.com XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Re: Re: simple tree problem ., Dimitre Novatchev | Thread | [xsl] access to combo data from xsl, Juan Perez |
RE: [xsl] How to read the encoding , James Garriss | Date | [xsl] Finding the highest node valu, Antoine Quint |
Month |