次の問題があります。解決策に 2 日間取り組みましたが、解決策が見つかりません。
珍しいレベル属性 (GDocs ではリストは余白でのみ表現されます) を持つリストがあり、XML を再構築せずにノードを再レベル化 (ソート) したいと考えています。
私の入力:
<lists>
<list margin="10">1</list>
<list margin="15">2</list>
<somethingelse/>
<list margin="33">3</list>
<list margin="72">4</list>
<list margin="15">5</list>
<list margin="64">6</list>
<list margin="72">7</list>
</lists>
この出力は問題ありません。
<lists>
<list level="1">1</list>
<list level="2">2</list>
<somethingelse/>
<list level="1">3</list>
<list level="3">4</list>
<list level="1">5</list>
<list level="2">6</list>
<list level="3">7</list>
</lists>
希望する出力 (2 つのノード間のレベル差は 1 のみにする必要があります)
<lists>
<list level="1">1</list>
<list level="2">2</list>
<somethingelse/>
<list level="1">3</list>
<list level="2">4</list>
<list level="1">5</list>
<list level="2">6</list>
<list level="3">7</list>
</lists>
これは XSLT 1.0 でも可能ですか?