XML

XML-Daten und XSL-Stylesheet in eine HTML-Seite schreiben


Bei den bisherigen Beispielen wurden die XML-Daten und das Stylesheet jeweils in gesonderte Dateien geschrieben. Mit dem XML-Element, einer Microsoft-Erweiterung des HTML-Standards, ist es möglich, in eine HTML-Seite XML-Dateninseln zu schreiben, welche XML-Daten sowie Stylesheet aufnehmen. Damit kann XML auch dann eingesetzt werden, wenn HTML und XML in eine einzigen Datei geschrieben werden sollen, z.B. um Probleme beim E-Mailversand zu vermeiden. CSS-Stylesheet und Script werden in Elemente des HTML-Standards geschrieben (STYLE und SCRIPT).

XML-Daten

<XML ID="oBundesratData">
   <Bundesrat doctitle="Die Stimmenverteilung im Bundesrat">
      <Bundesland>
         <Name>Baden-Württemberg</Name>
         <Landeshauptstadt>Stuttgart</Landeshauptstadt>
         <Flaeche>35.751</Flaeche>
         <Einwohner>10,7</Einwohner>
         <Stimmen>6</Stimmen>
         <Internet>www.baden-wuerttemberg.de</Internet>
      </Bundesland>
      ...
   </Bundesrat>
</XML>

XSL-Stylesheet

<XML ID="oBundesratStyle">
   <xsl:stylesheet
      version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
      >
      <xsl:template match="Bundesrat">
      ...
      </xsl:template>
   </xsl:stylesheet>
</XML>

Beispiel: XML in einer HTML-Seite

In dem Beispiel wird nebenbei eine interessante Möglichkeit von XML demonstriert: Das XSL-Stylesheet iteriert die Datensätze zweimal. Beim ersten Mal wird ein Inhaltsverzeichnis generiert, welches nur die Namen der Bundesländer auflistet. Ein zweites Mal werden alle Datensätze für den eigenlichen Seiteninhalt iteriert. Für die Hyperlinks des Inhaltsverzeichnisses und für die entsprechenden Textmarken im Seiteninhalt wird bei beiden Vorgänge die XSL-Funktion generate-id verwendet, um programmatisch korrespondierende Hyperlinks und Textmarken zu erhalten. Auf diese Weise entsteht ein Inhaltsverzeichnis, wie man es aus Textverarbeitungssoftware kennt (z.B. MS Word). Versteckte Fehler in einzelnen Links werden auf diese Weise ausgeschlossen.

Die Quellcodeansicht der Beispielseite zeigt Ihnen direkt:

Valid XHTML 1.0! Valid CSS1! Level Triple-A conformance icon, W3C-WAI Web Content Accessibility Guidelines 1.0