<xsl:variable name="id-node"><some-node /></xsl:variable>
<some-elem id="{generate-id($id-node)}" /> </xsl:for-each>
this generates unique ids, even on recursive calling of the
function (if the for-each is wrapped inside a function). Not
sure this is "REC behavior", but it sure does what I want.
Maybe someone can confirm that this is indeed the expected
behavior and that I can rely on the method to return a unique
id value within the same process.
Yes, you can rely on this behaviour. It's one of the messier aspects of the
XSLT/XQuery processing model that there is this slight side-effect of
calling functions - it means that some of the optimizations done in other
functional programming languages can't safely by done in XSLT or XQuery.
Michael Kay
http://www.saxonica.com/
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--