Please suggest how can I achieve this with XSLT 2.0 My code is working fine for scenario-2 but not working for scenario -1
Source XML/Scenario - 1
<Root>
<ITEM1>
<KEY>00</KEY>
</ITEM1>
<ITEM2>
<SHL>
<KEY>S</KEY>
</SHL>
<REF>
<NAME>CN</NAME>
</REF>
<ITEM2>
<ITEM2>
<SHL>
<KEY>O</KEY>
</SHL>
</ITEM2>
<ITEM2>
<SHL>
<KEY>T</KEY>
</SHL>
<PO4>
<NUMBER>000010</NUMBER>
</PO4>
</ITEM2>
<ITEM2>
<SHL>
<KEY>I</KEY>
</SHL>
<LIN>
<NUMBER>000010</NUMBER>
</LIN>
</ITEM2>
<ITEM2>
<SHL>
<KEY>I</KEY>
</SHL>
<PO4>
<NUMBER>000020</NUMBER>
</PO4>
</ITEM2>
<ITEM2>
<SHL>
<KEY>I</KEY>
</SHL>
<LIN>
<NUMBER>000020</NUMBER>
</LIN>
</ITEM2>
<SE>
<TARE>0001</TARE>
</SE>
</Root>
Expected target XML should be same as it is - No changes expected
Source XML / Scenario-2
<Root>
<ITEM1>
<KEY>00</KEY>
</ITEM1>
<SHL>
<KEY>S</KEY>
</SHL>
<REF>
<NAME>CN</NAME>
</REF>
<ITEM2>
<SHL>
<KEY>O</KEY>
</SHL>
</ITEM2>
<ITEM2>
<SHL>
<KEY>T</KEY>
</SHL>
<PO4>
<NUMBER>000010</NUMBER>
</PO4>
</ITEM2>
<ITEM2>
<SHL>
<KEY>T</KEY>
</SHL>
<PO4>
<NUMBER>000020</NUMBER>
</PO4>
</ITEM2>
<ITEM2>
<SHL>
<KEY>T</KEY>
</SHL>
<PO4>
<NUMBER>000030</NUMBER>
</PO4>
</ITEM2>
<ITEM2>
<SHL>
<KEY>I</KEY>
</SHL>
<LIN>
<NUMBER>000010</NUMBER>
</LIN>
</ITEM2>
<ITEM2>
<SHL>
<KEY>I</KEY>
</SHL>
<PO4>
<NUMBER>000020</NUMBER>
</PO4>
</ITEM2>
<ITEM2>
<SHL>
<KEY>I</KEY>
</SHL>
<LIN>
<NUMBER>000030</NUMBER>
</LIN>
</ITEM2>
<SE>
<TARE>0001</TARE>
</SE>
</Root>
Expected Output as below : If ITEM2/PO4/NUMBER = ITEM2/LIN/NUMBER then rearrange the ITEM/SHL/[KEY='T'] & ITEM/SHL/[KEY='I'] as below
<Root>
<ITEM1>
<KEY>00</KEY>
</ITEM1>
<SHL>
<KEY>S</KEY>
</SHL>
<REF>
<NAME>CN</NAME>
</REF>
<ITEM2>
<SHL>
<KEY>O</KEY>
</SHL>
</ITEM2>
<ITEM2>
<SHL>
<KEY>T</KEY>
</SHL>
<PO4>
<NUMBER>000010</NUMBER>
</PO4>
</ITEM2>
<ITEM2>
<SHL>
<KEY>I</KEY>
</SHL>
<LIN>
<NUMBER>000010</NUMBER>
</LIN>
</ITEM2>
<ITEM2>
<SHL>
<KEY>T</KEY>
</SHL>
<PO4>
<NUMBER>000020</NUMBER>
</PO4>
</ITEM2>
<ITEM2>
<SHL>
<KEY>I</KEY>
</SHL>
<PO4>
<NUMBER>000020</NUMBER>
</PO4>
</ITEM2>
<ITEM2>
<SHL>
<KEY>T</KEY>
</SHL>
<PO4>
<NUMBER>000030</NUMBER>
</PO4>
</ITEM2>
<ITEM2>
<SHL>
<KEY>I</KEY>
</SHL>
<LIN>
<NUMBER>000030</NUMBER>
</LIN>
</ITEM2>
<SE>
<TARE>0001</TARE>
</SE>
</Root>