Subject: Re: [xsl] XPath selecting chain of following siblings of the same name From: "Mukul Gandhi" <gandhi.mukul@xxxxxxxxx> Date: Sun, 11 Mar 2007 10:24:03 +0530 |
At 2007-03-10 17:13 +0530, Mukul Gandhi wrote: >I wonder, why this XSLT 1.0 solution doesn't work:
From what I can tell it is because you only look at the "next" a and not all contiguous a elements that follow:
> <xsl:apply-templates select="following-sibling::*[1][self::a]" />
Did you mean to do what is in the code below? This appears to work just fine.
I hope this helps.
. . . . . . . . . Ken
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" indent="yes"/>
<!--identity transform for all nodes other than 'a'--> <xsl:template match="node() | @*"> <xsl:copy> <xsl:apply-templates select="node() | @*" /> </xsl:copy> </xsl:template>
<!--the first a--> <xsl:template match="a[not(preceding-sibling::*[1][self::a])]"> <a-block> <xsl:apply-templates select="." mode="nested"/> </a-block> </xsl:template>
<!--other a's when nested--> <xsl:template match="a" mode="nested"> <xsl:copy-of select="."/> <xsl:apply-templates select="following-sibling::*[1][self::a]" mode="nested"/> </xsl:template>
<!--other a's when not nested can be ignored--> <xsl:template match="a"/>
</xsl:stylesheet>
-- World-wide corporate, govt. & user group XML, XSL and UBL training RSS feeds: publicly-available developer resources and training G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/ Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995) Male Cancer Awareness Aug'05 http://www.CraneSoftwrights.com/s/bc Legal business disclaimers: http://www.CraneSoftwrights.com/legal
-- Regards, Mukul Gandhi
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] XPath selecting chain of , G. Ken Holman | Thread | [xsl] Performance issue XSL:FO, Thomas Yip |
Re: [xsl] Using the collection(), Colin Adams | Date | RE: [xsl] Joining two XML-files, ca, Michael Kay |
Month |