[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: How to use generate-id() inside an xsl:function w

Subject: Re: How to use generate-id() inside an xsl:function without a node availab
From: "Colin Adams" <colinpauladams@xxxxxxxxxxx>
Date: Tue, 27 Feb 2007 21:12:12 +0000
Re:  How to use generate-id() inside an xsl:function  w
From: Abel Braaksma <abel.online@xxxxxxxxx>

You nevertheless brought something up: why not simply *create* the node each time again?. Here's a simple enough (but process intensive) solution:

<xsl:for-each select="(1 to 20)" >
  <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 and yes.


This may also suit requirements where a random, unique value is needed, though "random" is not really what is being generated. I get: d28, d29, d30 etc.

It is only random in the sense that it depends which processor you run it upon.


_________________________________________________________________
MSN Hotmail is evolving  check out the new Windows Live Mail http://ideas.live.com


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.