Introduction à XML Yves Bekkers. Plan Introduction - structurer l’information Les langages à balises - un peu d’histoire XML - concepts de base Outils.

Slides:



Advertisements
Présentations similaires
Données structurées et XML
Advertisements

Transformation de documents XML
DTD Sylvain Salvati
Internet : serveurs Web
Données structurées et XML
XHTML EXtensible HyperText Markup Language. HTML et XML HTML (HyperText Markup Language) et XML (eXtensible Markup Language) sont deux spécifications.
SVG: Scalable Vector Graphics. Dialecte dXML pour la représentation de graphique vectoriel 2D Tracés de base en vectoriel (courbes, lignes, rectangles,…)
Domaines nominaux XSLT
Nicolas Singer Maître de conférence, université Champollion
XML Un format d'échange et un langage de présentation des données associé au HTML.
Liens Hypertextes et Langage HTML
Introduction et Concepts : De SGML à XML
Adamou Mahamane Sidi Maman Bachir
Web traditionnel
XML eXtensible Markup Language
Langage de structuration des données: XML
UNIVERSITE CHOUAIB DOUKKALI Département des mathématiques
HTML.
Web Structurel
Introduction à la structuration des documents: les techniques M2: Gestion des connaissances.
Atelier « Créations de sites » : Les techniques de réalisation de sites EPN :...
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.
Une chaîne éditoriale développée dans le cadre du CIRM François Dagorn Journées pédagogiques de lIFSIC.
Xpath XML Path language par Yves Bekkers
XSLT Langage de transformation darbre par Yves Bekkers.
XML : concours d’acronymes ou futur standard ?
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.
Échéancier # E) Bilan réflexif /rapport individuel (cours # 15 individuel disponible sur le site section travaux (Attention : rédiger votre travail.
Jonathan Montois Cyrille Kriegel
Les feuilles de style CSS
1 Programmation Web II 2 ème année Licence Appliquée IAG Faculté des Sciences Economiques et de Gestion de Nableul Université 7 novembre à Carthage Années.
Le langage XHTML 420-S4W-GG Programmation Web Client
PROGRAMMATION WEB FRONT-END.
LANGAGE HTML Le HTML (Hyper Text Markup Langage) est un langage universel utilisé sur le World Wide Web. Le HTML permet de : * Publier des documents sur.
Le langage XML.
Représentation des connaissances et échanges d’information Working with XML
L’ ACCESSIBILITE « C’est mettre le Web et ses services à la disposition de tous les individus, quels que soient leur matériel ou logiciel, leur infrastructure.
Internet : serveurs Web  Clients et serveurs : le navigateur  Sites Web et urls  Fichier source d’une page  Langage HTML 1.
Programmation Web : Introduction à XML
Technologies web et web sémantique TP3 - XML. XML eXtensible Markup Language (langage extensible de balisage) – Caractéristiques: méta-langage = un langage.
Copyright © 2005 Yves MARCOUX1 Concepts XML de base Yves MARCOUX EBSI - Université de Montréal.
XHTML les fondamentaux M.DIENG Abdoulaye DTS 1 Réseaux & Données.
2006 XED, le système d’édition XML de SCENARI Sylvain Spinelli.
S'initier au HTML et aux feuilles de style CSS Cours 5.
SMIL Synchronized Multimedia Integration Language
Développement d’Application Web.  L’internet=WWW  Vrai  Faux  C’est quoi Web2.0  Quel intérêt d’un navigateur.
Campus-Booster ID : **XXXXX Copyright © SUPINFO. All rights reserved Le développement Web.
SI 28 - Écriture interactive & multimédia Dreamweaver Séance 1 Petit Clara & Palfart Julien Printemps2008 Printemps 2008.
Soutenance du mémoire de synthèse
Module : Langage XML (21h)
eXtensible Markup Language. Généralités sur le XML.
Introduction à MathML Par Katia Larrivée UQO Le 18 mars 2004.
Introduction à SVG Scalable Vector Graphic. Informations ● Plus d'informations ici (draft, tutoriaux, outils... ): –
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 :
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.
Dreamweaver Séance 1.
Présentation Dreamweaver 8 (1) Nina BOUAZIZ et Matthieu DI RUSSO SI28.
DREAMWEAVER SEANCE 1 Axel JACQUET GM05 – Julien VAN MOORLEGHEM GM05 A2008 Écriture interactive & multimédia Présentation Dreamweaver 8.
Introduction au HTML Qu’est ce que le HTML ?
CPI/BTS 2 Programmation Web Introduction au HTML Prog Web CPI/BTS2 – M. Dravet – 18/09/2003 Dernière modification: 18/09/2003.
INF2005– Programmation web– A. Obaid Variantes de HTML.
1 er séance SI28 A2004 YIN Lei Emmanuel Eugene. Plan de l’exposé  Introduction au HTML  Le HTML dans le bloc-notes (notepad)  Présentation de Dreamweaver.
Extensions à la spécification XML Le "plus petit cercle" XML Yves Bekkers Mise à jour : 9 octobre 2003.
DTD - Y. Bekkers - IFSIC1 DTD Document Type Definition Yves Bekkers Mise à jour : 31 mai 2016.
XML - Yves Bekkers - IFSIC1 Introduction à XML Par Yves Bekkers Mise à jour : 31 mai 2016.
Préparé par : Marouane FELJA
Hayri ACAR - Université Claude Bernard Lyon 1 Langages à balises 1 Hayri ACAR, Université Lyon 1 Basé sur les cours de Yannick Prié.
SMIL - Yves bekkers - IFSIC1 SMIL Synchronized Multimedia Integration Language par Yves Bekkers.
1 Programmation Web Programmation WAMP/LAMP Premiers principes.
Transcription de la présentation:

