Module : Langage
XML (21h)
Année universitaire
2014-2015
UP Web
Plan du module
• Chapitre 1 Introduction au langage XML
(Extensible Markup Language)
• Chapitre 2 XSD (XML Schema) et
Espaces de nom
• Chapitre 3 XPATH
• Chapitre 4 XSL
• Chapitre 5 Parseurs XML
2
Chapitre 1 :
Introduction au
Langage XML
Année universitaire
2014-2015
UP Web
Objectifs
Savoir le rôle de XML.
Apprendre la structure et les règles
syntaxiques d’un document XML.
4
Plan
Introduction
Présentation de XML
Structure d’un document XML
5
Introduction 1/3
Les pages jaunes
6
Introduction 2/3
• On doit organiser d'une certaine manière
les données ce qui permet un traitement
automatique de ces dernières plus efficace
et rapide.
utilisation d’une structure de données.
7
Introduction 3/3
• Structure de données: organisation des
informations afin de simplifier leur
traitement.
diminuer la complexité d'une
application informatique et le taux
d'erreurs.
8
Langages de description de
documents structurés 1/3
Les langages les plus couramment utilisés
permettant d’encoder un document structuré à
l’aide des balises sont:
1986 1991 1996
Standard HyperText eXtensible
Generalized Markup Language Markup Language
Markup Language
9
Langages de description de
document structuré 2/3
SGML est un langage servant à préciser la structure d'un
document quelconque. Il est compréhensible mais il était
inadapté à l'écriture de documents pour internet. Il a donc été
nécessaire d'en dériver le langage HTML.[1]
HTML est le standard du développement web mais il n'est
ainsi pas possible
1986 de définir autre chose qu'une
1991 1996 page Web. [1]
Le XML est un dérivé du SGML. Il tente à être plus souple que
HTML et plus simple que SGML.
10
Langages de description de
document structuré 3/3
•Diffusion électronique de documents
Syntaxe complexe SGML
•Présentation des
documents sur le web1986 1991 1996
HTML
Non flexible, figé
•Structuration, échange des documents
XML
Plus simple que SGML
Plus souple que HTML
11
Présentation de XML
• XML = eXtensible Markup Language.
• Langage de balises.
• Recommandation de W3C.
• XML : description, organisation, archivage et
échange des données.
12
Pourquoi utiliser XML?
• Séparation entre le contenu et la forme
• Lisible : texte balisé avec marquage.
• Extensible : supporte les évolutions
applicatives.
• Un méta langage permettant la définition de
1986 1991
langages adaptés à des besoins variés.
• Supporté par les grands constructeurs: IBM,
Microsoft .net, SUN, etc. 13
Arborescence XML
• Un document XML est composé
de plusieurs nœuds. Nœud
racine
Nœud 1
• L’arborescence d’un
document XML est la
Nœud Nœud
structure 1.2
1.1
hiérarchique des
nœuds. Nœud
1.1.1
Nœud
1.1.2
14
Structure d'un document XML
1/8
• Un document XML comporte :
-un prologue.
-l'arbre des éléments.
-éventuellement des commentaires
15
Structure d'un document XML
2/8
•Le prologue
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
Le prologue XML:
est une instruction de traitement destinée à l’application chargée du
traitement du document XML
est facultative, mais fortement conseillée
décrit:
- la version du langage XML version="1.0"
- le codage des caractères (par défaut UTF-8) encoding="UTF-8"
- La dépendance à des documents extérieurs standalone="yes"
16
Structure d'un document XML
3/8
• Les éléments syntaxiques XML
Il existe trois éléments syntaxiques XML:
1 Les éléments
2 Les attributs
3 Les entités
17
Structure d'un document XML
4/8
1 Les éléments
• Un élément s’ouvre et se ferme par une balise
• Le nom de l’élément est repris dans la balise
ouvrante et dans la balise fermante.
<categorie>Dessert</categorie>
Balise ouvrante Balise fermante
18
Structure d'un document XML
5/8
2 Les attributs
• L’attribut se trouve dans la balise ouvrante d’un élément
• L’attribut n’est pas repris dans la balise fermante
• Un élément peut contenir plusieurs attributs
• Un même attribut ne peut être présent qu’une seule fois dans un
élément
• L’ordre des attributs n’a pas d’importance au sein d’un élément
• La valeur de l’attribut est indiquée entre guillemets
<quantite unite ="g" >100</quantite>
19
Structure d'un document XML
6/8
23 Les entités
• Certains caractères ont un sens particulier en XML (caractères
spéciaux)
Exemple: >, &, "
• Les entités ont été prédéfinies afin de pouvoir utiliser les caractères
réservés &entite;
• Une entité est une chaîne de caractère commençant par & et se
terminant par ;
• Une entité est remplacée par la chaîne de caractère qu’elle
20
représente.
Structure d'un document XML
7/8
Les entités prédéfinies
Caractère Entité
& &
< <
> >
" "
' &aquot;
Exemple:
<message>salaire < 1000</message>
21
Structure d'un document XML
8/8
• Les commentaires
<!-- This is a comment -->
Les commentaires sont ignorés lors de l’interprétation
du document XML.
22
Les règles syntaxiques
• Un document XML a un seul élément racine.
• Un élément peut:
Être vide
<vide/>
Contenir une chaîne de caractères
<categorie>Dessert</categorie>
Contenir des éléments fils (qui doivent être correctement imbriqués)
<ingredient>
<nom>beurre</nom>
<quantite>100</quantite>
</ingredient>
• XML est sensible à la casse <Categorie>incorrect</categorie> 23
Exemple de document XML
Prologue
<?xml version="1.0" encoding="ISO-8859-1"
c ine
Ra standalone="yes"?>
<MOTEURS>
<MOTEUR marque = "Peugeot"> Elé
<PUISSANCE>5</PUISSANCE> me
nt
<CYLINDREE>1.2</CYLINDREE>
<CARBURATION>Essence</CARBURATION >
</MOTEUR> Attribut
<MOTEUR marque = "Renault">
<PUISSANCE>4</PUISSANCE>
<CYLINDREE>1.3</CYLINDREE>
<CARBURATION>Diesel & Diesel</
CARBURATION >
</MOTEUR>
Entité
</MOTEURS>
24
En résumé
• XML est un langage de structuration de
données
• Un document XML est structuré à l’aide
d’éléments et d’attributs
• Un document XML doit respecter les
règles syntaxiques pour qu’il soit bien
formé
25
Références
• [1]http://www.gchagnon.fr/cours/xml/base.h
tml
• http://www.teluq.ca/inf6450/mod1/chapitre
4.xml
26