XML par la pratique

Transcription

XML par la pratique
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
Présentation du langage XML
1. De SGML à XML
17
2. Les bases de XML
18
2.1 Rappel sur HTML
2.2 Votre premier document XML
2.3 Les avantages de XML
18
19
21
3. La syntaxe XML
21
3.1 La première ligne du document XML
3.1.1 Déclaration XML
3.1.2 Codage des caractères
3.1.3 Paramètres de validation et de styles
3.2 Les éléments ?
3.2.1 Les éléments vides
3.2.2 La sensibilité à la casse
3.2.3 Les caractères non autorisés
3.2.4 Les caractères autorisés
3.2.5 La première lettre
3.2.6 Les noms spéciaux
3.3 Les attributs
3.4 La racine d’un document
3.5 Les commentaires
3.6 Les espaces de noms
3.6.1 Définition
3.6.2 Syntaxe
3.6.3 Application
23
23
23
24
24
24
24
25
25
26
26
26
27
28
28
28
29
29
De l'importance de la validation
1. La validation par DTD
31
1.1 Le vocabulaire employé
www.editions-eni.fr
31
© Editions ENI
1/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
1.1.1 Les documents bien formés
1.1.2 Les documents valides
1.1.3 Les parseurs
1.2 Construction d’une DTD
1.3 Lier une DTD aux données XML
1.3.1 Déclarations DTD au sein du document XML
1.3.2 Déclarations DTD dans un fichier .dtd
1.4 Définir des éléments
2. Les différents types de déclaration
38
2.1 Les groupes
2.1.1 Les mots clés ANY et EMPTY
2.1.2 Les opérateurs ? , + et *
2.1.3 L’opérateur de choix |
2.1.4 Les données textuelles #PCDATA
2.2 Les attributs
2.2.1 Liste d’attributs
2.2.2 Les attributs IMPLIED, REQUIRED et FIXED
2.3 Les types d’attributs
2.3.1 Les données textuelles (type CDATA et énumérations)
2.3.2 Les attributs de type NOTATION
2.3.3 Les attributs de types ID ou IDREF
2.3.4 Les attributs de type ENTITY
2.3.5 Les attributs de type NMTOKEN
2.4 Les entités
2.4.1 Les entités internes
2.4.2 Les entités externes
2.5 Les sections conditionnelles
3. Introduction à la notion de schémas XML
3.1 Quelles sont les différences entre DTD et XMLSchema ?
3.1.1 L’apport du typage
3.1.2 L’apport de la syntaxe XML
3.2 Comment construire un schéma ?
3.2.1 Construction "en poupées russes"
www.editions-eni.fr
31
34
34
35
36
36
37
38
© Editions ENI
39
39
39
40
40
41
41
42
42
43
43
43
44
45
45
46
46
47
47
48
48
49
49
50
2/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
3.2.2 Construction par clonage
3.3 Notions supplémentaires de construction
3.3.1 Les groupes
3.3.2 Le compositeur choice
3.3.3 Le compositeur all
3.4 Comment utiliser les types ?
3.4.1 Les types prédéfinis
3.4.2 Créer ses propres types
3.4.3 Autres méthodes de dérivation
3.5 Comment lier un schéma à un document XML ?
53
54
55
55
56
56
56
56
59
60
Relax NG
1. Principe de Relax NG
61
2. Syntaxe XML et syntaxe compacte
62
2.1 Syntaxe XML
2.1.1 Choice
2.1.2 Attribute
2.1.3 Patterns
2.1.4 Datatypes
2.1.5 Énumérations
2.1.6 Listes
2.1.7 Interleave
2.2 Syntaxe compacte
2.2.1 Choice
2.2.2 Attribute
2.2.3 Patterns
2.2.4 Datatypes
2.2.5 Énumérations
2.2.6 Listes
2.2.7 Interleave
62
64
65
66
68
68
69
69
70
70
71
71
72
72
72
73
3. Conclusion
www.editions-eni.fr
73
© Editions ENI
3/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
Naviguer dans les documents XML
1. Préambule
75
2. XPath : un langage de désignation
76
2.1 Principe
2.2 Modèle de données XPath
2.3 Exemples
76
78
78
3. XLL : langage de description de liens
80
3.1 Présentation et vocabulaire
3.2 XLink
3.3 XPointer : langage d’adressage de XML
4. XBase
80
81
87
92
4.1 Principe
4.2 Exemple
92
92
5. XInclude
93
5.1 Principe
5.1.1 L’attribut href
5.1.2 L’attribut parse
5.1.3 L’attribut encoding
5.2 Déclaration DTD
5.3 Exemple
93
94
94
95
95
95
Présentation de XQuery
1. Présentation de XQuery
97
1.1 XQuery et le SQL
1.2 Un processeur XQuery
1.3 Une première requête
www.editions-eni.fr
98
98
99
© Editions ENI
4/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
2. Le langage
100
2.1 Les commentaires
2.2 Position dans un arbre
101
101
3. Les expressions
101
3.1 Expressions de comparaison
3.1.1 Comparaison générale
3.1.2 Comparaison de valeurs
3.1.3 Comparaison de nœuds
3.2 Expressions conditionnelles
3.3 Expressions d’ensemble
3.3.1 Union
3.3.2 Intersect
3.3.3 Except
3.4 Les variables
3.5 Les expressions FLWOR
3.5.1 Description
3.5.2 For, in et return
3.5.3 Imbrication
3.5.4 Let
3.5.5 Where
3.5.6 Order by
3.6 Les expressions quantifiées some et every
3.7 Les fonctions
3.7.1 Les fonctions incluses dans XQuery
3.7.2 Créer ses fonctions
3.8 Les jointures
4. Conclusion
101
101
102
103
104
105
105
105
105
106
106
106
106
107
107
108
109
109
110
110
111
112
112
SAML : sécuriser les échanges avec XML
1. Présentation du langage SAML
www.editions-eni.fr
113
© Editions ENI
5/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
1.1 Le protocole
1.2 Les liaisons (binding)
1.3 profiles
114
117
118
2. Vers le SSO OASIS
119
2.1 Qu'est-ce que le SSO ?
2.2 Le SSO en détail
2.3 Web Browser SSO Profile
119
120
122
Optimisation du XML : l’EXI
1. L'EXI
125
1.1 Présentation
1.2 Les inconvénients du XML
1.3 Optimiser le XML
125
126
127
2. Fonctionnement
128
2.1 Le mécanisme
2.2 Les bibliothèques
131
132
3. Conclusion
133
Mise en application
1. Introduction
135
2. DTD : la librairie
135
2.1 Définition de la grammaire de la liste d’ouvrages
2.2 Exemple de fichier de données XML
3. Tester si un document XML est valide en PHP
www.editions-eni.fr
© Editions ENI
136
138
140
6/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
4. XMLSchema : la bibliothèque
143
4.1 Schéma de description d’un livre
4.2 Schéma de description d’un employé
4.3 Exemple de fichier de données XML
5. Relax NG : la bibliothèque
144
145
145
146
5.1 Syntaxe d’un livre
5.2 Syntaxe compacte d’un employé
146
147
6. Tester les chemins XPath à l’aide de XPath Visualizer
148
7. Créer des requêtes XQuery sur un document XML
151
7.1 Des requêtes simples
7.2 Les instructions FLWOR
7.3 Exercice : créer une fonction qui teste l’acidité
151
152
152
8. Le SSO en JavaScript
155
8.1 Les bibliothèques
8.2 Étude de cas avec Google
8.3 Installation
8.4 Test de l'implémentation
8.5 Conclusion
155
156
156
156
159
Les transformations
1. Qu’est-ce que XSL ?
163
2. Lier un document XML à une feuille de style XSL
165
3. Structure de base d’un document XSL
165
www.editions-eni.fr
© Editions ENI
7/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
4. XSLT
166
4.1 Qu’est-ce qu’une transformation XSLT ?
4.2 Les règles de gabarit (template rules)
4.3 Application des règles de gabarit
4.4 Les éléments de transformation
4.5 Créer des éléments avec xsl:element
4.6 Créer des attributs avec xsl:attribute
4.7 Créer des ensembles d’attributs nommés avec xsl:attribute-set
4.8 Créer du texte avec xsl:text
4.9 Créer des commentaires avec xsl:comment
4.10 Copier un nœud avec xsl:copy
4.11 Générer du texte avec xsl:value-of
4.12 Calculer avec xsl:number
4.13 Importer des règles avec xsl:apply-imports
4.14 Répéter un traitement avec xsl:for-each
4.15 Traitement conditionnel par xsl:if
4.16 Traitement conditionnel par xsl:choose
5. XSL-FO
166
168
172
172
173
174
174
175
175
176
177
178
179
179
181
182
182
5.1 Initialisation et structure du document
5.2 La disposition des pages
5.3 La zone de contenu
5.4 L’ordre d’apparition des types de page
5.5 Insérer du contenu
5.6 Générer le document PDF
183
184
186
188
189
191
CSS et XLS : mise en application
1. Introduction
193
2. Application d’une feuille de style CSS à un document XML
194
2.1 Le document XML
2.2 La feuille de style CSS
www.editions-eni.fr
194
196
© Editions ENI
8/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
3. Application d’une feuille de style XSL
199
3.1 Le document XML de base
3.2 La transformation XSL
199
199
4. Transformation XSL d’un document XML
4.1 Le document XML de base
4.2 La transformation XSL
4.3 Autres exemples de transformation
4.3.1 Transformation d’un document XML en texte
4.3.2 Transformation d’un document en CSV
5. Création d’un document PDF avec XSL-FO
5.1 L’exemple complet
5.2 La génération du document PDF avec l’outil FOP
6. Une dernière astuce pour intégrer du XML au HTML
6.1 Inclusion simple de contenu XML dans du HTML
6.2 Inclusion par "data island"
7. Conclusion
204
204
206
207
207
209
211
211
215
217
218
219
222
Les services web
1. De SGML aux services web
225
1.1 De SGML à XML
1.2 Les services web : l’avenir prévisible de XML
2. La notion de services web
227
2.1 Qu’est-ce qu’un service web ?
2.2 Le Web des services
www.editions-eni.fr
226
226
228
228
© Editions ENI
9/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
3. Les annuaires de services web
230
3.1 WSDL
3.2 UDDI
3.2.1 Annuaires UDDI
3.2.2 Les interfaces UDDI
3.2.3 À propos d’UDDI
230
231
231
232
233
4. Introduction à SOAP, le protocole des services web
234
Le protocole SOAP et les parseurs XML
1. Principe de base de SOAP
235
1.1 Appel d’une méthode distante
1.2 La requête SOAP
1.3 La réponse
236
237
238
2. Mise en application de SOAP
239
2.1 De quoi avez-vous besoin ?
2.2 Déroulement d’une transaction SOAP
2.3 Interopérabilité
3. L’interprétation des documents XML : les parseurs
3.1 Que fait le parseur XML ?
3.2 Introduction aux parseurs XML DOM
3.3 Introduction aux parseurs XML SAX
3.4 DOM ou SAX ?
3.5 XML Pull Parsing
3.6 Stax
239
240
241
242
242
243
243
244
245
246
XForms
www.editions-eni.fr
© Editions ENI
10/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
1. XHTML : XML + HTML ?
247
2. Les principes fondamentaux de XHTML
248
2.1 Qu’est-ce qu’un document XHTML conforme ?
2.2 La structure d’un document XHTML
248
249
3. Les différences entre HTML 4.0 et XHTML 1.0
250
4. Les formulaires XHTML : les XForms
252
4.1 Les limites imposées par les formulaires HTML
253
4.1.1 Les sept types d’éléments des formulaires HTML
253
4.1.2 Les deux méthodes de traitement des formulaires HTML : GET et POST
257
4.1.3 Les limites d’accessibilité des formulaires HTML
258
4.2 Principes fondamentaux des XForms
258
4.3 Les contrôles de formulaires XForms
259
4.4 Déclarer des XForms
259
4.5 Maîtriser les composants XForms
261
4.5.1 Les zones de texte
261
4.5.2 Choix multiples (boutons radio, cases à cocher, zones de sélections multiples et
menus)
262
4.5.3 Charger des fichiers
263
4.5.4 Les groupes d’options
264
4.5.5 Les événements
264
4.5.6 Les valeurs initiales
265
4.5.7 Les méthodes de soumission
265
4.6 Un exemple simple de XForms
266
5. XHTML5
268
5.1 Présentation
5.2 Ce qui change
268
269
6. Conclusion
www.editions-eni.fr
278
© Editions ENI
11/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
XML et JavaScript
1. Le JavaScript
279
1.1 Présentation rapide
1.2 Limites du JavaScript
1.3 JavaScript et les navigateurs
279
280
280
2. DOM
281
2.1 DOM HTML et XML
2.2 DOM et JavaScript
2.3 Un exemple d’utilisation de JavaScript avec DOM
3. XMLHttpRequest
281
282
283
285
3.1 Principe
3.2 AJAX
3.3 Exemple
285
286
286
4. jQuery et le XML
288
4.1 jQuery
4.1.1 Les avantages de jQuery
4.1.2 Le fonctionnement de base
4.1.3 Interroger du XML
4.1.4 Traduire le XML
4.1.5 Générer du XML
5. Conclusion
288
289
290
291
291
291
293
Le XML dans les interfaces homme-machine
1. Le XAML
295
1.1 Une interface pour le Web et le bureau
1.2 Les styles
www.editions-eni.fr
© Editions ENI
295
300
12/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
2. Android
302
2.1 Une interface pour le Web et le bureau
2.2 Les styles
302
305
3. Le JavaFX
306
4. Conclusion
307
WML, SMIL, RDF et RSS
1. Introduction
309
2. WML
309
2.1 Présentation du langage WML
2.2 La syntaxe du langage WML
2.3 Différences entre WML et HTML
2.4 Les besoins pour créer et publier des documents WML
2.5 Comment rendre le WML plus dynamique ?
3. SMIL
315
3.1 Structure d’un document SMIL
3.2 Les bases pour construire des animations interactives SMIL
3.2.1 Les éléments <seq> et <par>
3.2.2 Les itérations
3.3 SMIL, pour aller plus loin
4. RDF
316
317
317
318
319
319
4.1 Objectifs
4.1.1 Les métadonnées
4.1.2 Vers un Web sémantique...
4.2 Principes
4.2.1 Ressources, propriétés et déclarations
www.editions-eni.fr
310
310
313
314
314
© Editions ENI
320
320
320
321
321
13/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
4.2.2 Exemple
4.2.3 RDF, pour aller plus loin
321
322
5. RSS
323
5.1 Objectifs
5.2 Les différentes versions de RSS
5.3 Construire un flux RSS 0.91, 1.0 ou 2.0
5.3.1 Structure d’un document RSS 0.91
5.3.2 Structure d’un document RSS 1.0
5.3.3 Structure d’un document RSS 2.0
5.4 Comment exploiter les flux RSS sur un site ?
6. Conclusion
323
324
325
325
328
332
335
335
SVG (Scalable Vector Graphics)
1. Généralités
339
2. Interpréter le SVG
340
3. La syntaxe de SVG
340
3.1 L’initialisation du document
3.2 Ajouter des éléments graphiques
3.3 Appliquer des transformations : translations, rotations, échelle
3.4 Opérations sur les objets graphiques
3.5 Ajouter du texte
3.6 Appliquer des filtres
3.7 Cas pratique : Concevoir un histogramme en SVG
3.8 Décomposition
3.9 Exécution
4. Conclusion
www.editions-eni.fr
340
342
346
350
352
354
356
357
359
360
© Editions ENI
14/15
XML par la pratique
Bases indispensables, concepts et cas pratiques (3ième édition)
Autres langages dérivés de XML
1. Introduction
361
2. Les sous-ensembles de XML
362
3. Des langages qui s’inspirent de XML
363
3.1 YAML
3.2 JSON
363
363
4. XML au service des échanges B to B
364
4.1 Les services web XML
4.2 Les langages "dédiés"
365
366
5. Conclusion
366
Index
367
www.editions-eni.fr
© Editions ENI
15/15