1. Département de mathématique et informatique
PrEsenter par :
Baich Marwa
Encadrer par :
M.Belangour
Master SII
2. 1
I
Qu'est-ce que le XML ?
Exemple
III
Grammaire et Typage
IV
Les API : JDOM et SAX
V
Historique
Le format XSLT
VI
3. XML signifie Extensible Markup Language ;C’ est standard reconnu par le W3C depuis
février 1998,
Il est dérive du SGML dont il représente un sous ensemble,
La version 1.0 est disponible depuis 1998
Le SGML à l'origine du XML
SGML (Standard Generalized Markup Language) (ISO 8879) est le langage de
référence en GED.
SGML est devenu une norme internationale en 1986.
SGML permet de distinguer la structure d'un texte de son contenu.
4. décrire les données de manière aussi bien compréhensible par les
hommes qui écrivent les documents XML que par les machines qui les
exploitent.
Le XML se veut également compatible avec le web afin que les
échanges de données puissent se faire facilement à travers le réseau
Internet.
Le XML se veut donc standardisé, simple, mais surtout extensible et
configurable afin que n'importe quel type de données puisse être décrit.
Les objectifs du XML
6. Spécifications de XML
Un document XML peut être représenté sous la forme d'un Arbre. Il
possède une racine et chaque Elément représente un nœud.
eXtended Markup Language
le langage XML est un langage qui permet de décrire des données à l'aide
de balises et de règles que l'on peut personnaliser.
7. EXEMPLE : STRUCTURATION D'UN RÉPERTOIRE
Votre répertoire doit comprendre au moins 2 personnes. Pour chaque
personne, on souhaite connaître les informations suivantes :
•Son sexe (homme ou femme).
•Son nom.
•Son prénom.
•Son adresse.
•Un ou plusieurs numéros de téléphone (téléphone portable, fixe,
bureau, etc.).
•Une ou plusieurs adresses e-mail (adresse personnelle, professionnelle,
etc.).
8. eXtended Markup Language
Langage descriptif utilisant des éléments déclarés en
utilisant des balises
<element attribute="value" />
<element attribute="value" >
texte …&entité; …
</element>
Élément
Attribut
Texte
Entité
9. Entête XML
Fichier XML toujours le même entête
Déclaration
- version = 1.0
- encoding = latin1
<?xml version="1.0" encoding="latin1"?>
<?xml version="1.0" encoding="UTF-8"?>
10. DTD
définie l’ensemble des éléments et attributs (pas XML)
XML Schéma
définie les éléments, les attributs et leurs types.
11. ( Document Type Définition)
Elle va permettre de définir la structure interne d'un document XML,
Son l' utilisation est facultative.
Un document répondant à une DTD est dit VALIDE.
La Validation processus de vérification d’un document XML :
Les données sont dans le bonne ordre,
Les données sont dans le bon format,
Les champs obligatoires sont présents,….
Un document BIEN FORME n'est pas forcément VALIDE
La DTD peut prendre deux formes :
soit interne, incluse dans une feuille XML ·
soit externe, dans un fichier spécifique permettant sa réutilisation.
La DTD
13. Les défauts des DTD
Un nouveau format Le typage de données
Le typage des données
Les Schémas XML permettent tout d'abord de typer les données..
Les contraintes
Nous découvrirons aussi que les Schémas XML permettent d'être beaucoup plus
précis que les DTD lors de l'écriture des différentes contraintes qui régissent un
document XML.
Des définitions XML
Un des principaux avantages des Schémas XML est qu'ils s'écrivent grâce au
XML. Ainsi, pour exploiter un document XML et le Schéma qui lui est associé,
vous n'avez en théorie plus besoin de plusieurs outils.
1 2
XML Schéma
14. L'extension du fichier
les Schémas XML soient écrits avec un langage de type XML, le fichier n'a pas
extension. Un fichier dans lequel est écrit un Schéma XML porte l'extension
Le prologue
<?xml version="1.0" encoding="UTF-8" ?>
Structure d'un schéma XML
16. <personne sexe="masculin">Robert DUPONT</personne>
<xsd:attribut name="sexe" type="xsd:string" />
Pour indiquer une valeur par défaut c'est l'attribut default
Pour indiquer une valeur constante, c'est l'attribut fixed
Pour indiquer qu'un attribut est obligatoire la propriété use .à laquelle nous
affectons la valeur required
<xsd:attribut name="prenom" type="xsd:string" use="required" />
17. (Extensible Stylesheet Language Transformations)
est un langage XML qui sert à passer d’un format XML à un autre format texte (XML,
XHTML/HTML, CSV…).
Il existe deux recommandations du W3C respectivement pour des versions 1.0
et 2.0. La version 1.0 reste davantage exploitée, au moment de la rédaction de cet
ouvrage, que la version 2.0 pour plusieurs raisons :
• poids de l’existant ;
• les navigateurs ne gèrent que la version 1.0 ;
• encore trop peu de librairies pour la version 2.0.
XSLT 1.0 est fortement couplé à XPath 1.0 alors que XSLT 2.0 est associé à XPath
2.0.
18.
19. L'extension du fichier
L'extension portée par les documents XSLT est ".xsl"
Le prologue
<?xml version="1.0" encoding="UTF-8" ?>
Le corps
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
</xsl:stylesheet>
Structure d'un document XSLT
l'élément racine
espace de noms
20. Le parseur est l’élément de programmation le plus important, puisque
c’est lui qui réalise le travail d’analyse du document XML. Son rôle est de
vérifier la cohérence du document
XML (en termes syntaxique et/ou par rapport à un schéma ou une DTD) et
de transmettreà l’application les informations utiles au traitement du
document.
21. La technologie SAX
SAX (Simple API for XML) définit un mode de communication entre le
parseur et l’application, lié à un mécanisme événementiel
Étapes d’utilisation de SAX
Création du modèle objet du document
Création de SAX parseur
Création de DocumentHandler pour changer le
document XML en instance du modèle objet
22. une application basée sur SAX peut gérer uniquement les éléments dont
elle a besoin sans avoir à construire en mémoire une structure contenant
l'intégralité du document. L'API SAX définit les quatre interfaces
suivantes :
Document Handler possédant des méthodes renvoyant des événements
relatifs au document :
Start Document() renvoyant un événement lié à l'ouverture du document
Start Elément() renvoyant un événement lié à la rencontre d'un nouvel
élément
characters() renvoyant les caractères rencontrés
end Elément() renvoyant un événement lié à la fin d'un élément
end Document() renvoyant un événement lié à la fermeture du document
ErrorHandler possédant des méthodes renvoyant des événements relatifs
aux erreurs ou aux avertissements
DTDHandler renvoie des événements relatifs à la lecture de la DTD du
document XML
EntityResolver permet de renvoyer une URL lorsqu'une URI est
rencontrée
23. JDOM est une API du langage Java développée indépendamment de Sun
Microsystems. Elle permet de manipuler des donnés XML plus simplement qu'avec
les API classiques. Son utilisation est pratique pour tout développeur Java et
repose sur les API XML de Sun. JDOM permet donc de construire des documents,
XML, de naviguer dans leur structure, s'ajouter, de modifier, ou de supprimer leur
contenu.
La technologie JDOM
24. Créer un document XML avec JDOM :
L’API JDOM
Il vous faut dans un premier temps télécharger la dernière version de JDOM .
Il suffit ensuite de rendre accessible le fichier /build/jdom.jar, en le plaçant dans
votre classpath.
Création d’un document XML avec JDOM:
• Il suffit de construire chaque élément puis de les ajouter les uns aux autres
de façon logique.
• Un nœud est une instance de org.jdom.Element.
• Nous commençons donc par créer une classe JDOM1 qui va se charger de
créer l'arborescence suivante :
XSLT ou eXtensible Stylesheet Language Transformations est une technologie qui permet de transformer les informations d'un document XML vers un autre type de document comme un autre document XML ou encore une page web. C'est d'ailleurs ce dernier cas que nous aborderons au cours de cette partie
Le principe de fonctionnement est assez simple : un document XSLT est associé à un document XML afin de créer un nouveau document d'une nature différente ou identique
L'extension du fichier
Comme c'était le cas pour les DTD et les schémas XML, nous allons prendre l'habitude d'écrire nosdocuments XSLT dans un fichier distinct du document XML dont les données seront transformées.
L'extension portée par les documents XSLT est ".xsl".
Le prologue
Puisque la technologie XSLT utilise un langage de type XML, nous n'allons pas déroger à la règle duprologue.
Ainsi, la première ligne d'un document XSLT est :