Guénet Anne-Laure

Maîtrise TAL

Objet : rapport sur des documents XML

Sujet : choisir une DTD et une instance, commenter et expliciter le tout


J’ai choisi une DTD et une instance sur le site

www.cavi.univ-paris3.fr/ilpga/ilpga/tal/cours/parcours/tp9.htm

il s’agit d’un bulletin météorologique. La DTD meteo.dtd définit le vocabulaire et la structure du document XML meteo.xml.

Il y a deux types de DTD : externe ou interne. Ici il s’agit d’une DTD externe.

 

la DTD est caractérisée par un ensemble de règles qui permettent de spécifier les éléments et leurs attributs, ainsi que leurs relations, leurs ordres et leurs fréquences dans le document XML.

La DTD est construite à partir d’un ensemble de déclarations permettant de définir le type, la nature et les contraintes liées à chaque nouveau marqueur

 

Bulletin météorologique

<!-- AuthorName = "Sf" -->
<!-- Copyright = "2000" -->
<!-- Description="Exemple de bulletion meteorologique" -->

Ligne 1 <!ELEMENT METEO ( REGION )+>
Ligne 2 <!ELEMENT REGION ( VILLE )+>
Ligne 3 <!ATTLIST REGION NAME CDATA #REQUIRED>
Ligne 4 <!ELEMENT VILLE ( CIEL, MATIN, APRESMIDI, PCDATA? )>
Ligne 5 <!ATTLIST VILLE NAME CDATA #REQUIRED>
Ligne 6 <!ELEMENT CIEL EMPTY>
Ligne 7 <!ATTLIST CIEL VALUE ( ENSOLEILLE | PARTIELLEMENT ENSOLEILLE | PARTIELLEMENT COUVERT | COUVERT | PLUIE | NEIGE ) #REQUIRED>
Ligne 8 <!ELEMENT MATIN EMPTY>
Ligne 9 <!ATTLIST MATIN C CDATA #REQUIRED>
Ligne 10<!ELEMENT APRESMIDI EMPTY>
Ligne 11<!ATTLIST APRESMIDI C CDATA #REQUIRED>


<?xml version="1.0"?>
<!DOCTYPE METEO SYSTEM "METEO.DTD">
<METEO>
<REGION NAME="ILE DE FRANCE">
<VILLE NAME="PARIS">
<CIEL VALUE="ENSOLEILLE"/>
<MATIN C="10"/>
<APRESMIDI C="18" />
Belle journée </VILLE>
<VILLE NAME="PONTOISE">
<CIEL VALUE="ENSOLEILLE"/>
<MATIN C="6"/>
<APRESMIDI C="17"/>
Journée ensoleillée, mais fraîcheur matinale. </VILLE>
</REGION>
<REGION NAME="PACA">
<VILLE NAME="MARSEILLE">
<CIEL VALUE="PLUIE"/>
<MATIN C="13"/>
<APRESMIDI C="23"/>
Température douce avec pluie intermittente </VILLE>
<VILLE NAME="CANNES">
<CIEL VALUE="PARTIELLEMENT ENSOLEILLE"/>
<MATIN C="14"/>
<APRESMIDI C="25"/>
Journée lourde avec de rares apparitions du soleil </VILLE>
</REGION>
</METEO>


Commentaires et explications de la DTD  ligne par ligne :

Ligne 1 : la DTD météo contient un élément " région " qui peut apparaître une ou plusieurs fois

Ligne 2 : à l’intérieur de l’élément " région ", on trouve l’élément " ville " qui peut apparaître également une ou plusieurs fois.

Ligne 3 : l’élément " région " est composé d’un attribut " name " qui doit être obligatoirement renseigné

Ligne 4 : l’élément " ville " se décompose en quatre autres éléments : " ciel ", " matin ", " après-midi " et du texte qui lui peut apparaître de façon optionnel (texte = PCDATA)

Ligne5 : l’élément " ville " est composé d’un attribut " name " qui lui aussi doit être obligatoirement renseigné.

Ligne 6 : l’élément " ciel " ne possède pas d’autres éléments : c’est un élément vide

Ligne 7 : l’élément " ciel " est composé d’un attribut " value " qui doit être obligatoirement renseigné. Les choix proposés sont : " ensoleillé " ou " partiellement ensoleille " ou " partiellement couvert ", ou " couvert ", ou " pluie " ou enfin " neige ". le ou est traduit par le symbole : | .

Ligne 8 : l’élément " matin " est un élément vide

Ligne 9 : l’élément " matin " est composé d’un attribut " C " qui doit être obligatoirement renseigné

Ligne 10 : l’élément " après-midi " est un élément vide

Ligne 11 : l’élément " après-midi " est composé d’un attribut " C " qui doit être obligatoirement renseigné

 

Un document meteo.xml a donc d’après sa DTD une structure comme celle-ci :

 

METEO

 

REGION (…) METEO peut contenir de 1 à N régions

NAME

VILLE (…) VILLE peut contenir de 1à N villes

NAME

CIEL MATIN APRES-MIDI texte (optionnel)

VALUE C C

ENSOLEILLE |

PARTIELLEMENT Légende : en noir : les éléments

ENSOLEILLE | en rouge : les attributs

COUVERT…. En vert :choix d’attributs

 

 

On voit que le fichier XML obéit à sa DTD. On peut donc dire que le fichier XML est valide. Toutes les informations que l’on trouve dans la structure sont réutilisés dans le fichier XML.

Dans le fichier XML nous avons 2 régions différentes, qui ont chacun un attribut " name " : " l’île de France " et la région " PACA ". Dans chacune ces deux régions on trouve deux villes différentes. Et chaque ville a également une sous structure : " ciel ", " matin ", " après-midi " et de façon optionnelle du texte. Chaque sous structure a également un attribut qui est à chaque fois renseigné.