XQuery リファレンス

     前  次    目次     
ここから内容

XQuery 型変換関数リファレンス

この章では、WebLogic Workshop のマッパー機能で使用できる XQuery 型変換関数について説明します。マッパー機能を使用してクエリを生成し、クエリを編集して、提供されている XQuery 関数への呼び出しを追加します。詳細については、クエリ内での関数と演算子の呼び出しを参照してください。

WebLogic Workshop のマッパー機能で使用できる XQuery 関数以外にも、数多くの追加の関数が用意されています。マッパー機能のソース ビューを使用すると、これらの関数の呼び出しを手動でクエリに追加できます。これらの追加の関数のリストについては、次の URL にある W3C Web サイト XQuery 1.0 and XPath 2.0 Functions and Operators - W3C Working Draft 16 August 2002 を参照してください。

http://www.w3.org/TR/2002/WD-xquery-operators-20020816

この節では、マッパー機能で使用できる型変換関数のリストを示します。

 


xs: string

$item-var の値を文字列 (string) に変換します。

$item-var が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:string(item* $item-var) —>xs: string

表 4-1 引数
データ型
引数
説明
item*
$item-var
原子値または要素を表します。

戻り値

$item-var の表現を文字列として返します。

XML ノードの例

次のクエリを呼び出した場合、

{-- ノードの例 --}

let $i := <book>The Toad</book>

return <author>{xs:string($i)}</author>

次の結果が生成されます。

<author>The Toad</author>

Integer の例

次のクエリを呼び出した場合、

{-- integer の例 --}

let $num := xs:integer("20")

return (<integer>{xs:string($num)}</integer>)

次の結果が生成されます。

<integer>20</integer>

Float の例

次のクエリを呼び出した場合、

{-- float の例 --}

let $num := xs:float("44.4")

return (<float>{xs:string($num)}</float>)

次の結果が生成されます。

<float>44.4</float>

Boolean の例

次のクエリを呼び出した場合、

{-- boolean の例 --}

let $boolean-var := xs:boolean("true")

return (<boolean>{xs:string($boolean-var)}</boolean>)

次の結果が生成されます。

<boolean>true</boolean>

関連トピック

W3C の string 関数の説明。

 


xs: decimal

$string-var (文字列) を 10 進数 (decimal) 値に変換します。

$string-var が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:decimal(xs: string $string-var) —> xs: decimal

表 4-2 引数
データ型
引数
説明
xs:string
$string-var
10 進数値に変換する文字列を表します。

戻り値

$string-var の 10 進数値を返します。

単純な例

decimal("2.2") を呼び出すと、次のクエリ例に示すように、10 進数値 2.2 が返されます。

<decimal>{xs:decimal("2.2")}</decimal>

次の結果が生成されます。

<decimal>2.2</decimal>

null の例

decimal(()) を呼び出すと、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

たとえば、次のクエリ例の場合、

<decimal>{xs:decimal(())}</decimal>

次の結果が生成されます。

<decimal/>

関連トピック

W3C の decimal データ型の説明。

 


xs: integer

$string-var (文字列) を integer 値に変換します。

$string-var の値が 9,223,372,036,854,775,807 より大きいか、または -9,223,372,036,854,775,808 より小さい場合は、エラー コード SYS_LONG_OVERFLOW で TransformException 例外が生成されます。マッパーには次のエラー メッセージが表示されます。

XQuery を実行中にエラーが発生しました : BigDecimal -> Long オーバフロー!

注意 : パフォーマンス上の理由から、この XQuery エンジンによってサポートされる integer は Java の long に相当します。Java の long は、任意の長さを取る W3C XML スキーマの integer よりも小さくなります。詳細については、「integer」の説明を参照してください。
注意 : $string-var の値は、次の呼び出し例に示すように、カンマを付けずに指定する必要があります。

xs:integer("999999999")

$string-var の値が空のシーケンスの場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:integer(xs: string $string-var) —> xs: integer

表 4-3 引数
データ型
引数
説明
xs:string
$string-var
integer 値に変換する文字列を表します。

戻り値

$string-var の integer 値が返されます。

単純な例

integer("10402") を呼び出すと、次のクエリ例に示すように、整数値 10402 が返されます。

<integer>{xs:integer("10402")}</integer>

次の結果が生成されます。

<integer>10402</integer>

エラー - 小数点が許可されない例

