La technologie XML La technologie XML Wajdi Elleuch Faculté de Génie Chaire ind

La technologie XML La technologie XML Wajdi Elleuch Faculté de Génie Chaire industrielle en infrastructures de communication Octobre 2004 SOMMAIRE SOMMAIRE - XML : Définition - XML : Solution pour des applications réparties - XML : La valiadation de structure (DTD, XML-Schema) - XML : Les transformations (XSL, XSLT, XSL-FO) - XML : Les parseurs (Dom et Sax) - XML : Solution de stockage de données Content : Du HTML vers le XML Du HTML vers le XML XML (eXtensible Markup Langage) XML = langage HTML amélioré permettant de définir de nouvelles balises HTML : un langage limité ! XML : Définir de nouveau domaines de données Séparer le contenu de la présentation (plus de liberté de présentation) Descendant de SGML (ISO 8879, 1986)         SGML = Standard SGML = Standard Generalized Generalized Markup Markup Language Language - Invention : 1970’s (avant le WWW) - Spécification : 150 pages - Intègre tous les langages de «markup» (très puissant) - Application SGML connue : HTML - Très complexe (pas d’implémentation unifiée)         XML = version XML = version « «l lé ég gè ère re» » de SGML de SGML - Début : 1996 - Normalisation par le W3C : 02/1998 - Version : 1.0 (jusqu’à maintenant) Historique d Historique d’ ’XML XML… … Les avantages de XML Les avantages de XML   La lisibilit La lisibilité é : : aucune connaissance ne doit théoriquement être nécessaire pour comprendre un contenu d'un document XML   Autodescriptif Autodescriptif et extensible et extensible : Une structure arborescente permettant de modéliser la majorité des problèmes informatiques   Universalit Universalité é et portabilit et portabilité é : les différents jeux de caractères sont pris en compte   D Dé éployable ployable : il peut être facilement distribué par n'importe quels protocoles capable de transporter du texte, comme HTTP   Int Inté égrabilit grabilité é : : un document XML est utilisable par toute application pourvue d'un parseur (c'est-à-dire un logiciel permettant d'analyser un code XML)  Extensibilit Extensibilité é : : un document XML doit pouvoir être utilisable dans tous les domaines d'applications L L’ ’extensibilit extensibilité é de XML de XML L'intérêt de disposer d'un format commun d'échange d'information dépend du contexte professionnel dans lequel les utilisateurs interviennent : VoiceXML VoiceXML : Description des services vocaux intéractifs. CCXML : CCXML : Call Control eXtensible Markup Language - Programmation de SERVEUR téléphonique. HTML HTML : Hyper Text Marckup Language – Pour la description du contenu des pages web. CML CML : Chemical Markup Language - Permet de décrire des composés chimiques. SMIL SMIL : Synchronized Multimedia Integration Language - Permet de créer des présentations multimédia en synchronisant diverses sources : audio, vidéo, texte,... SOAP : Simple Object Access Protocol – Description des Services Web Structure d Structure d’ ’un document XML un document XML La norme XML en tant que telle doit être vue comme un outil permettant de définir un langage (on dit alors qu'il s'agit d'un métalangage), Une balise est une chaîne de caractère du type: <balise> <annuaire> <annuaire> < <personne class = "etudiant"> > <nom>Desjardins</nom> <prenom>Jean-Philippe</prenom> <telephone>(819) 234 2343</telephone> <email>webmaster@usherbrooke.ca</email> <!-- insertion de commentaires XML --> </personne> <personne> ... </personne> </annuaire> </annuaire> Structure d Structure d’ ’un document XML un document XML Un document XML est structuré en 3 parties: - La première partie, appelée prologue : permet d'indiquer la version de la norme XML utilisée pour créer le document ainsi que le jeu de caractères utilisé dans le document : <?xml version="1.0" encoding="ISO-8859-1"?> - Le second élément est une déclaration de type de document (déclaration de la DTD ou du Schéma, de la feuille de style)(optionnel) - Et enfin la dernière composante d'un fichier XML est l'arbre des éléments La syntaxe des La syntaxe des é él lé éments en XML ments en XML - -Encapsulation dans les balises: Encapsulation dans les balises: <balise> <balise> contenu de la balise contenu de la balise </ </balise balise> > - -Utilisation des attributs : Utilisation des attributs : <balise <balise attribut_01 = attribut_01 = " "text text" " attribut_02 attribut_02= = " "text text" " > > - -Pas de chevauchement de balises : Pas de chevauchement de balises : <balise_01> <balise_01> <balise_02> <balise_02> </balise_01> </balise_01> </balise_02> </balise_02> - - Balise Vide Balise Vide <balise> </ <balise> </balise balise> = <balise/> > = <balise/> XML : Une solution d XML : Une solution d’é ’échange change  La nouvelle tendance : Exploitation des réseaux et développement d’application réparties, (efficacité, réutilisation et accessibilité) 3 concurrents à XML : - COM/DCOM (Component Object Model / Distributed COM) - CORBA (Common Object Request Broker Architecture) - Java RMI (Remote Method Invocation)  XML : Solution pour assurer l’échange de données entre systèmes distribués ? JRMP ou IIOP Oui interfaces Java Sun oui non (tout Java) types primitifs et objets Java / RMI Chaînes de caractère types primitifs et objets types primitifs et objets types de données Indépendant IIOP - GIOP RPC Transport Non Oui Non Support des exceptions aux interfaces DTD / XML- schéma IDL MIDL Interfaces non non (norme) Microsoft propriétaire oui oui non (Microsoft – Win 32) multi- systèmes indépendant oui oui multi- langages XML CORBA DCOM Thème XML : Une solution d XML : Une solution d’é ’échange (comparatif) change (comparatif) Validation des documents XML Validation des documents XML XML fournit un moyen de vérifier la syntaxe d'un document Utilisation des XML Schema ou des DTD ( XML Schema ou des DTD (Document Type Definition Document Type Definition) ) pour décrire la structure des documents avec les imbrications des éléments possibles - Document bien formé : Un document suivant les règles de XML - Document valide : Un document XML possédant une DTD (ou XML Schema) et étant conforme à celle-ci LES DTD (Document Type Definition) LES DTD (Document Type Definition) - - Type de donn Type de donné ées : es :                                 - - Exemple : Exemple : <! ELEMENT Nom_élement (#PCDATA) > LES DTD (Document Type Definition) LES DTD (Document Type Definition) - - Occurrence des Occurrence des é él lé éments : ments : - - Exemple : Exemple : <!ELEMENT personne (nom,prenom),telephone+,email? >                             !     "     !     # $       %                       ! "# $% & ' &  <carnet_adresse> <personne> <nom>Desjardins</nom> <prenom>Jean-Philippe</prenom> <telephone>(819)55-23456</telephone> <telephone>(514)123-5336</telephone> <email>ss@mail.net</email> </personne> <personne> <nom>Cartier</nom> <prenom>Jacques</prenom> <telephone>(819)235-1234</telephone> </personne> </carnet_adresse> <!ELEMENT carnet_adresse (personne)*> <!ELEMENT personne(nom,prenom),telephone+,email?> <!ELEMENT nom (#PCDATA) > <!ELEMENT prenom (#PCDATA) > <!ELEMENT telephone (#PCDATA) > <!ELEMENT email (#PCDATA) > Carnet_adresse.XML Carnet_adresse.DTD LES DTD (Document Type Definition) LES DTD (Document Type Definition) - - D Dé éclatation clatation des attributs des attributs signifie que l'attribut sera affecté d'une valeur par défaut s'il n'est pas défini. #FIXED signifie que l'attribut est obligatoire #REQUIRED signifie que l'attribut est optionnel, c'est-à-dire non obligatoire #IMPLIED     - - Exemple : Exemple : <! ATTLIST <! ATTLIST disque disque IDdisk IDdisk #REQUIRED type type (K7|MiniDisc|Vinyl)"CD" > > Chaque élément disque est décrit par deux attributs : - IDdisk : Un identifiant obligatoire - type : peut contenir la valeur «K7», «MiniDisc», «Vinyl» ou par défaut «CD » LES LES XML XML- -Schema Schema Avantages par rapport au DTD Avantages par rapport au DTD  Codé sous forme XML : Les XML Schema utilisent un système de balisage conforme à XML  Meilleur typage des données : On peut définir de nouveaux types de données (String, Date, Interger, Positif-Integer, Real, Boolean…)  Meilleure définition des occurrences : Utilisation de modèle de relation entre éléments et définition des occurrences de chaque éléments dans un intervalle pouvant varier de 0 à l’infini  Prise en charge de modèle réutilisable de données (notion d’objet) Mod Modé élisation graphique (Les relations lisation graphique (Les relations p pè ère re- -fils fils) ) LES LES XML XML- -Schema Schema  Relation de type "Sequence" : L'élément père peut inclure un ou plusieurs fils     Relation de type "Choice" : L'élément père doit inclure seulement un fils     Relation de type "All" : L'élément père doit inclure tous ses fils Mod Modé élisation graphique (Occurrence des lisation graphique (Occurrence des é él lé éments) ments) LES LES XML XML- -Schema Schema  Élément Unique : le nombre maximum et le nombre minimum d'occurrence = 1  Élément Optionnel : le nombre minimum uploads/Litterature/ expose-xml.pdf

  • 19
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager