XML - Maîtriser documents et outils essentiels
À propos de ce cours
- Concepts de base
- Introduction, Historique, Premiers outils
- Structure d’un document XML
- Détails du format XML, Modélisation
- Validation d’un document XML
- Validité d’un document, Document Type Definitions (DTD) .
- XML Schemas .
- RelaxNG et XPath
- RelaxNG, XPath .
- Transformation d’un document
- Feuilles de styles CSS, XSLT
- Structures de contrôle XSLT
- XQuery et les bases de données XML
- XQuery, Bases de données XML
- API W3C DOM
- Principes, Document DOM en mode création
- Document DOM en mode lecture, API DOM dans d’autres langages
- Validation en JAVA
- API SAX
- Simple API for XML, Programmation d’un analyseur
- Traitement d’un document XML, API XMLWriter de PHP
- XML dans le SGBD PostgreSQL
- XML dans un SGBD, PHP, PostgreSQL et XML
- Autres formats de données internet
Programme du cours
Objectifs d'apprentissage
- Maîtriser les concepts fondamentaux du XML, y compris sa structure, sa modélisation et son historique.
- Apprendre à valider des documents XML à l'aide de DTD, de schémas XML et de RelaxNG.
- Utiliser XPath pour naviguer efficacement dans des documents XML.
- Maîtriser les transformations XML avec XSLT et les feuilles de style CSS.
- Exploiter XQuery pour interroger des bases de données XML.
- Manipuler des documents XML via les API DOM et SAX, y compris en Java et PHP.
- Intégrer XML dans des systèmes de gestion de bases de données comme PostgreSQL.
Public cible
Ce cours s'adresse aux développeurs, ingénieurs logiciels, analystes de données et professionnels de l'informatique souhaitant acquérir une expertise approfondie dans la manipulation et la gestion de documents XML. Il est également adapté aux étudiants en informatique ou en sciences des données cherchant à maîtriser les technologies XML pour le traitement structuré de l'information.
Concepts de base
Le cours commence par une introduction au XML, retraçant son historique depuis le SGML jusqu'à son adoption massive comme standard d'échange de données. Vous découvrirez les premiers outils XML et leur évolution. La structure d'un document XML sera expliquée en détail, avec ses éléments, attributs et règles de syntaxe. Vous apprendrez également les principes de modélisation XML pour concevoir des documents bien formés et adaptés à vos besoins.
Validation d'un document XML
La validation est cruciale pour garantir la qualité des documents XML. Ce module couvre les DTD (Document Type Definitions) pour définir la structure autorisée, ainsi que les schémas XML (XSD) offrant des fonctionnalités avancées de typage. Vous comparerez ces approches avec RelaxNG, un schéma alternatif plus simple et flexible.
RelaxNG et XPath
RelaxNG sera étudié comme solution de validation intuitive, avec sa syntaxe compacte. XPath sera approfondi comme langage de navigation puissant pour localiser des nœuds spécifiques dans un document XML, essentiel pour les transformations et requêtes ultérieures.
Transformation d'un document
Les feuilles de style CSS appliqueront une présentation basique aux documents XML. XSLT sera exploré en profondeur pour transformer des documents XML en d'autres formats (HTML, PDF, etc.). Vous maîtriserez les structures de contrôle XSLT (boucles, conditions) pour des transformations complexes.
XQuery et bases de données XML
XQuery, le "SQL du XML", permettra d'interroger efficacement des collections de documents XML. Vous découvrirez également les bases de données XML natives et leur utilisation pour stocker et rechercher des données structurées.
API W3C DOM
Le DOM (Document Object Model) sera étudié comme interface standard pour manipuler des documents XML en mémoire. Vous programmerez en Java pour créer, lire et valider des documents via le DOM, avec des exemples concrets d'implémentation.
API SAX
Contrairement au DOM, SAX (Simple API for XML) permet un traitement séquentiel et économe en mémoire. Vous coderez un analyseur SAX et exploiterez l'API XMLWriter de PHP pour générer dynamiquement des documents XML.
XML dans PostgreSQL
Enfin, vous explorerez l'intégration du XML dans PostgreSQL : stockage de documents XML, fonctions de requêtage dédiées, et interaction avec PHP. Le cours abordera aussi brièvement d'autres formats de données internet (JSON, YAML) en comparaison avec XML.