Najnowsze tutoriale tworzenie stron internetowych
 

XSLT - Transformacja


Przykład badania: Jak przekształcić XML do XHTML przy użyciu XSLT?

Szczegóły tego przykładu zostanie wyjaśnione w następnym rozdziale.


Poprawna deklaracja Style Sheet

Element główny, który deklaruje dokument, który ma być arkusz stylów XSL jest <xsl:stylesheet> lub <xsl:transform> .

Note: <xsl:stylesheet> i <xsl:transform> są całkowicie synonimami i albo mogą być używane!

Poprawny sposób zadeklarować arkusza stylów XSL zgodnie z zaleceniami W3C XSLT jest:

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

lub:

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

Aby uzyskać dostęp do XSLT elementów, atrybutów i cech musimy zadeklarować nazw XSLT w górnej części dokumentu.

Xmlns: xsl = „http://www.w3.org/1999/XSL/Transform” wskazuje na oficjalnej nazw W3C XSLT. W przypadku korzystania z tej przestrzeni nazw, należy także wersję atrybut = „1.0”.


Start z dokumentu XML Raw

Chcemy transform następujący dokument XML ("cdcatalog.xml") w XHTML:

<?xml version="1.0" encoding="UTF-8"?>
<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>

Viewing XML Files in IE, Chrome, Firefox, Safari, and Opera: Otwórz plik XML (kliknij na link poniżej) - dokument XML zostanie wyświetlony z korzenia kolorem i elementów podrzędnych (except in Safari) . Często jest to plus (+) lub minus (-) z lewej strony elementów, które można kliknąć, aby rozwinąć lub zwinąć strukturę elementu. Wskazówka: Aby wyświetlić surowego źródło XML kliknij prawym przyciskiem myszy na pliku XML, a następnie wybierz „View Source”!

Zobacz "cdcatalog.xml"


Utwórz arkusz stylów XSL

Następnie należy utworzyć arkusz XSL Style ("cdcatalog.xsl") z szablonem transformacji:

<?xml version="1.0" encoding="UTF-8"?>

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

<xsl:template match="/">
  <html>
  <body>
  <h2>My CD Collection</h2>
  <table border="1">
    <tr bgcolor="#9acd32">
      <th>Title</th>
      <th>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>

Zobacz "cdcatalog.xsl"


Połącz arkusz XSL styl do dokumentu XML

Dodaj odwołanie arkusza stylów XSL do dokumentu XML ("cdcatalog.xml") :

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>
<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>

Jeśli masz przeglądarkę zgodną XSLT będzie ładnie transform swój XML do XHTML.

Zobacz wyniki

Szczegóły powyższego przykładu zostanie opisane w kolejnych rozdziałach.