Subject: Re: Scope of uniqueness of generate-id()
From: David Carlisle <davidc@xxxxxxxxx>
Date: Thu, 20 Nov 2008 13:12:47 GMT
|
>> Does this mean that theoretically one can create a "generator",
>> function returning different values per each call?
>
> No, two calls with the same node are guaranteed to return the same
>value.
That's true but what Vladimir meant was this:
<xsl:stylesheet version="2.0"
xmlns:f="data:,f"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template name="main">
: <xsl:sequence select="f:fun()"/>
: <xsl:sequence select="f:fun()"/>
: <xsl:sequence select="f:fun()"/>
: <xsl:sequence select="f:fun()"/>
: <xsl:sequence select="f:fun()"/>
: <xsl:sequence select="f:fun()"/>
: <xsl:sequence select="f:fun()"/>
</xsl:template>
<xsl:function name="f:fun" as="xs:string">
<xsl:variable name="x">!</xsl:variable>
<xsl:sequence select="generate-id($x)"/>
</xsl:function>
</xsl:stylesheet>
$ saxon9 -it main gen.xsl
<?xml version="1.0" encoding="UTF-8"?>
: tt1
: tt2
: tt3
: tt4
: tt5
: tt6
: tt7
________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs.
________________________________________________________________________
|