Académique Documents
Professionnel Documents
Culture Documents
XML 2
XML 2
Plan
Balisage textuel Un peu dhistoire XML - concepts de base Outils de la galaxie XML Exemples dapplications Conclusions
XML - Yves Bekkers - IFSIC 2
Balisage textuel
Photo-composition
le langage Nortext-100 de Norsk Data
<CC 15,5,12>On demande la police numro 5, en corps 12 et avec une justification de 15 units. <SS><QL> <CC 20,8>Maintenant. on prend la police 8 et une justification de 20 units. <QL> <RS>Et maintenant on repart avec les valeurs typographiques initiales.<EP>
XML - Yves Bekkers - IFSIC 7
Troff
Une commande Unix pour le formatage de texte
.\" @(#)troff.1 1.66 95/10/09 SMI; .TH troff 1 "6 Oct 1992" .SH NAME troff \- typeset or format documents .SH SYNOPSIS .B troff
10
HTML
(visualis par Mozilla)
12
PDF
(visualis par Acrobat)
13
Graphe SVG
(visualis par Mozilla + Adobe SVG-Viewer)
14
Question-rponse
Question
Quest ce qui relie ces trois exemples ?
Rponse
Documents structurs Les langages balises
15
Arbre - HTML
17
Netscape ou IExplorer
18
Arbre - format FO
20
Utilisation du format FO
Processeur FOP dApache pdf
Acrobat
21
Arbre SVG
23
24
25
Le problme :
tre en mesure de diffrencier la forme du fond au sein dun document La solution : les langages balise
XML - Yves Bekkers - IFSIC 26
svg
27
Un peu d'histoire
28
Par qui : Charles Goldfarb O : IBM, New York Pour qui : un consortium davocats Quand : 1969
XML - Yves Bekkers - IFSIC 29
GML : comment
Des documents contenant un mlange harmonieux :
dinformation et de mta-information de structure
Documents comprhensibles par les machines Documents textuels faciles mettre en uvre
ditables laide de nimporte quel diteur de texte
XML - Yves Bekkers - IFSIC 30
31
33
Naissance dHTML
Contexte : 1991, gnralisation des rseaux Problme : afficher en nimporte quel point dun rseau de linformation conserve de manire rpartie sur divers machines du rseaux Qui : Tim Berners-Lee, CERN
34
cache la structure logique liens hypertexte trop pauvres mta-donnes pas assez riches simple ==> compliqu
plus de 100 balises normalises, foisonnement des XML - Yves Bekkers - IFSIC 39 balises propritaires
Prendre HTML
liens hypertexte en les gnralisant notion de document multimdia La notion de mta-donnes en la gnralisant
XML - Yves Bekkers - IFSIC 41
Les dates
1969 naissance de GML -------------------------------GML SGML Tim Berners-Lee - CERN HTML Charles Goldfarb - IBM
1980 premier draft sur SGML -------------------------1986 norme ISO pour SGML 1991 naissance d'HTML et du premier navigateur ---1993 explosion du WEB 1996 constat de limites d'HTML 1997 norme HTML 4 par le WWW -----------------1998 publication de "XML, Java et le futur du WEB" ---1999 norme XHTML -------------------------------------
Arbre logique
45
Navigateur
XML - Yves Bekkers - IFSIC 46
Processeur XSLT
Navigateur
47
html
Xsl-FO
svg
XHTML
XHTML = HTML + XML
plus qu'un simple changement de syntaxe production automatique de table des matires production automatique de multiples versions combinaison avec d'autres documents (MathML, SVG, ...) modularit ( venir)
50
LATEX
SGML
HTML
XML SGBD
Systme d'information
URL
Adressage hypertexte
51
XML
eXtensible Markup Language
Concepts de base
52
Elment
Un nom + des attributs ventuels + un contenu <nom attr1="val1" > contenu </nom>
Yves Bekkers
</p>
<nom>Bekkers</nom>
</personne>
XML - Yves Bekkers - IFSIC 53
La forme + le fond
La forme
<p>
Le fond
Contenu dlment
Quatre
types de contenus
<p> Yves Bekkers </p> <body> <p></p> <p></p> </body> <p> enseigne <em>XML</em> au SEP de Rennes1 </p> <br></br>
XML - Yves Bekkers - IFSIC 55
Vide
Raccourci autoris
<br/>
56
au SEP de Rennes1
Attribut
Quoi : un nom + une valeur O : au sein de balise ouvrante dlment Signification : qualifie llment Exemple :
58
Attribut (bis)
Exemple dlment : <fo:inline font-style="italic"> XML </fo:inline>
fo:inline
et son arbre :
XML
@font-style italic
59
60
61
Est interdit Rgle : Toute balise ouvrante doit avoir sa balise fermante <br> sans </br> est interdit en XML
XML - Yves Bekkers - IFSIC 63
67
68
Attribut
Rgle : Un attribut pour un lment donn ne peut avoir quune seule valeur Exemple <a href="val1" href="val2"> ... </a>
est interdit
XML - Yves Bekkers - IFSIC 69
Composants complmentaires
Entits (macro)
dclaration <!ENTITY lp "lambdaProlog"> rfrence &lp;
Commentaires
<!-- ceci est un commentaire -->
Instructions de traitement
<?nom arg1 arg2 ... argn ?>
70
71
Rsum
Un document XML est compos de
lments
Texte Autres lments Mixte (texte + lments) Vide
Exemple complet
<?xml version="1.0" encoding="ISO-8859-1"?> <!-- ceci est un document XML --> <?xml-stylesheet type="text/css" href="prog.css"?> <programme id="p1"> <!- Instruction conditionnelle --> <instruction> <test><![CDATA[x < 2]]></test> <instruction>x = x +1</instruction> <instruction> </programme>
Attention
La premire ligne ne fait pas partie du document, elle est consomme au moment de la lecture du document par les applications
XML - Yves Bekkers - IFSIC 73
Codage
74
Codage
Deux niveaux de codage
codage externe : dpendant des outils de saisie codage interne : Unicode
Ascii, UTF8, IsoLatin-1, ... Unicode
Unicode
Codage sur 16 bits (au dbut) 21 bit actuellement Ambitieux : toutes les langues de la terre Unification : liminer les redondances Spare la dfinition du jeu de caractres (la liste des caractres, leur nom et leur index) de celle de l'encodage
on ne peut donc pas parler de la taille d'un caractre Unicode (dpend de l'encodage choisi )
Convertibilit
Ascii dans le bas du tableau
Composition de caractres
Unicode ne code pas les descriptions des caractres, les glyphes c'est--dire la reprsentation graphique du caractre. ainsi, le caractre franais peut-il tre dcrit de deux manires :
en utilisant directement le numro correspondant au , en faisant suivre le numro du 'e' par celui de l'accent aigu sans chasse. Quelle que soit l'option choisie le mme glyphe sera affich. On dira du premier caractre qu'il est prcompos, du second que c'est une composition (deux caractres forment un seul glyphe compos des deux).
De nombreux glyphes peuvent tre cods de ces deux manires. Le plus souvent, le glyphe prcompos est prfrable
XML - Yves Bekkers - IFSIC 77
Partionnement
0000..007F; Latin de base 0080..00FF; Supplment Latin-1 ... 0370..03FF; Grec et copte 0400..04FF; Cyrillique 0500..052F; Supplment cyrillique 0530..058F; Armnien 0590..05FF; Hbreu 0600..06FF; Arabe ... 1780..17FF; Khmer 1800..18AF; Mongol ... 10100..1013F; Nombres gens ... 1D000..1D0FF; Symboles musicaux byzantins 1D100..1D1FF; Symboles musicaux occidentaux ... XML - Yves Bekkers - IFSIC
78
Codage externe
Dpend de loutil utilis pour la saisie du document et du systme qui le supporte :
Word sous windows Emacs sous linux
79
Latin 1 (ISO-8859-1)
Codage 8 bits (28 = 256 caractres), les 128 premiers caractres sont ceux dAscii (manque le )
Latin 9 (ISO-8859-15)
Codage 8 bits (28 = 256 caractres), lgre modification de Latin 1 apparition de : , , et
XML - Yves Bekkers - IFSIC 80
UTF32 Le chiffre aprs UTF reprsente le nombre minimal de bits avec lequel un caractre est cod.
XML - Yves Bekkers - IFSIC 81
UTF16
82
Caractre
Caractres spciaux
Cinq entits prdfinies
Rfrence
& < > ' "
"
double quote
85
Gnricit d'XML
XML comme SGML nest pas un langage
cest un cadre pour dfinir des langages
Exemple de DTD
<!ELEMENT carteDeVisite (prnom, nom, organisme, adresse)> <!ELEMENT prnom (#PCDATA) > <!ELEMENT nom (#PCDATA) > <!ELEMENT organisme (#PCDATA) > <!ELEMENT adresse (numro, voie, ville)> <!ELEMENT numro (#PCDATA) > <!ELEMENT voie (#PCDATA) > <!ATTLIST voie type (rue | avenue | impasse | cours | square | boulevard | chemin | quai | route | passage | place | rondPoint ) 'rue' > <!ELEMENT ville (#PCDATA) > <!ATTLIST ville codepostal CDATA #IMPLIED >
XML - Yves Bekkers - IFSIC 87
Dclaration de DTD
Dans le prologue du document Dclaration interne
<!DOCTYPE carteDeVisite [ ... dclarations ... ]>
Dclaration mixte
<!DOCTYPE carteDeVisite SYSTEM "maDTD.dtd" [ ... dclarations ... ]>
XML - Yves Bekkers - IFSIC 88
Validation de document
DTD
XML
Bien form
90
Structurer en graphe
91
Liens internes
MyPath
Lien
<path id="MyPath" d="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"/> <use xlink:href="#MyPath fill="none" stroke="red"/>
XML - Yves Bekkers - IFSIC 92
La galaxie XML
94
Interrogation de documents
XML Query RDF
Dfinition de documents
DTD
XLINK
XPointer
Analyseur DOM
Analyseur SAX
96
Visualisation de documents
Exemple : visualiser un carnet d'adresses
Le document carnetDAdresse.xml
Deux possibilits
Appliquer une feuille de style CSS au document XML
Appliquer
Transformation XSL
XSL (eXtensible Stylesheet Language) Le langage Perl dXML Trois parties
Xpath : langage pour adresser les nuds dun arbre XSLT : langage de transformation XSL-FO : langage de formatage
XML - Yves Bekkers - IFSIC 99
+
XML Documents
XSL-FO
imprimante
100
+
XML Documents Feuille de style 2
imprimante
+ XSL
HTML cran
101
103
Utilisation de prfixe
<M:mfrac>
XML - Yves Bekkers - IFSIC 104
Mta-donnes
Des donnes propos des donnes, pour dcrire l'information RDF : Resource Description Framework Lisible lil, comprhensible par les machines Norme gnrique : proprits (ou relations) dfinir pour chaque domaine d'application Applications : cartes de site, tiquetage, recherche d'information, bibliothques lectroniques, dition cooprative, proprit intellectuelle, commerce lectronique, etc.
XML - Yves Bekkers - IFSIC 105
Exemples dapplication
SVG Graphiques structurs, vectoriss SMIL Synchronisation de documents multimdia MathML Manipulation de formules mathmatiques XUL Le langage dinterface de Mozilla exemples.html
XML - Yves Bekkers - IFSIC 106
Editeurs
Conception d'applications
Emacs avec mode sgml XML spy (trs cher, Windows uniquement) Eclipse avec le plugin XMLBuddy, Bocaloco Software Eclipse WTP Amaya (XML, mathML, SVG, XHTML)
Exploitation :
diteurs graphiques qui masquent le code Exemples : White all, Xmetal, XML spy
107
Conclusions
108
Quest ce quXML
XML est une mthode pour conserver des donnes structures dans des fichiers texte XML est une technologie (famille de norme, doutils, espace ouvert pour dfinir des dialectes propritaires) XML ressemble HML mais ne remplace pas HTML XML ressemble aux SGBD mais ne remplace pas un SGBD XML est un texte (pas toujours fait pour un humain) XML est bavard (mais cela nest pas un problme) XML nest pas si nouveau que a
XML - Yves Bekkers - IFSIC 109
A propos de vocabulaire
Les mots document et feuille de style sont hrits de l'dition
GML tait un projet d'dition HTML est un langage d'dition
XML Arbre DTD - XML Schma Instance de document Attribut ID Attribut IDREF XSLT
111
SGBD-XML-HTML
SGBD, XML, HTML ne sont pas des technologies concurrentes
Elles sont complmentaires
Xml en aval SGBD des SGBD Xml en amont de HTML HTML
XML
112
archivage :
fichiers de configuration information au faible dynamisme (annuaires)
gestion de la connaissance
XML - Yves Bekkers - IFSIC 113
Apport dXML
Gains qualitatifs
robustesse :
force labstraction un unique niveau dabstraction
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
XML - Yves Bekkers - IFSIC 114
Quelques rfrences
Le site XML du W3C
http://www.w3.org/XML/
Un glossaire XML
http://www.xmlstarterkit.com/xmlzone/glossary.htm
115
116