|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Positional Grouping Problem
I'd use keys for this, something like
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" indent="yes" />
<xsl:key name="z" match="Z" use="string(preceding-sibling::Z[.='YES'][1])"/>
<xsl:template match="/X">
<X>
<xsl:apply-templates select="Y" />
</X>
</xsl:template>
<xsl:template match="Y">
<Y>
<xsl:for-each select="Z[generate-id()=generate-id(key('z',string(preceding-sibling::Z[.='YES'][1])))]">
<group>
<xsl:copy-of select="key('z',string(preceding-sibling::Z[.='YES'][1]))[not(.='YES')]"/>
</group>
<xsl:copy-of select="key('z',string(preceding-sibling::Z[.='YES'][1]))[(.='YES')]"/>
</xsl:for-each>
</Y>
</xsl:template>
</xsl:stylesheet>
________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








