|The xsl:key element is used to declare keys. The name attribute specifies the name of the key. The match attribute is a Pattern;
an xsl:key element gives information about the keys of any node that matches the pattern specified in the match attribute.
The use attribute is an expression specifying the values of the key; the expression is evaluated once for each node that matches
the pattern. If the result is a node-set, then for each node in the node-set, the node that matches the pattern has a key
of the specified name whose value is the string-value of the node in the node-set; otherwise, the result is converted to a
string, and the node that matches the pattern has a key of the specified name with value equal to that string.Note also that
there may be more than one xsl:key element that matches a given node; all of the matching xsl:key elements are used, even
if they do not have the same import precedence. It is an error for the value of either the use attribute or the match attribute
to contain a VariableReference.
Examples (xslt:xml): Overview
Interactive xlab: [xsl:key]