0% ont trouvé ce document utile (0 vote)
43 vues26 pages

Introduction au langage XML et DTD

Transféré par

khaoulatobbal
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)
43 vues26 pages

Introduction au langage XML et DTD

Transféré par

khaoulatobbal
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

XML(Extensible Markup Language )

 XML est un format/langage standard conçu pour le stockage et la publication et l’échange de

documents entre sites distants ou applications différentes.

 XML n’a pas de balises prédéfinies et permet aux créateurs de spécifier leur propre jeu de

balise pour structurer leurs données

 Un métalangage (permet de définir d’autres langages)

Mr. AISSAOUA HABIB 1


Technologies liées à XML

 XSL, langage évolué pour la définition de feuilles de style.

 Xlink pour ajouter des liens hypertextes à un fichier XML.

 XPath pour identifier des nœuds ou ensemble de nœuds dans un document XML

 Xquery langage de requête permettant d’extraire des informations d'un document XML

 DOM Document Object Model pour construire en mémoire le document XML sous forme

arborescente

 Etc.
Mr. AISSAOUA HABIB 2
Un document XML bien formé
Un document XML bien formé est un document qui est conforme aux règles syntaxiques du
langage XML. Les règles que doit suivre un document XML sont les suivantes:

1. Commence par une déclaration XML (attribut version obligatoire) avec possibilité de choisir
un encodage (le défaut est utf-8): <?xml version="1.0" encoding="ISO-8859-1"?>

2. Structure hiérarchique:

 veiller à l'ordre de fermeture des balises : la première ouverte est toujours la dernière fermée,
pas de croisements de type <i>...<b>...</i> .... </b>

 sensible à la casse

Mr. AISSAOUA HABIB 3


 les valeurs des attributs sont entre guillemets ou apostrophes ;

 un seul élément racine (root):

 l’élément root ne peut apparaître qu’une fois et ne doit pas apparaître dans un autre élément

 les caractères réservés sont remplacés par des références d'entités: <, &, >,", ’

- utilisez &lt; &amp; &gt; &aquot; &apos; …

Un document est valide s'il :

 Est bien formé,

 Fait référence à une DTD (Document Type Definition) ou à un schéma XSD,

 Se conforme à la DTD ou au schéma XSD.

Mr. AISSAOUA HABIB 4


Structure d’un document XML
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,

 Des commentaires.

 Des instructions de traitement

1. Prologue:

Mr. AISSAOUA HABIB 5


 version : de façon générale 1.0
• Il existe deux versions 1.0 et 1.1

 encoding : valeur par défaut UTF-8

 standalone : valeur par défaut yes


• Cette information permet de savoir si votre document XML est autonome ou si un
autre document lui est rattaché.

Commentaires XML: On peut placer des commentaires à peu près partout dans un
document XML. La syntaxe est identique à celle d’un fichier HTML. Un commentaire peut
d’étendre sur plusieurs lignes. La seule contrainte est de ne pas pouvoir employer les
caractères -- dans le commentaire, même s’ils ne sont pas suivis de >
Mr. AISSAOUA HABIB 6
Les instructions de traitement: sont destinées aux applications qui traitent les documents
XML. Les instructions de traitement sont délimitées par les chaînes de caractères '<?' et '?>'.
<?nom arg1 arg2 ... argn ?>

 Appel d'un processeur XSLT


<?xml-stylesheet type="text/xsl" href="myXsl.xslt"?>

Espaces de nom: Les espaces de noms (ou namespace) sont destinés à lever les
ambiguïtés éventuelles des intitulés de balise, au moyen d'un identifiant de
ressource uniforme (URI)

– On utilise le symbole « : » dans les noms XML et tout ce qui précède le


deux-points est appelé le « préfixe ».
Mr. AISSAOUA HABIB 7
– Tout attribut ou élément qui utilise un préfixe donné fait automatiquement
partie de l'espace de noms identifié par l'URI.

– On définit un « préfixe » à l'aide d'un attribut ayant comme préfixe « xmlns


». La définition du préfixe est alors valable pour l'ensemble de l'élément

Mr. AISSAOUA HABIB 8


Mr. AISSAOUA HABIB 9
Espaces de noms par défaut

– La déclaration d'un espace de noms par défaut se fait dans le premier élément
qui utilise le vocabulaire, grâce au mot clef xmlns comme XML namespace

Mr. AISSAOUA HABIB 10


Mr. AISSAOUA HABIB 11
Validation de document avec DTD (Document Type Definition) :
 Afin de vérifier qu'un document XML est conforme à une syntaxe donnée, DTD nous permet
