Académique Documents
Professionnel Documents
Culture Documents
XML PDF
XML PDF
Introduction XML
Par Yves Bekkers
Mise jour : 4 dcembre 2006
Balisage textuel
Un peu dhistoire
XML - concepts de base
Outils de la galaxie XML
Exemples dapplications
Conclusions
XML - Yves Bekkers - IFSIC
Balisage textuel
Photocomposition
Unix : troff, Latex
GML - SGML
Photo-composition
Troff
Une commande Unix pour le formatage de texte
Balisage de documents
numriques pour le WEB
Exemples
10
HTML
11
12
Graphe SVG
13
14
Question-rponse
<html>
<head><title>Carte de visite</title></head>
<body>
<p>Yves Bekkers</p>
<p>IFSIC</p>
<p>42 avenue gnral Leclerc</p>
<p>35042 Rennes</p>
<p>Enseigne <em>XML</em>
au SEP de Rennes 1</p>
</body>
</html>
Question
Quest ce qui relie ces trois exemples ?
Rponse
Documents structurs
Les langages balises
15
16
Arbre - HTML
Netscape
ou
IExplorer
17
18
Utilisation du format FO
20
Processeur FOP
dApache
pdf
Acrobat
Arbre - format FO
21
Arbre SVG
Netscape
ou
Iexplorer
+
Adobe viewer
23
24
Le problme :
tre en mesure de diffrencier la forme du fond
au sein dun document
La solution : les langages balise
XML - Yves Bekkers - IFSIC
25
26
Un peu d'histoire
Xsl-FO
svg
27
GML
premire normalisation du balisage
une application ddition de texte,
une application de composition
une base pour linterrogation documentaire.
GML : comment
dinformation et
de mta-information de structure
28
30
:h1.Chapter 1: Introduction
:p.GML supported hierarchical containers, such as
:ol.
:li.Ordered lists (like this one),
:li.Unordered lists, and
:li.Definition lists
:eol.
as well as simple structures.
:p.Markup minimization (later generalized and
formalized in SGML),
allowed the end-tags to be omitted for the "h1" and
"p" elements.
31
32
Naissance dHTML
33
Solution au problme de
publication sur rseau (1)
Contexte : dj 15 ans d'exprience SGML
On conoit un dialecte de SGML pour dcrire
dans un mme document linformation et son
mode de prsentation
La simplicit du langage garantit quon peut
raliser rapidement sur toute machine des
processeurs de prsentation des documents :
naissance des XML
navigateurs
- Yves Bekkers - IFSIC
35
34
Solution au problme de
publication sur rseau (2)
Contexte : SGML ne prend pas en compte la
dimension rseau
Solution : On tend le dialecte SGML par un
systme dadressage universel des documents
travers les rseaux
naissance des liens hypertexte ou URLs
XML - Yves Bekkers - IFSIC
36
Solution au problme de
publication sur rseau (3)
37
40
sa simplicit
l'accessibilit l'information
la gnricit (pas de balise prdfinie)
Prendre HTML
liens hypertexte en les gnralisant
notion de document multimdia
La notion de mta-donnes en la gnralisant
XML - Yves Bekkers - IFSIC
41
42
GML
SGML
HTML
HTML4
1997 norme HTML 4 par le WWW -----------------1998 publication de "XML, Java et le futur du WEB" ----
XML
XHTML
43
Arbre logique
<carteDeVisite>
<prnom>Yves</prnom>
<nom>Bekkers</nom>
<organisme>IFSIC</organisme>
<adresse>
<numro>42</numro>
<voie type="avenue">Gnral Leclerc</voie>
<ville codepostal="35042">Rennes</ville>
</adresse>
<note>
Enseigne <cl>XML</cl> au SEP de Rennes 1
</note>
XML - Yves Bekkers - IFSIC
44
</carteDeVisite>
Navigateur
XML - Yves Bekkers - IFSIC
45
46
Feuille de
style
Processeur
XSLT
html
Navigateur
Xsl-FO
svg
48
XHTML
<body>
<p><b>Titre</b> : XSLT : Programmer's Reference</p>
<p><b>Auteur</b> : Michael Kay</p>
<p><b>Pages</b> : 392</p>
<p><b>Editeur</b> : Wrox</p>
<p><b>Srie</b> : Programmer to Programmer</p>
</body>
49
<livre>
<titre>XSLT : Programmer's Reference</titre>
<auteur>Michael Kay</auteur>
<pages>392</pages>
<editeur>Wrox</editeur>
<serie>Programmer to Programmer</serie>
</livre>
XML - Yves Bekkers - IFSIC
50
Publication
LATEX
HTML
SGML
XML
SGBD
Concepts de base
Systme
d'information
URL
Adressage
hypertexte
51
Elment
52
La forme + le fond
La forme
Balise d'ouverture
<p>
Le fond
Yves Bekkers
Contenu
2 Exemples :
<p>
Balise de fermeture
</p>
<personne>
<prnom>Yves</prnom>
Yves Bekkers
</p>
<nom>Bekkers</nom>
</personne>
XML - Yves Bekkers - IFSIC
53
54
Contenu dlment
Quatre
types de contenus
Texte
Elments
Contenu mixte
Vide
<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
<br></br>
Raccourci autoris
<br/>
55
Attribut
<p>
enseigne
<em>XML</em>
au SEP de Rennes1
</p>
em
<fo:inline font-style="italic">
XML
</fo:inline>
P
enseigne
56
au SEP de Rennes1
XML
XML - Yves Bekkers - IFSIC
57
58
Attribut (bis)
Exemple dlment :
<fo:inline font-style="italic">
XML
</fo:inline>
fo:inline
et son arbre :
XML
@font-style
italic
59
60
10
Un Prologue (ventuellement)
Un lment racine (et un seul)
arbre d'lments et leurs attributs
Des Commentaires
Des instructions de traitement
61
62
<?xml version="1.0"?>
<livre>XLST Programmer's reference</livre>
<livre>XML et Java</livre>
Est interdit
<a><b></a></b>
Rgle : Toute balise ouvrante doit avoir sa balise
fermante
<br> sans </br> est interdit en XML
XML - Yves Bekkers - IFSIC
nom
prnom
-la-ligne
xsl:value-of
n123
dcompte.client
first_name
XML - Yves Bekkers - IFSIC
64
65
Name
NameChar
Digit
::= 0 | 1 | | 9
Letter
66
11
mais
<a href=monFichier></a>
est interdit (plus stricte quHTML)
67
Attribut
68
Composants complmentaires
Entits (macro)
Commentaires
<!-- ceci est un commentaire -->
Instructions de traitement
<?nom arg1 arg2 ... argn ?>
est interdit
69
70
Rsum
Instructions de traitement
Exemples
71
Texte
Autres lments
Mixte (texte + lments)
Vide
Commentaires
Instructions de traitement
Sections littrales
XML - Yves Bekkers - IFSIC
72
12
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>
Codage
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
Unicode
Codage
74
Unicode
75
76
Partionnement
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).
caractres composites
Convertibilit
77
78
13
Latin 1 (ISO-8859-1)
Codage 8 bits (27 = 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
79
UTF
Unicode Transformation Format
Glyphe (il)
Code Unicode
Latin 9
UTF8 (3 octets)
UTF16
UTF32
Le chiffre aprs UTF reprsente le nombre minimal de bits
avec lequel un caractre est cod.
XML - Yves Bekkers - IFSIC
81
î
∀
En hexadcimal
Œ
©
82
En dcimal
20AC
A4
11100010
10000010
10101100
20AC
Caractres spciaux
Rfrence
80
Rfrence
Glyphe
Nom
Caractre
&
&
ampersand
<
<
>
plus petit
plus grand
>
'
'
apostrophe
"
"
double quote
84
14
Gnricit d'XML
XML comme SGML nest pas un langage
cest un cadre pour dfinir des langages
Information
Dfinition de schma
Instance de table
Programmation objet
Dfinition de classe
Instance de classe
XML
DTD, XMLShema
Document XML
85
86
Dclaration de DTD
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
Mta donnes
SGBDR
Dclaration mixte
<!DOCTYPE carteDeVisite SYSTEM "maDTD.dtd" [
... dclarations ...
]>
87
88
Exemple
dclaration pour un document SVG 1.0
<!DOCTYPE svg PUBLIC
"-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG20010904/DTD/svg10.dtd">
DTD
XML
Analyse
syntaxique
niveau 1
Bien
form
Analyse
syntaxique
niveau 2
Valide
selon une
DTD
89
90
15
Liens internes
MyPath
Structurer en graphe
Lien
<use xlink:href="#MyPath
fill="none" stroke="red"/>
XML - Yves Bekkers - IFSIC
91
92
La galaxie XML
93
94
Formatage
Transformation
de documents
XSL
=
XSLT
+
XSLFO
XML
Query
Dfinition de
documents
RDF
DTD
CSS
Documents
XML
XML Schema
XML
Namespace
XPATH
XLINK
XPointer
Analyseur
DOM
Analyseur
SAX
Manipulation de documents
par programme
95
96
16
Deux possibilits
prnom,organisme,note {
text-align: left; margin-top: 12.000000pt;
margin-bottom: 6.000000pt;
font-size: 12.000000pt; font-weight: medium;
font-style: Regular; color: #000000;
font-family: "Times New Roman";
}
Appliquer
97
Transformation XSL
XSL (eXtensible Stylesheet Language)
Le langage Perl dXML
Trois parties
XSL
Feuille de style
XSL-FO
99
imprimante
HTML
cran
Feuille de style 2
XSL
100
XML
Documents
imprimante
XML
XSL
+
XSL-FO
Documents
98
101
102
17
XML NameSpace
Espaces de noms
Objectif : faire cohabiter au sein dun mme
document des lments appartenant des
dialectes diffrents
Comment : Mise en place dun mcanisme de
prfixes de nom
Dclaration de prfixe au sein dune balise ouvrante
<p xmlns:M='http://www.w3.org/RECMathML'>
Utilisation de prfixe
<M:mfrac>
XML - Yves Bekkers - IFSIC
103
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
104
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
Conclusions
Exploitation :
diteurs graphiques qui masquent le code
Exemples : White all, Xmetal, XML spy
107
108
18
Quest ce quXML
A propos de vocabulaire
109
110
SGBD-XML-HTML
Structure
SGBDR
Relation (table)
XML
Arbre
Mta
information
Langage de
dfinition
Information
Contrainte
d'unicit
Contenu de table
Cl primaire
Instance de document
Attribut ID
Intgrit de
rfrence
Cl trangre
Attribut IDREF
Langage de
manipulation
SQL
des SGBD
XML
Xml en amont
de HTML
HTML
XSLT
111
112
Apport dXML
Gains qualitatifs
robustesse :
force labstraction
un unique niveau dabstraction
archivage :
fichiers de configuration
information au faible dynamisme (annuaires)
Gains quantitatifs
gestion de la connaissance
XML - Yves Bekkers - IFSIC
114
19
Quelques rfrences
http://www.w3.org/XML/
http://www.chez.com/xml/
Un glossaire XML
http://www.xmlstarterkit.com/xmlzone/glossary.htm
115
116
20