Les schémas XML
Comme une DTD, un schéma XML permet de définir un ensemble de règles visant à définir un document XML, notamment les balises autorisées, leurs attributs et les relations des marqueurs entre eux.
Contrairement à une DTD, un schéma permet de définir des types pour les données. Par exemple, avec une DTD, il sera possible de définir une balise <NOM>, dont le contenu pourra être n'importe quel type de données.
La puissance des schémas réside dans la possibilité de " typer la balise ". Ainsi, on pourra obliger un utilisateur à ne saisir que des caractères pour la balise <NOM> si celui-ci est défini comme une chaîne de caractères. Il sera également possible, d'en définir la longueur minimale et maximale…
De plus, un schéma XML est un document XML à part entière. Il peut donc être édité et manipulé à partir de n'importe quel outil d'édition ou de traitement XML. Cette possibilité est intéressante pour les échanges entre systèmes hétérogènes. Elle permet de définir un schéma-pivot que l'on nomme " schéma d'interopérabilité " entre schémas différents concernant un même type de données. Le schéma d'interopérabilité assurera la transformation d'un message d'une structure vers l'autre structure. C'est par ce moyen que les différentes initiatives d'échanges électroniques peuvent envisager leur compatibilité.