de décrire la structure et l'ensemble des règles que doit suivre le document:
– liste des balises
– attributs des balises
– organisation des balises
 La validation est le mécanisme qui vérifie qu’un document XML respecte une DTD

DTD

Analyse Analyse Valide


XML syntaxique Bien syntaxique selon une
niveau 1 formé niveau 2 DTD

 On distingue 2 types de DTD : les internes et les externes.


Mr. AISSAOUA HABIB 12
 Une DTD interne s'écrit dans ce qu'on appelle le DOCTYPE. On le place sous le prologue du
document et au dessus du contenu XML. Voyons plus précisément la syntaxe :

<!DOCTYPE racine [ ]>


La DTD interne est ensuite écrite entre les []. Dans ce DOCTYPE, le mot racine doit être
remplacé par le nom de la balise qui forme la racine du document XML.

 Une DTD externe est une DTD qui est écrite dans un autre document que le document XML.
Il existe 2 types de DTD : les DTD externes PUBLIC et les DTD externes SYSTEM. Avec
les DTD externes SYSTEM, on fait appelle au fichier contenant la grammaire à partir d'un
fichier local. Avec PUBLIC, en y accédant par son URL.

Mr. AISSAOUA HABIB 13


Exemple d’un document XML ayant une DTD externe cours.dtd

Les éléments dans la DTD: pour déclarer les éléments autorisés à apparaître dans le document,
ainsi que leurs imbrications possibles, on utilise la forme suivante:

 ELEMENT : mot clé pour déclarer une balise

 nom : le nom de la balise

 (contenu) : représente soit un type de donnée prédéfini, soit une règle d'utilisation de l'élément.
Mr. AISSAOUA HABIB 14
Mr. AISSAOUA HABIB 15
Type DTD XML

Elément avec <!ELEMENT elt (s1, s2)> <elt>


plusieurs sous <!ELEMENT s1 EMPTY> <s1/>
éléments <!ELEMENT s2 EMPTY> <s2/>
</elt>

Elément avec <!ELEMENT elt (#PCDATA|s1)> <elt>texte</elt>


contenu <!ELEMENT s1 EMPTY> ou
variable <elt><s1/></elt>

Elément à <!ELEMENT elt ANY> <elt>texte</elt>


contenu non <!ELEMENT s1 EMPTY> ou
défini <elt><s1/></elt>
etc.

Mr. AISSAOUA HABIB 16


Il est possible de moduler le nombre d'apparitions d'un sous-élément en utilisant des quantifieurs
après les noms d'éléments:

Mr. AISSAOUA HABIB 17


Prenons l'exemple suivant:

Cette définition impose que la balise <personne/> contienne obligatoirement la balise <nom
/> puis éventuellement <prenom/>
Mr. AISSAOUA HABIB 18
Regardons alors la validité de ces documents XML :

Mr. AISSAOUA HABIB 19


Déclaration des attributs: Les attributs sont précisés dans l’instruction ATTLIST. Cette
dernière, étant indépendante de l’instruction ELEMENT, on précise à nouveau le nom de
l’élément sur lequel s’applique l’attribut. Une déclaration d'attributs typique aura la forme
suivante:

 ATTLIST : mot clé pour déclarer un attribut


 nom : le nom de la balise
 nom-attribut : le nom de l’attribut
 type : type de l’attribut
 CDATA : chaîne de caractères
 liste de valeurs possibles ("v1"|"v2"|"v3")
 valeur-par-defaut: valeur par défaut de l’attribut si aucune valeur n’est fournie
Mr. AISSAOUA HABIB 20
 Contrainte : définit les contraintes que doit respecter l’attribut, n’est pas obligatoire.

• REQUIRED : l’attribut est obligatoire

• IMPLIED : l’attribut est optionnel

• FIXED : la valeur de l’attribut est fixé

 Un attribut peut être déclaré comme identifiant unique d’un élément avec le mot clé ID. Un
attribut peut être déclaré comme référence vers un autre élément (clé étrangère) avec le mot clé
IDREF
Ainsi on pourra avoir une déclaration d'attribut comme suite:
Ce qui signifie que l'on affecte à l'élément disque deux attributs IDdisk et type. Le premier attribut
est un identifiant unique obligatoire. L'attribut type peut être soit K7, MiniDisc, Vinyl ou CD,
sachant que ce dernier sera affecté par défaut.
Mr. AISSAOUA HABIB 21
Mr. AISSAOUA HABIB 22
Mr. AISSAOUA HABIB 23
Mr. AISSAOUA HABIB 24
Mr. AISSAOUA HABIB 25
Mr. AISSAOUA HABIB 26

Vous aimerez peut-être aussi