# XML変換を設定

## 手順

1. tXMLMapコンポーネントをダブルクリックして、[Map Editor] (マップエディター)を開きます。

   ![tXMLMapのマップエディター。](https://help.qlik.com/talend/ja-JP/components/8.0/Resources/images/Use_Case_tXMLMap5.png)

   入力エリアにはデフォルトの基本的なXMLストラクチャーが既に入力されており、一番上のテーブルがメインの入力テーブルになっています。
2. row1入力テーブルでCustomerノードを右クリックし、コンテキストメニューから[Import From File] (ファイルからインポート)を選択します。ポップアップダイアログボックスでXMLソースファイルを参照して、tXMLMapが受信するデータが使うXMLツリーストラクチャーをインポートします。このシナリオでは、XMLソースファイルはCustomer.xmlで、これはCustomersという名前のtFileInputXMLコンポーネントへの入力データです。

   XSDファイルからXMLツリーをインポートすることもできます。XSDファイルから入力または出力XMLツリーストラクチャーをインポートする際に、XMLツリーのルートとしてエレメントを選択できます。XSDファイルからXMLツリーストラクチャーをインポートする方法は、[XMLおよびXSDファイルからXMLツリーストラクチャーをインポート](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/importing-xml-tree-structure-from-xml-and-xsd-files)をご覧ください。
3. インポートしたXMLツリーでCustomerノードを右クリックし、コンテキストメニューから[As loop element] (ループエレメントとして)を選択して、ループエレメントとして設定します。

   ![ループエレメントとして。](https://help.qlik.com/talend/ja-JP/components/8.0/Resources/images/Use_Case_tXMLMap7.png)
4. このマップエディターの下側にある[Schema editor] (スキーマエディター)タブをクリックして、対応するビューを開きます。次に、このビューの右側で[Document] (ドキュメント)タイプの1カラムのCustomer\_StatesをCustomerスキーマテーブルに追加します。対応するXMLルートは、出力フローを表す右上のCustomer出力テーブルに自動的に追加されます。

   ![\[Customer\] (顧客)スキーマテーブル。](https://help.qlik.com/talend/ja-JP/components/8.0/Resources/images/Use_Case_tXMLMap11.png)
5. Customer出力テーブルでCustomer\_Statesノードを右クリックし、コンテキストメニューから[Import From File] (ファイルからインポート)を選択します。ポップアップダイアログボックスで、XMLツリーストラクチャーのインポート元のXMLファイルを参照します。このシナリオではCustomer\_State.xmlです。

   ![\[Customer\] (顧客)出力テーブル。](https://help.qlik.com/talend/ja-JP/components/8.0/Resources/images/Use_Case_tXMLMap9.png)
6. customerノードを右クリックし、コンテキストメニューから[As loop element] (ループエレメントとして)を選択して、ループエレメントとして設定します。
7. row1入力テーブルでidノードをクリックし、Customer出力テーブルの@idノードの行の[Expression] (式)カラムにドロップします。

   ![\[Customer\] (顧客)出力テーブル。](https://help.qlik.com/talend/ja-JP/components/8.0/Resources/images/Use_Case_tXMLMapBasicMap.png)

   同じ手順で、入力テーブルから出力テーブルに、CustomerNameをCustomerNameに、CustomerAddressをCustomerAddressに、idStateをidStateにマッピングします。

   状況によっては、出力XMLツリーに空のエレメントを保持しなければならない場合があります。その場合は、tXMLMapを使ってそれらを管理できます。tXMLMapを使って空のエレメントを管理する方法は、[マップエディターで空エレメントを管理](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/managing-empty-element-in-map-editor)をご覧ください。
8. Customer出力テーブルの上部にあるレンチアイコンをクリックし、[All in one] (オールインワン)プロパティの値をtrueに設定して、単一のXMLフローを生成します。オールインワンの詳細は、[エレメントを1つのドキュメントに出力を](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/outputing-elements-into-one-document)ご覧ください。

   ![\[All in one\] (オールインワン)プロパティ。](https://help.qlik.com/talend/ja-JP/components/8.0/Resources/images/use_case-txmlmap_all_in_one.png)
9. [OK]をクリックして変更を確定し、[Map Editor] (マップエディター)を閉じます。

   このシナリオの前半で説明した手順で必要なループエレメントを設定せずに[Map Editor] (マップエディター)を閉じると、ルートエレメントが自動的にループエレメントとして設定されます。