RE: [xsl] reset increment on attribute value change

Subject: RE: [xsl] reset increment on attribute value change
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Mon, 2 Oct 2006 08:29:55 +0100
>Put simply, I need to reset the incrementing when the attribute for a
changes value.

No, that's not what you *need* to do. That's what you *want* to do, because
it's what you would do if you were using a procedural language.

You haven't described your problem very clearly, but it looks to me like one
that can be solved with something like

<xsl:template match="c">
<xsl:number level="any" from="a"/>
</xsl:template>

Michael Kay
http://www.saxonica.com/

 

> -----Original Message-----
> From: Jonathan Marenus [mailto:jonathanmarenus@xxxxxxxxx] 
> Sent: 02 October 2006 05:14
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] reset increment on attribute value change
> 
> 
> Hi there,
> 
>    I have the following XML structure:
> 
> <a name="1">
> ..
> ..
> ..
> </a>
> <a name="2">
> ..
> ..
> ..
> </a>
> 
> I have repeatable b and c elements within each a (c within b).
> 
> My XSL consists of a for-each "a". My goal is to have an 
> incremented value for each c where a[@name="1"] and then 
> start over with the next a where @name="2".
> 
> Put simply, I need to reset the incrementing when the 
> attribute for a changes value.
> 
> Right now, I am using the position function for c, but the 
> problem with that is it starts over when I have a new b, not 
> a new a, since c is within b.
> 
> Any help would be appreciated.
> 
> Best Regards,
> 
> Jonathan Marenus
> 
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection 
> around http://mail.yahoo.com 

Current Thread