Мой XML-тег содержит много элементов, которые должны быть созданы как три разные группы с аналогичными (но разными) правилами сортировки.XSLT 2.0 - Двухэтапная сортировка
Это то, что я хочу получить:
<items>
<!-- Header - for-each sorting -->
<item name="something1_A"/>
<item name="something2_B"/>
<item name="something3_C"/>
<!-- Body - for-each-group sorting -->
<item name="something4_D"/>
<item name="something4_E"/>
<item name="something5_D"/>
<item name="something5_E"/>
<!-- Footer - for-each sorting -->
<item name="something6_F"/>
<item name="something6_G"/>
<item name="something6_H"/>
</items>
Первоначально заказ детали является случайным.
Первый сорт должен создать эти три разные части:: поместить все, что является заголовком сверху, все, что является нижним колонтитулом внизу, и сохранить все остальное, где оно находится. Я могу определить, должно ли что-то идти в заголовке, в теле или в нижнем колонтитуле, глядя на его окончание (значение после последнего подчеркивания).
Вторая сортировка должна работать по-разному на каждой из этих частей. (сортировка по элементам для верхнего и нижнего колонтитула, для групповой сортировки для тела).
Я знаю, как я могу сортировать заголовок, тело и нижний колонтитул (спасибо this answer), но не как их перемещать и сортировать по разным алгоритмам.
Вы имеете в виду пользовательскую сортировку? –
@NavinRawat Я не знаю, как правильно это назвать. Может быть, если бы я мог написать лучший 'select', у меня было бы три xsl: sort only, один для части. –