INRIA
[Up]

TP XML Schémas

Note

Réponses

Les réponses sont affichées dans ce style là .

On dispose d'un document XML et de sa DTD qui utilise une entité.

Le document XML décrit les animaux d'un Zoo. On veut remplacer la DTD par un schéma du W3C.

W3C XML Schema

Convertissez (à  la main, sans aide d'outil qui le fasse automatiquement) la DTD en schéma du W3C. Remplassez les notations (attributs de type ENTITY dans la DTD) par le type xs:anyURI et ajoutez des types forts là  où c'est possible (sexe, unités, valeurs numériques, dates, etc).

Associez le schéma au document et écrivez un programme Java qui permette de le valider. (voir javax.xml.validation) Que constatez-vous comme erreur ? Les dates dans le document XML n'ont pas un format standard. Corrigez les données du document XML et revalidez ; il suffit de mettre les dates au format AAAA-MM-JJ (remplacer "1997-4-1" par "1997-04-01") .

zoo.xsd

Relax NG

Refaites le même exercice avec Relax NG au lieu de W3C XML Schema.

Ecrivez également le schéma sous forme "Relax NG compacte".

Utilisez Jing pour valider votre document avec un schéma Relax NG (formes XML et compacte). Lancez la validation en ligne de commande sans faire de programme Java.

zoo.rng

zoo.rnc