# ルートのストラクチャーを作成

ルートのcMapコンポーネントで使用される入力ストラクチャーと出力ストラクチャーを作成します。

## 始める前に

入力として使用するXMLファイルがあること。以下のサンプルを使えます:

```
<orders>
	<order>
		<orderId>abc-6545165186</orderId>
		<shippingDetails>
			<lastName>Kennedy</lastName>
			<firstName>John</firstName>
			<street>Santa Rosa South</street>
			<city>Columbus</city>
			<state>New York</state>
		</shippingDetails>
		<items>
			<item>
				<id>4987601</id>
				<price>649.99</price>
				<quantity>1</quantity>
			</item>
			<item>
				<id>8570817</id>
				<price>99.99</price>
				<quantity>3</quantity>
			</item>
		</items>
	</order>
</orders>
```

## 手順

1. [Data Mapper]タブで[Hierarchical Mapper] (階層マッパー)ノードを展開し、[Structures] (ストラクチャー)を右クリックします。
2. [New] (新規) &gt; [Structure] (ストラクチャー)をクリックします。
3. ウィザードが開いたら、[Import a structure definition] (ストラクチャー定義をインポート)を選択して[Next] (次へ)をクリックします。
4. [XML Sample Document] (XMLサンプルドキュメント)を選択して[Next] (次へ)をクリックします。
5. XMLファイルを選択して、[Next] (次へ)をクリックします。
6. デフォルトエンコーディングのままにしておいて、[Next] (次へ)をクリックします。
7. フォルダーを選択して新しいストラクチャーの名前を入力し、[Next] (次へ)をクリックします。
8. [Finish] (終了)をクリックします。

   入力ストラクチャーが作成されます。これで出力ストラクチャーを作成できます。
9. [Structures] (ストラクチャー)を右クリックし、[New] (新規) &gt; [Structure] (ストラクチャー)をクリックし、[Create a structure that is a customization by inheriting from another structure] (別のストラクチャーから継承して、カスタマイズであるストラクチャーを作成)を選択して、[Next] (次へ)をクリックします。
10. 作成した入力ストラクチャーを選択し、[Next] (次へ)をクリックします。
11. フォルダーを選択して新しいストラクチャーの名前を入力し、[Next] (次へ)をクリックします。
12. [Finish] (終了)をクリックします。

    入力ストラクチャーと同一のストラクチャーが作成されて、カスタマイズできるようになります。
13. 出力ストラクチャーに新しいエレメントを追加します:
    1. orderエレメントを右クリックして、[New Element] (新規エレメント)をクリックします。
    2. 新しいエレメントをorderTotalと名付けて、[Data Type] (データ型)をDecimalに設定します。
    3. さらに、orderDateとshippingDueDateと名付けた2つのエレメントをorderの下に作成して、それらの[Data Type] (データ型)をDateに設定します。
    4. items/itemノードを展開し、itemTotalという名前のitemの下に新しいエレメントを作成して、その[Data Type] (データ型)をDecimalに設定します。

    ストラクチャーは次のようになります: ![ストラクチャー結果。](https://help.qlik.com/talend/ja-JP/data-mapper-functions-reference-guide/Resources/images/create_structures_route_01_output.png)
14. 出力ストラクチャーを保存します。

## タスクの結果

入力ストラクチャーと出力ストラクチャーがあり、ルートを作成できるようになります。