SlideShare une entreprise Scribd logo
XML- SCHÉMA
Mustapha HAIN
infohain@gmail.com
Abcdformation.blogspot.com
http://fr.slideshare.net/mustaphahain/
ENSAM-Casablanca
LES LIMITES DES DTD
 Une DTD ne permet pas de typer les données;
 Une DTD est non extensible.
 Une DTD prendre en compte un seul espace de nom.
En réponse aux lacunes des DTD, une alternative a été
proposée comme recommandation : il s’agit de XML-
Schéma. Cette nouvelle norme achève de faire d’XML un
format pivot… La version 1.1 de XML Schéma (datée de
mai 2001) se compose de 3 normes :
1. XML Schema tome 0 : Introduction
2. XML Schema tome 1 : Structures
3. XML Schema tome 2 : Types de données
XML- SCHÉMA
Le document XML-Schéma est un document xml, il nous
permet de :
 Spécifier la typologie des données que va contenir le
document XML décrit par le XML-Schéma;
 Gérer une quarantaine de types de données simples,
 Gérer des types complexes,
 Gérer les occurrences des données.
XML- SCHÉMA
L'extension du fichier
".xsd"
<!-- Prologue -->
<?xml version="1.0" encoding="UTF-8" ?>
<!-- Le corps -->
<!-- Elément racine -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
< xsd: element name = "ElementName" >
<!-- déclarer les éléments, les attributs et les types-->
< xsd: attribute name = " AttrName" >
</xsd:schema>
élément racine
XML- SCHÉMA
Structure d'un schéma XML
L'extension du fichier
".xsd"
Référencer
XML- SCHÉMA
Référencer un schéma XML
".xml"
<?xml version="1.0" encoding="UTF-8"?>
<racine xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="Schema1.xsd">
</racine>
XML-Schéma permet d’utiliser des données :
 de type prédéfini (string, int…);
 de type complexe;
 dont le type est une restriction de type;
 dont le type est une extension de type.
Il est possible de déclarer un type de données
 Dans la déclaration d’un élément (local)
 Hors de la déclaration de l’élément (global)
XML- SCHÉMA
Types de données
Types prédéfinis :
 byte, unsignedByte, hexBinary, integer, positiveInteger,
negativeInteger, int, unsignedInt,
 long, unsignedLong, short, unsignedShort, decimal,
float, double…
 string, NormalizedString, token
 boolean, anyURI,
 time, dateTime, duration, date, gMonth, gYear,
gYearMonth, gDay, gMonthDay
 ID, IDREF, IDREFS, ENTITY, ENTITIES, NOTATIN,
