jürgi: XML-Datei alphabetisch sortieren

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>

____________________________________________________

  1. @@jürgi:

    nuqneH

    meine xml-datei sieht so aus:

    Und dein XSL sieht wie aus?

    Qapla'

    --
    Bildung lässt sich nicht downloaden. (Günther Jauch)
    1. @@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>
      ____________________________

      1. 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

        1. 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