1 / 74

XML

XML. Extensible Markup Language. Why do we need XML?. SGML as an ISO Standard. XML. HTML. Introduction to XML Skill Level: Introductory Doug Tidwell (dtidwell@us.ibm.com) XML Evangelist IBM 07 Aug 2002. Standard Generalized Markup Language

fancy
Download Presentation

XML

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. XML Extensible Markup Language

  2. Why do we need XML? SGML as anISO Standard XML HTML Introduction to XML Skill Level: Introductory Doug Tidwell (dtidwell@us.ibm.com) XML Evangelist IBM 07 Aug 2002 Standard Generalized Markup Language (langage normalisé de balisage généralisé - SGML) est un langage de description à balises, de norme ISO (ISO 8879:1986). 1986 1993 1996

  3. Why do we need XML? << "HTML is the most successful markup language of all time. <p> <b>Mrs. Mary McGoon</b> <br/> 1401 Main Street <br/> Anytown, NC 34829 </p> The trouble with HTML is that it was designed with humans in mind. … The tags don't tell the browser what the information is. You and I know it's an address, but a machine doesn't. ">>

  4. XML voué à la simplicité des échanges est aujourd'hui une galaxie. <XML>

  5. Data Integration / e-Business Focus Document and Publishing Focus <XML>

  6. SOA and Web Services Data Integration / e-Business Focus Document and Publishing Focus SOAP XQuery XSLT ApplicationIntegration SVG EXI Flexible DataInterchange XSL-FO RelaxNG Schemas DTDs <XML>

  7. training • http://www.w3schools.com/xpath/xpath_intro.asp

  8. W3C

  9. XML et la diversité d'utilisation et fonctionnement • XML TutorialsXML TutorialDTD TutorialXML DOM TutorialXSL TutorialXSLT TutorialXSL-FO TutorialXPath TutorialXQuery TutorialXLink TutorialXPointer TutorialSchema TutorialXForms TutorialSOAP TutorialWSDL TutorialRDF TutorialRSS TutorialWAP TutorialWeb Services Tutorial

  10. XML et la diversité d'utilisation et fonctionnement • XML voué à la simplicité des échanges est aujourd'hui une galaxie. XML Schema pour définir les structures et les types de données XSLT pour transformer des données XML SOAP XML pour échanger des données entre les applications WSDL pour décrire les services Web RDF pour décrire des ressources Web XPath et XQuery pour accéder à des données XML SMIL pour des graphiques

  11. Plan • XML • Balise • Contenu et balisage • Éléments • Documents

  12. Plan • XML • Balise • Contenu et balisage • Éléments • Documents

  13. XML • Permet le stockage l'organisation et la vérification de l'information. • XML est un standard W3C. • XML est devenu indispensable dans le système d'information.

  14. Plan • XML • Balise • Contenu et balisage • Éléments • Documents

  15. Balisage • XML est un ensemble de règles permettant la création de langages de balisage. • un langage de balisage est un ensemble de symboles placés dans le corps d'un document afin d'en délimiter et d'en étiqueter les différentes parties. • XML n'est pas en langage en lui-même : c'est une spécification • Le balisage améliore la compréhension de l'information. • HTML : <i> 183 <i> • XML : <taille unite="cm"> 183 </taille>

  16. Plan • XML • Balise • Contenu et balisage • Éléments • Documents

  17. Balisage et contenu • Le contenu et le balisage sont des valeurs informatives du document. • Le Contenu est ce qui compte pour le lecteur mais cela doit être présenté d'une façon signifiante. • Le Balisage permet au programmes de déterminer les fonctions et les limites de ces différents contenus (voir plus loin).

  18. Plan • XML • Balise • Contenu et balisage • Éléments • Documents

  19. Les éléments • Les éléments sont des morceaux qui composent un document. • Ils s'imbriquent les uns dans les autres structurant et étiquetant le contenu d'un document.

  20. Plan • XML • Balise • Contenu et balisage • Éléments • Documents

  21. Le document • Un document est en XML l'unité fondamentale de l'information. • C'est un ensemble ordonné de balises et éléments • Le document peut correspondre à • une BD • un format d'échange de données entre application • (c'est une notion plus large que le document traditionnel)

  22. Modèle de document • Il existe deux moyens pour créer un langage dérivé de XML • XML sans modèle On parle de document bien formé, si le document satisfait aux règles minimales de XML • XML modèle de document Création d'une spécification qui établit les règles propres du document. La conformité des instances de document est obtenu par comparaison avec le modèle On parle de validation de document.

  23. Type de document • On parle de type de document (ou application XML) qui respecte les règles de XML. • Il existe de nombreuses applications XML dans de nombreux domaines. • XMLNews is a specification for exchanging news and other information. • XML Weather Service • http://www.weather.gov/xml/current_obs/ • http://www.medicalnewstoday.com/index.php?page=newsfeed

  24. Présentation • En XML, les styles et mise en forme du document sont définis dans un document appelé feuille de style. • L'idée est de séparer la forme du fond

  25. Traitement • Tout programme qui peut lire et traiter du XML est appelé processeur XML. • On parle de traitement du XML. • Validateurs • Navigateurs • Parseurs • Le parseur transforme par exemple le flux de caractères en atomes et construit une structure d'arbre en mémoire.

  26. Exemple de Transformation • Un processus qui réorganise les différentes parties d'un document est appelée transformation. • Les documents sont transformés à l'aide de XSLT (Extensible Style Language for transformation) • il est possible de • résumer • extraire • calculer • Limites du HTML.

  27. Document • Prologue • Contenu textuel • Les chevrons (<>) et les noms qu'ils encadrent sont appelé des balises. • Elles marquent et nomment les parties du document et ajoutent des informations qui aident à en définir la structure. • Le balisage et le contenu sont complémentaires. • Ils forment ensemble une entité d'information dont les données sont découpées et étiquetées.

  28. <!-- Prologue --> <?xml version="1.0" encoding="ISO-8859-1"?> <!-- Élément racine --> <biblio> <!-- Premier enfant --> <livre> <!-- Élément enfant titre --> <titre>Les Misérables</titre> <auteur>Victor Hugo</auteur> <nb_tomes>3</nb_tomes> </livre> <livre> <titre>L'Assomoir</titre> <auteur>Émile Zola</auteur> </livre> <livre lang="en"> <titre>David Copperfield</titre> <auteur>Charles Dickens</auteur> <nb_tomes>3</nb_tomes> </livre> </biblio>

  29. Prologue • Contient une déclaration XML décrivant des propriétés générales du document indiquant au processeur XML qu'il a besoin d'un parseur XML pour l'interprétation du document. • Une déclaration de type • on spécifie la déclaration d'entité la DTD utilisée, nom de l'élément racine.

  30. Exemple : Déclaration XML <?xml nom="val" ... ?> propriété Propriété : • version • encoding • standalone (No : indique qu'il faut charger d'autres fichiers)

  31. <!-- Prologue --> <?xml version="1.0" encoding="ISO-8859-1"?> <!-- Élément racine --> <biblio> <!-- Premier enfant --> <livre> <!-- Élément enfant titre --> <titre>Les Misérables</titre> <auteur>Victor Hugo</auteur> <nb_tomes>3</nb_tomes> </livre> <livre> <titre>L'Assomoir</titre> <auteur>Émile Zola</auteur> </livre> <livre lang="en"> <titre>David Copperfield</titre> <auteur>Charles Dickens</auteur> <nb_tomes>3</nb_tomes> </livre> </biblio>

  32. Déclaration de type • <!DOCTYPE racine SYSTEM "URI vers la DTD"> • C'est une déclaration optionnelle servant à attacher une grammaire de type Document Type Definition au document XML.

  33. exemple <?xml version="1.0"?> <!DOCTYPE note [ <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> ]> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend</body> </note> http://www.w3schools.com/dtd/default.asp

  34. Balisages • élément • attribut • espace de noms • entités • commentaires • les instructions de traitements • sections CDATA

  35. Balisages • élément • attribut • espace de noms • entités • commentaires • les instructions de traitements • sections CDATA

  36. Éléments • Les éléments sont les parties d'un document <nom attribut="val" ... > contenu </nom> • Les éléments vides <nom attribut="val" ... /> Les éléments sont soumis aux règles de positionnement • La balise de fin doit arriver après la balise de début • Les balises début et fin doivent apparaître tous deux à l'intérieur d'un même élément parent.

  37. <!-- Prologue --> <?xml version="1.0" encoding="ISO-8859-1"?> <!-- Élément racine --> <biblio> <!-- Premier enfant --> <livre> <!-- Élément enfant titre --> <titre> Les Misérables </titre> <auteur>Victor Hugo</auteur> <nb_tomes>3</nb_tomes> </livre> <livre> <titre>L'Assomoir</titre> <auteur>Émile Zola</auteur> </livre> <livre lang="en"> <titre>David Copperfield</titre> <auteur>Charles Dickens</auteur> <nb_tomes>3</nb_tomes> </livre> </biblio>

  38. Éléments • Nom d'un élément : suite non vide de • caractères alphanumériques • tiret-souligné (underscore) • signe moins • point • caractère deux-points (:) ce caractère possède un sens particulier • Contraintes à satisfaire • le premier caractère doit être alphabétique ou un tiret-souligné • les trois premiers caractères ne doivent pas former une chaîne dont la représentation en lettres minuscules est "xml".

  39. Éléments • Corrects • _tiyi • Nom_société • xsl:rule • X.11 • Incorrects • 2009-catalogue • XmlSpécifification • nom société

  40. Balisages • élément • attribut • espace de noms • entités • commentaires • les instructions de traitements • sections CDATA

  41. Attributs • Un élément peut avoir un nombre quelconque d'attributs • nom="valeur" • attributs réservés : • xml:lang • xml:space • xml:link • xml:attribut

  42. Attributs ou éléments • On peut écrire avec des attributs ce que l'on écrit avec des éléments <livre lang="en"> … </livre> <livre> <lang>en </lang> … </livre> • L'inverse n'est pas vrai

  43. Régles • Choix de l'attribut, lorsque une valeur • n'est pas répétée • n'évoluera pas vers une structure complexe • En cas de doute • choix de l'élément

  44. Balisages • élément • attribut • espace de noms • entités • commentaires • les instructions de traitements • sections CDATA

  45. Espace de noms : garantir l'absence de conflits doc 2 doc1 doc 3 nom (livre) nom (auteur)

  46. Choix d'un identifiant unique • L'identifiant pourrait être n'importe quel chaîne de caractère. • L'identifiant est généralement une URL • L'URL ne signifie pas qu'il doit y avoir un document sur le serveur.

  47. Choix d'un identifiant unique <h:table xmlns:h="http://www.w3.org/TR/html4/"> <f:table xmlns:f="http://www.w3schools.com/furniture">

  48. exemple • xmlns:xlink="http://www.w3.org/1999/xlink" • xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

  49. Exemple <?xml version="1.0" encoding="utf-8"?> <library xmlns="http://dyomedea.com/ns/library" > <book id="b0836217462"> <title>Being a Dog Is a Full-Time Job</title> <authors> <person id="CMS"> <name>Charles M Schulz</name> </person> </authors> </book> </library>

  50. remarque • l'espace de nom est invisible : Mozilla

More Related