NMTOKEN, NMTOKENS
XML- SCHÉMA
Types de données
Déclaration d’éléments simples
XML- SCHÉMA
Types de données
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" >
<xsd:element name="nom" type="xsd:string"/>
<xsd:element name="HireDate" type="xsd:date" />
<xsd:element name="amis" type="xsd:string" minoccurs= "1"
maxoccurs="unbounded"/>
<xsd:element name="gsm" type="xsd:string" maxoccurs="5"/>
</xsd:schema>
Ecrire le code xml en se basant sur le schéma suivant :
<nom>hani</nom>
<email>reda@gmail.com</email>
<age>22</age>
<xsd:element name="nom" type="xsd:string" />
<xsd:element name="email" type="xsd:string" ></xsd:element>
<xsd:element name="age" type="xsd:int" ></xsd:element>
XML- SCHÉMA
Types de données
<xsd:element name="prenom" type="xsd:string"
default= "Karim" />
<!-- valide -->
<prenom>Reda</prenom>
<!-- valide -->
<prenom>Ahmed</prenom>
<!-- valide -->
<!-- la balise prenom vaut "karim" -->
<prenom ></prenom>
XML- SCHÉMA
Types de données -Valeur par défaut
<xsd:element name="prenom" type="xsd:string"
fixed= "karim" />
<!-- valide -->
<prenom>karim</prenom>
<!-- invalide -->
<prenom>Rami</prenom>
<!-- invalide -->
<prenom></prenom>
XML- SCHÉMA
Types de données-Valeur constante
Déclarer un attribut
<xsd:attribut name="mon_att" type="xsd:mon_type" />
<formation niveau="debutant">Android </formation>
<xsd:attribut name= "niveau" type="xsd:string" />
XML- SCHÉMA
Types de données
<xsd:attribut name= "langue" type="xsd:string"
default= "English" />
<xsd:attribut name= "pays" type="xsd:string"
fixed= " MAROC" />
Attribut obligatoire
<xsd:attribut name= "email" type="xsd:string"
use="required" />
Valeur constante
Valeur par défaut
XML- SCHÉMA
Types de données
• Les restrictions sur des plages de données, des
séries de valeurs, des longueurs de caractères…
Exemple :
<xs:element name="note">
<xs:simpleType>
<xs:restriction base="xsd: positiveInteger">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
XML- SCHÉMA
Types de données- les restrictions
• Restrictions sur un ensemble de valeurs
Exemple :
<xs:element name="client">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="clientA"/>
<xs:enumeration value="clientB"/>
<xs:enumeration value="clientC"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
XML- SCHÉMA
Types de données- les restrictions
Restrictions sur une série de valeurs
Exemple :
<xs:element name="ssn">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="d{3}-d{2}-d{4}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
XML- SCHÉMA
Types de données- les restrictions
Restriction sur le longuer d’un élément
Exemple :
<xs:element name="password">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
XML- SCHÉMA
Types de données- les restrictions
19
XML- SCHÉMA
Types de données-Les éléments complexes
Un élément complexe est un élément XML qui
contient d'autres éléments et / ou des attributs.
Déclarer un élément complexe
<xsd:element name="mon_nom">
<xsd:complexType>
<!-- contenu ici -->
<xsd:complexType>
</xsd:element>
20
Concernant les types complexes, il existe 3 types de
contenus possibles :
1. Les contenus simples.
2. Les contenus "standards".
3. Les contenus mixtes.
XML- SCHÉMA
Types de données-Les éléments complexes
<personne>
<!-- la balise nom est un élément simple -->
<nom>Rmai</nom>
<!-- la balise prenom est un élément simple -->
<prenom>Amal</prenom>
</personne>
<xs:element name="person">
<xs:complexType>
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
XML- SCHÉMA
Types de données-Les éléments complexes
Les indicateurs: Indicateur de séquence
Les indicateurs: Indicateur de choix
xs:element name="person">
<xs:complexType>
<xs:choice>
<xs:element name="employee" type="employee"/>
<xs:element name="member" type="member"/>
</xs:choice>
</xs:complexType>
</xs:element>
XML- SCHÉMA
Types de données-Les éléments complexes
soit l’élément complexe suivant:
XML- SCHÉMA
Types de données-Les éléments complexes
<xs:element name="employee">
<xs:complexType>
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<employee>
<firstname>Radi</firstname>
<lastname>laila</lastname>
</employee>
<xsd:element name="pages" type="xsd:positiveInteger"/>
<xsd:element name="auteur" type="xsd:string"/>
<xsd:element name="livre">
<xsd:complexeType>
<xsd:sequence>
<xsd:element ref="auteur"/>
<xsd:element ref="pages"/>
<xsd:sequence>
<xsd:complexeType>
</xsd:element>
XML- SCHÉMA
Types de données-Les éléments complexes / ref
25
Démonstration
Travaillons ensemble
Merci de votre attention

Contenu connexe

Tendances

UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
Mansouri Khalifa
 
Arbre b (par EL HACHEM Marwan et RICHA Elias)
Arbre b (par EL HACHEM Marwan et RICHA Elias)Arbre b (par EL HACHEM Marwan et RICHA Elias)
Arbre b (par EL HACHEM Marwan et RICHA Elias)
rchbeir
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
ENSET, Université Hassan II Casablanca
 
UML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriUML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouri
Mansouri Khalifa
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objet
Amir Souissi
 
Rapport kmeans
Rapport kmeans Rapport kmeans
Rapport kmeans
Imen Turki
 

Tendances (20)

Python avancé : Tuple et objet
Python avancé : Tuple et objetPython avancé : Tuple et objet
Python avancé : Tuple et objet
 
Modificateurs d'accès en java
Modificateurs d'accès en javaModificateurs d'accès en java
Modificateurs d'accès en java
 
Tp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-EclipseTp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-Eclipse
 
Android - Tp 5 - stockage de données
Android - Tp 5 -  stockage de donnéesAndroid - Tp 5 -  stockage de données
Android - Tp 5 - stockage de données
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
 
XML Avancé : DTD, XSD, XPATH, XSLT, XQuery
XML Avancé : DTD, XSD, XPATH, XSLT, XQueryXML Avancé : DTD, XSD, XPATH, XSLT, XQuery
XML Avancé : DTD, XSD, XPATH, XSLT, XQuery
 
exposé en HTML
exposé en HTMLexposé en HTML
exposé en HTML
 
Arbre b (par EL HACHEM Marwan et RICHA Elias)
Arbre b (par EL HACHEM Marwan et RICHA Elias)Arbre b (par EL HACHEM Marwan et RICHA Elias)
Arbre b (par EL HACHEM Marwan et RICHA Elias)
 
Algorithmique et Structures de Données II
Algorithmique et Structures de Données IIAlgorithmique et Structures de Données II
Algorithmique et Structures de Données II
 
XML Schema
XML SchemaXML Schema
XML Schema
 
Contraintes uml
Contraintes umlContraintes uml
Contraintes uml
 
Chapitre 5 arbres binaires
Chapitre 5 arbres binairesChapitre 5 arbres binaires
Chapitre 5 arbres binaires
 
Android Networking
Android NetworkingAndroid Networking
Android Networking
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
 
UML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouriUML Part 4- diagrammres de classes et d'objets mansouri
UML Part 4- diagrammres de classes et d'objets mansouri
 
UML Part1-Introduction Mansouri
UML Part1-Introduction MansouriUML Part1-Introduction Mansouri
UML Part1-Introduction Mansouri
 
LES JOINTURES
LES JOINTURESLES JOINTURES
LES JOINTURES
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objet
 
Rapport kmeans
Rapport kmeans Rapport kmeans
Rapport kmeans
 

En vedette

En vedette (20)

XML Xpath & XSLT
XML  Xpath & XSLTXML  Xpath & XSLT
XML Xpath & XSLT
 
E logistics-Vehicle Routing Problem
E logistics-Vehicle Routing ProblemE logistics-Vehicle Routing Problem
E logistics-Vehicle Routing Problem
 
Introduction aux ERP
Introduction aux ERPIntroduction aux ERP
Introduction aux ERP
 
Introduction au M.E.S
Introduction au M.E.SIntroduction au M.E.S
Introduction au M.E.S
 
Création d’applications et découverte d’Android
Création d’applications et découverte d’AndroidCréation d’applications et découverte d’Android
Création d’applications et découverte d’Android
 
La gestion des projets dans openerp
La gestion des projets dans  openerpLa gestion des projets dans  openerp
La gestion des projets dans openerp
 
Log 2 2-slidshare
Log 2 2-slidshareLog 2 2-slidshare
Log 2 2-slidshare
 
La gestion de la production dans openerp
La gestion de la production dans openerpLa gestion de la production dans openerp
La gestion de la production dans openerp
 
LES OUTILS D’UN LOGISTICIEN
LES OUTILS D’UN LOGISTICIENLES OUTILS D’UN LOGISTICIEN
LES OUTILS D’UN LOGISTICIEN
 
L’approvisionnement et La gestion des Stocks dans OpenERP
L’approvisionnement et La gestion des Stocks dans OpenERPL’approvisionnement et La gestion des Stocks dans OpenERP
L’approvisionnement et La gestion des Stocks dans OpenERP
 
La gestion de la relation client dans l’ OPENERP
La gestion de la relation client dans l’ OPENERPLa gestion de la relation client dans l’ OPENERP
La gestion de la relation client dans l’ OPENERP
 
la logistique - Le transport
la logistique - Le transport la logistique - Le transport
la logistique - Le transport
 
XML Schema (W3C)
XML Schema (W3C)XML Schema (W3C)
XML Schema (W3C)
 
XML Schema
XML SchemaXML Schema
XML Schema
 
Log 2 1-slidshare
Log 2 1-slidshareLog 2 1-slidshare
Log 2 1-slidshare
 
La Logistique 1
La Logistique 1La Logistique 1
La Logistique 1
 
Tour d'horizon sur la E-logistique 2015
Tour d'horizon sur la E-logistique 2015Tour d'horizon sur la E-logistique 2015
Tour d'horizon sur la E-logistique 2015
 
XML Schema Part 2
XML Schema Part 2XML Schema Part 2
XML Schema Part 2
 
XML Schema Part 1
XML Schema Part 1XML Schema Part 1
XML Schema Part 1
 
Opentms nextma
Opentms nextmaOpentms nextma
Opentms nextma
 

Similaire à XML- Schéma

Xml un panorama
Xml un panoramaXml un panorama
Xml un panorama
camelus
 
Xml un panorama
Xml un panoramaXml un panorama
Xml un panorama
hrenel
 
Cyxml2 formation-technologies-xml-mise-en-oeuvre (1)
Cyxml2 formation-technologies-xml-mise-en-oeuvre (1)Cyxml2 formation-technologies-xml-mise-en-oeuvre (1)
Cyxml2 formation-technologies-xml-mise-en-oeuvre (1)
CERTyou Formation
 
Cyxml2 formation-technologies-xml-mise-en-oeuvre
Cyxml2 formation-technologies-xml-mise-en-oeuvreCyxml2 formation-technologies-xml-mise-en-oeuvre
Cyxml2 formation-technologies-xml-mise-en-oeuvre
CERTyou Formation
 
Xml un panorama
Xml un panoramaXml un panorama
Xml un panorama
m100grech
 

Similaire à XML- Schéma (20)

xml cours
xml coursxml cours
xml cours
 
SchemaXMLDefinition@AhmesZELLOU20232024.pdf
SchemaXMLDefinition@AhmesZELLOU20232024.pdfSchemaXMLDefinition@AhmesZELLOU20232024.pdf
SchemaXMLDefinition@AhmesZELLOU20232024.pdf
 
chapXSD espace de noms.pdf
chapXSD  espace de noms.pdfchapXSD  espace de noms.pdf
chapXSD espace de noms.pdf
 
XML.pdf
XML.pdfXML.pdf
XML.pdf
 
XML.pdf
XML.pdfXML.pdf
XML.pdf
 
Support de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfiSupport de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfi
 
Modèles de données et langages de description ouverts 2021-2022 - 2
Modèles de données et langages de description ouverts   2021-2022 - 2Modèles de données et langages de description ouverts   2021-2022 - 2
Modèles de données et langages de description ouverts 2021-2022 - 2
 
Xml un panorama
Xml un panoramaXml un panorama
Xml un panorama
 
Xml un panorama
Xml un panoramaXml un panorama
Xml un panorama
 
Xml un panorama
Xml un panoramaXml un panorama
Xml un panorama
 
Xml un panorama
Xml un panoramaXml un panorama
Xml un panorama
 
HTML : why content is important - SoftShake 2014
HTML : why content is important - SoftShake 2014HTML : why content is important - SoftShake 2014
HTML : why content is important - SoftShake 2014
 
Introduction à XML
Introduction à XMLIntroduction à XML
Introduction à XML
 
1 introduction
1 introduction1 introduction
1 introduction
 
