ページの先頭行へ戻る
Interstage Service Integrator V9.4.1 解説書
Interstage

5.2.2 Formatmanagerで扱うことができないXML文書の形式

Formatmanagerでは、以下のようなXML文書を扱うことはできません。適切でない処理結果となる場合があります。

整形式(well-formed)XML文書ではないXML文書

XML規約で許されていない文字を含んでいる、開始タグと終了タグの対応が正しくない、タグの親子関係や入れ子が正しくない、などの整形式XML文書ではないものが入力されても処理できません。
なお、XML規約で許されていない文字とは、以下に示す文字などです。

XML規約で許されていない文字

タグの順序が不定なXML文書

DTDやXML Schemaにかかわらず、Formatmanagerクライアントで定義した順序でタグが現れないXML文書は処理できません。

255バイトを超える長さのタグをもつXML文書

Formatmanagerクライアントでフィールド名として定義できない長さを持つタグ名は処理できません。

文字参照を使用したXML文書

文字のコード番号を指定して文字データを表す文字参照は処理できません。文字参照の文字列のまま出力されます。

複数レコードが記述されたXML文書

Formatmanagerは、Formatmanagerクライアントで定義したフォーマット定義に対して、すべてのXMLタグが揃っておらず、一部のXMLタグが省略されているようなXML文書も処理することができます。しかし、そのようなXML文書では、一般フォーマットにおけるレコードの区切りが判定できなくなるため、「XMLタグが省略されていて、かつ複数のレコードが含まれる」XML文書は、フォーマット変換結果を保証しません。
しかし、以下の条件を満たしている場合に限り、複数レコードを含むXML文書も入力データとすることができます。

図5.26 複数レコードが記述されたXML文書の例

再帰的な構造をもつXML文書

子要素、または孫要素のタグ名が、その親要素と同じタグ名をもつような再帰的な構造をもつXML文書は処理できません。

子要素をもたないタグともつタグが同じタグ名であるXML文書

子要素をもたない(Formatmanagerクライアントで単一の項目と定義される要素)タグと、親要素である(Formatmanagerクライアントで集団項目ヘッダと定義される子要素をもつ要素)タグが、同じタグ名であるような、構造が異なる要素が同じタグ名をもっているXML文書は処理できません。

構成の異なる複数の親要素が同じタグ名をもつXML文書

子要素の構成が異なる複数の親要素が、同じタグ名をもつようなXML文書は処理できません。(同じタグ名をもつ親要素は、その子要素が同じ構成でなければなりません)

任意の階層の中でタグ名が一意でない定義になるXML文書

Formatmanagerクライアントでの定義において、任意の階層の中でフィールド名(タグ名)が一意にならない構造をもつXML文書は処理できません。

上記のフォーマット定義は例であり、実際にはエラーとなり登録できません。

上記の「内容2」と「内容3」の<child1>のように、子要素をもたないタグが連続して繰り返されるXML文書は、[一般フォーマット登録]画面の「タグ繰返数」を指定することにより定義することが可能です。

ポイント

  • 集団項目トレーラに対応するタグは存在しません。

  • フォーマット定義において、フォーマットIDを定義した単位を1レコードとします。