La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Soutenance du mémoire de synthèse

Présentations similaires


Présentation au sujet: "Soutenance du mémoire de synthèse"— Transcription de la présentation:

1 Soutenance du mémoire de synthèse
XML et XSLT Soutenance du mémoire de synthèse

2 Plan Introduction Présentation du langage XML
Publication de données avec XSLT Exemple d'utilisation de XML - XSLT Conclusion Présentation du plan

3 Introduction (1) Le principal langage du Web est HTML
HTML est un langage pour présenter des informations à l'écran mais ne permet pas: d'échanger des données un traitement des données autre que l'affichage On ne sait pas interpréter des données fournies en HTML Internet est de nos jours un moyen de communication incontournable. Le principale langage utilisé est le HTML, mais il a atteint ses limites. D'une part, il ne permet pas d'échanger des données, et d'autre part il ne permet pas un traitement des données autre que l'affichage. De plus, les règles de codage du HTML n'étant pas très rigoureuses, il n'est pas possible d'interpréter des données fournies en HTML.

4 Introduction (2) Aujourd'hui Internet est partout : ordinateur, téléphone, PDA, télévision Nouvelle utilisation du Web : commerce électronique, moteur de recherche et services en ligne Problème : nécessité de séparer le contenu de la présentation Solution : utiliser la combinaison XML et XSLT De nos jours, Internet est disponible depuis de nombreux outils de communication tels qu'un ordinateur, un téléphone mobile, un assistant personnel ou encore une télévision. Cette diversification des médias nécessite un traitement particulier pour afficher les informations sur chaque support. Il est donc primordiale de séparer le contenu de la présentation, ceci à l'aide du couple XML et XSLT.

5 XML (1) Pourquoi XML ? Un document XML est au format ASCII : il voyage relativement facilement. XML est un langage universel XML n'est pas lié à un mode d'utilisation : chacun peut définir son propre "langage" Le langage XSLT permet de transformer un document XML en un format applicatif (HTML, WML, PDF, etc…) XML est un simple fichier texte au format ASCII, il est donc très facile de le transporter sur le réseau Internet, il est de plus universel puisque lisible sur n'importe quel système informatique (MAC, PC, UNIX, etc.…). XML est un métalangage, autrement dit c'est un langage qui décrit un autre langage. En XML, chacun peut définir son propre langage. XML est juste un moyen de stocker des informations, il est donc très intéressant de l'associer avec un langage permettant de publier ces informations, cet outil étant le XSLT.

6 XML (2) Comparaison avec HTML
XML et HTML sont deux langages distincts ! Une seule similitude : un père en commun qui est le SGML Successeur du HTML : XHTML Le HTML est un langage figé, il possède un nombre fini de balises qu'il n'est pas possible d'étendre ou de modifier. XML est tout le contraire, il permet de créer ses propres balises, afin de structurer des données. Cependant, même si XML et HTML sont deux langages distincts, ils ont un père en commun qui est le SGML mais qui est un langage de balise un peu trop compliqués. On constate que le XML possède lui aussi des fils comme le XHTML, successeur du HTML mais avec une syntaxe plus rigoureuse, le WML pour les téléphones mobiles, ou encore le MathML permettant d'afficher des formules mathématiques sur une page Web. SGML – Standardized Generalised Markup Language HTML XML XHTML WML MathML

7 XML (3) A quoi sert XML ? Structurer des données avec une syntaxe spécifique Exemple : <?xml version="1.0" encoding="ISO "?> <dvd numero="1"> <nom>Bowling For Columbine</nom> <realisateur>Michael Moore</realisateur> <categorie>Documentaire</categorie> <resume>Michael Moore enquête sur la violence…</resume> <datedesortie>10/02/2003</datedesortie> <prix>19,90</prix> <affichefilm>images/bowling.jpg</affichefilm> <acteurs> <acteur nom="Moore" prenom="Michael"/> <acteur nom="Charlton" prenom="Heston"/> </acteurs> </dvd> Le XML impose des règles de syntaxe très spécifique par rapport au HTML. On retrouvera ces même règles dans tous les langages dérivés du XML (XSLT, WML, XHTML). La première ligne est la déclaration XML, indiquant que l'on va écrire un document XML avec la version 1, et dans la langue latine (pour le français). Ensuite on remarque que le document XML est structuré à l'aide de balises ouvrantes et fermantes, et est englobé par un élément racine qui est le dvd. Les balises forment des parenthèses autour des chaînes de caractères. ATTENTION : une des principales règles du XML, est que le parenthésage défini par les balises doit être imbriqué. Exemple, <nom> est définit entre les balises <dvd> et </dvd>, il doit donc être fermé avant le </dvd>. Faire la distinction entre un élément et un attribut.

