Web Artisan Blog - ウェブ アルチザン ブログ

XML:XSL:XSLT:変数(variable)の取扱い

XML (18 items)

2005年06月16日

Research Artisan Pro ←リサーチアルチザンがパワーアップして復活しました!!
まず、XSLTの変数(variable)については、
>XML:XSL:XSLT:変数(variable)に値を代入するには
で書いた通り、所謂、定数的にしか取り扱う事が出来ない。
つまり、1回しか値が代入できないともいえるが、、
だからといって、下記のようなコーディングはできない。

■例:
testノードの値が'1'であれば、変数「a」に'1'を代入、
'1'以外であれば、'2'を代入。

<xsl:choose>
<xsl:when test="./test = '1'">
  <xsl:variable name="a" select="'1'"/>
</xsl:when>
<xsl:otherwise>
  <xsl:variable name="a" select="'2'"/>
</xsl:otherwise>
</xsl:choose>
    ・
    ・
    ・



1回しか値が代入できないというのであれば、
場合分けして値を代入すればいいと勘違いしがちであるが、
このようなロジックは構文エラーとなる。
普通、プログラム言語では2回変数を宣言できないのは当たり前であるが、
上記から、それはXSLTにも当てはまるといえる。

XSLTでは、基本的に変数を使った動的なプログラミングができないと言っていい。
上記のように後続の処理で変数「a」を使い、その値によって処理を変えたい場合は、
変数「a」・「b」を用意して処理するなどの考慮も必要になる。
前の記事 次の記事

Comments

コメントは、まだ書かれていません

Add Comments

Trackback

トラックバックはありません

Trackback URL

http://www.res-system.com/weblog/action.php?action=plugin&name=TrackBack&tb_id=490