フォーマット形式ファイルからXML形式ファイルへの変換

 

以下の入力ファイル、スキーマファイル、マッピング情報を例に、フォーマット形式ファイルからXML形式ファイルへの変換について、「XMLレコード単位」の設定値ごとに説明します。

 

図4.46 入力ファイル

図4.47 スキーマファイル(XML情報)

画面4.20 マッピング情報

(1) 「XMLレコード単位」が"1"の場合

入力ファイルの1レコードが、出力ファイルのルート要素<root>1つに相当します。ルート要素は1ファイルにつき1つのため、出力ファイルが入力ファイルのレコード数分作成されます。

図4.48 出力ファイル

(2) 「XMLレコード単位」が"2"の場合

入力ファイルの1レコードが、出力ファイルのルート要素<root>から1階層下の要素に相当します。今回の例では、入力ファイルのレコード数(4レコード)分要素<A>が出力されます。

図4.49 出力ファイル

(3) 「XMLレコード単位」が"3"の場合

入力ファイルの1レコードが、出力ファイルのルート要素<root>から2階層下の要素に相当します。今回の例では、入力ファイルのレコード数(4レコード)分要素<AA>が出力されます。

図4.50 出力ファイル

(4) 「XMLレコード単位」が"任意"の場合

入力ファイルの1レコードが、出力ファイル内の任意の階層を1レコードとして扱えます。

マッピング情報設定画面で、レコードとして扱いたい階層を子要素に持つ内容モデル、またはレコードとして扱いたい要素を右クリックし、コンテキストメニューから[ここを繰り返しの基点に設定する]をクリックします。

繰り返しの基点に設定された内容モデル、または要素はマッピング画面上でアイコンがピンク色に変わり、太字で表示されます。

画面4.21 繰り返しの基点を設定

どの内容モデル、または要素を繰り返しの基点に設定するかによって、出力ファイルは以下のようになります。

a) 繰り返しの基点を設定しない場合

繰り返しを指定しないため、入力レコードが複数あっても最後のレコードだけが出力されます。

図4.51 出力ファイル

b) rootの内容モデルを繰り返しの基点に設定した場合

rootの内容モデル(sequence)を繰り返しの基点に設定した場合、要素Aを1レコードとして扱うため、<A>~</A>が入力レコードの数だけ繰り返し出力されます。

画面4.22 要素Aを繰り返す設定

図4.52 出力ファイル

c) 要素Aの内容モデルを繰り返しの基点に設定した場合

要素Aの内容モデル(sequence)を繰り返しの基点に設定した場合、要素AAを1レコードとして扱うため、<AA>~</AA>が入力レコードの数だけ繰り返し出力されます。

画面4.23 要素AAを繰り返す設定

図4.53 出力ファイル

d) 要素AAの内容モデルを繰り返しの基点に設定した場合

要素AAの内容モデル(sequence)を繰り返しの基点に設定した場合、要素item1、item2、item3を1レコードとして扱うため、<item1>~</item1>、<item2>~</item2>、<item3>~</item3>が入力レコードの数だけ繰り返し出力されます。

画面4.24 item1~item3を繰り返す設定

図4.54 出力ファイル

e) 要素Aを繰り返しの基点に設定した場合

要素Aを繰り返しの基点に設定した場合、要素Aを1レコードとして扱うため、<A>~</A>が入力レコードの数だけ繰り返し出力されます。

画面4.25 要素Aを繰り返す設定

図4.55 出力ファイル

f) 要素AAを繰り返しの基点に設定した場合

要素AAを繰り返しの基点に設定した場合、要素AAを1レコードとして

扱うため、<AA>~</AA>が入力レコードの数だけ繰り返し出力されます。

画面4.26 要素AAを繰り返す設定

図4.56 出力ファイル