Cours
CoursCours
Cours
 
XML
XMLXML
XML
 
cours_XML 2016 PART 1 ceci est un fichier présentation PowerPoint
cours_XML 2016 PART 1 ceci est un fichier présentation PowerPointcours_XML 2016 PART 1 ceci est un fichier présentation PowerPoint
cours_XML 2016 PART 1 ceci est un fichier présentation PowerPoint
 
Cyxml2 formation-technologies-xml-mise-en-oeuvre (1)
Cyxml2 formation-technologies-xml-mise-en-oeuvre (1)Cyxml2 formation-technologies-xml-mise-en-oeuvre (1)
Cyxml2 formation-technologies-xml-mise-en-oeuvre (1)
 
Cyxml2 formation-technologies-xml-mise-en-oeuvre
Cyxml2 formation-technologies-xml-mise-en-oeuvreCyxml2 formation-technologies-xml-mise-en-oeuvre
Cyxml2 formation-technologies-xml-mise-en-oeuvre
 
Xml un panorama
Xml un panoramaXml un panorama
Xml un panorama
 

Dernier

Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
zidani2
 

Dernier (11)

Résultats enquête RH 2024 Fonction Publique.pdf
Résultats enquête RH 2024 Fonction Publique.pdfRésultats enquête RH 2024 Fonction Publique.pdf
Résultats enquête RH 2024 Fonction Publique.pdf
 
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
Decret-n°19-10-du-23-janvier-2019-reglementant-lexportation-des-déchets-spéci...
 
MARTYRS DE TURQUIE – une histoire de persécution chrétienne en Anatolie.pptx
MARTYRS DE TURQUIE – une histoire de persécution chrétienne en Anatolie.pptxMARTYRS DE TURQUIE – une histoire de persécution chrétienne en Anatolie.pptx
MARTYRS DE TURQUIE – une histoire de persécution chrétienne en Anatolie.pptx
 
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les ÉcolesEL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
EL KATRY Reem: Proposition de Programme Artistique et Exposition pour les Écoles
 
Webinaire Technologia | DAX : nouvelles fonctions
Webinaire Technologia | DAX : nouvelles fonctionsWebinaire Technologia | DAX : nouvelles fonctions
Webinaire Technologia | DAX : nouvelles fonctions
 
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
Fiche - Accompagnement du travail coopératif au sein d’une équipe d’enseignan...
 
Comment enseigner la langue française en Colombie?
Comment enseigner la langue française en Colombie?Comment enseigner la langue française en Colombie?
Comment enseigner la langue française en Colombie?
 
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
PLANNING HEBDO ET CR LYCEE COUDON 21 MAI2024
 
Festival de Cannes 2024.pptx
Festival    de     Cannes        2024.pptxFestival    de     Cannes        2024.pptx
Festival de Cannes 2024.pptx
 
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
Présentation Webinaire Cohésion - Concevoir et mettre en place une CMDB, comm...
 
Gestion des flux de trésorerie dans les entreprises
Gestion des flux de trésorerie dans les entreprisesGestion des flux de trésorerie dans les entreprises
Gestion des flux de trésorerie dans les entreprises
 

