Pour cet exercice on utilisera un éditeur XML, tel que Oxygen.
Soit la DTD suivante :
1
<!ELEMENT document (entete,corps)>
2
3
<!ELEMENT entete (identification, motscles?, resume?)>
4
<!ELEMENT identification (titre, date, auteur, version)>
5
<!ELEMENT date (#PCDATA)>
6
<!ELEMENT auteur (#PCDATA)>
7
<!ELEMENT titre (#PCDATA)>
8
<!ELEMENT version (#PCDATA)>
9
<!ELEMENT motscles (motitem+)>
10
<!ELEMENT motitem (#PCDATA)>
11
<!ELEMENT resume (paragraphe+)>
12
13
<!ELEMENT corps (introduction?, (div+ | contenu), conclusion?)>
14
<!ELEMENT div (titre, introduction?, (div+ | contenu), conclusion?)>
15
<!ELEMENT introduction (paragraphe+)>
16
<!ELEMENT conclusion (paragraphe+)>
17
<!ELEMENT contenu (paragraphe)+>
18
19
<!ELEMENT paragraphe (#PCDATA | important | etranger | note)*>
20
21
<!ELEMENT important (#PCDATA)>
22
<!ELEMENT note (#PCDATA)>
23
<!ELEMENT etranger (#PCDATA)>
24
<!ATTLIST etranger
25
langue CDATA #IMPLIED
26
>
Question
Produire un document XML valide par rapport à cette DTD.
Question
Produire le plus petit document XML valide par rapport à cette DTD.
Question
Produire un document XML utilisant toutes les balises de la DTD.
Soit le document XML suivant.
1
<?xml version="1.0" encoding="iso-8859-1"?>
2
<!DOCTYPE document SYSTEM "document.dtd">
3
<document>
4
<entete>
5
<identification>
6
<titre>Text</titre>
7
<date>Text</date>
8
<auteur>Text</auteur>
9
<version>Text</version>
10
</identification>
11
<motscles>
12
<motitem>Text</motitem>
13
<motitem>Text</motitem>
14
<motitem>Text</motitem>
15
</motscles>
16
</entete>
17
<corps>
18
<introduction>
19
<paragraphe>Text</paragraphe>
20
<paragraphe>Text <important>Text</important>Text</paragraphe>
21
</introduction>
22
<div>
23
<titre>Text</titre>
24
<introduction>
25
<paragraphe>Text</paragraphe>
26
</introduction>
27
<contenu>
28
<paragraphe>Text</paragraphe>
29
</contenu>
30
<conclusion>
31
<paragraphe>
32
<note>Text</note>
33
</paragraphe>
34
</conclusion>
35
</div>
36
<div>
37
<titre>Text</titre>
38
<div>
39
<titre/>
40
<contenu>
41
<paragraphe>Text</paragraphe>
42
</contenu>
43
</div>
44
<conclusion>
45
<paragraphe>Text</paragraphe>
46
</conclusion>
47
</div>
48
<conclusion>
49
<paragraphe>Text</paragraphe>
50
</conclusion>
51
</corps>
52
</document>
Question
Ce document est-il valide par rapport à la DTD ?