|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: transforming flat data to hierarchical data. Recur
Hi,
> I think I need to use recursion but I cannot get the output I want.
> I tried replacing every /Next/@id with its matching element
> using a xsl:key
> on the PAGE elements based on id
> but that only replaces on one level and since I don't know
> the lenght of the
> linked lists I cannot use this principle.
>
> Does anybody have an idea how to solve this
> I'm not really that familiar with xslt
How about
<xsl:key name="id" match="PAGE" use="@id" />
<xsl:key name="idref" match="Next" use="@id" />
<xsl:template match="Pages">
<xsl:copy>
<xsl:apply-templates select="PAGE[not(key('idref', @id))]" />
</xsl:copy>
</xsl:template>
<xsl:template match="Next">
<xsl:copy>
<xsl:apply-templates select="key('id', @id)" />
</xsl:copy>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
Cheers,
Jarno - Dulce Liquido: [expletive deleted] Off
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
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








