XML est un langage de codage de données dont l'objectif est, dans un échange entre systèmes informatiques, de transférer, en même temps, des données et leurs structures.

Permettant de coder n'importe quel type de donnée, depuis l'échange EDI jusqu'aux documents les plus complexes en passant par les échanges de données inter-applications, son potentiel est de devenir le standard universel et multilingue d'échange d'informations. Appliqué aux documents textuels, il permet d'identifier, de façon logique, la structure et l'organisation de l'information textuelle.

Recommandations (attention, cette partie est maintenue de façon occasionnelle)
pictos/frflag.gif 
Le langage de balisage extensible (XML) 1.1
- Recommandation, 04-02-2004, version 1.1
- accès à l'historique des versions
xmlns:xml="http://www.w3.org/XML/1998/namespace"
pictos/enflag.gif 
Extensible Markup Language (XML) 1.1 (Second Edition)
- Recommandation, 16-08-2006, version 1.1
- accès à l'historique des versions
xmlns:xml="http://www.w3.org/XML/1998/namespace"
Objectifs

XML est un format textuel très flexible dérivé de SGML. Initialement conçu pour relever les défis de l'édition électronique de grande puissance, XML joue également un rôle de plus en plus important dans l'échange d'une grande variété de données, que ce soit sur le Web ou pour n'importe quel échange inter-applicatif.

XML permettra, comme le souligne le W3C :

  • l'édition électronique internationalisée, de façon indépendante des logiciels et des systèmes ;
  • aux industries de définir des protocoles, indépendants des logiciels et des systèmes, pour l'échange des données (particulièrement les données du commerce électronique) ;
  • de fournir de l'information aux agents utilisateurs sous une forme qui permette un traitement automatique après réception, par exemple pour toutes les applications de téléphonie mobile ;
  • de faciliter le développement logiciel dès lors qu'il s'agit de manipuler l'information spécialisée et répartie ;
  • de faciliter les traitements de données avec des logiciels peu coûteux ; à ce titre, l'avenir d'XML et d'un certain nombre de ses recommandations associées (XSLT, XPath, Infoset, etc.) est de devenir partie intégrante des couches hautes des systèmes d'exploitation ;
  • aux utilisateurs du Web d'afficher l'information reçue avec la feuille de styles qu'ils souhaitent ;
  • de faciliter la fourniture de Métadonnées (données descriptives de documents) qui aide à trouver de l'information.
Principes

Un document XML se compose, d'une part, de texte, et, d'autre part, d'informations de structure. Les informations de structure servent le plus souvent à délimiter du texte, pour en identifier la sémantique. Ainsi, <métier>Consultant</métier> permet de dire que la chaîne de caractères "Consultant" doit être comprise comme étant une définition de métier. Il est possible de délimiter des chaînes de caractères ; il est aussi possible de délimiter tout ensemble d'informations mélangeant texte et structure. Par exemple, dans le document suivant :

<métier>

<nom>

Consultant

</nom>

<descr>

Le consultant travaille pour des consultés qui ...

</descr>

</métier>

La notion de métier introduit, d'une part, un nom de métier et, d'autre part, une description de métier. C'est l'appartenance hiérarchique qui définit que tout cela parle bien du même métier : elle permet de spécialiser des description : un nom de métier et une description de métier.

Pour compléter cette description, il est parfois nécessaire de valuer la signification d'un objet. Par exemple, <auteur affiliation="rennes2">Jean Dupont</auteur>, permet d'identifier un chaîne de caractères comme étant un auteur et, en plus, de décrire cet auteur, par valuation, comme appartenant à l'Université de Rennes II.

Les balises (<maBalise> ... </maBalise>) délimitent des objets typés ; les attributs (<maBalise type="standard">) définissent des valuations d'objets. Un document XML est alors un arbre d'objets typés et valués.

Pour finir, un document XML doit définir le jeu de caractères qu'il utilise, ainsi que la version de la recommandation XML. Du coup, l'exemple précédent s'écrira :

<?xml version="1.0" encoding="utf-8"?>

<métier>

...

</métier>

Ce document est parfaitement décrit, il représente, au sens de la recommandation, un document "bien formé" (wellformed). Si nécessaire, un modèle documentaire peut lui être adjoint (voir DTD). Celui-ci définira les contraintes associées à ce document : le document devra alors être "valide", au regard de ce modèle. Définis de façon électronique, les applicatifs de type parsers seront capables de valider, de façon automatisée, la conformité d'un document à sa classe, à son modèle. L'avantage ? Il sera possible d'appliquer des processus automatiques sur une classe de documents (les algorithmes étant écrits au regard de la classe et non pas au regard de chaque instance de document).

Les différents aspects de la recommandation XML

