Mise en forme XML avec XSLT XML schéma (XSD)



Documents pareils
XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

<?xml version="1.0" encoding="iso " standalone="yes"?>

Faculté de Génie Chaire industrielle en infrastructures de communication. La technologie XML. Wajdi Elleuch

Production de documents avec XSLT. Production de documents p.1/??

PIVOT. Pivot/Querier Documentation technique XML/XSD/XSLT

L'API DOM : Document Object Model

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition

Master d Informatique Corrigé du partiel novembre 2010

Server-side XML. PAS FINI... mais ok pour un début. Originaux. Auteurs et version. Prérequis: Java de base, servlets, GUI et XML

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Les types de fichiers

Programmation Internet Cours 4

Module : programmation site Web dynamique Naviguer entre les pages via site map

PHP 5.4 Développez un site web dynamique et interactif

Gestion Électronique de Documents et XML. Master 2 TSM

HTML, CSS, JS et CGI. Elanore Elessar Dimar

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

LES GRANDES ETAPES DE CREATION D UN WEB DESIGN

Introduction aux concepts d ez Publish

SII Stage d informatique pour l ingénieur

1 ère Université WEB. Courbevoie Samedi 21 octobre Votre site interactif sur internet.

Support Infrastructure des applications - 1 / 18 - I. Introduction...2

Formation HTML / CSS. ar dionoea

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

ENVOI EN NOMBRE DE Mails PERSONNALISES

Démonstration de la mise en cache via HTML 5 sur iphone

WebSSO, synchronisation et contrôle des accès via LDAP

1 INTRODUCTION ET OBJECTIFS GÉNÉRATION DE PDF AVEC.NET LES SOLUTIONS DE BI AVEC.NET...13

STID 2ème année : TP Web/PHP

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

SP1 : Intégration d'une vidéo dans une mardi 21/01/2014. page web, fonction du format vidéo et 3 mercredi 22/01/2014

Base de Connaissances SiteAudit. Utiliser les Rapports Planifiés. Sommaire des Fonctionnalités. Les Nouveautés

WysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x

Un site web collaboratif avec Drupal. Judith Hannoun - Journées INSHS 16 Octobre 2012

XML : documents et outils

Documentation CAS à destination des éditeurs

L'essentiel de XML. Cours XML. Olivier Carton

HTML. Notions générales

Aspects techniques : guide d interfaçage SSO

Architecture Multi-Niveaux

RAPPORT AUDIT SEO. Élaboré à l'attention de : Monsieur Greber Élaboré par : Cédric Peinado

Dans l'article précédent, vous avez appris

34. DOM (Document Object Model)

Informatique : Création de site Web Master 2 ANI TP 1

les techniques d'extraction, les formulaires et intégration dans un site WEB

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Extended communication server 4.1 : VoIP SIP service- Administration

Mysql avec EasyPhp. 1 er mars 2006

Programmation Web. Madalina Croitoru IUT Montpellier

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

Introduction à Microsoft InfoPath 2010

Design et implémentation d un logiciel de validation et de génération de configurations réseaux

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

BES WEBDEVELOPER ACTIVITÉ RÔLE

Joomla! Création et administration d'un site web - Version numérique

Qualification et Sélection de logiciels Open Source (QSOS) Version /01/2013

Panel des technologies Web

Qu'est-ce que XML? XML : Extensible Markup Language. Exemple de document SGML SGML

PROSOP : un système de gestion de bases de données prosopographiques

Guide d interfaçage SSO Connexion des ressources aux plates-formes de type Corrélyce. Sommaire. Titre du document

Gestion documentaire (Extraits du CCI version 1.2)

ENVOI EN NOMBRE DE Mails PERSONNALISES

Les outils de création de sites web

Les sites web avec NVU

Adobe Technical Communication Suite 5

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

Proxies,, Caches & CDNs

Systèmes d Information (SI) Zohra Zelfani

Installation de DocBook sur un système Linux

DotNet. Plan. Les outils de développement

HMTL. Exemple de fichier HTML. Structure d un document HTML. Exemple de fichier HTML. Balises HTML. IFT1147 Programmation Serveur Web avec PHP

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

DRUPAL Réalisez des développements professionnels avec PHP (2ième édition)

Master Technologies numériques appliquées à l'histoire Deuxième année

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

Devenez un véritable développeur web en 3 mois!

Outils logiciels pour l'ingénierie documentaire

Générer du code à partir d une description de haut niveau

< Atelier 1 /> Démarrer une application web

XML et DOM. Matériel de cours. mars 1999 version 0.3 dernière modification: 24/3/99

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Client / Serveur. Rémy Courdier. Normes et Standards. C/S et l Internetl

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs

BASE DE DONNÉES XML NATIVE

Programmation Internet

Hébergement de site web Damien Nouvel

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

Présentation du Framework BootstrapTwitter

COMPRENDRE L ARCHITECTURE DES WEB SERVICES REST. Amosse EDOUARD, Doctorant

