http://www.w3.org/1999/XSL/Transform

c.generateId ([current : nodeset], [root : nodeset]) : string

The function generateId creates a unique identity for any xml node within an xml document. If this function is called without an argument, the current context element is used. In addition an offset can be specified. The generated ids can be reused to resolve the xml node by using the function resolveNode.

<xsl:value-of select="c.generateId()" />
<xsl:value-of select="c.generateId(someElement/@someAttribute)" />
<xsl:value-of select="c.generateId(someElement/@someAttribute, /root/childA)" />

The first command creates an absolute ID for the current node. The output could be similar to this: 'E0E4E7E1A5'.

The seconds command creates an absolute ID for the given attribute.

The third and fourth command creates an ID to the attribute relative to the element childA below root.