[xsl] Increment value by group?

Subject: [xsl] Increment value by group?
From: "watchstone@xxxxxxxxxxx" <watchstone@xxxxxxxxxxx>
Date: Fri, 20 Jan 2006 19:12:23 GMT
Hello:  I want to process nodes based on grouping by
<quantity>. The  <increment> element is used as a running
"total" based on grouping.  So basically, when <quantity> is
"1", I want to process all of them as a group and use the
<increment> value to produce an output like this:

1/1-3 (i.e. <increment> value was "3")
1/4-5 (i.e. <increment> value was "2" but starts where
preceding value left off)

When <quantity> changes, I want the <increment> value to also
start over with "1".

Can I use <xsl:for-each-group> or some such element to
accomplish this?  Thanks for any tips.  I'm stumped!

<?xml version="1.0"?>
<document>
<job>
<quantity>1</quantity>
<increment>3</increment>
</job>
<job>
<quantity>1</quantity>
<increment>2</increment>
</job>
<job>
<quantity>2</quantity>
<increment>4</increment>
</job>
<job>
<quantity>2</quantity>
<increment>1</increment>
</job>
</document>

Desired output:
<document>
<job>
<status>1/1-3</status>
</job>
<job>
<status>1/4-5</status>
</job>
<job>
<status>2/1-4</status>
</job>
<job>
<status>2/5</status>
</job>

Current Thread