Subject: RE: XSL to generate required output
From: "Amrit Pal Singh" <ampsingh@xxxxxxxxx>
Date: Mon, 12 Dec 2005 20:06:22 +0530
|
Sorry for all that mess. But problem still persists:(
-----Original Message-----
From: Michael Kay [mailto:mike@xxxxxxxxxxxx]
Sent: Monday, December 12, 2005 7:50 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: XSL to generate required output
>
> I tried using following xsl:
>
> <xsl:template match="Root[Cell='##']">
> <xsl:variable name="poscurrent" select="position()"/>
> <Level>
> <xsl:copy-of
> select="following-sibling::Row[not(Cell='##')][position()
> < poscurrent]"/>
> </Level>
> </xsl:template>
>
> Please let me know where I'm going wrong?
>
> <Root>
> <Cell>###</Cell>
> <Cell>x</Cell>
> <Cell>y</Cell>
> <Cell>###</Cell>
> <Cell>z</Cell>
> </Root>
>
Almost everywhere, I'm afraid.
First correct "###" to "##", and "poscurrent" to "$poscurrent".
A Root element doesn't have a following-sibling that's a Row.
The value of position() (and hence of $poscurrent) depends on the
apply-templates that causes this template rule to be invoked, which
isn't shown. But it's unlikely to have any relevance to the problem.
Michael Kay
http://www.saxonica.com/
|