La recommandation XML s'intéresse à des notions fort différentes :

  • un langage de codage, basé sur Unicode XML, de documents, avec des éléments, des attributs, un jeu de caractères, etc. ;
  • un langage de définition de modèles documentaires, avec les DTD ;
  • un langage d'expression d'inclusions de fichiers, avec les internal et external subset des DTD ;
  • l'expression d'informations applicatives, comme les deux attributs xml:lang et xml:space, dont le rôle est, respectivement, d'indiquer la langue de rédaction d'un fragment de contenu et la façon de traiter les caractères d'espacement d'un contenu ;
  • un langage de prise en compte extrêmement limité des espaces de noms.

Le fait de mettre tous ces aspects dans une même recommandation a un aspect politique important, car cela oblige à prendre tout en compte sans différenciation. D'un point de vue technique, cela peut parfois poser des problèmes de compréhension : par exemple, pourquoi prendre en compte seulement les notions de langue et pas celles d'URI ? Cela peut aussi poser des problèmes d'architecture d'application, dès lors que, par exemple, un Schema permet d'exprimer la même chose, et davantage qu'une DTD... sauf les notions d'inclusions de données spécifiées de façon indépendante des documents eux-mêmes, au travers des entités générales.

FR EN
puce 
Actualités XML, Page d'accueil (<XML>fr)
Site de Eric Van Der Vlist relayant l'actualité anglaise au jour le jour
puce 
XML Francophone, le pont francophone vers XML, Page d'accueil (XML Francophone)
Site à l'initiative de la DGA, de EDIFRANCE, etc. : "un pont francophone vers XML".
puce 
Page d'accueil frXML (EDIFRANCE)
Projet du groupe EDIFRANCE dont l'objectif est notamment de devenir un centre d'enregistrement de Schema et de DTD
puce 
Forum "Publier en XML"
ARTIST (Appropriation par la Recherche des Technologies de l'IST) est une initiative qui est issue de réflexions venant de praticiens de l’INIST ou d’institutions diverses et de la communauté scientifique.
puce 
Livre Blanc "XML pour l'entreprise" (Application-Servers.com)
Ce document est un ouvrage collectif libre de droits. Il est consultable après s'être enregistré sur le site Application-Servers.com.
puce 
Développement XML en Java sous Linux (Michel Casabianca)
Une forte orientation vers les outils JAVA.
puce 
XML, Répertoire commenté d'outils (Denis Santerre)
Les outils permettant de manipuler XML
puce 
Extensible Markup Language (XML) Home Page (W3C)
Point du W3C Architecture Domain
puce 
XML (At DevelopMentor)
Voir en particulier le tutoriel XML orienté pour un public de développeurs
puce 
XML files.com
Précédemment "XML101"
puce 
XML Home Page (XMLPitstop.com)
The mission of this website is to provide our developer community with a central location to learn about XML, locate resources and network with fellow developers.
FR EN
puce 
Initiation à XML
Fred Remise, Microsoft MVP, le 16 octobre 2003
puce 
Markup and Core Concepts (O'Reilly)
Chapitre 2, extrait de la publication "Learning XML. (Guide to) Creating Self-Describing Data", Erik T. Ray, janvier 2001.
puce 
The Annotated XML Specification (xml.com)
C.M. Sperberg-McQueen, Jean Paoli, Tim Bray
puce 
Introduction to XML (IBM Developer Works)
Doug Tidwell, août 2002
puce 
What is XML?
L. C. Rees
puce 
XML Tutorial (The Skew.org)
A reintroduction to XML with an emphasis on character encoding.
puce 
XML Tutorial (DevelopMentor)
Pour accéder au tutoriel gratuitement, DevelopMentor demande de s'enregistrer
FR EN
puce 
XML : langage et applications (2e édition), Alain Michard (INRIA), 12/2000, édité par Editions Eyrolles, France
Livre, 494 pages. 2e édition, la première édition datant de novembre 1998.
puce 
Présentation d'XML, création de pages en XML/XSLT, M. Schneider, 04/10/2000, édité par Education nationale, Académie de Nancy-Metz, France
puce 
Guidexpress XML, Andreas Petrausch, 07/2000, édité par Micro Application
Livre, 180 pages
puce 
XML, Benoit Marchal, in Solutions.net, 06/2000, édité par Campus Press
Livre, 420 pages
puce 
XML, Editeur Campus Press, 08/2000, édité par Campus Press
Livre, 377 pages
puce 
Initiation a XML. Avec trois études de cas détaillées, David Hunter, in Solutions développeurs, 01/2001, édité par Editions Eyrolles, France
Livre, 856 pages
puce 
eXtensible Markup Language, Dominique Liard, 22/07/2000, édité par Infini, l'Encyclopédie (France)
puce 
Structure et gestion de documents (XML), Daniel Orler, in Net Hebdoc (editer.ladoc.net), 11/2001, édité par ladoc.net, France
Dossier mis à jour régulièrement
puce 
XML, eXtensible Markup Language, in Dossier documentaire, édité par Ministère de la Jeunesse, de l'Éducation nationale et de la Recherche, Direction de la technologie - SDTICE
Dossier régulièrement mis à jour depuis mai 2000
puce 
XML, Le guide de l'utilisateur, Elliotte Rusty Harold, 02/2000, édité par OEM
Livre, 912 pages
puce 
XML, la synthèse. Intégrez XML dans vos architectures, Sandrine Munerot, Laurent Poublan, Alexandre Kaszycki, Anelyse Boukhors, Jérome Laplace, in Collection InfoPro, 12/01/2002, édité par Dunod
Préface de Gilles Clavel, 264 pages
puce 
Guide de l'administrateur XML, William Stanek, in Collection Guide de l'administrateur (marque Microsoft Press), 11/04/2002, édité par Dunod
Traduit de l'américain par Guillaume Heilles, 448 pages
puce 
Construire une application XML, J. Bernadac, F. Knab, in Solutions développeurs, 06/1999, édité par Editions Eyrolles, France
Livre, 512 pages
puce 
XML et Java, avec trois études de cas détaillées, F. Knab, Franck Lepoivre, Francois Rivard, Cyrille Sannier, J. Bernadac, in Solutions développeurs, 11/2000, édité par Editions Eyrolles, France
Livre, 451 pages
puce 
Atelier XML, Jake Sturm, 11/2000, édité par Microsoft Press
Livre, 478 pages
puce 
Formation à XML, Michael J. Young, 10/2000, édité par Microsoft Press
Livre, 495 pages
puce 
XML - précis & concis, Simon Saint-Laurent, Michael Fitzgerald , in Précis & Concis - 3e édition, 02/2006, édité par O'Reilly
Présentation, par l'éditeur, du livre et des auteurs
puce 
Le programmeur XML, Simon North, Paul Hermans, 08/1999, édité par Campus Press
Livre, 600 pages
puce 
Introduction au XML, Simon Saint-Laurent, in Pro-Micro, 03/2000, édité par OEM
Livre, 364 pages
puce 
Introduction à XML, Martin Sévigny, 10/09/2002, édité par ajlsm, France
puce 
XML en action, William J. Pardi, 05/1999, édité par Microsoft Press
Livre, 400 pages
puce 
La documentation structurée, Antoine Rizk, 19/11/1999, édité par Ministère de la Culture, France. Journée d'étude sur la documentation informatisée
puce 
XML en 10 points, Bert Bos, 27/09/1999, édité par W3C
puce 
XML l'amorce d'une révolution pour les systèmes d'information du futur, Christine Vanoirbeek, Afzal Ballim, Omar Abou Khaled, Yassine Rekik, Frederic Bapst, Maria Chiara Pettenati, in Flash Informatique - 10-98, 15/12/1998, édité par Ecole polytechnique fédérale de Lausanne, Suisse
puce 
Document XML bien formé, Didier Ferment, 29/07/2000, édité par Université de Picardie Jules Vernes, France
puce 
Dossier : Introduction au XML (Extensible Markup Language), Guy Teasdale, in La Lettre du Bibliothécaire Québécois - 10, 29/03/1998, édité par Agence Science-Presse, Québec, Canada
puce 
Métachronique XML , Guy Teasdale, in La Lettre du Bibliothécaire Québécois - 11, avril/mai 1998, 15/05/1998, édité par Agence Science-Presse, Québec, Canada
puce 
Le langage XML, Jon Bosak, Tim Bray - 261, 07/1999, édité par Revue Pour la Science, France
puce 
Cours URFIST, J. Ducloy (URFIST), 7/03/2001, édité par INIST
Copie de transparents
puce 
XML, Jean-François Pillou, 12/2000, édité par Commentcamarche.net
puce 
XML, édité par webastuces
puce 
Free Library, édité par PerfectXML.com
Extraits d'ouvrages publiés sur le sujet
puce 
XML Software Guide, Ken Sall, 05/07/1998, édité par Web Developer's Virtual Library
Ce guide fait l'objet de mises à jour
puce 
The XML Companion, Neil Bradley - 3e édition, 01/2002, édité par Addison-Wesley
puce 
The State of XML, Edd Dumbill, 16/06/2000, édité par xml.com
puce 
XML at SUN, Authoring XML, in Developper Connection, /2001, édité par SUN
puce 
XML for your Palm, Norman Walsh, in Developper Connection, /2000, édité par SUN
puce 
XML: articles, édité par IBM
Ensemble d'articles sur XML. Tri possible par auteurs, sujets, titres d'articles, dates de parution
FR EN
puce 
xml decid. Discussions sur les marchés et entreprises autour de XML (<XML>fr)
Liste de diffusion, en français, pour un public décideur
puce 
xml tech. Discussions techniques au sujet de XML (<XML>fr)
Liste de diffusion, en français, pour un public informaticien

Valid XHTML + RDFa