Conception de bases de données bdx1.pdf Modélisation logique arborescente en XM

Conception de bases de données bdx1.pdf Modélisation logique arborescente en XML Paternité - Partage des Conditions Initiales à l'Identique : http://creativecommons.org/licenses/by-sa/2.0/fr/ STÉPHANE CROZAT 11 mai 2017 Table des matières I - Cours 4 A. Introduction à XML............................................................................................4 1. Définition du XML...................................................................................................................4 2. Document bien formé.............................................................................................................5 3. Exemple : Un document XML...................................................................................................5 4. Exercice................................................................................................................................5 5. Langages XML orientés données...............................................................................................6 6. Outillage XML........................................................................................................................7 B. Syntaxe de base XML........................................................................................9 1. Balise...................................................................................................................................9 2. Élément................................................................................................................................9 3. Attribut...............................................................................................................................10 4. Structure générale d'un fichier XML........................................................................................10 5. Exemple de fichier XML : un courriel.......................................................................................11 C. Introduction aux schémas XML.........................................................................12 1. Notion de document valide....................................................................................................12 2. Document Type Definition.....................................................................................................12 3. Exercice..............................................................................................................................13 4. Relax NG : Syntaxe XML.......................................................................................................13 5. Types de données................................................................................................................15 6. Présentation de oXygen XML Editor........................................................................................16 D. Manipulation XML avec XPath...........................................................................18 1. L'arbre du document XML......................................................................................................18 2. Introduction à XPath.............................................................................................................19 3. Exercice..............................................................................................................................20 Stéphane Crozat 2 II - Exercice 21 A. Mon nom est personne (Modélisation XML).........................................................21 III - Devoir 23 A. Glossaire I.....................................................................................................23 Solution des exercices 25 Glossaire 29 Signification des abréviations 30 Bibliographie 31 Webographie 32 Index 33 Contenus annexes 34 Cours Stéphane Crozat 3 I - Cours I A. Introduction à XML 1. Définition du XML Définition : XML L'eXtensible Markup Language XML [w_w3c.org/XML] est un méta-langage permettant de définir des langages à balises. Il standardisé comme une recommandation par le W3C depuis 1998. Exemple  LaTeX et HTML sont des langages à balises (mais ce ne sont pas des langages XML)  XHTML est un langage XML Fondamental En tant que méta-langage XML sert à définir des formats informatiques, c'est à dire des façons de représenter de l'information. Les bonnes caractéristiques d'XML - non-ambiguïté, lisibilité, passivité - en font un très bon candidat pour de très nombreux usages, il est donc utilisé dans des secteurs très variés de l'informatique. On distingue généralement deux grandes catégories d'utilisation : les langages orientés données et les langages orientés documents. Complément : Versions de XML La version historique de XML est la version 1.0, qui reste aujourd'hui la plus largement utilisée. Il existe également une version 1.1 de XML, qui propose des différences mineures et nécessaires uniquement dans des contextes particuliers. Cette nouvelle version a été nécessaire pour des raisons de compatibilité des outils existants. Les évolutions principales de XML 1.1 sont de nouveaux caractères permis pour les noms d'éléments (pour suivre l'évolution d'Unicode depuis 1998), de nouvelles conventions pour les caractères de fin de ligne (pour la compatibilité avec des ordinateurs main frame) et de nouveaux caractères de contrôle dans le contenu. Complément : Voir aussi XML : Un langage à balise - p.34 XML : un méta-langage - p.35 Langages XML orientés données Langages XML orientés documents - p.35 Stéphane Crozat 4 Caractéristiques recherchées pour un format XML - p.41 2. Document bien formé Définition Un document est dit bien formé lorsqu'il respecte les règles syntaxiques du XML. Fondamental XML ne pose pas de sémantique à priori mais uniquement des règles syntaxiques. Syntaxe Les règles syntaxiques à respecter sont :  Il n'existe qu'un seul élément père par document, cet élément contenant tous les autres. Il est également appelé racine.  Tout élément fils est inclus complètement dans son père (pas d'éléments croisés). Attention XML ne définit pas le comportement ni la manière dont doit être traité un document, mais uniquement un format. Complément Balise 3. Exemple : Un document XML Exemple : Un mail 1 <?xml version='1.0' encoding='iso-8859-1'?> 2 <mail> 3 <de>stephane.crozat@utc.fr</de> 4 <a>fabrice.issac@utc.fr</a> 5 <objet>Demande d'information</objet> 6 <date>01-03-2001</date> 7 <corps> 8 <paragraphe>Bonjour Fabrice,</paragraphe> 9 <paragraphe>Peux tu m'expliquer ce qu'est le langage XML ?</paragraphe> 10 <paragraphe>Il me faudrait en effet ton avis éclairé sur le sujet.</paragraphe> 11 <paragraphe>J'attends ta réponse, à bientôt</paragraphe> 12 </corps> 13 </mail> 4. Exercice [Solution n°1 p 25] Compléter les trous avec les balises fermantes adéquates. <?xml version="1.0"?> <document> <entete> <titre>Document à corriger</titre> <auteur>Stéphane Crozat <date>01-03-01 Cours Stéphane Crozat 5 <version numero="1"/> <corps> <division titre="Première partie"> <paragraphe>Ce texte doit être <important>corrigé </paragraphe> <paragraphe>Le contenu est sans importance ici</paragraphe> </division> <division titre="Seconde partie"> <paragraphe>Ai-je le droit de mettre du texte ici ?</paragraphe> 5. Langages XML orientés données Définition Ils permettent d'enregistrer et de transporter des données informatiques structurées (comme par exemple des données gérées par des bases de données) selon des formats ouvert (c'est à dire dont on connaît la syntaxe) et facile à manipuler (les structures arborescentes XML étant plus riches que des fichiers à plat par exemple). Les langages XML orientées données servent surtout à l'échange ou la sérialisation des données des programmes informatiques. Remarque L'utilisation d'XML est en fait ici assez accessoire, d'autres formalismes s'y substituent sans difficulté, souvent moins explicites pour la manipulation humaine et souvent plus performant pour la manipulation informatique : CSV, JSON, ... (voir par exemple : http://www.xul.fr/ajax- format-json.html1 pour une comparaison JSON / XML). Remarque : Format verbeux XML est en général plus verbeux que ses alternatives (il contient plus de caractères), c'est pourquoi il est plus explicite pour un humain (ce qui n'est pas toujours utile), et moins performant informatiquement (ce qui n'est pas toujours un problème). Exemple : Formats XML orientés données standards  MathML, ChemML, ...  ATOM, RSS  Dublin Core  RDF, OWL  SVG  ... Exemple : Formats XML orientés données locaux XML est utilisé pour de nombreux langages orientés données locaux, en fait chaque fois qu'un format XML est défini pour les besoins spécifique d'un programme. 1 - http://www.xul.fr/ajax-format-json.html Cours Stéphane Crozat 6 1 <myVector> 2 <x>5</x> 3 <y>19</y> 4 </myVector> Complément : Langages XML de programmation Le formalisme XML est également utilisé pour définir des langages de programmation, à l'instar du C ou du Java. Les langages de programmation écrits en XML sont généralement à vocation déclarative et adressent le plus souvent des traitements eux mêmes liés à XML. XSL-XSLT est un exemple de langage de programmation écrit en XML. On peut également citer par exemple le langage de script ANT (http://ant.apache.org/2) ou XUL pour la réalisation d'IHM (http://www.xul.fr/3) 6. Outillage XML Fondamental Un éditeur de texte suffit pour faire du XML. Document XML créé avec un simple éditeur de texte (gedit) Parseurs Un parser (ou parseur) XML est un programme capable d'analyser un document XML afin de :  vérifier qu'il est bien formé  éventuellement vérifier sa validité par rapport à un schéma (DTD, W3C Schema, RelaxNG)  éventuellement en fournir une représentation mémoire permettant son traitement (SAX, DOM) Par exemple Xerces est un parseur Java (http://xerces.apache.org/xerces2-j/4). Tous les langages de programmation proposent aujourd'hui des parseurs XML. Éditeur validant Un éditeur validant est un éditeur spécialisé dans l'écriture du XML (on parle simplement d'éditeur XML), permettant de :  vérifier dynamiquement que le fichier est bien formé,  de charger des schémas pour vérifier dynamiquement la validité,  de proposer des fonctions d'auto-complétion,  ... 2 - http://ant.apache.org/ 3 - http://www.xul.fr/ 4 - http://xerces.apache.org/xerces2-j/ Cours Stéphane Crozat 7 Éditeurs XML orientés développeurs Les éditeurs spécialisés orientés développeurs sont des IDE permettant l'écriture :  des schémas,  des transformations,  des fichiers XML de test,  ... Ils sont en général peu adaptés à la production des documents XML par les utilisateurs finaux (rédacteurs). On peut citer par exemple :  oXygen (http://www.oxygenxml.com/5), un produit commercial complet accessible à moins de 100€ pour les usages non commerciaux, multi-plateformes (Linux, Mac, Windows) ;  XML Spy, disponible uniquement sous Windows  ... Exemple de fichier XML dans l'éditeur oXygen Éditeurs XML orientés rédacteurs Les éditeurs XML orientés rédacteurs prennent en général en entrée un schéma, des fichiers permettant de configurer l'éditeur, des programmes de transformation, et offre un environnement dédié à l'écriture et la publication de document XML. On peut citer :  Jaxe, libre et multi-plateformes (http://jaxe.sourceforge.net/fr/6)  Adobe Framemaker, sous Windows (http://www.adobe.com/products/framemaker.html7)  Arbortext, sous Windows (http://www.ptc.com/products/arbortext/8)  XMetal, sous Windows (http://na.justsystems.com/content-xmetal9)  Scenari, chaîne éditoriale complète libre et multi-plateformes (http://scenari.org/10) 5 - http://www.oxygenxml.com/ 6 - http://jaxe.sourceforge.net/fr/ 7 - http://www.adobe.com/products/framemaker.html 8 - http://www.ptc.com/products/arbortext/ 9 - http://na.justsystems.com/content-xmetal 10 - http://scenari.org/ Cours Stéphane Crozat 8 Complément : Voir aussi Définition des chaînes éditoriales XML - p.41 Définition de Scenari - p.42 B. Syntaxe de base XML 1. Balise Définition : Balise Les balises sont les composants fondamentaux permettant l'écriture de documents XML. Elles se distinguent du contenu en utilisant les caractères <, > et /. Elles n'ont pas de présentation ou de signification définie par le langage mais elles auront un sens pour les applications et/ou le lecteur. Syntaxe Il existe trois types de balises :  balise d'ouverture : <nom_balise>  balise de fermeture : </nom_balise>  balise vide : <nom_balise/> Exemple : Exemple de balise XML 1 <adresse>12, rue de Paris</adresse> 2. Élément Définition : Élément Un élément XML est un extrait d'un fichier XML comprenant :  une balise ouvrante  une balise fermante  le contenu compris entre les deux balises, qui peut être du texte et/ou d'autres éléments, ou rien (élément vide) Le nom d'un élément peut être composé de tout caractère alphanumérique plus _, - et .. De plus, ils doivent commencer par un caractère alphabétique ou _ et uploads/s1/ cours-01-tdi.pdf

  • 24
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Dec 27, 2022
  • Catégorie Administration
  • Langue French
  • Taille du fichier 1.8514MB