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 ?