TP2 : DTD & Schémas XML
Exercice 1 :
- Ecrire un document CV.xml modélisant votre Curriculum Vitae (réfléchir à ce qui doit être mémorisé et comment structurer l'information).
- Ecrire la DTD associée et vérifier si le document CV.xml est valide.
Exercice 2 :
Soient le document XML ouvrages.xml et la DTD associée.
<!ELEMENT ouvrages (livre | rapport | article)* > <!ELEMENT livre (titre, auteur+, chapitre+) > <!ATTLIST livre langue CDATA #REQUIRED nbpage CDATA #REQUIRED> <!ELEMENT chapitre (section)+ > <!ELEMENT titre (#PCDATA) > <!ELEMENT nbpage (#PCDATA) > <!ELEMENT auteur (nom, prenom, pays?) > <!ELEMENT nom ( #PCDATA)> <!ELEMENT prenom (#PCDATA) > <!ELEMENT pays (#PCDATA) > <!ELEMENT section (para)+ > <!ELEMENT para (#PCDATA) > <!ELEMENT rapport (titre, auteur+, chapitre+) > <!ATTLIST rapport langue CDATA #REQUIRED nbpage CDATA #REQUIRED> <!ELEMENT article (titre, auteur+, section+)> <!ATTLIST article langue CDATA #REQUIRED nbpage CDATA #REQUIRED> | <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ouvrage SYSTEM "ouvrages.dtd"> <ouvrages> <article langue="français" nbpage="30"> <titre>Computer evolution</titre> <auteur> <nom>Eliot</nom><prenom>John</prenom><pays>USA</pays> </auteur> <section><para>This is a state of art about ...</para></section> </article> <rapport langue="français" nbpage="20"> <titre>Xrapport</titre> <auteur> <nom>Xnom</nom><prenom>Xprenom</prenom><pays>Xpays</pays> </auteur> <chapitre> <section><para>du texte</para></section> </chapitre> </rapport> </ouvrages> |
1- Vérifier que le document est bien formé et valide.
2- Modifier la DTD en utilisant des entités paramètres pour modéliser les contenus et les attributs identiques.
Exercice 3 :
1- Reprendre la DTD de l'exercice 1 et proposer un schema XML correspondant.
2- Vérifier si le document XML associé est valide.