W3C XML Schema

Soit le schéma suivant :

CTRL+C pour copier, CTRL+V pour coller
1
<?xml version="1.0" encoding="UTF-8"?>
2
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
3
  <xs:element name='magasin'>
4
    <xs:complexType>
5
      <xs:sequence>
6
        <xs:element name='clients'>
7
          <xs:complexType>
8
            <xs:sequence>
9
              <xs:element name='client' type='ClientType' minOccurs='0' maxOccurs='unbounded' />
10
            </xs:sequence>
11
          </xs:complexType>
12
        </xs:element>
13
        <xs:element name='commandes'>
14
          <xs:complexType>
15
            <xs:sequence>
16
              <xs:element name='commande' type='CommandeType' minOccurs='0' maxOccurs='unbounded' />
17
            </xs:sequence>
18
          </xs:complexType>
19
        </xs:element>
20
      </xs:sequence>
21
    </xs:complexType>
22
  </xs:element>
23
  <xs:complexType name='ClientType'>
24
    <xs:sequence>
25
      <xs:element name='nom' type='xs:string'/>
26
      <xs:element name='prenom' type='xs:string'/>
27
      <xs:element name='dateNaissance' type='xs:string'/>
28
      <xs:choice>
29
        <xs:element name='telephone' type='xs:string'/>
30
        <xs:element name='email' type='xs:string'/>
31
      </xs:choice>
32
    </xs:sequence>
33
    <xs:attribute name='clientID' type='xs:integer'/>
34
  </xs:complexType>
35
  <xs:complexType name='CommandeType'>
36
    <xs:sequence>
37
      <xs:element name='clientID' type='xs:integer'/>
38
      <xs:element name='dateCommande' type='xs:date'/>
39
      <xs:element name='dateLivraison' type='xs:date'/>
40
      <xs:element name='article' type='xs:string'/>
41
    </xs:sequence>
42
  </xs:complexType>
43
</xs:schema>
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name='magasin'>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='clients'>
          <xs:complexType>
            <xs:sequence>
              <xs:element name='client' type='ClientType' minOccurs='0' maxOccurs='unbounded' />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='commandes'>
          <xs:complexType>
            <xs:sequence>
              <xs:element name='commande' type='CommandeType' minOccurs='0' maxOccurs='unbounded' />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:complexType name='ClientType'>
    <xs:sequence>
      <xs:element name='nom' type='xs:string'/>
      <xs:element name='prenom' type='xs:string'/>
      <xs:element name='dateNaissance' type='xs:string'/>
      <xs:choice>
        <xs:element name='telephone' type='xs:string'/>
        <xs:element name='email' type='xs:string'/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute name='clientID' type='xs:integer'/>
  </xs:complexType>
  <xs:complexType name='CommandeType'>
    <xs:sequence>
      <xs:element name='clientID' type='xs:integer'/>
      <xs:element name='dateCommande' type='xs:date'/>
      <xs:element name='dateLivraison' type='xs:date'/>
      <xs:element name='article' type='xs:string'/>
    </xs:sequence>
  </xs:complexType>
</xs:schema>

Question

Produisez le plus petit document XML valide possible.

Question

Produisez le plus petit document XML valide contenant tous les éléments.

PrécédentPrécédentFin
AccueilAccueilImprimerImprimer Perrine Ravaud, 2013 (Contributions : Stéphane Crozat, les étudiants de NF29) Paternité - Partage des Conditions Initiales à l'IdentiqueRéalisé avec Scenari (nouvelle fenêtre)