smooksを使用してxmlをあるフォーマットから別のフォーマットに変換しようとしています。ソースXMLを以下に示しているもののようになります。Smooks複数の挿入ポイントを使用したXML-XML変換
<page>
<responsedata>
<header>
...
<ref_no>xyz</ref_no>
</header>
<detail>
<acc_no>x</acc_no>
<ac_ccy>y</ac_ccy>
<avail_bal>z</avail_bal>
</detail>
<detail>
...
</detail>
</responsedata>
</page>
私はこのような何かに上記tranformしようとしています。このため
<detail>
<ref_no>xyz</ref_no>
<accounts>
<account>
<Account_no>x</Account_no>
<Curr>y</Curr>
<Avail_Bal>z</Avail_Bal>
</account>
<account>
...
</account>
</accounts>
</detail>
を、私は次のSmooksの設定を使用:
<ftl:freemarker applyOnElement="responsedata">
<ftl:template><!--<?xml version="1.0" encoding="UTF-8" ?>
<DETAIL>
<Ref_No>????<Ref_No> //how to bring the ref_no here
<Accounts>
<?TEMPLATE-SPLIT-PI?>
</Accounts>
</DETAIL>
--></ftl:template>
</ftl:freemarker>
<ftl:freemarker applyOnElement="detail">
<ftl:template><!--
<Account>
<Account_no>${detail.acc_no}</Account_no>
<Curr>${detail.ac_ccy}</Curr>
<Avail_Bal>${detail.avail_bal}</Avail_Bal>
</Account>
--></ftl:template>
</ftl:freemarker>
参照番号を除いて、私は他のすべてを変えることができます。これを達成するための提案は非常に高く評価されます。
複数行のコードにマークを付ける場合は、行ごとに 'を使用するのではなく、スペースを使用するか{}ボタンをクリックすることができます – n00begon