Re: Equivalent of a Global Counter

Subject: Re: Equivalent of a Global Counter
From: David Carlisle <davidc@xxxxxxxxx>
Date: Wed, 15 Nov 2000 00:28:49 GMT
so, something like

  <xsl:variable name="x">
    <xsl:number level="any" count="xxxx"/>
  <xsl:variable>
  <prov id="...{$x}">
    <xsl:apply-templates/>
  </prov>

where the count expression selects whatever it is that is being counted
by the id scheme it selects in the input tree but the output is usually 
expressable as a function of the input.

If you'd really rather count on the output then it would be simpler to
do it in two passes.

First save the output into a variable in which you have the desired
output except for id="?" then use a node-set extension function 
to apply an identity transform together with the extra rule

<xsl:template match="*[@id='?@']">
  <xsl:copy>
  <xsl:copy-of select="@*"/>
  <xsl:attribute name="id">
   ....<xsl:number level="any" count="*[@id="'?']"/>
  </xsl:attribute>
  <xsl:apply-templates/>
 </xsl:template>


David

_____________________________________________________________________
This message has been checked for all known viruses by Star Internet delivered
through the MessageLabs Virus Control Centre. For further information visit
http://www.star.net.uk/stats.asp


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread