La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Programmation Web : Schémas XSD

Présentations similaires


Présentation au sujet: "Programmation Web : Schémas XSD"— Transcription de la présentation:

1 Programmation Web : Schémas XSD
Jérôme CUTRONA 09:44:15 Programmation Web

2 Introduction 09:44:15 Programmation Web

3 Introduction L’utilisation d’un fichier XML demande la vérification de sa cohérence Un document bien formé n’est pas suffisant Les documents XML sont utilisés, entre autre, pour l’échange de données Traiter des données incorrectes ? Les vérifier manuellement ? Programmes de contrôle ? Validation d’un document XML : DTD : Document Type Definition XSD : XML Schema Definition 09:44:15 Programmation Web

4 Validation d’un document XML
09:44:15 Programmation Web

5 DTD : Document Type Definition
Description non XML de la structure admissible d’un document à base de balises Décrit les éléments et attributs autorisés Décrit la structure autorisée : quels éléments peuvent se trouver dans quels éléments Peut être interne ou externe au document XML Description de structure Peu ou pas de contrôle de valeurs contenues dans la structure Limité, largement dépassé par les schémas XSD 09:44:15 Programmation Web

6 XSD : XML Schema Definition
Description XML de la structure admissible d’un document à base de balises Décrit les éléments et attributs autorisés Décrit la structure autorisée : quels éléments peuvent se trouver dans quels éléments Peut être interne ou externe au document XML Description de structure Contrôle de valeurs contenues dans la structure Utilise les espaces de noms (namespace) 09:44:15 Programmation Web

7 Espaces de noms/nommage XML
09:44:15 Programmation Web

8 Espaces de noms XML Lever l’ambiguïté sur le nom des balises
Ex : utilisation de la balise <table> de HTML et de <table> (meuble) dans une structure XML Distingués par l’utilisation d’un espace de noms <h:table> pour HTML <f:table> pour XML Utilisation de l’attribut xmlns <h:table xmlns:h=" <f:table xmlns:f=" <root xmlns:h=" xmlns:f=" 09:44:15 Programmation Web

9 Espaces de noms XML Identification par une chaîne unique : URI <h:table xmlns:h=" Préfixe et identification xmlns:préfixe="Identification" La déclaration d'un espace de nommage doit se faire dans un élément (une balise) Utilisable pour l’élément et ses descendants xmlns sans préfixe = espace de nom par défaut 09:44:15 Programmation Web

10 Schémas XML 09:44:15 Programmation Web

11 Que peut-on vérifier avec un schéma XSD
Éléments autorisés dans le document Attributs autorisés dans le document Quels sont les éléments enfants Ordre des éléments enfants Nombre des éléments enfants Éléments vides ou contenant du texte Types de données personnalisables pour les éléments et les attributs Valeurs fixes et pour défaut pour les éléments et les attributs 09:44:15 Programmation Web

12 Base des schémas XSD Un schéma XML est un document XML
Sa déclaration est celle d’un document XML : <?xml version="1.0" encoding="UTF-8" ?> <xs:schema xmlns:xs=" ... </xs:schema> Balise racine Espace de noms 09:44:15 Programmation Web

13 Référencer un schéma XML
<?xml version="1.0"?> <note xmlns=" xmlns:xsi=" xsi:schemaLocation=" note.xsd"> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> Espace de noms par défaut Utiliser le schéma note.xsd pour l’espace de noms Déclaration de l’espace de noms xsi 09:44:15 Programmation Web

14 Contenu d’un schéma XSD
09:44:15 Programmation Web

15 Éléments simples Un élément simple contient du texte
<xs:element name="xxx" type="yyy"/> xxx est le nom de l’élément yyy est le type de l’élément Les types prédéfinis dans les schémas sont : xs:string xs:decimal xs:integer xs:boolean xs:date xs:time 09:44:15 Programmation Web

16 Éléments simples : exemple
<login>cutron01</login> <lastlog> </lastlog> <webservers>2</webservers> <xs:element name="login" type="xs:string"/> <xs:element name="lastlog" type="xs:date"/> <xs:element name="webservers" type="xs:integer"/> 09:44:15 Programmation Web

17 Attributs Attribut d’un élément
<xs:attribute name="xxx"  type="yyy"/> xxx est le nom de l’attribut yyy est le type de l’attribut Exemple <login realm="INSERM">cutron01</login> <xs:attribute name="realm"  type="xs:string"/> 09:44:15 Programmation Web

18 Restrictions / facettes
Utilisées pour définir les valeurs acceptables Exemple : <xs:element name="age"> <xs:simpleType>     <xs:restriction base="xs:integer">       <xs:minInclusive value="0"/>       <xs:maxInclusive value="120"/>     </xs:restriction>   </xs:simpleType> </xs:element> 09:44:15 Programmation Web

19 Restrictions possibles
xs:minInclusive xs:minExclusive xs:maxInclusive xs:maxExclusive xs:fractionDigits xs:enumeration xs:pattern xs:length xs:minLength 09:44:15 Programmation Web

20 Éléments complexes Un élément complexe contient d’autres éléments et/ou des attributs <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> Élément complexe Précise l’ordre des fils 09:44:15 Programmation Web

21 Et après ? 09:44:15 Programmation Web

22 Pour aller plus loin Les éléments présentés sont la base des schémas XSD Les schémas XSD possèdent d’autres capacités de description des documents XML et de nombreuses subtilités Vous venez de découvrir les fondements Suffisant pour les TP 09:44:15 Programmation Web


Télécharger ppt "Programmation Web : Schémas XSD"

Présentations similaires


Annonces Google