This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Variable question: capture and increase value
- From: Jeni Tennison <jeni at jenitennison dot com>
- To: Mike Ferrando <mikeferrando at yahoo dot com>
- Cc: xsl-list at lists dot mulberrytech dot com
- Date: Tue, 24 Sep 2002 14:51:36 +0100
- Subject: Re: [xsl] Variable question: capture and increase value
- Organization: Jeni Tennison Consulting Ltd
- References: <20020924133306.73337.qmail@web10106.mail.yahoo.com>
- Reply-to: xsl-list at lists dot mulberrytech dot com
Hi Mike,
> I am attempting to count like values and add an increasing value to
> the string. However, I am having a mental block and cannot seem to
> figure out how to do this.
It looks as though you want to append '/' and then the count of
preceding D* elements whose CT attributes have the same number as this
one. So perhaps something like:
<!-- identity template -->
<xsl:template match="node() | @*">
<xsl:copy>
<xsl:apply-templates select="@* | node()" />
</xsl:copy>
</xsl:template>
<xsl:template match="@CT">
<xsl:variable name="ct" select="." />
<xsl:attribute name="CT">
<xsl:value-of select="$ct" />
<xsl:text>/</xsl:text>
<xsl:value-of select="count(../preceding::*[@CT = $ct]) + 1" />
</xsl:attribute>
</xsl:template>
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list