|
Subject: RE: [xsl] transforming flat data to hierarchical data. Recursion?? From: Jarno.Elovirta@xxxxxxxxx Date: Fri, 6 Jun 2003 11:37:29 +0300 |
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: Pissed Off
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] transforming flat data to, Agnes Kielen | Thread | RE: [xsl] transforming flat data to, dave peeters |
| Re: [xsl] transforming flat data to, Agnes Kielen | Date | [xsl] Schematron can have variables, Leena Kulkarni |
| Month |