Public visé
Concepteurs et développeurs d’applications, architectes logiciels, chefs de projets.
Prérequis
Connaissances de base en XML et de la syntaxe HTML.
Objectifs pédagogiques
À l’issue de la formation, le participant sera en mesure de :
- Réaliser des feuilles de style à l’aide des langages XSL-T et XPath
- Manipuler des données et naviguer au sein de documents XML
- Générer des documents PDF à l’aide du langage XSL-FO
- Générer des images et des interfaces graphiques à l’aide du format SVG
Programme
Introduction au contexte de XSL et XPath
- Besoins par rapport à l’utilisation de la technologie XML
- Technologie CSS pour la présentation, limites de CSS
- Introduction à XSL, XSL-T, XSL-FO et SVG
- Introduction à Xpath. Principes et mécanismes de base
- Parseur XML et processeur XSL. Support par les navigateurs Web
- Mise en œuvre des technologies XSL
Le langage d’interrogation : XPath
- Expressions XPath. Interrogation d’un document XML
- Axes et vecteurs de recherche
- Revue de quelques expressions simples
- Sélection d’éléments/nœuds, de jeux de nœuds et d’attributs dans un arbre XML
- Opérateur de localisation
- Équation d’égalité et de relation, opérateurs booléens. Opérations numériques
- Fonctions standard et extensions des processeurs
Travaux pratiques : Écriture et tests d’expressions XPath
Le langage de transformation : XSL-T
- Structure d’une feuille de style XSL-T, traitement du processeur XSL-T
- Namespaces et éléments XSL racine
- Formats de sortie : vocabulaires XML, HTML, X-HTML ou texte
- Utilisation d’expressions XPath
- Nœuds et jeux de nœuds
- Modèle de traitement : les templates
- La syntaxe du langage XSL-T, les types de données, les structures de contrôle
- Notions de variables et de paramètres
- Génération d’éléments et d’attributs
- Invocation déclarative ou impérative des traitements
- Récupération d’éléments et de contenu
- Analyse du comportement d’un processeur XSL-T
- Optimisation des recherches de nœuds
- Traitement des erreurs
Travaux pratiques : Composition de différents types de feuilles de style XSL-T
XSL-T, fonctionnalités avancées
- Écriture de fonctions : appels simples et récursifs
- Structure modulaire des feuilles de style
- Les design patterns : Fill-in-the-blank, Navigational, Rule-based, Computational
- Import et inclusion de feuilles de style avec passage d’arguments
- Création de librairies réutilisables
- Modularité et héritage
- Transformations basées sur des sources multiples
- Générations de groupes de documents
- Spécificités de certains processeurs
- Travail sur des espaces de noms hétérogènes
- Dynamisation XSL de documents bureautiques : Microsoft Office (Open XML), Open Office (Open Document)
Travaux pratiques : Création de feuilles de style modulaires et imbriquées, avec de multiples structures en entrée et génération de plusieurs documents en sortie. Création de documents MS Office par XSL
La boîte à outils du développeur
- Lancement de transformations en ligne de commande
- Utilisation de divers processeurs (XT, Saxon, Xerces, MSXml…)
- Écriture de script de transformation avec Ant
- Gestion de site Web
Travaux pratiques : Mise en place d’un environnement de gestion de site Web basé sur XML
XSL-T 2.0 et 3.0, X-PATH 2.0 et 3.0
- Nouveautés : fonctions, expressions, opérations, tris, fallbacks et traitements des erreurs
- Nouveaux types de données supportés
- Différences de traitement
- Création d’arbre résultat, d’une séquence de nœuds ou de valeurs
- Requêtes XPath avec expressions régulières
- Les fonctions et opérateurs sur les numériques
- Les fonctions sur les chaînes de caractères
- Les fonctions et les opérations sur les dates
Travaux pratiques : Manipulation et navigation d’arbres XML
SVG pour les interfaces graphiques et la création d’images
- SVG, Scalable Vector Graphics. Les enjeux des langages vectoriels. Avantages de SVG sur Flash
- Utilisation côté serveur et côté client
- Environnements d’édition et d’utilisation : navigateurs…
- Structure de document
- Les systèmes de coordonnées et le dimensionnement. Transformation du système de coordonnées
- Les formes de base. Les styles. Les courbes et les chemins. Motifs et dégradés. Texte et internationalisation
- Masquage et découpe
- Filtrage
- Animation, interaction et scripts
Travaux pratiques : Création de feuilles de style permettant de générer des documents SVG. Génération de pages HTML contenant des graphes
XSL-FO pour la génération de documents papier
- XSL-FO, Formatting Objects
- Besoins et objectifs de XSL-FO. Introduction au langage
- Solutions et implémentations disponibles
- Exemple à partir du projet FOP de Apache.org
- Initialisation, définition de modèles de pages
- La zone de contenu, dimensions des régions, séquences des pages
- Inclusion de graphiques au format SVG
- Génération du résultat
Travaux pratiques : Création de feuilles de style combinant XSL-T et XSL-FO pour générer des sorties en PDF. Génération d’un rapport contenant des images au format SVG
Modalités d’évaluation
Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de QCM, mises en situation, travaux pratiques. Le participant complète également un test de positionnement en amont et en aval pour valider les compétences acquises.