Architecture orientée services (SOA) Une introduction à XML Une introduction à

Architecture orientée services (SOA) Une introduction à XML Une introduction à XML Inès MOUAKHER-ABDELMOULA 3ème LFIG Plan Introduction Le langage XML Document Type Definition (DTD ) eXtensible Stylesheet Language(XSL) 2 Evolution des technologies 3 Historique 4 • 1986 : SGML (Standard Generalized Markup Language, ISO:8879:1986 Trop complexe et coûteux ! • 1990: HTML 1.0 (HyperText Markup Language) Application pauvre de SGML Simple, largement utilisé mais non extensible ! • 1998 : XML 1.0 (eXtensible Markup Language) Un SGML allégé ! Une recommandation du W3C 1986 1986 1990 1990 1998 1998 2000, 2001, … 2000, 2001, … SGML (ISO) SGML (ISO) HTML (W3C) HTML (W3C) XML (W3C) XML (W3C) Qu'est-ce que c'est ?  XML, eXtensible Markup Language  XML 1.0 recommandation du World Wide Web Consortium (W3C) (10 février 1998)  Sous-ensemble de SGML  Langage à balises  80% des fonctionnalités de SGML, 20% de sa complexité  Méta-langage  Balises personnalisées  Séparer le contenu, la structure et la présentation  Indépendant de toutes plate-formes et de tous langages 5 Principes 1. XML devra pouvoir être utilisé sans difficulté sur Internet 2. XML devra supporter une grande variété d'applications 3. XML devra être compatible avec SGML 4. Il devra être facile d'écrire des programmes traitant les documents XML 5. Le nombre d'options dans XML doit être réduit au minimum 6. Les documents XML devraient être lisible par l'homme 7. La conception de XML devraient être préparée rapidement 8. La conception de XML sera formelle et concise 9. Il devra être facile de créer des documents XML 10. La concision dans le balisage de XML a peu d'importance 6 Contenu, Structure et Présentation Document XML : Contenu balises : pas de signification prédéfinie pas de présentation prédéfinie Grammaire de document : DTD : Document Type Definition ou XML-Schéma Présentation et/ou traitement : feuilles de style CSS : Cascading Style Sheets XSL : eXtensible Style Language 7 8 Pour se situer un peu … Édition et production XML Données Transformation et style XSL XSLT/FO Traitement des données Diffusion et Consultation XHTML PDF Documents utilisateurs Analyse et Conception DTD ou XSchéma Structures 1 2 3 4 Le langage XML Déclaration  Racine Elément Attribut Entité Règles du développement XML Données structurées XML permet de représenter des données structurées  données textuelles organisées : on manipule un document constitué d’éléments un élément peut être constitué simplement de texte ou contenir d’autres éléments (ou un mélange des deux) un élément peut être associé à des informations complémentaires, les Attributs la structure est celle d’un arbre : un document XML = un arbre un élément = un noeud de l’arbre Le standard XML indique comment traduire l’arbre en un document XML, pas comment organiser les données 10 Exemple : Annuaire But : stocker l’annuaire de Dauphine (nom, prénom, bureau, numéro de poste, email) Le texte du document : les informations ! Organisation : s’arranger pour que les informations restent correctement groupées (ne pas mélanger les données !) 11 Exemple : Annuaire 12 Solution 1 Exemple : Annuaire 13 Solution 2 Déclaration Syntaxe Cette déclaration (qui est en fait une instruction de traitement) contient des informations pour le processeur. Elle indique que ce document est conforme à la version 1.0 de la norme XML. Elle peut préciser le jeu de caractères utilisés dans le document (encoding) et s'il y a des références externes ou non (standalone). Exemple: 14 <?xml version="version" [encoding="encodage"][standalone="yes| no"]?> <?xml version="1.0"?> <?xml version="1.0" encoding="UTF‐8" standalone="no"?> Déclaration : Encoding les parseurs xml doivent supporter au minimum utf-8 et utf-16. L'encodage recommandé pour les documents XML est UTF-8, garantissant portabilité et multilinguisme. UTF-16 est un autre format permettant l'encodage de documents XML. Il est également possible d'utiliser un encodage spécifique, exemple ISO 8859-1, pour les langues latines Voir http://www.unicode.org  Latin/Arabe : ISO-8859-6,  Latin/Lapon/Nordique/Esquimau : ISO-8859-10;  Japonais : EUC-JP 15 <?xml version="1.0" encoding="ISO-8859-1"?>. Imbrication des éléments Tout document XML doit comporter une racine Chaque élément du document XML peut contenir un ou plusieurs éléments. Chaque document XML est hiérarchisé dans une arborescence. Les balises d’ouverture et de fermeture des éléments fils doivent toujours être comprises entre les balises d’ouverture et de fermeture des parents. 16 Élément La base d’un document XML Quand utiliser les attributs?  Valeur unique de - type simple (information monovaluée) Quand utiliser les éléments? Valeur de type complexe (énumérations, possède des propriétés) 17 Non de l’élément Attribut <Prix devise = ̎ EUR ̎> 25.42 </Prix> Balise ouvrante Contenu Balise fermante (opening tag) (closing tag) Élément Les balises XML peuvent être de deux sortes ; la première contient, entre la balise de début et la balise de fin, des données diverses comme du texte. La seconde est du type vide, c'est‐à‐dire, des balises ne contenant pas de données à proprement parler 18 <Elément>donnée</Elément> <Elément></Elément> <Elément/> Les Balises Un élément constitutif d’un document XML repose sur un nom et un contenu. Le contenu d’un élément est compris entre : Une balise de début (balise d’ouverture). Une balise de fin (balise de fermeture). Balise de fermeture = balise d’ouverture + / <pays>Tunisie</pays> Contrairement à HTML, la balise de fermeture est nécessaire dans XML. 19 Les noms de balises Les noms peuvent contenir des caractères alphanumériques, de soulignement (_), de ponctuation (. , ;) et le trait d’union.  Les noms de balises sont sensibles à la casse. <Pays> # <pays>  Les noms doivent commencer par un caractère alphabétique ou par le soulignement (_). Certains caractères spéciaux sont permis mais peuvent fausser l’interprétation au niveau de certains programmes (> + é à ù ï ç) Les noms ne peuvent pas contenir des espaces Les noms ne peuvent pas commencer par la séquence xml Les caractères interdits sont : ? $ ! < & 20 La racine À la racine d’un document XML, il ne peut y avoir qu’un seul et unique élément. Le document XML se termine à la fermeture de la balise de racine. 21 <? xml version = "1.0" ?> <messenger> <contact pseudo= "XXX" > </contact> </ messenger > <? xml version = "1.0" ?> <messenger> </ messenger > <contact pseudo= "XXX" > </contact> Les attributs Objectif: Associer des informations complémentaires aux éléments. Les noms des attributs suivent les mêmes règles que celles des noms des éléments. Un élément peut posséder un ou plusieurs attributs dans la balise d’ouverture. Le nom de l’attribut est unique pour un élément donné. La valeur de l’attribut doit obligatoirement être entre " ". Les guillemets (" ") peuvent être remplacés par des apostrophes (‘ ‘) 22 <montant monnaie= "DT" > 24 </montant> Entité Appel d'une entité dans un document : &nom_entite; Les caractères réservés de XML sont remplacés par des entités internes. Ces caractères sont les mêmes qu'en HTML: & < > " '. Les entités qui permettent de les représenter sont respectivement & < > " &apos; Tous les caractères peuvent être remplacés par une entité qui donne leur code &#code_car; Exemple: A pour le A Déclaration d’une entité: <!ENTITY deg "°"> exemple : il fait 25°C. 23 Commentaire Faciliter la lecture du code ainsi que sa maintenance. Ces commentaires seront ignorés lors de la compilation. Pour XML les commentaires s’écrit de la même manière que dans le langage HTML, ils peuvent inclure n'importe quel type de données sauf le --, ils ne peuvent pas apparaître à l'intérieur des balises.  <!--Commentaire--> 24 Règles de développement d’un document XML Un document XML est bien formé (l'analyseur XML peut construire son arborescence) si : il contient une déclaration XML ; il contient un ou plusieurs éléments ; il contient un élément racine encapsulant tous les autres éléments et leurs attributs les éléments non vides ont une balise de début et de fin ; les éléments non vides sont correctement imbriqués  les éléments vides ont un / à la fin de la balise avant le > ; les noms des balises ouvrantes et fermantes correspondent ; un nom d'attribut apparaît uniquement dans la balise ouvrante et une seule fois dans cette balise ; 25 Règles de développement d’un document XML les valeurs des attributs sont entre guillemets ou apostrophes ; la valeur des attributs n'appelle pas d'entités externes directement ou indirectement ; les caractères réservés sont remplacés par des références d'entités (par ex. < pour <) ; toutes les références à des entités doivent commencer par & et finir par ; s'il n'y a pas de DTD, les seules entités utilisées sont celles réservées de XML & < > &apos; " ; s'il y a une DTD toutes les entités non réservées utilisées sont déclarées dans la DTD. 26 Bibliographie http://www.w3c.org/XML http://www.xml.com http://fr.wikipedia.org/wiki/XML http://xml.apache.org http://www.xmlsoftware.com news://comp.text.xml 27 DTD (DOCUMENT TYPE DEFINITION) 28 Plan Définition de DTD Déclaration d’une DTD Déclaration des éléments Déclaration d’entités Déclaration des attributs Exemple de DTD interne Insuffisance des DTD 29 Bien formé / Valide Document bien formé Un seul élément racine Balises correctement imbriquées : balise ouvrantes ont une balise fermante associée et il n'y a pas de chevauchement … Le nom des balises est libre mais contient uploads/Ingenierie_Lourd/ architecture-orientee-services-soa-une-introduction-a-xml 1 .pdf

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