У меня есть XML-файл, содержимое которого я хочу отсортировать по порядку документа (в основном в том порядке, в котором элементы были выписаны).
В настоящее время я использую следующий код:
<xsl:template match="/Error">
<xsl:apply-templates>
<xsl:sort select="position()" order="descending" />
</xsl:apply-templates>
</xsl:template>
<xsl:template match="/Error/Warning">
<!-- etc -->
</xsl:template>
Пример XML (данные заменены для простоты чтения):
<Error>
<Warning data="stuff" timestamp="08:26:17 2010/08/01">CODE.1</Warning>
<Clear data="stuff" timestamp="08:26:36 2010/08/01">CODE.2</Clear>
<Warning data="stuff" timestamp="08:36:00 2010/08/01">CODE.3</Warning>
<Clear data="stuff" timestamp="08:36:56 2010/08/01">CODE.4</Clear>
<Warning data="stuff" timestamp="08:40:31 2010/08/01">CODE.5</Warning>
</Error>
Это, однако, дает странные результаты, так как кажется, что это не в каком-то определенном порядке!Любые идеи?
Удаление сортировки, кажется, заставляет ее работать должным образом - это будет надежно упорядочивать ее в порядке записи или это не гарантируется?