Académique Documents
Professionnel Documents
Culture Documents
Technologies XML
Awa DIATTARA
awa.diattara@ugb.edu.sn
08/02/2024
Technologies XML
Manipulations de données XML
2
XML et feuilles de style ?
3
XML et feuilles de style
◆Un document XML ne contient que des informations sur la
structure, il ne comporte aucune information relative à la façon
d’afficher les données.
5
Formatage avec CSS
◆CSS n’a pas été conçu pour formater du XML mais plutôt du
html.
9
La norme XSL
➢ Exemple de transformation
avec XSLT
14
XSLT
◆Exemple :
18
Structure d’une feuille de style XSL
◆XSL est une application XML, une feuille de style XSL est donc
un document XML. Il doit alors respecter les règles de syntaxe
de ce format.
◆Exemple
◆Dans tous les cas, c'est l’élément racine qui contiendra tous les
modèles (templates).
◆Action
o Dans un modèle, on peut retrouver deux types d’éléments :
▪ Des éléments XML bien formés pour représenter les
éléments HTML.
▪ Des éléments XSL.
• Exemples :
- L’élément xsl:value-of permet d’accéder au contenu
des éléments du document XML.
- L’attribut select permet d’indiquer le nom de
l’élément auquel on veut accéder. Ce nom est
donné à partir de l’élément courant (exemple :
select="bibliotheque/livre" pour accéder à livre qui
est un élément fils de bibliothèque)
- L’élément xsl:for-each pour tous les nœuds
demo.xml
demo.xsl
◆Exemple :
Résultat
29
Tri des données
◆Par défaut les données sont affichées dans l’ordre où elle ont été
entrées dans le document XML.
◆Exemple : tri décroissant par nom d’auteur, puis tri croissant par
titre.
… Résultat
…
DIATTARA Awa Technologies XML
Technologies XML
Filtrage des données
32
Filtrage de données
◆Opérateurs de Comparaison
o Les opérateurs disponibles sont : = , !=, <, <=, >, >=
o Exemple : extraire les livres dont le nom de l’auteur est
Christie
◆Fonctions
o Il est possible d’utiliser des fonctions XPath pour filtrer :
▪ starts-with (chaine1, chaine2) : retourne vrai si chaine1 commence par
chaine2.
▪ ends-with (chaine1, chaine2) : retourne vrai si chaine1 se termine par
chaine2.
▪ contains (chaine1, chaine2) : retourne vrai si chaine1 contient chaine2.
35
Expressions conditionnelles
◆<xsl:if> … </xsl:if>
o Syntaxe :
◆<xsl:choose> … </xsl:choose>
o Syntaxe
◆Exemples
38
Plusieurs modèles
Résultat