xsl:apply-templates

Selects source nodes for processing.

Format

<xsl:apply-templates [select="pattern"][mode="qname"]>
               
  [<xsl:sort/>]
               
  [<xsl:with-param/>
               
</xsl:apply-templates>
               

            

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:

<xsl:apply-templates select="/bookstore/book">
               

            

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:

<xsl:template match="book">
               
  <tr>
               
   <td><xsl:value-of select="title"/></td>
               
   <td><xsl:value-of select="author"/><td>
               
   <td><xsl:value-of select="price"/><td>
               
  </tr>
               
</xsl:template>
               

            

The XSLT processor instantiates this template for each book element.

EDI to XML Mapping in Stylus Studio

Learn how to use Stylus Studio's EDI to XML mapping tools in Convert-to-XML, including loading an EDI file, inspecting application control codes, customizing XML output and other advanced EDI to XML mapping features.

Consumer Food Products

Want to know what special ingredient is in these consumer food product companies work enviornment? Well it's a touch Stylus Studio that give these consumer food product companies the extra edge they need for producing such high quality food products!

Stylus Studio's Advanced XQuery Mapper Features

Learn how to create an advanced XQuery expression in the XQuery mapper, specifying operations, constants, and ports, for use in conditional blocks and FLWR expressions. Free online video demonstration!

Airlines, Aerospace and Defense

Want to know what airlines, aerospace and defense companies are soaring high with Stylus Studio 2006? Well now you can! Come check out these leading companies and soar with Stylus Studio 2006 yourself.

Stylus Most Wanted

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2007 All Rights Reserved.