У меня есть следующее XML:
<root>
<node>
<prop>a</prop>
<amount>10</amount>
</node>
<node>
<prop>a</prop>
<amount>20</amount>
</node>
<node>
<prop>b</prop>
<amount>15</amount>
</node>
<node>
<prop>b</prop>
<amount>25</amount>
</node>
<node>
<prop>a</prop>
<amount>17</amount>
</node>
</root>
Я хочу сгруппировать узлы в сегменты в соответствии с их prop
:
<root>
<segment>
<prop>a</prop>
<node>
<amount>10</amount>
</node>
<node>
<amount>20</amount>
</node>
</segment>
<segment>
<prop>b</prop>
<node>
<amount>15</amount>
</node>
<node>
<amount>25</amount>
</node>
</segment>
<segment>
<prop>a</prop>
<node>
<amount>17</amount>
</node>
</segment>
</root>
, но, как вы можете видеть последний «а» узел должен быть помещен в другой segment
- это потому, что три «а» узла не являются смежными. Когда я пытаюсь сгруппировать их, все «а» узлы объединяются. Есть ли способ сгруппировать их, как указано в примере?