uCosminexus Interschema ユーザーズガイド

[目次][用語][索引][前へ][次へ]

6.7.4 定数

式の中で固定の値として使用するものです。定数には,文字列,数字列,浮動小数文字列,バイト列,予約定数があります。各定数について次に説明します。

<この項の構成>
(1) 文字列
(2) 数字列
(3) 浮動小数文字列
(4) バイト列
(5) 予約定数

(1) 文字列

文字列をダブルクォーテーション「"」で囲んでください。次に例を示します。

"ABC漢字"

なお,文字列中にダブルクォーテーション「"」を使用する場合,次のように「"」を二つ連続で記述してください。

指定したい文字列:a"b

実際に指定する文字列:"a""b"

(2) 数字列

0〜9の数字で構成されます。先頭に0があってもかまいません。負の値を表す場合は先頭に単項演算子の「-」を使用します。また,先頭に「0x」を付けた16進数字で記述することもできます。ただし,符号なしの扱いで,表現はビッグエンディアンの形式と見なします。

次に例を示します。

01234567890

-1234567890

0x0100  (=256)

(3) 浮動小数文字列

「数字」「小数点」「符号」「指数記号」から構成されます。小数部を持つ数字や,指数表現のある数値を表します。指数記号は,「E」又は「e」だけを使用できます。負の値を表す場合は数字列と同じように,単項演算子の「-」を使用します。次に例を示します。

123.45

-6789.0

1.2E+5

(4) バイト列

先頭に「0x」を付けた16進数字です。記述する値は,フォーマットのエンディアンの指定に従う必要があります。また,複数バイトを占める定数の場合は,バイト数分指定してください。次に例を示します。

0xFEFF003C003F

(5) 予約定数

NULL(又は%NULL
「NULL」と「%NULL」の意味はどちらも同じです。
マップ式内だけで使用できます。例外として,Sea-NACCSのフォーマットとして,デフォルト式に記述できます(スペース文字の埋め込みの意味)。
DTDフォーマットの型コンポーネントに対して「NULL」又は「%NULL」を指定した場合,そのコンポーネントは,XMLのタグだけを出力します。その他のコンポーネントに対しては,マップ式を定義していないことになります。

%TRUE
BOOLEAN定数を表します。真を表します。

%FALSE
BOOLEAN定数を表します。偽を表します。

%DEFAULT
型コンポーネントのデフォルト式を表します。マップ式内でだけ使用できます。
マップ式の評価結果がこの定数になった場合,デフォルト式の値が出力されます。

%UNDEF
コンポーネント未定義を表します。マップ式内でだけ使用できます。
DTDフォーマットの型コンポーネントに対して「%UNDEF」を指定した場合,XMLのタグを含めて出力しません。その他のコンポーネントの場合は,「NULL」が指定された場合と同じです。
「%UNDEF」は「NULL」と似た機能を持ちますが,「NULL」はコンポーネントの1出現に対する未定義を表し,「%UNDEF」はコンポーネントの出現終了を表します。無限回出現コンポーネントの出力を終了させる場合などに使用できます。