XML から XML への変換を作成する必要があります。入力 XML ドキュメントには、1 つのメイン リストに変換したい (子リストを削除せずに) 多数の兄弟リスト (子リストを含む) が含まれています。言い換えれば、最初のリスト以降の各兄弟リストを抑制したいのですが、すべての子リストを保持します。
入力 XML ドキュメントの例を次に示します。
<back>
<index id="subject">
<title>Subject Index</title>
<index id="section">
<list id="index">
<item>apple</item>
<item>almond</item>
<item>american cheese</item>
<item>Avocado
<list id="index">
<item>Mexican</item>
<item>Chilian</item>
</list>
</item>
<item>asparagus</item>
<item>anchovie</item>
</list>
</index>
<index id="section">
<list id="index">
<item>banana</item>
<item>barley</item>
<item>bagel
<list id="index">
<item>sesame</item>
<item>plain</item>
<item>everything</item>
</list>
</item>
<list id="index">
<item>bean
<list id="index">
<item>green bean</item>
<item>navy bean</item>
</list>
</item>
</list>
</list>
</index>
</index>
そして、1 つのメイン リスト id="index" を使用して、上記を以下の構造に変換したいと考えています。リストの子は残す必要がありますが、兄弟リストは抑制する必要があります。
<back>
<index id="subject">
<title>Subject Index</title>
<list id="index">
<item>apple</item>
<item>almond</item>
<item>american cheese</item>
<item>Avocado
<list id="index">
<item>Mexican</item>
<item>Chilian</item>
</list>
</item>
<item>asparagus</item>
<item>anchovie</item>
<item>banana</item>
<item>barley</item>
<item>bagel
<list id="index">
<item>sesame</item>
<item>plain</item>
<item>everything</item>
</list>
</item>
<list id="index">
<item>bean
<list id="index">
<item>green bean</item>
<item>navy bean</item>
</list>
</item>
</list>
</list>
</index>