8 XML (4) Représentation arborescente
dvd numero=‘1’ categorie nom realisateur resume datedesortie acteurs prix affichefilm Bowling For Columbine Michael Moore 10/02/2003 Michael Moore enquête sur la violence… Documentaire 19,90 Images/bowling.jpg acteur nom=‘Moore’ prenom=‘Michael’ nom=‘Charlton’ prenom=‘Heston’ Afin de facilité la compréhension et le raisonnement sur une information structurée avec XML, une autre représentation consiste à représenter les informations sous la forme d'un arbre. Si on reprend l'exemple précédent, on obtient l'arbre suivant. On a le dvd qui est la racine du document. Ensuite ce dvd a plusieurs fils, qui ont eux même une valeur. Cas particulier avec acteurs qui possèdent à son tour deux fils. Il est important de comprendre qu'un élément est caractériser à la fois par son nom et par sa place dans l'arbre XML. Représentation plus abstraite Meilleure visibilité des éléments Permet de situer un élément au sein de la hiérarchie globale

9 XML (5) Sémantique des données
XML est langage structuré, il faut donc définir une sémantique, c'est-à-dire un vocabulaire, une hiérarchie de balisage est le type des données Il existe deux méthodes pour valider un document XML Les DTD (Document Type Definition) N'est pas un document XML Ne dispose pas d'un mécanisme de typage fort Les schémas XML Méthode plus récente Langage dérivé du XML Permet la définition de types complexes Comme nous avons pu le voir, XML est un langage structuré, mais il est intéressant de définir au préalable un document donnant une sémantique, autrement dit définissant le vocabulaire utilisé, la hiérarchie du balisage et le type des données. Il existe actuellement deux méthodes pour valider un document XML, les DTD et les schémas XML. La première méthode, qui est la plus ancienne, est de moins en moins utilisé, car elle a l'inconvénient de ne pas être un document XML, et ne permet pas de définir des types complexes. La deuxième méthode, est quant à elle beaucoup plus récente, et tend à remplacer la première en corrigeant ses défauts.

10 XSLT (1) Pour quoi faire ? Séparer la gestion du contenu de la présentation Gestion du contenu  décrire les informations avec un vocabulaire XML Présentation  mettre en forme les documents pour une application particulière XSLT permet d’écrire des programmes de conversions, très adaptés au traitement de documents XML XSLT est un langage dérivé du XML possédant une syntaxe définie XML est un moyen de structurer des informations, mais contrairement au HTML, il n’a pas été conçu pour afficher de l’information. Pour présenter et publier le contenu d’un fichier XML, il faut passer par un autre langage : le XSLT. Le XSLT est donc le complément indispensable pour l’affichage du XML. Mais le XSLT ne permet pas uniquement de transformer un document, il permet également de sélectionner une partie des éléments XML, de trier ces éléments, de filtrer ces éléments en fonction de critères, de choisir ces éléments ou encore de retenir ces éléments par des tests conditionnels.

11 XSLT (2) Principe du XSLT
Définir une feuille XSLT qui contient les règles de présentation Avoir un arbre "source" résultant de l'analyse syntaxique d'un document XML Le processeur fournit en sortie un arbre "résultant" qui représente soit une structure logique, soit une structure de présentation selon le but de la transformation Un processeur XSLT utilise un document XSL contenant les règles de présentation et un « arbre source » résultant de l'analyse syntaxique d'un document XML. Le processeur renvoie un « arbre résultant » qui représente soit une structure logique soit une structure de présentation selon le but de la transformation. Ainsi, à l’aide d’un simple document XSL, il est possible de transformer un même document XML dans différents formats comme un autre format XML, du HTML, ou du WML.

12 XSLT (3) Les règles du XSLT
Un programme XSLT consiste à parcourir les nœuds d'une arborescence XML Exemple de règles XSLT : Afficher une phrase à chaque fois que l'on rencontre un élément <dvd> dans le document source : <xsl:template match="dvd"> Ici, est affiché le texte appliqué par cette règle de transformation XSLT. </xsl:template> Obtenir le nom d'un DVD <xsl:value-of select="nom"/> L’application d’un programme XSLT consiste à parcourir les nœuds d’une arborescence XML, et à appliquer des règles de transformation à ces nœuds. La notion de règle est primordiale dans XSLT, et il est important de comprendre qu’une règle s’applique toujours dans le contexte de l’un des nœuds du document source, et que l’application de la règle consiste à produire un fragment de document, qui peut combiner du texte et des données extraites du document source. Mais les possibilités de XSLT ne s’arrêtent pas là, il est également possible de trier ou de filtrer des éléments, d’effectuer des tests conditionnels, ou encore d’utiliser des variables.

