XSLT - Auf dem Server
- Previous Page XSLT on Client Side
- Next Page XSLT Edit XML
Da nicht alle Browser XSLT unterstützen, gibt es eine andere Lösung, die Konvertierung von XML in XHTML auf dem Server durchzuführen.
Cross-Browser-Lösung
In den vorherigen Kapiteln haben wir erklärt, wie man XSLT verwendet, um die Konvertierung von XML in XHTML im Browser durchzuführen. Wir haben ein JavaScript erstellt, das den XML-Parser zur Konvertierung verwendet. Die JavaScript-Lösung funktioniert nicht auf Browsern ohne XML-Parser. Um XML-Daten für alle Arten von Browsern geeignet zu machen, müssen wir die XML-Dokumente auf dem Server konvertieren und sie als XHMTL an den Browser senden.
Das ist einer der Vorteile von XSLT. Eines der Designziele von XSLT ist es, die Daten auf dem Server von einem Format in ein anderes zu konvertieren und lesbare Daten für alle Arten von Browsern zurückzugeben.
XML-Datei und XSL-Datei
Sehen Sie sich das hier vorgestellte XML-Dokument in den vorherigen Kapiteln an:
<?xml version="1.0" encoding="ISO-8859-1"?> <catalog> <cd> <title>Empire Burlesque</title> <artist>Bob Dylan</artist> <country>USA</country> <company>Columbia</company> <price>10.90</price> <year>1985</year> </cd> . . . </catalog>
Betrachten Sie diese XML-Datei.
sowie die beiliegenden XSL-Stiltabellen:
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" <xsl:template match="/"> <html> <body> <h2>Meine CD-Sammlung</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">Titel</th> <th align="left">Künstler</th> </tr> <xsl:for-each select="catalog/cd"> <tr> <td><xsl:value-of select="title" /></td> <td><xsl:value-of select="artist" /></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>
Bitte beachten Sie, dass diese XML-Datei keine Referenz auf die XSL-Datei enthält.
Wichtig:Diese Zeile zeigt, dass XML-Dateien mit mehreren verschiedenen XSL-Stilblättern transformiert werden können.
XML in XHTML auf dem Server konvertieren
Dies ist der Quellcode, um XML-Dateien auf dem Server in XHTML zu konvertieren:
<% XML laden set xml = Server.CreateObject("Microsoft.XMLDOM") xml.async = false xml.load(Server.MapPath("cdcatalog.xml")) XSL laden set xsl = Server.CreateObject("Microsoft.XMLDOM") xsl.async = false xsl.load(Server.MapPath("cdcatalog.xsl")) Transformationsdatei Response.Write(xml.transformNode(xsl)) %>
Hinweis:Falls Sie nicht wissen, wie man ASP schreibt, können Sie unsereASP Anleitung》
The first piece of code creates an instance of Microsoft's XML parser and loads the XML file into memory. The second piece of code creates another instance of the parser and loads the XSL file into memory. The last line of code uses the XSL document to transform the XML document and sends the result as XHTML to your browser. Task completed!
- Previous Page XSLT on Client Side
- Next Page XSLT Edit XML