Re: [xsl] Variable question: capture and increase value

Subject: Re: [xsl] Variable question: capture and increase value
From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx>
Date: Tue, 24 Sep 2002 14:51:36 +0100
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


Current Thread