XSL: 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 2 3 | <xsl:for-each select="person[postanschrift/wohnort='Berlin']">
...
</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 2 3 4 5 6 7 8 9 10 | <table border="1">
<xsl:for-each select="geburtstage/person">
<xsl:sort select="gebdatum" order="ascending"/>
<tr>
<td><b><xsl:value-of select="name" /></b></td>
<td><b><xsl:value-of select="gebdatum" /></b></td>
<td><b><xsl:value-of select="@gebort" /></b></td>
</tr>
</xsl:for-each>
</table>
|