Hallo Birgit,
es gibt grundsätzlich zwei Möglichkeiten mit XSL auf XML Daten zuzugreifen.
Verzeih, ich habe die exakten Fachausdrücke dafür vergessen :-)
a) die Tiefen-Variante
Die hast Du mit den for-each Schleifen gewählt. Dabei wird die Reihenfolge sehr fest gewählt.
b) die flache Variante
Hier bestimmen Templates wie für jedes Element vorgegangen wird.
Also ist es grundsätzlich schonmal völlig unabhängig von der Reihenfolge der auftretenden Elemente in der XML Datei.
Das hier wäre z.b. für alle Elemente:
<xsl:template match="/">
....
</xsl:template>
Oder in diesem Template würden immer die Aktionen durchgeführt werden, wenn man auf das Element namens Test stösst.
<xsl:template match="TEST">
...Aktionen...(z.b. HTML Code oder auch for-each Schleifen)
</xsl:template>
Für Dein Problem scheint mit die Variante b) wesentlich effizienter zu sein.
Grüße
-Marco-