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

5.9 XML文書のフォーマット変換

ここでは、XML文書のフォーマット変換について説明します。

Formatmanagerは、Formatmanagerクライアントで生成された変換テーブルを参照して、XML文書とユーザ固有フォーマットとの相互変換を行います。フォーマット変換時に指定されたフラットID/複数一般ID/伝票形式ID/可変長IDを変換テーブルから検索し、ユーザ固有フォーマットとXML文書の対応を決定します。これに従って変換が実行されます。

図5.61 ユーザ固有フォーマットとXML文書の対応

Formatmanagerクライアントの「一般フォーマット登録」で登録した「フラット名称」がXML文書のルート要素名(ルートタグ名)に、「XML属性フィールド」がチェックされていないそれぞれの「フィールド名」がXML文書の要素名(タグ名)に、「XML属性フィールド」がチェックされている「フィールド名」がXMLタグ内の属性名に、「XML属性(固定値)」がXMLタグ内の属性名と属性値に対応します。ユーザ固有フォーマットの実際のデータは、XML文書の要素、または属性値に対応します。

内部サブセットのDTDをもつXML文書(DTD)を出力する場合には、「一般フォーマット登録」で登録したレイアウト情報に対応するDTDが、XML文書の内部DTDとして出力されます。
XML文書(Schema)を出力する場合には、Formatmanagerクライアントの「一般フォーマット登録」で登録した「XML Schema情報」がルート要素のXML属性として出力され、「接頭辞」が要素名の前に名前空間接頭辞として出力されます。

複数のレコードは、フラットID/複数一般ID/伝票形式ID/可変長IDに定義された項目群を1レコードとして、その項目群が複数回現れることで表現されます。Formatmanagerでは基本的に1レコードのXML文書を扱いますが、上図では例として2レコードを含むXML文書を示しています。

表5.40 一般フォーマットの場合のフォーマット定義とXML文書との対応

Formatmanagerクライアントの入力内容

XML文書(DTD)の値

XML文書(Schema)の値

DTD

XMLインスタンス部

XML Schema参照部

XMLインスタンス部

フラット名称

文書型宣言(DOCTYPE宣言)のルート要素名

ルート要素名

ルート要素名

XML Schema情報

名前空間未指定時のXML Schemaファイル名

xsi:noNamespaceSchemaLocation属性と属性値

名前空間URI

名前空間の宣言

接頭辞

名前空間の宣言

XML Schemaファイル名

xsi:schemaLocation属性と属性値

フィールド名

XML属性フィールド:OFF

要素名

要素名

要素名

XML属性フィールド:ON

XML属性名

XML属性名

XML属性名

接頭辞

要素名に付く名前空間接頭辞名

XML属性(固定値)

属性リスト宣言(ATTLIST宣言)のXML属性名

XML属性名と属性値

XML属性名と属性値

属性が集団項目ヘッダのときのフィールド名

要素型宣言の要素名

要素名(通常のフィールド名の1階層上位)

要素名(通常のフィールド名の1階層上位)

-:対応しない項目

表5.41 複数一般フォーマットの場合のフォーマット定義とXML文書との対応

Formatmanagerクライアントの入力内容

XML文書(DTD)の値

XML文書(Schema)の値

DTD

XMLインスタンス部

XML Schema参照部

XMLインスタンス部

複数一般名称

文書型宣言のルート要素名

ルート要素名(1階層目)

ルート要素名(1階層目)

XML Schema情報

名前空間未指定時のXML Schemaファイル名

xsi:noNamespaceSchemaLocation属性と属性値

名前空間URI

名前空間の宣言

接頭辞

名前空間の宣言

XML Schemaファイル名

xsi:schemaLocation属性と属性値

フラット名称

要素型宣言の要素名

要素名

要素名

XML属性(固定値)

属性リスト宣言の属性名

XML属性名と属性値

XML属性名と属性値

-:対応しない項目

表5.42 伝票形式フォーマットの場合のフォーマット定義とXML文書との対応

Formatmanagerクライアントの入力内容

XML文書(DTD)の値

XML文書(Schema)の値

DTD

XMLインスタンス部

XML Schema参照部

XMLインスタンス部

伝票形式名称

文書型宣言のルート要素名

ルート要素名(1階層目)

ルート要素名(1階層目)

XML Schema情報

名前空間未指定時のXML Schemaファイル名

xsi:noNamespaceSchemaLocation属性と属性値

名前空間URI

名前空間の宣言

接頭辞

名前空間の宣言

XML Schemaファイル名

xsi:schemaLocation属性と属性値

フラット名称

要素型宣言の要素名

要素名

要素名

XML属性(固定値)

属性リスト宣言の属性名

XML属性名と属性値

XML属性名と属性値

-:対応しない項目

表5.43 行終端可変長フォーマットの場合のフォーマット定義とXML文書との対応

Formatmanagerクライアントの入力内容

XML文書(DTD)の値

XML文書(Schema)の値

DTD

XMLインスタンス部

XMLインスタンス部

XMLインスタンス部

可変長名称

文書型宣言のルート要素名

ルート要素名

ルート要素名

XML Schema情報

名前空間未指定時のXML Schemaファイル名

xsi:noNamespaceSchemaLocation属性と属性値

名前空間URI

名前空間の宣言

接頭辞

名前空間の宣言

XML Schemaファイル名

xsi:schemaLocation属性と属性値

フラット名称

要素型宣言の要素名

要素名

要素名

XML属性(固定値)

属性リスト宣言の属性名

XML属性名と属性値

XML属性名と属性値

-:対応しない項目

ポイント

  • フィールド名、フラット名称、複数一般名称、伝票形式名称、可変長名称には、同一名称を指定できません。

  • フォーマット変換時には、内部サブセット、外部サブセットを問わず、DTDは参照されません。また、XML Schema文書も参照されません。変換時には変換テーブルが参照されます。

  • XML変換を行う場合には、XML規約で許されていない文字を以下に使用することはできません。

    • フィールド名

    • フラット名称

    • 複数一般名称

    • 伝票形式名称

    • 可変長名称

    • XML属性(固定値)

    • XML Schema情報

    • 接頭辞