IBM Integration Bus, Version 9.0.0.7 Operating Systems: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

See information about the latest product version

XMLNSC の空のエレメントおよびヌル値

空のエレメントおよびヌル値は XML 文書内にはよくあります。

堅固なメッセージ・フローは、空のエレメントとヌル値を認識し、それを処理できなければなりません。 同様に、メッセージ・ツリー内のエレメントには、ヌル値がある、空の値がある、または値がまったくないということがあります。 このトピックでは、XMLNSC ドメインによるこれらの値の構文解析および書き込みを説明します。 グラフィカル・データ・マップおよび ESQL でのヌル値の処理について詳しくは、ヌル値の処理を参照してください。

構文解析

説明 XMLNSC により構文解析される XML 入力 メッセージ・ツリー内の「エレメント」の値
空のエレメント値 <element/> 空ストリング
空のエレメント値 <element></element> 空ストリング
子エレメントがあるフォルダー <element><childElement/></element> 値なし
nil のエレメント値 <element xsi:nil="true"/> 値なし、および値が「true」の子属性 xsi:nil

空のエレメントのどちらの形式も、メッセージ・ツリー内では同じ値という結果になります。

書き込み

説明 メッセージ・ツリー内の「エレメント」の値 XMLNSC パーサーからの XML 出力
空のエレメント値 空ストリング <element/>
ヌルのエレメント値 NULL <element/>
子エレメントがあるフォルダー 値なし <element><childElement/></element>
nil のエレメント値 空ストリング、ヌル、またはフォルダー <element xsi:nil="true"/>

ただし、XMLNSC パーサーからは、メッセージ・ツリーに既に含まれている xsi:nil 属性だけが生成されます。それは、ヌル値を持ち、「nil 可能」であるすべてのメッセージ・ツリー・エレメントに対して xsi:nil 属性を自動的に生成することはありません。

空のエレメント

空のエレメントは、XML 文書内で次の 2 つの形式を取ることができます。
- <element/>
- <element></element>

XMLNSC パーサーはどちらの形式も同じように扱います。 エレメントはメッセージ・ツリーに "" の値 (空ストリング) とともに追加されます。

メッセージ・ツリーが XMLNSC パーサーにより生成される場合、入力 XML メッセージの中の "" (空ストリング) の値を持つエレメントには必ず最初の形式を使用します。

xsi:nil 属性を持つエレメント

フローに対して妥当性検査が有効化されている場合、XMLNSC パーサーは、次の妥当性検査を実行します。

入力文書内のエレメントに xsi:nil 属性がある場合、XMLNSC パーサーは、値が「true」または「false」に設定された xsi:nil 子属性を含む、値がないエレメントを、メッセージ・ツリーに作成します。

XMLNSC パーサーによりメッセージ・ツリーがビット・ストリームに書き込まれるとき、エレメントの値が空、ヌル、または値なしで、かつエレメントに子エレメントがない場合、そのエレメントは <element/> として書き込まれます。エレメントに xsi:nil 属性がある場合、他の属性とまったく同じように書き込まれます。

ただし、XMLNSC パーサーからは、メッセージ・ツリーに既に含まれている xsi:nil 属性だけが生成されます。それは、ヌル値を持ち、「nil 可能」であるすべてのメッセージ・ツリー・エレメントに対して xsi:nil 属性を自動的に生成することはありません。


ad67010_.htm | 最終更新 Monday, 27 March 2017