XML-Datei alphabetisch sortieren
jürgi
- xsl
hallo beisammen!
ich bin xsl neuling und würde gerne eine xml-datei, die verschiedene sections (element: zimmerpflanze) enthält aufsteigend nach namen (element: name) alphabetisch sortieren und wieder als xml-datei ausgeben.
freu mich prima über hilfe! :-)
lg
der jürgi
meine xml-datei sieht so aus:
________________________________________________
<root>
<zimmerpflanze>
<name>j</name>
<abbildung href="file://Bilder/aloe_vera.jpg"/>
<beschreibung>Due...</beschreibung>
<bot_name>Aloe vera syn. barbadensis </bot_name>
<pflegetipps>
<ul>
<li>Die Aloepflanze steht gerne in der vollen Sonne, im Sommer auch im Garten oder auf der Terrasse.</li>
<li>Nur mäßig gießen, lange Trockenperioden werden gut vertragen.</li>
<li>Bei Bedarf in Kakteenerde umtopfen.</li>
</ul>
</pflegetipps>
</zimmerpflanze>
<zimmerpflanze>
<name>b</name>
<abbildung href="file://Bilder/aloe_vera.jpg"/>
<beschreibung>Die Echte Aloe ist ein Liliengewächs. Sie zählt zu der Gruppe der Sukkulenten, deren Kennzeichen die fleischigen Blätter und Triebe sind. In diesen können sie...</beschreibung>
<bot_name>Aloe vera syn. barbadensis </bot_name>
<pflegetipps>
<ul>
<li>Die Aloepflanze steht gerne in der vollen Sonne, im Sommer auch im Garten oder auf der Terrasse.</li>
<li>Nur mäßig gießen, lange Trockenperioden werden gut vertragen.</li>
<li>Bei Bedarf in Kakteenerde umtopfen.</li>
</ul>
</pflegetipps>
</zimmerpflanze>
<zimmerpflanze>
<name>z</name>
...
</root>
____________________________________________________
@@jürgi:
nuqneH
meine xml-datei sieht so aus:
Und dein XSL sieht wie aus?
Qapla'
@@jürgi:
nuqneH
»» meine xml-datei sieht so aus:
Und dein XSL sieht wie aus?
Qapla'
ups, da hab ich doch was vergessen! ;-)
die sieht bis jetzt so aus:
____________________________
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" />
<xsl:template match="/">
<xsl:for-each select="zimmerpflanze/name">
<xsl:sort select="name" order="ascending" data-type="text" />
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
____________________________
Hallo jürgi,
verwende diesen Ansatz:
<xsl:template match="root">
<root>
<xsl:apply-templates select="zimmerpflanze">
<xsl:sort select="name" data-type="text" order="ascending"/>
</xsl:apply-templates>
</root>
</xsl:template>
<xsl:template match="zimmerpflanze">
<xsl:copy-of select="."/>
</xsl:template>
Grüße,
Thomas
hallo thomas!
lieben dank für deine schnelle hilfe - funktioniert prima! :-)
hab noch nen schönen abend...
lg
der jürgi
Hallo jürgi,
verwende diesen Ansatz:
<xsl:template match="root">
<root>
<xsl:apply-templates select="zimmerpflanze">
<xsl:sort select="name" data-type="text" order="ascending"/>
</xsl:apply-templates>
</root>
</xsl:template><xsl:template match="zimmerpflanze">
<xsl:copy-of select="."/>
</xsl:template>
>
> Grüße,
> Thomas