Contraintes d'ordre

Soit le modèle conceptuel ci-après.

Modèle UML

Question

Expliquer la signification de la contrainte (Texte, Image*) ajoutée au schéma, et pourquoi de telles contraintes sont parfois indispensables dans le cas de la modélisation documentaire ?

Solution

La contrainte exprime une relation d'ordre entre le texte et les images : ainsi le texte est obligatoirement avant les images. Ces contraintes sont parfois indispensables car la modélisation UML n'intègre pas ce concept, qui au contraire est présent dans le paradigme grammatical des schémas XML.

Question

Proposez une traduction en schéma RelaxNG de ce modèle.

Solution

1
<?xml version="1.0" encoding="UTF-8"?>
2
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
3
    datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
4
    <start>
5
        <element name="doc">
6
            <element name="titre">
7
                <text/>
8
            </element>
9
            <element name="texte">
10
                <oneOrMore>
11
                    <element name="p">
12
                        <text/>
13
                    </element>
14
                </oneOrMore>
15
            </element>
16
            <zeroOrMore>
17
                <element name="image">
18
                    <element name="src">
19
                        <data type="anyURI"/>
20
                    </element>
21
                    <optional>
22
                        <element name="label">
23
                            <text/>
24
                        </element>
25
                    </optional>
26
                </element>
27
            </zeroOrMore>
28
        </element>
29
    </start>
30
</grammar>