Survol des nouveautés

Bureautique Initiation Excel-Powerpoint

Faculté Polytechnique de Mons. Le processus d Extraction, Transformation et Load (ETL) dans des entrepôts de données XML

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

Transcription:

Mise en forme XML avec XSLT XML schéma (XSD) BOUALEM ABID & LEBCIR FAHIMA ENS KOUBA ALGER ÉÀ&(

Introduction XSL : extensible Stylesheet Langage, ou langage extensible de feuille de style. XPath : un moyen d'accéder à un nœud quelconque de l'arborescence d'un document XML à partir d'un autre nœud quelconque. XSLT : extensible Stylesheet Langage Transformation. XSL-FO : extensible Stylesheet Langage - Formating Objects, et désigne un langage permettant le contrôle de la mise en page finale de la transformation. Ce langage est particulièrement destiné à la production de contenus au format PDF.

Introduction Le fonctionnement du XSL est fondé sur les manipulations de modèles (templates). Les éléments du document XML d'origine sont remplacés (ou plus ou moins légèrement modifiés) par ces modèles. Un modèle contient ainsi le texte (éléments, attributs, texte...) de remplacement d'un élément donné. Tout élément pouvant être remplacé dans le fichier de sortie par tout type de contenu texte, XSL est un outil privilégié de production de fichiers HTML à partir de sources XML. PHP fait ainsi appel à des bibliothèques de procédures de type XSL comme libxslt quand il doit gérer l'interfaçage avec des bases de données XML. Un fichier XSL étant un fichier XML, il doit respecter les normes de syntaxe de ce format.

Structure d'un document XSL La structure de base d'un document XSL commence par un prologue un élément xsl:stylesheet pouvant contenir quelques attributs, notamment une déclaration d'espace de noms ainsi que le numéro de version. <?xml version="1.0" encoding="iso-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform"> (...) </xsl:stylesheet>

Structure d'un document XSL Ensuite, si vous utilisez des entités dans la page XML (c'est-à-dire des choses telles que «é»), il vous faut les déclarer. Pour cela, écrivez à la suite : <!ENTITY le_nom "le_code"> <!DOCTYPE xsl:stylesheet [ ]> <!ENTITY nbsp " "> <!ENTITY trade " "> <!ENTITY mdash " "> <!ENTITY ldquo " "> <!ENTITY pound " "> <!ENTITY yen " "> <!ENTITY euro " "> Les entités par défaut de XML n'ont pas besoin d'être déclarées (c'est-à-dire «<», «&», «>», «"» et «&apos;»).

Structure d'un document XSL <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/xsl/transform"> <xsl:output method="html" encoding="utf-8" doctype-public="-//w3c//dtd XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"/> <xsl:template match="/"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <title>mise en forme avec XSLT</title> </head> <body> </body> </html> </xsl:template> </xsl:stylesheet>

Afficher du contenu XML Lier la feuille XSLT au fichier XML <?xml-stylesheet href="nom_de_la_feuille_xslt.xsl" type="text/xsl"?>

Régions répétées <xsl:for-each select="test/jeu"> </xsl:for-each> <xsl:for-each select="test/jeu"> <tr> <td><xsl:value-of select="test/jeu/@id"/></td> <td><xsl:value-of select="test/jeu/nom"/></td> <td><xsl:value-of select="test/jeu/type"/></td> <td><xsl:value-of select="test/jeu/prix"/></td> </tr> </xsl:for-each> <xsl:for-each select="test/jeu"> <tr> <td><xsl:value-of select="@id"/></td> <td><xsl:value-of select="nom"/></td> <td><xsl:value-of select="type"/></td> <td><xsl:value-of select="prix"/></td> </tr>

Les filtres <xsl:for-each select="test/jeu[nom = 'Super Mario Galaxy']"> <tr> <td><xsl:value-of select="@id"/></td> <td><xsl:value-of select="nom"/></td> <td><xsl:value-of select="type"/></td> <td><xsl:value-of select="prix"/></td> </tr> </xsl:for-each>

Régions conditionnelles <xsl:if test=""> </xsl:if> <xsl:for-each select="test/jeu"> <xsl:if test="nom = 'Mario Sokoban'"> <p>j'ai Mario Sokoban!</p> </xsl:if> <xsl:if test="nom = 'Metroid Prime'"> <p>j'ai Metroid Prime!</p> </xsl:if> </xsl:for-each>

Régions conditionnelles <xsl:choose> <xsl:when test=""> </xsl:when> <xsl:otherwise> </xsl:otherwise> </xsl:choose>

Inclure une page XML associée à une page XSLT dans PHP <?php $xsldoc = new DOMDocument(); $xsldoc->load("sommaire.xsl"); $xmldoc = new DOMDocument(); $xmldoc->load("chapitre.xml"); $proc = new XSLTProcessor(); $proc->importstylesheet($xsldoc); echo $proc->transformtoxml($xmldoc);?>