integer("104.0") を呼び出すと、引数では小数点が許可されないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<integer>{xs:integer("104.0")}</integer>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "104.0" を型 [integer@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

エラー - 数字ではない例

integer("foo") を呼び出すと、"foo" は数字ではないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<integer>{xs:decimal("foo")}</integer>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "foo" を型 [integer@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

null の例

integer(()) を呼び出すと、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

たとえば、次のクエリ例の場合、

<integer>{xs:integer(())}</integer>

次の結果が生成されます。

<integer/>

XQuery への準拠

この XQuery エンジンでの integer の最大値は 9,223,372,036,854,775,807、最小値は 9,223,372,036,854,775,808 です。パフォーマンス上の理由から、この XQuery エンジンによってサポートされる integer は Java の long に相当します。Java の long は、任意の長さを取る W3C XML スキーマの integer よりも小さくなります。

関連トピック

integer データ型の説明

プログラム的に TransformException エラー コードを取得する

 


xs: long

$string-var (文字列) を long 値に変換します。

$string-var の値が 9,223,372,036,854,775,807 より大きいか、または -9,223,372,036,854,775,808 より小さい場合は、エラー メッセージが表示されます。

XQuery を実行中にエラーが発生しました : "9223372036854775809" を型 [long@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

注意 : $string-var の値は、次の呼び出し例に示すように、カンマを付けずに指定する必要があります。

xs:long("999999999")

$string-var が空のシーケンスである場合は、空のシーケンスが返されます。

空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:long(xs: string $string-var) —> xs: long

表 4-4 引数
データ型
引数
説明
xs:string
string-var
long 値に変換する文字列を表します。

戻り値

$string-var の long 値が返されます。

単純な例

long("10403") を呼び出すと、次のクエリ例に示すように、整数値 10403 が返されます。

<long>{xs:long("10403")}</long>

次の結果が生成されます。

<long>10403</long>

エラー - 小数点が許可されない例

long("104.0") を呼び出すと、104.0 は有効な整数ではない (小数点は許可されない) ため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<long>{xs:long("104.0")}</long>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "104.0" を型 [long@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

エラー - 数字ではない例

long("foo") を呼び出すと、"foo" は数字ではないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<long>{xs:long("foo")}</long>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "foo" を型 [long@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

null の例

long(()) を呼び出すと、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

たとえば、次のクエリ例の場合、

<long>{xs:long(())}</long>

次の結果が生成されます。

<long/>

関連トピック

W3C の long データ型の説明。

 


xs: int

$string-var (文字列) を int 値に変換します。

$string-var の値が 2,147,483,647 より大きいか、または -2,147,483,648 より小さい場合は、次のエラーが発生します。

XQuery を実行中にエラーが発生しました : "2147483649" を型 [int@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

注意 : $string-var の値は、次の呼び出し例に示すように、カンマを付けずに指定する必要があります。

xs:int("999999999")

$string-var の値が空のシーケンスの場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:int(xs: string $string-var) —>xs: int

表 4-5 引数
データ型
引数
説明
XS:String
$string-var
int 値に変換する文字列を表します。

戻り値

$string-var の int 値が返されます。

単純な例

int("10403") を呼び出すと、次のクエリ例に示すように、整数値 10403 が返されます。

<int>{xs:int("10403")}</int>

次の結果が生成されます。

<int>10403</int>

エラー - 小数点が許可されない例

int("104.0") を呼び出すと、104.0 は有効な整数ではない (小数点は許可されない) ため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<int>{xs:int("104.0")}</int>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "104.0" を型 [int@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

エラー - 数字ではない例

int("foo") を呼び出すと、"foo" は数字ではないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<int>{xs:int("foo")}</int>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "foo" を型 [int@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

null の例

int(()) を呼び出すと、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

たとえば、次のクエリ例の場合、

<int>{xs:int(())}</int>

次の結果が生成されます。

<int/>

関連トピック

W3C の int データ型の説明。

 


xs: short

$string-var (文字列) を short 値に変換します。

$string-var の値が 32,767 より大きいか、または -32,768 より小さい場合は、次のエラーが発生します。

XQuery を実行中にエラーが発生しました : "32769" を型 [short@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:short(xs: string $string-var) —>xs: short

表 4-6 引数
データ型
引数
説明
XS: String
$string-var
short 値に変換する文字列を表します。

戻り値

$string-var の short 値が返されます。

単純な例

short("10403") を呼び出すと、次のクエリ例に示すように、整数値 10403 が返されます。

<short>{xs:short("10403")}</short>

次の結果が生成されます。

<short>10403</short>

エラー - 小数点が許可されない例

short("104.0") を呼び出すと、104.0 は有効な整数ではない (小数点は許可されない) ため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<short>{xs:short("104.0")}</short>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "104.0" を型 [short@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

エラー - 数字ではない例

short("foo") を呼び出すと、"foo" は数字ではないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<short>{xs:short("foo")}</short>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "foo" を型 [short@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

null の例

short(()) を呼び出すと、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

たとえば、次のクエリ例の場合、

<short>{xs:short(())}</short>

次の結果が生成されます。

<short/>

関連トピック

W3C の short データ型の説明。

 


xs: byte

$string-var (文字列) を byte 値に変換します。

$string-var の値が 127 より大きいか、または -128 より小さい場合は、次のエラーが発生します。

XQuery を実行中にエラーが発生しました : "129" を型 [byte@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

$string-var の値が空のシーケンスの場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:byte(xs: string $string-var) —>xs: byte

表 4-7 引数
データ型
引数
説明
xs: byte
$string-var
byte に変換する文字列を表します。

戻り値

$string-var の byte 値が返されます。

単純な例

byte("104") を呼び出すと、次のクエリ例に示すように、整数値 104 が返されます。

<byte>{xs:byte("104")}</byte>

次の結果が生成されます。

<byte>104</byte>

エラー - 小数点が許可されない例

byte("104.0") を呼び出すと、104.0 は有効な整数ではない (小数点は許可されない) ため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<byte>{xs:byte("104.0")}</byte>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "104.0" を型 [byte@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

エラー - 数字ではない例

byte("foo") を呼び出すと、"foo" は数字ではないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<byte>{xs:byte("foo")}</byte>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "foo" を型 [byte@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

null の例

byte(()) を呼び出すと、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

たとえば、次のクエリ例の場合、

<byte>{xs:byte(())}</byte>

次の結果が生成されます。

<byte/>

関連トピック

W3C の byte データ型の説明。

 


xs: float

$string-var (文字列) を 32 ビット浮動小数点 (float) 値に変換します。float データ型は、IEEE の単精度浮動小数点型 (IEEE Std 754-1985) に対応しています。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:float(xs: string $string-var) —>xs: float

表 4-8 引数
データ型
引数
説明
xs:string
$string-var
float に変換する文字列を表します。

戻り値

$string-var の浮動小数点値を返します。

単純な例

float("1.1") を呼び出すと、次のクエリ例に示すように、浮動小数点値 1.1 が返されます。

<float>{xs:float("1.1")}</float>

上のクエリからは、次の結果が生成されます。

<float>1.1</float>

指数の例

float("-104.345e2") を呼び出すと、次のクエリ例に示すように、浮動小数点値 -10434.5 が返されます。

<float>{xs:float("-104.345e2")}</float>

上のクエリからは、次の結果が生成されます。

<float>-10434.5</float>

NaN の例

文字列 NaN (Not a Number) は、次のクエリ例に示すように、有効な引数です。

<float>{xs:float("NaN")}</float>

次の結果が生成されます。

<float>NaN</float>

INF と -INF の例

文字列 INF (正の無限大) と -INF (負の無限大) は、次のクエリ例に示すように、有効な引数です。

<infinity>

<positive>{xs:float("INF")}</positive>

<negative>{xs:float("-INF")}</negative>

</infinity>

次の結果が生成されます。

<infinity>

<positive>Infinity</positive>

<negative>-Infinity</negative>

</infinity>

エラー - 無効な指数の例

float("10.1e2.1") を呼び出すと、2.1 が整数ではないため、エラーが出力されます。たとえば、次のクエリ例の場合、

<float>{xs:float("10.1e2.1")}</float>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "10.1e2.1" を型 [float@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

null の例

float(()) を呼び出すと、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

たとえば、次のクエリ例の場合、

<float>{xs:float(())}</float>

次の結果が生成されます。

<float/>

関連トピック

W3C の float データ型の説明。

 


xs: double

$string-var (文字列) を倍精度 (64 ビット) 浮動小数点 (double) 値に変換します。

double データ型は、IEEE の倍精度浮動小数点型 (IEEE Std 754-1985) に対応しています。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:double(xs: string $string-var) —> xs: double

表 4-9 引数
データ型
引数
説明
xs:string
$string-var
double に変換する文字列を表します。

戻り値

$string-var の倍精度浮動小数点値を返します。

単純な例

double("1.1") を呼び出すと、次のクエリ例に示すように、倍精度小数点値 1.1 が返されます。

<double>{xs:double("1.1")}</double>

次の結果が生成されます。

<double>1.1</double>

指数の例

double("-104.345e2") を呼び出すと、次のクエリ例に示すように、倍精度浮動小数点値 -10434.5 が返されます。

<double>{xs:double("-104.345e2")}</double>

次の結果が生成されます。

<double>-10434.5</double>

NaN の例

文字列 NaN (Not a Number) は、次のクエリ例に示すように、有効な引数です。

<double>{xs:double("NaN")}</double>

次の結果が生成されます。

<double>NaN</double>

INF と -INF の例

文字列 INF (正の無限大) と -INF (負の無限大) は、次のクエリ例に示すように、有効な引数です。

<infinity>

<positive>{xs:double("INF")}</positive>

<negative>{xs:double("-INF")}</negative>

</infinity>

次の結果が生成されます。

<infinity>

<positive>Infinity</positive>

<negative>-Infinity</negative>

</infinity>

エラー - 無効な指数の例

double("10.1e2.1") を呼び出すと、2.1 が整数ではないため、エラーが出力されます。たとえば、次のクエリ例の場合、

<double>{xs:double("10.1e2.1")}</double>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "10.1e2.1" を型 [double@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

エラー - null の例

double(()) を呼び出すと、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

たとえば、次のクエリ例の場合、

<double>{xs:double(())}</double>

次の結果が生成されます。

<double/>

関連トピック

W3C の double データ型の説明。

 


xf: number

$node-var (XML 要素) の値を倍精度浮動小数点 (double) 値に変換します。

シグネチャ

xf:number(xf: node $node-var) —> xs: double

表 4-10 引数
データ型
引数
説明
xf:node
$node-var
XML ノードを表します。

戻り値

$node-var の倍精度浮動小数点値を返します。

XML ノードの例

次のクエリを呼び出した場合、

{-- ノードの例 --}

let $numnode := <a><b>12.1</b></a>

return (<num>{xf:number($numnode/b)}</num>)

次の結果が生成されます。

<num>12.1</num>

関連トピック

W3C の number 関数の説明。

 


bea-xf: integer-sequence

XML ノードのシーケンスを、整数のシーケンスに変換します。この関数は通常、xf: max 関数および xf: min 関数と共に使用されます。

シグネチャ

bea-xf:: integer-sequence(node*$node-var) —> xs:integer*

表 4-11 引数
データ型
引数
説明
node*
$node-var
XML ノードのシーケンスを表します。

戻り値

XML ノードから変換された整数のシーケンスを返します。

単純な例

次のクエリを呼び出すと、次のクエリ例に示すように、整数のシーケンスが返されます。

let $x := <a>100</a>

let $y := <b>2</b>

let $z := <c>50</c>

return <result>{bea-xf:integer-sequence(($x,$y,$z))}</result>

次の結果が生成されます。

<result>100 2 50</result>

 


xs: boolean

$string-var (文字列) をブール値に変換します。

シグネチャ

xs:boolean(xs: string $string-var)—> xs: boolean

表 4-12 引数
データ型
引数
説明
xs: string
$string-var
ブール値に変換する文字列を表します。

戻り値

渡された文字列のブール値を返します。

単純な例

xs:boolean("false") を呼び出すと、次のクエリ例に示すように、ブール値 false が返されます。

<result>{xs:boolean("false")}</result>

次の結果が生成されます。

<result>false</result>

数値の例

xs:boolean("1") を呼び出すと、次のクエリ例に示すように、ブール値 true が返されます。

<result>{xs:boolean("1")}</result>

次の結果が生成されます。

<result>true</result>

関連トピック

W3C の boolean 関数の説明。

 


xs: dateTime

$string-var (dateTime フォーマットの文字列) を dateTime データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

$string-var の値が有効な dateTime フォーマットでない場合、次のエラーが表示されます。

"invalid_dateTime_string" を型 [date@htttp://www.w3.org/2001/XMLSchema] にキャストできませんでした。

ここで、invalid_dateTime_string は dateTime フォーマットで有効でない文字列 (たとえば "2003-08-16T21:10") です。

シグネチャ

xs: dateTime(xs: string $string-var) —> xs: dateTime

表 4-13 引数
データ型
引数
説明
xs:string
$string-var
以下のフォーマットのいずれかで指定される日付と時刻の文字列を表します。
  • YYYY-MM-DDThh:mm:ss.sssssss
  • YYYY-MM-DDThh:mm:ss.sssssssZ
  • YYYY-MM-DDThh:mm:ss.sssssss+hh:mm
  • YYYY-MM-DDThh:mm:ss.sssssss-hh:mm
 
YYYY
MM
月 (数字)
DD
T
日付と時刻の区切り文字です。
hh
時間
mm
ss.sssssss
秒は小数点以下最大で 7 桁まで指定できます (フォーマット xx.xxxxxxx)。
:
時間、分、秒の間の区切り文字です。
+
正のタイム ゾーン オフセット (省略可能、+ または - が指定されていない場合は、+ が仮定されます)
-
負のタイム ゾーン オフセット (省略可能)
hh
タイム ゾーンが UTC と異なる時間数です。
mm
タイム ゾーンが UTC と異なる分数です。
Z
時刻が UTC タイム ゾーンに対応していることを示します。

戻り値

指定された日付と時刻を dateTime データ型で返します。

単純な例

dateTime("2003-08-16T21:10:50") を呼び出すと、次のクエリ例に示すように、現在のタイム ゾーンでの 2003 年 8 月 16 日午後 9 時 10 分 (24 時間制では 21 時 10 分) 50 秒に対応する dateTime 値が返されます。

let $mydate := xs:dateTime("2003-08-16T21:10:50")

return

<components>

<year>{xf:get-year-from-dateTime($mydate)}</year>

<month>{xf:get-month-from-dateTime($mydate)}</month>

<day>{xf:get-day-from-dateTime($mydate)}</day>

<hour>{xf:get-hours-from-dateTime($mydate)}</hour>

<minute>{xf:get-minutes-from-dateTime($mydate)}</minute>

<second>{xf:get-seconds-from-dateTime($mydate)}</second>

</components>

上のクエリからは、次の XML の結果が生成されます。

<components>

<year>2003</year>

<month>8</month>

<day>16</day>

<hour>21</hour>

<minute>10</minute>

<second>50</second>

</components>

小数部分のある秒数の例

dateTime("2003-08-16T21:10:50.577") を呼び出すと、次のクエリ例に示すように、現在のタイム ゾーンでの 2003 年 8 月 16 日午後 9 時 10 分 (24 時間制では 21 時 10 分) 50.577 秒に対応する dateTime 値が返されます。

let $mydate := xs:dateTime("2003-08-16T21:10:50.557")

return

<components>

<year>{xf:get-year-from-dateTime($mydate)}</year>

<month>{xf:get-month-from-dateTime($mydate)}</month>

<day>{xf:get-day-from-dateTime($mydate)}</day>

<hour>{xf:get-hours-from-dateTime($mydate)}</hour>

<minute>{xf:get-minutes-from-dateTime($mydate)}</minute>

<second>{xf:get-seconds-from-dateTime($mydate)}</second>

</components>

上のクエリからは、次の XML の結果が生成されます。

<components>

<year>2003</year>

<month>8</month>

<day>16</day>

<hour>21</hour>

<minute>10</minute>

<second>50.5570000</second>

</components>

UTC タイム ゾーンの例

dateTime("2003-08-16T21:10:50Z") を呼び出すと、次のクエリ例に示すように、UTC タイム ゾーンでの 2003 年 8 月 16 日午後 9 時 10 分 (24 時間制では 21 時 10 分) 50 秒に対応する dateTime 値が返されます。

let $mydate := xs:dateTime("2003-08-16T21:10:50Z")

return

<components>

<year>{xf:get-year-from-dateTime($mydate)}</year>

<month>{xf:get-month-from-dateTime($mydate)}</month>

<day>{xf:get-day-from-dateTime($mydate)}</day>

<hour>{xf:get-hours-from-dateTime($mydate)}</hour>

<minute>{xf:get-minutes-from-dateTime($mydate)}</minute>

<second>{xf:get-seconds-from-dateTime($mydate)}</second>

</components>

上のクエリからは、次の XML の結果が生成されます。

<components>

<year>2003</year>

<month>8</month>

<day>16</day>

<hour>21</hour>

<minute>10</minute>

<second>50</second>

</components>

タイム ゾーン オフセットの例

dateTime("2003-08-16T13:10:50-07:00") を呼び出すと、次のクエリ例に示すように、UTC (協定世界時) から 7 時間遅れている太平洋夏時間 (PDT) タイム ゾーンでの 2003 年 8 月 16 日午後 1 時 10 分 (24 時間制では 13 時 10 分) 50 秒に対応する dateTime 値が返されます。

let $mydate := xs:dateTime("2003-08-16T13:10:50-07:00")

return

<components>

<year>{xf:get-year-from-dateTime($mydate)}</year>

<month>{xf:get-month-from-dateTime($mydate)}</month>

<day>{xf:get-day-from-dateTime($mydate)}</day>

<hour>{xf:get-hours-from-dateTime($mydate)}</hour>

<minute>{xf:get-minutes-from-dateTime($mydate)}</minute>

<second>{xf:get-seconds-from-dateTime($mydate)}</second>

</components>

上のクエリからは、次の XML の結果が生成されます。

<components>

<year>2003</year>

<month>8</month>

<day>16</day>

<hour>20</hour>

<minute>10</minute>

<second>50</second>

</components>

日付と時刻の変換を次の図に示します。

図 4-1 日付と時刻の変換

日付と時刻の変換

エラー - 秒が指定されていない例

dateTime("2003-08-16T21:10") を呼び出すと、秒が指定されていないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<result>{xs:dateTime("2003-08-16T21:10")}</result>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "2003-08-16T21:10" を型 [dateTime@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

エラー - フォーマットが不正な例

dateTime("2003-8-16T21:10:50") を呼び出すと、月が 2 桁で指定されていないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<result>{xs:dateTime("2003-8-16T21:10:50")}</result>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "2003-8-16T21:10:50" を型 [dateTime@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

関連トピック

W3C の dateTime データ型の説明。

 


xs: date

$string-var (date フォーマットの文字列) を date データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、 SQL の null のようなものです。

$string-var の値が有効な date フォーマットでない場合、次のエラーが表示されます。

"invalid_date_string" を型 [date@htttp://www.w3.org/2001/XMLSchema] にキャストできませんでした。

ここで、invalid_date_string は date フォーマットで有効でない文字列 (たとえば "2003-04-31") です。

シグネチャ

xs:date(xs: string $string-var)—> xs: date

表 4-14 引数
データ型
引数
説明
xs:string
$string-var
以下のフォーマットのいずれかで指定される日付の文字列を表します。

YYYY-MM-DD

YYYY-MM-DDZ

YYYY-MM-DD+hh:mm

YYYY-MM-DD-hh:mm

 

YYYY

MM

月 (数字)

DD

-

年、月、日の間の区切り文字です。

hh

時間

mm

:

時間と分の間の区切り文字です。

+

正のタイム ゾーン オフセット (+、- が指定されていない場合は + が仮定されます)

-

負のタイム ゾーン オフセット

hh

タイム ゾーンが UTC と異なる時間数です。

mm

タイム ゾーンが UTC と異なる分数です。

Z

時刻が UTC タイム ゾーンに対応していることを示します。

戻り値

指定された日付を date データ型で返します。

単純な例

date("2003-08-16") を呼び出すと、次のクエリ例に示すように、現在のタイム ゾーンで 2003 年 8 月 16 日に対応する date 値が返されます。

let $mydate := xs:date("2003-08-16")

return

<components>

<year>{xf:get-year-from-date($mydate)}</year>

<month>{xf:get-month-from-date($mydate)}</month>

<day>{xf:get-day-from-date($mydate)}</day>

</components>

上のクエリからは、次の XML の結果が生成されます。

<components>

<year>2003</year>

<month>8</month>

<day>16</day>

</components>

UTC タイム ゾーンの例

date("2003-08-16Z") を呼び出すと、次のクエリ例に示すように、UTC タイム ゾーンで 2003 年 8 月 16 日に対応する date 値が返されます。

let $mydate := xs:date("2003-08-16Z")

return

<components>

<year>{xf:get-year-from-date($mydate)}</year>

<month>{xf:get-month-from-date($mydate)}</month>

<day>{xf:get-day-from-date($mydate)}</day>

</components>

注意 : date 文字列にある Z は、日付が UTC タイム ゾーンで指定されていることを示します。

上のクエリからは、次の XML の結果が生成されます。

<components>

<year>2003</year>

<month>8</month>

<day>16</day>

</components>

タイム ゾーン オフセットの例

date("2003-08-16-02:00") を呼び出すと、次のクエリ例に示すように、UTC から 2 時間遅れているタイム ゾーンでの 2003 年 8 月 16 日に対応する date 値が返されます。

let $mydate := xs:date("2003-08-16-02:00")

return

<components>

<year>{xf:get-year-from-date($mydate)}</year>

<month>{xf:get-month-from-date($mydate)}</month>

<day>{xf:get-day-from-date($mydate)}</day>

</components>

上のクエリからは、次の XML の結果が生成されます。

<components>

<year>2003</year>

<month>8</month>

<day>16</day>

</components>

エラー - 有効な日付でない例

date("2003-04-31") を呼び出すと、2003 年 4 月 31 日は有効な日付ではない (4 月に 31 日はない) ため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<result>{xs:date("2003-04-31")}</result>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "2003-04-31" を型 [date@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

エラー - フォーマットが不正な例

date("2003-8-16") を呼び出すと、月が 2 桁で指定されていないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<result>{xs:date("2003-8-16")}</result>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "2003-8-16" を型 [date@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

関連トピック

W3C の date データ型の説明。

 


xs:time

$string-var (time フォーマットの文字列) を time データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

$string-var の値が有効な time フォーマットでない場合、次のエラーが表示されます。

"invalid_time_string" を型 [time@htttp://www.w3.org/2001/XMLSchema] にキャストできませんでした。

ここで、invalid_time_string は time フォーマットで有効でない文字列 (たとえば "23:5:44") です。

シグネチャ

xs:time(xs: string $string-var)—>xs: time

表 4-15 引数
データ型
引数
説明
 
xs:string
$string-var
以下のフォーマットのいずれかで指定される時刻の文字列を表します。
  • hh:mm:ss.sssssss
  • hh:mm:ss.sssssssZ
  • hh:mm:ss+hh:mm
  • hh:mm:ss-hh:mm
 
YYYY
MM
月 (数字)
DD
hh
時間
mm
ss.sssssss

秒は小数点以下最大で 7 桁まで指定できます (フォーマット xx.xxxxxxx)。
:
時間、分、秒の間の区切り文字です。
+
正のタイム ゾーン オフセット (省略可能、+ または - が指定されていない場合は、+ が仮定されます)
-
負のタイム ゾーン オフセット (省略可能)
hh
タイム ゾーンが UTC と異なる時間数です。
mm
タイム ゾーンが UTC と異なる分数です。
Z
時刻が UTC タイム ゾーンに対応していることを示します。

戻り値

指定された時刻を time データ型で返します。

単純な例

time("23:15:45") を呼び出すと、現在のタイム ゾーンで午後 11 時 15 分 45 秒に対応する time 値が返されます。

let $mytime := xs:time("23:15:45")

return

<components>

<hours>{xf:get-hours-from-time($mytime)}</hours>

<minutes>{xf:get-minutes-from-time($mytime)}</minutes>

<seconds>{xf:get-seconds-from-time($mytime)}</seconds>

</components>

上のクエリからは、次の XML の結果が生成されます。

<components>

<hours>23</hours>

<minutes>15</minutes>

<seconds>45</seconds>

</components>

UTC タイム ゾーンの例

time("23:15:45Z") を呼び出すと、UTC タイム ゾーンで午後 11 時 :15 分 45 秒に対応する time 値が返されます。

let $mytime := xs:time("23:15:45Z")

return

<components>

<hours>{xf:get-hours-from-time($mytime)}</hours>

<minutes>{xf:get-minutes-from-time($mytime)}</minutes>

<seconds>{xf:get-seconds-from-time($mytime)}</seconds>

</components>

上のクエリからは、次の XML の結果が生成されます。

<components>

<hours>23</hours>

<minutes>15</minutes>

<seconds>45</seconds>

</components>

エラー - フォーマットが不正な例

time("23:5:44") を呼び出すと、分が 2 桁で指定されていないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<result>{xs:time("23:5:44")}</result>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "23:5:44" を型 [time@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

関連トピック

W3C の time データ型の説明。

 


xs: gYearMonth

$string-var (gYearMonth フォーマットの文字列) を gYearMonth データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

$string-var の値が有効な gYearMonth フォーマットでない場合、次のエラーが表示されます。

"invalid_gYearMonth_string" を型 [gYearMonth@htttp://www.w3.org/2001/XMLSchema] にキャストできませんでした。

ここで、invalid_gYearMonth_string は time フォーマットで有効でない文字列 (たとえば "2003-8") です。

シグネチャ

xs:gYearMonth(xs: string $string-var)—> xs: gYearMonth

表 4-16 引数
データ型
引数
説明
xs:string
$string-var

以下のフォーマットのいずれかで指定される年と月の文字列を表します。

YYYY-MM
YYYY-MMZ
YYYY-MM+hh:mm
YYYY-MM-hh:mm
 
YYYY
-
年と月の区切り文字です。
MM
月 (数字)
+
正のタイム ゾーン オフセット (省略可能、+ または - が指定されていない場合は、+ が仮定されます)
-
負のタイム ゾーン オフセット (省略可能)
hh
タイム ゾーンが UTC と異なる時間数です。
mm
タイム ゾーンが UTC と異なる分数です。
Z
時刻が UTC タイム ゾーンに対応していることを示します。

戻り値

指定された年と月を gYearMonth データ型で返します。

単純な例

gYearMonth("2003-08") を呼び出すと、次のクエリ例に示すように、2003 年 8 月に対応する gYearMonth 値が返されます。

<result>{xs:gYearMonth("2003-08")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>2003-08</result>

UTC タイム ゾーンの例

gYearMonth("2003-08Z") を呼び出すと、次のクエリ例に示すように、UTC タイム ゾーンで 2003 年 8 月に対応する gYearMonth 値が返されます。

<result>{xs:gYearMonth("2003-08Z")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>2003-08Z</result>

エラー - フォーマットが不正な例

gYearMonth("2003-8") を呼び出すと、月が 2 桁で指定されていないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<result>{xs:gYearMonth("2003-8")}</result>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "2003-8" を型 [gYearMonth@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

関連トピック

W3C の gYearMonth データ型の説明。

 


xs: gYear

$string-var (gYear フォーマットの文字列) をgYear データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

$string-var の値が有効な gYear フォーマットでない場合、次のエラーが表示されます。

"invalid_gYear_string" を型 [gYear@htttp://www.w3.org/2001/XMLSchema] にキャストできませんでした。

ここで、invalid_gYear_string は time フォーマットで有効でない文字列 (たとえば "20-2003") です。

シグネチャ

xs:gYear(xs: string $string-var)—> xs: gYear

表 4-17 引数
データ型
引数
説明
 
xs:string
$string-var
以下のフォーマットのいずれかで指定される年の文字列を表します。
  • YYYY
  • YYYYZ
  • YYYY+hh:mm
  • YYYY-hh:mm
 
YYYY
+
正のタイム ゾーン オフセット (省略可能、+ または - が指定されていない場合は、+ が仮定されます)
-
負のタイム ゾーン オフセット (省略可能)
hh
タイム ゾーンが UTC と異なる時間数です。
mm
タイム ゾーンが UTC と異なる分数です。
Z
時刻が UTC タイム ゾーンに対応していることを示します。

戻り値

指定された年を gYear データ型で返します。

単純な例

gYear("2003") を呼び出すと、次のクエリ例に示すように、2003 年に対応する gYear 値が返されます。

<result>{xs:gYear("2003")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>2003</result>

UTC タイム ゾーンの例

gYear("2003Z") を呼び出すと、次のクエリ例に示すように、UTC タイム ゾーンで 2003 年に対応する gYear 値が返されます。

<result>{xs:gYear("2003Z")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>2003Z</result>

関連トピック

W3C の gYear データ型の説明。

 


xs: gMonthDay

$string-var (gMonthDay フォーマットの文字列) を gMonthDay データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

$string-var の値が有効な gMonthDay フォーマットでない場合、次のエラーが表示されます。

"invalid_gMonthDay_string" を型 [gMonthDay@htttp://www.w3.org/2001/XMLSchema] にキャストできませんでした。

ここで、invalid_gMonthDay_string は time フォーマットで有効でない文字列 (たとえば "08-15") です。

シグネチャ

xs:gMonthDay(xs: string $string-var)—> xs:gMonthDay

表 4-18 引数
データ型
引数
説明

xs:string

$string-var

以下のフォーマットのいずれかで指定される月と日の文字列を表します。

  • --MM-DD
  • --MM-DDZ
  • --MM-DD+hh:mm
  • --MM-DD-hh:mm
 
--
開始のプレフィックスです。
MM
月 (数字)
-
月と日の間の区切り文字です。
DD
+
正のタイム ゾーン オフセット (省略可能、+ または - が指定されていない場合は、+ が仮定されます)
-
負のタイム ゾーン オフセット (省略可能)
hh
タイム ゾーンが UTC と異なる時間数です。
mm
タイム ゾーンが UTC と異なる分数です。
Z
時刻が UTC タイム ゾーンに対応していることを示します。

戻り値

指定された月と日を gMonthDay データ型で返します。

単純な例

gMonthDay("--08-15") を呼び出すと、次のクエリ例に示すように、8 月 15 日に対応する gMonthDay 値が返されます。

<result>{xs:gMonthDay("--08-15")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>--08-15</result>

UTC タイム ゾーンの例

gMonthDay("--08-15Z") を呼び出すと、次のクエリ例に示すように、UTC タイム ゾーンで 8 月 15 日に対応する gMonthDay 値が返されます。

<result>{xs:gMonthDay("--08-15Z")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>--08-15Z</result>

エラー - フォーマットが不正な例

gMonthDay("08-15") を呼び出すと、-- プレフィックスがないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<result>{xs:gMonthDay("08-15")}</result>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "08-15" を型 [gMonthDay@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

関連トピック

W3C の gMonthDay データ型の説明。

 


xs: gMonth

$string-var (gMonth フォーマットの文字列) を gMonth データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、 SQL の null のようなものです。

$string-var の値が有効な gMonth フォーマットでない場合、次のエラーが表示されます。

"invalid_gMonth_string" を型 [gMonth@htttp://www.w3.org/2001/XMLSchema] にキャストできませんでした。

ここで、invalid_gMonth_string は time フォーマットで有効でない文字列 (たとえば "08") です。

シグネチャ

xs:gMonth(xs: string $string-var)—> xs:gMonth

表 4-19 引数
データ型
引数
説明
xs:string
$string-var
以下のフォーマットのいずれかで指定される月と日の文字列を表します。
  • --MM--
  • --MM--Z
  • --MM--+hh:mm
  • --MM---hh:mm
 
--
開始のプレフィックスです。
MM
月 (数字)
--
区切り文字です。
+
正のタイム ゾーン オフセット (省略可能、+ または - が指定されていない場合は、+ が仮定されます)
-
負のタイム ゾーン オフセット (省略可能)
hh
タイム ゾーンが UTC と異なる時間数です。
mm
タイム ゾーンが UTC と異なる分数です。
Z
時刻が UTC タイム ゾーンに対応していることを示します。

戻り値

指定された月を gMonth データ型で返します。

単純な例

gMonth("--08--") を呼び出すと、次のクエリ例に示すように、8 月に対応する gMonth 値が返されます。

<result>{xs:gMonth("--08--")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>--08--</result>

UTC タイム ゾーンの例

gMonth("--08--Z") を呼び出すと、次のクエリ例に示すように、UTC タイム ゾーンで 8 月に対応する gMonth 値が返されます。

<result>{xs:gMonth("--08--Z")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>--08--Z</result>

エラー - フォーマットが不正な例

gMonth("08") を呼び出すと、-- プレフィックスがないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<result>{xs:gMonth("08")}</result>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "08" を型 [gMonth@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

関連トピック

W3C の gMonth データ型の説明。

 


xs: gDay

$string-var (gDay フォーマットの文字列) を gDay データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

$string-var の値が有効な gDay フォーマットでない場合、次のエラーが表示されます。

"invalid_gDay_string" を型 [gDay@htttp://www.w3.org/2001/XMLSchema] にキャストできませんでした。

ここで、invalid_gDay_string は time フォーマットで有効でない文字列 (たとえば "15") です。

シグネチャ

xs:gDay(xs: string $string-var)—>xs:gDay

表 4-20 引数
データ型
引数
説明
xs:string
$string-var
以下のフォーマットのいずれかで指定される日の文字列を表します。
  • DD
  • DDZ
  • DD+hh:mm
  • DD-hh:mm
 
---
開始のプレフィックスです。
DD
+
正のタイム ゾーン オフセット (省略可能、+ または - が指定されていない場合は、+ が仮定されます)
-
負のタイム ゾーン オフセット (省略可能)
hh
タイム ゾーンが UTC と異なる時間数です。
mm
タイム ゾーンが UTC と異なる分数です。
Z
時刻が UTC タイム ゾーンに対応していることを示します。

戻り値

指定された日を gDay データ型で返します。

単純な例

gDay("---15") を呼び出すと、次のクエリ例に示すように、月の 15 日目に対応する gDay 値が返されます。

<result>{xs:gDay("---15")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>---15</result>

UTC タイム ゾーンの例

gDay("---15Z") を呼び出すと、次のクエリ例に示すように、UTC タイム ゾーンで月の 15 日目に対応する gDay 値が返されます。

<result>{xs:gDay("---15Z")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>---15Z</result>

エラー - フォーマットが不正な例

gDay("15") を呼び出すと、--- プレフィックスがないため、エラーが出力されます。

たとえば、次のクエリ例の場合、

<result>{xs:gDay("15")}</result>

次のようなエラーが生成されます。

XQuery を実行中にエラーが発生しました : "15" を型 [gDay@http://www.w3.org/2001/XMLSchema] にキャストできませんでした。

関連トピック

W3C の gDay データ型の説明。

 


xs: duration

$string-var (duration フォーマットの文字列) を duration データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:duration(xs: string $string-var)—> xs:duration

表 4-21 引数
データ型
引数
説明
xs:string
$string-var

以下のフォーマットのいずれかで指定される期間の文字列を表します。

  • PyYmMdDThHiMsS
  • -PyYmMdDThHiMsS
  • 注意 : 年、月、日、時間、分、または秒の値の指定は省略可能です。つまり、サブ文字列 yY、mM、dD、hH、iM、または sS のすべてを指定する必要はありません。有効な期間の例としては、P10Y、P1D、-P11M、-P10Y7D、P2YT5H、P6YT5H10S などがあります。
 
-
期間が負の値であることを示します。
注意 : - が指定されていない場合、期間は正の値になります。
P
期間文字列の開始を示します。P は必ず指定します。
yY
y - 期間の年数です。
Y - 期間に年数が指定されていることを示します。
mM
m - 期間の月数です。
M - 期間に月数が指定されていることを示します。
dD
d - 期間の日数です。
D - 期間に日数が指定されていることを示します。
T
期間文字列の時間部分の開始を示します。時間、分、または秒のいずれか (hH、iM、または sS) が指定されている場合、T を必ず指定します。
hH
h - 期間の時間数です。
H - 期間に時間数が指定されていることを示します。
iM
i - 期間の分数です。
M - 期間に分数が指定されていることを示します。
sS
s - 期間の秒数です。
秒は小数点以下最大で 7 桁まで指定できます (フォーマット xx.xxxxxxx)
S - 期間に秒数が指定されていることを示します。

戻り値

経過時間 (期間) を duration 値として返します。

すべての部分を含む期間の例

duration("P1Y2M4DT9H8M20S") を呼び出すと、次のクエリ例に示すように、1 年 2 か月 4 日と 9 時間 8 分 20 秒に対応する duration 値が返されます。

<result>{xs:duration("P1Y2M4DT9H8M20S")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>P1Y2M4DT9H8M20S</result>

年数のみを含む期間の例

duration("P9Y") を呼び出すと、次のクエリ例に示すように、9 年に対応する duration 値が返されます。

<result>{xs:duration("P9Y")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>P9Y</result>

負の月数のみを含む期間の例

duration("-P10M") を呼び出すと、次のクエリ例に示すように、負の 10 か月に対応する duration 値が返されます。

<result>{xs:duration("-P10M")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>-P10M</result>

日数と秒数のみを含む期間の例

duration("P4DT20S") を呼び出すと、次のクエリ例に示すように、4 日と 20 秒に対応する duration 値が返されます。

<result>{xs:duration("P4DT20S")}</result>

上のクエリからは、次の XML の結果が生成されます。

<result>P4DT20S</result>

関連トピック

W3C の duration データ型の説明。

 


xs: anyURI

URI (Uniform Resource Identifier Reference) を含む $string-varanyURI データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:anyURI(xs: string $string-var)—>xs: anyURI

表 4-22 引数
データ型
引数
説明
xs:string
$string-var
URI (Uniform Resource Identifier Reference) を含む変換文字列を表します。

戻り値

anyURI データ型に変換された $string-var が返されます。

単純な例

次のクエリを呼び出した場合、

<result>{xs:anyURI("http://www.acme.org/")}</result>

次の結果が生成されます。

<result>http://www.acme.org/</result>

関連トピック

W3C の anyURI データ型の説明。

 


xs: Name

$string-varName データ型に変換します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:Name(xs: string $string-var)—> xs: Name

表 4-23 引数
データ型
引数
説明
xs:string
$string-var
変換する文字列を表します。

戻り値

Name データ型に変換された $string-var が返されます。

関連トピック

W3C の Name データ型の説明。

 


xs: QName

$string-var で指定したローカル名を持ち、ネームスペースを持たない新しい QName を作成します。

$string-var の値が空のシーケンスである場合は、空のシーケンスが返されます。空のシーケンスとは項目を含まないシーケンス「()」であり、SQL の null のようなものです。

シグネチャ

xs:QName(xs: string $string-var)—> xs: QName

表 4-24 引数
データ型
引数
説明
xs:string
$string-var
変換する文字列を表します。

戻り値

QName データ型に変換された $string-var が返されます。

関連トピック

W3C の QName データ型の説明。


  ページの先頭       前  次