slam:donneestructurees:le_format_xml_1

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
slam:donneestructurees:le_format_xml_1 [2024/12/19 15:02] – [Historique : de SGML à XML] dthevenotslam:donneestructurees:le_format_xml_1 [2024/12/20 09:13] (Version actuelle) – [Règles de composition] dthevenot
Ligne 4: Ligne 4:
 ====== Historique : de SGML à XML ====== ====== Historique : de SGML à XML ======
  
-**XML**(**Extensible Markup Language**) dérive d'un langage développé dans les années 80, le **SGML**(Standard Generalized Markup Language). Ce langage était complexe à apprendre et utiliser quotidiennement. Une version allégée, le **HTML** a donc été développée ; mais ce dernier, malgré de nombreuses adaptations, ne pouvait pas être étendu à l'infini, au fur et à mesure de l'augmentation des besoins des développeurs. C'est alors que fut créé le XML.+**XML**(**Extensible Markup Language**) dérive d'un langage développé dans les années 80, le **SGML**(Standard Generalized Markup Language). Ce langage était complexe à apprendre et utiliser quotidiennement. Une version allégée, le **HTML** a donc été développée ; mais ce dernier, malgré de nombreuses adaptations, ne pouvait pas être étendu à l'infini, au fur et à mesure de l'augmentation des besoins des développeurs. C'est alors que fut créé le **XML**.
 =====  ===== =====  =====
 Le XML est un dérivé du SGML. Il tente de se servir des principes de simplicité du HTML et de la souplesse SGML.  Le XML est un dérivé du SGML. Il tente de se servir des principes de simplicité du HTML et de la souplesse SGML. 
Ligne 14: Ligne 14:
 Une autre caractéristique importante est que dans un document XML, **la mise en forme des données est totalement séparée des données** elles-mêmes. Cela permet de séparer complètement l'information (le contenu) de son apparence (le contenant), et donc de fournir plusieurs types de sortie pour un même fichier de données, en fonction de l'utilisateur ou de l'application demandeuse (autre document XML, tableau, graphique, image, animation multimédia, fichier HTML, fichier PDF...). Une autre caractéristique importante est que dans un document XML, **la mise en forme des données est totalement séparée des données** elles-mêmes. Cela permet de séparer complètement l'information (le contenu) de son apparence (le contenant), et donc de fournir plusieurs types de sortie pour un même fichier de données, en fonction de l'utilisateur ou de l'application demandeuse (autre document XML, tableau, graphique, image, animation multimédia, fichier HTML, fichier PDF...).
 =====  ===== =====  =====
-Un document XML peut ainsi prévoir plusieurs cibles, comme par exemple l'écran d'un téléphone portable, celui d'un ordinateur de bureau, une base de données, une application logicielle, etc.+Un document XML peut ainsi prévoir **plusieurs cibles**, comme par exemple l'écran d'un téléphone portable, celui d'un ordinateur de bureau, une base de données, une application logicielle, etc.
  
-De plus, la possibilité de créer les éléments que l'on désire permet de rendre le fichier lui-même lisible et modifiable- par un être humain : on peut donner aux informations contenues dans un tel fichier les étiquettes que l'on veut, et les ordonner selon son désir.+De plus, la possibilité de créer les éléments que l'on désire permet de rendre le fichier lui-même **lisible et modifiable**- par un être humain : on peut donner aux informations contenues dans un tel fichier les étiquettes que l'on veut, et les ordonner selon son désir.
 =====  ===== =====  =====
-Il est également possible d'effectuer des sélections par tri, des générations automatiques de tables des matières et bien d'autres choses encore, grâce au langage de feuilles de style XSLT.+Il est également possible d'effectuer des sélections par tri, des générations automatiques de tables des matières et bien d'autres choses encore, grâce au langage de feuilles de style **XSLT**.
 ===== Caractéristiques de XML ===== ===== Caractéristiques de XML =====
  
-  * il est destiné à décrire le contenu du document, pas son affichage (les feuilles de style CSS et XSL gèrent l'affichage), +  * il est destiné à décrire le **contenu du document**, pas son affichage (les feuilles de style CSS et XSL gèrent l'affichage), 
-  * il est flexible, on peut définir ses balises, et les utiliser dans un ou plusieurs documents, +  * il est **flexible**, on peut définir ses balises, et les utiliser dans un ou plusieurs documents, 
-  * le document ne sera affiché que s'il est bien formé et valide (s'il suit une DTD ou un schéma),+  * le document ne sera affiché que s'il est bien formé et valide (s'il suit une **DTD** ou un **schéma**),
 =====  ===== =====  =====
-  * il est lisible pour l'humain (l'information contenue sera toujours accessible, contrairement aux fichiers de certains logiciels, par exemple, il est impossible de visualiser du RTF sans un logiciel qui connaisse ce format),+  * il est **lisible pour l'humain** (l'information contenue sera toujours accessible, contrairement aux fichiers de certains logiciels, par exemple, il est impossible de visualiser du RTF sans un logiciel qui connaisse ce format),
   * le document XML est un texte qui n'est pas destiné à être lu par l'humain (mais le fait que ce soit un texte permet aux experts d'utiliser un éditeur de texte pour corriger le fichier).    * le document XML est un texte qui n'est pas destiné à être lu par l'humain (mais le fait que ce soit un texte permet aux experts d'utiliser un éditeur de texte pour corriger le fichier). 
 =====  ===== =====  =====
Ligne 35: Ligne 35:
 =====  ===== =====  =====
 En pratique, et dans un souci de normalisation et de généralisation, il peut s'avérer nécessaire d'ajouter un troisième fichier à l'ensemble : En pratique, et dans un souci de normalisation et de généralisation, il peut s'avérer nécessaire d'ajouter un troisième fichier à l'ensemble :
-  - Optionnel : un fichier peut être nécessaire pour définir a priori les balises auxquelles le document XML pourra avoir recours. Ce fichier peut être soit une Document Type Definition soit un Schema (voir plus loin dans le cours) ;+  - Optionnel : un fichier peut être nécessaire pour définir a priori les balises auxquelles le document XML pourra avoir recours. Ce fichier peut être soit **une Document Type Definition soit un Schema** (voir plus loin dans le cours) ;
   - Le document contenant les données elles-mêmes, c'est-à-dire le document XML à proprement parler (une instance du document, au sens SGML) ;   - Le document contenant les données elles-mêmes, c'est-à-dire le document XML à proprement parler (une instance du document, au sens SGML) ;
   - Le document contenant les informations de mise en forme, permettant de produire un fichier dans le format de sortie voulu : une feuille XSLT (eXtensive Stylesheet Language Transformations).   - Le document contenant les informations de mise en forme, permettant de produire un fichier dans le format de sortie voulu : une feuille XSLT (eXtensive Stylesheet Language Transformations).
Ligne 50: Ligne 50:
 ==== 2)Exemple : une bibliographie ==== ==== 2)Exemple : une bibliographie ====
 <code> <code>
-<?xml version="1.0" encoding="ISO-8859-1"?>+<?xml version="1.0" encoding="UTF-8"?>
 <!-- La ligne ci-dessus est le prologue --> <!-- La ligne ci-dessus est le prologue -->
 <!-- Élément racine --> <!-- Élément racine -->
Ligne 132: Ligne 132:
 **Arborescence de l’exemple « bibliographie » :** **Arborescence de l’exemple « bibliographie » :**
 <code> <code>
-Biblio+biblio
 | |
 --- livre --- livre
Ligne 178: Ligne 178:
 </code> </code>
 =====  =====  =====  ===== 
- Arborescence Exemple2 :+ Arborescence Exemple2 :// à réaliser//
  
  
- 
- 
 =====  ===== =====  =====
 ==== Les attributs ==== ==== Les attributs ====
Ligne 210: Ligne 208:
 ==== Règles de composition ==== ==== Règles de composition ====
  
-Un document XML est bien formé ((well formed - l'analyseur XML peut construire son arborescence) si :+Un document XML est **bien formé** (well formed - l'analyseur XML peut construire son arborescence) si :
   - il contient une déclaration XML ;   - il contient une déclaration XML ;
   - il contient un ou plusieurs éléments ;   - il contient un ou plusieurs éléments ;
Ligne 216: Ligne 214:
   - les éléments non vides ont une balise de début et de fin ;   - 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 non vides sont correctement imbriqués (<P> <EM> ... </EM> </P>) ;
-  - les éléments vides ont un / à la fin de la balise avant le > ; 
   - les noms des balises ouvrantes et fermantes correspondent ;   - 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 ;   - un nom d'attribut apparaît uniquement dans la balise ouvrante et une seule fois dans cette balise ;
Ligne 229: Ligne 226:
   - Les balises n'ayant pas de contenu doivent se terminer par /> (voir la balise <img .../> ci-dessus) ;   - Les balises n'ayant pas de contenu doivent se terminer par /> (voir la balise <img .../> ci-dessus) ;
 =====  ===== =====  =====
-**A vous de jouer (1), créez votre premier fichier XML bien formé :**+<badge>A vous de jouer (1), créez votre premier fichier XML bien formé :</badge>
  
-Proposer une présentation structurée au format XML des données contenues dans le texte ci-dessous :+**Proposer une présentation structurée au format XML des données contenues dans le texte ci-dessous :**
  
 Une bouteille d'eau Cristaline de 150 cl contient par litre 71 mg d'ions positifs calcium, et 5,5 mg d'ions positifs magnésium. On y trouve également des ions négatifs comme des chlorures à 20 mg par litre et des nitrates avec 1 mg par litre. Elle est recueillie à St-Cyr la Source, dans le département du Loiret. Son code barre est 3274080005003 et son pH est de 7,45. Comme la bouteille est sale, quelques autres matériaux comme du fer s'y trouvent en suspension.  Une bouteille d'eau Cristaline de 150 cl contient par litre 71 mg d'ions positifs calcium, et 5,5 mg d'ions positifs magnésium. On y trouve également des ions négatifs comme des chlorures à 20 mg par litre et des nitrates avec 1 mg par litre. Elle est recueillie à St-Cyr la Source, dans le département du Loiret. Son code barre est 3274080005003 et son pH est de 7,45. Comme la bouteille est sale, quelques autres matériaux comme du fer s'y trouvent en suspension. 
Ligne 244: Ligne 241:
 Il peut s’écrire dans n’importe quel éditeur de texte (blocnote, notepad) et il existe des éditeurs spécifiques pour xml (XMLSpy, Editix, …) Il peut s’écrire dans n’importe quel éditeur de texte (blocnote, notepad) et il existe des éditeurs spécifiques pour xml (XMLSpy, Editix, …)
  
-  +**Exemple 3 de fichier XML**
- +
-**Exemple 3 de fichier XML**  +
-  +
- +
-**Travail à faire** +
- +
-  - Quelle est la balise racine du fichier XML de l’exemple 3 ?  +
-  - Réalisez l’arbre du fichier XML de l’exemple 3. +
- +
-Exemple 4 de fichier XML+
 <code> <code>
-1. <?xml version="1.0" encoding="ISO-8859-1"?>+1. <?xml version="1.0" encoding="UTF-8"?>
 2. <course numéro="8"> 2. <course numéro="8">
 3. <gagnant temps=35>Dupont</gagne> 3. <gagnant temps=35>Dupont</gagne>
Ligne 268: Ligne 255:
 </code> </code>
  
-**Travail à faire**+<badge>A vous de jouer (2)</badge>
  
 +  - Quelle est la balise racine de l’exemple 3.
 +  - Réalisez l’arbre du fichier XML de l’exemple 3.
   - Ce fichier est mal formé, indiquez les numéros de ligne qui posent problème et expliquer le problème.   - Ce fichier est mal formé, indiquez les numéros de ligne qui posent problème et expliquer le problème.
   - Proposez une correction pour rendre bien formé le document XML ci-dessus en respectant une logique de structuration des informations.   - Proposez une correction pour rendre bien formé le document XML ci-dessus en respectant une logique de structuration des informations.
  • slam/donneestructurees/le_format_xml_1.1734616949.txt.gz
  • Dernière modification : 2024/12/19 15:02
  • de dthevenot