[an error occurred while processing this directive]

Formulare ganz einfach erstellen

Onlineformulare mit wenigen Mausklicks einfach und bequem selbst gemacht

Hier klicken und mehr erfahren

Schnelle Seiten gefällig?

Befreien Sie Ihre Webseiten mit wenigen Mausklicks von unnötigem Balast

Hier klicken und mehr erfahren

[an error occurred while processing this directive]

(Stand: 22.11.24, Adresse: http://www.grammiweb.de/anleitungen/ws_xml7.shtml)

 

Einführung in XML

Nun beginnen wir mit dem Erstellen einer XSL-Datei. Als Beispiel soll die Datei des zweiten Kapitels dienen. Hier ist es noch einmal:

<?xml-version="1.0"?>

<?xml-stylesheet type="text/xsl" href="Autoren.xsl"?>

<Personen>

<Autor ID="1"> <!-- Hier steht ein Kommentar. -->

<Vorname>Frank</Vorname>

<Nachname>Mueller</Nachname>

</Autor>

<Autor ID="2">

<Vorname>Stefan</Vorname>

<Nachname>Maier</Nachname>

</Autor>

</Personen>

Wir schauen uns nun zuerst einmal die Struktur der XML-Datei an und stellen fest, dass es im Root-Element "Personen" das Element "Autoren" gibt. Das wiederum enthält zwei Elemente mit dem Namen "Autor". Diese besitzen auch das Attribut "ID". Innerhalb der "Autor"-Elemente gibt es jeweils die Elemente "Vorname" und "Nachname", die Text beinhalten.

Ziel ist es nun, eine Tabelle mit den Überschriften "Vorname" und "Nachname" zu erstellen, in die automatisch die angegebenen Namen geladen werden.

Zuerst der Kopf der XSL-Datei:

<?xml version="1.0"?>

<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">

Dieser Kopf beginnt jede Seite.

Nun fangen wir mit dem sogenannten Root-Element an. Hier können wir erst mal ein Standartformat angeben. Des weiteren können wir auch schon die Überschriften "Vorname" und "Nachname" angeben, und mit dem Aufbau der Tabelle beginnen.

<xsl:template match="/">

<TABLE border="4pt"> <!-- hier wird eine Tabelle mit 4 pt Rahmenstärke geöffnet -->

<TR STYLE="font-size:16pt; color:red"> <!-- Eine Zeile der Tabelle wird geöffnet -->

<TD>Vorname</TD> <!-- Erster Block mit dem Inhalt Vorname wird gebaut -->

<TD>Nachname</TD> <!--Zweiter Block mit Nachname -->

</TR> <!-- Hier wird die erste Zeile der Tabelle beendet. -->

<xsl:apply-templates/> <!--Hier werden alle Elemente direkt unterhalb aufgerufen, also in diesem Fall "Personen" -->

</TABLE> <!-- Beenden der Tabelle, die oben aufgerufenen Elemente werden jedoch in die Tabelle eingefügt -->

</xsl:template>

Innerhalb der Tabelle wird das nächste Unterelement, "Personen", aufgerufen, für das wir nun ebenfalls eine Regel schreiben müssen. Da wir uns noch innerhalb der Tabelle befinden, können wir gleich die Tabellenbefehle benützen.

<xsl:template match="Personen"> <!-- Hier beginnen wir mit der Personenregel -->

<xsl:for-each select="Autor"> <!--Hier beginnt eine Schleife, alles was hier dazwischen steht, wird für jedes Autor-Element extra ausgeführt -->

<TR STYLE="font-size:16pt; color:blue">

<TD>

<xsl:value-of select="Vorname"/> <!-- Hier wird der Inhalt von dem Element "Vorname" ingesetzt -->

</TD>

<TD>

<xsl:value-of select="Nachname"/> <!-- und hier von dem zweiten Element -->

</TD>

</TR>

</xsl:for-each> <!-- Hier endet die Schleife -->

</xsl:template>

Nun ist es fast geschafft: Wir haben eine Schleife erstellt, die für jedes Autor-Element den Vornamen und den Nachnamen ausgibt. Der Vorteil ist hier, dass in der XML-Datei beliebig viele Autor-Elemente verzeichnet sein dürfen, solange sie die Struktur mit Vornamen und Nachnamen einhalten.

Nicht vergessen darf man am Schluss, das Stylesheet Tag wieder zu schließen.

</xsl:stylesheet>

Nur mit dem Internet Explorer 5:

Wenn man nun diese Datei als "Autoren.xsl" abspeichert und mit der XML-Datei in ein Verzeichnis stellt, kann man, indem man sie öffnet, das Beispiel anschauen.


Zurück Zurück zum Inhaltsverzeichnis Weiter

[an error occurred while processing this directive] [an error occurred while processing this directive]

© Grammiweb.de Internetlösungen. Alle Rechte vorbehalten. Stand: 22.11.2024
Seitenanfang - Sponsor werden - Datenschutz - Medien - Impressum - Werbung - Hilfe - Kontakt