par Philippe Poulard Présentation XML Philippe Poulard 1 Philippe.Poulard@inria.fr



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

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

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

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

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

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

Petite définition : Présentation :

SII Stage d informatique pour l ingénieur

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

Programmation Internet Cours 4

Gestion documentaire (Extraits du CCI version 1.2)

Les outils de création de sites web

XML : documents et outils

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Glossaire. ( themanualpage.org) soumises à la licence GNU FDL.

Gestion Électronique de Documents et XML. Master 2 TSM

Les services usuels de l Internet

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall

Les Services Web. Jean-Pierre BORG EFORT

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Les types de fichiers

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Echosgraphik. Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet

Modules du DUT Informatique proposés pour des DCCE en 2014/2015

Quelques formats de fichiers courants

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

JPEG, PNG, PDF, CMJN, HTML, Préparez-vous à communiquer!

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully

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

Théorie : internet, comment ça marche?

L architecture des services Web

les techniques d'extraction, les formulaires et intégration dans un site WEB

Module BD et sites WEB

Livre Blanc WebSphere Transcoding Publisher

LAB-Multimedia CMS. Guide d'auto-formation. Copyright by LAB-Multimedia 1/22

Sommaire. -1-Computer en bref. Web en bref. Le web 3.0,...la mobilité. Evolution du Web web1.0, web2.0, web2.b, web3.0...

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

Introduction aux Technologies de l Internet

From supply chain to demand chain

Systèmes d'informations historique et mutations

XML et Bases de données. Les bases de données XML natives.

Programmation des Applications Réparties. Parsers XML DOM et SAX

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

Installation de DocBook sur un système Linux

Formation : WEbMaster

Plan. Programmation Internet Cours 3. Organismes de standardisation

Introduction à Microsoft InfoPath 2010

Programmation Web. Madalina Croitoru IUT Montpellier

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

Les avantages du format d'opendocument (ODF)

Le cadre des Web Services Partie 1 : Introduction

Couches 4 à 7 : Traitement des données

18 TCP Les protocoles de domaines d applications

Programmation Web. Introduction

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

WysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

Présentation. Référenciel : textes officiels

WebDAV en 2 minutes. Tous ces objectifs sont complémentaires et ils sont atteints grâce au seul protocole WebDAV. Scénarii

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

1 ère Université WEB. Courbevoie Samedi 21 octobre Votre site interactif sur internet.

Demain, encore plus de tifinaghes sur Internet

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

source : Lexique des termes numériques Atelier du SNE janvier 2010

XML et travail collaboratif : vers un Web sémantique

A. À propos des annuaires

Architectures web/bases de données

Adobe Technical Communication Suite 5

Présentation Internet

L'essentiel de XML. Cours XML. Olivier Carton

Web Application Models

Les nouvelles architectures des SI : Etat de l Art

THÈSE de DOCTORAT. Sémantique, interactions et langages de description des services web complexes

Configuration Interface for MEssage ROuting

Devenez un véritable développeur web en 3 mois!

Système de gestion de contenu

Quels sont les enjeux?

Programmation Internet

Services sur réseaux. Trois services à la loupe. Dominique PRESENT Dépt S.R.C. - I.U.T. de Marne la Vallée

Noms de domaines internationalisés (IDN)

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

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

Algorithmique et langages du Web

Web Site Story Etude, développement et valorisation de votre présence internet

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09

Pelleas : Le projet XML pour le systeme d information documentaire du polytechnicum de Marne- la Vallée

FileMaker Server 12. publication Web personnalisée avec XML

4. SERVICES WEB REST 46

Qu est ce qu Internet. Qu est-ce qu un réseau? Internet : à quoi ça sert? présentation des services. Exemple de configuration. Rôles des éléments

Introduction aux «Services Web»

Basile Couëtoux Yves Dubromelle Jean-Pierre Prunaret. Année Outils Informatique et C2I. B. Couëtoux Y. Dubromelle J-P.

Master Technologies numériques appliquées à l'histoire Deuxième année

4D Web 2.0 Pack DATA LIVES HERE. TM. Internet Riche et Solutions Mobiles en toute simplicité. 4D Ajax Framework 4D Ajax for Dreamweaver 4D for Flex

Je catalogue, tu FRBRises, il/elle googlise. L évolution des catalogues et les bibliothécaires Vendredi 29 mars 2013 Manufacture des tabacs

XML et recherche d information

1. Considérations sur le développement rapide d'application et les méthodes agiles

Sommaire. Introduction La technologie ebxml EDI conventionnels versus ebxml Web Services et ebxml Acteurs de l ebxml Conclusion

Transcription:

1 Philippe.Poulard@inria.fr Philippe Poulard

Mise en bouche Voici à quoi ressemble un document XML : <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE Cours SYSTEM "Cours.dtd"> <Cours> <Titre>Cours XML</Titre> <Auteur> <Nom>Poulard</Nom> <Prénom>Philippe</Prénom> </Auteur> <Description>Ce cours aborde les concepts de base mis en œuvre dans XML. </Description> </Cours> C'est presque comme du HTML! Sauf que : j'ai créé mes propres balises pour mes propres besoins je suis contraint par une syntaxe rigoureuse qui n'accepte pas les erreurs 2 Et que : ce document ne sait pas comment s'afficher dans un navigateur Mais que : je dispose d'une boîte à outil pour manipuler les informations de ce document

HTML et le Web client URL HTTP requête réponse serveur HTML 3 Le Web peut transmettre n'importe quel type de document HTML s'est imposé comme le "format natif" du Web HTML a contribué au succès du Web HTML n'est qu'un format de présentation XML est un format de structuration de l'information Rappels HTML Format ASCII-7 bits Une application SGML Simple Editable à la main Inclusion d'objets Liens hypertextes Structure documentaire <html> <head><title>cours XML</title></head> <body> <p><b>poulard</b> Philippe <p>ce cours aborde les concepts de base mis en œuvre dans XML. </body> </html> Certains mauvais choix de conception : h1, h2, h3, h4, h5, h6, br Syntaxe laxiste è lourdeur du code des navigateurs Appropriation par les éditeurs (Netscape, Microsoft) è compatibilité difficile

HTML et le Web : un concept simple Une application sur le poste utilisateur, le navigateur (Netscape, Internet Explorer) Un client chez lui Demande des documents à une machine distante, le serveur À une adresse (URL) http://www.inria.fr Via le protocole de transport HTTP Commande un meuble Chez ACME Par la poste Elle reçoit un document, en HTML (un "mode d'emploi") En kit, avec le mode d'emploi 4 Pour s'afficher sur l'écran grâce à des "balises" ou "tag" Exprimé dans un langage connu (le français) et qu'il peut interpréter avec ses outils (tournevis, marteau)

Balisage HTML Les balises décrivent l'effet "à peu près" souhaité Rendus différents selon les navigateurs Rendus contrôlés par les navigateurs Il y en a un nombre défini et fixe : on sait de quoi on parle Marquage inclus dans le texte (embedded text markup) Autres solutions 2 fichiers séparés foo <b>bar</b> bold: de 5 à 7 1234567 foo bar Fichier binaire foo n bar ou "foo " 27 3 "bar" Données auto-descriptives Descriptif (normal "foo ") (bold "bar") ou normal:foo bold:bar 5 Etc

Apparition des problèmes avec HTML Vocabulaire de balises fixes : les utilisateurs font du meccano pour exprimer ce qu'ils veulent Navigateurs : course aux tags balises hétéroclites center, blink, frames non-html : plug-in (flash, son ) De plus en plus d'information disponible en HTML qu'on essaye de retraiter pour en extraire les informations è ça casse dès que les sites changent leur code HTML Le Web en environnement professionnel, ce n'est plus du bricolage 6

