XML変換を設定
手順
-
tXMLMapコンポーネントをダブルクリックして、[Map Editor] (マップエディター)を開きます。
入力エリアにはデフォルトの基本的なXMLストラクチャーが既に入力されており、一番上のテーブルがメインの入力テーブルになっています。
-
row1入力テーブルでCustomerノードを右クリックし、コンテキストメニューから[Import From File] (ファイルからインポート)を選択します。ポップアップダイアログボックスでXMLソースファイルを参照して、tXMLMapが受信するデータが使うXMLツリーストラクチャーをインポートします。このシナリオでは、XMLソースファイルはCustomer.xmlで、これはCustomersという名前のtFileInputXMLコンポーネントへの入力データです。
XSDファイルからXMLツリーをインポートすることもできます。XSDファイルから入力または出力XMLツリーストラクチャーをインポートする際に、XMLツリーのルートとしてエレメントを選択できます。XSDファイルからXMLツリーストラクチャーをインポートする方法は、XMLおよびXSDファイルからXMLツリーストラクチャーをインポートをご覧ください。
-
インポートしたXMLツリーでCustomerノードを右クリックし、コンテキストメニューから[As loop element] (ループエレメントとして)を選択して、ループエレメントとして設定します。
-
このマップエディターの下側にある[Schema editor] (スキーマエディター)タブをクリックして、対応するビューを開きます。次に、このビューの右側で[Document] (ドキュメント)タイプの1カラムのCustomer_StatesをCustomerスキーマテーブルに追加します。対応するXMLルートは、出力フローを表す右上のCustomer出力テーブルに自動的に追加されます。
-
Customer出力テーブルでCustomer_Statesノードを右クリックし、コンテキストメニューから[Import From File] (ファイルからインポート)を選択します。ポップアップダイアログボックスで、XMLツリーストラクチャーのインポート元のXMLファイルを参照します。このシナリオではCustomer_State.xmlです。
- customerノードを右クリックし、コンテキストメニューから[As loop element] (ループエレメントとして)を選択して、ループエレメントとして設定します。
-
row1入力テーブルでidノードをクリックし、Customer出力テーブルの@idノードの行の[Expression] (式)カラムにドロップします。
同じ手順で、入力テーブルから出力テーブルに、CustomerNameをCustomerNameに、CustomerAddressをCustomerAddressに、idStateをidStateにマッピングします。
状況によっては、出力XMLツリーに空のエレメントを保持しなければならない場合があります。その場合は、tXMLMapを使ってそれらを管理できます。tXMLMapを使って空のエレメントを管理する方法は、マップエディターで空エレメントを管理をご覧ください。
-
Customer出力テーブルの上部にあるレンチアイコンをクリックし、[All in one] (オールインワン)プロパティの値をtrueに設定して、単一のXMLフローを生成します。オールインワンの詳細は、エレメントを1つのドキュメントに出力をご覧ください。
-
[OK]をクリックして変更を確定し、[Map Editor] (マップエディター)を閉じます。
このシナリオの前半で説明した手順で必要なループエレメントを設定せずに[Map Editor] (マップエディター)を閉じると、ルートエレメントが自動的にループエレメントとして設定されます。