Je viens de finir un exposé sur les langages de schéma
pour décrire un langage XML. Les
transparents sont disponibles sous une forme adaptée à la présentation ou bien à l'impression. Le source est également disponible.
XML permet de définir plusieurs langages spécialisés, comme
Docbook,
Atom (format de syndication, ), ou bien EPP ou IRIS, chers à
tous les registres. Chacun de ces langages est défini par un schéma
et ce schéma peut être écrit dans différents langages :
le langage originel, DTD (utilisé par le
, par Docbook jusqu'à la version 4,
l'actuelle),Examplotron, qui permet de créer un
schéma à partir d'un document exemple,les W3C Schemas, souvent appelés XSD (utilisés par Wikipedia, par
SOAP, ou bien pour EPP et IRIS - ),RelaxNG, le petit dernier (utilisé par OpenDocument, Docbook à
partir de la version 5, Atom, RFC-editor queue, etc).
Avoir un schéma pour ses documents XML (il faut noter que ce n'est pas
obligatoire) permet de les valider et de guider le processus
d'édition.
Cet exposé parle donc de :
Petit rappel XML. - Pourquoi un
langage de schéma ? Validation et édition guidée.Caractéristiques
d'un langage de schéma. Décrire la structure et décrire le contenu des
éléments (leur type). Ambiguïté et non-déterminisme.Exemple de
langage XML qui va être implémenté avec les divers schémas.DTD, l'ancêtre et ses limites.Examplotron. W3C Schemas, le
langage d'EPP et d'IRIS.RelaxNG, le langage de Docbook et
d'Atom.La notion de bibliothèque de types.Outils de validation
avec un schéma : rnv, xmllint ou bien jing.Outils d'édition guidée avec un schéma : nxml mode.