Home >Online Product Documentation >Table of Contents >xsl:apply-templates
xsl:apply-templates
Selects source nodes for processing.
Format
Description
If you specify the select
attribute, specify a pattern that resolves to a set of source nodes. For each source node in this set, the XSLT processor searches for a template that matches the node. When it finds a matching template, it instantiates it and uses the node as the context node. For example:
When the XSLT processor executes this instruction, it constructs a list of all nodes that match the pattern in the select
attribute. For each node in the list, the XSLT processor searches for the template whose match
pattern best matches that node.
If you do not specify the select
attribute, the XSLT processor uses the default pattern, "node()"
, which selects all child nodes of the current node.
If you specify the mode
attribute, the selected nodes are matched only by templates with a matching mode
attribute. The value of mode
must be a qualified name or an asterisk (*
). If you specify an asterisk, it means continue the current mode, if any, of the current template.
If you do not specify a mode
attribute, the selected nodes are matched only by templates that do not specify a mode
attribute.
By default, the new list of source nodes is processed in document order. However, you can use the xsl:sort
instruction to specify that the selected nodes are to be processed in a different order. See xsl:sort.
Tip
|
|
You can create an xsl:apply-templates element automatically using the XSLT mapper.
|
Example
In the previous example, the XSLT processor searches for a template that matches /bookstore/book
. The following template is a match:
The XSLT processor instantiates this template for each book
element.