[xsl] Enumerating template matches

Subject: [xsl] Enumerating template matches
From: Morten <morten@xxxxxxx>
Date: Fri, 01 Feb 2002 13:24:35 +0100

Hi list. I'm in the process of transforming some XML into a format edible by my RDBMS. Given the structure:

<A>
  <B><C/><C/>...<C/></B>
  <B><C/><C/>...<C/></B>
   .
   .
</A>

Is there a way I can enumerate the template matches for B and pass
that value to the template match for C? Ie. the first matching B
element gets a value 1, and passes that on to the template match for
C (as a parameter or by having C read it from its parent).

I was thinking something like using

<template match="A">
  <!-- Pseudo: declare a "variable" match_number here -->
  <for-each select="B">
    <call-template name="C"><with-param name="match_number"> ..
  <!-- Pseudo: increase value of match_number by one -->
  </for-each>
</template>

But I know that I cannot reassign the value of a "variable" in XSLT, so
I need some other way to "increment" (or keep track of) match_number.

Thanks,

Morten




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



Current Thread