Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

XSLT 変数の概要

XSLT スクリプトでは、 要素を使用して変数を <xsl:variable> 宣言します。属性は name 、大文字と小文字を区別する変数の名前を指定します。変数を宣言すると、ドル記号($)でプレフィックスが付いた変数名を使用して 、XPath 式内で変数を参照できます。

変数は不変です。変数の値を設定できるのは、変数を宣言した場合のみです。その後、値は固定されます。タグに属性と式を select 含めることで変数を <xsl:variable> 初期化します。次の例では、変数 locationを宣言して初期化します。次に、変数は location 変数の初期化に message 使用されます。

ローカル変数とグローバル変数の両方を定義できます。変数が要素の <xsl:stylesheet> 子である場合、グローバルです。それ以外の場合は、ローカルです。グローバル変数の値は、スタイル シートの任意の場所からアクセスできます。ローカル変数のスコープは、定義されているテンプレートまたはコードブロックに限定されます。

XSLT 変数は、計算または静的定義できる任意の値を格納できます。これには、データ構造、XML 階層、テキストとパラメーターの組み合わせが含まれます。例えば、 オペレーション・モード・コマンド の XML 出力を変数に割り当て、その変数内の階層にアクセスすることができます。

以下のテンプレートは変数を message 宣言します。変数には message 、テキストとパラメーターの両方の値が含まれています。このテンプレートは、メッセージ変数の値を参照してシステム・ログ・メッセージを生成します。

その結果、システム ログ メッセージは次のようになります。

「.」ユーザーuserによってデバイスdevice-nameがオンdateに変更されました。

表 1 は、XSLT 変数宣言の例と疑似コードの説明を示しています。

表 1: XSLT 変数宣言の例と疑似コード

変数宣言

疑似コードの説明

<xsl:variable name="mpls" select="protocols/mpls"/>

という名前mpls[edit protocols mpls]変数に 階層レベルを割り当てます。

<xsl:variable name="color" select="data[name = 'color']/value"/>

マクロ パラメーターの値を color という名前 colorの変数に割り当てます。XPath 式の要素は <data> 、コミット スクリプトマクロで便利です。詳細については、「 コミット スクリプト マクロを作成する」を参照して、カスタム構文を読み取り、関連する設定ステートメントを生成します