Pour cet exercice on utilisera un éditeur XML, tel que Oxygen.
Soit la DTD suivante :
CTRL+C pour copier, CTRL+V pour coller
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
>
<!ELEMENT document (entete,corps)> <!ELEMENT entete (identification, motscles?, resume?)> <!ELEMENT identification (titre, date, auteur, version)> <!ELEMENT date (#PCDATA)> <!ELEMENT auteur (#PCDATA)> <!ELEMENT titre (#PCDATA)> <!ELEMENT version (#PCDATA)> <!ELEMENT motscles (motitem+)> <!ELEMENT motitem (#PCDATA)> <!ELEMENT resume (paragraphe+)> <!ELEMENT corps (introduction?, (div+ | contenu), conclusion?)> <!ELEMENT div (titre, introduction?, (div+ | contenu), conclusion?)> <!ELEMENT introduction (paragraphe+)> <!ELEMENT conclusion (paragraphe+)> <!ELEMENT contenu (paragraphe)+> <!ELEMENT paragraphe (#PCDATA | important | etranger | note)*> <!ELEMENT important (#PCDATA)> <!ELEMENT note (#PCDATA)> <!ELEMENT etranger (#PCDATA)> <!ATTLIST etranger langue CDATA #IMPLIED >
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.
CTRL+C pour copier, CTRL+V pour coller
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>
<?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE document SYSTEM "document.dtd"> <document> <entete> <identification> <titre>Text</titre> <date>Text</date> <auteur>Text</auteur> <version>Text</version> </identification> <motscles> <motitem>Text</motitem> <motitem>Text</motitem> <motitem>Text</motitem> </motscles> </entete> <corps> <introduction> <paragraphe>Text</paragraphe> <paragraphe>Text <important>Text</important>Text</paragraphe> </introduction> <div> <titre>Text</titre> <introduction> <paragraphe>Text</paragraphe> </introduction> <contenu> <paragraphe>Text</paragraphe> </contenu> <conclusion> <paragraphe> <note>Text</note> </paragraphe> </conclusion> </div> <div> <titre>Text</titre> <div> <titre/> <contenu> <paragraphe>Text</paragraphe> </contenu> </div> <conclusion> <paragraphe>Text</paragraphe> </conclusion> </div> <conclusion> <paragraphe>Text</paragraphe> </conclusion> </corps> </document>
Question
Ce document est-il valide par rapport à la DTD ?