xsl-list
[Top] [All Lists]

Re: Variable question: capture and increase value

2002-09-24 06:51:36
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::*[(_at_)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