Filtern und Sortieren#
Lernziel#
In dieser Station lernen Sie, wie Sie Informationen filtern und sortieren.
Handlungsanweisungen#
- Aufgaben:
Geben Sie alle CDs sortiert nach dem Bandnamen aus.
XSL: Filtern#
Neben den Bedingungen, die Sie schon kennengelernt haben, können Sie auch Informationen durch XPath, also durch die Pfadangaben, filtern. Hier ein Beispiel:
1<xsl:for-each select="person[postanschrift/wohnort='Berlin']">
2...
3</xsl:for-each>
In diesem Fall werden nur solche Datensätze ausgewählt, die als Wohnort „Berlin“ beinhalten.
XSL: Sortieren#
Manchmal ist es nützlich, wenn Sie die Ausgabe nach den Inhalt eines bestimmten Elementes sortieren. Die Syntax sieht so aus:
1<xsl:sort select="irgendein_tag" order="ascending"/>
Der Befehl für das Sortieren lautet: xsl:sort. Durch das Attribut select, wird das Element angegeben, nach dem Sortiert werden soll. Das Attribut order steht für die Sortierreihenfolge.
Mögliche Attribut-Werte:
ascending = Aufsteigend
descending = Absteigend
Außerdem gibt es auch noch ein Attribut case-order, das die Optionen
upper-first = Großbuchstaben zuerst
lower-first = Kleinbuchstaben zuerst
Beispiel:
1<table border="1">
2<xsl:for-each select="geburtstage/person">
3 <xsl:sort select="gebdatum" order="ascending"/>
4 <tr>
5 <td><b><xsl:value-of select="name" /></b></td>
6 <td><b><xsl:value-of select="gebdatum" /></b></td>
7 <td><b><xsl:value-of select="@gebort" /></b></td>
8 </tr>
9 </xsl:for-each>
10 </table>