Programmation Web : Schémas XSD

Slides:



Advertisements
Présentations similaires
DTD Sylvain Salvati
Advertisements

XML schema Objectifs Valider un doc. XML pour des contraintes syntaxiques Documenter un type de documents XML caractérisé par des contraintes Encadrer.
Domaines nominaux XSLT
Nicolas Singer Maître de conférence, université Champollion
Introduction à la structuration des documents: les techniques M2: Gestion des connaissances.
XML: Syntaxe XML, DTD et Schémas
Introduction au XML Choopan Rattanapoka Université Louis-Pasteur, Starsbourg.
8 - XML Cours XML.
XML-schema. Pourquoi XML-schema Les DTD : Pas de typage, peu de contraintes sur les contenus nombre d'apparitions d'un élément à choisir entre 0 et 1.
Programmation Web : Introduction à XML
Programmation Web : Schémas XSD Jérôme CUTRONA 19:27:07 Programmation Web
Technologies web et web sémantique TP3 - XML. XML eXtensible Markup Language (langage extensible de balisage) – Caractéristiques: méta-langage = un langage.
Module : Langage XML (21h)
Modélisation des documents: DTD et Schéma
1. Introduction 2. DTD 3. Schémas
XSD XML Schema Definition Année universitaire UP web.
L T I Laboratoire de Téléinformatique 2 Projet de semestre Parseur XML basé sur la DTD : Buts –Utiliser la grammaire définissant un type de fichiers XML.
Le langage XML Documents bien formés Un document XML est dit bien formé lorsque le document est correct sans toutefois posséder une DTD. Le prologue du.
XML les données réellement portables La nécessité d’un format de données universel et lisible se faisait sentir depuis longtemps, aujourd’hui avec le développement.
eXtensible Markup Language
1 Chaîne éditoriale et catalogue de formation Université de Picardie Jules Verne.
Utilisation des squelettes Association Rhizomes – 11 août 2006.
BUR Tableur Tableur : Open Office Calc. BUR Tableur 2 Qu’est-ce qu’un tableur ?  Un logiciel permettant de manipuler des feuilles de calcul  Fonctionnalités.
Go2ACT Echange de données entre les géomètres officiels et l’Administration du Cadastre et de la Topographie.
Toulibre : présentation de... xhtml + css par Rémy Sanchez.
Master ESEEC Rédaction de documents (longs) structurés Patrice Séébold Bureau 109, Bât B.
Le xml.
Les Bases de données Définition Architecture d’un SGBD
Eléments de bases requis
Ajouter le code dans une page html
Les tableaux différencier les variables simples des variables indicées (ordonnées et numérotées) un identificateur unique désigne un ensemble, une collection.
EPREUVES HISTOIRE ET GEOGRAPHIE
Evaluation technico-économique des projets de pompage solaire : gage de durabilité et rentabilité Ali Hajji Table Ronde «Financement dédié au pompage.
Pas de variable globale
Les notions de classe et d'objet
Pointeurs et langage C.
JavaScript.
5.
Classe virtuelle LSU er degré
Logiciel de gestion des adhérents
Document Type Definition (DTD)
Collecte de données CAPI
AO (Architecture des ordinateurs)
Principes de programmation (suite)
Buffer Overflow Anatomy of an exploit.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault
Question 5 : La numérisation suffit-elle à valoriser l’information ?
5.
Feuilles de style Cascading Style Sheets
1 Exemple d’un document (article). 2 XML: eXtensible Markup Language Wikipédia XML (Extensible Markup Language, « langage de balisage extensible ») est.
HTTP DNS NTP FTP R231 RJ45 definition HTTP DNS NTP FTP R231 RJ45.
Structure D’une Base De Données Relationnelle
Modélisation avec UML 2.0 Partie II Diagramme de classes.
CSS et DREAMWEAVER (Suite et fin)  Les liens
Programmation Android GUI (widgets) et ressources
Cours 10 : Les Web Services et WSDL Février Version 1.0 -
Catherine Cyrot - bibliothèques numériques - Cours 5
1. LE LANGAGE SQL DDL Version 2 - Janvier Le langage SQL-DDL
Structuration des documents pédagogiques
20 Données semi-structurées et XML
Programmation Web : Introduction à XML
Programmation Web : DOM en PHP
2/24/2019 Outils informatiques Séance 2 : les styles 1 1.
2. CONCEPTS DES BASES DE DONNEES
1. LE LANGAGE SQL DDL Version 1 - Mai 2009 corrigé le 11/2/2011
Catherine Cyrot - bibliothèques numériques - Cours 5
Definition de html sommaire. Présentation de html, css et javascript Module 1.
Gestion de configuration Identification des éléments de configuration du logiciel adapté de la méthodologie MODAL.
Site web, Ce qu’il faut savoir ?
Synchronized Multimedia Integration Language par Yves Bekkers
Transcription de la présentation:

Programmation Web : Schémas XSD Jérôme CUTRONA jerome.cutrona@univ-reims.fr 09:44:15 Programmation Web 2018-2019

Introduction 09:44:15 Programmation Web 2018-2019

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 2018-2019

Validation d’un document XML 09:44:15 Programmation Web 2018-2019

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 2018-2019

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 2018-2019

Espaces de noms/nommage XML 09:44:15 Programmation Web 2018-2019

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="http://www.w3.org/TR/html4/"> <f:table xmlns:f="http://www.w3schools.com/furniture"> <root xmlns:h="http://www.w3.org/TR/html4/" xmlns:f="http://www.w3schools.com/furniture"> 09:44:15 Programmation Web 2018-2019

Espaces de noms XML Identification par une chaîne unique : URI <h:table xmlns:h="http://www.w3.org/TR/html4/"> 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 2018-2019

Schémas XML 09:44:15 Programmation Web 2018-2019

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 2018-2019

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="http://www.w3.org/2001/XMLSchema"> ... </xs:schema> Balise racine Espace de noms 09:44:15 Programmation Web 2018-2019

Référencer un schéma XML <?xml version="1.0"?> <note xmlns="http://www.w3schools.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3schools.com 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 http://www.w3schools.com Déclaration de l’espace de noms xsi 09:44:15 Programmation Web 2018-2019

Contenu d’un schéma XSD 09:44:15 Programmation Web 2018-2019

É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 2018-2019

Éléments simples : exemple <login>cutron01</login> <lastlog>2014-09-04</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 2018-2019

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 2018-2019

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 2018-2019

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 2018-2019

É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 2018-2019

Et après ? 09:44:15 Programmation Web 2018-2019

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 http://www.w3schools.com/schema/ 09:44:15 Programmation Web 2018-2019