Programmation Web II

Transcription

Programmation Web II
Programmation Web II
Plan du cours
1.
2ème
2.
année Licence Appliquée IAG
3.
4.
Faculté des Sciences Economiques et de Gestion de Nableul
Université 7 novembre à Carthage
5.
6.
Années 2009 - 2010
Concepts de base de XML
Schémas XML
Feuilles de style XSL
Analyseur syntaxique PHP-XML
Syndication de contenu avec RSS
Format SMIL
Riadh BEN MESSAOUD
http://eric.univ-lyon2.fr/~rbenmessaoud
1
Plan du cours
1.
2.
3.
4.
5.
6.
2
Historique : de SGML à XML
Concepts de base de XML
Schémas XML
Feuilles de style XSL
Analyseur syntaxique PHP-XML
Syndication de contenu avec RSS
Format SMIL

XML (eXtendable Markup Language) dérive du SGML
(Standard Generalized Markup Language, langage de
balisage standard généralisé)

Le SGML à été développé dans les années 80. Il était
complexe à apprendre et à utiliser quotidiennement.
Le HTML : version allégée du SGML



Malgré de nombreuses adaptations, le HTML ne pouvait pas
être étendu à l'infini, au fur et à mesure de l'augmentation
des besoins des développeurs.
C'est alors que fut créé le XML.
3
Historique : de SGML à XML
4
Historique : de SGML à XML

XML tente de se servir des principes de simplicité du HTML
et de la souplesse du SGML.

Le format XML est rapidement apparu adapté à beaucoup
plus d'usages que ses concepteurs le pensaient
initialement.

Point commun avec le SGML : tout document XML peut être
basé sur une DTD ou un Schéma. Cependant l’association
n'est pas obligatoire. Un fichier XML peut se suffire à luimême.
5

La mise en forme des données est totalement séparée des
données elles-mêmes.

La possibilité de créer les éléments que l'on désire permet
de rendre le fichier lui-même lisible - et modifiable - par un
être humain.

Un document XML peut prévoir plusieurs cibles : l'écran
d'un téléphone portable, celui d'un ordinateur de bureau,
une base de données, une application logicielle, etc.

Possibilité d'effectuer des sélections par tri, des générations
automatiques de tables des matières et bien d'autres
fonctions encore, grâce au langage de feuilles de style XSL.
6
1
Mise en œuvre

XML permet de séparer forme et fond.

Pour produire un document HTML à partir de données en
utilisant le format XML, il est nécessaire d'écrire :
Structure d’un document XML

L’idée de base de XML :



La simplicité de déclaration ;
La validation de la structure ;
L’intégration de la souplesse syntaxique du SGML et la
simplicité d'écriture du HTML.

Un premier fichier contenant les données à mettre en forme
(document XML).

Un second fichier comprenant les informations nécessaires à la
mise en forme (feuille de style XSL – eXtensive Stylesheet
Language)

Un fichier XML est composé d'un prologue, d'un élément
racine et d'un arbre.

Pour une normalisation, il est possible d'ajouter un troisième
fichier : soit une DTD (Document Type Definition), soit un
Schéma XML (XML Schema).

L’arbre est constitué d'éléments imbriqués les uns dans les
autres (ayant une relation parent-enfant) et d'éléments
adjacents.

Pour un format de sortie HTML, il est nécessaire d'ajouter une
feuille de style CSS.
7
Structure d’un document XML
8
Structure d’un document XML
<!-- Prologue -->
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Élément racine -->
<biblio>
<!-- Premier enfant -->
<livre>
<!-- Élément enfant titre -->
<titre>Les Misérables</titre>
<auteur>Victor Hugo</auteur>
<nb_tomes>3</nb_tomes>
</livre>
<livre>
<titre>L'Assomoir</titre>
<auteur>Émile Zola</auteur>
</livre>
<livre lang="en">
<titre>David Copperfield</titre>
<auteur>Charles Dickens</auteur>
<nb_tomes>3</nb_tomes>
</livre>
</biblio>

Le prologue est constitué de la déclaration XML et,
éventuellement, d'une déclaration de type de document
(DTD).

L'élément biblio est l’élément racine (document
element) :
 il est constitué de trois éléments livre.
 dans chacun d'entre eux nous retrouvons la même
composition : un élément titre, un élement auteur et
éventuellement un élément nb_tomes.
 L'élément livre peut aussi contenir un attribut lang.

Même s'il est simple de comprendre ce code, on s'aperçoit
mieux d'une éventuelle erreur lorsqu'on visualise ce même
fichier dans un navigateur.
9
10
Le prologue
Le prologue
Déclaration XML :
<?xml version="1.0" encoding="ISO-8859-1"?>

Instructions de traitement :
 Une instruction de traitement ne fait pas totalement
partie du document (elle sert à traiter le document XML)
 La déclaration XML et la déclaration de feuille de style.

Exemple d’une instruction de traitement :


Deux informations sont fournies dans la déclaration :
 version : version du XML utilisée dans le document (1.0
en ce qui nous concerne)
 encoding : le jeu de codage de caractères utilisé. Le jeu
de caractère standard pour l’europe de l’ouest est le
ISO-8859-1
<?xml-stylesheet type="text/xsl" href="biblio.xsl"?>


