Agenda Généralités sur XMLGénéralités sur XML La syntaxe du langage Les API pour XML Un exemple Un exercice
XML: eXtensible markup language La version 1.0 du standard XML a été publiée en 1998 (W3C Group) XML est un métalangage de description pour les documents contenant une information structurée XML permet de définir la structure des documents à laide: De balises (tags en anglais) De relations entre balises
Saxophone Trompette Flûte Violon Violoncelle Alto Saxophone Trompette Flûte Violon Violoncelle Alto
Généalogie XML est un sous-ensemble de SGML, Standard Generalization Markup Language XML HTML SGML [Ceponkus99]
Pourquoi XML? SGML est un langage complexe. HTML a dimportantes limitations: – Un manque de structure – Un langage fixe (Un manque d'extensibilité) – Un manque de description – Aucun support pour la validation
L application d XML Adaptation du "viewing" aux besoins des utilisateurs Applications faciles de type "fiches" (bibliographies, recettes, etc.) Echange de données Middle-tier application (pont entre bases de données et applications) Médiation entre différents types d'application
E-commerce et XML CommerceNet (CBL- Common Business Library) Open Buying on the Internet (OBI) Open Trading Protocol (OTP) Internet Content and Exchange (ICE) Autre standards SMIL Synchronized Multimedia Integration Language MathML Mathematical Markup Language DMTF Desktop Management Task Force Catalog
Agenda Généralités sur XML La syntaxe du langageLa syntaxe du langage Les API pour XML Un exemple Un exercice
Les composants XML XSL ~ eXtensible Stylesheet Language DTD ~Document Type Definition
Un document bien formé les éléments doivent être encadrés par des balises ouvrantes ( ) et fermantes ( ) les éléments vides sont permis, selon le format. les valeurs d'attributs doivent être entre guillemets " " les noms des attributs doivent tous être en minuscules
20th December XML class Hello,world!!!.... Feuille XML
Les références …….. …... Michael Schumaher Genève Suisse
Document avec DTD externe : Bonjour! Document avec DTD interne : <!DOCTYPE accueil [ ]> Bonjour! DTD
La déclaration de type d'élément DTD A et B = tags Explication TypeElément A? A (un seul) est une option, (match A ou rien) A+ Il faut un ou plusieurs A A* A est une option, il faut zéro, un ou plusieurs A A | B Il faut A ou B, mais pas les deux A, B Il faut A, suivi de B (dans lordre) (A, B) + Les parenthèses regroupent. Ici: un ou plusieurs (A suivi de B) Elément spéciaux Explication TypeElément #PCDATA Données (non- interprétés par XML) dans le langage dencodage courant. ANY Mot clé qui indique que tous les éléments sont autorisés (déconseillé) EMPTY Tag sans "closing" comme
DTD La déclaration de liste d'attributs <!ATTLIST NomListeAttribut Nom TypeAttribut ValeurParDéfaut> <!ATTLIST défterme ident ID #REQUIRED nom CDATA #IMPLIED> <!ATTLIST liste type (àpuces|ordonnée|glossaire) "ordonnée"> <!ATTLIST formulaire méthode CDATA #FIXED "ENVOI">
DTD La déclaration de liste d'attributs Explication de TypeAttribut ID Attribut unique dans le document IDREF Doit correspondre à un ID attribut dans un des éléments IDREFS Doit correspondre à 1 ou plusieurs ID attributs (séparés par des blancs) (A, B, C,..) Liste énumérée CDATA Contenu arbitraire NMTOKEN Un seul Mot Explication de ValeurParDéfaut #IMPLIED Attribut à option #REQUIRED Attribut nécessaire #FIXED Value Attribut avec valeur fixe
Les feuilles de style La présentation d'un document XML ne peut se faire sans une conversion en HTML. Une feuille de style stylesheet est un langage conçu pour cette conversion Deux langages prédominent Cascading Style Sheets CSS (HTML,XML) eXtensible Stylesheet Language XSL (XML)
Agenda Généralités sur XML La syntaxe du langage Les API pour XMLLes API pour XML Un exemple Un exercice
Parseurs XML IBM Alpaworks'IBM Alpaworks' validating Java XML parser JAXPSun's implementation :JAXP-standard parser AElfredAElfred Java-based XML parser by Microstar LarkLark, Tim Bray's non-validating XML processor in Java TclXMLTclXML, Steve Ball's validating XML parser for processing XML documents in Tcl MSXMLMSXML, Microsoft's validating XML parser in Java...
API - Application Programming Interface SAX-Simple API for XML DOM-Document Object Model
Références Ouvrages Alex Ceponkus, Faraz Hoodbhoy, "Applied XML, A toolkit for programmers", Wiley computer publishing, New York, Simon North, Paul Hermans, " Teach yourself XML", SAMS, Indianapolis, 1999.Liens A technical introduction to XML by Norman Walsh
Agenda Généralités sur XML La syntaxe du langage Les API pour XML Un exempleUn exemple Un exercice
Agenda Généralités sur XML La syntaxe du langage Les API pour XML Un exemple Un exerciceUn exercice