[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: [xsl] Using the Input Document to Control Generation of Numbers in the Output


Subject: RE: [xsl] Using the Input Document to Control Generation of Numbers in the Output
From: "Kerry, Richard" <richard.kerry@xxxxxxxxxxx>
Date: Tue, 2 Oct 2007 15:20:36 +0100

Thank you both.

Trying out your solutions the one provided by George gives the correct
result but Michael's doesn't, however I think that's actually just a
trivial error because he's written it out untested from previous
experience of similar problems.

However - I don't think George's method will extend easily to the other
problem (forcing the index), whereas Michael's will.

Also what I didn't put on my initial posting is that I will need to have
both algorithms present as my input data will include both overriding
index numbers and sizes.


Since I wrote the above I've received George's solution for problem 3,
which I don't yet understand.  I still suspect the recursive approach
will more easily allow me to produce a combined solution for both
situations.


Appreciatively,
Richard.



-----Original Message-----
From: George Cristian Bina [mailto:george@xxxxxxxxxxxxx]
Sent: 02 October 2007 13:49
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] Using the Input Document to Control Generation of
Numbers in the Output


Michael Kay wrote:
>
[...]
> This is a typical use case for recursion (even in XSLT 2.0).

What about
<xsl:template match="incoming">
   <outgoing name="{@name}"
index="{count(preceding-sibling::*[not(@size)]) + 1 +
sum(preceding-sibling::*/@size)}"></outgoing>
  </xsl:template>
?

Regards,
George
---------------------------------------------------------------------
George Cristian Bina - http://aboutxml.blogspot.com/
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com


Current Thread