M2 SIMI - Diffusion d'information multimedia - XML

Auteur(s):
Sébastien CHOPLIN
dans ce qui suit, les URL suivantes sont équivalentes:

Exercice 1: XML - syntaxe

Pour vérifier qu'un document XML est conforme à la syntaxe (on dit alors qu'il est well-formed), nous utiliserons le programme xmlwf de la suite expat disponible à http://www.jclark.com/xml/expat.html (ou ici expat.zip) (l'executable pour Window$ est dans le repertoire bin)

Enregistrez sur votre machine le document XML note.xml.

Remarque: le programme xmlwf signale l'emplacement des erreurs s'il y en a (numéro de ligne et numéro de la colonne) et ne renvoie rien sinon.

  1. Ce document est-il well-formed (i.e.: respecte-t-il la syntaxe XML) ?
  2. S'il ne l'est pas, répertoriez les erreurs et corrigez les avec votre éditeur de texte favori, sinon passez à la question suivante...

Exercice 2: XML - DTD - Utilisation

Pour vérifier qu'un document XML est conforme à une DTD (on dit alors qu'il est valide), nous utiliserons le programme xmllint que vous trouverez sur le site http://xmlsoft.org/ (les versions pour Window$ sont sur http://xmlsoft.org/sources/win32/)
Il faut que vous chargiez:

Recopiez les fichiers dll de iconv et zlib dans le repertoire où se trouve xmllint.

On dispose de la DTD cdtheque.dtd:
==========================
<!ELEMENT cdtheque (cd*) >

<!ATTLIST cdtheque date CDATA #REQUIRED>
<!ATTLIST cdtheque auteur CDATA #REQUIRED>

<!ELEMENT cd  (titre,artiste,style?)>

<!ELEMENT titre        (#PCDATA)>
<!ELEMENT style        (#PCDATA)>
<!ELEMENT artiste      (#PCDATA)>
==========================

  1. Créez un document XML vérifiant cette DTD en incluant la DTD dans le document.
  2. Créez un document XML vérifiant cette DTD en externalisant la DTD.
  3. Vérifiez la validité de vos fichiers avec le programme xmllint (utilisez l'option --dtd-valid)

Exercice 3: XML - DTD - Création

On veut créer une DTD permettant de décrire un format pour stocker une liste des étudiants et des UE qu'ils suivent. Pour chaque étudiant on veut:

  1. Donnez une DTD répondant au problème.
  2. Créez un fichier xml avec 2 étudiants et validez le tout.
  3. Votre DTD permet-elle d'être sûr qu'il n'y aura pas de confusion dans la description d'une UE (i.e.:une UE peut-elle être décrite de 2 manières différentes) ?
  4. Si non: utilisez la sérialisation pour résoudre le problème.

Exercice 4: XHTML

  1. Consultez la DTD de XHTML 1.0 (Transitionnal) dipsonible ici: http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd.

    Quels sont les attributs obligatoires de l'élément img ?
  2. Quelle est la méthode HTTP par défaut d'un formulaire (form) ?
  3. Existe-t-il un élément BR ?
  4. Existe-t-il un élément frameset ?