Skip to content

Commit

Permalink
reorganisation
Browse files Browse the repository at this point in the history
  • Loading branch information
emchateau committed Nov 2, 2023
1 parent 2b69a42 commit 77caa34
Show file tree
Hide file tree
Showing 8 changed files with 62 additions and 2 deletions.
4 changes: 2 additions & 2 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -26,18 +26,18 @@ <h2><a href="./exercice01.html">Exercice 01</a></h2>
<article>
<h2><a href="./seance-02.html">Séance 2</a></h2>
</article>
<!--
<article>
<h2><a href="./seance-03.html">Séance 3</a></h2>
</article>
<article>
<h2><a href="./seance-04.html">Séance 4</a></h2>
</article>
<!--
<article>
<h2><a href="./seance-05.html">Séance 5</a></h2>
</article>
-->
</section>
-->
<main>
</body>
</html>
9 changes: 9 additions & 0 deletions schemas/adressBook.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<addressBook xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="schemaCarnet.xsd">
<identity>
<nom></nom>
<prenom></prenom>

</identity>
</addressBook>
51 changes: 51 additions & 0 deletions schemas/schemaCarnet.xsd
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">

<!-- il fallait spécifier un élément racine -->
<xs:element name="addressBook">
<xs:complexType>
<xs:sequence>
<!-- ici on retrouve ce que tu avais commencé à faire avec une cardinalité pour rendre l’élément identity obligatoire -->
<xs:element name="identity" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<!-- on aurait aussi pu rassembler les parties de nom ensemble (tu peux essayer) -->
<xs:element name="nom" type="xs:string" />
<xs:element name="prenom" type="xs:string" />
<xs:element name="birthdate" type="xs:date" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- ici, on pointe vers les définitions déjà créées en fournissant des cardinalités, c’est un moyen de modulariser l’écriture du schéma -->
<xs:element name="address" type="address" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="tel" type="tel" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- fin de l’ajout -->

<!-- ici j’ai remanié pour définir des complexType directement avec un nom car je les appelle dans l’élément racine -->



<!-- j'ai supprimé la définition d’élément qui les entourait pour pouvoir appeler les définitions plus haut -->
<!-- l’adresse répétable (cf. racine), l’ajout d’un attribut aurait permis de la répéter avec adresse perso, pro, etc. -->
<xs:complexType name="address">
<xs:sequence>
<xs:element name="number" type="xs:positiveInteger" />
<xs:element name="street" type="xs:string" />
<xs:element name="codePostal" type="xs:positiveInteger" />
</xs:sequence>
</xs:complexType>

<xs:complexType name="tel">
<xs:choice>
<!-- ici j’aurais sans doute privilégié la création d’attribut -->
<xs:element name="fix" type="xs:positiveInteger" />
<xs:element name="mobile" type="xs:positiveInteger" />
</xs:choice>
</xs:complexType>



</xs:schema>
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 comments on commit 77caa34

Please sign in to comment.