17
Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Embed Size (px)

Citation preview

Page 1: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Xml/xslt :Extensible Stylesheet

Language Transformation

réalisé par: saÏd NAÏM

Page 2: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Introduction

La structure d’un document xsltles fondamentaux du xslt

Page 3: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Le xslt, ou eXtensible Stylesheet Language Transformation, est un langage centrale dans le monde de xml; le xslt prendre en entrée un document xml pour produire en sortie un autre document d’une autre format (xml, html, etc.);feuille de style est un fichier xml dont

l’extention est .xsl;le fonctionnement du xslt est fondé sur les

manipulations des modèles;

Page 4: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

La structure générale d’une feuille de style xslt

La structure de base utilise d’une feuille de style utilise un prologue puis un element xsl:stylesheet pouvant contenir des quelques atributs. Comme il est indiqué dans cet exemple :

Page 5: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

LES FONDAMENTENTAUX DE XSLT

xsl:stylesheet:

- cet élément doit-être l’élément racine du document xsl, il doit figurer juste après le prologue,- L’ utilisation de cet élément est de la forme:

Page 6: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

LES FONDAMENTENTAUX DE XSLT

xsl: output :

Cet élément est placé juste après l’élement racine de document permet de spécifier certains caractèristique de document de sortie. L’utilisation de cet élement est de la forme:

Page 7: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Xsl:template:

cet élement définit un modèle à appliquer à un noeud et à un cotextes spécifiques.L’utilisation de cet élément est de la forme:

Page 8: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

xsl:value-Of:

• Cet element nous permet d’inserer la valeur d’un élément dans une transformation, cet élément se évalué en fonction d’une expression.• Cet expresion peut correspond à un élément, à un attribut ou à tout autre élément contenant une valeur.Voici un exemple d’utilisation de cet élément:

Page 9: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

xsl:element:

• cet élément insère un nouvel élément dans la transformation . voici comment utiliser cet élément:

Ajout d’un élément

Page 10: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

xsl:attribute

• cet élément nous permet de dédfinir un attribut et l’ajouter au dernier élément actuellement ouvert dans le résultat de la transformation, son utilisation est de la forme:

Page 11: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Gestion d’une boucle

xsl:for-each

cet élément nous permet de créer une boucle dans laquelle sont appliquées des transformations.Voici comment utiliser cet élément:

Page 12: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Gestion d’une boucle

xsl:sort : cet élément nous permet de trier un ensemble des éléments. Il doit placé dans un élément xsl:for-each

Page 13: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Gestion des tests

xsl:if:

Cet élément permet la fragmentation du modèle dans certaines conditions. Il est possible de tester la présence d’un attribut, d’un élément, de savoir si un élément est bien le fis d’un autre, de tester les valeur des élément ou des attributs. L’utilisation de cet élément est de la forme:

Page 14: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Cet élément permet de définir une liste de choix et d'affecter à chaque choix une transformation différente. Chaque choix est défini par un élément xsl:when> et un traitement par défaut peut être spécifié grâce à l'élément xsl:otherwise. Exemple d'utilisation :

Xsl:choose

Page 15: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

Les variables et les paramètre

Xsl:variable:

L'élément xsl:variable sert à créer les variables dans XSLT. Il possède les attributs suivants : • name : cet attribut est obligatoire. Il spécifie le nom de la variable. • select : expression XPath qui spécifie la valeur de la variable.

Page 16: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

L'élément xsl:template peut être appelé indépendamment d'une sélection d'un nœud. Pour cela, il faut renseigner l'attribut name, et l'appeler à l'aide de l'élément xsl:call-template. Par exemple

xsl:call-template

Page 17: Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM

xsl:param et xsl:with-param

Les paramètres créés avec ces deux éléments sont habituellement utilisés dans les modèles nommés, que nous venons de voir. Ils permettent de passer des valeurs aux modèles. Un paramètre est créé avec l'élément <xsl:param>, et passé à un modèle avec l'élément xsl:with-param. Les deux ont deux attributs :