Vous êtes sur la page 1sur 4

ESATIC- 2014-2015

Travaux Dirigés n°2: TECHNOLOGIE XML


Exercice 1
Création d’un livre en XML

On souhaite écrire un livre en utilisant le formalisme XML. Le livre est


structuré en sections (au moins 2), en chapitres (au moins 2) et en paragraphes
(au moins 2). Le livre doit contenir la liste des auteurs (avec nom et prénom).
Tous les éléments doivent posséder un titre, sauf le paragraphe qui contient du
texte.
Proposez une structuration XML de ce document (avec 2 auteurs, 2 sections, 2
chapitres par section et 2 paragraphes par chapitre).
Proposez une DTD externe associée à ce document
Exercice 2
Structurer les données des individus. Et écrire la DTD correspondante.

Les individus doivent comprendre au moins 2 personnes . Pour chaque personne,


on souhaite connaître les informations suivantes:
 Nom (homme ou femme)
 Prénom
 Adresse
 numéro(s) de téléphone (portable, fixe, bureau,...)
 Email(s) (personnel, professionnel...)

Exercice 3 : utilisation d'une DTD


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)>
ESATIC- 2014-2015

<!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

Exercice 4 : création d'une DTD


On souhaite gérer une filmographie. Quelle va être la structure du document
XML associé à un film
?
Créer la DTD correspondante.

Exercice 5:

Ecrire un document 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.

Exercice 6

Soit le fichier XML suivant :


<?xml version="1.0" encoding="ISO-8859-1"?>
<gare>
<train numero="t5560" type="TGV">
<voiture numero="v1">
<resa numero="r17" id="u55"/>
<resa numero="r18" id="u52"/>
</voiture>
<voiture numero="v2"/>
<voiture numero="v3"/>
<voiture numero="v4">
<bar service="froid uniquement"/>
</voiture>
<commentaire>Remplace l’ancien TGV
ESATIC- 2014-2015

<numero>t4215</numero>
</commentaire>
</train>
<train numero="t6731">
<voiture numero="v1"/>
<voiture numero="v2">
<resa numero="r15"
id="u55"/>
</voiture>
</train>
<usager id="u55"> <prenom>Jean</prenom>
<nom>Dufour</nom> </usager>
<usager id="u52"> <prenom>Brigitte</prenom>
<nom>Lefebvre</nom> </usager>
<usager id="u56"> <prenom>Patrick</prenom>
<nom>Subiran</nom> </usager>
</gare>

a) Ecrivez une DTD possible pour ce fichier sans utiliser le type


ANY pour les éléments.
Considérez qu’un attribut est obligatoire s’il apparaît dans
toutes les instances de l’élément auquel il appartient.
b) Rajoutez au document la déclaration de cette DTD, en
supposant qu’elle est stockée dans le fichier externe
"gare.dtd".

Exercice 7
1. Rédiger un document XML de quelques mots, comportant
une DTD externe déclarant deux éléments :
1. elt.racine peut contenir autant de fois que l'on veut du texte
ou elt.enfant ;
2. elt.enfant peut contenir du texte.
2. Déclarer dans la DTD une entité paramétrique entite1 permettant d'insérer
dans la DTD la chaîne de caractères "#PCDATA | elt.enfant". Utiliser
cette entité dans la déclaration de l'élément elt.racine.
ESATIC- 2014-2015

3. Compléter la déclaration de type de document du fichier XML, dans le


document XML lui-même en :
o déclarant une entité entite2 permettant d'insérer
"<elt.enfant>entité</elt.enfant>" et l'appeler dans un corps de
texte d'elt.racine.

Vous aimerez peut-être aussi