Introduction à XML les transformations : XSLT

Formation XML les transformations : XSLT, tutoriel & guide de travaux pratiques en pdf.

Intérêts de XML

Deux points importants :
1. XML est un standard ouvert et accepté
2. XML est une solution complète de stockage, manipulation, transformation, etc. de données structurées
Standard ) économie de développement. Produits disponibles :
1. éditeur
2. analyseur syntaxique
3. validateur (vérification de cohérence)
4. moteur de transformation
5. etc.

XML comme format de fichier

Le standard et ses extensions proposent : support de très nombreux encodages (Unicode, ISO Latin, etc.) ) international inclusion et macro (très élémentaires) contraintes de structure :
Document Type Definition (DTD), l’ancienne solution
schéma, les nouvelles solutions
méta-organisation : namespace
liens évolués : XPointer et Xlink
stockage :
bases de données XML (langage de requêtes XQuery en cours de standardisation)
compression spécialisée
calcul de différences (gestion de version)

XML pour le programmeur

Le standard et ses extensions proposent :
analyse syntaxique :
modèle objet : Document Object Model (DOM)
modèle évènementiel : Simple API for Xml (SAX)
sérialisation
validation (en général intégrée à l’analyseur) :
DTD
schéma
moteur de transformation (d’un document XML en un autre) : XSLT
expressions rationnelles XML : XPath Outils Open Source par le groupe apache http://xml.apache.org :
Xerces : analyse syntaxique et validation
Xalan : transformation et expressions rationnelles (voir aussi Saxon, http://saxon.sourceforge.net/)

Applications

Outils et normes utiles :
base de connaissances : Ressource Description Framework (RDF)
transformation vers HTML et WML : XSLT
impression de qualité : XSL :FO
dessin vectoriel : Scalable Vector Graphics (SVG)
animation : SMIL
mathématiques : MathML
RPC en XML : xmlrpc et SOAP
etc.
Outils Open Source par le groupe apache http://xml.apache.org :
FOP : support de XSL :FO
Batik : support de SVG

LE LANGAGE XML

Données structurées
XML permet de représenter des données structurées :
données textuelles (binaire : codage, par exemple basé sur mime)
organisées :
on manipule un document constitué d’éléments
un élément peut être constitué simplement de texte ou contenir d’autres éléments (ou un mélange des deux)
un élément peut être associé à des informations complémentaires, les attributs
la structure est celle d’un arbre :
un document XML = un arbre un élément = un nœud de l’arbre
le standard indique comme traduire l’arbre en un texte XML, pas comment organiser les données

Exemple

but : stocker l’annuaire de Dauphine (nom, prénom, bureau, numéro de poste, email)
le texte du document : les informations !
organisation : s’arranger pour que les informations restent correctement groupées (ne pas mélanger les données !)
Exemple (suite)
Traduction en XML de l’arbre :
annuaire1.xml
1 <?xml version= »1.0″ encoding= »ISO-8859-1″?>
2 <annuaire>
3 <personne>
4 <nom>Rossi</nom>
5 <prenom>Fabrice</prenom>
6 <bureau>B520</bureau>
7 <poste>4823</poste>
8 <email>Fabrice.Rossi@dauphine.fr</email>
9 </personne>
10 <!– suite de l’annuaire –>
11 </annuaire>
inclusion textuelle , relation mère-fille dans l’arbre balise ouvrante ou fermante , nom d’un nœud texte ) feuille de l’arbre
Ne pas confondre les éléments (information) et les balises (syntaxe).

Organisation

On organise les données en décidant de la structure de l’arbre :
le nom des éléments
l’ordre des éléments
les relations d’inclusion
la position des données (c’est-à-dire du texte)
les contraintes sur les données (texte quelconque, valeur numérique, etc.)
les attributs
Une organisation particulière forme un dialecte XML, par exemple :
MathML : pour décrire des équations
xbel : pour décrire des signets
SVG : dessin vectoriel
XHTML : HTML re-spécifié en XML etc.

1. XML :
(a) introduction
(b) le langage
(c) les DTD
(d) les espaces de noms
2. les schémas
3. API de manipulation :
(a) SAX
(b) DOM
4. les transformations : XSLT

Cours gratuitTélécharger le cours complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *