Introduction au langage XML

Notions de balisage et principes du balisage XML

Nous avons vu des "ensembles d'information" :

  • de type dictionnairique,

  • de type documentaire,

  • de type grammatical (phrastique),

  • présents dans un corpus.

Nous allons nous concentrer sur deux exemples :

  • le petit garçon lit un livre (cf. analyse d'une phrase)

  • « mon voisin, un hélicar à la ramasse, avait le look 2050 » Benjamin Souline (cf. analyse d'un article de dictionnaire)

Ces deux exemples nous permettrons de voir concrètement comment la catégorisation de l'information opère en XML

ExempleExemple : le petit garçon lit un livre

Cet exemple comporte les informations suivantes :

le est un déterminant (abréviation : Dét),

petit est un adjectif (abréviation : Adj),

garçon est un nom (abréviation : N),

lit est un verbe (abréviation : V),

un est un déterminant (abréviation : Dét),

livre est un nom (abréviation : N).

De la notion d'information à la notion de balise

Notion - Abréviation - Balises

Baliser une information

Comment catégoriser le ?

Nous allons utiliser une balise. Cette balise se divisera en balise ouvrante et balise fermante : <DET>le</DET>.

Que remarquons-nous ?

  • Les deux balises, ouvrante et fermante, sont indiquées par les chevrons < et > ;

  • Elles portent le même nom DET (sans accent), précédé de / pour la balise fermante.

    Le couple de balise <DET> </DET>

Balisage d'autres élements de la phrase

Reprenons.

On catégorise une information en la munissant d'une balise.

  • Une balise est double : une balise ouvrante et une balise fermante. On dira que la balise est « parenthésante »

    (c'est-à-dire se comporte comme des parenthèses).

  • Les balises ouvrante et fermante ont le même nom.

  • Un nom de balise ne peut pas comporter d'accent.

  • Une balise ouvrante s'écrit : < (chevron ouvrant) + nom de la balise + > (chevron fermant).

  • Une balise fermante s'écrit : < (chevron ouvrant) + / (slash) + nom de la balise + > (chevron fermant).

Regroupons les éléments

Donc, une fois ses mots catégorisés, la phrase le petit garçon lit un livre s'écrira :

<DET>le</DET><ADJ>petit</ADJ><N>garçon</N><V>lit</V><DET>un</DET><N>livre</N>.

RemarqueOn écrit la séquence « au kilomètre » : la coupure se fait en fin de ligne et on peut avoir :…………..<V>lit</V>< ou : ………….<V>lit</V><DET>un</DET>.

Catégorisons les syntagmes

Nous venons de catégoriser des mots. On peut aussi catégoriser des syntagmes comme le petit garçon.

Nous utiliserons les mêmes noms de catégories que précédemment. Un syntagme nominal sera appelé NP. Les balises ouvrante et fermante seront donc <NP> et </NP>

« le petit garçon » est un syntagme nominal s'écrira donc : <NP>le petit garçon</NP>

Cela met en évidence l'absence de blancs entre les balises et le contenu de ces balises (il n'y a pas de blanc avant « le » et après « garçon »).

Nous venons de catégoriser globalement le syntagme nominal le petit garçon (<NP>le petit garçon</NP>).

Appliquons cela à « mon voisin, un hélicar à la ramasse, avait le look 2050 » Benjamin Souline

Cet exemple est une citation suivie de son auteur. On aura donc :

<CIT>mon voisin, un hélicar à la ramasse, avait le look 2050</CIT><AUT>Benjamin Souline</AUT>.

RemarqueLes noms de balise sont en majuscule ou minuscule ?

<CIT> est mis pour « citation » et <AUT> pour « auteur ».<CIT> et <AUT> sont en majuscules (on pourrait avoir <Cit> et <Aut>, ou simplement <cit> et <aut>.

Les guillemets ont disparu ; <CIT> et </CIT> sont les équivalents de guillemets.

Les exercices de pratique : Balisez les contenus suivants avec XML

Exercice 1. Dans la phrase suivante, balisez « le groupe nominal « la fille du directeur » et le nom « élèves » (vous utiliserez « NP » pour baliser le groupe nominal et « N » pour baliser le nom) : les élèves regardent la fille du directeur.

Exercice 2. Dans l'extrait de catalogue de bibliothèque suivant, balisez le nom de l'auteur (vous utiliserez « AUT ») et le titre (vous utiliserez « TIT ») : Lebrun, Pierre, L'art de la coiffure, Paris, Editions du cheveu, 1972.

Exercice 3. Dans l'article de dictionnaire suivant, balisez la date d'apparition et la définition (utilisez « DATE» et « SENS ») : OPALE [opal] XIIe siècle. Pierre précieuse.

Voir le corrigé ici

AttentionDes balises dans des balises

Le syntagme nominal « la fille du directeur » comporte des noms (N), des déterminants (DET) et une préposition (PREP).

Reprenons le balisage de ce syntagme en incluant les balises de ses composants :

<NP><DET>la</DET><N>fille</N><PREP>de</PREP><DET>le</DET><N>directeur</N></NP>

RappelA retenir !

1. La frappe se fait « au kilomètre » : en fin de ligne, on passe à la ligne, quelle que soit la coupure.

2. Il n'y a aucun blanc parce que tous les mots sont balisés

3. Les noms des balises sont mnémotechniques.

4. Il n'y a jamais d'accents (c'est-à-dire pas de signe diacritique) dans le nom d'une balise.

Complément

Un peu de lexique

Lexique de balisage

Balise et contenu

Remarque :

Les noms des balises ne peuvent comporter aucun signe diacritique (accent, cédille, « ° » sur le « a » en suédois, « v » sur le « c » en tchèque, etc.), nous l'avons vu. Ils ne peuvent pas non plus comporter de blancs :

<Groupe Nominal> serait impossible (en revanche, <Groupe_Nominal> serait possible, le soulignement, underscore en anglais, remplaçant le blanc).

Obtenir un fichier XML

Les balises que nous venons de voir sont des balises XML (nous verrons plus loin ce que signifie XML).

Lorsqu'on balise de l'information, cette information devient un fichier (comme une musique ou un film deviennent un fichier sonore ou audio-visuel).

Mais pour avoir un fichier XML, il faut impérativement avoir une balise ouvrante en début de fichier et la balise fermante correspondante en fin de fichier. Ces deux balises contenant tout le document constituent la balise racine du document XML.

Fondamental

Sans balise de début et de fin, nous n'avons qu'une séquence balisée.

Avec une balise de début et de fin, nous avons un fichier XML.

Cette différence est très importante pour la suite.

Balises et codage de surface

Reprenons le balisage d'une donnée bibliographique en balisant aussi l'ensemble de la référence bibliographique (avec « REF ») afin d'obtenir un fichier XML :

<REF><AUT><NOM>Lebrun</NOM><PRENOM>Pierre</PRENOM></AUT><TIT>L'art de la coiffure</TIT><VILLE>Paris</VILLE>

<EDITEUR>Editions du cheveu</EDITEUR><DATE>1972</DATE></REF>

On remarque que toutes les virgules et les blancs avant ou après une balise ont disparu (donc sauf les blancs à l'intérieur d'un contenu entre deux balises), comme les guillemets de la citation avaient disparu !

Pourquoi ?

Les blancs qui ont disparu et les signes typographiques « de codage » (ou « séparateurs ») sont du codage que l'on pourra facilement reproduire à l'édition.

1. Les blancs

Prenons la séquence (« AP » signifie syntagme adjectival) :

<AP><ADV>tout à fait</ADV><ADJ>faux</ADJ></AP>

Lorsqu'on écrit, il y a un blanc entre « tout à fait » et « faux » ; ce blanc peut être mis automatiquement à l'édition. En revanche, ce serait impossible pour les blancs entre « tout » et « à » et entre « à » et « fait ».

2. Les séparateurs

Les guillemets pour les citations, les virgules dans une notice documentaire sont une convention de lecture.

Jusqu'à présent, nous avons présenté les séquences balisées et les fichiers XML « en continu » (ou « frappe au kilomètre »).

  • Pour la machine, c'est parfait.

  • Pour l'humain, ce n'est pas très lisible et cela peut conduire à faire des fautes d'écriture.

Il existe une présentation plus pratique et facile à lire pour l'humain : la présentation indentée ou présentation avec indentation.

NB. L'anglais indentation signifie dentelure, alinéa.

Comment indenter un fichier XML ?

De la séquence balisée au fichier XML indenté[zoom...]

De la référence au fichier XML

De la référence au fichier XML

On appelle « balise racine » la balise qui prend TOUS les éléments comme contenu.

La balise racine et le prologue du fichier XML

MéthodeMettre des balises,c'est comme parenthéser...

Scénarisation : Trouver un mode d'édition pour mettre en évidence les correspondances de balises

De la séquence balisée à la représentation parenthésée

De la séquence balisée à la représentation parenthésée

RappelRésumé de la leçon

1. « Syntaxe » des noms de balises : chevron ouvrant + nom de la balise sans blancs ni signes diacritiques + chevron fermant (balise fermante : le chevron ouvrant est précédé d'un slash, /)

2. Pour s'y retrouver, il faut donner des noms de balise à caractère mnémotechnique

3. L'humain a besoin d'une présentation avec indentation ; cela n'a aucun intérêt pour la machine

4. Une balise constitue un parenthésage et se divise en deux : une balise ouvrante et une balise fermante

5. Les balises peuvent s'emboîter les unes dans les autres (en anglais, embedding, enchâssement) si nécessaire (par exemple, « auteur » comprendra « nom » + « prénom » ; autrement dit, « nom » et « prénom » seront emboîtés (ou « enchâssé) dans « auteur »

6. Les conditions pour obtenir un « vrai » fichier XML (et non une simple séquence balisée) : à chaque balise ouvrante doit correspondre une balise fermante et vice versa ; il doit y avoir une « balise racine » qui ouvre et clôt l'ensemble des balises ; le fichier commence par un prologue qui donne des indications sur le fichier (par exemple, la version du langage XML utilisée)

Nous allons apprendre à construire une grammaire en XML. On appelle « DTD » une telle grammaire.

PrécédentPrécédentSuivantSuivant
AccueilAccueilImprimerImprimerRéalisé avec Scenari (nouvelle fenêtre)