13 XSLT (4) Premier exemple de transformation
<?xml version="1.0" encoding="ISO "?> <xsl:stylesheet version="1.0" xmlns:xsl= " <xsl:output method="html" version="1.0" encoding="ISO " indent="yes"/> <xsl:template match="dvd"> <html> <head> <title><xsl:value-of select="nom"/></title> </head> <body> <img src="{affichefilm}" alt="{nom}"/> <h2><xsl:value-of select="nom"/></h2> <xsl:value-of select="categorie"/><br/> Résumé : <xsl:value-of select="resume"/> </body> </html> </xsl:template> </xsl:stylesheet> Afin de mieux comprendre le fonctionnement d’une transformation XSLT, nous allons partir d’un document XML, et lui appliquer une transformation XSLT. La figure illustre l’application de cette règle XSLT par deux arbres reliés par des arcs en pointillés : l’arbre inférieur correspond au document XML qui doit être transformé en HTML (pour une meilleure représentation, la racine de l’arbre est en bas). L’arbre supérieur correspond à la règle contenant la structure de la page HTML à générer.

14 XSLT (5) Présentation du langage XSL-FO
But: Publication de données au format PDF XSL-FO est un dialecte du XML Le couple XSLT / XSL-FO permet d'appliquer un processus complet de publication en deux étapes : Jusqu'à maintenant, on est capable à partir d'un document XML de générer un autre document XML, du HTML, d'une manière plus générale, on est capable d'afficher du contenu sur un écran. Il serait également intéressant de pouvoir générer un document destiné à l'impression, ceci est possible par l'intermédiaire du langage XSL-FO. XSL-FO est un dialecte du XML, et est directement lié à XSLT. C'est en fait un complément du XSLT. XSLT permet de gérer les transformations, tandis que le XSL-FO permet de présenter des informations. Le couple XSLT/XSL-FO permet d’appliquer un processus complet de publication en deux étapes : - Premièrement l’étape de transformation avec XSLT permet d’extraire des informations du document source et de les marquer avec des balises XSL-FO - Deuxièmement l’étape de mise en forme s’applique au document XSL-FO obtenu précédemment, et consiste à créer un document final adapté au support de publication, dans un format standard comme PDF ou Postscript.

15 Exemple d'utilisation (1) Présentation de l'étude de cas
Un magasin de vente de DVD souhaite : Présenter ses DVD sur un site Internet Présenter ses DVD sur des téléphones Réaliser des tractes pour distribuer dans la rue, ou à l'entrée du magasin afin de présenter ses nouveautés Exemple simple avec deux DVD !

16 Exemple d'utilisation (2) Fichier XML de l'étude de cas
<?xml version="1.0" encoding="ISO "?> <catalogue> <dvd numero="1"> <nom>Bowling For Columbine</nom> <realisateur>Michael Moore</realisateur> <categorie>Documentaire</categorie> <resume>Michael Moore enquête sur la violence ….</resume> <datedesortie>10/02/2003</datedesortie> <prix>19,90</prix> <affichefilm>images/bowling.jpg</affichefilm> <acteurs> <acteur nom="Moore" prenom="Michael"/> <acteur nom="Charlton" prenom="Heston"/> </acteurs> </dvd> <dvd numero="2"> <nom>Will Hunting</nom> <realisateur>Gus Van Sant</realisateur> <categorie>Comédie dramatique</categorie> <resume>Will Hunting est un authentique genie...</resume> <datedesortie>04/03/1998</datedesortie> <prix>14,90</prix> <affichefilm>images/willhunting.jpg</affichefilm> <acteur nom="Damon" prenom="Matt"/> <acteur nom="Williams" prenom="Robin"/> <acteur nom="Affleck" prenom="Ben"/> <acteur nom="Driver" prenom="Minnie"/> </catalogue> Voici le fichier XML de départ, qui sera le même pour les trois transformations qui vont suivre. On a deux films, Bowling For Columbine, et Will Hunting.

17 Exemple d'utilisation (3) Transformation en HTML
La première transformation consiste à présenter les informations sur un navigateur Internet. On peut se permettre d'afficher toutes les informations concernant les DVD. On remarque que la présentation est totalement géré avec le fichier XSLT, on n'avait aucune information concernant la présentation dans le fichier XML de départ.

18 Exemple d'utilisation (4) Transformation en WML
Deuxième transformation pour visualiser les DVD sur un téléphone mobile. Ici, on n'affiche que les informations principales, c'est-à-dire le titre du film, la catégorie, le réalisateur et le prix. En effet, il n'est pas recommandé d'afficher trop d'informations sur un téléphone mobile.

19 Exemple d'utilisation (5) Transformation en PDF
Enfin, dernière étape à l'aide de XSL-FO, la publication d'un document papier (au format pdf). Présentation encore différente, adapté pour une impression. En tête et pied de page généré automatiquement.

20 Conclusion XML et XSLT forment le couple parfait pour dissocier le contenu de la présentation XML permet d'échanger des informations simplement entre des systèmes informatiques hétérogènes: XML est un langage universel XML n'en est qu'à ses débuts, et sera probablement le standard du Web en ce début de 21ème siècle


Télécharger ppt "Soutenance du mémoire de synthèse"

Présentations similaires


Annonces Google