Manipulation d’XML avec XSL

Slides:



Advertisements
Présentations similaires
Introduction à XSLT Éric Laporte Institut Gaspard-Monge
Advertisements

Données structurées et XML
HTML Abda Anne Plan Présentation Structure Texte Listes Images Liens Tableaux Formulaires.
Introduction aux Web Services Partie 1. Technologies XML
XML.
Echanges de Données Informatisées LABOratoires-commanditaires
1 3.Langage XSL = XSLT + XSL-FO transformationFormatage.
Transformation de documents XML
Le langage de requêtes SPARQL SPARQL Protocol And RDF Query Language
Cours MIAGE Henry Boccon-Gibod 1 XML, langage de structuration documentaire Langage de transformation et langage d'interrogation.
Données structurées et XML
Cours 2 : Transformation de documents XML
Xpath XPath is a language for finding information in an XML document.
le langage les éléments
Les fonctions de XPath et XSLT
Domaines nominaux XSLT
Programmation et projet encadré
Tutoriel XSLT F. Sajous ERSS – 01/04/2005.
TP 3-4 BD21.
Laboratoire SAFARI , UQAM
JOME, un Composant Logiciel pour le Télé-Enseignement des Mathématiques via le WEB, Compatible OpenMath et MathML Laurent DIRAT OVE / I3S-UNSA.
CREATION DE FEUILLE DE STYLE pour structuré le document XML
XSL-FO THEORIE PRATIQUE.
PLAN CECIAA Origines du projet Objectifs Solutions Techniques
XSLT XSL : XSL : formatting objects - langage de formattage; XSLT : langage de transformation bas sur la spcificatioon Xpath (langage dadressage dans des.
UNIVERSITE CHOUAIB DOUKKALI Département des mathématiques
Introduction à DOM Maroua Bouzid
Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM.
Bienvenue! Qui suis-je? Webmestre depuis 1994 Café Internet en 1996 Commerce électronique Gestion de contenu web Marketing interactif.
Web Structurel
Introduction à la structuration des documents: les techniques M2: Gestion des connaissances.
Complément Le diagramme des classes
Notions sur le XML Réfs : manuel p 149. Introduction Le XML (eXtensible Markup Language) est un standard d'échange de données. Il fait partie comme le.
Xpath XML Path language par Yves Bekkers
XSLT Langage de transformation darbre par Yves Bekkers.
XML : concours d’acronymes ou futur standard ?
Rappel (très) succint d’éléments techniques (XML, DTD, XSL, PHP)
STAF 2X XSL/FO Glaus & Ruckstuhl Mars © Glaus & Ruckstuhl TECFA Programme du 18 et 19 mars Revision XML Introduction à XSL/FO (intérêts et.
XSLT : trier et mettre en valeur le contenu d’un document XML
1 Couplage dun langage de contrôle de formatage avec un système de formatage existant DEA ISC : 1 avril 2003 Fateh Boulmaiz
Projet de Master première année 2007 / 2008
Support des connaissances TP2 XSL-T
Arbres DOM et XML (OC informatique, EPFL). html head body table html headbody table tr td texte1texte2 tr td texte3texte4 Deux représentations d’un arbre.
XML Plan du cours Introduction au fichier XML
Données sous XML Stéphane Marchand-Maillet Groupe Viper Vision par Ordinateur et Multimédia CUI – Université de Genève
8 - XML Cours XML.
Le Langage XML Belkhir Abdelkader Laboratoire LSI USTHB
Les outils de base : XPath, XSL, XLink, XForms
PROGRAMMATION WEB FRONT-END.
XSLT : XML Stylesheet Language Transformation
XSL eXtensible Stylesheet Language Historique 1999: XSLT 1.0 et XPATH 1.0 : versions supportées par la plupart des outils depuis février 2007 XSLT 2.0.
ACCARY-BARBIER / CNAM - Cycle C ère partie : Technologies XML  CHAPITRE 1 : XML et DTD  CHAPITRE 2 : Schémas XML  CHAPITRE 3 : XPath.
XPath XML Path UP Web Année universitaire
XML Stylesheet Language
Programmation Web : Introduction à XML
Technologies web et web sémantique TP3 - XML. XML eXtensible Markup Language (langage extensible de balisage) – Caractéristiques: méta-langage = un langage.
Publication et Traitement avec XSL
MJ. Blin et M. CsernelPoleInfo31 XML et ses environnements Documents XML bien formés Prologue Arbre d'éléments Attributs Commentaires Entités internes.
 G. Gardarin Les outils de base: Publication avec XML 1. XPATH 2. XSLT 3. XSLFO 4. XLink, XForms, RSS, … 5. XML et la bureautique.
Soutenance du mémoire de synthèse
Module : Langage XML (21h)
Modélisation des documents: DTD et Schéma
Introduction à CSS Généralités. Introduction Beaucoup de documents XML sont destinés à être présentés. Les information du fichier seul (avec ou sans DTD)
Page 1 © Expert-IT s.a. - Développer des projets en XML Pratique.
eXtensible Markup Language. Généralités sur le XML.
XPath Intro 1 Notation 2 Exemples 3 Utilisations de XPath
Introduction à MathML Par Katia Larrivée UQO Le 18 mars 2004.
Introduction à SVG Scalable Vector Graphic. Informations ● Plus d'informations ici (draft, tutoriaux, outils... ): –
XSLT. Les documents XML peuvent avoir dans leur prologue une instruction de traitement xml-stylesheet. Cette instruction de traitement indique au navigateur.
1 Programmation Web Programmation WAMP/LAMP Premiers principes.
Transcription de la présentation:

Manipulation d’XML avec XSL Formation XML SANDRE

La manipulation de fichiers XML Directement avec un éditeur de texte Via la programmation deux librairies standards : DOM et SAX pour tous les langages de développement Nécessite de développer Avec un fichier XML ! Utilisation des technologies XSL … Formation XML/SANDRE

Principe de XSL XSL : eXtensible Stylesheet Language. HTML  CSS  XSL Un standard du W3C Un langage de feuille de style XML HTML  CSS  XSL Trois composantes de XSL : XSLT le langage pour transformer un XML XPath pour retrouver une information dans un XML XSL-FO est un langage pour formater un document XML Formation XML/SANDRE

XPATH le langage pour trouver l’information Une syntaxe pour définir une fraction d’un document XML Utilise des expressions pour naviguer dans des documents XML Contient une librairie standard de fonctions Un standard W3C. Formation XML/SANDRE

La terminologie XPath Les nœuds (nodes) Valeurs atomiques (Atomic values) Relations entre nœuds : Parent Enfant Siblings : nœuds qui ont le même parent Ancestors : le parent d’un nœud, le parent du parent,… Descendants : le fils d’un nœud, le fils du fils du noeud,… Formation XML/SANDRE

Sélection d’un noeud / Le nœud racine . Le nœud courant .. Le nœud // Principe : une sélection par répertoire ou « pas » Path expressions Exemples : /ReseauSurveillance/CdReseau /ReseauSurveillance/StationMesure/Analyse/DateAnalyse //@schemeAgencyID / Le nœud racine . Le nœud courant .. Le nœud // Tous les nœuds du nœud courant @ Les attributs * Tous les éléments @* Tous les attributs Formation XML/SANDRE

Prédicat ou comment sélectionner un noeud Permet de sélectionner un ou plusieurs nœuds répondant à un ou plusieurs critères Ajout du critère entre crochet dans l’expression path Utilisation des opérateurs « classiques » Exemples : /ReseauSurveillance/StationMesure[1] //Analyse[DateAnalyse="2005-03-23"] //Analyse[DateAnalyse="2005-03-23" and CdParametre="1340"]/Resultat Formation XML/SANDRE

Raffinements en XPath Un ensemble de fonctions intégrés floor(3.2)  3 substring(string,start,len) Last … Manipulation au sein de l’arbre Following-siblings::* ancestor-or-self::* Formation XML/SANDRE

XSLT, le langage de transformation Le principe : Définit un ensemble de nœuds (parts) du document source qu’il fusionne avec une template Parcourt le document source. Dès qu’il trouve le nœud, il appelle la template et produit le document résultat Utilisation de fonctions dédiés à l’affichage des valeurs atomiques d’un document source Formation XML/SANDRE

Exemple de fichier XSL Formation XML/SANDRE Déclaration du XSLT <xsl:stylesheet xmlns="http://www.rnde.tm.fr/francais/sa/xml/scenario/formation" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" > <xsl:output method="html" version="1.0" encoding="ISO-8859-1" indent="yes"/> <xsl:template match="/"> <html> <body> <h2>Les stations de mesure</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">Code</th> <th align="left">Nom</th> </tr> <tr> <td><xsl:value-of select="ReseauSurveillance/StationMesure/CdStationMesure"/></td> <td><xsl:value-of select="ReseauSurveillance/StationMesure/NomStationMesure"/></td> </table> </body> </html> </xsl:template> </xsl:stylesheet> Déclaration du XSLT Une Template Formation XML/SANDRE

Exemple de boucle .. <xsl:template match="/"> <html> <body> <h2>les stations de mesure</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">Code</th> <th align="left">Nom</th> </tr> <xsl:for-each select="ReseauSurveillance/StationMesure"> <tr> <td><xsl:value-of select="CdStationMesure"/></td> <td><xsl:value-of select="NomStationMesure"/></td> </xsl:for-each> </table> </body> </html> On boucle sur chaque information Formation XML/SANDRE

Exemple de tri <xsl:sort select="DateAnalyse"/> <body> <h2>les stations de mesure</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">Code</th> <th align="left">Nom</th> <th align="left">Liste des codes paramètres</th> </tr> <xsl:for-each select="ReseauSurveillance/StationMesure"> <tr> <td><xsl:value-of select="CdStationMesure"/></td> <td><xsl:value-of select="NomStationMesure"/></td> <td> <xsl:for-each select="Analyse"> <xsl:sort select="DateAnalyse"/> <br><xsl:value-of select="CdParametre"/> le <xsl:value-of select="DateAnalyse"/></br> </xsl:for-each> </td> Formation XML/SANDRE

Exemple de condition <xsl:if test="Insitu=1">X</xsl:if> <xsl:for-each select="ReseauSurveillance/StationMesure"> <tr> <td><xsl:value-of select="CdStationMesure"/></td> <td><xsl:value-of select="NomStationMesure"/></td> <td> <table border="1"> <th>paramètre</th> <th>Date</th> <th>Résultat</th> <th>Insitu</th> </tr> <xsl:for-each select="Analyse"> <xsl:sort select="DateAnalyse"/> <td><xsl:value-of select="CdParametre"/> </td> <td><xsl:value-of select="DateAnalyse"/></td> <td><xsl:value-of select="Resultat"/></td> <xsl:if test="Insitu=1">X</xsl:if> </td> … Formation XML/SANDRE

Comment appliquer XSL sur un fichier XML Ajout d’une feuille de style au fichier XML Ajout en début du fichier XML : <?xml-stylesheet type="text/xsl" href="XSLT_4.xslt"?> Utilisation d’un simple navigateur WEB compatible Via un développement informatique Appel de la feuille de transformation sur le fichier XML Formation XML/SANDRE

XML sous autre structure L’utilisation de XSL XML sous autre structure XML HTML, PDF Fichier XSL TEXTE Formation XML/SANDRE