Aufgaben aus XSLT und XPath - Runde drei
(Auszug aus "XSLT 2.0 & XPath 2.0" von Frank Bongers, Kapitel 3.)
Die Lösungen finden Sie unter Lösungen zu den Aufgaben.
- Aufgabe 1: Benannte Templates
In einem in XML vorliegenden Artikel soll am Ende jedes Kapitels mittels eines als Subroutine fungierenden benannten Templates eine formatierte Trennlinie eingefügt werden.
Benötigte Datei: aufgaben/kap03/a1-artikel.xml
- Aufgabe 2: Variablen und Parameter
Die vorige Lösung wird erweitert. Nun soll am Ende eines Kapitels als Trenner »Ende von Kapitel 1« etc. ausgegeben werden. Da bereits ein benanntes Template vorliegt, das den Trenner einfügt, soll es auch diese Arbeit übernehmen. Dem benannten Template muss das aktuelle Kapitel mitgeteilt werden. Dies geschieht durch die Übergabe eines Parameterwerts.
Benötigte Datei: aufgaben/kap03/a2-artikel.xml
- Aufgabe 3: Laufzeitidentifier
Mittels generate-id() soll ein Inhaltsverzeichnis mit Sprunglinks der Ausgabe eines in XML vorliegenden Artikels vorangestellt werden.
Benötigte Datei: aufgaben/kap03/a4-generate-id.xml
- Aufgabe 4: Unparsed Entities
Eine Variation der Datei mit Buchverkäufen soll hier noch mal hergenommen werden, um zu zeigen, dass man ihr noch ein paar zusätzliche Features abgewinnen kann. Es liegen eine XML-Datei, Grafiken und die DTD vor.Abbildung: Buchdatei mit Illustrationen.
In der DTD sind Buchtitel-Grafiken (buch1.gif bis buch10.gif) als unparsed Entities deklariert. Diese sollen in Zusammenhang mit den Buchinformationen ausgegeben werden.
Benötigte Dateien: aufgaben/kap03/a5-buchdaten.xml, buch1.gif-buch10.gif
- Aufgabe 5: Unparsed Entities
In der XML-Datei ist je Buch ein Element <verkauf> vorhanden, das aktuelle Verkaufszahlen enthält. Die Zahl soll als Balkendiagramm umgesetzt werden, wozu ein HTML-<img> (Grafik: rot.gif) dient, dessen width-Attribut entsprechend gesetzt wird.
Benötigte Dateien: wie eben; zusätzlich rot.gifAbbildung: Buchdatei mit Balkendiagramm.
- Aufgabe 6: Die Funktion document()
Zur gleichen Datei von Aufgabe 5 soll ein weiteres Dokument hinzugenommen werden, das Inhaltsangaben zu den Büchern der Liste enthält. Diese Inhaltsangaben sollen bei den jeweiligen Büchern eingefügt werden. Hierbei muss das externe Dokument mittels document() einbezogen und in eine Variable abgelegt werden.
Benötigte Dateien: aufgaben/kap03/a6-buchdaten.xml, aufgaben/kap03/a6-buchdaten-inhalte.xml
<< zurück | vor >> |
Tipp der data2type-Redaktion: Zum Thema XSLT bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an: |
Copyright © Galileo Press, Bonn 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "XSLT 2.0 & XPath 2.0 ― Das umfassende Handbuch" denselben Bestimmungen wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.
Galileo Press, Rheinwerkallee 4, 53227 Bonn