0% ont trouvé ce document utile (0 vote)
31 vues21 pages

XML Chapitre 2

Ce document présente une introduction à XML, en expliquant sa structure, ses éléments, attributs et l'utilisation des DTD (Document Type Definition). Il souligne les avantages de XML, notamment la préservation de la sémantique et de la structure des données, ainsi que les propriétés essentielles qui garantissent qu'un document XML est bien formé et valide. Enfin, il décrit comment une DTD définit les éléments et les règles d'utilisation dans un document XML.

Transféré par

edanintech
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
31 vues21 pages

XML Chapitre 2

Ce document présente une introduction à XML, en expliquant sa structure, ses éléments, attributs et l'utilisation des DTD (Document Type Definition). Il souligne les avantages de XML, notamment la préservation de la sémantique et de la structure des données, ainsi que les propriétés essentielles qui garantissent qu'un document XML est bien formé et valide. Enfin, il décrit comment une DTD définit les éléments et les règles d'utilisation dans un document XML.

Transféré par

edanintech
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Une Introduction à XML

Plan du cours

• La structure des documents XML


• Les DTD
Objectifs

Appréhender les concepts de base de XML


Eléments, attributs et contenu
DTD
La Famille XML

SGML

XML

Xlink
XSL
XPointer
XLL

DSSL HyTime
+
TEI
XSL : eXtensible Stylesheet Language HyTime : Hypermedia Time-
based structuring language
DSSL : Document Style Semantics and
Specification Language TEI : Text Encoding Initiative
XML plus en détail

Considérez le document HTML suivant :


<html>
<head>
<title>Construire une application XML</title>
</head>
<body>
<p>[email protected] <br>
tél : 01 40 27 00 00 <br>
fax : 01 40 27 00 10 <br>
Département : Informatique</p>
</body>
</html>

• Facile : une sorte de "fichier de signature"


• Mais : le balisage décrit la manière dont l’information sera
affichée par un browser
• Parce que : aucune sémantique, aucune logique !...
En premier exemple de XML

Considérez le document XML suivant :

<?xml version="1.0" encoding="iso-8859-1"?>


<!DOCTYPE MEMBRE SYSTEM "http://…/MEMBRE.dtd">
<!-- Un membre du CNAM -->
<MEMBRE TYPE="IE" ID="M28">
<NOM> PUJOS </NOM>
<PRENOM> Jean-Marc </PRENOM>
<MEL> [email protected] </MEL>
<TEL> 01 40 27 00 00 </TEL>
<FAX> 01 40 27 00 10 </FAX>
<EQUIPE LAB="Département">Informatique</EQUIPE>
</MEMBRE>
Les avantages de XML

 Préserve la sémantique et la structure des données


:
• On pourrait utiliser un "script " pour accéder à l’adresse
électronique du vingt huitième membre figurant dans un
document XML
==> /DB/MEMBRE[28]/MEL/text()

 Accent sur l’organisation des données


• Sépare le contenu, de la structure et de la
présentation
Quelques propriétés de XML

 Supporte les jeux de caractères Unicode


• Attention minuscule majuscule
• Les données peuvent contenir presque tous les caractères
 Les espaces en dehors du balisage sont par défaut,
préservés
 Les chaînes littérales sont délimitées par des quotes
simples ou doubles
Les éléments et leur contenu

balise ouvrante

<MEMBRE TYPE="IE" ID="M28">


<LOGIN ID="pujos"/>
<NOM> PUJOS </NOM> élément vide
<PRENOM> Jean-Marc </PRENOM>
<MEL> [email protected] </MEL>
<TEL> 01 40 27 00 00 </TEL> élément
<FAX> 01 40 27 00 10 </FAX>
<EQUIPE LAB="Département">Informatique</EQUIPE>
</MEMBRE>

balise fermante contenu textuel


Les éléments et leurs attributs

nom d'attribut

<MEMBRE TYPE="IE" ID="M28">


<LOGIN ID="pujos"/>
<NOM> PUJOS </NOM>
valeur d'attribut
<PRENOM> Jean-Marc </PRENOM>
<MEL> [email protected] </MEL>
<TEL> 01 40 27 00 00 </TEL>
<FAX> 01 40 27 00 10 </FAX>
<EQUIPE LAB="Département">Informatique</EQUIPE>
</MEMBRE>
Autres éléments

 Déclaration XML
<?xml version=“1.0"?>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

 Commentaires
<!-- ceci est un commentaire -->

 Section CDATA
<![CDATA[Langue & Dialogue]]>

 Instruction de traitement (pour une application)


<?edit line="wrap"?>
Structure d’un document XML (1)

Un document XML comporte des éléments avec ou


sans attributs qui fournissent des méta-informations
sur l'information ou sur le contenu du document. Un
document XML comporte :

• un prologue qui contient toutes les


