8.3. ソースデータ項目をターゲットデータ項目にマッピング
Mappings パネルの左右にある Source パネルおよび Target パネルのすべての項目を展開します。
Source パネルからデータ項目をドラッグし、Target パネルの対応するデータ項目にドロップします。
たとえば、Source パネルから
customerNum
データ項目をドラッグし、Target パネルのcustId
データ項目にドロップします。マッピングは Mappings パネルに表示され、Source と Target の両方のデータ項目の詳細が下の詳細ペインに表示されます。
すべての基本的なマッピングが完了するまで、ソースデータ項目を対応するターゲットデータ項目にドラッグアンドドロップします。
starter
の例では、マッピングする残りのデータ項目は以下のようになります。Source ターゲット orderNum
orderId
status
priority
id
itemId
price
cost
quantity
amount
注記コレクション (リストまたはセットを含むデータ項目) を非コレクションデータ項目にマップしたりその逆にマップしたりすることは可能ですが、コレクションを他のコレクションにマップすることはできません。
Source パネルと Target パネルの両方で をクリックし、すべてのデータ項目がマッピングされているかどうかを素早く判別します。
マッピングされていないデータ項目のみが Source および Target パネルに表示されます。
starter
の例では、マッピングされていない残りの Target 属性はapprovalCode
およびorigin
です。blueprint.xml タブをクリックして、ルートのグラフィカル表示に戻ります。
-
File
Save をクリックします。
変換テストを作成した後、変換ファイルに対して JUnit テストを実行できます。詳細は、「変換テストファイルの作成と JUnit テストの実行」 を参照してください。この時点でこれを行うと、Console ビューに次の出力が表示されます。
ソース XML データの場合:
<?xml version="1.0" encoding="UTF-8"?> <ABCOrder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:java="http://java.sun.com"> <header> <status>GOLD</status> <customer-num>ACME-123</customer-num> <order-num>ORDER1</order-num> </header> <order-items> <item id="PICKLE"> <price>2.25</price> <quantity>1000</quantity> </item> <item id="BANANA"> <price>1.25</price> <quantity>400</quantity> </item> </order-items> </ABCOrder>
ターゲット JSON データの場合:
{"custId":"ACME-123","priority":"GOLD","orderId":"ORDER1","lineItems":[{"itemId":"PICKLE", "amount":1000,"cost":2.25},{"itemId":"BANANA","amount":400,"cost":1.25