Zum Inhalt springen

Websiteentwicklung: XSLT: Schleifen

Aus Wikibooks

XSLT kennt 2 Schleifenkonstrukte: xslt:for-each und xslt:for-each-group. XSLT in der Version 1 kennt nur xslt:for-each.

Beispiel mit for-each

[Bearbeiten]

Gegeben ist folgendes XML-Dokument aus dem vorangegangenen Kapitel:

<?xml version="1.0" encoding="UTF-8"?>
<adressdatei>
  <adresse>
    <name>Hans Müller</name>
    <strasse>Hansastraße 5</strasse>
    <stadt>44555 Musterstadt</stadt> 
  </adresse>
  <adresse>
    <name>Peter Meier</name>
    <strasse>Testallee 23</strasse>
    <stadt>12345 Musterheim</stadt>
  </adresse>
  <adresse>
    <name>Markus Schmidt</name>
    <strasse>Am Mustergäßchen 42</strasse>
    <stadt>00700 Geheimstadt</stadt>
  </adresse>
</adressdatei>

Wendet man auf diese XML-Datei das folgende Skript an:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
        <xsl:template match="adressdatei">
                <xsl:for-each select="adresse">      
                        <xsl:value-of select="name"></xsl:value-of>
                </xsl:for-each>
        </xsl:template>
</xsl:stylesheet>

erhält man alle Namen aus der Adressdatei.