XML: les bases. Dan VODISLAV. Université de Cergy-Pontoise. Licence Professionnelle Communication et Média. Plan

Documents pareils
XML : documents et outils

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

SII Stage d informatique pour l ingénieur

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

PIVOT. Pivot/Querier Documentation technique XML/XSD/XSLT

<?xml version="1.0" encoding="iso " standalone="yes"?>

Master d Informatique Corrigé du partiel novembre 2010

Faculté de Génie Chaire industrielle en infrastructures de communication. La technologie XML. Wajdi Elleuch

Programmation Internet Cours 4


XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

Module http MMS AllMySMS.com Manuel d intégration

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition

Gestion Électronique de Documents et XML. Master 2 TSM

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Qu'est-ce que XML? XML : Extensible Markup Language. Exemple de document SGML SGML

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème

Systèmes d information et bases de données (niveau 1)

Préparation d'un fichier XML pour le reporting des activités avec l'étranger concernant les services, les transferts et les marchandises. Ed.

Accès à l'information XML par des requêtes XQuery au travers de son XSchema

Utilitaires méconnus de StrataFrame

Introduction aux concepts d ez Publish

XML et DOM. Matériel de cours. mars 1999 version 0.3 dernière modification: 24/3/99

C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

Autour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Web Application Models

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Hébergement de site web Damien Nouvel

Les outils de création de sites web

UE Programmation Impérative Licence 2ème Année

L'essentiel de XML. Cours XML. Olivier Carton

Plateforme PAYZEN. Définition de Web-services

Formation HTML / CSS. ar dionoea

FileMaker Server 12. publication Web personnalisée avec XML

Débuter avec EXPRESS. Alain Plantec. 1 Schema 2

[Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY. Validation du document Nom Date Visa

LES TYPES DE DONNÉES DU LANGAGE PASCAL

Instructions et spécifications pour la transmission en format XML de déclarations par lots. 30 mai 2015 MODULE 1

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

Formation : WEbMaster

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Audit SEO. I / Les Tranquilles d Oléron

SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Utilisation d objets : String et ArrayList

Outils logiciels pour l'ingénierie documentaire

Cours Bases de données 2ème année IUT

Cours 14 Les fichiers

Architectures d'intégration de données

From supply chain to demand chain

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Généralités. javadoc. Format des commentaires. Format des commentaires. Caractères spéciaux. Insérer du code

Génie Logiciel avec Ada. 4 février 2013

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2

Intégration web Les bonnes pratiques LE GUIDE DE SURVIE DE L INTÉGRATEUR! Corinne Schillinger DESIGN. Préface d Élie Sloïm & Laurent Denis

Les architectures 3-tiers Partie I : les applications WEB

Chapitre VI- La validation de la composition.

HMTL. Exemple de fichier HTML. Structure d un document HTML. Exemple de fichier HTML. Balises HTML. IFT1147 Programmation Serveur Web avec PHP

Chapitre VIII. Les bases de données. Orientées Objet. Motivation

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

A QUOI SERVENT LES BASES DE DONNÉES?

Bases de programmation. Cours 5. Structurer les données

Premiers Pas en Programmation Objet : les Classes et les Objets

GOL502 Industries de services

Ingénierie des Modèles. Méta-modélisation

UML et les Bases de Données

Les services usuels de l Internet

BD et XML : Exercices

Programme Compte bancaire (code)

Gestion Electronique de Document (ECM/GED)

ECLIPSE ET PDT (Php development tools)

ALGORITHMIQUE ET PROGRAMMATION En C

Content Management System. bluecube. Blue Cube CMS V4.3 par Digitalcube

XML et recherche d information

HTML, CSS, JS et CGI. Elanore Elessar Dimar

Nom de l application

Le Web de Données Dan VODISLAV Université de Cergy-Pontoise Master Informatique M2 Plan

Titres de créances NégOciables Refonte Informatique et organisationnelle

Séance 1 Introduction aux bases de données

Systèmes d'informations historique et mutations

Module BD et sites WEB

Cours No 3 : Identificateurs, Fonctions, Premières Structures de contrôle.

TP 1. Prise en main du langage Python

Optimisation des échanges et traitements XML

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

2 S I M 1 P H O N E G U I D E U T I L I S A T E U R. Guide d utilisation E-commerce / Prestashop

Architecture Orientée Service, JSON et API REST

Les Services Web. Jean-Pierre BORG EFORT

ech-0007 Norme concernant les données Communes

Plan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml

A QUOI SERVENT LES BASES DE DONNÉES?

Comment récupérer un document OOo corrompu. Distribué par Le projet OpenOffice.org

Transcription:

XML: les bases Dan VODISLAV Université de Cergy-Pontoise Licence Professionnelle Communication et Média Plan XML: pourquoi et comment Historique, principes et caractéristiques de base Comparaison avec HTML et les BD relationnelles Le format XML Structure des documents XML Documents bien formés et valides Détails de syntaxe Schémas XML de base: les DTD Les DTD XML Schema UCP, Licence Pro C&M: XML, les bases 2

XML: extensible Markup Language Langage de description de documents structurés Utilisation de balises (balisage structurel) Standard pour l échange / la publication de données sur le web Héritage: HTML: documents publiés sur le web SGML: documentation technique (documents structurés) HTML est une grammaire spécifique de SGML Données structurées: bases de données relationnelles, objet XML 1.0: recommandation du W3C (1998) Actuellement XML 1.0 quatrième révision (2006) XML 1.1 réduit la dépendance du codage des caractères reste marginal, la norme est toujours XML 1.0 UCP, Licence Pro C&M: XML, les bases 3 Pourquoi XML? HTML: documents sur le web Langage de présentation pour les documents du web Ensemble de balises et grammaire fixes, mélange d éléments de structure de document et de mise en page Difficile de déduire la signification du contenu Données structurées: bases de données Décrivent le contenu, pas la présentation qu on peut en faire Structure régulière basée sur des types simples: string, int, boolean, Les documents du web sont mal adaptés à cette structuration rigide Texte, structure variable Conclusion: on a besoin de séparer le contenu et la présentation, mais à l aide d une structuration flexible, adaptée aux documents texte du web UCP, Licence Pro C&M: XML, les bases 4

Exemple Bibliographie G. Gardarin, XML : des bases de données aux services web, Dunod, 2003 S. Abiteboul, N. Polyzotis, The Data Ring, CIDR, 2007 HTML <h1>bibliographie</h1> <ul><li>g. Gardarin, <i>xml : Des Bases de Données aux Services Web</i>, Dunod, 2003 <li>s. Abiteboul, N. Polyzotis, <i>the Data Ring</i>, CIDR, 2007 </ul> Base de données relationnelle «Bibliographie» Auteur Titre Éditeur Conférence Année G. Gardarin XML : des bases de données aux services web Dunod NULL 2003 S. Abiteboul The Data Ring NULL CIDR 2007 N. Polyzotis The Data Ring NULL CIDR 2007 UCP, Licence Pro C&M: XML, les bases 5 Exemple (suite) XML <bibliographie> <ouvrage année="2003"> <auteur>g. Gardarin</auteur> <titre>xml : Des Bases de Données aux Services Web</titre> <éditeur>dunod</éditeur> </ouvrage> <ouvrage année="2007"> <auteur>s. Abiteboul</auteur> <auteur>n. Polyzotis</auteur> <titre>the Data Ring</titre> <conférence>cidr</conférence> </ouvrage> </bibliographie> UCP, Licence Pro C&M: XML, les bases 6

XML orienté données et orienté texte XML est très flexible peut représenter des données très structurées ou du texte très peu structuré XML orienté données <inventaire> <produit code="az320"> <nom>ordinateur</nom> <prix>750</prix> </produit> <produit code="lm208"> <nom>chaise</nom> <prix>63</prix> </produit> </inventaire> inventaire code nom prix AZ320 Ordinateur 750 LM208 Chaise 63 XML orienté texte <description>dans la boutique <nom>le Bureau</nom>, située <adresse>25 rue de l'oise</adresse> on peut acheter tout ce dont on a besoin pour son bureau: <produit> ordinateur </produit>, <produit> chaise </produit>, etc. </description> UCP, Licence Pro C&M: XML, les bases 7 Syntaxe XML Un document XML contient: Un prologue: présence facultative, mais fortement conseillée Décrit: la version du langage XML, le codage des caractères (par défaut UTF-8), l'existence de déclarations extérieures au document <?xml version="1.0" encoding="iso-8859-1" standalone="yes"?> Une déclaration de type de document (DTD) - facultatve <!DOCTYPE exemple [ déclarations ]> <!DOCTYPE exemple SYSTEM "exemple.dtd"> Un arbre d éléments: obligatoire <document> <salutation>bonjour!</salutation> </document> Des commentaires et des instructions de traitement: facultatifs <! - Ceci est un commentaire --> <?xml-stylesheet type="text/xsl" href="style.xsl"?> UCP, Licence Pro C&M: XML, les bases 8

Arbre d éléments Un document est formé d une hiérarchie (arbre) d éléments L arbre a un élément racine unique Le contenu d un élément est délimité par des balises Tout élément fils est inclus dans son père : <a><b></a></b> n est pas correct Un élément est de la forme: <nom attr='valeur'> contenu </nom> <nom> : balise d'ouverture </nom> : balise de fermeture, obligatoire (sauf pour les éléments vides <nom/>) nom formé de lettres, chiffres, _, -,., : (signification spéciale) commence par une lettre ou par _ et ne commence pas par les caractères «xml» contenu : contenu d'un élément vide, texte, autres éléments, imbrication de texte et d autres éléments instructions de traitement, commentaires attr='valeur' : ensemble éventuellement vide d'attributs la valeur doit être délimitée par des apostrophes ou des guillemets <rapport langue='fr' dern-modif='08/07/99'> UCP, Licence Pro C&M: XML, les bases 9 Documents bien formés et documents valides Document XML bien formé : document correct sans DTD le prologue ne contient pas de déclaration de type de document (DTD) contient un arbre d'éléments correct <?xml version="1.0" standalone="yes"?> <document> <salutation>bonjour!</salutation> </document> Document XML valide : document correct avec DTD son prologue contient une déclaration de type de document (DTD) son arbre d'éléments respecte la structure définie par la déclaration de type <?xml version="1.0" encoding="iso-8859-1" standalone="yes"?> <!DOCTYPE document [ <!ELEMENT document (salutation)> <!ELEMENT salutation (#PCDATA)> ]> <document> <salutation>bonjour!</salutation> </document> UCP, Licence Pro C&M: XML, les bases 10

Formes sérialisée et arborescente Forme sérialisée d un document/élément Chaîne de caractères (texte) incluant balises et contenu textuel Exemple <lettre type='court'><salutation>bonjour!</salutation><fin>au revoir</fin></lettre> ou avec un peu de mise en forme <lettre type='court'> <salutation>bonjour!</salutation> <fin>au revoir</fin> </lettre> Forme arborescente Utilisée par les applications, modèle DOM (W3C) lettre type court salutation Bonjour! fin Au revoir UCP, Licence Pro C&M: XML, les bases 11 Les DTD DTD = grammaire pour la structure des documents Facultative, interne ou externe au document Contient des déclarations pour les éléments, attributs, entités, notations utilisés Avantages de l utilisation de DTD Partage d une même structure entre plusieurs documents, structures «standard» pour une communauté Vérification stricte et automatisable de la correction des documents Document DTD <?xml version="1.0" encoding="iso-8859-1" standalone="no"?> <!DOCTYPE document SYSTEM "accueil.dtd"> <document type='exemple'> <salutation> Bonjour! </salutation> </document> <! - fichier accueil.dtd. Exemple de DTD simple --> <! - Définition de l'élément racine --> <!ELEMENT document (salutation)> <! - Définition de l attribut type pour l élément document --> <!ATTLIST document type CDATA #IMPLIED> <! - Un élément salutation ne contient que du texte --> <!ELEMENT salutation (#PCDATA)> UCP, Licence Pro C&M: XML, les bases 12

Déclaration d éléments <!ELEMENT nom modèle> ELEMENT est un mot-clé (en majuscules!) nom est un nom valide d'élément modèle est le modèle de contenu de cet élément Modèles de contenu éléments : l élément est composé d autres éléments (fils) données : l élément contient du texte mixte : mélange de texte et de sous-éléments libre : contenu quelconque bien formé vide : pas de contenu, seuls les attributs sont importants UCP, Licence Pro C&M: XML, les bases 13 Modèles de contenu pour les éléments Sous-éléments : plusieurs façons de les combiner séquence : <!ELEMENT chapitre (titre,intro,section)> Remarque: l ordre des éléments est important alternative : <!ELEMENT chapitre (titre,intro,(section sections))> indicateurs d'occurrence: * (0-n), + (1-n),? (0-1) <!ELEMENT chapitre (titre,intro?,section+)> <!ELEMENT section (titre-section,texte-section)> <!ELEMENT texte-section (p f)*> Données : texte <!ELEMENT p (#PCDATA)> Mixte : une seule façon de mélanger texte et sous-éléments est acceptée <!ELEMENT p (#PCDATA em exposant indice renvoi)*> UCP, Licence Pro C&M: XML, les bases 14

Modèles de contenu pour les éléments (suite) Libre : contenu bien formé, mais sans restrictions <!ELEMENT p ANY> Vide : pas de contenu, seuls les attributs sont importants <!ELEMENT p EMPTY> Exemple <!ELEMENT p (#PCDATA bibref)* > <!ELEMENT bibref EMPTY> <!ATTLIST bibref ref IDREF #REQUIRED> utilisation: <p> consulter <bibref ref='ref-19980210'/> </p> UCP, Licence Pro C&M: XML, les bases 15 Sections CDATA Le contenu texte (#PCDATA) peut contenir des caractères réservés (par exemple < ou > ) On peut les «protéger» en utilisant des sections CDATA Exemple <program> if(i<5) return i; </program> incorrect <program> <![CDATA[if(i<5) return i;]]> </program> correct UCP, Licence Pro C&M: XML, les bases 16

Déclaration d attributs <!ATTLIST nom-élém nom-attr type-attr décl-défaut nom-attr type-attr décl-défaut > Pour un élément donné on décrit la liste de ses attributs Chaque attribut: un nom, un type et une valeur par défaut Remarque: l ordre des attributs n est pas important Ex. <!ELEMENT ex (#PCDATA)> <!ATTLIST ex xml:lang NMTOKEN #IMPLIED cible ID #REQUIRED nb (1 2 3) '1' propriétaire CDATA #FIXED 'moi' > Valeur par défaut d'un attribut La valeur en question #REQUIRED : attribut obligatoire, valeur à être précisée dans le document #IMPLIED : attribut facultatif, valeur à être précisée dans le document #FIXED (suivi de la valeur) : valeur de l attribut fixée pour tout élément instance UCP, Licence Pro C&M: XML, les bases 17 Attributs de type ID et IDREF Permettent de créer des renvois à l'intérieur d'un document ID: identifie l élément référencé, IDREF: crée le renvoi Transforment la structure d arbre du document en graphe Exemple DTD <!ELEMENT personne (nom, )> <!ATTLIST personne num ID #REQUIRED> <!ELEMENT livre (titre, auteur+, )> <!ELEMENT auteur EMPTY> <!ATTLIST auteur ref IDREF #REQUIRED> Document <personne num= p1 ><nom>gardarin</nom></personne> <personne num= p2 ><nom>valduriez</nom></personne> <livre> <titre>bases de données</titre> <auteur ref= p1 /> <auteur ref= p2 /> </livre> Remarque: les renvois ne sont pas typés, rien ne garantit qu on référence une personne En fait ref= p1 renvoie vers n importe quel élément qui a un attribut ID de valeur p1 UCP, Licence Pro C&M: XML, les bases 18

Déclaration d entités Entité: raccourci, macro Définie par un nom d entité et une valeur On utilise une entité de nom A en écrivant &A; Effet: remplacer dans le document &A; avec la valeur de A Types d'entités: prédéfinies, internes, externes Entités prédéfinies: caractères réservés en XML ou absents sur le clavier lt (<), gt (>), quot ("), amp (&), apos (') Ex: pour dire "i < 5" on écrit "i < 5" #code-unicode (caractère spécifié par son code Unicode) Ex: le caractère de code hexa 00A9 est écrit UCP, Licence Pro C&M: XML, les bases 19 Entités internes et externes Entités internes : valeur définie explicitement dans la DTD Définies dans la DTD: <!ENTITY nom-entité "valeur"> Entités externes XML : valeur définie dans un fichier externe Référencées par URL (mot-clé SYSTEM) Doivent être des documents bien formés <?xml version='1.0'?> <!DOCTYPE bouquin [ <!ENTITY chapitre1 SYSTEM "chap1.xml"> <!ENTITY chapitre2 SYSTEM "chap2.xml"> <!ENTITY auteur "Toto"> ]> <bouquin> <titre> Les joies de XML </titre> <auteur> &auteur; </auteur> <intro> Il était une fois </intro> &chapitre1; &chapitre2; </bouquin> UCP, Licence Pro C&M: XML, les bases 20

Limitations des DTD Peu de types de contenu et d attributs: essentiellement du texte Vérifications limitées sur la validité du contenu Conclusion Les DTD ne sont pas suffisantes pour l échange de données structurées dans les applications (commerce électronique, intégration de données, ) Mais elles sont encore très utilisées pour des applications simples Autre inconvénient: les DTD ne sont pas en format XML Standard pour les schémas XML plus avancés XML Schema Format XML Une large palette de types (entiers, réels, dates, booléens, etc.) Contraintes d intégrité: notions de clé, unicité Espaces de noms Héritage de types UCP, Licence Pro C&M: XML, les bases 21 Exemple DTD / XML Schema Type complexe CinemaType Nom (string) Adresse (AdresseType, complexe) Séances (SeanceType, complexe) DTD <!ELEMENT Cinema (Nom, Adresse, Seance*)> <!ELEMENT Nom (#PCDATA)> <!ELEMENT Adresse (Ville, Rue, Numero)>... UCP, Licence Pro C&M: XML, les bases 22

Exemple (suite) XML Schema <xsd:element name= Cinema type= CinemaType /> <xsd:complextype name= CinemaType > <xsd:sequence> <xsd:element name= Nom type= xsd:string /> <xsd:element name= Adresse type= AdresseType /> <xsd:element name= Seance type= SeanceType minoccurs= 0 maxoccurs= unbounded /> </xsd:sequence> </xsd:complextype> <xsd:complextype name= AdresseType > <xsd:sequence> <xsd:element name= ville type= xsd:string /> <xsd:element name= rue type= xsd:string /> <xsd:element name= numero type= xsd:decimal /> </xsd:sequence> </xsd:complextype> UCP, Licence Pro C&M: XML, les bases 23 XML Schema : types simples et complexes Type simple: ensemble de valeurs (pas d élément) DTD: un seul type simple (#PCDATA), 10 types d attributs XML Schema: 43 types simples xsd:integer, xsd:long, xsd:float, xsd:double,... xsd:time, xsd:timeduration, xsd:date, xsd:year, xsd:month,... xsd:string, xsd:boolean, xsd:byte, xsd:language, xsd:urireference... xsd:id, xsd:idref, xsd:nmtoken,... xsd:anytype Types par restriction: longueur, motif (string), intervalle (numérique), etc. Types complexes construits avec : xsd:sequence : séquence ordonnée d éléments (DTD: ',') xsd:all : séquence non-ordonnée d éléments xsd:choice : choix d éléments (DTD: ' ') xsd:group : regroupement d éléments (DTD: '( )') UCP, Licence Pro C&M: XML, les bases 24

Restrictions de types simples Définition de nouveaux types simples par rajout de restrictions Restriction par domaine <xsd:simpletype name='anneefilm'> <xsd:restriction base='xsd:integer'> <xsd:mininclusive value='1900'/> <xsd:maxinclusive value='2002'/> </xsd:restriction> </xsd:simpletype> Restriction par motif Numéro de téléphone: commence par +33-(0), suivi d un chiffre, ensuite quatre fois tiret - deux chiffres <xsd:simpletype name='numtel'> <xsd:restriction base='xsd:string'> <xsd:pattern value='+33-(0)\d(-\d{2}){4}'/> </xsd:restriction> </xsd:simpletype> Restriction par énumération <xsd:simpletype name='marques'> <xsd:restriction base="xsd:string"> <xsd:enumeration value="audi"/> <xsd:enumeration value="golf"/> <xsd:enumeration value="bmw"/> </xsd:restriction> </xsd:simpletype> UCP, Licence Pro C&M: XML, les bases 25 Déclaration d éléments et d attributs Éléments <xsd:element name=' ' type=' ' contraintes...> <xsd:element ref=' ' contraintes> Contraintes: minoccurs, maxoccurs,... Ex: <xsd:element name= nom type= xsd:string minoccurs= 0 maxoccurs= 2 /> Attributs <xsd:attribute name use type...> Use: required, optional, Ex: <xsd:attribute name= langue type= xsd:language use= optional /> UCP, Licence Pro C&M: XML, les bases 26

Contenu mixte DTD: (#PCDATA cinéma film)* Contenu mixte: texte et éléments mélangés au même niveau XML Schema Attribut "mixed" Le texte n est pas à déclarer comme un «élément» <xsd:complextype name= OfficielType mixed= true > <xsd:choice minoccurs= 0 maxoccurs= unbounded > <xsd:element name= cinema type= CinemaType /> <xsd:element name= film type= FilmType /> </xsd:choice> </xsd:complextype> UCP, Licence Pro C&M: XML, les bases 27 Éléments simples avec attributs Les types simples n ont pas d attributs Définition par extension d un type complexe avec contenu simple Exemple <titre langue= français >Le Goût des Autres</titre> XML Schema <xsd:element name= titre > <xsd:complextype> <xsd:simplecontent> <xsd:extension base= xsd:string > <xsd:attribute name= langue type= xsd:string /> </xsd:extension> </xsd:simplecontent> </xsd:complextype> </xsd:element> UCP, Licence Pro C&M: XML, les bases 28

Exemple: éléments vides avec attributs Exemple : <film titre= If année= 1976 /> <xsd:element name= film > <xsd:complextype> <xsd:attribute name= titre type= xsd:string /> <xsd:attribute name= anne type= annéefilm /> </xsd:complextype> </xsd:element> UCP, Licence Pro C&M: XML, les bases 29 Référence à un XML Schema Fichier cinema.xsd contenant le schéma <?xml version="1.0"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/xmlschema"> <xsd:element name="cinema" type="cinematype"/>... </xsd:schema> Fichier cinema.xml basé sur le schéma cinema.xsd <?xml version="1.0"?> <Cinema xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:nonamespaceschemalocation="cinema.xsd">... </Cinema> UCP, Licence Pro C&M: XML, les bases 30

Bibliographie spécifique Le site W3C http://www.w3.org/xml/core http://www.w3.org/xml/schema A. Michard, XML - Langage et applications, Eyrolles UCP, Licence Pro C&M: XML, les bases 31