XSLT <xsl:apply-templates> Element
Complete XSLT Element Reference
Definition and Usage
The <xsl:apply-templates> element applies a template to the current
element or to the current element's child nodes.
If we add a select attribute to the <xsl:apply-templates> element it will
process only the child element that matches the value of the attribute. We can
use the select attribute to specify in which order the child nodes are to be
processed.
Syntax
<xsl:apply-templates select="expression" mode="name">
<!-- Content:(xsl:sort|xsl:with-param)* -->
</xsl:apply-templates>
|
Attributes
| Attribute |
Value |
Description |
| select |
expression |
Optional. Specifies the nodes to be processed. An asterisk
selects the entire node-set. If this attribute is omitted, all child nodes
of the current node will be selected |
| mode |
name |
Optional. If there are multiple ways of processing defined
for the same element, distinguishes among them |
Example 1
Wrap a single h1 element around each title element in the document:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="title">
<h1><xsl:apply-templates/></h1>
</xsl:template>
</xsl:stylesheet>
|
Example 2
Wrap a single h1 element around all the title elements which are children of
message:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="message">
<h1><xsl:apply-templates select="title"/></h1>
</xsl:template>
</xsl:stylesheet>
|
Example 3
Wrap a single h1 element around all the child nodes of message that have the
mode attribute set to "big":
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="message">
<h1><xsl:apply-templates select="*" mode="big"/></h1>
</xsl:template>
</xsl:stylesheet>
|
Complete XSLT Element Reference
Whether you're new to XML or already an advanced user, the user-friendly views
and powerful entry helpers, wizards, and debuggers in XMLSpy are designed to
meet your XML and Web services development needs from start to finish.
- XML editor
- Graphical XML Schema / DTD editors
- XSLT 1.0/2.0 editor, debugger, profiler
- XQuery editor, debugger, profiler
- Support for Office Open XML (OOXML)
- Graphical WSDL editor & SOAP debugger
- Java, C#, C++ code generation
- And much more!
Download a fully functional free 30-day trial today!
|