入力 XML:
<Orders>
<Order>
<sample id="a">23435</sample>
.
.
.
<sample id="x">D123</sample>
.
.
<sample id="y">5346</sample>
<sample id="z"></sample>
.
.
</Order>
<Order>
<sample id="a">23435</sample>
.
.
.
<sample id="x">D345</sample>
.
.
<sample id="y">5346</sample>
<sample id="z">D217</sample>
.
.
</Order>
<Order>
<sample id="a">23435</sample>
.
.
.
<sample id="x">D1235</sample>
.
.
<sample id="y">5346</sample>
<sample id="z"></sample>
.
.
</Order>
要件:
attribute='z' を持つ 'sample' 要素に値がない場合、属性 'x' を持つ 'sample' 要素を 'ProId' にマップする必要があります。それ以外の場合、値がある場合は、「ProFeed」マップに値を渡すべきではありません。(「注文」要素ごとに、1 つの「ProFeed」マップを作成する必要があります)
出力:
[ProFeed={ProId="",Lang="eng",CatId="AU"},ProFeed={ProId="",Lang="eng",CatId="AU"},ProFeed={ProId="",Lang="eng",CatId="AU"}]
DataWeave 構成:
%input application/xml
%output application/java
.(some configuration code)
.
.
DataWeave コンポーネントの設定を手伝ってください。