Introduction à XML Yves Bekkers

Plan Introduction - structurer l’information Les langages à balises - un peu d’histoire XML - concepts de base Outils de la galaxie XML Exemples d’applications Conclusions

Introduction Structurer l’information

Un exemple d’information Une carte de visite Yves Bekkers IFSIC 42 avenue général Leclerc Rennes Enseigne XML au SEP de Rennes 1

HTML (visualisé par Mozilla)

PDF (visualisé par Acrobat)

Graphe SVG (visualisé par Mozilla + Adobe SVG-Viewer)

Question « Qu’est ce qui relie ces trois exemples ? »

« Documents structurés » « Les langages à balises » Réponse

Carte de visite en html Carte de visite Yves Bekkers IFSIC 42 avenue général Leclerc Rennes Enseigne XML au SEP de Rennes 1

Arbre - HTML

Utilisation du format HTML Netscape ou IExplorer

Format imprimable Xsl-FO <fo:simple-page-master master-name="first" margin-left="2cm" margin-right="2cm" margin-bottom="0.5cm" margin-top="0.75cm"> Yves Bekkers IFSIC 42 avenue Général Leclerc Rennes Enseigne XML au SEP de Rennes 1

Arbre - format FO

Utilisation du format FO Acrobat Processeur FOP d’Apache pdf

Carte de Visite graphique en SVG <path id="MyPath" d="M C C C "/> Yves Bekkers, IFSIC, 42 avenue Général Leclerc, Rennes, Enseigne XML au SEP de Rennes 1

Arbre SVG

Utilisation du format SVG Netscape ou Iexplorer + Adobe viewer

Une même information trois structures

A propos de ces trois exemples Quatre outils –Netscape –IExplorer –Processeur FOP d’Apache –Adobe SVG viewer Le problème : –être en mesure de différencier la forme du fond au sein d’un document La solution : les langages à balise

Trois langages à balises trois dialectes xml xhtml Xsl-FO svg

Les langages à balise Un peu d’histoire

GML le premier langage à balise Quoi : un système d’information documentaire pour conserver, accéder, mettre à jour des informations juridiques Par qui : Charles Goldfarb Où : IBM, New York Pour qui : un consortium d’avocats Quand : 1969

GML : comment Des documents contenant un mélange harmonieux : –d’information et –de méta-information de structure Documents compréhensibles par les machines Documents textuels faciles à mettre en œuvre –éditables à l’aide de n’importe quel éditeur de texte

GML : comment (bis) Comme les bases de données –On peut rechercher l’information par son contenu –On peut étiqueter l’information par « identificateur unique »

GML un énorme succès La mise en oeuvre est générique, elle s’applique à d’autres types de documents –Exemple : documenter un porte avion pour le DOD … 1986 norme ISO (ISO 8879) pour Standard GML (SGML)

