Name

<xsl:template>

Defines an output template. Templates that begin <xsl:template match="x" define a transformation for a given element. Templates that begin <xsl:template name="x" define a set of output elements that are processed whenever the template is invoked by name. All <xsl:template> elements must have either the match or the name attribute defined. Although not common, it is also possible to create <xsl:template> elements that have both a match and a name.

Category

Top-level element.

Required Attributes

None; however, an <xsl:template> must contain a match attribute, a name attribute, or both.

Optional Attributes

match

A pattern that defines the elements for which this template should be invoked. For example, <xsl:template match="xyz"> defines a template for processing <xyz> elements.

name

An attribute that names this template. Named templates are invoked with the <xsl:call-template> element.

mode

An attribute that defines a mode for this template. A mode is a convenient syntax that allows you to write specific templates for specific purposes. For example, we could write an <xsl:template> with mode="toc" to process a node for the table of contents of a document, and we could write other <xsl:template>s with mode="print", mode="online", mode="index", etc. to process the same information for different purposes.

[2.0] In XSLT 2.0, the mode attribute can use the value #default to indicate that this template applies to the default mode, or use #all to indicate that this template applies ...

Get XSLT, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.