Définir le format d’un document XML (DTD et Schémas)

Extrait du cours définir le format d’un document XML

……..
II – Initiation aux Schémas XML
II-A – Introduction
II-A-1 – Limitations des DTD
Lors de son lancement, XML a été perçu comme une réelle chance pour les développeurs d’avoir à disposition un langage simple d’utilisation, portable sans difficulté d’une machine -et d’une application- à une autre, et libre de droits. Dans les premiers temps, un fichier XML, si on voulait le standardiser en utilisant un vrai langage général de description, devait dépendre d’une DTD. Mais ce format de description, hérité de SGML, souffre de nombreuses déficiences.
1 Premièrement, les DTD ne sont pas au format XML. Cela signifie qu’il est nécessaire d’utiliser un outil spécial pour manipuler un tel fichier, différent de celui utilisé pour l’édition du fichier XML.
2 Deuxièmement, les DTD ne supportent pas les « espaces de nom » (nous reviendrons sur cette notion). En pratique, cela implique qu’il n’est pas possible d’importer des définitions de balises définies par ailleurs dans un fichier XML défini par une DTD.
3 Troisièmement, le « typage » des données (c’est-à-dire la possibilité de spécifier par exemple qu’un attribut ne doit être qu’un nombre entier) est extrêmement limité.
II-A-2 – Apports des schémas
Conçu pour pallier les déficiences pré-citées des DTD, XML Schema propose des nouveautés en plus des fonctionnalités fournies par les DTD :
• Le typage des données est introduit, ce qui permet la gestion de booléens, d’entiers, d’intervalles de temps…
Il est même possible de créer de nouveaux types à partir de types existants.
• La notion d’héritage. Les éléments peuvent hériter du contenu et des attributs d’un autre élément..
• Le support des espaces de nom.
• Les indicateurs d’occurrences des éléments peuvent être tout nombre non négatif (rappel : dans une DTD, on est limité à 0, 1 ou un nombre infini d’occurences pour un élément).
• Les schémas sont très facilement concevables par modules.
II-B – Les premiers pas
II-B-1 – Introduction
Le but d’un schéma est de définir une classe de documents XML. Il permet de décrire les autorisations d’imbrication et l’ordre d’apparition des éléments et de leurs attributs, tout comme une DTD. Mais il permet aussi d’aller au-delà.
Un premier point intéressant est qu’un fichier Schema XML est un document XML. Cela permet à un tel document d’être manipulé de la même manière que n’importe quel autre fichier XML, et en particulier par une feuille de style XSL.
Par exemple, il est notamment possible d’automatiser la création d’une documentation à partir d’un schéma, fondée sur les commentaires et explications qui s’y trouvent. C’est d’ailleurs chose facile avec l’éditeur oXygen, via le menu Modules d’extension>Schema Documentation, à partir d’un exemple de schéma, de produire la documentation correspondante.
Le vocabulaire de XML Schema est composé d’environ 30 éléments et attributs. Ce vocabulaire est, a priori de manière bizarrement récursive et « auto-référente », défini dans un Schéma. Mais il existe également une DTD.
……..

Lire aussi  Cours et support sur le stockage de données XML

Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Définir le format d’un document XML (DTD et Schémas) (288 KO) (Cours PDF)
document XML

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *