Лично я не думаю, что XSL-T подходит для такого рода вещей.Это язык преобразования XML, а не язык программирования для сортировки.
Я думаю, что было бы лучше использовать правильный инструмент для работы: используйте язык, такой как Java или C #, для создания XML в отсортированной форме,затем используйте XSL-T для его преобразования.
Если вы боретесь с этим, вам, вероятно, следует пересмотреть подход.