[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 available?
From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx>
Date: Wed, 28 Feb 2007 09:45:13 +0000
Re:  How to use generate-id() inside an xsl:function  w
On 2/28/07, Michael Kay <mike@xxxxxxxxxxxx> wrote:
> I found that when using generate-id() with LREs, it creates
> increasing numbers, preceded by 'd'. When using source nodes,
> something else happens. I know from the specs, that an
> implementation can choose its own way of creating the ID. But
> a (longer) while ago, I remember to have seen an explanation
> of the algorithm used, but today I can't find it anymore
> (searched the Net, saxonica.com, the faq and both of your
> reference books).

You're referring of course to the Saxon algorithm - each processor can do
this its own way.

I don't think the Saxon algorithms are documented anywhere.

I'm sure Saxon used to generate consistent id's across transformation runs along the lines of "d01e01" where d roughly meant document and e meant element - I'm sure I used to rely (wrongly) on the consistency and then had to create my own count after the algorithm changed - somewhere around early version 7. There were also (iirc) some conversations about how "d" couldn't be consistent if the document came from a Stream... Maybe Abel's read those posts somewhere?

Current Thread


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.
First Name
Last Name
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.