1960 1986 1992 Chronologie GML : Généralized Markup Language, IBM SGML : Standard Generalized Markup Language, ISO 8879, 1986 Meta-langage (permet de définir des langages de balisage) Utilisation industrielles lourdes : catalogues, documentations techniques HTML : HyperText Makup Language, CERN (Tim Berners-Lee) Une application de SGML, base du Web Oct. 1994 Juin 1996 Fév. 1998 Sept. 1998 Création du W3C Groupe de travail "SGML-light" XML 1.0, recommandation du W3C Groupe de travail W3C XML divisé en 5 groupes Toutes les nouvelles normes seront en XML 1999-2000 Diversification des usages (web, database ), XML partout là où on ne l'attendait pas Augmentation de la complexité (toutes les normes prennent du retard) 7 2001 28 groupes de travail au W3C

Naissance de XML SGML Niche technologique La communauté SGML a peur de ne pas profiter de l'essor de HTML W3C Le Web est un mélange de présentation et de structure But commun : Re-aiguiller le Web vers un successeur de SGML: XML = SGML -- Groupe de travail constitué au sein du W3C par des gens de la communauté SGML Conception rapide et homogène XML, c'est SGML arrivé à maturité 8 XML n'est donc pas une techno JEUNE

utilisable simplement sur internet Critères de conception de XML internationalisation (ASCII + Unicode) applicable à un maximum de domaines compatible avec SGML facilité de traitement sans options (contrairement à SGML) document lisible par un humain spécification XML disponible rapidement spécification formelle et concise documents XML faciles à créer, même à la main ne cherche pas la concision du document Pas de codage binaire Se charge dans un bloc-note (les documents sont d'ailleurs très verbeux) 9 <Titre>Cours XML</> <Auteur> <Nom>Poulard</> <Prénom>Philippe</> </> et non! On aurait pu être plus concis

http://w3.org Le W3C World Wide Web Consortium Organisme à but non lucratif, 500 membres, 60 collaborateurs 3 centres : MIT (Boston, USA) INRIA (Sophia-Antipolis, France) Keio University (Keio, Japon) Ce qu'apporte le W3C : Arbitrage neutre (éditeurs de logiciel, utilisateurs) Expertise technique Processus de compromission Producteur de recommandations Producteur d'implémentations de référence (jigsaw, amaya ) 10 4 domaines : Architecture : XML, URL/URI, DOM, SOAP User interface : HTML, SVG, PNG, device independance, MathML, CSS, Multimedia (SMIL), VoiceML Technology & society : commerce électronique, confidentialité, web sémantique, XML encryption et signature WAI : Web Accessibility Initiative

Le W3C Cycle de production des standards au W3C Recommendation Proposed Recommendation Candidate Recommendation Last Call Working Draft Working Draft http://www.w3.org/tr 11

(liste non exhaustive!) Les organismes de normalisation (standardisation) W3C Standards XML World Wide Web Consortium http://w3.org ISO IETF Unicode IANA OASIS ECMA SGML RFCs Caractères Registres Catalogues SGML ECMAScript International Organization for Standardization http://www.iso.ch The Internet Engineering Task Force http://www.ietf.org/ http://www.unicode.org Internet Assigned Numbers Authority http://www.iana.org/ http://www.oasis-open.org/ European Computer Manufacturers Association http://www.ecma.ch 12

XML ne sait pas faire grand chose tout seul, à part servir pour les échanges definition Compagnons XML Standards complémentaires transformation et formattage XSLT XSLFO XPath DTD WXS namespace RelaxNG XML SAX StAX manipulation requête XQuery DOM XLink XPointer 13 liaison

14 XML DOM SAX XSL XLL Namespace XML Infoset Applications de présentation : XHTML WML XSLFO SVG SMIL Applications d'échange : SOAP UDDI XSLT XSLFO XLink XPointer DTD WXS Relax-NG XPath Des standards XML XForms XQuery Applications sectorielles : MathML CML DocBook Applications de description : RDF RSS WSDL

Exemple SVG <?xml version="1.0" encoding="utf-8"?> <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="300" height="200"> <title>exemple simple de figure SVG</title> <desc> Cette figure est constituée d'un rectangle, d'un segment de droite et d'un cercle. </desc> <!-- ceci est un commentaire--> <rect width="100" height="80" x="0" y="70" fill="green" /> <line x1="5" y1="5" x2="250" y2="95" stroke="red" /> <circle cx="90" cy="80" r="50" fill="blue" /> <text x="180" y="60"> Un texte </text> </svg> 15

Exemple MathML 16 <?xml version="1.0" encoding="utf-8"?> <math> <mrow> <mi>x</mi> <mo>=</mo> <mfrac> <mrow> <mrow> <mo>-</mo> <mi>b</mi> </mrow> <mo>&plusminus;</mo> <msqrt> <mrow> <msup> <mi>b</mi> <mn>2</mn> </msup> <mo>-</mo> <mrow> <mn>4</mn> <mo>&invisibletimes;</mo> <mi>a</mi> <mo>&invisibletimes;</mo> <mi>c</mi> </mrow> </mrow> </msqrt> </mrow> <mrow> <mn>2</mn> <mo>&invisibletimes;</mo> <mi>a</mi> </mrow> LaTeX x = \frac {-b \pm \sqrt{b^2-4ac}}{2a}

Exemple MusicML 17 <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE score-partwise PUBLIC "-//Recordare//DTD MusicXML 2.0 Partwise//EN" "http://www.musicxml.org/dtds/partwise.dtd"> <score-partwise version="2.0"> <part-list> <score-part id="p1"> <part-name>music</part-name> </score-part> </part-list> <part id="p1"> <measure number="1"> <attributes> <divisions>1</divisions> <key> <fifths>0</fifths> </key> <time> <beats>4</beats> <beat-type>4</beat-type> </time> <clef> <sign>g</sign> <line>2</line> </clef> </attributes> <note> <pitch> <step>c</step> <octave>4</octave> </pitch> <duration>4</duration> <type>whole</type> </note>

Que faire avec mon document XML? Affichage dans Internet Explorer è représentation arborescente du document (pas vraiment utile pour un utilisateur) Association d'une feuille de style à un document XML CSS (très rudimentaire) XSLT (beaucoup plus puissant) Les CSS (Cascading Style Sheets) Permet d'associer une présentation à chaque élément d'un document Problème CSS : s'applique seulement aux éléments dans l'ordre du document 18

de HTML à XML 19 <html> <head> <title>fable</title> </head> <body> <h1>le corbeau et le renard</h1> <p><i>jean De la Fontaine</i></p> <p>maître corbeau sur un arbre perché, tenait dans son bec un fromage.</p> / </body> </html> format de présentation HTML XML format de structuration sémantique <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE Fable SYSTEM "Fable.dtd"> <Fable> <Titre>Le corbeau et le renard</titre> <Auteur> <Nom>De la Fontaine</Nom> <Prénom>Jean</Prénom> </Auteur> <Contenu> <p>maître corbeau sur un arbre perché, tenait dans son bec un fromage.</p> / </Contenu> </Fable> XSLT

Document HTML jeu de balises fini et connu Document XML jeu de balises extensible, à priori non connu de HTML à XML structure orienté présentation exclusivement wysiwyg qui dépend du navigateur (!!) réutilisation limitée (par la quantité de documents HTML) cible : web exclusivement toutes structures (sémantique) données auto-descriptives pas de présentation intrinsèque possible : obligation de feuille de style exploitation sémantique possible, transformation de structure cible : Web, Wap, PDF, texte, autres échanges entre applications 20 écriture anarchique, pas de respect de charte graphique possible, temps perdu alloué à la présentation stockage : SGF rédaction de contenu exclusivement stockage : SGF, BdDR, natif (XND)

de SGML à XML XML est un sous-ensemble de SGML SGML déclaration application HTML SGML déclaration XML application XHTML SGML implémentation implémentation SGML : implémentations incomplètes et incompatibles XML implémentation Profils d'applications Exemple pour les feuilles de style : DSSSL, FOSI os CALS-B 21 XML : Déclaration fixe (syntaxe fixe) Infiniment plus simple à analyser (parser) que SGML