Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

XML

162 views

Published on

XML

Published in: Technology
  • Be the first to comment

  • Be the first to like this

XML

  1. 1. Département de mathématique et informatique PrEsenter par : Baich Marwa Encadrer par : M.Belangour Master SII
  2. 2. 1 I Qu'est-ce que le XML ? Exemple III Grammaire et Typage IV Les API : JDOM et SAX V Historique Le format XSLT VI
  3. 3.  XML signifie Extensible Markup Language ;C’ est standard reconnu par le W3C depuis février 1998,  Il est dérive du SGML dont il représente un sous ensemble,  La version 1.0 est disponible depuis 1998  Le SGML à l'origine du XML  SGML (Standard Generalized Markup Language) (ISO 8879) est le langage de référence en GED.  SGML est devenu une norme internationale en 1986.  SGML permet de distinguer la structure d'un texte de son contenu.
  4. 4.  décrire les données de manière aussi bien compréhensible par les hommes qui écrivent les documents XML que par les machines qui les exploitent.  Le XML se veut également compatible avec le web afin que les échanges de données puissent se faire facilement à travers le réseau Internet.  Le XML se veut donc standardisé, simple, mais surtout extensible et configurable afin que n'importe quel type de données puisse être décrit. Les objectifs du XML
  5. 5. pourquoi xml ?
  6. 6. Spécifications de XML Un document XML peut être représenté sous la forme d'un Arbre. Il possède une racine et chaque Elément représente un nœud. eXtended Markup Language le langage XML est un langage qui permet de décrire des données à l'aide de balises et de règles que l'on peut personnaliser.
  7. 7. EXEMPLE : STRUCTURATION D'UN RÉPERTOIRE Votre répertoire doit comprendre au moins 2 personnes. Pour chaque personne, on souhaite connaître les informations suivantes : •Son sexe (homme ou femme). •Son nom. •Son prénom. •Son adresse. •Un ou plusieurs numéros de téléphone (téléphone portable, fixe, bureau, etc.). •Une ou plusieurs adresses e-mail (adresse personnelle, professionnelle, etc.).
  8. 8. eXtended Markup Language Langage descriptif utilisant des éléments déclarés en utilisant des balises <element attribute="value" /> <element attribute="value" > texte …&entité; … </element> Élément Attribut Texte Entité
  9. 9. Entête XML Fichier XML toujours le même entête Déclaration - version = 1.0 - encoding = latin1 <?xml version="1.0" encoding="latin1"?> <?xml version="1.0" encoding="UTF-8"?>
  10. 10.  DTD définie l’ensemble des éléments et attributs (pas XML)  XML Schéma définie les éléments, les attributs et leurs types.
  11. 11. ( Document Type Définition) Elle va permettre de définir la structure interne d'un document XML, Son l' utilisation est facultative. Un document répondant à une DTD est dit VALIDE. La Validation processus de vérification d’un document XML : Les données sont dans le bonne ordre, Les données sont dans le bon format, Les champs obligatoires sont présents,…. Un document BIEN FORME n'est pas forcément VALIDE La DTD peut prendre deux formes : soit interne, incluse dans une feuille XML · soit externe, dans un fichier spécifique permettant sa réutilisation. La DTD
  12. 12. EXEMPLE STRUCTURATION D'UN RÉPERTOIRE
  13. 13. Les défauts des DTD Un nouveau format Le typage de données Le typage des données Les Schémas XML permettent tout d'abord de typer les données.. Les contraintes Nous découvrirons aussi que les Schémas XML permettent d'être beaucoup plus précis que les DTD lors de l'écriture des différentes contraintes qui régissent un document XML. Des définitions XML Un des principaux avantages des Schémas XML est qu'ils s'écrivent grâce au XML. Ainsi, pour exploiter un document XML et le Schéma qui lui est associé, vous n'avez en théorie plus besoin de plusieurs outils. 1 2 XML Schéma
  14. 14.  L'extension du fichier  les Schémas XML soient écrits avec un langage de type XML, le fichier n'a pas extension. Un fichier dans lequel est écrit un Schéma XML porte l'extension  Le prologue  <?xml version="1.0" encoding="UTF-8" ?> Structure d'un schéma XML
  15. 15. <nom>baich</nom> <prenom>marwa</prenom> <age>21</age> XML <xsd:element name="nom" type="xsd:string" /> <xsd:element name="prenom" type="xsd:string" /> <xsd:element name="age" type="xsd:int" /> XML Schéma
  16. 16. <personne sexe="masculin">Robert DUPONT</personne> <xsd:attribut name="sexe" type="xsd:string" />  Pour indiquer une valeur par défaut c'est l'attribut default  Pour indiquer une valeur constante, c'est l'attribut fixed  Pour indiquer qu'un attribut est obligatoire la propriété use .à laquelle nous affectons la valeur required <xsd:attribut name="prenom" type="xsd:string" use="required" />
  17. 17. (Extensible Stylesheet Language Transformations) est un langage XML qui sert à passer d’un format XML à un autre format texte (XML, XHTML/HTML, CSV…). Il existe deux recommandations du W3C respectivement pour des versions 1.0 et 2.0. La version 1.0 reste davantage exploitée, au moment de la rédaction de cet ouvrage, que la version 2.0 pour plusieurs raisons : • poids de l’existant ; • les navigateurs ne gèrent que la version 1.0 ; • encore trop peu de librairies pour la version 2.0. XSLT 1.0 est fortement couplé à XPath 1.0 alors que XSLT 2.0 est associé à XPath 2.0.
  18. 18.  L'extension du fichier L'extension portée par les documents XSLT est ".xsl"  Le prologue <?xml version="1.0" encoding="UTF-8" ?>  Le corps <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> </xsl:stylesheet> Structure d'un document XSLT l'élément racine espace de noms
  19. 19. Le parseur est l’élément de programmation le plus important, puisque c’est lui qui réalise le travail d’analyse du document XML. Son rôle est de vérifier la cohérence du document XML (en termes syntaxique et/ou par rapport à un schéma ou une DTD) et de transmettreà l’application les informations utiles au traitement du document.
  20. 20. La technologie SAX SAX (Simple API for XML) définit un mode de communication entre le parseur et l’application, lié à un mécanisme événementiel Étapes d’utilisation de SAX  Création du modèle objet du document  Création de SAX parseur  Création de DocumentHandler pour changer le document XML en instance du modèle objet
  21. 21.  une application basée sur SAX peut gérer uniquement les éléments dont elle a besoin sans avoir à construire en mémoire une structure contenant l'intégralité du document. L'API SAX définit les quatre interfaces suivantes :  Document Handler possédant des méthodes renvoyant des événements relatifs au document :  Start Document() renvoyant un événement lié à l'ouverture du document  Start Elément() renvoyant un événement lié à la rencontre d'un nouvel élément  characters() renvoyant les caractères rencontrés  end Elément() renvoyant un événement lié à la fin d'un élément  end Document() renvoyant un événement lié à la fermeture du document  ErrorHandler possédant des méthodes renvoyant des événements relatifs aux erreurs ou aux avertissements  DTDHandler renvoie des événements relatifs à la lecture de la DTD du document XML  EntityResolver permet de renvoyer une URL lorsqu'une URI est rencontrée
  22. 22. JDOM est une API du langage Java développée indépendamment de Sun Microsystems. Elle permet de manipuler des donnés XML plus simplement qu'avec les API classiques. Son utilisation est pratique pour tout développeur Java et repose sur les API XML de Sun. JDOM permet donc de construire des documents, XML, de naviguer dans leur structure, s'ajouter, de modifier, ou de supprimer leur contenu. La technologie JDOM
  23. 23. Créer un document XML avec JDOM :  L’API JDOM Il vous faut dans un premier temps télécharger la dernière version de JDOM . Il suffit ensuite de rendre accessible le fichier /build/jdom.jar, en le plaçant dans votre classpath.  Création d’un document XML avec JDOM: • Il suffit de construire chaque élément puis de les ajouter les uns aux autres de façon logique. • Un nœud est une instance de org.jdom.Element. • Nous commençons donc par créer une classe JDOM1 qui va se charger de créer l'arborescence suivante :
  24. 24. Solution

×