XML- Schéma

  • 2. LES LIMITES DES DTD  Une DTD ne permet pas de typer les données;  Une DTD est non extensible.  Une DTD prendre en compte un seul espace de nom.
  • 3. En réponse aux lacunes des DTD, une alternative a été proposée comme recommandation : il s’agit de XML- Schéma. Cette nouvelle norme achève de faire d’XML un format pivot… La version 1.1 de XML Schéma (datée de mai 2001) se compose de 3 normes : 1. XML Schema tome 0 : Introduction 2. XML Schema tome 1 : Structures 3. XML Schema tome 2 : Types de données XML- SCHÉMA
  • 4. Le document XML-Schéma est un document xml, il nous permet de :  Spécifier la typologie des données que va contenir le document XML décrit par le XML-Schéma;  Gérer une quarantaine de types de données simples,  Gérer des types complexes,  Gérer les occurrences des données. XML- SCHÉMA
  • 5. L'extension du fichier ".xsd" <!-- Prologue --> <?xml version="1.0" encoding="UTF-8" ?> <!-- Le corps --> <!-- Elément racine --> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> < xsd: element name = "ElementName" > <!-- déclarer les éléments, les attributs et les types--> < xsd: attribute name = " AttrName" > </xsd:schema> élément racine XML- SCHÉMA Structure d'un schéma XML
  • 6. L'extension du fichier ".xsd" Référencer XML- SCHÉMA Référencer un schéma XML ".xml" <?xml version="1.0" encoding="UTF-8"?> <racine xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Schema1.xsd"> </racine>
  • 7. XML-Schéma permet d’utiliser des données :  de type prédéfini (string, int…);  de type complexe;  dont le type est une restriction de type;  dont le type est une extension de type. Il est possible de déclarer un type de données  Dans la déclaration d’un élément (local)  Hors de la déclaration de l’élément (global) XML- SCHÉMA Types de données
  • 8. Types prédéfinis :  byte, unsignedByte, hexBinary, integer, positiveInteger, negativeInteger, int, unsignedInt,  long, unsignedLong, short, unsignedShort, decimal, float, double…  string, NormalizedString, token  boolean, anyURI,  time, dateTime, duration, date, gMonth, gYear, gYearMonth, gDay, gMonthDay  ID, IDREF, IDREFS, ENTITY, ENTITIES, NOTATIN, NMTOKEN, NMTOKENS XML- SCHÉMA Types de données
  • 9. Déclaration d’éléments simples XML- SCHÉMA Types de données <?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" > <xsd:element name="nom" type="xsd:string"/> <xsd:element name="HireDate" type="xsd:date" /> <xsd:element name="amis" type="xsd:string" minoccurs= "1" maxoccurs="unbounded"/> <xsd:element name="gsm" type="xsd:string" maxoccurs="5"/> </xsd:schema>
  • 10. Ecrire le code xml en se basant sur le schéma suivant : <nom>hani</nom> <email>reda@gmail.com</email> <age>22</age> <xsd:element name="nom" type="xsd:string" /> <xsd:element name="email" type="xsd:string" ></xsd:element> <xsd:element name="age" type="xsd:int" ></xsd:element> XML- SCHÉMA Types de données
  • 11. <xsd:element name="prenom" type="xsd:string" default= "Karim" /> <!-- valide --> <prenom>Reda</prenom> <!-- valide --> <prenom>Ahmed</prenom> <!-- valide --> <!-- la balise prenom vaut "karim" --> <prenom ></prenom> XML- SCHÉMA Types de données -Valeur par défaut
  • 12. <xsd:element name="prenom" type="xsd:string" fixed= "karim" /> <!-- valide --> <prenom>karim</prenom> <!-- invalide --> <prenom>Rami</prenom> <!-- invalide --> <prenom></prenom> XML- SCHÉMA Types de données-Valeur constante
  • 13. Déclarer un attribut <xsd:attribut name="mon_att" type="xsd:mon_type" /> <formation niveau="debutant">Android </formation> <xsd:attribut name= "niveau" type="xsd:string" /> XML- SCHÉMA Types de données
  • 14. <xsd:attribut name= "langue" type="xsd:string" default= "English" /> <xsd:attribut name= "pays" type="xsd:string" fixed= " MAROC" /> Attribut obligatoire <xsd:attribut name= "email" type="xsd:string" use="required" /> Valeur constante Valeur par défaut XML- SCHÉMA Types de données
  • 15. • Les restrictions sur des plages de données, des séries de valeurs, des longueurs de caractères… Exemple : <xs:element name="note"> <xs:simpleType> <xs:restriction base="xsd: positiveInteger"> <xs:minInclusive value="0"/> <xs:maxInclusive value="20"/> </xs:restriction> </xs:simpleType> </xs:element> XML- SCHÉMA Types de données- les restrictions
  • 16. • Restrictions sur un ensemble de valeurs Exemple : <xs:element name="client"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="clientA"/> <xs:enumeration value="clientB"/> <xs:enumeration value="clientC"/> </xs:restriction> </xs:simpleType> </xs:element> XML- SCHÉMA Types de données- les restrictions
  • 17. Restrictions sur une série de valeurs Exemple : <xs:element name="ssn"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="d{3}-d{2}-d{4}"/> </xs:restriction> </xs:simpleType> </xs:element> XML- SCHÉMA Types de données- les restrictions
  • 18. Restriction sur le longuer d’un élément Exemple : <xs:element name="password"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="8"/> </xs:restriction> </xs:simpleType> </xs:element> XML- SCHÉMA Types de données- les restrictions
  • 19. 19 XML- SCHÉMA Types de données-Les éléments complexes Un élément complexe est un élément XML qui contient d'autres éléments et / ou des attributs. Déclarer un élément complexe <xsd:element name="mon_nom"> <xsd:complexType> <!-- contenu ici --> <xsd:complexType> </xsd:element>
  • 20. 20 Concernant les types complexes, il existe 3 types de contenus possibles : 1. Les contenus simples. 2. Les contenus "standards". 3. Les contenus mixtes. XML- SCHÉMA Types de données-Les éléments complexes <personne> <!-- la balise nom est un élément simple --> <nom>Rmai</nom> <!-- la balise prenom est un élément simple --> <prenom>Amal</prenom> </personne>
  • 21. <xs:element name="person"> <xs:complexType> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> XML- SCHÉMA Types de données-Les éléments complexes Les indicateurs: Indicateur de séquence
  • 22. Les indicateurs: Indicateur de choix xs:element name="person"> <xs:complexType> <xs:choice> <xs:element name="employee" type="employee"/> <xs:element name="member" type="member"/> </xs:choice> </xs:complexType> </xs:element> XML- SCHÉMA Types de données-Les éléments complexes
  • 23. soit l’élément complexe suivant: XML- SCHÉMA Types de données-Les éléments complexes <xs:element name="employee"> <xs:complexType> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> <employee> <firstname>Radi</firstname> <lastname>laila</lastname> </employee>
  • 24. <xsd:element name="pages" type="xsd:positiveInteger"/> <xsd:element name="auteur" type="xsd:string"/> <xsd:element name="livre"> <xsd:complexeType> <xsd:sequence> <xsd:element ref="auteur"/> <xsd:element ref="pages"/> <xsd:sequence> <xsd:complexeType> </xsd:element> XML- SCHÉMA Types de données-Les éléments complexes / ref
  • 26. Merci de votre attention

Notes de l'éditeur

  1. Ce modèle peut être utilisé comme fichier de démarrage pour présenter des supports de formation à un groupe. Sections Cliquez avec le bouton droit sur une diapositive pour ajouter des sections. Les sections permettent d’organiser les diapositives et facilitent la collaboration entre plusieurs auteurs. Notes Utilisez la section Notes pour les notes de présentation ou pour fournir des informations supplémentaires à l’audience. Affichez ces notes en mode Présentation pendant votre présentation. N’oubliez pas de tenir compte de la taille de la police (critère important pour l’accessibilité, la visibilité, l’enregistrement vidéo et la production en ligne) Couleurs coordonnées Faites tout particulièrement attention aux diagrammes, graphiques et zones de texte. Tenez compte du fait que les participants imprimeront la présentation en noir et blanc ou nuances de gris. Effectuez un test d’impression pour vérifier que vos couleurs s’impriment correctement en noir et blanc intégral et nuances de gris. Graphiques, tableaux et diagrammes Faites en sorte que votre présentation soit simple : utilisez des styles et des couleurs identiques qui ne soient pas gênants. Ajoutez une étiquette à tous les graphiques et tableaux.