プラットフォーム拡張関数の概要を説明します。
プラットフォーム拡張関数について解説します。
function:base-name 関数
function:document 関数
function:document-uri 関数
function:file-extension 関数
function:file-name 関数
function:generate-url 関数
function:mime-type 関数
function:parent-directory 関数
function:relative-url 関数
function:resource-exist 関数
function:synchronous-document 関数
function:url-decode 関数
function:url-encode 関数
function:abs 関数
function:acos 関数
function:acosh 関数
function:asin 関数
function:asinh 関数
function:atan 関数
function:atan2 関数
function:atanh 関数
function:cos 関数
function:cosh 関数
function:degrees 関数
function:even 関数
function:exp 関数
function:fact 関数
function:fact-double 関数
function:int 関数
function:is-nan 関数
function:ln 関数
function:log 関数
function:log10 関数
function:long-subtract 関数
function:odd 関数
function:pi 関数
function:power 関数
function:product 関数
function:radians 関数
function:rand 関数
function:rand-between 関数
function:sin 関数
function:sinh 関数
function:sqrt 関数
function:tan 関数
function:tanh 関数
プラットフォーム拡張関数の概要を説明します。
VCを実行するプラットフォームで、XPath関数に追加された関数です。XPath関数と同様に、VCのテンプレートルールを適用する条件や、属性値テンプレートなどを記述するために使用されます。
プラットフォーム拡張関数の名前空間URI参照は http://xmlns.xfytec.com/function です。 以下の説明で、プラットフォーム拡張関数を記述するときは、function:という名前空間プレフィックスを使用します。
このほか、以下の説明中に出現する名前空間と、その名前空間に使用している名前空間プレフィックスは次のとおりです。
xvcd: を使用します。 詳細は、VC中核リファレンスをご覧ください。
それぞれのプラットフォーム拡張関数の機能や引数、返値を、機能ごとに解説します。引数や返値の型は、XPath関数の仕様説明で使用されている型で表記します。
入出力系関数は、以下のとおりです。
function:base-name 関数URLで指定されたファイルの、拡張子を除いたファイル名を返す関数です。
string function:base-name( url )
string url
拡張子を除いたファイル名を取得したいファイルのエンコード済みURLを指定します。
string
拡張子を除いたファイル名を返します。ファイル名はURLエンコードされたものです。
引数で指定したURLが表すファイルが拡張子を持たない場合は、ファイル名を返します。また、引数で指定したURLがディレクトリの場合は、ディレクトリ名を返します。
function:document 関数指定された文書を読み込んでノードセットとして返す関数です。 文書の読み込みは非同期的に実行されます。
文書を同期して読み込みたい場合は、 function:synchronous-document()関数を使用します。
node-set function:document( url, reserved?, mimeType? )
string url
読み込む文書のエンコード済みURLを指定します。
string reserved
現在は使用されません。将来的にXSLTのdocument()関数との互換をとる可能性があるため、予約されています。
mimeTypeを指定しない場合は、省略可能です。
string mimeType
読み込む文書のMIMEタイプを指定します。この引数が指定された場合、文書を強制的に指定されたMIMEタイプで読み込みます。この引数を指定する場合は、reservedを指定する必要があります。
省略した場合は、文書に指定されたMIMEタイプに従って読み込みます。
node-set
読み込んだ文書をノードセットにして返します。文書の読み込み途中で返値を取得した場合は、空のノードセットが返されます。
function:document-uri 関数指定されたノードへのURLを返す関数です。
string function:document-uri( node-expression? )
node-set node-expression
URLを取得したいノードを指定します。
省略した場合、コンテキストノードが指定されたと見なされます。
string
指定されたノードへのエンコード済みURLを返します。引数が指定されていない場合は、コンテキストノードへのURLを返します。指定されたノードがURLを持たない場合は、空文字列を返します。
function:file-extension 関数URLで指定されたファイルの拡張子を返す関数です。
string function:file-extension( url, option? )
string url
拡張子を取得したいファイルのエンコード済みURLを指定します。
boolean option
取得する拡張子にピリオド( . )を付けるか付けないかを真偽値で指定します。trueを指定すると、ピリオドを付けた拡張子が返されます。falseを指定すると、ピリオドが付かない拡張子が返されます。
省略した場合、trueが指定されたと見なされます。
string
ファイルの拡張子を返します。
function:file-name 関数URLで指定されたファイルの、拡張子を含んだファイル名を返す関数です。
string function:file-name( url? )
string url
ファイル名を取得したいファイルへのエンコード済みURLを指定します。
省略した場合、編集中の文書のファイル名が返されます。
string
拡張子を含んだファイル名を返します。ファイル名はURLエンコードされたものです。引数が省略されたときに、編集中の文書が新規文書でファイルに保存されていない場合は、空文字列を返します。
function:generate-url 関数基準となるURLと相対パスから、ファイルへの絶対URLを生成する関数です。
string function:generate-url( baseUrl?, relativePath )
string baseUrl
生成するURLの基準となるURLを、絶対URLで指定します。エンコード済みURLで指定します。
省略された場合、コンテキストノードを含む文書ノードのURLが使用されます。
string relativePath
基準となるURLからファイルへの相対URLを指定します。エンコード済みURLで指定します。
string
ファイルへの絶対URLを返します。URLはエンコード済みのものです。
function:mime-type 関数ファイルのMIMEタイプを返す関数です。
string function:mime-type( url )
string url
MIMEタイプを取得したいファイルへのエンコード済みURLを指定します。
string
urlで指定されたファイルのMIMEタイプ文字列を返します。
function:parent-directory 関数URLで指定されたファイルの親ディレクトリへのURLを返す関数です。
string function:parent-directory( url, option? )
string url
親ディレクトリを取得したいファイルへのエンコード済みURLを指定します。
boolean option
関数から返されるディレクトリへのURLの末尾に / (スラッシュ)を付けるか付けないかを真偽値で指定します。 trueを指定すると、末尾にスラッシュを付けたURLが返されます。falseを指定すると、末尾にスラッシュが付かないURLが返されます。
省略した場合、trueが指定されたと見なされます。
string
urlで指定されたファイルの親ディレクトリへのエンコード済みURLを返します。
function:relative-url 関数絶対URLで表現された基準となるURLと、もうひとつの絶対URLとを比較して、基準となるURLからの相対URLを求める関数です。
string function:relative-url( baseUrl, url )
string baseUrl
相対URLを求める基準となる絶対URLを指定します。エンコード済みURLで指定します。
string url
基準となるURLからの相対URLを求めたい絶対URLを指定します。エンコード済みURLで指定します。
string
baseUrlを基準にしたurlへの相対URLを返します。URLのスキーム が異なるなど相対URLへ変換できない場合や、URLが正しく指定されていない場合は、空文字列を返します。
function:resource-exist 関数URLで指定されたリソースが存在するかしないかを調べる関数です。
boolean function:resource-exist( url )
string url
存在するかしないかを調べたいリソースへの絶対URLを指定します。エンコード済みURLで指定します。
boolean
urlで指定されたリソースが存在するかしないかを真偽値で返します。trueが返された場合は、URLで指定されたリソースは存在します。falseが返された場合は、指定されたリソースは存在しません。
function:synchronous-document 関数指定された文書を読み込んでノードセットとして返す関数です。文書の読み込みは同期的に実行されます。
読み込みを同期しなくてもよい場合は、
function:document()関数を使用できます。
node-set function:synchronous-document( url, reserved?, mimeType? )
string url
読み込む文書へのエンコード済みURLを指定します。
string reserved
将来的にXSLTのdocument()関数との互換をとる可能性があるため、予約されています。現在は使用されません。
mimeTypeを指定しない場合は、省略可能です。
string mimeType
読み込む文書のMIMEタイプを指定します。この引数が指定された場合、文書を強制的に指定されたMIMEタイプで読み込みます。 この引数を指定する場合は、reservedが必要となります。
省略した場合は、文書に指定されたMIMEタイプに従って読み込みます。
node-set
読み込んだ文書をノードセットにして返します。function:document()関数とは異なり、関数終了時には読み込みが完了しています。読み込み中にエラーが発生した場合は、空のノードセットが返されます。
function:url-decode 関数
%
hh 形式(hは a~f、A~F、0~9)のエスケープ文字(例:%20)を含むURL文字列を、エスケープ文字を含まないURL文字列に変換する関数です。文字の変換は、UTF-8のコード体系に基づいて行われます。
string function:url-decode( url )
string url
エスケープ文字を含む可能性があるURL文字列を指定します。
string
エスケープ文字を含まないURL文字列を返します。
function:url-encode 関数空白文字のようなエスケープ文字に変換する必要がある文字を含むURLを、エスケープ文字に変換したURL文字列(エンコード済みURL)に変換する関数です。文字の変換は、UTF-8のコード体系に基づいて行われます。
エスケープ文字への変換対象となる文字は、次の文字を除くすべての文字です。
a~z、A~Z)
0~9)
第2引数が省略された場合は、次の規則に従って変換されます。
a~z、A~Z)、数字(0~9)は変換されません。
-_.*/:;!?$#&+=~@[])は変換されません。
'%'は次のように処理されます。
%
hh形式(hはa~f、A~F、0~9のうちの1文字)になっている場合(例:%20)は変換されません。
%25に変換されます 。
string function:url-encode( url, char? )
string url
エスケープ文字に変換する必要がある文字を含む可能性があるURL文字列を指定します。
string char
エスケープ文字に変換しない文字を指定します。
省略したときは、上記の仕様に従います。
string
エスケープ文字に変換する必要がある文字をエスケープ文字に変換したURL文字列を返します。
数値関数は、以下のとおりです。
function:abs 関数絶対値を求める関数です。
number function:abs( number )
number number
絶対値を求めたい数値を、実数値で指定します。
number
引数で指定された数値の絶対値を返します。
function:acos 関数アークコサイン(逆余弦)を求める関数です。
number function:acos( number )
number number
-1以上、1以下の実数値で表現された、数値を指定します。
number
引数の数値から求められたアークコサイン(逆余弦)値の角度を、ラジアン単位で返します。 引数の値が-1以上、1以下の実数値でない場合は、XPathで定義されている正の無限大(Infinity)または負の無限大(-Infinity)を返します。
function:acosh 関数ハイパボリックアークコサイン(双曲線逆余弦)を求める関数です。
number function:acosh( number )
number number
1以上の実数値を指定します。
number
引数の数値から求められたハイパボリックアークコサイン(双曲線逆余弦)値を返します。 引数の値が1未満の実数値の場合は、XPathで定義されているNaN(Not a Number)を返します。
function:asin 関数アークサイン(逆正弦)を求める関数です。
number function:asin( number )
number number
-1以上、1以下の実数値で表現された、数値を指定します。
number
引数の数値から求められたアークサイン(逆正弦)の角度値を、ラジアン単位で返します。 引数の値が-1以上、1以下の実数値でない場合は、XPathで定義されている正の無限大(Infinity)または負の無限大(-Infinity)を返します。
function:asinh 関数ハイパボリックアークサイン(双曲線逆正弦)を求める関数です。
number function:asinh( number )
number number
実数値を指定します。
number
引数の数値から求められたハイパボリックアークサイン(双曲線逆正弦)値を返します。
function:atan 関数アークタンジェント(逆正接)を求める関数です。
number function:atan( number )
number number
実数値を指定します
number
引数の数値から求められたアークタンジェント(逆正接)値を返します。 アークタンジェント(逆正接)値は、-π/2以上、π/2以下のラジアン値の角度で表されます。 引数が0の場合は、XPathで定義されているNaN(Not a Number)を返します。
function:atan2 関数2つの座標値の差からアークタンジェント(逆正接)を求める関数です。
number function:atan2( number1, number2 )
number number1
1つめの座標値を実数で指定します。
number number2
2つめの座標値を実数で指定します。
number
座標1から座標2を引いた差からアークタンジェント(逆正接)を求めて返します。 アークタンジェント(逆正接)値は、-π/2以上、π/2以下のラジアン値の角度で表されます。 座標1と座標2の差が0の場合は、XPathで定義されているNaN(Not a Number)を返します。
function:atanh 関数ハイパボリックアークタンジェント(双曲線逆正接)を求める関数です。
number function:atanh( number )
number number
-1以上、1以下の実数値で表現された、数値を指定します。
number
引数の数値から求められたハイパボリックアークタンジェント(双曲線逆正接)値を返します。 引数の値が-1以上、1以下の実数値でない場合は、XPathで定義されている正の無限大(Infinity)または負の無限大(-Infinity)を返します。
function:cos 関数コサイン(余弦)を求める関数です。
number function:cos( number )
number number
ラジアン単位で表現した角度を指定します。
number
引数で指定された角度からコサイン(余弦)値を返します。
function:cosh 関数ハイパボリックコサイン(双曲線余弦)を求める関数です。
number function:cosh( number )
number number
実数値を指定します。
number
引数の数値から求められたハイパボリックコサイン(双曲線余弦)値を返します。
function:degrees 関数ラジアン単位で表現された角度を度数単位に変換する関数です。
number function:degrees( radian )
number radian
ラジアン単位で表現された角度を指定します。
number
指定されたラジアン値を度数単位の角度に変換した値を返します。
function:even 関数指定された数値の絶対値以上の、最小の整数の偶数を求める関数です。
number function:even( number )
number number
任意の実数値を指定します。
number
指定された数値の絶対値より大きいか等しい整数のうち、最小の偶数に元の符号を付けて返します。
function:exp 関数自然対数を底としたべき乗値を求める関数です。
number function:exp( number )
number number
任意の実数値を指定します。
number
自然対数の底 e にべき乗数でべき乗計算した値を返します。
function:fact 関数階乗値を求める関数です。
number function:fact( number )
number number
任意の実数値を指定します。
number
指定された引数の小数点以下を切り捨てた整数値から求められた階乗値を返します。 引数に指定された数値が170を超える場合は、XPathで定義されているNaN(Not a Number)を返します。
function:fact-double 関数二重階乗値を求める関数です。
number function:fact-double( number )
number number
任意の実数値を指定します。
number
指定された引数の小数点以下を切り捨てた整数値から求められた二重階乗値を返します。 引数に指定された数値が300を超える場合は、XPathで定義されているNaN(Not a Number)を返します。
function:int 関数実数値の小数点以下を切り捨てた整数値を返す関数です。
integer function:int( number )
number number
任意の実数値を指定します。
integer
指定された引数の小数点以下を切り捨てた整数値を返します。
function:is-nan 関数指定された値がNaN(Not a Number)かそうでないかを返す関数です。
boolean function:is-nan( number )
number number
任意の数値を指定します。
boolean
指定された引数がNaN(Not a Number)かそうでないかを、真偽値で返します。引数がNaNの場合は、trueを返します。そうでない場合は、falseを返します。
function:ln 関数自然対数を求める関数です。
number function:ln( number )
number number
任意の正の実数値を指定します。
number
引数で指定された値の自然対数値を返します。 引数が適切でない場合は、それぞれ次の値を返します。
NaN(Not a Number)または負の数値の場合
NaNを返します。
0の場合
NaN(Not a Number)や、正の無限大(Infinity)、負の無限大(-Infinity)は、XPath仕様で定義されている特別な値です。
function:log 関数底を指定して対数値を求める関数です。
number function:log( number1, number2? )
number number1
対数値を求める任意の正の実数値を指定します。
number number2
対数の底とする数値を指定します。数値には、1ではない正の実数値を指定します。
省略した場合、10が指定されたと見なされます。
number
number2で指定された底の、number1の対数値を返します。 number1、number2のどちらかが適切な値でない場合は、XPathで定義されているNaN(Not a Number)を返します。
function:log10 関数常用対数値を求める関数です。
number function:log10( number )
number number
任意の正の実数値を設定します。
number
引数で指定された値の常用対数値を返します。 引数が適切でない場合は、それぞれ次の値を返します。
NaN(Not a Number)または負の数値の場合
NaNを返します。
0の場合
NaN(Not a Number)や、正の無限大(Infinity)、負の無限大(-Infinity)は、XPath仕様で定義されている特別な値です。
function:long-subtract 関数指定された整数値文字列の差を求める関数です。
string function:long-subtract( string1, string2 )
string string1
被減算数となる整数を文字列で指定します。
string string2
減算数となる整数を文字列で指定します。
string
整数値文字列1から整数値文字列2を引き算した結果を数値文字列で返します。 引数が数値文字列でない場合は、エラーが発生します。
function:odd 関数指定された数値の絶対値以上の、最小の整数の奇数を求める関数です。
number function:odd( number )
number number
任意の実数値を指定します。
number
指定された数値の絶対値より大きいか等しい整数のうち、最小の奇数に元の符号を付けて返します。
function:pi 関数円周率を数値で返す関数です。
number function:pi( )
引数をとりません。
number
円周率の値を数値(3.1415926535898)で返します。
function:power 関数べき乗した値を返す関数です。
number function:power( number1, number2 )
number number1
べき乗計算の底を任意の実数値を指定します。
number number2
べき乗数を任意の実数値を指定します。
number
べき乗計算の底をべき乗数でべき乗した値を返します。 引数が2つとも0の場合は、XPathで定義されているNaN(Not a Number)を返します。
function:product 関数指定されたノードセットに含まれる数値の総積を求める関数です。
number function:product( node-set )
node-set node-set
総積を求めるノードセットを指定します。
number
ノードセットに含まれる数値の総積を返します。例えばノードセットに含まれる数値が 3, 6, 9 の場合は 162 を返します。ノードセット内に数値にできないノードがある場合は、NaN(Not a Number)を返します。
function:radians 関数度数で表現された角度をラジアンで表現された値に変換する関数です。
number function:radians( angle )
number angle
度数で表現された角度を設定します。
number
指定された度数単位の角度を、ラジアン値に変換した値を返します。
function:rand 関数乱数を返す関数です。
number function:rand( )
引数をとりません。
number
0以上、1以下の乱数を返します。
function:rand-between 関数指定された範囲に当てはまる乱数を返します。
number function:rand-between( min, max )
number min
乱数の範囲の最小値となるint型の範囲内の整数を指定します。
number max
乱数の範囲の最大値となるint型の範囲内の整数を指定します。
number
範囲始点(min)以上、範囲終点(max)以下の乱数を返します。 範囲始点の値より範囲終点の値が小さい場合や、引数がint型の整数でない場合は、XPathで定義されているNaN(Not a Number)を返します。
function:sin 関数サイン(正弦)を求める関数です。
number function:sin( number )
number number
ラジアンで表現した角度を指定します。
number
引数で指定された角度からサイン(正弦)値を返します。
function:sinh 関数ハイパボリックサイン(双曲線正弦)を求める関数です。
number function:sinh( number )
number number
実数値を指定します。
number
引数の数値から求められたハイパボリックサイン(双曲線正弦)値を返します。
function:sqrt 関数平方根を求める関数です。
number function:sqrt( number )
number number
任意の数値を指定します。
number
引数の数値から求められた平方根の値を返します。 引数が適切でない場合は、それぞれ次の値を返します。
NaN(Not a Number)または負の数値の場合
NaNを返します。
0の場合
0を返します。
NaN(Not a Number)や、正の無限大(Infinity)は、XPath仕様で定義されている特別な値です。
function:tan 関数タンジェント(正接)を求める関数です。
number function:tan( number )
number number
ラジアンで表現した角度を指定します。
number
引数で指定された角度からタンジェント(正接)値を返します。 引数が-π/2またはπ/2の場合は、XPathで定義されているNaN(Not a Number)を返します。
function:tanh 関数ハイパボリックタンジェント(双曲線正接)を求める関数です。
number function:tanh( number )
number number
実数値を指定します。
number
引数の数値から求められたハイパボリックタンジェント(双曲線正接)値を返します。
統計関数は、以下のとおりです。
function:average 関数ノードセット内の各ノードに含まれる文字列を数値に変換した値の、数学的な平均値を求める関数です。
number function:average( node-set )
node-set node-set
平均値を求めるノードセットを指定します。
number
ノードセット内の各ノードに含まれる文字列を数値に変換して、その平均値を返します。 ノードセット内に数値にできないノードがある場合は、XPathで定義されているNaN(Not a Number)を返します。
function:max 関数ノードセット内の各ノードに含まれる文字列を数値に変換した値の最大値を求める関数です。
number function:max( node-set )
node-set node-set
最大値を求めるノードセットを指定します。
number
ノードセット内の各ノードに含まれる文字列を数値に変換して、その最大値を返します。ノードセット内に数値にできないノードがある場合は、XPathで定義されているNaN(Not a Number)を返します。
function:min 関数ノードセット内の各ノードに含まれる文字列を数値に変換した値の最小値を求める関数です。
number function:min( node-set )
node-set node-set
最小値を求めるノードセットを指定します。
number
ノードセット内の各ノードに含まれる文字列を数値に変換して、その最小値を返します。ノードセット内に数値にできないノードがある場合は、XPathで定義されているNaN(Not a Number)を返します。
日付関数は、以下のとおりです。
function:add-day 関数協定世界時(UTC)を表す整数値文字列に、ある日数を加えた文字列を返す関数です。
string function:add-day( utc, days )
string utc
協定世界時(UTC)を表す整数値文字列を指定します。
string days
加える日数を指定します。
string
元の時間に指定された日数を加えた結果を、協定世界時(UTC)を表す整数値文字列で返します。
function:add-month 関数協定世界時(UTC)を表す整数値文字列に、ある月数を加えた文字列を返す関数です。
string function:add-month( utc, months )
string utc
協定世界時(UTC)を表す整数値文字列を指定します。
string months
加える月数を指定します。
string
元の時間に指定された月数を加えた結果を、協定世界時(UTC)を表す整数値文字列で返します。
function:add-year 関数協定世界時(UTC)を表す整数値文字列に、ある年数を加えた文字列を返す関数です。
string function:add-year( utc, years )
string utc
協定世界時(UTC)を表す整数値文字列を指定します。
string years
加える年数を指定します。
string
元の時間に指定された年数を加えた結果を、協定世界時(UTC)を表す整数値文字列で返します。
function:current-time-millis 関数現在の時間をミリ秒単位で返します。
number function:current-time-millis( )
引数をとりません。
number
協定世界時(UTC)1970年1月1日午前0時から現在までの経過時間を、ミリ秒単位で返します。
function:date-value 関数指定された日付文字列を、協定世界時(UTC)を表す整数値文字列に変換して返す関数です。
string function:date-value( date-string, format )
string date-string
第2引数の日付書式に従って作成された日付文字列を指定します。
string format
第1引数の日付文字列で使用している日付書式を指定します。日付の書式は、Javaのjava.text.SimpleDateFormatに従います。
string
date-stringで指定された日付文字列をformatの日付書式で解析し、協定世界時(UTC)を表す整数値文字列に変換して返します。
function:days-of-month 関数指定された年・月の、月の日数を返す関数です。
number function:days-of-month( year, month )
number year
西暦の年を指定します。
number month
月を1から12で指定します。
number
指定された年・月の、月の日数を返します。
function:format-datetime 関数協定世界時(UTC)を表す整数値文字列を、指定された日付書式で書式化した日付文字列に変換して返す関数です。
string function:format-datetime( utc, format )
string utc
協定世界時(UTC)を表す整数値文字列を指定します。
string format
変換する日付文字列の日付書式を指定します。日付の書式は、Javaのjava.text.SimpleDateFormatに従います。
string
utcの整数値文字列で指定された協定世界時(UTC)を、formatで指定された日付書式を使用した日付文字列に変換して返します。
function:now 関数現在の日付の文字列を返します。
string function:now( format )
string format
日付の書式を指定する文字列を設定します。日付の書式は、Javaのjava.text.SimpleDateFormatに従います。
string
指定された書式に従った日付文字列を返します。
function:weekday 関数指定された日付の曜日を返す関数です。
number function:weekday( year, month, day )
number year
日付の年を西暦で指定します。
number month
日付の月を、1から12で指定します。
number day
日付の日を、1からその月の最終日までの数値で指定します。
number
指定された日付の曜日を次の値で返します。
| 1 | 日曜日 |
| 2 | 月曜日 |
| 3 | 火曜日 |
| 4 | 水曜日 |
| 5 | 木曜日 |
| 6 | 金曜日 |
| 7 | 土曜日 |
文字列操作関数は、以下のとおりです。
function:ends-with 関数文字列が、ある文字の組み合わせで終了しているかいないかを調べる関数です。
boolean function:ends-with( string1, string2 )
string string1
調べたい文字列を指定します。
string string2
調べる文字の組み合わせを、文字列で指定します。
boolean
string1がstring2で指定された文字の組み合わせで終了しているかしていないかを、真偽値で返します。string1がstring2の文字の組み合わせで終了している場合、trueが返されます。そうでない場合は、falseが返されます。
function:format-message 関数JavaのMessageFormatクラスの機能のサブセットを提供する関数です。
string function:format-message( pattern, arguments... )
string pattern
メッセージフォーマットパターン文字列を指定します。書式はJavaのjava.text.MessageFormatの仕様に従います。
ただし、フォーマットタイプならびにフォーマットスタイルの指定はサポートしません。日付書式を使用する場合は
format-datetime 関数を、数値書式を使用する場合は
function:format-number 関数を、それぞれ使用します。
string arguments...
pattern内に記述されたフォーマット要素の位置に挿入する文字列を指定します。
argumentsの個数は可変です。argumentsの個々の値は文字列として評価され、pattern内に記述された対応するフォーマット要素と置き換えられます。
function:format-message('あ{2}{1}{0}お', 'え', 'う', 'い')
=> あいうえお
pattern内のフォーマット要素とargumentsで指定する文字列は、数を合わせる必要があります。
string
argumentsの個々の値を文字列として評価し、pattern内に記述された対応するフォーマット要素と置き換えた文字列を返します。
function:format-number 関数指定された書式に従って数値を書式化し、文字列として返す関数です。
string function:format-number( number, format )
number number
書式化する数値を指定します。
string format
書式を指定する文字列。書式は、Javaのjava.text.DecimalFormatに従います。
string
書式化された数値文字列を返します。
function:generate-id 関数引数で指定されたノードに自動的にIDを割り当てる関数です。
string function:generate-id( node-expression? )
node-set node-expression
任意のノードを指定します。
省略した場合は、コンテキストノードのIDを返します。
string
引数で指定されたノードに割り当てたID文字列を返します。
function:lower 関数文字列に含まれるアルファベットを、すべて小文字に変換する関数です。
string function:lower( string )
string string
任意の文字列を指定します。
string
引数で指定された文字列に含まれるアルファベットをすべて小文字にした文字列を返します。アルファベット以外の文字は変化しません。 半角のアルファベットの場合、変換結果は半角の小文字アルファベットとなります。同様に、全角のアルファベットの場合、変換結果は全角の小文字アルファベットとなります。
function:regexp-match 関数文字列に、正規表現で指定されたパターンに合致する部分が含まれるか含まれないかを調べる関数です。
boolean function:regexp-match( string, pattern )
string string
調べたい文字列を指定します。
string pattern
正規表現パターンを文字列で指定します。
boolean
文字列stringの中にpatternで指定された正規表現パターンに合致する部分があるかないかを、真偽値で返します。 stringにpatternで指定された正規表現パターンの合致する部分がある場合、trueが返されます。そうでない場合は、falseが返されます。
function:substring-before-last 関数ある文字列から、最後に出現した区切り文字よりも前の部分文字列を返す関数です。
string function:substring-before-last( string, delimiter )
string string
部分文字列を取得する文字列を指定します。
string delimiter
区切り文字列を指定します。
string
delimiterで指定された区切り文字列が、stringに最後に出現した位置より前の部分文字列を返します。stringから部分文字列を取得するときには、delimiterに完全に一致した部分だけが、区切り文字列として扱われます。 区切り文字列に一致する部分がstringに存在しない場合は、空文字列を返します。
function:substring-after-last 関数ある文字列から、最後に出現した区切り文字よりも後ろの部分文字列を返す関数です。
string function:substring-after-last( string, delimiter )
string string
部分文字列を取得する文字列を指定します。
string delimiter
区切り文字列を指定します。
string
delimiterで指定された区切り文字列が、stringに最後に出現した位置より後ろの部分文字列を返します。stringから部分文字列を取得するときには、delimiterに完全に一致した部分だけが、区切り文字列として扱われます。 区切り文字列に一致する部分がstringに存在しない場合は、空文字列を返します。
function:upper 関数文字列に含まれるアルファベットを、すべて大文字に変換する関数です。
string function:upper( string )
string string
任意の文字列を指定します。
string
引数で指定された文字列に含まれるアルファベットをすべて大文字にした文字列を返します。アルファベット以外の文字は変化しません。半角のアルファベットの場合、変換結果は半角の大文字アルファベットとなります。同様に、全角のアルファベットの場合、変換結果は全角の大文字アルファベットとなります。
論理関数は、以下のとおりです。
function:if 関数与えられた条件を評価して、その結果の真偽値に応じて、2つのノードのうち一方を返す関数です。
node-set function:if( condition, node-expression1, node-expression2 )
boolean condition
評価する条件を指定します。 条件の判断結果は、真偽値で示されます。
node-set node-expression1
第1引数で与えられた条件を評価した結果が真となったときに返すノードを指定します。
node-set node-expression2
第1引数で与えられた条件を評価した結果が偽となったときに返すノードを指定します。
node-set
条件の評価結果に応じたノードを返します。 conditionを評価した結果が真となったときは、node-expression1が返されます。偽となったときは、node-expression2が返されます。
ツール関数は、以下のとおりです。
function:current 関数カレントノードをノードセットとして返す関数です。すなわち、XPath式の評価開始時点でのコンテキストノードを返す関数です。
node-set function:current( )
引数をとりません。
node-set
カレントノードをノードセットとして返します。
function:declare-namespace 関数指定されたノードで宣言されている名前空間の一覧を返す関数です。
node-set function:declare-namespace( node-expression? )
node-set node-expression
宣言されている名前空間ノードの一覧を取得したいノードを指定します。
省略した場合は、コンテキストノードが指定されたと見なされます。
node-set
指定されたノードで宣言されている名前空間ノードの一覧を返します。
function:document-property 関数文書プロパティを取得する関数です。
string function:document-property( key, node-expression? )
string key
文書プロパティのキー名を指定します。 次のキー名を指定します。
overwrite
true、上書き保存できないときはfalseとなります。
encode
file name
load url
function:document-uri()関数の返値と同じです。
mime type
save url
node-set node-expression
文書に含まれるノードを指定します。 文書ノードを指定することもできます。
省略時はコンテキストノードが指定されたと見なされます。
string
指定されたキー名のプロパティが存在しない場合は、空文字列を返します。
function:is-dirty 関数文書が編集されているかいないかを調べる関数です。
boolean function:is-dirty( node-expression? )
node-set node-expression
編集されているかいないかを調べる文書に含まれるノードを指定します。
コンテキストノードが指定されたと見なされます。
boolean
文書が編集されているかいないかの状態を返します。 文書が編集されているときはtrue、編集されていないときはfalseとなります。
function:media-type 関数現在のキャンバスが出力対象としているメディアタイプを返す関数です。
string function:media-type( )
引数をとりません。
string
現在のキャンバスが出力対象としているメディアタイプを返します。次のメディアタイプが返されます。
screen
print
function:message 関数引数で与えられたXPath式を評価して、その結果を出力する関数です。開発・デバッグ用に用意している関数です。
node-set function:message( node-expression )
node-set node-expression
評価するXPath式を指定します。
node-set
評価したノードセットを返します。
function:system-property 関数システムプロパティを取得する関数です。
string function:system-property( key )
string key
システムプロパティのキー名を指定します。
string
引数で指定されたシステムプロパティのキー名に対応する値を返します。指定されたキー名のプロパティが存在しない場合は、空文字列を返します。