Les espaces de nommage XML par Philippe Poulard 1

Slides:



Advertisements
Présentations similaires
Introduction aux Web Services Partie 1. Technologies XML
Advertisements

16/01/2006 : 18h30-21h30 Aurélien Barbier-Accary 1 Coordonnées Aurélien Barbier-Accary Aurélien Barbier-Accary Supports du cours accessibles sur :
1 3.Langage XSL = XSLT + XSL-FO transformationFormatage.
Transformation de documents XML
Xavier Blanc Web Services Xavier Blanc
DTD Sylvain Salvati
Première expérience d’utilisation des Web Services dans SmartTools Didier Parigot Projet OASIS INRIA Sophia www-sop.inria.fr/oasis/SmartTools Journée.
Corese Moteur de recherche sémantique pour RDF
Le langage de requêtes SPARQL SPARQL Protocol And RDF Query Language
XML schema Objectifs Valider un doc. XML pour des contraintes syntaxiques Documenter un type de documents XML caractérisé par des contraintes Encadrer.
XHTML EXtensible HyperText Markup Language. HTML et XML HTML (HyperText Markup Language) et XML (eXtensible Markup Language) sont deux spécifications.
Cours 5 : Les Web Services et WSDL Mars Version 1.0 -
le langage les éléments
Les fonctions de XPath et XSLT
Domaines nominaux XSLT
Nicolas Singer Maître de conférence, université Champollion
version Beta Marie Calberg Ninni Louhelainen SLFN7
Tutoriel XSLT F. Sajous ERSS – 01/04/2005.
TP 3-4 BD21.
Formulaire HTML Introduction. Définition de formulaire.
Manipulation d’XML avec XSL
CREATION DE FEUILLE DE STYLE pour structuré le document XML
Initiation au système d’information et aux bases de données
Introduction aux Web Services Partie 1. Technologies HTML-XML
Construire une base de données bibliographiques Elaborer un site web
Traitement de texte ++.
XML-Family Web Services Description Language W.S.D.L.
Principes de la technologie orientée objets
UNIVERSITE CHOUAIB DOUKKALI Département des mathématiques
Langages du Web Sémantique
Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM.
MICROSOFT POWER POINT Fais « Enter » Par Danièle Lippé.
RDF(S)
Introduction à la structuration des documents: les techniques M2: Gestion des connaissances.
XML: Syntaxe XML, DTD et Schémas
Notions sur le XML Réfs : manuel p 149. Introduction Le XML (eXtensible Markup Language) est un standard d'échange de données. Il fait partie comme le.
Xpath XML Path language par Yves Bekkers
Rappel (très) succint d’éléments techniques (XML, DTD, XSL, PHP)
STAF 2X XSL/FO Glaus & Ruckstuhl Mars © Glaus & Ruckstuhl TECFA Programme du 18 et 19 mars Revision XML Introduction à XSL/FO (intérêts et.
1. 2 PLAN DE LA PRÉSENTATION - SECTION 1 : Code HTML - SECTION 2.1. : CSS (Méthode 1) - SECTION 2.2. : CSS (Méthode 2) - SECTION 3 : JavaScript - SECTION.
Schémas XML - cours 2 Éric Laporte Institut Gaspard-Monge
An Introduction to distributed applications and ecommerce 1 1 Les services Web, XML et les places de marchés.
Web sémantique : Web de demain
Support des connaissances TP2 XSL-T
Initiation à XML Sebti Foufou.
Kampala, Uganda, June 2014 Documents d’Edition et de Révision Hiroshi Ota and Vijay Mauree ITU/TSB Forum de normalisation pour l'Afrique (Kampala,
8 - XML Cours XML.
Les outils de base : XPath, XSL, XLink, XForms
Création et présentation d’un tableau avec Word 2007
Votre titre de poster Auteurs Remerciements partenaire.
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.
Le langage XML.
X xx yyy Document XML Résolution d'entités Résolution espaces de nommages Reader Parsing Contrôle de validité structurelle Contrôle arbre bien formé Contrôle.
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.
S'initier au HTML et aux feuilles de style CSS Cours 5.
MJ. Blin et M. CsernelPoleInfo31 XML et ses environnements Documents XML bien formés Prologue Arbre d'éléments Attributs Commentaires Entités internes.
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.
eXtensible Markup Language. Généralités sur le XML.
Vers la modularisation des données du web XHTML. Qu'est-ce que XHTML ? ● XHTML est une famille de types de documents futurs et actuels et de modules :
SOAP et les RPC XML SOAP WSDL RPC. Rappels sur le XML Langage avec des balises Très lisible Pour stocker des données Séparation entre contenu et présentation.
XML : un métalangage pour la description de documents structurés XML a été défini par le consortium W3 en fonction de 2 objectifs: Compenser les limitations.
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.
INF2005– Programmation web– A. Obaid Variantes de HTML.
Extensions à la spécification XML Le "plus petit cercle" XML Yves Bekkers Mise à jour : 9 octobre 2003.
1 Exemple d’un document (article). 2 XML: eXtensible Markup Language Wikipédia XML (Extensible Markup Language, « langage de balisage extensible ») est.
Transcription de la présentation:

Les espaces de nommage XML par Philippe Poulard 1

Les espaces de nommage XML par Philippe Poulard 2 Sommaire Objectifs Principes Terminologie Portée des déclarations Espace de nommage par défaut Espaces de nommages et attributs Surcharge des déclarations URIs et préfixes Espaces de nommages et DTD Espaces de nommages dans le modèle de données

Les espaces de nommage XML par Philippe Poulard 3 Objectifs des espaces de nommage XML Poulard Philippe Baron Fondamentaux XML …/… Fondamentaux XML Poulard Philippe Baron …/… Fusion des 2 documents Confusion sur le sens de l'élément titre Objectifs des espaces de nom : distinguer les éléments et les attributs de différentes applications XML qui ont le même nom grouper les éléments et les attributs d'une même application XML pour que les logiciels puissent les reconnaître Si vous avez la maîtrise des DTD que vous utilisez, vous pouvez éviter cette confusion, mais si vous utilisez des DTD écrites par d'autres, vous y serez confronté

Les espaces de nommage XML par Philippe Poulard 4 Principe des espaces de nommage XML Ambiguïté assignation des éléments et attributs à une clé universelle document clé cours titre contenu auteur nom prénom titre Les URI séparent les éléments et les attributs en 2 ensembles disjoints Alias : personne Alias : cours <cours:cours xmlns:cours=" xmlns:personne=" Déclaration des espaces de nommage : Ils se déclarent dans un élément, avec le préfixe spécial xmlns (URI=ID universel)

Les espaces de nommage XML par Philippe Poulard 5 Principe des espaces de nommage XML Partie locale Préfixe Nom qualifié Elément qualifié : URI + local name = nom universel ou local name ou Nom complet ou qualified name ou QName Attribut qualifié : Pour référer un nom expansé, la notation { est souvent utilisée, mais n'apparaît jamais dans un document XML.

Les espaces de nommage XML par Philippe Poulard 6 Portée des espaces de nommage XML Fondamentaux XML Poulard Philippe Baron …/… Portée de Portée de <cours:cours xmlns:cours=" xmlns:personne=" "> Fondamentaux XML Poulard Philippe Baron …/…

Les espaces de nommage XML par Philippe Poulard 7 Espaces de nommage par défaut URI Il est possible de ne pas spécifier de préfixe dans la déclaration Le préfixe xmlns est utilisé exclusivement pour définir les espaces de nommage <svg width="18cm" height="6cm" viewBox=" " xmlns=" <svg:svg width="18cm" height="6cm" viewBox=" " xmlns:svg=" Définition d'un espace de nommage par défaut Le préfixe xml est associé à l'espace de nommage : Dans le modèle logique, tous les éléments disposent de l'espace de nommage xml (utilisé dans le DOM)

Les espaces de nommage XML par Philippe Poulard 8 Il est donc inutile de préfixer les attributs pour qu'ils soient dans le même espace de nommage de l'élément dont ils dépendent (souvent, les DTD l'interdisent même) Les attributs et les espaces de nommage XML L'espace de nommage par défaut ne s'applique pas aux attributs sans préfixe Les applications : ne doivent pas tenter d'associer les attributs non préfixés à l'espace de nommage XML par défaut doivent associer les attributs non préfixés à leur élément-type (DTD) Cependant, il est possible d'associer à un élément des attributs qui font partie d'un autre espace de nommage : <imagexlink:type="simple" xlink:actuate="onLoad" xlink:show="embed" xlink:href=" width="123" height="234" /> <svg:svg width="18cm" height="6cm" viewBox=" " xmlns:svg=" Ces attributs ne sont pas dans un espace de noms

Les espaces de nommage XML par Philippe Poulard 9 Surcharge des espaces de nommage XML abcd Surcharge d'une déclaration d'espace de nommage qui utilise un préfixe : abcd Surcharge d'une déclaration d'espace de nommage par défaut : abcd Non Surcharge d'une déclaration d'espace de nommage qui utilise un préfixe avec une déclaration vide : abcd Surcharge d'une déclaration d'espace de nommage par défaut avec une déclaration vide :

Les espaces de nommage XML par Philippe Poulard 10 Exemples Quelques déclarations célèbres : RDF Dublin-core SVG XSLFO XSLT XHTML XLink SOAP Schema

Les espaces de nommage XML par Philippe Poulard 11 Les URI des espaces de nommage XML Les URI sont purement déclaratives Il n'y a pas nécessairement quelque chose à l'adresse indiquée En général, on y trouve un document explicatif de l'utilisation de l'espace de nommage, mais ce n'est pas une obligation. Les espaces de nommage du W3C font référence aux spécifications appropriées Les URI des espaces de nommage ne sont que des identificateurs formels Les URIs servent seulement à définir des clés universelles : xmlns="urn:guid:88d969c9-f192-11d4-a65f e6" xmlns="urn:isbn: " xmlns="urn:schemas-microsoft-com:office:office" Cependant, dans un environnement confiné, cela pourrait fonctionner : xmlns:date="*** Processing dates ***" (à manipuler avec précaution !!!) Les parseurs et les applications ne sont pas tenus d'aller y chercher quoi que ce soit il n'y a rien qui puisse les intéresser la cible n'est pas nécessairement accessible par votre réseau

Les espaces de nommage XML par Philippe Poulard 12 Les préfixes des espaces de nommage XML Seule l'URI peut avoir une signification pour une application <xsl:stylesheet xmlns:xsl=" <extensible-stylesheet-language:stylesheet xmlns:extensible-stylesheet-language=" <tiens-voilà-du-boudin:stylesheet xmlns:tiens-voilà-du-boudin=" Un processeur XSLT saura traiter indifféremment les feuilles de style suivantes : Les préfixes doivent toujours être associés à une URI par une déclaration xmlns Les préfixes n'ont aucune signification particulière Exemple

Les espaces de nommage XML par Philippe Poulard 13 Ce que ne sont pas les espaces de nommage XML La recommandation des espaces de nommage ne définit rien d'autre qu'un système de nommage en 2 parties pour les éléments types et les attributs En particulier, ils ne définissent pas: un moyen pour fusionner 2 documents qui utilisent des DTD différentes (les ambiguïtés dans le document fusionné doivent être levées spécifiquement, et les espaces de nommage sont un moyen d'y arriver) un moyen pour les associer à des schémas un moyen pour valider les documents qui les utilise comment associer les éléments types et les déclarations d'attributs des DTD à un espace de nommage Il peut y avoir : des documents sans déclaration d'espace de nom qui utilisent une DTD des documents avec déclaration d'espace de nom sans DTD des documents avec déclaration d'espace de nom ET qui utilisent une DTD Les espaces de noms sont complètement indépendants des DTD

Les espaces de nommage XML par Philippe Poulard 14 Espaces de nommage et DTD Les DTD doivent déclarer les éléments avec leur nom qualifié Une déclaration xmlns peut être omise dans le document et déclarée dans la DTD : <!DOCTYPE svg:svg [ ]> Les DTD peuvent contenir des noms qualifiés, mais les déclarations d'espace de nommage ne s'appliquent pas aux DTD Il n'y a pas de moyen de déterminer à quel espace de nommage un préfixe utilisé dans une DTD se réfère Les noms qualifiés dans les DTD ne peuvent pas être associés à des noms universels Les déclarations d'éléments types et d'attributs sont exprimées en termes de noms qualifiés, pas en terme de nom universel La validation ne peut être redéfinie en terme de noms universels, comme cela est requis

Les espaces de nommage XML par Philippe Poulard 15 Espaces de nommage et DTD <!ELEMENT rdf:Description ( (%dc-title; | %dc-creator; | %dc-description; | %dc-date;)*)> Au choix… Non Le parseur peut insérer des blancs

Les espaces de nommage XML par Philippe Poulard 16 Modèle logique et espaces de nommage Les éléments héritent des déclarations d'espaces de nommage définis par eux ou leurs ancêtres. L'élément racine (et ses descendants) est automatiquement doté de la déclaration : xmlns:xml=" Ces 2 documents sont équivalents... abcd efgh <foo:A xmlns:foo=" xmlns:xml=" <foo:B xmlns:foo=" xmlns:xml=" <bar:C xmlns:bar=" xmlns:foo=" xmlns:xml=" <bar:D xmlns:bar=" xmlns:foo=" xmlns:xml=" <foo:E xmlns:bar=" xmlns:foo=" xmlns:xml=" … mais celui-ci n'est qu'une vue conceptuelle : il est interdit de définir un préfixe avec la chaîne "xml" Non