ページの先頭行へ戻る
Symfoware Server V12.7.0 XQueryリファレンス
FUJITSU Software

2.2.1 組込み型一覧

Symfowareでサポートする組込み型の一覧を以下の表に示します。

表2.1 組込み型一覧
分類
型名
概要

文字列

string

XQueryで使用可能な任意の文字列を表します。

数値

double

倍精度の浮動小数点数を表します。

日付

date

年、月、日で日付を表します。

時間

time

時、分、秒で時間を表します。

日時

dateTime

年、月、日、時、分、秒で日時を表します。

ブール

boolean

論理値のtrue、またはfalseを表します。

型なし

untypedAtomic

XML-Schemaで型付けされていない値を表します。

2.2.1.1 string型

データ型xs:stringは、文字列を表します。xs:stringの字句形式は、文字列リテラルで表される文字列です。文字列リテラルの詳細については、“4.2.1 リテラル”を参照してください。

"Book"
"rain"
"日本"

2.2.1.2 double型

データ型xs:doubleは、IEEE倍精度64ビット浮動小数点タイプを表します。精度は2進数で52です。xs:doubleの値域は、浮動小数点数で表される数値に、特殊値(正の無限大、負の無限大、正のゼロ、負のゼロ、および非数値)を加えた範囲です。

xs:doubleの字句形式は、浮動小数点数の字句形式と特殊値の字句形式の両方を含みます。浮動小数点数の字句形式は、数値リテラルで表される文字列、正記号(+)、および負記号(-)で構成されます。数値リテラルで表される数値はすべて10進数でなければなりません。数値リテラルの後部に指定できる記号e(またはE)と数字は、指数を表します。

以下に浮動小数点数の字句形式の例を示します。

-1.23
23.456
+20
3.00
076
.998
-3E2
4.76e-2

特殊値の字句形式は、それぞれ以下のようになります。

特殊値

字句形式

正の無限大

INF

負の無限大

-INF

正のゼロ

+0

負のゼロ

-0

非数値

NaN

注意

  • 特殊値INF、-INF、およびNaNのリテラルはありません。xs:double型のコンストラクタ関数を使用することで、対応する文字列から値INF、-INF、およびNaNを構成することができます。

    xs:double("INF")
  • 大文字と小文字は区別されるため、infやNANは、特殊値の字句形式として正しくありません。また、符号も区別されるため、+INFや-NaNも、特殊値の字句形式として正しくありません。

2.2.1.3 date型

データ型xs:dateは、整数値で指定した年、月、日によって指定される日付を表します。xs:dateの字句形式は、yyyy-mm-dd形式の有限長文字列です。

yyyy:

4桁の数字列で年を表します。ただし、0000は使用できません。

mm:

2桁の数字列で月を表します。有効範囲は01<=mm<=12です。

dd:

2桁の数字列で日を表します。有効範囲は01<=dd<=その月の末日(28~31)です。

xs:date型の値を表すリテラルはありません。xs:date型のコンストラクタ関数を使用することで、対応する文字列からxs:date型の値を構成することができます。

xs:date("2008-05-23")

2.2.1.4 time型

データ型xs:timeは、整数値で指定した時、分、秒によって指定される時間を表します。xs:timeの字句形式は、hh:mm:ss形式の有限長文字列です。

hh:

2桁の数字列で時を表します。有効範囲は00<=hh<=23。

mm:

2桁の数字列で分を表します。有効範囲は00<=mm<=59です。

ss:

2桁の数字列で秒を表します。有効範囲は00<=ss<=59です。

xs:time型の値を表すリテラルはありません。xs:time型のコンストラクタ関数を使用することで、対応する文字列からxs:time型の値を構成することができます。

xs:time("06:38:00")

2.2.1.5 dateTime型

データ型xs:dateTimeは、整数値で指定した年、月、日、時、分、秒によって指定される日時を表します。xs:dateTime の字句形式は、yyyy-mm-ddThh:mm:ss形式の有限長文字列です。

年月日形式
yyyy:

4桁の数字列で年を表します。ただし、0000は使用できません。

mm:

2桁の数字列で月を表します。有効範囲は01<=mm<=12です。

dd:

2桁の数字列で日を表します。有効範囲は01<=dd<=その月の末日(28~31)です。

時分秒形式
hh:

2桁の数字列で時を表します。有効範囲は00<=hh<=23。

mm:

2桁の数字列で分を表します。有効範囲は00<=mm<=59です。

ss:

2桁の数字列で秒を表します。有効範囲は00<=ss<=59です。

xs:dateTime型の値を表すリテラルはありません。xs:dateTime型のコンストラクタ関数を使用することで、対応する文字列からxs:dateTime型の値を構成することができます。

xs:dateTime("2008-05-23T06:38:00")

2.2.1.6 boolean型

データ型xs:booleanは、数学上の論理値(trueまたはfalse)を表します。xs:booleanの字句形式は、true、false、1および0の文字列です。文字列trueまたは1で表される論理値はtrueです。文字列falseまたは0で表される論理値はfalseです。

xs:boolean型の値を表すリテラルはありません。xs:boolean型のコンストラクタ関数を使用することで、対応する文字列から値true、またはfalseを構成することができます。

xs:boolean("true")

2.2.1.7 untypedAtomic型

データ型xs:untypedAtomicは、型付けされていない原子値を表します。例えば、XML文書(入力データ)中の属性ノードの属性値とテキストノードの文字列値は、それぞれxs:untypedAtomic型の原子値です。xs:untypedAtomicの字句形式は、XQueryで使用できる文字の範囲で構成された任意の文字列です。

xs:untypedAtomic型の値を表すリテラルはありません。xs:untypedAtomice型のコンストラクタ関数を使用することで、対応する文字列からuntypedAtomic型の値を構成することができます。

xs:untypedAtomic("3b29d")