Naissance d’HTML Contexte : 1991, généralisation des réseaux Problème : afficher en n’importe quel point d’un réseau de l’information conservée de manière répartie sur divers machines du réseaux Qui : Tim Berners-Lee, CERN

Solution au problème de « publication » sur réseau (1) Contexte : déjà 15 ans d'expérience SGML On conçoit un dialecte de SGML pour décrire dans un même document l’information et son mode de présentation La simplicité du langage garantit qu’on peut réaliser rapidement sur toute machine des processeurs de présentation des documents : naissance des « navigateurs »

Solution au problème de « publication » sur réseau (2) Contexte : SGML ne prend pas en compte la dimension réseau Solution : On étend le dialecte SGML par un système d’adressage universel des documents à travers les réseaux –naissance des « liens hypertexte » ou « URLs »

Solution au problème de « publication » sur réseau (3) Contexte : De nouveaux types de documents tels que des images et du son, ont fait leur apparition. Solution : On étend les possibilités d’affichage des navigateurs –naissance du « multimédia »

HTML - les avantages Un langage à balise issu de SGML permettant de transporter en même temps l’information et la méta-information qui décrit sa présentation Accès réparti sur le réseau grâce aux liens hypertexte Extension de la notion d’affiche à d’autres documents que les textes, introduction du multimédia

HTML un énorme succès mais... Succés repris par Le World Wide Web Consortium (W3C) structuration limitée –liée à l'édition sur écran cache la structure logique liens hypertexte trop pauvres méta-données pas assez riches simple ==> compliqué –plus de 100 balises normalisées, foisonnement des balises propriétaires

Réflexions issues de l’expérience HTML Le World Wide Web Consortium (W3C) Créer en 1996 d'un groupe de réflexion sur SGML et HTML Idée : recherche d’un schéma général de langage pour la structuration de l'information et sa communication sur le WEB Intérêt : mise en commun des efforts –par des outils –par des normes complémentaires

Conclusions du groupe de Travail Résultats donnés en 1998 Prendre à SGML –sa simplicité –l'accessibilité à l'information –la généricité (pas de balise prédéfinie) Prendre à HTML –liens hypertexte en les généralisant –notion de document multimédia

HTML versus XML HTML publication hypertexte sur écran XML généricité + échange de données –pas de balises normalisées, l'auteur crée ses propres balises –balisages plus strict pour simplifier le traitement des documents –la casse des caractères dans les noms d'éléments est significative –Structurer l’information selon sa propre logique

Carte de visite logique Yves Bekkers IFSIC 42 Général Leclerc Rennes Enseigne XML au SEP de Rennes 1

Arbre logique

Le prix d’un arbre logique (1) Navigateur ?

Le prix d’un arbre logique (2) Navigateur Processeur XSLT Prog. Feuille de style

Intérêt d’un arbre logique html Xsl-FO svg

Les dates

XHTML XHTML = HTML + XML –plus qu'un simple changement de syntaxe –production automatique de table des matières –production automatique de multiples versions –combinaison avec d'autres documents (MathML, SVG,...) –modularité (à venir) éditer du xhtml : Amaya produire du xhtml avec du html : Tidy

XML eXtensible Markup Language Concepts de base

Un « nom » + un « contenu » + des « attributs » éventuels Exemple : Yves Bekkers Nom : p Balise Ouvrante : Balise fermante : Contenu : Yves Bekkers Elément

La forme + le fond La forme Le fond A l’image des SGBD, un document XML contient le texte et son référent

Contenu d’élément

Construire des arbres P enseigneemau SEP de Rennes1 XML

Syntaxe des noms d’élément (exemples) –nom –prénom –à-la-ligne –xsl:value-of –n123 –décompte.client –first_name

Syntaxe des noms d’éléments (bis)

Syntaxe des noms d’éléments (ter) Les majuscules et les minuscules sont différenciées (plus stricte qu’HTML)

Attribut Quoi : un nom + une valeur Où : au sein de balise ouvrante d’élément Signification : qualifie l’élément Exemple : XML Nom d’attribut Valeur d’attribut Nom d’élément

Exemple d’élément : XML et son arbre : Attribut (bis) italic

Attribut (ter) Attention : Un attribut pour un élément donné ne peut avoir qu’une seule valeur Exemple... est interdit …

Notation des valeurs d’attributs Les valeurs d’attribut doivent être encadrées par des doubles cotes " ou des simples cotes ‘ mais est interdit (plus stricte qu’HTML)

Contenu vide Exemple : Raccourci équivalent

Document bien formé Attention : sans est interdit en XML :

Document bien formé (bis) est bien formé n’est pas bien formé : il ne représente pas un arbre !

Notion de lien et d’identification unique des éléments : id <path id="MyPath" d="M C C C "/> … <use xlink:href="#MyPath » fill="none" stroke="red"/>

Autres facilités des macro (entités) –déclaration –référence &lp; des commentaires (information non lue) – des instructions pour des applications – des sections littérales – Hénaff Paul]]>

Codage Deux niveaux de codage –codage externe : dépendant de l’utilisateur –codage interne : Unicode S'adapte à toutes les langues Détection semi automatique du type de codage externe –s'aide du premier caractère de la première ligne : "<"

Codage externe Codage sur 8 ou 16 bits : –UTF8 codage sur une séquence d'octets de longueur variable (ASCII sur un seul caractère) –UTF16 si le premier caractère est #xFEFF –Codage spécifique à une langue : encoding="ISO " ISO-Latin sur 16 bits (les 128 premiers caractères sont l'ASCII)

Structure d’un document XML Un Prologue Un élément racine (et un seul) –arbre d'éléments et leurs attributs Des Commentaires Des instructions de traitement

Yves Bekkers 42 général Leclerc Rennes Enseigne XML au SEP de Rennes 1 Prologue Élément racine

Notion de type de document XML comme SGML n’est pas un langage –c’est un cadre pour définir des langages Chaque application définit son (ses) type(s) de document DTD : grammaire définissant un type de document

<!ATTLIST voie type (rue | avenue | impasse | cours | square | boulevard | chemin | quai | route | passage | place | rondPoint ) 'rue' > Exemple de DTD

Usage d’une DTD

Outils de la galaxie XML

Editeurs Conception d'applications –éditeurs "programmeur" : Emacs avec modes –éditeurs "arbres" : XML spy, XML notePad Exploitation : –éditeurs graphiques qui masquent le code –Exemples : White all, Xmetal, XML spy Near & Far Designer (une curiosité) –dédié à la conception de DTD

Galaxie des normes par catégories

Transformation de documents XSL (Xml Stylesheet Language) Le langage « Perl » d’XML Trois parties –Xpath : langage pour adresser les nœuds d’un arbre –XSLT : langage de transformation –XSL-FO : langage de formatage

XML NameSpace « Espaces de noms » Objectif : faire cohabiter au sein d’un même document des éléments appartenant à des dialectes différents Comment : Mise en place d’un mécanisme de préfixes de nom –Déclaration de préfixe au sein d’une balise ouvrante –Utilisation de préfixe

Méta-données Des données à propos des données, pour décrire l'information RDF : Resource Description Framework Lisible à l’œil, compréhensible par les machines Norme générique : propriétés (ou relations) à définir pour chaque domaine d'application Applications : cartes de site, étiquetage, recherche d'information, bibliothèques électroniques, édition coopérative, propriété intellectuelle, commerce électronique, etc.

Exemples d’applications

SVG Graphiques structurés, vectorisés SMIL Synchronisation de documents multimédia MathML Manipulation de formules mathématiques XUL Le langage d’interface de Mozilla

Conclusions

A propos de vocabulaire Les mots document et feuille de style sont hérités de l'édition –GML était un projet d'édition –HTML est un langage d'édition Les mots sont trompeurs –XML est un système d'information plus qu'un système d'édition –On peut interroger un document par son contenu, le transformer

Similitude avec les SGBD

Applications XML diffusion de contenu sur le web –complément à HTML, à CSS, aux SGBD … échange entre applications distribuées –EDI, Ebisness, … archivage : –fichiers de configuration –information au faible dynamisme (annuaires) gestion de la connaissance

Conclusion Gains qualitatifs –robustesse : force à l’abstraction un unique niveau d’abstraction –partage des efforts : mutualisation des outils –technologie ouverte : qui va traverser le temps –simplicité : texte éditable Gains quantitatifs –mise en œuvre rapide car elle est directe