XSLT-konvertering

Eksempelstudie: Hvordan man bruger XSLT til at konvertere XML til XHTML.

Vi vil forklare detaljerne i dette eksempel i næste afsnit.

Korrekt stilskabelseserklæring

At erklære dokumentet som rod-elementet for en XSL-stilskabelse er <xsl:stylesheet> eller <xsl:transform>.

Bemærk: <xsl:stylesheet> og <xsl:transform> er fuldstændigt synonymer og kan bruges på samme måde!

Ifølge W3C's XSLT-standard er den korrekte metode til at deklarere en XSL-stilskabelse:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

eller:

<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

For at få adgang til XSLT's elementer, egenskaber og egenskaber, skal vi deklarere XSLT-nøstespaces i dokumentets top.

xmlns:xsl="http://www.w3.org/1999/XSL/Transform" peger på den officielle W3C XSLT-nøstespace. Hvis du bruger denne nøstespace, skal du inkludere egenskaben version="1.0".

Start med en oprindelig XML-dokument

Vi skal nu konvertere følgende XML-dokument ("cdcatalog.xml") til XHTML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
  <cd>
    <titel>Empire Burlesque</titel>
    <artist>Bob Dylan</artist>
    <land>USA</land>
    <firma>Columbia</firma>
    <pris>10.90</pris>
    <år>1985</år>
  </cd>
.
.
.
</catalog>

Se XML-filen i Internet Explorer og Firefox:

Åbn XML-filen (normalt ved at klikke på et link) - XML-dokumentet vises som farvelagt kode med rod- og underelementer. Klik på plus- eller minus-tegnet til venstre for elementet for at udvide eller indskrænk strukturen. For at se det oprindelige XML-kilde (uden plus- og minus-tegn), vælg "Vis sidekildekode" i browserens menu.

Se XML-filen i Netscape 6:

Åbn XML-filen, og klik derefter højre på XML-filen og vælg "Vis sidekildekode". XML-dokumentet vises som farvelagt kode med rod- og underelementer.

Se XML-filen i Opera 7:

Åbn XML-filen, og klik derefter højre på XML-filen og vælg "Fremhæv"/"Vis kildekode". XML-dokumentet vises som ren tekst.

Se "cdcatalog.xml".

Opret XSL-stilskema

Opret derefter et XSL-stilskema med en konverteringstemplate ("cdcatalog.xsl"):

<?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>Min CD-samling</h2>
    <table border="1">
    <tr bgcolor="#9acd32">
      <th align="left">Title</th>
      <th align="left">Artist</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>

Se "cdcatalog.xsl"

Koble XSL-stilskemaet til XML-dokumentet

Tilføj XSL-stilskemaet ("cdcatalog.xml") til XML-dokumentet:

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>
<catalog>
  <cd>
    <titel>Empire Burlesque</titel>
    <artist>Bob Dylan</artist>
    <land>USA</land>
    <firma>Columbia</firma>
    <pris>10.90</pris>
    <år>1985</år>
  </cd>
.
.
.
</catalog>

Hvis din browser er kompatibel med XSLT, vil den uden problemer konvertere din XML Konverter til XHTML.

Se resultaterne.

Vi vil forklare detaljerne i eksemplerne i næste afsnit.