Hallo,
************************************************
<verzeichnisse>
<verzeichnis>
<vname>Cordner</vname>
<file>
<fname>Datei in C-Ordner</fname>
</file>
<verzeichnis>
<vname>C-Subfolder</vname>
<file>
<fname>B-Datei in C-Subfolder</fname>
</file>
<file>
<fname>A-Datei in C-Subfolder</fname>
</file>
</verzeichnis>
</verzeichnis>
<verzeichnis>
<name>Xordner</name>
</verzeichnis>
************************************************Es gibt also beliebig tief verschachtelte Verzeichnisse, deren Namen im Tag <vname> stehen.
Nicht in deinem XML! (<name>Xordner</name>)
Das ist ein erster Entwurf der Datei "Verzeichnisse.xsl".
<xsl:template match="employee">
Es gibt aber kein solches Elemente in deinem XML. Auch ein kopiertes XSL sollte auf das eigene XML angepasst werden.
Hat jemand einen Tip für mich?
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" />
<xsl:template match="/">
<xsl:apply-templates select="verzeichnisse/verzeichnis">
<xsl:sort select="vname" />
</xsl:apply-templates>
</xsl:template>
<xsl:template match="verzeichnis">
[<xsl:value-of select="vname" />]xsl:text

</xsl:text>
<xsl:apply-templates select="file">
<xsl:sort select="fname" />
</xsl:apply-templates>
<xsl:apply-templates select="child::verzeichnis">
<xsl:sort select="vname" />
</xsl:apply-templates>
</xsl:template>
<xsl:template match="file">
xsl:text	- </xsl:text><xsl:value-of select="fname" />xsl:text

</xsl:text>
</xsl:template>
</xsl:stylesheet>
Ausgabe mit einem korrigierten XML:
[Aordner]
[Cordner]
- Datei in C-Ordner
[C-Subfolder]
- A-Datei in C-Subfolder
- B-Datei in C-Subfolder
[Xordner]
Grüße
Thomas