guida rapida alla visualizzazione di file XML con XSL
lo stile esteso
si può trasformare un file .XML applicando un file XSL semplicemente inserindo la riga
<?xml-stylesheet type="text/xsl" href="libri.xsl" ?>
ove il file libri.xsl ha questa struttura:
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'>
<xsl:output method="html" />
<xsl:template match="/">
<html><head><title>I grandi toscani</title>
<h1>I grandi toscani del '300</h1>
<table><xsl:apply-templates /></table>
</body></html>
</xsl:template>
<xsl:template match="libro">
<tr><td><xsl:value-of select="autori/autore" /></td>
<td><xsl:value-of select="titolo" /></td>
<td><xsl:value-of select="edizione/luogo" /></td></tr>
</xsl:template>
</xsl:stylesheet>
ecco il risultato
e questo è il
file .XSL
Si noti che il template principale (root) contiene il codice HTML e richiama gli altri template
lo stile
Ovviamewnte si può applicare uno stile, con la consueta istruzione
<link rel="stylesheet" href="libri8.css" type="text/css" />
ecco il risultato
e questo è il
file .XSL
import
Si possono importare file esterni, cosa molto utile per non duplicare codice e per le intestazioni:
<xsl:import href="intestazione.xsl"/>
<xsl:template match="/">
<xsl:apply-imports/>
ecco il risultato
e questi sono i file:
libriimport.xsl e
intestazione.xsl
sort
<xsl:for-each select="iToscani/libro">
<xsl:sort select="titolo"/>
<tr><td><xsl:value-of select="autori/autore" /></td></tr>
</xsl:for-each>
ecco il risultato
e questo è il
file .XSL
choose
<xsl:choose>
<xsl:when test="edizione/luogo = 'Arezzo'">
...
</xsl:when>
<xsl:otherwise>
...
</xsl:otherwise>
</xsl:choose>
ecco il risultato
e questo è il
file .XSL
e poi?
Devi studiare
XPath per individuare correttamente gli elementi.
Leggi l�introduzione a
XSLT per capire bene le trasformazioni.
La sintassi completa la trovi su W3Schools:
XSLT tutorial
Esempi li trovi su
XSLT.