informations autres que les données ou les
éléments,
• l'arbre des éléments avec un élément
racine,
• éventuellement des commentaires.
Structure d’un document XML (2)
<?xml version="1.0"?>
<!DOCTYPE bibliotheque [ <!ELEMENT bibliotheque (livre+)>
<!ELEMENT livre (titre, auteur, ref)>
<!ELEMENT titre (#PCDATA)>
Prologue
<!ELEMENT auteur (#PCDATA)>
<!ELEMENT ref (#PCDATA)>
]>
<bibliotheque> Elément
<livre> <titre>N ou M</titre> racine
<auteur>Agatha Christie</auteur>
<ref>Policier-C-15</ref>
</livre>
<livre><titre>Le chien des Baskerville</titre>
<auteur>Sir Arthur Conan Doyle</auteur> Arbre d’éléments
<ref>Policier-D-3</ref>
</livre>
<livre><titre>Dune</titre>
<auteur>Franck Heckbert</auteur>
<ref>Fiction-H-1</ref>
</livre>
</bibliotheque>
Structure d’un document XML (3)
Document Type Definition
 Définition de type de document
• Contraintes sur les noms des éléments et des attributs
• Occurrences des éléments et des attributs
• Structure et organisation des éléments
 Approche SGML traditionnelle mais :
• Optionnelle en XML et syntaxe simplifiée
• Production valide et distribution bien-formée

➔ Ce sont les DTD Document Type Definition qui définissent les éléments et les règles
d'utilisation (noms des éléments, attributs possibles pour un élément, imbrications).
Cependant des documents XML peuvent ne pas avoir de DTD. Si un document a une
DTD associée et qu'il se conforme à cette DTD, il est dit valide. S'il n'a pas de DTD et
qu'il suit les règles définies par XML (par exemple : ses éléments sont correctement
imbriqués) il est bien formé.
Document XML bien formé
Un document XML est bien formé (l'analyseur XML peut construire son
arborescence) si :
• il contient une déclaration XML ;
• il contient un ou plusieurs éléments ;
• il contient un élément racine encapsulant tous les autres éléments et leurs attributs (ex
<HTML> ... </HTML>);
• les éléments non vides ont une balise de début et de fin ;
• les éléments non vides sont correctement imbriqués (<P> <EM> ... </EM> </P>);
• les éléments vides ont un / à la fin de la balise avant le > ; <toto></toto> = <toto/>
• les noms des balises ouvrantes et fermantes correspondent ;
• un nom d'attribut apparaît uniquement dans la balise ouvrante et une seule fois dans cette
balise ;
• les valeurs des attributs sont entre guillemets ou apostrophes ;
• la valeur des attributs n'appelle pas d'entités externes directement ou indirectement ;
• les caractères réservés sont remplacés par des références d'entités (par ex. &lt; pour <) ;
• toutes les références à des entités non binaires doivent commencer par & et finir par ;
• s'il n'y a pas de DTD, les seules entités utilisées sont celles réservées de XML &amp; &lt;
&gt; &apos; &quot; ;
• s'il y a une DTD toutes les entités non réservées utilisées sont déclarées dans la DTD.
Document XML valide

Un document est valide s'il :


• est bien formé,
• fait référence a une DTD,
• se conforme a la DTD.

Les DTD Document Type Definition définissent les éléments et les


règles d'utilisation : noms des éléments, attributs possibles pour un
élément, imbrications (HTML 4.0 est une DTD de SGML).
Le document ne contient aucune information concernant l'affichage,
c'est sa feuille de style qui définira la présentation sur un média.
Description d’une DTD

La définition de type de document donne la grammaire de


l'application XML. Elle décrit :

• les éléments types : elle donne les noms de tous les éléments
et leur modèle de contenu,
• les attributs pour chaque élément (nom, type et valeur par
défaut),
• les entités binaires ou textuelles pouvant être incluses dans un
document (les caractères non ASCII par exemple),
• les notations qui servent à identifier les types spécifiques de
données externes binaires.
Exemple de DTD

<!ELEMENT MEMBRE Types


(LOGIN, NOM?, PRENOM?,MEL, TEL+, FAX*, EQUIPE)>
d’éléments

<!ELEMENT LOGIN EMPTY>


<!ATTLIST LOGIN ID ID #REQUIRED>
... Listes d’attributs

Elément de données
<!ELEMENT NOM (#PCDATA)>
...
Entités
<!ENTITY W3C "World Wide Web Consortium">
générales
<!ENTITY chap1 SYSTEM "http://…/coursXML.xml">
<!ENTITY img2 SYSTEM "image2.gif" NDATA gif>
... Entité paramètre
Utilisation d'une DTD

<!DOCTYPE MEMBRE SYSTEM "http://…/MEMBRE.dtd">


<MEMBRE TYPE="IE" ID="M28">


</MEMBRE>

➔ Une DTD est partagée par tous les documents


qui l'instancient donc, pour ne pas dupliquer la DTD
(dans chaque document), un utilise un identifieur
système (URL ou fichier local, SYSTEM ID) qui fait
appel à la DTD.
Arborescence XML

Une structure XML représente un arbre hiérarchique

MEMBRE
TYPE="IE" ID="M28"

LOGIN NOM ... EQUIPE


id="pujos" LAB="Département"

PUJOS Informatique

Vous aimerez peut-être aussi