サンプルで覚えるXSLTプログラミング

11. 数値計算系関数

 数値計算系の関数を使用することで、XSLTプログラムの中で数値計算や切り上げ、四捨五入などが可能です。


切り上げ
ceiling(number)


引数 引数タイプ
number 数値

number引数よりも大きい整数で、最小の数値を返します。

例:ceiling(-3.25')

上記は-3を返します


表現の数を数える
count(node)

引数 引数タイプ
node ノード表現

node引数で指定された表現の、XML文書内での数を返します。返り値は数値です。

例:
(元になるXML文書)

<books>
<book>The Innovator's Dilemma</book>
<book>Adaptive Enterprise</book>
<book>Race for the World</book>
</books>


(XSLTプログラム)

<xsl:template match="books">
<xsl:value-of select="count('book')">
</xsl:template>

上記は3を返します。


切り下げ
floor(number)

引数 引数タイプ
number 数値

number引数よりも小さい整数で、最大のものを返します。

例:floor(-3.25')

上記は-4を返します


数値型への変換
number(any)


引数 引数タイプ
any 指定なし

any引数を数値に変換します。


四捨五入
round(number)

引数 引数タイプ
number 数値

number引数を四捨五入した数値を返します。

例:round(-3.25)

上記は-3を返します。


加算
sum(node)


引数 引数タイプ
node ノード表現

node引数で指定されている表現の内容を加算し、数値で返します。

例:
(元になるXML文書)
<spendings>
  <amount>4.25</amount>
  <amount>10.5</amount>
  <amount>8.25</amount>
<spendings>


(XSLTプログラム)
<xsl:template match="spendings">
  <xsl:value-of select="sum(amount)">
</xsl:template>

上記は23を返します


Index
サンプルで覚えるXSLTプログラミング
  1. XMLからHTMLへの変換
スタイルシートはどのように解釈されるか
  2. XPathの基礎知識
XML文書をツリー構造で見る
XPathの表記方法
  3. XSLTエレメントの概要
コラム XSLTプロセッサのインストール
  4. テンプレート系XSLTエレメント
テンプレートの定義
該当するテンプレートの適用
指定されたテンプレートの呼び出し
  5. 変数系XSLTエレメント
変数の定義1
変数の定義2
  6. 出力系XSLTエレメント
該当する表現の値を代入
エレメントノードの生成
属性ノードの生成
テキストノードの生成
コメントノードの生成
PI(processing-instruction)の生成
出力方法の指定
  7. フローコントロール系XSLTエレメント
ループ処理
条件分岐
IF文
  8. その他のXSLTエレメント
他のXSLファイルの読み込み
数の割り当て
  9.XSLT関数の概要
関数の主な分類
  10. 文字列系関数
文字列の連結
文字列の調査
数字のフォーマッティング
空白の除去
……
11. 数値計算系関数
切り上げ
表現の数を数える
切り下げ
数値型への変換
四捨五入
加算
  12. ノードに関する関数
  13. bool代数系関数
  14. その他の関数
  15. JavaによるXSLTの拡張
Built-inクラスの呼び出し
カスタムメイドの関数を作る

 



XML & SOA フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

HTML5+UX 記事ランキング

本日月間