Мне нужно иметь возможность хранить набор node в переменной, а затем после этого выполнять дополнительную обработку/сортировку. Все примеры, которые я видел, связаны с использованием XSL2 или расширений, ни один из которых не является действительно вариантом.
У меня есть список отелей в моем XML-документе, который можно сортировать/фильтровать, а затем выгружать по 5 за раз. Я нахожу, хотя я повторяю много логики, так как в настоящее время я не нашел хороший способ хранения node -sets в переменной xsl, а затем использовать xpath для их дальнейшей фильтрации/сортировки.
Это то, что мне нужно (извините за код, написанный на моей голове, поэтому не может быть на 100%):
<xsl:variable name="hotels" select="/results/hotels[active='true']" />
<xsl:variable name="3_star_or_less" select="/results/hotels[number(rating) <= 3]" />
<xsl:for-each select="3_star_or_less">
<xsl:sort select="rating" />
</xsl:for-each>
Есть ли у кого-нибудь пример того, как лучше всего это делать?