11
L'attribut type indique de quel type de fichier il s'agit
(text/css pour les feuilles de style CSS, par exemple)
L'attribut href indique l'URL du fichier.
12
2
Le prologue

Le commentaire
Déclaration de type de document (DTD) :
 Lorsqu'elle est présente, cette déclaration permet de
définir la structure du document.
 Elle peut être de deux types, externe ou interne.

En XML, les commentaires se déclarent de la même façon
qu'en HTML.

Ils commencent par <!-- et se terminent par -->.

Exemple de déclaration de type de document externe :
<!DOCTYPE biblio SYSTEM "biblio.dtd">

Ils peuvent être placés à n'importe quel endroit tant qu'ils
se trouvent à l'extérieur d'une autre balise.

Elle définit l'ensemble des éléments utilisables dans le
document, y compris l'élément-racine (biblio) ;
Le nom de fichier biblio.dtd dans lequel se trouve définie la
structure du document.

<!-- ceci est correct -->
<elt> <!-- ceci est correct aussi -->
Un peu de texte </elt>

En raison de la compatibilité XML/SGML, la chaîne de
caractères -- est interdite dans un commentaire.

13
L’arbre d’éléments (les éléments)


L’arbre d’éléments (les éléments)
Un document XML peut se représenter sous la forme d'une
arborescence d'éléments. Cette arborescence comporte une
racine (unique), des branches et des feuilles.

L'élément racine (document element) est la base du
document XML :

Il est unique et englobe tous les autres éléments.

Il s'ouvre juste après le prologue.

Il se ferme à la toute fin du document.
Les éléments forment la structure même du document :

ce sont les branches et les feuilles de l'arborescence.

Ils peuvent contenir du texte, ou bien d'autres éléments,
qui sont alors appelés « éléments enfants » .

L'élément contenant étant quant à lui appelé
logiquement « élément parent ».
15
L’arbre d’éléments (les éléments)

Exemple d'élément contenant du texte :
<titre>Les Misérables</titre>

Exemple d'élément contenant d'autres éléments :
<livre>
<titre>L'Assomoir</titre>
<auteur>Émile Zola</auteur>
</livre>
14
16
L’arbre d’éléments (les attributs)
17

Tous les éléments peuvent contenir un ou plusieurs attributs.
 Chaque élément ne peut contenir qu'une fois le même
attribut.
 Un attribut est composé d'un nom et d'une valeur.
 Il ne peut être présent que dans la balise ouvrante de
l'élément.

Exemple d'utilisation d'un élément avec attribut :
<instrument type="vent">trompette</instrument>

Exemple d'utilisation d'un élément vide avec attributs :
<img src="ours.gif" alt="Gros ours" width="56" />
18
3
L’arbre d’éléments (les entités)
Les sections CDATA

La déclaration des entités s'effectue au sein de la DTD.

Elles peuvent être utilisées aussi bien dans la DTD que dans le
document XML.

Certains caractères ayant un sens précis en XML, il est
nécessaire de leur trouver un remplaçant lorsque l'on a besoin
de les insérer dans un document. On a recours dans ce cas à
des entités prédéfinies :
 &

&amp;
 <

&lt;
 >

&gt;
 ‘’

&quot;
19
 ‘

&aquot;

Une section CDATA est une section pouvant contenir toute
sorte de chaîne de caractères.

Elle permet de définir un bloc de caractères ne devant pas
être analysés par le processeur XML.

Elle permet entre autres de garder dans un bloc de texte un
exemple de code à afficher tel quel.

Exemple :
<![CDATA[Une balise commence par < et se termine par >.]]>
20
Règles de composition
Règles de composition
Un nom d'élément ne peut commencer par un chiffre.
Toutes les balises portant un contenu non vide doivent être
fermées.
Si le nom n'est composé que d'un seul caractère, ce doit
être une lettre comprise entre "a" et "z" pour les
minuscules, "A" et "Z" pour les majuscules.
La balise de début, la balise de terminaison et le
contenu entre deux sont globalement appelés élément.
S'il est composé d'au moins deux caractères, le premier
peut être "_" ou ":".
Les balises n'ayant pas de contenu doivent se terminer
par />
Le nom peut ensuite être composé de lettres, chiffres,
tirets, tirets bas et deux points.
Les noms d'attributs sont en minuscules
La syntaxe XML est sensible à la casse (le format
distingue majuscules et minuscules).
Les valeurs d'attributs doivent être entre guillemets
21
22
Règles de composition

Un document respectant ces critères est dit bien formé
(well formed).

Il est aussi possible de définir des règles plus strictes
indiquant quelles sont les séquences et imbrications de
balises autorisées.
 Cela se fait à l'aide d'une DTD ou d'un Schéma.
 Il est alors possible d'effectuer une "validation" des
documents faisant référence à une DTD pour s'assurer
qu'ils respectent bien les règles qui y sont mentionnées.
 Un document bien formé dont la syntaxe est conforme
aux règles stipulées dans une DTD ou un Schéma XML
est dit valide.
23
4

Documents pareils

XML (eXtensivble Markup Language)

XML (eXtensivble Markup Language) Une instruction de traitement est une instruction interprétée par l'application servant à traiter le document XML. Elle ne fait pas totalement partie du document. Les instructions de traitement qui...

Plus en détail