XML
XML KOULUTUSTA VUONNA 2008
Kysy myös tuotekohtaisia koulutuksia, kuten Altova XMLSpy tai Cladonia Exchanger.
Kurssit saatavilla kautta Suomen. Tule ja varaa oma koulutustapahtumasi !
IT-koulutuksen asiantuntijasi, Koulutus- ja konsultointipalvelu KK Mediat
XSL /XSLT muunnoksen suorittaminen XML-datalle - esimerkki
Tässä artikkelissa jatkamme aiemmin luomamme XML-esimerkin työstämistä ja käännämme XML-datan HTML-muotoon clientside-muunnoksen avulla.
Vaihe 1. Liitä XSL/XSLT-tyylimäärittely XML dokumenttiin. Tämä tapahtuu lisäämällä XML-tiedoston alkuun koodi:
<?xml-stylesheet type="text/xsl" href="projekti.xsl"?>
Muista samalla poista viittaus CSS-tiedostoon.
Vaihe 2. Luo uusi XML-tiedosto ja tallenna se nimellä projekti.xsl
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<!-- luodaan XHTML DOCTYPE ja PI tulosteeseen -->
<xsl:output version="1.0" omit-xml-declaration="no" method="xml" />
<xsl:output doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
method="xml" />
<!-- juurielementin template -->
<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fi" lang="fi">
<head>
<!-- noudetaan otsikon arvo suoralla viittauksella
otsikko-atribuuttiin -->
<title><xsl:value-of select="artikkelidata/dokumentti/@otsikko"/></title>
</head>
<body>
<h1>Esimerkki XML/XSL muunnoksesta</h1>
<!-- kutsutaan artikkelidata templatea-->
<xsl:apply-templates select="//artikkelidata" />
</body>
</html>
</xsl:template>
<!-- artikkelidatan template -->
<xsl:template match="artikkelidata">
<div style="width: 500;">
<!-- kutsutaan dokumentti templatea-->
<xsl:apply-templates select="dokumentti" />
</div>
</xsl:template>
<!-- dokumentti template -->
<xsl:template match="dokumentti">
<h1><xsl:value-of select="@otsikko"/></h1>
<em><xsl:value-of select="@kirjoittaja"/> /<xsl:value-of select="@pvm"/> </em>
<!-- kutsutaan kappale templatea-->
<xsl:apply-templates select="kappale" />
</xsl:template>
<!-- kappale template -->
<xsl:template match="kappale">
<p><xsl:value-of select="." /></p>
</xsl:template>
</xsl:stylesheet>
Vaihe 3. Testaa. Kun tarkastelet XML-tiedostoa selaimessasi, käyttäytyy se kuten mikä tahansa HTML/XHTML-sivu. Sen sijaan jos tarkastelet sivun lähdekoodia selaimessa, näkyy se edelleen XML-koodina. Tämä johtuu siitä, että muunnoksen suorittaa asiakkaan selain vasta sivua esitettäessä; lopputulos on verrattavissa esim. JavaScriptin käyttöön. Sen sijaan jos suoritat saman muunnoksen palvelimella (kts. esimerkkikoodi ASP ja XSLT-muunnoksesta) on lopputulos 100% XHTML-standardin täyttävä sivu lähdekoodia myöten; tässä tapauksessa palvelin suorittaa muunnoksen ja välittää käännetyn lopputuloksen asiakkaalle.
Käännöksen toimivuuteen vaikuttavat mm. tietokoneella oleva "järjestelmä XML-parserin" versio (etenkin palvelimella suoritettava muunnos) sekä selain (clientside muunnos; selaimet käyttävät joko järjestelmän XML-parseria tai omaa sisäänrakennettua parseriaan). Tästä syystä ainoastaan palvelimella suoritettavat XSL/XSLT-muunnokset ovat suositeltavia tuotantokäyttöön suunnatuissa ratkaisuissa..
Tutustu artikkelin muihin osiin:
»»» XML »»»XSL ja XSLT
»»» XML »»»XSL / XSLT muunnosten syntaksista
»»» XML »»»XSL / XSLT muunnos esimerkki
Tallenna tämä sivu kirjanmerkkeihin!