Présentation
Présentation du langage XSL
Le langage XSL est composé des langages XSLT (eXtensible Stylesheet Transformation) et XSL/FO (eXtensible Stylesheet Formatting Objects).
XSL (eXtensible StyleSheet Language) est un langage permettant de définir des feuilles de style pour les documents XML au même titre que les CSS (Cascading StyleSheets) pour le langage HTML.
Toutefois, contrairement aux CSS, XSL permet aussi de retraiter un document XML afin d'en modifier totalement sa structure, ce qui permet à partir d'un document XML d'être capable de générer d'autres types de documents (PostScript, HTML, Tex, RTF, ...)
ou bien un fichier XML de structure différente.
Ainsi la structuration données (définie par XML) et leur représentation (définie par un langage tel que XSL) sont séparées.
Cela signifie qu'il est possible à partir d'un document XML de créer des documents utilisant différentes représentations (HTML pour créer des pages web, WML pour les mobiles WAP, ...).
Ce document intitulé « XML - Mise en page avec les feuilles de style XSL » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Ainsi la structuration données (définie par XML) et leur représentation (définie par un langage tel que XSL) sont séparées.
Cela signifie qu'il est possible à partir d'un document XML de créer des documents utilisant différentes représentations (HTML pour créer des pages web, WML pour les mobiles WAP, ...).
Ce document intitulé « XML - Mise en page avec les feuilles de style XSL » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
En fait, le XSL se divise en deux langages distinct suivant la présentation choisie.
D'une part le XSLT (T pour Transformation) qui est un langage de transformation de document XML en un autre document XML, généralement du Html, pour être visible sur le Web et , d'autre part, le langage XLS/FO (FO pour Formatting Objects) permétant de spécifier une sémantique de formatage qui créera une version papier, PDF, Wap (téléphone), PALM, ou tout autre format.
Cette spécification divise donc le XSL en deux langages: le XSLT et le XSL/FO.
Le XSLT
Le vocabulaire d'XSLt permet entre autre de :
- sélectionner un élément du fichier XML (xsl:value-of select="chemin")
- réaliser des boucles et afficher toutes les données (xsl:for-each select="chemin")
- trier les données du fichier XML (xsl:for-each order-by="+balise")
- filtrer les données du fichier XML (xsl:for-each select="chemin[balise='nom']")
- générer du texte (xsl:text)
- effectuer des tests (xsl:if) ou des choix (xsl:choose et xsl:when)
- utiliser du Javascript (Appel du XML Parser "XMLDOM" -> parser:analyseur)
Le XSL/FO
Le langage de formattage des données (XSL/FO), permet de définir la mise en page (affichage de texte ou de graphiques) de ce qui a été créé par XSLT. XSL/FO permet de formatter le résultat, afin d'en faire une représentation visuelle (papier, écran, ...).