Améliorons le format de sortie, et essayons de générer du HTML:
| feuille3.xsl | appliquée sur atomes.xml --> résultat |
<?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" encoding="iso-8859-1"/> </xsl:stylesheet> |
<?xml version="1.0" encoding="iso-8859-1" ?>
hydrogène
H
1
1
.....
|
| feuille4.xsl | appliquée sur atomes.xml --> résultat |
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="classification_atomique">
<html><body>
<xsl:apply-templates/>
</body></html>
</xsl:template>
<xsl:template match="atome">
<p>
<xsl:apply-templates/>
</p>
</xsl:template>
</xsl:stylesheet>
|
<html>
<body>
<p>
hydrogène
H
1
1
</p>
<p>
hélium
He
2
4
gaz rare
....
|
La feuille3 spécifie que le document produit sera conforme à xml avec un codage latin1.
La feuille 4 spécifie que le document produit sera conforme à html et définit les tags html à générer. Remarquons que seules les balises préfixées par le namespace xsl sont interprétées par le processor XSL.
<xsl:output [method="xml|html|text|..."]
[encoding="codage"] [indent="yes|no"] />
définit le format du document produit, avec éventuellement
l'indentation adéquate.
| feuille4b.xsl | appliquée sur atomes.xml --> résultat |
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:strip-space elements="atome"/>
<xsl:template match="classification_atomique">
<html><body>
<xsl:apply-templates/>
</body></html>
</xsl:template>
<xsl:template match="atome">
<p>
<xsl:apply-templates/>
</p>
</xsl:template>
</xsl:stylesheet>
|
<html> <body> <p>hydrogèneH11</p> <p>héliumHe24gaz rare</p> <p>lithiumLi37métal alcalin</p> <p>bérilliumBe49métal alcalino-terreux</p> <p>boreB511non métal</p> <p>carboneC612non métal</p> <p>azoteN714non métal</p> <p>oxygèneO816non métal</p> <p>fluorF919non métal</p> <p>néonNe1020gaz rare</p> <p>sodiumNa1123métal alcalin</p> <p>magnésiumMg1224métal alcalino-terreux</p> <p>aluminiumAl1327autre métal</p> <p>siliciumSi1428non métal</p> <p>argonAr1840gaz rare</p> </body> </html> |
Les textes blancs et équivalent (whitespace character #x20 #x9 #xD #xA) sont éliminés.
<xsl:strip-space elements="liste_d_éléments"
/>
<xsl:preserve-space elements="liste_d_éléments"
/>
xsl:strip-space (inversement xsl preserve-space) indique dans
le document source quel sont les sous-arbres de racine figurant
dans la liste_d_éléments, où sont éliminés
(resp. préservés) les éléments "text
à blanc".