<?xml version="1.0" encoding="iso-8859-1"?> <?xml-stylesheet href="../../make-menu.xsl" type="text/xsl"?><html> <head> <this-is section="extensions" page="instructions" subpage="call-template"/> <!-- Generated at 2011-12-09T20:47:22.916Z--><title>Saxonica: XSLT and XQuery Processing: saxon:call-template</title> <meta name="coverage" content="Worldwide"/> <meta name="copyright" content="Copyright Saxonica Ltd"/> <meta name="title" content="Saxonica: XSLT and XQuery Processing: saxon:call-template"/> <meta name="robots" content="noindex,nofollow"/> <link rel="stylesheet" href="../../saxondocs.css" type="text/css"/> </head> <body class="main"> <h1>saxon:call-template</h1> <p>The <code>saxon:call-template</code> instruction is identical to <code>xsl:call-template</code> except that the template name can be written as an attribute value template, allowing the actual template that is called to be selected at run time.</p> <p>Typical usage is:<br/> <b><saxon:call-template name="{$tname}"/></b></p> <p><i>This feature replaces the <code>saxon:allow-avt</code> attribute that was provided on <code>xsl:call-template</code> in earlier releases. The XSLT 2.0 rules on extension attributes have been tightened up, making it clear that the earlier design was non-conformant.</i></p> <p>The <code>saxon:call-template</code> instruction allows <code>xsl:fallback</code> as a child element, so that fallback behaviour can be defined for other XSLT processors when they encounter this instruction.</p> <table width="100%"> <tr> <td> <p align="right"><a class="nav" href="catch.xml">Next</a></p> </td> </tr> </table> </body> </html>