Table of contentsAppendices |
12.4 Miscellaneous Additional FunctionsMiscellaneous Additional Functionsnode-set current() The current function returns a node-set that has the Current Node as its only member. For an outermost expression (an expression not occurring within another expression), the current node is always the same as the context node. Thus, <xsl:value-of select="current()"/> means the same as <xsl:value-of select="."/> However, within square brackets the current node is usually different from the context node. For example, <xsl:apply-templates select="//glossary/item[@name=current()/@ref]"/> will process all <xsl:apply-templates select="//glossary/item[@name=./@ref]"/> which means the same as <xsl:apply-templates select="//glossary/item[@name=@ref]"/> and so would process all It is an error to use the current function in a Pattern. string unparsed-entity-uri(string) The unparsed-entity-uri returns the URI of the unparsed entity with the specified name in the same document as the context node (see [Unparsed Entities]). It returns the empty string if there is no such entity. string generate-id(node-set?) The generate-id function returns a string that uniquely identifies the node in the argument node-set that is first in document order. The unique identifier must consist of ASCII alphanumeric characters and must start with an alphabetic character. Thus, the string is syntactically an XML name. An implementation is free to generate an identifier in any convenient way provided that it always generates the same identifier for the same node and that different identifiers are always generated from different nodes. An implementation is under no obligation to generate the same identifiers each time a document is transformed. There is no guarantee that a generated unique identifier will be distinct from any unique IDs specified in the source document. If the argument node-set is empty, the empty string is returned. If the argument is omitted, it defaults to the context node. object system-property(string) The argument must evaluate to a string that is a QName. The QName is expanded into a name using the namespace declarations in scope for the expression. The system-property function returns an object representing the value of the system property identified by the name. If there is no such system property, the empty string should be returned. Implementations must provide the following system properties, which are all in the XSLT namespace:
|