<xsl:call-template> |
名前によって特定のテンプレートを呼び出します。この呼び出しは、一般的に使用される出力を作成するための便利な方法です。たとえば、HTML ページを作成し、すべての HTML ページに同じタイトルとフッタがある場合、masthead および footer という名前のテンプレートを定義し、<xsl:call-template> を使用してこれらのテンプレートを必要に応じて呼び出すことができます。
カテゴリ
命令
必須の属性
name 呼び出すテンプレートの名前。
省略可能な属性
なし。
コンテンツ
この要素は、省略可能な任意の数の <xsl:with-param> 要素を含むことができます。
指定先
<xsl:call-template> はテンプレート内に指定します。
定義先
XSLT 6 節「Named Templates」
例
<xsl:call-template> 要素は、モジュール化されたスタイルシートを作成するための優れた方法となります。ケーススタディ (第 9 章を参照) では、生成する各 HTML ページの上部および下部に共通項目を生成する必要があります。同様の方法で、各パネルの上部にナビゲーションバーとタイトルバーも作成します。これらのテンプレートをスタイルシートの他の部分と混在させるのではなく、HTML ページの共通セクション用のテンプレートを別のスタイルシートに配置し、必要に応じて参照します。
    <xsl:call-template name="dw-masthead"/>
    <xsl:call-template name="dw-title-bar"/>
    <xsl:call-template name="dw-nav-bar">
      <xsl:with-param name="includeMain" select="'youBetcha'"/>
      <xsl:with-param name="sectionNumber" select="$sectionNumber"/>
      <xsl:with-param name="position" select="$pos"/>
      <xsl:with-param name="last" select="$last"/>
      <xsl:with-param name="topOrBottom" select="'top'"/>
      <xsl:with-param name="oneOrTwo" select="'two'"/>
    </xsl:call-template>

    <!-- Processing for the main body of the page goes here -->

    <xsl:call-template name="dw-nav-bar">
      <xsl:with-param name="includeMain" select="'youBetcha'"/>
      <xsl:with-param name="sectionNumber" select="$sectionNumber"/>
      <xsl:with-param name="position" select="$pos"/>
      <xsl:with-param name="last" select="$last"/>
      <xsl:with-param name="topOrBottom" select="'bottom'"/>
      <xsl:with-param name="oneOrTwo" select="'two'"/>
    </xsl:call-template>
    <xsl:call-template name="dw-footer"/>
このコードフラグメントでは、HTML ページで意図したとおりの外観を生成するために、4 つのテンプレートを呼び出しました。チュートリアルの外観の変更を決定した場合は、これら 4 つの名前付きテンプレートを変更すると、もう一度 XML ドキュメントを変換するだけで外観を変更できます。この動作の詳細については、第 9 章 9.5.5 節を参照してください。