Encoder pour échanger : une introduction à la TEI
author: Lou Burnard et C.M. Sperberg-McQueen
language: fr
availability: Copyright 2012 TEI Consortium. This is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This material is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See the GNU General Public License for more details. A c

La TEI Lite : encoder pour échanger : une introduction à la TEI
Edition finale révisée pour la TEI P5

Lou Burnard et C. M. Sperberg-McQueen

traduction française de Sophie David

Paris, avril 2013

Note liminaire

TEI Lite est le nom adopté pour ce que les éditeurs de la TEI avaient conçu au départ comme un simple exposé du schéma d’encodage, en tant qu’il pouvait traiter 90% des besoins de 90% des utilisateurs. Rétrospectivement, il était assez prévisible que beaucoup de gens allaient penser que la TEI Lite constituait toute la TEI, ou allaient trouver que TEI Lite était bien trop lourde pour leurs besoins.

La TEI Lite, à l’origine (1996), était largement fondée sur l’observation des pratiques d’encodage des textes, en particulier celles qui ont été mises en œuvre pour les collections d'Oxford Text Archive ou bien pour d’autres de la même époque. Il n’est donc pas surprenant qu’elle soit devenue, sinon un standard, du moins un point de départ pour des centres d’édition électronique ou des projets d’encodage, et ce dans le monde entier. Sans doute, la production de ce court manuel, facile à lire, y aura aussi contribué.

Un certain nombre de centres d’édition électronique et des projets de bibliothèques numériques ont été les premiers intéressés à la TEI Lite. Celle-ci a également été adoptée par quelques systèmes auteur, et par des tutoriels d’introduction, beaucoup d’entre eux étant rédigés dans des langues autres que l’anglais (une liste des versions précédentes peut être consulteé à : )

En 2002, après la publication de la TEI version 4 (désormais TEI P4), soit la version XML des Recommandations (TEI Guidelines), qui utilisait la génération de la TEI Lite comme un exemple de mécanisme de modification de la TEI, une version légèrement révisée et se conformant désormais à XML, a été produite. Puis, en 2006, a été publiée une version remaniée de manière plus substantielle, fondée sur les Recommandations de la version 5 (désormais TEI P5). Cette version reflétait les nombreux changements entre TEI P4 et TEI P5, mais n’était pas par ailleurs notablement différente. En 2012, le TEI Technical Council a décidé qu’une nouvelle version devait être produite, de telle sorte que la documentation demeure cohérente avec la dernière version de TEI P5 (2.1.) Cette version a recours à un mécanisme récemment ajouté dans l’architecture générale, qui permet de définir uniquement les éléments qui sont à inclure dans un schéma (et non plus ceux qui sont à exclure). Il est ainsi probable qu'elle resiste mieux que les versions précédentes aux évolutions futures de la TEI .

Lou Burnard, août 2012

Ce document constitue une introduction aux Recommandations de la Text Encoding Initiative (TEI). Il décrit un sous-ensemble spécifique du schéma complet TEI. Il peut être utilisé pour encoder une grande variété de caractéristiques textuelles courantes, ce qui permet d’une part de maximiser l’utilisation (et la réutilisation) de transcriptions électroniques et d’autre part de faciliter les échanges entre des chercheurs utilisant des ordinateurs de systèmes différents. Ce schéma est entièrement compatible avec le schéma complet TEI, tel que celui-ci est défini dans TEI P5, Guidelines for Electronic Text Encoding and Interchange, février 2006, documents disponibles sur le site web du Consortium :http://www.tei-c.org

Introduction

Les Recommandations de la Text Encoding Initiative (TEI) s’adressent à tous ceux qui souhaitent échanger des informations stockées sous forme électronique. Elles mettent l’accent sur l’échange d’informations textuelles, mais d’autres types de données, tels que les images et les sons, sont également pris en compte. Les Recommandations s’appliquent aussi bien à la création de nouvelles ressources qu’aux échanges de ressources existantes.

Les Recommandations fournissent les moyens de rendre explicites certaines caractéristiques d’un texte, de façon à faciliter le traitement de ce texte par des logiciels fonctionnant sur des plateformes différentes. Cette tâche d’explicitation est appelée balisage ou encodage. Toute représentation textuelle met en jeu une forme ou une autre de balisage ; la TEI a été créée en partie pour résoudre les questions d’incommunicabilité entre ces formats d’encodage, et en partie à cause de l’éventail toujours plus diversifié et toujours plus important des usages scientifiques des textes électroniques.

Les Recommandations de la TEI décrivent un schéma d’encodage, qui peut s’exprimer dans différents langages formels. Dans les premières éditions, les Recommandations utilisaient SGML (Standard Generalized Markup Language) ; depuis 2002, celui-ci a été remplacé par XML (Extensible Markup Language). Ces langages partagent en commun la capacité de pouvoir définir un texte en termes d’éléments, d’attributs, et de règles régissant leur apparence dans un texte. L’utilisation que la TEI fait de XML est ambitieuse dans sa complexité et dans sa généralité. Mais elle n’est pas fondamentalement différente de tous les autres schémas XML proposés. N’importe quel logiciel fondé sur un XML généraliste peut ainsi traiter des textes conformes à la TEI.

Depuis 2001, la TEI est un projet collectif s’appuyant sur un consortium international. Au départ, il s’agissait d’un projet de recherche soutenu par l’Association for Computers and the Humanities, l’Association for Computational Linguistics, et l’Association for Literary and Linguistic Computing. Il a été financé ses cinq premières années par le U.S. National Endowment for the Humanities, le Directorate General XIII of the Commission of the European Communities, la Fondation Andrew W. Mellon, le Social Science and Humanities Research Council of Canada entre autres. Les Recommandations ont été publiées la première fois en mai 1994, après 6 ans de travaux impliquant de nombreux chercheurs du monde entier, issus de différentes disciplines.

Durant les années qui ont suivi, les Recommandations ont eu beaucoup d’influence dans le développement des bibliothèques numériques, dans le domaine des industries de la langue, et même dans le développement du web lui-même. Le Consortium TEI a été mis en place en janvier 2001. Une année plus tard, il publiait des Recommandations entièrement révisées, et désormais fondées sur XML. En 2004, le Consortium procédait à une refonte majeure des Recommandations, pour tirer pleinement parti des nouveaux langages à schéma. Une première version a été publiée en 2005. La révision du document TEI Lite est conforme à la version 2.1. des Recommandations, soit la version TEI P5 la plus récente, qui est sortie en juin 2012.

A l’origine, les objectifs généraux de la TEI ont été définis par la résolution finale de la conférence préparatoire, qui s’est tenue au Vassar College (New-York), en novembre 1987. Ces « Principes de Poughkeepsie » ont été ensuite précisés dans une série de documents, qui établissaient notamment que les Recommandations, devaient :

- être suffisamment précises pour représenter les caractéristiques textuelles d’un texte, intéressant des chercheurs ;
- être simples, claires et concrètes ;
- être utilisables facilement par les chercheurs et ne pas nécessiter l'utilisation de logiciels spécifiques ;
- permettre une définition rigoureuse et des traitements efficaces des textes ;
- prévoir des extensions définies par l’utilisateur ;
- respecter les standards existants ou émergents.

Le monde de la recherche est vaste et divers. Pour que les Recommandations suscitent une large adhésion, il était important de s’assurer que :

- le noyau commun de caractéristiques textuelles soit facile à partager ;
- des traits spécialisés soient faciles à ajouter (ou à supprimer) ;
- des encodages multiples et parallèles d’une même caractéristique soient possibles ;
- la richesse du balisage puisse être déterminée par l’utilisateur, et ce, avec un minimum de connaissances ;
- une documentation pertinente relative au texte et à son encodage soit fournie.

Le présent document, qui se nomme TEI Lite, décrit un sous-ensemble des éléments et des recommandations de la TEI, qui ont été établis à partir des objectifs et des principes rappelés ci-dessus.

Avec la sélection opérée parmi les centaines d’éléments définis dans le schéma TEI complet, nous nous sommes efforcés d’identifier un sous-ensemble, comprenant des éléments que (presque) tous les utilisateurs devraient connaître.

Ce sous-ensemble doit répondre aux objectifs suivants :

- permettre d’appréhender adéquatement une variété raisonnablement grande de textes, avec le degré de précision des pratiques existantes (cf. par exemple, le traitement des collections d’Oxford Text Archive)
- être utile à la production de nouveaux documents (tel que celui-ci), mais aussi à l’encodage de textes existants
- être utilisable par une grande variété de logiciels XML existants
- être dérivé du schéma TEI complet et être défini en se conformant aux méthodes d’adaptation décrites dans les Recommandations
- être aussi simple et petit que possible, en respectant les autres buts.

Le lecteur jugera jusqu'à quel point nous avons realisé ces objectifs.

Bien que nous ayons essayé de rendre ce document indépendant, tel que l’est un tutoriel, le lecteur doit être conscient qu’il ne décrit pas en détail la totalité de la TEI. Tous les éléments décrits ici sont entièrement documentés dans les Recommandations. Celles-ci constituent la documentation de référence, qui doit être consultée aussi bien pour les éléments décrits ici que pour tous les autres qui ne sont pas décrits. On suppose que le lecteur a un savoir de base à propos de XML.

Un court exemple

Nous commençons par un bref exemple[^1] Son but est d’illustrer ce qui se passe quand un passage en prose est saisi sur ordinateur par une personne qui n’est pas au fait du balisage ou du potentiel des textes électroniques. Dans un monde idéal, un tel résultat pourrait être généré par un scanner optique très précis. Il tente de rester fidèle à l’apparence du texte imprimé, en retenant les mêmes fins de lignes que l’original, en insérant des blancs pour représenter la disposition des titres originaux et les fins de page, et ainsi de suite, et en gardant la ponctuation originelle.

[^1: La version originelle de ce tutoriel contient un exemple du roman Jane Eyre dans une édition anglaise du XIXème siecle ; nous présentons ce même passage retrouvé dans une traduction francaise de la même période. Pour la plupart des autres exemplaires, par contre, nous avons tenté de retrouver un texte d'origine française.]

Transcription naive d'un texte imprimé

Cette transcription présente quelques défauts :

- les numéros de pages et les titres se mêlent au texte de manière telle qu’un logiciel aurait beaucoup de difficultés à les « démêler » ;
- avec le maintien des césures, toute procédure de recherche peu élaborée ne pourra pas trouver les mots coupés ;
- la division en paragraphes est indiquée seulement par des espaces, et des retours à la ligne ont été insérés à la fin de chaque ligne. Tout changement dans la taille de la police, entrainera de facto des problèmes de mise en page ;
- les guillemets ont été retenus, mais ils n’identifient pas précisément les passages au discours direct. Par exemple la mention « John était un vieux serviteur etc. » n'est pas prononcé par John, bien qu'entouré de guillemets.

Nous présentons maintenant le même passage, avec un encodage conforme aux Recommandations. Comme nous allons le voir, cet encodage pourrait être étendu de bien des façons, mais la TEI nous permet, au minimum, de représenter les distinctions suivantes :

- la division en paragraphes et en chapitre est maintenant indiquée explicitement ;
- les débuts de page ont été balisées par l’élément vide <pb> ;
- les lignes du document original n’ont pas été retenues et les césures ont été supprimées, sans qu’il y ait de commentaire ;
- pour faciliter la correction, une nouvelle ligne a été insérée au début de chaque paragraphe, et l’alinéa a été supprimé ;
- les mots faisant partie d'un discours direct sont balisés explicitement ;
- l'usage d'une police différente pour le titre du chapitre est indiqué; par contre, les titres courants ont été supprimés.

<pb n="239"/>
<div n="XXXVIII" type="chapitre">
  <head rend="petitMajuscules">conclusion.</head>
  <p>J’ai enfin épousé M. Rochester. Notre mariage se fit sans bruit; lui, moi, le
    ministre et le clerc, étions seuls présents. Quand nous revînmes de l’église, j’entrai
    dans la cuisine, où Marie préparait le dîner, tandis que John nettoyait les couteaux. </p>
  <p> «<q>Marie</q>, dis-je, <q>j’ai été mariée ce matin à M. Rochester.</q> » </p>
  <p>La femme de charge et son mari appartenaient à cette classe de gens discrets et
    réservés auxquels on peut toujours communiquer une nouvelle importante sans crainte
    d’avoir les oreilles percées par des exclamations aiguës, ni d’avoir à supporter un
    torrent de surprises. Marie leva les yeux et me regarda. Pendant quelques minutes elle
    tint suspendue en l’air la cuiller dont elle se servait pour arroser deux poulets qui
    cuisaient devant le feu, et John cessa de polir ses couteaux. Enfin Marie, se penchant
    vers son rôti, me dit simplement : </p>
  <p>« <q>En vérité, mademoiselle ? Eh bien, tant mieux, certainement.</q> » </p>
  <p>Au bout de quelque temps elle ajouta : « <q>Je vous ai bien vue sortir avec mon
      maître ; mais je ne savais pas que vous alliez à l’église pour vous marier.</q> » </p>
  <p>Et elle continua d’arroser son rôti. </p>
  <p>Quand je me tournai vers John, je vis qu’il ouvrait la bouche si grande qu’elle
    menaçait d’aller rejoindre ses oreilles. </p>
  <p> « <q>J’avais bien averti Marie que cela arriverait,</q> dit-il. <q>Je savais que M.
      Édouard</q> (John était un vieux serviteur et avait connu son maître alors qu’il
    était encore cadet de famille ; c’est pourquoi il l’appelait souvent par son nom de
    baptême), <q>je savais que M. Édouard le ferait, et j’étais persuadé qu’il
      n’attendrait pas longtemps ; je suis sûr qu’il a bien fait.</q> » </p>
  <p>En disant ces mots, John tira poliment ses cheveux de devant. </p>
  <p> « <q>Merci, John,</q> répondis-je. <q>Tenez, M. Rochester m’a dit de vous donner
      ceci, à vous et à Marie.</q> » Et je lui remis un billet de cinq livres. </p>
  <p> Sans plus attendre je quittai la cuisine. Quelque temps après, en repassant devant
    la porte, j’entendis les mots suivants : </p>
  <p> « <q>Elle lui conviendra mieux qu’une grande dame.</q> » Puis : « <q>Il <pb n="240"/> y en a de plus jolies, mais elle est bonne et n’a pas de défauts. Du reste, il
      est facile de voir qu’elle lui semble bien belle.</q> » </p>
  <p> J’écrivis immédiatement à Moor-House, pour annoncer ce que j’avais fait. Je donnai
    toutes les explications nécessaires dans ma lettre. Diana et Marie m’approuvèrent
    entièrement. Diana m’annonça qu’elle viendrait me voir après la lune de miel. </p>
  <p> « <q>Elle ferait mieux de ne pas attendre jusque-là, Jane,</q> me dit M. Rochester,
    lorsque je lui lus la lettre ; <q>car la lune de miel brillera sur toute notre vie, et
      ses rayons ne s’éteindront que sur votre tombe ou sur la mienne.</q> » </p>
  <p>...</p>
</div>

L’encodage ci-dessus a été construit sur un ensemble de choix et de priorités : nous avons ici considéré que le texte de Brontë en tant que tel était plus important que son édition. Nous avons ainsi supprimé le tiret de césure, sans pour autant l’avoir marqué (cf. par exemple « de de-vant » dans l’édition, « de devant » dans l’encodage). Encoder c’est donc toujours faire des choix. Un encodage explicite seulement les caractéristiques textuelles qui importent à l’encodeur. Et il est facile d’imaginer différentes manières d’étendre l’encodage d’un passage même aussi court. Par exemple :

- des gloses ou des commentaires en notes de bas de page pourraient être ajoutés ;
- des liens associant des parties de ce texte à d’autres pourraient être ajoutés ;
- on pourrait faire ressortir du contexte des noms propres de différentes sortes ;
- des données bibliographiques détaillées sur la provenance du texte et son contexte pourraient être ajoutées dans l’en-tête ;
- une analyse linguistique en phrases, en propositions, en mots, etc. pourrait être fournie, où chaque unité serait pourvue de sa catégorie ;
- le texte pourrait être segmenté en unités narratives ou en unités discursives ;
- on pourrait annoter chaque passage de discours pour comparer le discours des personnages de différentes classes ou de différents sexes ;
- on pourrait inclure dans l’encodage l’analyse systématique ou l’interprétation du texte, et ce avec des alignements et des associations potentiellement complexes entre le texte et l’analyse, ou entre le texte et une ou plusieurs de ses traductions ;
- des passages pourraient être liés à des images ou à du son, stockés sur d'autres supports.

L’encodage de la plupart de ces extensions est décrit dans la suite du document. Le schéma TEI dans sa totalité fournit également un large éventail d’autres possibilités. Nous en citerons uniquement quelques-unes :

- analyse détaillée des constituants d’un nom ;
- méta-informations détaillées sur les origines du texte et sur ses thèmes ;
- informations sur l’histoire de son impression, ou sur ses variantes manuscrites, telles qu’on pourrait les observer dans les différentes versions du même texte.

Pour savoir comment procéder dans ces différents cas, mais aussi pour connaître beaucoup d’autres possibilités, on se reportera aux Recommandations.

La structure d’un texte TEI

Tous les textes qui se conforment à la TEI comprennent : (a) un en-tête TEI (balisé avec l’élément <teiHeader>) (b) la transcription du texte (balisé avec l’élément <text>). Ces deux éléments sont associés pour former un seul élément <TEI>, qui doit être déclaré dans l’espace de noms TEI[^2].

[^2: Un espace de noms est un concept XML. Son rôle est d’identifier le vocabulaire à partir duquel un ensemble d’éléments sont conçus. Pour ce faire, on utilise un identifiant standard, qui ressemble à une adresse web. L’espace de noms pour tous les éléments TEI est : "http://www.tei-c.org/ns/1.0".]

L’en-tête TEI fournit des informations analogues à celles de la page de titre d’un texte imprimé. Il comporte au plus 4 parties :

- une description bibliographique
- une description portant sur la manière dont il a été encodé (traîtement des césures, guillemets, etc.)
- une description « non-bibliographique » du texte (un text profile)
- l’historique des modifications et révisions

L’en-tête est décrit de manière détaillée dans la section La page titre électronique.

Un document TEI peut être unitaire (une œuvre) ou composite (un recueil d’œuvres, comme une anthologie). Dans les deux cas, le texte peut comporter des Parties liminaires ou des Annexes. Entre les deux, se trouve le corps du texte. Dans un texte composite, le corps peut rassembler des groupes, chaque groupe contenant d’autres groupes ou des textes.

Un texte unitaire sera encodé en utilisant une structure comme celle-ci :

<TEI>
  <teiHeader/>
  <text>
    <front/>
    <body/>
    <back/>
  </text>
</TEI>

Un texte composite peut également comporter des Parties liminaires ou des Annexes. Entre les deux, on aura un ou plusieurs groupes de textes, chaque groupe pouvant avoir ses propres Parties liminaires et ses Annexes. Un texte composite sera alors encodé en utilisant une structure comme celle-ci :

<TEI>
  <teiHeader/>
  <text>
    <front/>
    <group>
      <text>
        <front/>
        <body/>
        <back/>
      </text>
      <text>
        <front/>
        <body/>
        <back/>
      </text>

    </group>
    <back/>
  </text>
</TEI>

Il est aussi possible de définir un texte composite rassemblant des textes TEI complets, chacun d’entre eux étant pourvu de son propre en-tête. Un tel recueil est appelé TEI Corpus, et peut avoir son propre en-tête:

<teiCorpus><teiHeader/><TEI>
  <teiHeader/>
  <text/>
</TEI><TEI>
  <teiHeader/>
  <text/>
</TEI></teiCorpus>

Il est également possible de créer un ensemble de corpus - un élément <teiCorpus> peut contenir d’autres éléments <teiCorpus> plutôt que des éléments <TEI>, et ce quelle que soit la profondeur.

Dans la suite du document, nous discuterons surtout des structures textuelles simples. Dans chaque cas, nous présenterons a) les éléments TEI pertinents, avec pour chacun une brève définition ; b) les attributs spécifiques de chaque élément, et leur définition ; c) la référence à la classe dont l’élément est un membre. Ces références sont associées aux spécifications complètes de chaque objet, comme cela est présenté dans les Recommandations. La plupart des cas sont illustrés par de brefs exemples.

Par exemple, voici les éléments dont on a discuté jusqu’à maintenant :

L’encodage du corps du texte

Comme nous l’avons indiqué, un document TEI simple rassemble les éléments suivants : Les éléments traitant spécifiquement des Parties liminaires et des Annexes sont décrits ci-dessous dans la section Les Parties liminaires et les Annexes. Dans cette section, nous discutons des éléments constituant le corps d’un texte.

Les éléments marquant la division du texte

Le corps d’un texte en prose peut être une simple suite de paragraphes ; ou bien, ces paragraphes peuvent être regroupés en chapitres, sections, sous-sections, etc. Chaque paragraphe est balisé par la balise <p>. L’élément <div> indique un regroupement de paragraphes.

On utilise l’attribut @type de l’élément <div> pour indiquer la dénomination usuelle de la division, ou sinon pour distinguer plusieurs divisions. Typiquement, ses valeurs sont « livre », « chapitre », « section », « partie », « poème », « chanson », etc. Dans un projet particulier, il est conseillé de définir la liste des valeurs possibles et de s’y tenir.

Un élément <div> peut contenir des <div> enchâssés, reflétant ainsi la structure traditionnelle d’un livre : il peut être décomposé hiérarchiquement en parties, chapitres, sections, etc. Les textes TEI se conforme généralement à un modèle hiérarchique simple.

On utilise l’attribut @xml:id pour indiquer l’identifiant unique de la division. Ce qui est utile pour faire des références croisées ou simplement faire référence à une division donnée, via un commentaire par exemple. Voir aussi ci-dessous Les références croisées et les liens Il est souvent utile d’associer l’attribut @xml:id à chaque unité structurelle importante du texte, et d’établir ses valeurs de manière systématique. Par exemple en ajoutant un numéro de section à un code court pour faire référence au titre de l’œuvre. C’est aussi particulièrement utile si la ressource a vocation à être disponible sur le web : les autres applications web pourront facilement pointer directement les parties du texte.

On utilise l’attribut @n pour attribuer (de manière additionnelle ou de manière alternative) un nom mnémotechnique ou un nombre à une division, ou bien à n’importe quel autre élément.

On utilise l’attribut @xml:lang pour spécifier la langue d’une division. Les langues sont identifiées par un code défini au niveau international. Voir ci-dessous.

On utilise l’attribut @rend pour spécifier l’apparence d’une division, ou de n’importe quel autre élément. Voir ci-dessous. Tout comme avec l’attribut @type, il est souvent utile de prédéfinir les valeurs possibles de cet attribut. La TEI Lite ne contraint pas l’expression des valeurs de @rend.

Ces 4 attributs @xml:id, @n, @xml:lang et @rend sont si largement utilisés qu’ils s’appliquent à n’importe quel élément du schéma TEI : ce sont des attributs globaux. D’autres attributs globaux définis dans la TEI Lite sont discutés dans la section Les types spéciaux de liens.

La valeur de chaque attribut @xml:id doit être unique dans un même document. Une manière simple de s’en assurer est de vérifier qu’elle reflète la structure hiérarchique du document. Par exemple, prenons le roman Les Misérables de Victor Hugo, qui est divisé en cinq tomes, dont chacun contient plusieurs livres, chaque livre comprenant des chapitres. L’attribut @xml:id pourrait avoir la structure suivante :

<div xml:id="LM01" n="I" type="tome">
  <div xml:id="LM0101" n="1" type="livre">
    <div xml:id="LM010101" n="I.1" type="chapitre"/>
    <div xml:id="LM010102" n="I.2" type="chapitre"/>

  </div>
  <div xml:id="LM0102" n="Ii" type="livre">
    <div xml:id="LM010201" n="II.1" type="chapitre"/>
    <div xml:id="LM010202" n="II.2" type="chapitre"/>

  </div>
</div>

Un système de numérotation différent peut être utilisé pour les attributs @xml:id et @n, ce qui est souvent utile lorsqu’un schéma de référence ne concorde pas avec la structure de l’œuvre. Par exemple, prenons un roman en plusieurs tomes, chaque tome comprend des chapitres numérotés en fonction de l’ensemble des tomes (et non à l’intérieur de chaque tome). On pourrait utiliser le schéma suivant :

<body>
  <div xml:id="TS01" n="I" type="livre">
    <div xml:id="TS011" n="1" type="chapitre"/>
    <div xml:id="TS012" n="2" type="chapitre"/>
  </div>
  <div xml:id="TS02" n="II" type="livre">
    <div xml:id="TS021" n="3" type="chapitre"/>
    <div xml:id="TS022" n="4" type="chapitre"/>
  </div>
</body>

Ici, l’œuvre comprend toujours deux volumes, chaque volume contenant deux chapitres. Les chapitres ont été numérotés de 1 à 4, mais les valeurs de @xml:id, qui ont été spécifiées, permettent en outre de les considérer comme s’ils avaient été numérotés 1.1, 1.2, 2.1, 2.2.

Les têtes et fins de chapitre

Chaque <div> peut commencer par un titre ou une tête de chapitre, et se terminer (moins couramment) par une formule de fermeture, telle que « Fin du chapitre 1 ». On utilise alors les éléments suivants : D’autres éléments qui peuvent être nécessaires au début ou à la fin d’une division sont discutés dans la section Différents types de liminaires.

Que les têtes de chapitre et fins de chapitre soient inclus ou non dans la transcription relève du choix de l’encodeur. Quand une tête de chapitre est complètement régulière (par exemple « Chapitre 1 ») ou peut être automatiquement générée à partir de la valeur des attributs (par exemple <div type="chapter" n="1">), on peut l’omettre. Mais quand elle contient du texte qu’on ne peut retrouver autrement, on doit toujours ajouter le texte. Par exemple, le début de Notre-Dame de Paris de Victor Hugo pourrait être encodé comme suit:

<div xml:id="NDP01" n="I" type="livre">
  <head>Livre premier</head>
  <div n="I.1" type="chapitre">
    <head>La Grand'salle</head>
    <p>Il y a aujourd'hui trois cent quarante-huit ans six mois et dix-neuf jours que
      les parisiens s'éveillèrent au bruit de toutes les cloches sonnant à grande
      volée dans la triple enceinte de la Cité, de l'Université et de la Ville. </p>

  </div>
</div>

La prose, les vers et le théâtre

Comme dans l’exemple de Brontë ci-dessus, les paragraphes formant une division textuelle sont balisés avec <p>. Les textes poétiques ou le théâtre demandent d’autres balises, pour représenter par exemple les vers, les strophes dans le premier cas, le discours des individus et les indications scéniques dans le second.

Par exemple, voici un poème de Baudelaire où les vers et les strophes ont été balisés :

<text><body>
  <lg type="quatrain">
    <l>Les amoureux fervents et les savants austères</l>
    <l>Aiment également, dans leur mûre saison,</l>
    <l>Les chats puissants et doux, orgueil de la maison,</l>
    <l>Qui comme eux sont frileux et comme eux sédentaires.</l>
  </lg>
  <lg type="quatrain">
    <l>Amis de la science et de la volupté</l>
    <l>Ils cherchent le silence et l'horreur des ténèbres ;</l>
    <l>L'Erèbe les eût pris pour ses coursiers funèbres,</l>
    <l>S'ils pouvaient au servage incliner leur fierté.</l>
  </lg>
  <lg type="tercet">
    <l>Ils prennent en songeant les nobles attitudes</l>
    <l>Des grands sphinx allongés au fond des solitudes,</l>
    <l>Qui semblent s'endormir dans un rêve sans fin ;</l>
  </lg>
  <lg type="tercet">
    <l>Leurs reins féconds sont pleins d'étincelles magiques,</l>
    <l>Et des parcelles d'or, ainsi qu'un sable fin,</l>
    <l>Etoilent vaguement leurs prunelles mystiques.</l>
  </lg>
</body></text>

Notons que l’élément <l> indique la ligne du vers et non la ligne typographique. La disposition en lignes des premiers vers, ci-dessus, n’a pas été explicitement encodée, et risque donc d'être perdue. On peut utiliser l’élément <lb>, décrit dans la section Les numéros de pages et les numéros de ligne, si l’on souhaite aussi marquer le début d’une ligne typographique.

Voici la fin d’une pièce de théâtre de Samuel Beckett, dans laquelle les répliques et les indications scéniques sont encodées :

<sp><speaker>Vladimir</speaker><p>Relève ton pantalon.</p></sp>
<sp><speaker>Estragon</speaker><p>Que j'enlève mon pantalon ?</p></sp>
<sp><speaker>Vladimir</speaker><p><emph>RE</emph>lève ton pantalon.</p></sp>
<sp><speaker>Vladimir</speaker><p> C'est vrai. </p>
  <stage>Il relève son pantalon. Silence.</stage></sp>
<sp><speaker>Vladimir</speaker><p>Alors, on y va ?</p></sp>
<sp><speaker>Estragon</speaker><p>Allons-y.</p></sp>
<stage>Ils ne bougent pas.</stage>

Notons que l’élément <stage> (‘indication scénique’) peut apparaître ou bien dans la réplique ou bien entre deux répliques. L’élément <sp> (speech ou énoncé) contient, après l’élément optionnel <speaker>, qui indique qui parle, ou bien des paragraphes (si la réplique est en prose) ou bien des vers ou des strophes (comme dans l’exemple suivant). Dans ce cas, il est assez courant de trouver des vers coupés. La façon la plus simple d’encoder ceci est d’utiliser l’attribut @part pour indiquer qu’une ligne (ou un ensemble de lignes) est incomplète de point de vue métrique comme par exemple dans ce passage de Molière :

<sp><speaker>Alceste.</speaker>
  <l>Non : j' ai résolu de n' en pas faire un pas.</l>
  <l part="I">J' ai tort, ou j' ai raison.</l>
</sp><sp><speaker>Philinte.</speaker>
  <l part="F">Ne vous y fiez pas.</l>
</sp><sp><speaker>Alceste.</speaker>
  <l part="I">Je ne remuerai point.</l>
</sp><sp><speaker>Philinte.</speaker>
  <l part="F">Votre partie est forte,</l>
  <l part="I">et peut, par sa cabale, entraîner...</l>
</sp><sp><speaker>Alceste.</speaker>
  <l part="F">Il n' importe.</l>
</sp><sp><speaker>Philinte.</speaker>
  <l part="I">Vous vous tromperez.</l>
</sp><sp><speaker>Alceste.</speaker>
  <l part="F">Soit. J' en veux voir le succès.</l>
</sp>

Le même mécanisme peut être appliqué à des strophes qui sont divisées entre deux locuteurs, par exemple[^3] :

<div>
  <sp>
    <speaker>PREMIERE VOIX</speaker>
    <lg type="stanza" part="I">
      <l>« Mais qu’est-ce qui fait filer ce bateau</l>
      <l>Sans vague, sans un souffle d’air ? »</l>
    </lg>
  </sp>
  <sp>
    <speaker>SECONDE VOIX</speaker>
    <lg part="F">
      <l>« L’air se fend devant lui à son approche,</l>
      <l>Et puis se referme derrière.</l>
    </lg>
  </sp>

</div>

[^3: Extrait du Dit du Vieux Marin de Samuel Taylor Coleridge, traduction francaise de Marianne van Hirtum (1965)]

On peut également utiliser l’élément <sp> pour le dialogue en prose, comme s’il s’agissait de théâtre. Voir l’exemple[^4] ci-dessous, qui fait usage de l’attribut @who. Cet attribut porte un code permettant d’identifier le locuteur dans le dialogue.

<p> Peu à peu les voix du salon
  s’affaiblirent ; la comtesse resta seule avec une de ses amies, mademoiselle Fanny
  B***. Toutes deux se trouvèrent bientôt dans la chambre et devant mes yeux.</p>
<sp who="#FAN"><speaker>FANNY.</speaker>
  <p>Quel fâcheux contretemps ! La pluie tombe à torrents, et pas une voiture
  !</p></sp>
<sp who="#GAM"><speaker>GAMIANI.</speaker>
  <p>Je suis désolée comme vous ; par malencontre, ma voiture est chez le
  sellier.</p></sp>
<sp who="#FAN"><speaker>FANNY.</speaker>
  <p>Ma mère sera inquiète.</p></sp>
<sp who="#GAM"><speaker>GAMIANI.</speaker>
  <p>Soyez sans crainte, ma chère Fanny, votre mère est prévenue ; elle sait que vous
    passez la nuit chez moi. Je vous donne l’hospitalité.</p>
</sp>

Dans ce cas, les valeurs de l'attribut @who (#GAM par exemple) pointent sur une liste des personnages du roman, chacun ayant un identifiant unique correspondant:

<list>
  <head>Caractères du roman</head>
  <item xml:id="FAN"><name>Fanny</name> B. : jeune victime fictive </item>
  <item xml:id="GAM">La comtesse <name>Gamiani</name> : héroine du roman, prétendument
    une représentation de l'écrivain Amantine Dudevant ("George Sand")</item>
</list>

[^4: Extrait du Gamiani ou Deux nuits d’excès de Alfred de Musset (1833)]

Les numéros de pages et les numéros de ligne

Les coupures de pages, de lignes, etc. peuvent être balisées par les éléments suivants : Ces éléments indiquent un endroit précis dans le texte et non un empan. On utilise l’attribut global @n pour enregistrer le numéro de la page ou de la ligne commençant à la balise.

Pour l'encodage des sources paginées, comme des imprimés ou des manuscrits, il peut être utile d’enregistrer les sauts de page ou de feuillet au point d'apparition dans le flux du texte, afin notamment de lier le texte aux images de pages (fac-similés), de générer automatiquement une référence bibliographique à la page, etc. Enregistrer les sauts de ligne peut aussi être utile à fin de référence, par exemple pour une édition critique avec des notes qui se réfèrent à des numéros de ligne.

On peut enregistrer plusieurs paginations, par exemple celle d'un manuscrit original et celle d'une édition imprimée de référence, en distinguant les sauts de pages grâce à l'attribut @ed. Par exemple, dans le passage suivant, nous indiquons où se trouvent les débuts de page dans deux éditions différentes (ED1 et ED2). Nous indiquons également qu'un fac-similé de la page 240 dans l'édition ED1 est disponible dans le fichier p240.png :

<p><q>Il <pb n="240" ed="ED1" facs="p240.png"/> y en a de plus jolies, mais elle est
    bonne et n’a pas de défauts. Du reste, il est facile de voir qu’elle lui semble bien
    belle.</q> » </p>
<p> J’écrivis immédiatement à Moor-House, <pb n="240" ed="ED2"/> pour annoncer ce que
  j’avais fait. Je donnai toutes les explications nécessaires dans ma...</p>

Les éléments <pb> et <lb> appartiennent à la classe générale des éléments milestone, qui permet d’indiquer des points de référence dans un texte. L’élément générique <milestone> sert à indiquer n’importe quel point de référence : par exemple, le début d'une colonne, le début d’un nouveau type de section, qui ne serait pas balisé autrement, et plus généralement, n’importe quel changement significatif dans le texte qui ne serait pas balisé par un élément XML. Pour ces types d’unités ou bien pour les éditions, on utilise les attributs @unit et @ed. Leurs valeurs sont librement choisies, mais doivent être documentées dans l’élément <refsDecl> de l’en-tête. Ces attributs ne doivent pas être mélangés de manière arbitraire : soit on utilise l’élément <milestone> à la place des autres attributs, soit on utilise ces attributs.

Le marquage des expressions mises en valeur

Les changements de police de caractères, etc.

Les mots ou les expressions mis en valeur sont ceux qui sont visuellement différents du reste du texte ; il s’agit typiquement d’un changement de police, de style d’écriture, de couleur, etc., dont le but est d’attirer l’attention du lecteur. On peut se servir de la balise suivante pour signaler de tels changements:

L’attribut global @rend peut être associé à n’importe quel autre élément, et utilisé chaque fois que nécessaire pour spécifier la mise en valeur. Par exemple, un titre en gras peut être balisé par <head rend="bold"> et un titre en italiques par <head rend="italic">.

Les valeurs de l’attribut @rend ne sont pas spécifiées dans les Recommandations, car elles dépendent entièrement des besoins du projet. Typiquement, ses valeurs sont « italiques », « gras », « exposant », etc. pour le style de la police ; « centré », « aligné à droite » pour l’alignement ; « grand », « petit » pour la taille ; « petitesMajuscules », « majuscules » pour les caractères, etc. Plusieurs de ces valeurs peuvent être combinées si cela est nécessaire, et il n’y pas de syntaxe particulière pour exprimer ces combinaisons. Les Recommandations proposent aussi des mécanismes d’encodage plus rigoureux que celui offert par @rend. Ils reposent sur les standards du W3C (comme les CSS).

Ce n’est pas toujours possible ou souhaitable d’interpréter les raisons qui ont présidé à telle ou telle mise en valeur. On peut alors utiliser l’élément <hi> pour marquer la séquence mise en valeur, sans pour autant faire d’interprétation quant à son statut.

Dans l’exemple suivant, le fait d’utiliser une police de caractères différente pour le nom présent dans le sous-titre et pour le sous-titre lui-même, est enregistré mais non interprété.

<p><hi rend="gothic">Item; il est attesté par le présent acte</hi>, que ledit <hi rend="italic">Walter Shandy</hi>, négociant, en
considération dudit futur mariage
      ...</p>

De manière alternative, quand on sait interpréter la mise en valeur, un certain nombre d’autres éléments spécifiques sont disponibles :

Pour illustrer les éléments que nous avons définis, arrêtons-nous sur la phrase suivante[^5] : ‘Dans un récent numéro du Bulletin des bibliothèques de France, des collègues affirmaient avec enthousiasme, et non sans bravoure, que les bibliothèques n’avaient pas, loin s’en faut, « disparu de la cité », mais qu’elles se trouvaient au contraire investies d’une « nouvelle pertinence ».’

[^5: Nous avons trouvé cette phrase sur un page web de l'ENSSIB]

Si l’on décide d’interpréter la mise en valeur, la phrase pourrait être encodée de la manière suivante :

<p>Dans un récent
numéro du <title>Bulletin des bibliothèques de France</title>, des collègues
affirmaient avec enthousiasme, et non sans bravoure, que les bibliothèques n’avaient
pas, loin s’en faut, « <mentioned>disparu de la cité</mentioned> », mais qu’elles se
trouvaient au contraire investies d’une « <mentioned>nouvelle pertinence</mentioned>
»</p>

Si on est intéressé uniquement par la mise en forme de l'original, on pourrait l'encoder ainsi :

Dans un récent numéro du <hi rend="it">Bulletin des bibliothèques de France</hi>, des
collègues affirmaient avec enthousiasme, et non sans bravoure, que les bibliothèques
n’avaient pas, loin s’en faut, « <hi rend="it">disparu de la cité</hi> », mais
qu’elles se trouvaient au contraire investies d’une « <hi rend="it">nouvelle
  pertinence</hi> ».

Les citations et les éléments associés

Tout comme les changements de police de caractères, les guillemets sont utilisés de différentes manières dans les textes, le cas le plus le plus fréquent étant celui de la citation. Quand c’est possible, il importe de ne pas s’en tenir à noter la présence de guillemets, mais plutôt d’étiqueter leur fonction. On utilise alors les éléments suivants :

Voici un exemple simple d'une citation, extrait des Confessions de Jean-Jacques Rousseau :

<p>Enfin je me rappelai le pis-aller d’une grande princesse à qui l’on disait que les
  paysans n’avaient pas de pain, et qui répondit : <q>Qu’ils mangent de la
    brioche.</q></p>

Pour indiquer comment la citation a été imprimée (par exemple, sur la même ligne, ou un pavé), on utilise l’attribut @rend, qui permet également de spécifier le type de guillemets utilisé.

Le discours direct interrompu par le narrateur peut être simplement représenté en finissant la citation juste avant l’interruption et en la recommençant juste après. Par exemple dans La Quête du Graal (ms K, folio 169, § 55) on lit :

Et quant Melyan voit ces letres si dist a
             Galaad : <q>Frans chevaliers por Dieu lessiez moi entrer en cele a senestre, car en
               cele porrai je esprover ma force, et connoistre s’il avra ja en moi proesce ne
               hardement por quoi je doie avoir los de chevalerie.</q>
             <q>- S’il vos pleust</q>, fait Galaad, <q>je m’en entrasse en cele a senestre, car si
               com je pens je m’en getasse mielz que vos.</q>

S’il est important de signifier que les deux éléments <q> forment ensemble un seul bloc, on peut utiliser les attributs @next et @prev. Cf. section Les types spéciaux de liens.

On peut associer aux citations des références (par exemple la source, le nom du personnage, etc.), en utilisant l’attribut @who, que ces informations soient ou non explicitées dans le texte. Par exemple :

<q who="#Wilson"> Spaulding arriva au
bureau, je me rappelle que ce fut précisément il y a
aujourd’hui huit
        jours, avec ce même journal à la main et s’écria : <q who="#Spaulding">— Quel
          malheur, monsieur Wilson ! que je ne sois pas roux.</q></q>

Cet exemple[^6] montre aussi comment les citations peuvent être imbriquées dans d’autres citations : un personnage (Wilson) cite un autre personnage (Spaulding). Le créateur du texte électronique doit décider si les guillemets seront remplacés par des balises, ou si des balises seront ajoutées et les guillemets conservés. Si les guillemets sont supprimés, on peut utiliser l’attribut @rend pour décrire les guillemets de la copie papier.

[^6: Extrait d'une traduction du Red Headed League de A. Conan Doyle, .]

Les Recommandations proposent d’autres éléments permettant de distinguer le discours direct, la citation, et d’autres usages typiques des guillemets, bien qu’il ne soit pas toujours possible ou souhaitable d’interpréter la fonction des guillemets dans un texte. Pour des raisons de simplicité, seul <q> (qui peut être utilisé dans n’importe quel cas) fait partie de la TEI Lite.

Pour associer une citation bibliographique avec sa source par contre, on peut utiliser l'élément <bibl>, et emballer les deux dans l'élément <cit> (voir exemple Les listes).

Les mots étrangers ou les expressions

Les mots et les expressions qui ne sont pas dans la langue principale du texte peuvent être balisés de deux façons : i) si le mot ou l’expression est déjà balisé pour une raison quelconque par un élément, on associe à ce dernier l’attribut global @xml:lang, dont on spécifie la valeur (i.e. de quelle langue il s’agit) ; ii) sinon on utilise l’élément <foreign>, toujours avec l’attribut @xml:lang. Par exemple :

<foreign xml:lang="la">Et vobis</foreign> messieurs,
Ce ne seroyt que bon que nous rendissiez noz cloches...
              <p>Avez-vous lu <title xml:lang="de">Die Dreigroschenoper</title>?</p>
              <p>On parle des <mentioned xml:lang="en">people</mentioned> dans ce journal</p>
              <p>Le <term xml:lang="la">quaternio terminorum</term>, expression venant du latin,
                  <gloss>l'erreur des quatre termes, </gloss>est un sophisme qui intervient
                lorsqu'un syllogisme utilise quatre termes au lieu de trois.</p>

Comme ces exemples le montrent, l’élément <foreign> ne doit pas être utilisé pour baliser des mots étrangers si un autre élément plus spécifique, tel que <title>, <mentioned>, ou <term> s’applique. L’attribut global @xml:lang peut être associé à n’importe quel élément pour exprimer que son contenu n’est pas dans la même langue que celle qui l’entoure.

Les codes utilisés pour identifier les langues, indiquées dans l’attribut @xml:lang, doivent se conformer aux standards internet[^7], tels que cela est expliqué dans les Recommandations. Voici quelques exemples de codes :

[^7: La norme pertinente est Best Current Practice 47 (). La liste faisant autorité des sous-étiquettes est maintenue par IANA et est disponible à : .Pour un panorama général sur la construction des étiquettes de noms de langue, voir , et pour un guide pratique, voir :see .]

zh	chinois	grc	grec ancien
en	anglais	el	grec
enm	anglais du moyen age	ja	japonais
fr	francais	la	latin
de	allemand	sa	sanskrit

Les notes

Toutes les notes, qu’elles soient imprimées en bas de page, en fin de chapitre ou d’ouvrage, en marge, ou sous n’importe quelle autre forme doivent être balisées avec le même élément :

Ceci n’est pas toujours possible, notamment avec les notes en marge, qui peuvent ne pas être associées à un appel de note précis. Pour simplifier, on pourra positionner la note en marge avant le paragraphe ou tout autre élément pertinent. Les notes peuvent également être placées dans une partie séparée du texte (comme le sont les notes de fin de chapitre ou d’ouvrage dans les textes imprimés) et liées à la partie adéquate du texte. On utilise alors l’attribut @target.

Si besoin, on utilise l’attribut @n pour spécifier le numéro ou l’identifiant de la note. L’attribut @resp doit être utilisé de manière systématique pour distinguer les notes de l’auteur et les notes de l’éditeur, si l’œuvre comporte ces deux sortes de note.

Un exemple[^8] :

<p>J'écris dans la<lb/> marge...<lb/> Je vais<lb/> à la ligne.<lb/> Je renvoie à une
    note<note type="gloss" place="foot"> J'aime beaucoup les renvois en bas de page,
    même si je n'ai rien de particulier à y préciser.</note>en bas de page.</p>

Un autre exemple[^9] :

<lg>
  <note place="marge"> Le sortilège commence à se rompre.</note>
  <l>Au même instant je pus enfin prier ;</l>
  <l>Et de mon cou se libérant,</l>
  <l>L’Albatros vint à tomber, et coula</l>
  <l>Comme du plomb dans l’océan.</l>
</lg>

[^8: Georges Perec, Espèces d'espaces, 1974.]

[^9: Extrait du Dit du Vieux Marin de Samuel Taylor Coleridge, traduction francaise de Marianne van Hirtum (1965)]

Les références croisées et les liens

Des références croisées explicites et des liens d’un endroit du texte à un autre, que ce soit dans le même document ou entre deux documents différents, peuvent être encodés en utilisant les éléments décrits dans cette section. Les liens implicites (tels que l’association de deux textes parallèles, ou bien l’association d’un texte et de son interprétation) peuvent être encodés en utilisant les attributs présentés dans la section Les types spéciaux de liens.

Les références croisées simples

Si l’on veut relier deux endroits d’un même texte, on utilise l’un des éléments suivants :

L’élément vide <ptr> marque l’endroit à partir duquel on crée le lien, tandis que <ref> contient du texte. Le plus souvent il s’agira du texte de la référence croisée elle-même. L’élément <ptr> doit être utilisé pour une référence croisée signalée par des moyens non verbaux, tels qu’un symbole ou une icône, ou encore un bouton dans un texte électronique. Il est également utile dans les systèmes de production de document, si le système de formatage est capable de générer correctement l’expression de la référence croisée.

Les deux formes suivantes sont logiquement équivalentes : Cf. tout particulièrement <ref target="#SEC12">la section 12, page 34</ref>. Cf. tout particulièrement <ptr target="#SEC12"/>.

La valeur de l’attribut @target de l’un ou l’autre de ces éléments peut être l’identifiant d’un autre élément du texte courant. Le passage ou l’expression que l’on cible doivent porter un identifiant, et donc être balisés comme un élément d’un certain type. Dans l’exemple suivant, la référence croisée pointe sur un élément <div> :

... Cf. tout
             particulièrement <ptr target="#SEC12"/>. ... <div xml:id="SEC12">
               <head>Au sujet des identifiants</head>

             </div>

Comme @xml:id est un attribut global, on peut pointer de cette manière sur n’importe quel élément d’un texte TEI. Dans l’exemple suivant, on a associé un identifiant à un paragraphe pour qu’on puisse pointer sur lui.

... voir discussion de ce point au <ref target="#pspec">paragraphe qui traite des liens</ref> ... <p xml:id="pspec">Les
               liens peuvent s'effectuer vers tout type d'élément ...</p>

Parfois, la cible d’une référence croisée ne correspond à aucune caractéristique particulière du texte, et de ce fait peut ne pas être balisée comme un élément d’un certain type. Si la cible que l’on souhaite indiquer correspond simplement à un endroit du document courant, la manière la plus simple de procéder est d’utiliser l’élément <anchor>, à l’endroit ciblé. Si la cible est une certaine suite de mots, qui n’est pas déjà balisée, l’élément <seg> peut être utilisé. Ces deux éléments se laissent décrire de la manière suivante :

Dans l’exemple (inventé) suivant, les éléments <ref> sont utilisés pour représenter les endroits du texte qui doivent être associés à d’autres parties du texte ; dans le premier cas, à un endroit particulier, et dans le second à une suite de mots :

Retournant à <ref target="#ABCD">la phrase où je me suis endormi</ref>, j'ai noté que <ref target="#EFGH">trois
               mots</ref> avaient été soulignés par un lecteur précédent

Cet encodage demande que les éléments ayant des identifiants spécifiques (ABCD et EFGH dans cet exemple) soient effectivement quelque part dans le texte. Si aucun élément ne porte déjà ces identifiants, on peut utiliser les éléments <anchor> et <seg>.

.... <anchor type="bookmark" xml:id="ABCD"/> .... ....<seg type="target" xml:id="EFGH"> ... </seg> ...

On doit utiliser l’attribut @type (comme ci-dessus) pour distinguer les différents rôles que pourraient jouer ces éléments généraux. D’autres utilisations sont présentées ci-après.

Le renvoi à d’autres documents

Jusqu’à maintenant, nous avons montré comment on pouvait utiliser les éléments <ptr> et <ref> pour établir des références croisées ou des liens, dont les cibles se situent dans le même texte. Cependant, on peut aussi utiliser ces deux éléments pour renvoyer à des éléments de n’importe quel autre document ou ressource XML, tel qu’un document sur le web, une partie d’une base de données. Ceci est possible si l’attribut @target porte comme valeur n’importe quelle URI[^10] valide.

[^10: Une explication complète de ce terme, défini par le W3C (le consortium qui gère le développement et la maintenance du web), excède les objectifs de ce tutoriel. Cependant, la forme d’URI la plus fréquemment rencontrée est celle familière de l’URL, utilisée pour identifier une page web, telle que http://www.tei-c.org/index.xml.]

Un URI peut renvoyer à une page web, ou seulement à une partie de cette page. Par exemple : dans http://www.tei-c.org/index.xml#SEC2", le signe # indique que ce qui suit est l’identifiant d’un élément situé dans le document XML, dont l’adresse est indiquée par ce qui précède : cet exemple vise par conséquent un élément qui a un attribut @xml:id dont la valeur est "SEC2", dans le document extrait de http://www.tei-c.org/index.xml. Dans les exemples que nous avons présentés jusqu’à maintenant, la partie à gauche du signe # a toujours été omise, ce qui signifiait justement que l’élément auquel on renvoyait se trouvait dans le même document.

Des parties d’un document XML peuvent être spécifiées par d’autres moyens plus sophistiqués, qui utilisent XPath. Ce langage est aussi défini par le W3C. Il est particulièrement utile quand les éléments à associer ne portent pas d’identifiants et doivent alors être localisés par d’autres moyens.

Les types spéciaux de liens

Les attributs suivants, qui ont des rôles spécifiques, sont définis pour tous les éléments du schéma TEI Lite :

ana
- lie un élément à son interprétation
corresp
- lie un élément avec un ou plusieurs autres éléments correspondants
next
- lie un élément avec l’élément suivant de l’ensemble
prev
- lie un élément avec l’élément précédent de l’ensemble

On utilise l’attribut @ana (analysis - analyse) lorsque des ensembles rassemblant des analyses abstraites ou des interprétations ont été définis quelque part dans le document. Cf. L’interprétation et l’analyse. Par exemple, une analyse linguistique de « Jean aime Nancy » pourrait être encodée comme suit : <seg type="sentence" ana="SVO"><w ana="#NP1">Jean</w><w ana="#VVI">aime</w><w ana="#NP1">Nancy</w></seg>

Cet encodage implique l’existence quelque part dans le document d’éléments avec les identifiants "SVO", "NP1" et "VVI", où la signification de ces codes particuliers est explicitée. Notons ici l’utilisation de l’élément <seg> pour marquer les composants particuliers d’une analyse, qui sont distingués par l’attribut @type.

On utilise l’attribut @corresp (correspondant) pour indiquer d'une manière simple tout type de correspondance entre deux éléments. Par exemple, dans un texte multilingue, il peut servir à lier ensemble les phrases équivalentes : <seg xml:lang="fr" xml:id="FR1" corresp="#EN1">Jean aime Nancy</seg><seg xml:lang="en" xml:id="EN1" corresp="#FR1">John loves Nancy</seg>

On peut utiliser ce même mécanisme dans divers cadres. Dans l’exemple[^11] qui suit, on l’utilise pour représenter la relation anaphorique entre « le village » et « Châteauvillain », et entre « la fête foraine » et « la fête de la Trinité »

<p>
<name type="place" xml:id="CVN">Châteauvillain</name> renouvelle avec une vieille
tradition de la localité qui avait été un peu oubliée depuis quelques années : <seg xml:id="feteTrin">la fête de la Trinité</seg>. Autrefois, il s'agissait des
grandes réjouissances annuelles de la commune. Pour ce retour attendu, <rs corresp="#feteTrin">la fête foraine</rs> s'installera dans <rs corresp="#CVN">le
  village</rs> les 29 et 30 mai. </p>

[^11: La phrase est prise du journal L'est Republican (edition de 1999-05-19)]

Les attributs @prev et @next permettent de relier de manière simple des constituants discontinus, comme dans l’exemple suivant :

<p> «<q xml:id="Q1a" next="#Q1b">Marie</q>,
  dis-je, <q xml:id="Q1b" prev="#Q1a">j’ai été mariée ce matin à M. Rochester.</q> »
</p>.

Les interventions éditoriales

L’encodage d’un texte électronique a beaucoup à voir avec l’édition d’un manuscrit ou celle d’un texte destiné à être publié. Dans les deux cas, un éditeur consciencieux peut vouloir conserver l’état original de la source et la trace des corrections ou des changements qu’il a opérés. Pour ce faire, on utilisera les éléments décrits dans cette section et dans la section suivante,

La correction et la normalisation

On utilise les éléments suivants pour indiquer une correction, soit des changements éditoriaux introduits par l’éditeur, qui pense que l’original présente des erreurs :

On utilise les éléments suivants pour indiquer une standardisation, soit des changements éditoriaux introduits pour des raisons de cohérence ou de modernisation d’un texte :

Par exemple, considérons cette fable de La Fontaine, qui, dans sa première version imprimée, commence ainsi:

Maistre Corbeau sur un arbre perché
Tenoit en son bec un fromage.
Maistre Renard par l'odeur alléché
Luy tint à peu près ce langage:
Et bonjour, Monsieur du Corbeau :
Que vous estes joly! que vous me semblez beau:

Un éditeur moderne pourrait vouloir apporter un nombre de modifications, notamment pour moderniser (ou normaliser) l’orthographe. L’encodage serait alors le suivant :

<l><reg>Maître</reg> Corbeau sur un arbre
perché,</l><l><reg>Tenait</reg> en son bec un fromage.</l><l><reg>Maître</reg>
Renard par l'odeur alléché</l><l><reg>Lui</reg> tint à peu près ce langage:</l><l>Et
bonjour, Monsieur du Corbeau</l><l>Que vous <reg>êtes</reg>
<reg>joli</reg>! que vous me semblez beau!</l>

Un éditeur plus conservateur, ou très soucieux des sources, voudrait sans doute s’en tenir à l’original, mais, dans le même temps, signaler que certaines lectures peuvent être anomales.

<l><orig>Maistre</orig>
Corbeau sur un arbre perché,</l><l><orig>Tenoit</orig> en son bec un fromage.</l>...

Finalement, un éditeur numérique moderne peut décider de combiner ces deux possibilités dans un seul texte composite, en utilisant l’élément <choice>. Celui-ci permet à l’éditeur d’indiquer que des lectures alternatives sont possibles

<l><choice><orig>Maistre</orig><reg>Maître</reg></choice>Corbeau sur un arbre
  perché,</l><l><choice><orig>Tenoit</orig><reg>Tenait</reg></choice> en son bec un
  fromage.</l><l><choice><orig>Maistre</orig><reg>Maître</reg></choice> Renard par
  l'odeur alléché</l><l><choice><orig>Luy</orig><reg>Lui</reg></choice> tint à peu
  près ce langage:</l><l>Et bonjour, Monsieur du Corbeau :</l><l>Que vous
      <choice><orig>estes</orig><reg>êtes</reg></choice>
  <choice><orig>joly</orig><reg>joli</reg></choice> ! que vous me semblez
beau!</l>

Les omissions, les suppressions et les ajouts

Outre la correction et la standardisation des mots et des expressions, les éditeurs ou les transcripteurs peuvent également indiquer du matériel manquant, omettre du matériel ou transcrire du matériel qui a été supprimé ou rayé. Des matériaux peuvent également se révéler particulièrement difficiles à transcrire, par exemple quand ils sont difficilement déchiffrables. Pour ces différents cas, on utilise les éléments suivants :

On utilise ces éléments pour marquer les changements opérés par l’éditeur, le transcripteur, l’auteur ou le copiste (pour ces deux derniers, dans le manuscrit même). Par exemple, soit la source suivante :

Ces éléments servent à indiquer les
changements opérés par par un éditeur

On voudrait corriger l’erreur manifeste, mais dans le même temps, conserver la trace de la suppression du deuxième « par » :

Ces
éléments servent à indiquer les changements opérés par <del resp="#LDB">par</del> un
éditeur.

La valeur "#LDB" de l’attribut @resp est alors utilisée pour pointer sur l’identification de ceux qui sont responsables de la correction (typiquement dans un élément <respStmt>).

Soit la source suivante :

Ces éléments servent à indiquer changements opérés par un
éditeur.

L'article a été supprimé par inadvertance. Le texte corrigé pourrait alors être encodé de la manière suivante : Ces éléments servent à indiquer <add resp="#LB">les</add> changements opérés par un éditeur.

Ces éléments ne se limitent pas à indiquer les changements opérés par un éditeur. Ils peuvent être aussi utilisés pour conserver des changements opérés par l’auteur. Un manuscrit dans lequel un auteur a d’abord écrit « How it galls me, what a galling shadow », puis remplacé le mot « galls » par « dogs », pourrait être encodé comme suit :

How it <del hand="#DHL" type="overstrike">galls</del>
<add hand="#DHL" place="supralinear">dogs</add> me, what a galling shadow

A nouveau, le code #DHL pointe sur un autre endroit du texte, où l’on dispose de plus d’informations. De manière similaire, on utilise les éléments <unclear> et <gap> pour indiquer l’omission d’un matériel illisible ; l’exemple suivant montre également l’utilisation de <add> pour un ajout fait d'une autre main : <add hand="#EPR" place="inspace">Envoyez-moi une épreuve <unclear cert="medium">W</unclear><gap reason="inDéchiffrable"/></add>

L’élément <del> indique que le matériel transcrit est, sur l’original, marqué comme supprimé, tandis que l’élément <gap> indique l’endroit où se trouve le matériel omis, que cette décision soit considérée comme opportune ou pas. Un corpus linguistique, par exemple, pourrait omettre les longues citations en langue étrangère, ou bien omettre systématiquement les figures, et les formules mathématiques. Voici un exemple[^12] :

<p>Dans de tels
puzzles les pièces se divisent en quelques grandes classes dont les plus connues
sont : les bonshommes <gap><desc xml:lang="en" versionDate="2014-01-12">figure représentant plusieurs pièces de puzzle de
    ce type</desc></gap>; les croix de Lorraine <gap><desc xml:lang="en" versionDate="2014-01-12">figure représentant
    plusieurs pièces de puzzle de ce type</desc></gap>; et les croix
    <gap><desc xml:lang="en" versionDate="2014-01-12">figure représentant plusieurs pièces de puzzle de ce
  type</desc></gap></p>

[^12: Extrait de La vie mode d'emploi de Georges Perec (1978)]

Les abréviations et leurs formes développées

Tout comme les noms, les dates et les nombres, les abréviations peuvent être transcrites telles qu’elles sont écrites ou bien développées. Elles peuvent rester non marquées, ou bien encodées en utilisant les éléments suivants :

L’élément <abbr> est utile pour distinguer des items semi-lexicaux tels que des acronymes, ou du jargon. Voici un exemple[^13] :

<head>Lutte contre le nepotisme : le
      <abbr>PS</abbr> entrave
<abbr>EE-LV</abbr></head>

[^13: Titre dans Libération du 7 fev 2012]

On utilise l’attribut @type pour distinguer les types d’abréviation en fonction de leur rôle. On utilise l’élément <expan> pour indiquer que la forme développée de l’expression a été fournie par l’encodeur. Cet élément est particulièrement utile dans la transcription de manuscrits. Par exemple, dans les manuscrits de l’époque médiévale, on trouve très couramment le caractère p avec une hampe barrée, qui est la représentation conventionnelle du mot « per ». Un encodeur peut choisit de le développer de la manière suivante : <expan>per</expan>

La forme développée de l’abréviation ne contient pas toujours les mêmes lettres que celles qui ont été utilisées dans l’abréviation. Quand cela arrive, cependant, la pratique éditoriale courante est d’utiliser les italiques, ou sinon de signaler quelles lettres ont été ajoutées. L’élément <expan> ne doit pas être utilisé dans ce cas, car sa fonction est d’indiquer la forme développée et non une partie de celle-ci. Par exemple, considérons l’abréviation "c" (pour cum), que l’on trouve souvent dans les textes médiévaux. Dans une édition moderne, un éditeur pourrait vouloir représenter ceci par cum, en mettant en italiques les lettres ajoutées. Un moyen simple d’y arriver serait de l’encoder comme suit : <expan>c<hi rend="it">um</hi></expan>

Pour enregistrer à la fois une abréviation et sa forme développée, on peut utiliser l’élément <choice>, mentionné plus haut, pour rassembler la forme abrégée et la forme développée : <choice><abbr>c</abbr><expan>cum</expan></choice>

Les noms, les dates, et les nombres

Le schéma TEI permet de distinguer et d'identifier toutes sortes d'entités nommées, comme les noms de personnes et les noms de lieux, de marques, d'organisations, mais aussi des nombres ou des dates, autant d'informations précises qui produisent ou accrochent le texte à un contexte. Ces infomations factuelles rendent le text utile à de nombreuses disciplines, par exemple l'histoire ou la sociologie. Elles interessent aussi les applications linguistiques, en permettant par exemple d'isoler tous les mots qui ne figurent pas dans un dictionnaire de langue. Les éléments décrits ici, en rendant ces caractéristiques explicites, réduisent la complexité des traitements automatiques des textes.

Les dénominations et les expressions référentielles

Une expression référentielle est une expression qui réfère à une personne, un lieu, un objet. Deux éléments permettent de caractériser une telle expression :

On utilise l’attribut @type pour distinguer les noms de personnes, de lieux, d’organisations, quand cela est possible. Voici un exemple[^14] :

Le premier dîner que <rs type="person">M. de
  Norpois</rs> fit à la maison, une année où je jouais encore aux <rs type="place">Champs-Élysées</rs>, est resté dans ma mémoire, parce que l’après-midi de ce même
jour fut celui où j’allai enfin entendre <rs type="person">la Berma</rs>, en « matinée
», dans <title>Phèdre</title>

Dans ce deuxieme exemple[^15], on traite le nom d'un ministère, pareillement aux autres agences, comme "organization" :

Comme le <rs type="organization">ministère
  des Circonlocutions</rs> avait pour principe de ne jamais donner une réponse
catégorique, sous quelque prétexte que ce fût, <rs type="person">M. Mollusque</rs> se
contenta de répondre : <q>C’est possible.</q>

[^14: Extrait de À l'ombre des jeunes filles en fleurs de Marcel Proust]

[^15: Extrait de La petite Dorrit de Charles Dickens]

Comme l’exemple suivant le montre, l’élément <rs> peut être utilisé pour faire référence à une personne, un lieu, etc., qui n’est pas nécessairement exprimé sous la forme d’un nom propre ou d’un groupe nominal.

<rs type="person">M. de Norpois</rs> avait
changé, sur un point bien plus important pour moi, les intentions de <rs type="person">mon père</rs>. ...

L’élément <name> par contraste est utilisé avec des noms propres. Il est alors synonyme de l’élément <rs>, ou enchâssé dans cet élément si l’expression référentielle comporte un mixte de noms propres et de noms communs (par exemple « Dédé l’embrouille »).

Etiqueter simplement une expression comme une dénomination permet rarement de traiter automatiquement les noms de personnes dans les formes habituellement attendues par les cadres d’analyse qui s’intéressent aux expressions référentielles. Le nom tel qu’il apparaît dans le texte peut être orthographié de manière erronée, partielle ou vague. En outre, il peut y avoir des particules telles que « van », « de la », etc., qui peuvent ou non être traitées comme faisant partie du nom, et qui dépendent de la langue et du pays d’origine du porteur.

L’attribut @key propose un identifiant alternatif standard pour les objets nommés, analogue à une clé dans une base de données. C’est alors un moyen pratique pour rassembler toutes les références dispersées dans le texte, qui renvoient au même individu, au même lieu :

Le premier
dîner que <rs type="person" key="NORP1">M. de Norpois</rs> fit à la maison, une année
où je jouais encore aux <rs type="place" key="CE">Champs-Élysées</rs>, est resté dans
ma mémoire, parce que l’après-midi de ce même jour fut celui où j’allai enfin entendre
  <rs type="person" key="LABM">la Berma</rs>, en « matinée », dans
  <title>Phèdre</title>

Cette utilisation doit être distinguée de celle qui fait usage de l’élément <reg> (regularization - régularisation), qui permet de marquer la forme normalisée d’une expression référentielle :

<name type="person" key="DANT1"><choice><reg>Georges Jacques Danton</reg><sic>Danton</sic></choice></name> est
né le 26 octobre 1759 à <name key="AsA"> Arcis-sur-Aube</name> et mort le 5 avril 1794
(16 germinal an II) à Paris.

L’élément <index>, discuté dans la section indexation, peut être plus approprié si le rôle de la régularisation est de fournir un index cohérent :

<p>Emmanuel Le Roy Ladurie
s'appuie sur les registres d'inquisition de <name type="person">Jacques
  Fournier</name><index><term>Benoit XII, Pape d'Avignon (Jacques
  Fournier)</term></index> afin de retracer la vie des habitants de Montaillou en
Haute-Ariège « infesté » par le catharisme. </p>

Bien qu’elles soient pertinentes pour des applications simples, ces méthodes présentent deux inconvénients : il faut répéter la régularisation pour chaque occurrence du même nom ; et le poids de l’encodage supplémentaire XML dans le corps du texte peut devenir difficile à maintenir et compliqué à traiter. En onomastique ou en histoire par exemple, on est concerné par les personnes ou les lieux nommés, plutôt que par les noms eux-mêmes. En ce cas ou bien si l’on souhaite faire une analyse détaillée des constituants du nom, on se reportera aux Recommandations, qui fournissent un large éventail de solutions.

Les dates et les heures

Voici des balises permettant d’encoder les heures et les dates de manière plus précise :

Ces éléments ont un nombre d’attributs, dont les valeurs sont exprimées selon des formats standardisés. L’attribut @when sert à spécifier la forme de la date ou de l’heure ; il repose sur l’un des formats normalisés ISO 8601. Des dates partielles ou des heures (par exemple, « 1990 », « septembre 1990 », « douzaine ») peuvent être représentées en omettant une partie de la valeur fournie :

<date when="1980-02-21">21 fevrier
1980</date><date when="1990">1990</date><date when="1990-09">septembre
mcmxc</date><date when="--09">septembre</date><date when="2001-09-11T12:48:00">11
septembre, neuf heures moins douze GMT</date>

Notons, dans le dernier exemple, l’utilisation d’une représentation normalisée pour une date, qui inclut une heure : cet exemple aurait pu aussi être encodé en utilisant l’élément <time>.

Décret de la
             Convention <date when="1794-10-30">9 Brumaire An III</date>

<l>specially when it's nine below zero</l>
<l>and <time when="15:00:00">three o'clock in the afternoon</time></l>

Les nombres

Les nombres peuvent être écrits en lettres ou en chiffres (vingt et un, xxi et 21), et leur représentation dépend de la langue (par exemple, en anglais 5th est équivalent à 5 en grec ; 123,456.78 en anglais est équivalent à 123.456,78 ou 123 456,78 en français). Dans des applications TAL, il est souvent utile de les distinguer des parties plus proprement « lexicales » du texte. Dans d’autres applications, la possibilité d’enregistrer la valeur d’un nombre dans un format normalisé est importante. L’élément <num> le permet :

Par exemple: <num value="33">xxxiii</num><num type="cardinal" value="21">vingt et un</num><num type="percentage" value="10">dix pourcent</num><num type="percentage" value="10">10%</num><num type="ordinal" value="5">5eme</num>

Les listes

L’élément <list> sert à baliser n’importe quelle sorte de liste. Une liste est un glossaire ou bien une séquence d’items textuels, qui peuvent être numérotées ou non. Chaque item peut être précédé par une étiquette (dans un glossaire, cette étiquette est le terme qui est défini).

Les items d’une liste sont balisés par l’élément <item>. Le premier <item> peut être précédé de <head>, qui indique qu’il est le premier élément de la liste. La numérotation de la liste peut être omise, ou bien spécifiée grâce à l’attribut @n, que l’on associe à chaque item, ou bien encore (plus rarement) en utilisant l’élément <label>. Les encodages suivants sont donc tous équivalents :

<list>
  <head>Une liste courte</head>
  <item>Premier item de la liste.</item>
  <item>Deuxième item de la liste.</item>
  <item>Troisième item de la liste.</item>
</list><list>
  <head>Une liste courte</head>
  <item n="1">Premier item de la liste.</item>
  <item n="2">Deuxième item de la liste.</item>
  <item n="3">Troisième item de la liste.</item>
</list><list>
  <head>Une liste courte</head>
  <label>1</label>
  <item>Premier item de la liste.</item>
  <label>2</label>
  <item>Deuxième item de la liste.</item>
  <label>3</label>
  <item>Troisième item de la liste.</item>
</list>

On ne doit pas mélanger les styles dans une même liste.

Un simple tableau à deux colonnes peut traiter la liste de type glossaire. Elle sera balisée avec l’élément <list type="gloss">. Chaque item, ici, comprend un terme et une glose, qui sont balisés respectivement par <label> et <item>. Ils correspondent aux éléments <term> et <gloss>, qui peuvent apparaître dans n’importe quel texte en prose. Voici un exemple du Petit glossaire pour servir à l'intelligence des auteurs décadents et symbolistes (1888) de Jacques Plowert :

<list type="gloss">
  <label>ENGOULER</label>
  <item><p>v. a. — Avaler d’une manière goulue.</p>
    <cit><q>le vitrail jaune des portes de brasseries, tantôt vomissant, tantôt
        engoulant des masses noires.</q>
      <bibl>Les Demoiselles Goubert.</bibl></cit></item>
  <label>ENGRANDEUILLER(s’)</label>
  <item><p>v. p. - Se mettre en grand deuil. </p>
    <cit><q>L'automne s’engrandeuille au bois de Boulogne.</q>
      <bibl><title>Complaintes.</title> Jules Laforgue. </bibl></cit></item>
  <label>ENJAUNI.</label>
  <item><p>Adj. — Rendu jaune.</p>
    <cit><q>La bâtisse de l'Opéra aux baies enjaunies de lumière où des ombres se
        heurtent. </q>
      <bibl><title>Thé chez Miranda.</title> Paul Adam. </bibl></cit></item>
  <label>ENVOL</label>
  <item><p>s. M. — Vol elliptique.</p>
    <cit><q>Un envol de pigeons écarlates tonne autour de ma pensée. </q>
      <bibl><title>Illuminations.</title> A. Rimbaud.</bibl></cit></item>
</list>

Notons ici que le contenu des éléments <item> peut être assez riche : dans le cas précèdant, on s'est servi de l'élément <cit> pour fournir l'exemple cité pour chaque définition. Si la structure interne d’un item dans une liste est très complexe, il pourrait être préférable de considérer la liste comme un tableau, pour laquelle un encodage spécifique peut être défini. Voir ci-dessous Les tableaux.

Des listes de toutes sortes peuvent, bien sûr, être enchâssées dans d’autres listes à n’importe quel niveau de profondeur. Ici, par exemple, une liste des vins[^16] est organisée à plusieurs niveaux:

<list>
  <item>vins d'Alsace <list>
      <item>Riesling</item>
      <item>Traminer</item>
      <item>Pinot noir</item>
      <item>Tokay</item>
    </list></item>
  <item>Bordeaux rouge <list>
      <item>Médoc : <list>
          <item>Château-de-1'Abbaye-Skinner</item>
          <item> Château-Lynch-Bages</item>
          <item>Château-Palmer</item>
          <item>Château-Brane-Cantenac</item>
          <item> Château-Gruau-Larose</item>
        </list></item>
    </list></item>
  <item> Graves : <list>
      <item>Château-La-Garde-Martillac</item>
      <item>Château-Larrivet-Haut-Brion; </item>
    </list></item>
  <item> Saint-Emilion : <list>
      <item>Château-La-Tour-Beau-Site</item>
      <item>Château-Canon</item>
      <item> Château-La-Gaffeière</item>
      <item>Château-Trottevieille </item>
    </list></item>
  <item>Pomerol : <list>
      <item>Château-Taillefer</item>
    </list></item>
  <item>Bordeaux blanc <list>
      <item>: Sauternes : <list>
          <item>Château-Sigalas-Rabaud</item>
          <item>Château-Caillou</item>
          <item>Château-Nairac </item>
        </list></item>
    </list></item>
</list>

[^16: Extrait de La vie mode d'emploi de Georges Perec (1978)]

Une liste peut ne pas être présentée sous forme de liste. Par exemple[^17] :

<p>Dans les pages lointaines de ce livre, il
est écrit que les animaux se divisent en <list rend="run-on">
  <item n="a">appartenant à l'Empereur,</item>
  <item n="b">embaumés, </item>
  <item n="c">apprivoisés, </item>
  <item n="d">cochons de lait, </item>
  <item n="e">sirènes, </item>
  <item n="f">fabuleux, </item>
  <item n="g">chiens en liberté, </item>
  <item n="h">inclus dans la présente classification, </item>
  <item n="i">qui s'agit comme des fous, </item>
  <item n="j">innombrables, </item>
  <item n="k">dessinés avec un très fin pinceau, </item>
  <item n="l">et caetera, </item>
  <item n="m">qui viennent de casser la cruche, </item>
  <item n="n">qui de loin semblent des mouches.</item>
</list></p>

[^17: Michel Foucault, citant une liste de Borges tirée d'une « certaine encyclopédie chinoise», dans Les Mots et les choses (1966).]

Les listes de références bibliographiques doivent être balisées par l’élément <listBibl>, qui est décrit dans la section suivante.

Les références bibliographiques

Il est souvent utile de distinguer les références bibliographiques qui apparaissent dans les textes transcrits à des fins de recherche, ne serait-ce que pour qu’elles soient proprement formatées au moment de l’impression. L’élément <bibl> sert à cela. Lorsque les composants d’une référence bibliographique doivent être distingués, on utilise les éléments présentés ci-dessous. Souvent, il est utile de marquer certaines parties, telles que le titre des articles, des livres et des revues, car elles requièrent un formatage spécifique. Les autres éléments proposés s’adressent avant tout aux projets qui portent un intérêt tout particulier au matériel bibliographique.

Par exemple, la note éditoriale à la fin de cette phrase[^18] «En février 1989, il ouvre la session publique organisée par le Parlement européen au sujet des violations des droits de l'Homme commises par le régime communiste roumain (François Fetjö, Ewa Kulesza-Mietkowski, La Fin des démocraties populaires, Seuil, 1992, page 319). pourrait être transcrite de la manière suivante :

... violations des droits de l'Homme
             commises par le régime communiste roumain (<bibl><author>François Fetjö</author>,
                 <author>Ewa Kulesza-Mietkowski</author>, <title>La Fin des démocraties
                 populaires</title>, <publisher>Seuil</publisher>, <date>1992</date>,
                 <biblScope>page 319</biblScope></bibl>).»

[^18: Extrait d'une notice sur Eugene Ionesco]

La référence bibliographique peutt également être séparée du texte, par exemple quand elle figure dans une note en bas de page, ou dans une liste de références balisée avec l’élément <listBibl> ; dans ce cas, le renvoi à la référence dans le texte sera balisée avec un <ref> ou un <ptr>.

Les tableaux

Les tableaux constituent un défi à tous les systèmes de traitement automatique, mais les tableaux simples sont du moins si fréquents dans les textes que, même dans l’ensemble simplifié qui est présenté ici, le balisage des tableaux est nécessaire. Les éléments suivants apportent des solutions :

Prenons ce tableau indiquant les pentes moyennes de plusieurs aqueducs antiques, retrouvé dans Les aqueducs antiques de Germain de Montauzan (1908). Notons l'usage de l'attribut @role pour indiquer que toute cellule du premier rang contient un label, et non pas une donnée.

<p>Voici quelques exemples de pentes moyennes observées sur des aqueducs antiques, en
  France, autres que ceux de Lyon : <table>
    <row role="label">
      <cell>Aqueduc</cell>
      <cell>pente par kil.</cell>
      <cell>pente par m.</cell>
    </row>
    <row>
      <cell>de Vienne </cell>
      <cell>1m,16 </cell>
      <cell>0,0016 </cell>
    </row>
    <row>
      <cell>d’Arcueil</cell>
      <cell>1m,00 </cell>
      <cell>0,0010 </cell>
    </row>
    <row>
      <cell>d’Evreux</cell>
      <cell>0m,834</cell>
      <cell>0,0008 </cell>
    </row>
    <row>
      <cell>de Rodez</cell>
      <cell>0m,50</cell>
      <cell>0,0005 </cell>
    </row>
    <row>
      <cell>d’Antibes</cell>
      <cell>0m,41</cell>
      <cell> 0,0004 </cell>
    </row>
    <row>
      <cell>de Nîmes</cell>
      <cell>0m,342 </cell>
      <cell>0,0003 </cell>
    </row>
    <row>
      <cell>(minimum)</cell>
      <cell>0m,071</cell>
      <cell>0,00007 </cell>
    </row>
  </table>
</p>

Les figures et les graphiques

Tous les composants d’un document ne sont pas forcément de nature textuelle. Le texte même le plus simple contient souvent des diagrammes et des illustrations, sans parler des textes où image et texte sont inextricablement imbriqués, ou des ressources électroniques dans lesquelles les deux sont complémentaires.

L’encodeur peut simplement noter la présence d’un graphique, et éventuellement décrire brièvement son contenu. Il peut également associer un lien vers la version numérique du graphique, en utilisant les éléments suivants :

Toute information textuelle accompagnant le graphique, telle que le titre ou la légende, peut être incluse dans l’élément <figure> lui-même, qui comporte un élément <head> et un ou plusieurs éléments <p>. On peut inclure également le texte qui est dans le graphique. Il est fortement recommandé que l’élément <figDesc> comporte une description de l’image, pour que cela soit utilisable par des applications qui ne sont pas capables de traiter les graphiques, et pour rendre le graphique accessible à des lecteurs ayant un handicap visuel. (Normalement, ces descriptions ne sont pas considérées comme faisant partie du document).

La manière la plus simple de procéder est d’identifier la position d’un graphique et de l’associer à un lien, comme dans l’exemple suivant :

<pb n="412"/><figure>
  <graphic url="p412fig.png"/>
</figure><pb n="413"/>

On a indiqué ici que le graphique est le fichier p412fig.png et qu’il apparaît entre les pages 412 et 413. L’élément <graphic> peut être utilisé partout où il y a un contenu textuel, i.e. dans un paragraphe, un titre, mais pas entre eux. Dans l’exemple suivant, l’encodeur a décidé de traiter les ornements d’une édition particulière comme un titre : <head><graphic url="http://www.iath.virginia.edu/gants/Ornaments/Heads/hp-ral02.gif"/></head>

Plus couramment, un graphique a au moins un titre, qui peut être encodé grâce à l’élément <head>. On peut également rassembler un certain nombre de figures dans une structure particulière. Et c’est souvent plus facile d’inclure une courte description de l’image. L’élément <figure> permet de rassembler un ou plusieurs éléments de cette sorte, ils forment alors un type de graphique appelé ‘block’.

<figure>
  <graphic url="chap3fig2.png"/>
  <head>Dick Kennedy </head>
  <figDesc>Gravure de E. Riou représentant un jeune homme assis sur une chaise, les
    pieds sur une autre et tenant à la main une canne. En arrière plan, une théière, et
    l'inscription <q>Map of Africa</q> .</figDesc>
</figure>

Ces cas doivent être soigneusement distingués du cas où un texte encodé est associé à une collection d’images numériques, qui constitue une ressource distincte. L’attribut @facs permet d’associer n’importe quel élément du texte encodé à un fac-similé numérique. Dans le cas simple, quand seules des images sont disponibles, on utilise l’attribut @facs dans l’élément <pb> pour associer chaque image à l’endroit du texte qui convient.

<text>
  <pb facs="page1.png" n="1"/>

  <pb facs="page2.png" n="2"/>

</text>

Cette méthode est valable uniquement dans les cas simples, i.e. quand chaque image numérique est contenue dans un fichier (page1.png, etc.) et correspond à une seule page transcrite et encodée. Si un alignement plus précis de l’image et de la transcription est nécessaire, par exemple, parce que les fichiers images représentent une double page, des mécanismes plus sophistiqués sont requis. On se reportera aux Recommandations.

L’interprétation et l’analyse

On dit souvent que tout balisage est une forme d’interprétation ou d’analyse. S’il est certainement difficile, et parfois impossible, de distinguer clairement entre des informations ‘objectives’ et des informations ‘subjectives’, et ce de manière universelle, il s’avère cependant que les jugements portant sur les secondes sont typiquement considérés comme beaucoup plus susceptibles d’alimenter des controverses que ceux portés sur les premières. Aussi, beaucoup de chercheurs notent de telles interprétations uniquement s’il est possible d’avertir le lecteur qu’elles font plus débat que d’autres parties du texte balisé. Cette section décrit quelques-uns des éléments fournis par le schéma TEI pour traiter ces différents besoins.

Les phrases « orthographiques »

Typiquement, l’interprétation parcourt l’ensemble du texte, sans respecter particulièrement telle ou telle unité structurelle. Une première étape utile consiste à segmenter le texte en unités discrètes et identifiables, chacune d’entre elles portant une étiquette servant en quelque sorte de ‘référence canonique’. Pour faciliter leur utilisation, ces unités ne doivent pas se croiser ou être emboîtées les unes dans les autres. On peut les représenter facilement en utilisant l’élément suivant :

Comme son nom l’indique, l’élément <s> est l’élément le plus couramment utilisé (dans les applications linguistiques du moins) pour indiquer les phrases « orthographiques », i.e. définies par des traits orthographiques, tels que la ponctuation. Par exemple, le début du passage de Jane Eyre, présenté plus haut, peut être divisé en de telles unités :

<pb n="474"/><div type="chapter" n="38">
<p><s n="001">J’ai enfin épousé M. Rochester.</s><s n="002">Notre mariage se fit
    sans bruit; </s>
  <s n="003">lui, moi, le ministre et le clerc, étions seuls présents.</s>
  <s n="004">Quand nous revînmes de l’église, j’entrai dans la cuisine, où Marie
    pré- parait le dîner, tandis que John nettoyait les couteaux.</s>
</p><p><s n="003"> «Marie, dis-je, j’ai été mariée ce matin à M.
      Rochester. »</s>
</p> </div>

Notons que les éléments <s> ne peuvent être emboîtés : le début d’un <s> implique que le précédent est terminé. Quand des unités de type <s> sont balisées comme ci-dessus, il est conseillé de baliser la totalité du texte, de telle sorte que chaque mot du texte analysé appartiendra à un seul élément <s>, dont l’identifiant peut alors servir à spécifier les référence uniques à chacun de ces mots. Si les identifiants sont uniques dans le document, alors il est préférable d’utiliser l’attribut @xml:id plutôt que l’attribut @n (cf. exemple ci-dessus).

Les mots et la ponctuation

La segmentation du texte en mots lexicaux et non lexicaux est une opération très courante dans tous les types d’analyse textuelle, mais pas complètement triviale. Par exemple, la décision de traiter can’t en anglais ou du en français comme un ou deux mots n’est pas simple. En conséquence, il est souvent utile de rendre explicite la segmentation souhaitée. On utilise alors les éléments suivants :

Par exemple, la sortie d’un catégoriseur pourrait être encodé en TEI Lite comme suit :

            <s>
<w ana="#NAM">TreeTagger</w>
<w ana="#VER_pres">permet</w>
<w ana="#PRP">d'</w>
<w ana="#VER_infi">annoter</w>
<w ana="#PRO_IND">plusieurs</w>
<w ana="#NOM">langues</w>
<pc>. </pc>              </s>

Dans cet exemple, chaque mot a été pourvu automatiquement d’une catégorie, en utilisant l’attribut @ana (cf. section ci-dessus). L’élément <w> permet aussi de noter pour chaque mot sa racine ou son lemme, soit de manière explicite, en utilisant l’attribut @lemma, soit par référence, en utilisant l’attribut @lemmaRef, comme dans l’exemple qui suit : ...<w ana="#VER_pres" lemma="permettre" lemmaRef="http://www.myLexicon.com/permettre">permet</w> ...

Les éléments généraux d’interprétation

L’élément <w> est une spécialisation de l’élément <seg>, dont l’utilisation a déjà été présentée pour identifier des cibles non marquées de références croisées et des hyperliens (cf. section Les références croisées et les liens) ; il spécifie une certaine portion de texte, à laquelle l’encodeur peut assigner un type utilisateur particulier, ou un identifiant unique ; il peut alors être utilisé pour marquer des caractéristiques textuelles, qui n’ont pas été prévues dans les Recommandations.

Par exemple, les Recommandations ne proposent pas d’élément ‘apostrophe’ pour marquer les parties d’un texte littéraire dans lesquelles le narrateur s’adresse directement au lecteur (ou à l’auditeur). Un traitement possible serait de considérer ces apostrophes comme des instances de l’élément <q>, que l’on distinguerait des autres en choisissant une valeur appropriée pour l’attribut @who. Une autre solution, plus simple, et certainement plus générale, consiste à utiliser l’élément <seg> comme suit :

<l>Tu le connais, lecteur, ce monstre délicat,</l>
<l><seg type="apostrophe">— Hypocrite lecteur, — mon semblable, — mon frère!</seg></l>

L’attribut @type de l’élément <seg> peut prendre n’importe quelle valeur, et peut donc servir à marquer des phénomènes de toutes sortes ; il est de bonne pratique que d’enregistrer les valeurs utilisées et leur signification dans l’en-tête.

Un élément <seg> d’un type donné (à la différence de l’élément <s>, qui lui ressemble superficiellement) peut être enchâssé dans un élément <seg> de même type ou de type différent. Cela permet de représenter des structures assez complexes ; des exemples ont été proposés plus haut (Les types spéciaux de liens). Cependant, comme les éléments doivent être correctement enchâssés et ne pas se chevaucher, <seg> ne peut pas gérer l’association d’une interprétation avec des segments arbitraires du texte, qui ignoreraient complètement la hiérarchie du document. Il nécessite également que l’interprétation elle-même soit représentée par une valeur unique codée dans l’attribut @type.

Aucune de ces contraintes ne s’applique à l’élément <interp>, qui offre des caractéristiques puissantes pour encoder de manière relativement directe une interprétation assez complexe. Ces éléments permettent à l’encodeur de spécifier à la fois la classe de l’interprétation et une interprétation spécifique, relevant de cette classe, et que l’interprétation implique. De ce fait, tandis qu’avec <seg>, on peut dire simplement que quelque chose est une apostrophe, avec <interp>, on peut dire qu’il s’agit d’une instance (d’une apostrophe dans l’exemple) d’une classe plus grande (celle des figures de rhétorique).

En outre, <interp> est un élément vide, qui doit être lié au passage auquel il s’applique, au moyen de l’attribut @ana, présenté ci-dessus (Les types spéciaux de liens), ou bien en utilisant son propre attribut @inst. Cela signifie que n’importe quel type d’analyse peut être représenté, sans que l’on ait besoin de respecter la hiérarchie du document. Le regroupement des analyses de même type est également aisé, et ce grâce à l’élément spécifique <interGrp>.

Par exemple, supposons que l’on souhaite marquer différents aspects d’un texte, tels que des thèmes, des figures de rhétorique, et des emplacements de scènes. Différentes parties de notre extrait de Jane Eyre, par exemple, pourraient être ainsi associées.

Ces interprétations pourraient être placées n’importe où dans une partie identifiée par l’élément <text>. Cependant, il est de bonne pratique de les noter au même endroit (par exemple, dans une section séparée des Parties liminaires et des Annexes), comme dans l’exemple suivant :

<back><div type="Interpretations">
  <p><interp xml:id="set-church-1" resp="#LB-MSM" type="emplacement">église</interp>
    <interp xml:id="set-kitch-1" resp="#LB-MSM" type="emplacement">cuisine</interp>
    <interp xml:id="set-unspec-1" resp="#LB-MSM" type="emplacement">ailleurs</interp>
  </p>
</div></back>

La redondance manifeste de cet encodage peut être largement réduite en utilisant l’élément <interGrp> pour regrouper tous les éléments <interp> qui ont des valeurs d’attribut identiques :

<back><div type="Interpretations">
  <interpGrp type="emplacement" resp="#LB-MSM">
    <interp xml:id="set-church">église</interp>
    <interp xml:id="set-kitch">cuisine</interp>
    <interp xml:id="set-unspec">ailleurs</interp>
  </interpGrp>

</div></back>

Une fois ces éléments d’interprétation définis, ils peuvent être liés aux parties auxquelles ils s’appliquent, et ce de deux manières différentes : ils peuvent servir comme cibles de l’attribut @ana attaché aux instances, ou bien ils peuvent eux-mêmes pointer sur les instances. Par exemple, en se servant de l'attribut global @ana, on pointe du texte vers son analyse :

<div type="chapitre" n="38">
  <p xml:id="P38.1" ana="#set-church #set-kitch"> J’ai enfin épousé M. Rochester.
    Notre mariage se fit sans bruit; lui, moi, le ministre et le clerc, étions seuls
    présents. Quand nous revînmes de l’église, j’entrai dans la cuisine, où Marie pré-
    parait le dîner, tandis que John néttoyait les couteaux.</p>
</div>

Notons, dans cet exemple, que, comme le paragraphe comporte deux lieux (l’église et la cuisine), les deux identifiants ont été fournis.

Ou, pour pointer dans l'autre sens, de l'analyse vers le texte, on peut utiliser l’attribut @inst de l'éléments <interp> ainsi :

<interpGrp type="emplacement" resp="#LB-MSM">
  <interp inst="#P38.1">église</interp><interp inst="#P38.1" resp="#LB-MSM">cuisine</interp>
</interpGrp>

L’élément <interp> n’est pas limité à un certain type d’analyse. L’analyse littéraire ci-dessus en est une parmi d’autres ; on pourrait également utiliser <interp> pour représenter une analyse linguistique en termes de parties du discours. Par exemple, la phrase proposée dans la section Les types spéciaux de liens suppose une analyse linguistique qui pourrait être représentée comme suit :

<interp xml:id="NP1" type="pos">noun phrase,
singular</interp><interp xml:id="VV1" type="pos">inflected verb, present-tense
singular</interp> ...

La documentation technique

Bien que l’objet central de ce document soit l’utilisation du schéma TEI pour encoder des documents existants, on peut utiliser ce même schéma pour encoder de nouveaux documents. Dans la préparation de nouveaux documents (tels que celui-ci), XML présente de nombreux avantages : la structure du document peut être représentée clairement, et le même texte électronique peut être réutilisé à des fins très différentes - pour produire par exemple des versions hypertextes ou feuilletables en ligne, mais aussi des versions bien mises en forme, et ce à partir d’une même source.

Pour ce faire, le schéma TEI Lite comprend des éléments permettant de marquer les caractéristiques de documents techniques en général, et de documents XML en particulier.

Les éléments supplémentaires pour les documents techniques

On peut utiliser les éléments suivants pour marquer les caractéristiques particulières de documents techniques :

L’exemple suivant montre comment ces éléments pourraient être utilisés pour encoder le passage d’un tutoriel, qui constitue une introduction au langage de programmation Fortran :

<p>Par tradition, on introduit
                une langue de programmation avec cet exemple
        classique: <eg xml:space="preserve">CHAR*12 GRTG
GRTG='HELLO WORLD'
PRINT *, GRTG
END</eg></p><p>Dans ce code, on voit la déclaration d'un variable <ident>GRTG</ident>:
                  <code>CHAR*12 GRTG</code>, qui indique que l'object <ident>GRTG</ident> contient
                12 octets de type <ident>CHAR</ident>. La valeur <val>HELLO WORLD</val> est ensuite
                attribuée à cette variable. </p>

On peut paramétrer une application pour qu’un texte, tel que celui présenté ci-dessus, soit correctement formaté (par exemple, en conservant les fins de ligne, en utilisant une police particulière). De même, l’utilisation de balises telles que <ident> facilite grandement la construction d’un index.

On utilise l’élément <formula> pour encadrer toute formule mathématique ou chimique, qui se présente dans un texte comme un élément distinct. Comme les formules sont généralement exprimées au moyen d’une grande diversité de signes typographiques spécifiques, ce qui n’est pas le cas des textes ordinaires, le corps de la formule doit faire l’objet d’une notation spécifique. Cette notation doit être spécifiée par l’attribut @notation, comme dans l’exemple suivant :

<formula notation="tex"> \begin{math}E =
mc^{2}\end{math} </formula>

Se pose un problème quand l’encodage XML est le propos même du document technique, lui-même encodé en XML. Dans de tels documents, il est essentiel de distinguer clairement l’encodage des exemples de l’encodage du document lui-même ; dans ce type de document, la probabilité de trouver des balises de fin est alors très forte. Une solution simple consiste, pour les exemples, à utiliser la référence d’entité prédéfinie &lt; pour représenter chaque caractère < (qui marque le début d’une balise XML). Une solution plus générale consiste à spécifier que les exemples sont des données, qui ne sont pas destinées à être traitées par un analyseur. Pour ce faire, on se sert d’une construction XML particulière, appelée CDATA marked section, comme dans l’exemple suivant :

<p>Une liste peut
  être balisée ainsi: &lt;eg&gt;&lt;![ CDATA[ &lt;list&gt; &lt;item&gt;Premier item de
  la liste&lt;/item&gt; &lt;item&gt;deuxième item&lt;/item&gt; &lt;/list&gt;]]&gt;
  &lt;/eg&gt; L'élément <gi>list</gi> contient une série d'éléments
<gi>item</gi></p>

L’élément <list> utilisé dans l’exemple ci-dessus ne doit pas être considéré comme faisant partie du document proprement dit, parce qu’il est inséré dans une section marquée : elle commence par une déclaration spéciale de balisage <![CDATA[, et se termine par ]]>.

Notons également l’utilisation de l’élément <gi> pour baliser les références aux noms d’éléments (ou identifiants génériques) dans le corps du texte.

Les sections générées

Les systèmes de production de documents actuelles offrent la possibilité de générer automatiquement des sections telles que la table des matières, l'index etc. Le schéma TEI Lite propose un élément pour marquer l’endroit où une telle section doit se trouver.

L’élément <divGen> peut être placé à n’importe quel endroit où un élément de division serait autorisé :

<front>
  <titlePage/>
  <divGen type="toc"/>
  <div>
    <head>Preface</head>

  </div>
</front><body/><back><div>
    <head>Appendix</head>

  </div><divGen type="index" n="Index"/></back>

Cet exemple montre également l’utilisation de l’attribut @type pour distinguer les différentes sortes de sections qui auront été générées : dans le premier cas, une table des matières (un toc), et dans le second un index.

Quand un index existant ou une table des matières doivent être encodés (plutôt que générés), on utilise l’élément <list> (cf. section Les listes).

La génération d’index

Alors que la production d’une table des matières à partir d’un document correctement balisé ne pose généralement pas de problèmes, la production d’un index de bonne qualité demande souvent un balisage plus minutieux. Bien que l’extraction (par exemple) de toutes les occurrences des éléments <term> ou <name> puisse constituer un bon point de départ, cela peut cependant ne pas suffire.

Le schéma TEI propose une balise spécifique <index>, qu’on utilise pour indiquer à la fois les parties du document qui doivent être indexées, et comment l’index doit être construit.

Par exemple, le deuxième paragraphe de cette section pourrait être codé ainsi :

Le schéma TEI propose une balise spécifique
  <gi>index</gi><index><term>indexation</term></index>
<index><term>index (balise)</term><index><term> generation
  d'index</term></index></index>, qu’on utilise pour indiquer ...

L’élément <index> peut également être utilisé pour fournir une information de nature interprétative ou analytique. Par exemple, dans le cadre d’une étude stylistique, on voudrait enregistrer les différentes figures utilisées par Ovide dans les Métamorphoses[^19]. Une telle étude enregistrerait les références à Jupiter (soit "deus", "se", et le sujet de confiteor [sous une forme fléchie codée 227], les références à Jupiter-sous-l’-apparence-d’-un-taureau (soit imago tauri fallacis et le sujet de teneo), et ainsi de suite.

<l n="3.001">iamque deus posita fallacis
imagine tauri</l><l n="3.002">se confessus erat Dictaeaque rura tenebat</l>

[^19: L’analyse, légèrement simplifiée, a été empruntée, avec leur autorisation, à Willard McCarty et Burton Wright, An Analytical Onomasticon to the Metamorphoses of Ovid.]

Pour ce faire, on peut utiliser l’élément <note>, discuté dans la section Les notes, ou l’élément <interp> discuté dans la section L’interprétation et l’analyse. Ici, on montre comment l’élément <index> peut aussi être utilisé.

On suppose que l’objet doit générer plus d’un index : l’un rassemblera les noms des divinités (appelé "dn"), un autre les références onomastiques (appelé "on"), un troisième les références pronominales (appelé "pr"), et ainsi de suite. On pourrait alors procéder de la manière suivante :

<l n="3.001">iamque deus posita fallacis
imagine tauri <index indexName="dn"><term>Iuppiter</term><index><term>deus</term></index></index>
<index indexName="on"><term>Iuppiter (taurus)</term><index><term>imago tauri
      fallacis</term></index></index></l><l n="3.002">se confessus erat Dictaeaque
rura tenebat <index indexName="pr"><term>Iuppiter</term><index><term>se</term></index></index>
<index indexName="v"><term>Iuppiter</term><index><term>confiteor
    (v227)</term></index></index></l>

Pour chaque élément <index> ci-dessus, une entrée sera générée dans l’index approprié. L’entrée est le contenu de l’élément <term>. Dans chaque cas, les éléments <term>, rassemblés dans l’élément <index> secondaire, fournissent un deuxième mot clé. La référence à proprement parler sera extraite du contexte dans lequel l’élément <index> apparaît, i.e. dans ce cas, l’identifiant de l’élément <l> qui le contient.

Les adresses

On utilise l’élément <address> pour baliser une adresse postale de n’importe quel type. Il contient un ou plusieurs éléments <addrLine>, pour chaque ligne de l’adresse. Voici un exemple simple :

<address><addrLine>Centre d'Études Supérieures de la Renaissance</addrLine>
<addrLine>59, rue Néricault-Destouches</addrLine><addrLine> 37013 TOURS</addrLine><addrLine>France</addrLine></address>

Les parties de l’adresse peuvent être distinguées en utilisant l’élément <name>, discuté dans la section Les dénominations et les expressions référentielles.

<address><addrLine>Centre d'Études Supérieures de la Renaissance</addrLine>
<addrLine>59, rue Néricault-Destouches</addrLine><addrLine> 37013 <name type="city">TOURS</name></addrLine><addrLine><name type="country">France</name></addrLine></address>

Les jeux de caractères, les diacritiques, etc.

Avec l’adoption par XML de l’Unicode, c’est-à-dire l'ensemble des caractères devant être utilisés dans tous les documents, la plupart des problèmes qui se posaient précédemment pour représenter la diversité des langues et des systèmes d’écriture ont été grandement réduits. Pour ceux qui travaillent avec les formes standards des langues européennes notamment, il n’y a presque rien à faire : tout éditeur XML permet de saisir directement des caractères accentués ou d’autres caractères « non ASCII ». Ces caractères doivent être stockés dans le fichier final de manière à ce qu’ils soient directement transférables entre des systèmes différents.

Dans un document XML, il y a deux exceptions importantes : les caractères & et < ne peuvent être saisis directement, car ils ont une signification particulière, celle de balise de début. Ils doivent toujours être représentés comme des références d’entité : &amp; ou &lt;.

Les Parties liminaires et les Annexes

Les Parties liminaires

Dans beaucoup de cas, notamment dans les textes plus anciens, les Parties liminaires, telles que les pages de titre, les messages préliminaires, etc. peuvent fournir des informations linguistiques et sociales très utiles. P5 fournit un ensemble de recommandations pour distinguer les éléments textuels les plus courants rencontrés dans les Parties liminaires. Elles sont présentées ci-dessous.

La page titre

Le début d’une page titre doit être balisé avec l’élément <titlePage>. Tout le texte contenu sur la page doit être transcrit et balisé avec les éléments figurant dans la liste suivante :

Quand cela est nécessaire, les variations de polices de caractères doivent être notées avec l’attribut @rend, décrit ci-dessus. Les Recommandations n’offrent pas à l’heure actuelle de solutions pour décrire en détail l’interlettrage et de la dimension des caractères dans les titres ornés. On indiquera les changements de langue au moyen de l’attribut @xml:lang ou de l’élément <foreign>. Le nom des personnes, des lieux, des organisations peut être balisé au moyen de l’élément <name>, partout où ils apparaissent, et si aucun autre élément plus spécifique n’est disponible.

Deux pages titre en guise d’exemple :

<titlePage rend="Roman">
  <docTitle>
    <titlePart type="main">BERENICE <hi>TRAGEDIE</hi>. </titlePart>
  </docTitle>
  <byline>PAR <docAuthor>M. RACINE.</docAuthor></byline>
  <docImprint>A <name>PARIS</name>, Chez <name>Claude Barbin</name>, au Palais, sur
    le Second Perron de la Sainte Chapelle.</docImprint>
  <docDate>M. DC. LXXI</docDate>
  <imprimatur>AVEC PRIVILEGE DU ROY.</imprimatur>
</titlePage>

<titlePage>
  <docTitle>
    <titlePart type="main"> LES CHOSES</titlePart>
    <titlePart type="sub">Une histoire des années soixante </titlePart>
  </docTitle>
  <byline>PAR <docAuthor>GEORGES PEREC</docAuthor></byline>
  <titlePart>Postface de <name>Jacques LEENHARDT</name></titlePart>
  <docImprint>Julliard</docImprint>
</titlePage>

Comme précédemment, on utilise l’attribut @ref pour associer un nom à une description plus elaborée de l'entité nommé stockée ailleurs. Par exemple :

<titlePart>Postface de <name ref="http://cral.ehess.fr/index.php?139">Jacques
    LEENHARDT</name></titlePart>

Différents types de liminaires

Les parties les plus importantes des Parties liminaires doivent être balisées comme <div> ; pour distinguer les différents liminaires, l’attribut @type pourra avoir l’une des valeurs suivantes :

preface
- Un avant-propos ou une préface qui s’adresse au lecteur, dans lequel l’auteur ou l’éditeur expose le contenu, les objectifs, l’origine du texte
dedication
- Une adresse formelle ou une dédicace de l’auteur du texte à une ou plusieurs personnes ou institutions
abstract
- Un résumé du contenu du texte, sous la forme d’un texte libre
ack
- Les remerciements de l’auteur pour des personnes et des institutions qui ont contribué à la création du texte
contents
- Une table des matières spécifiant la structure du travail et listant ses constituants. On doit utiliser l’élément <list> pour spécifier sa structure.
frontispiece
- Un frontispice illustré, qui comprend éventuellement du texte.

Pour d’autres types de liminaires, l’encodeur peut spécifier à sa guise les autres valeurs de l’attribut @type.

Comme dans n’importe quelle division textuelle, les Parties liminaires peuvent contenir des éléments structurels de bas niveau ou des éléments non structurels (cf. ci-dessus). Elles commencent généralement par un titre, qui doit être balisé au moyen de l’élément <head>. Les éléments suivants sont aussi disponibles pour baliser les contenus:

Les messages qui apparaissent ailleurs dans le texte, contiendront naturellement les mêmes éléments.

A titre d’exemple, prenons la préface des Essais de Michel de Montaigne (édition de 1600) ; elle pourrait être balisée comme suit :

               <div type="préface">
                 <head>Au Lecteur</head>
                 <p>C'EST icy un Livre de bonne foy, Lecteur. Il t'advertit dès l'entrée, que je ne
                   m'y suis propose aucune fin, que domestique &amp; privée .... Ainsi, Lecteur, je
                   suis moy-mesme la matière de mon livre : ce n'est pas raison que tu employes ton
                   loisir en un subject si frivole &amp; si vain.</p>
<closer>
                     <salute>A Dieu donc.</salute>
                     <signed>De <name>Montaigne</name>, ce premier de Mars, mil cinq cês quatre
                       vingts.</signed>
                   </closer>
               </div>

Les Annexes

Les divisions structurelles des Annexes

Du fait de la diversité des pratiques de publications, les Annexes peuvent contenir virtuellement tous les éléments listés dans les Parties liminaires ; quand c’est le cas, on utilise les mêmes éléments. Cependant, les Annexes peuvent aussi contenir les types indiqués ci-dessous. Comme pour les divisions structurelles du corps du texte, ils doivent être balisés par des éléments <div>, et distingués par les valeurs associées à l’attribut @type :

appendix
- Une section auxiliaire indépendante d’un travail, qui propose souvent un texte additionnel d’une certaine manière non canonique.
glossary
- Une liste de termes associés chacun à une définition (glose) : elle doit être encodée avec l’élément <list type="gloss">.
notes
- Une section dans laquelle des notes de toutes sortes, y compris textuelles, sont regroupées.
bibliogr
- Une liste de références bibliographiques : elle doit être encodée comme une <listBibl>
index
- Toute forme d’index préexistant au travail. (Un index peut aussi être généré pour un document. On utilise alors l’élément <index> décrit plus haut).
colophon
- Une déclaration qui apparaît à la fin d’un livre décrivant les conditions de sa production physique.

La page titre électronique

Chaque texte TEI a un en-tête qui fournit une information analogue à celle qui est fournie dans la page titre d’un texte imprimé. L’en-tête est indiqué par l’élément <teiHeader> et est constitué de quatre parties :

Un corpus, ou un recueil de textes, qui partagent beaucoup de caractéristiques, peuvent avoir un en-tête pour le corpus, et des en-têtes individuels pour chacun des composants. Dans ce cas, l’attribut @type indique le type de l’en-tête. Et l’élément <teiHeader type="corpus"> présente les informations relatives au corpus.

Certains des éléments de l’en-tête contiennent du texte libre, encodé sous la forme d’un ou plusieurs <p>. D’autres sont regroupés :

- Les éléments dont le nom se termine en Stmt (pour statement) rassemblent généralement un ensemble d’éléments enregistrant une certaine information structurée.
- Les éléments dont le nom se termine en Decl (pour declaration) regroupent des informations sur les pratiques d’encodage particulières qui ont été utilisées.
- Les éléments dont le nom se termine en Desc (pour description) contiennent une description sous la forme d’un texte libre.

La description du fichier

L’élément <fileDesc> est obligatoire. Il contient la description bibliographique complète du fichier, et utilise les éléments suivants :

Un en-tête minimal a la structure suivante :

<teiHeader>
  <fileDesc>
    <titleStmt/>
    <publicationStmt/>
    <sourceDesc/>
  </fileDesc>
</teiHeader>

La mention du titre

Les éléments suivants peuvent être utilisés dans le <titleStmt> :

Le nom d’une ressource numérique dérivée de son nom non numérique sera évidemment très proche. Cependant, il est important de distinguer le nom du fichier informatique de celui du texte de la source. Par exemple :

<titleStmt>
    <title>Artamène ou le Grand Cyrus : édition numérique</title>
    <author>Scudéry, Madeleine (1608-1701)</author>
    <respStmt>
      <resp>numérisation</resp>
      <name>Claude Bourqui</name>
      <name>Alexandre Gefen</name>
    </respStmt>
</titleStmt>

La mention de l’édition

Le <editionStmt> rassemble les informations relatives à une seule édition de la ressource numérique (« édition » étant employé dans le sens qu’il a dans une bibliographie). Il peut inclure les éléments suivants :

Par exemple:

<editionStmt><edition n="U2">Troisième version, avec des révisions substantielles <date>1987</date>
</edition></editionStmt>

La détermination de ce qui implique l'existence d'une nouvelle édition reste de la responsabilité de l'encodeur.

La mention relative à la taille

La mention <extent> note la taille approximative de la ressource numérique.

Par exemple :

<extent>4532
octets</extent>

La mention de la publication

Le <publicationStmt> est obligatoire. Il contient soit une simple description sous la forme d’un texte libre, soit au moins l’un des trois éléments décrits ci-dessous :

Chacun de ces trois éléments peuvent contenir les éléments suivants:

Par exemple:

                <publicationStmt>
                  <authority>Université François-Rabelais</authority>
                  <address>
<addrLine>3 rue des Tanneurs</addrLine>
<addrLine>37041 TOURS Cedex 1 France</addrLine>
</address>
                  <idno type="BVH">B360446201_B343_1</idno>
                  <availability status="restricted">
                    <licence target="http://creativecommons.org/licenses/by-sa/2.0/"> Ce document
                        est publié librement sur le web à destination de la communauté scientifique
                        dans le cadre de la licence Creative Commons « Paternité-Pas d’Utilisation
                        Commerciale-Partage des Conditions Initiales à l’Identique 2.0 France ».
                      </licence>
                  </availability>
                </publicationStmt>

La mention des séries et des notes

L’élément <seriesStmt> rassemble des informations concernant la collection ou la série, si elle existe, à laquelle la publication appartient. Il peut contenir les éléments <title>, <idno> ou des éléments <respStmt>.

La description de la source

L’élément <sourceDesc> est un élément obligatoire, qui enregistre toutes les spécifications de la source ou des sources, à partir desquelles le fichier informatique a été construit. Il peut contenir du texte libre, une référence bibliographique, et rassemble un ou plusieurs des éléments suivants :

Par exemple :

<sourceDesc>
  <p>Texte original : le texte a été créé sous sa forme électronique.</p>
</sourceDesc>

<sourceDesc>
  <bibl>Mazelier, Roger : Gérard de Nerval et l’Humour divin, Le Mesnil Saint-Denis,
    1995.</bibl>
</sourceDesc>

<sourceDesc>
  <bibl>
    <title level="a">L'Enracinement</title>
    <author>Simone Weil</author>, <title>Prélude à une déclaration des devoirs
      envers l'être humain </title>. <publisher>Gallimard</publisher>
    <date>1968</date>. </bibl>
</sourceDesc>

La description de l’encodage

L’élément <encodingDesc> spécifie les méthodes et les principes éditoriaux qui ont présidé à la transcription du texte. Il est fortement recommandé de l’utiliser. Il peut contenir du texte libre ou bien des éléments de la liste suivante :

Les descriptions du projet et des échantillons

Illustrons les éléments <projectDesc> et <samplingDesc> :

<encodingDesc><projectDesc><p>Corpus de
  textes sélectionnés pour la formation Claremont Shakespeare Clinic, June 1990.
</p></projectDesc></encodingDesc>

<encodingDesc><samplingDecl><p>Corpus
    d'échantillons de 2000 mots pris au début de chaque texte. </p>
</samplingDecl></encodingDesc>

Les déclarations éditoriales

L’élément <editorialDecl> permet de décrire (texte libre) les pratiques mises en œuvre lors de l’encodage du texte. Typiquement, cette description doit couvrir les aspects suivants, chacun faisant l’objet d’un paragraphe séparé :

correction
- comment et dans quelles circonstances, on a corrigé le texte.
normalization
- les types de régularisations et standardisations, qui ont été opérés.
quotation
- les décisions prises en matière de guillemets. Est-ce qu’ils ont été conservés ou remplacés par des références d’entité, les guillemets ouvrants et fermants sont-ils différenciés, etc. ?
hyphenation
- ce que l’on a décidé en matière de césure (notamment les césures de fins de ligne). Est-ce qu’elles ont été conservées, remplacées par des références d’entité, etc. ?
segmentation
- comment le texte a été segmenté, par exemple en phrases, en unités de ton, en strates graphémiques, etc. ?
interpretation
- quelles informations analytiques, interprétatives ont été associées au texte ?

Exemple :

<editorialDecl><p>L'analyse
morpho-syntaxique trouvée dans la section 4 a été ajoutée manuellement, et n'a
pas encore été contrôllée.</p><p>Contrôle des erreurs d'orthographe effectué par
le systeme WordPerfect. </p><p>Orthographe normalisée et modernisée selon
dictionnaire Le Grand Robert.</p></editorialDecl>

Les déclarations relatives au système de référence et à la classification

On utilise l’élément <refsDecl> pour documenter la manière dont les schémas de référencement standard ont été construits. Dans sa forme la plus simple, l’élément contient du texte libre.

Exemple :

<refsDecl><p>L'attribut
  <att>n</att> sur chaque <gi>div</gi> porte la référence canonique de cette
division sous la forme XX.yyy : XX fournissant la numérotation du livre en
chiffres romains, et yyy celle de la section en chiffres arabes, par ex
II.234.</p></refsDecl>

L’élément <classDecl> regroupe les définitions ou les sources de n’importe quel schéma de classification descriptive, qui sont utilisées par les autres parties de l’en-tête. On doit fournir au moins un schéma, encodé en utilisant les éléments suivants :

Dans le cas le plus simple, la taxinomie peut être définie par une référence bibliographique, comme dans l’exemple suivant :

<classDecl><taxonomy xml:id="RAMEAU"><bibl>Répertoire d'autorité-matière encyclopédique et alphabétique unifié
    (RAMEAU) de la Bibliothèque nationale de France. <ptr target="http://rameau.bnf.fr/"/></bibl>
</taxonomy></classDecl>

L’encodeur peut procéder d’une autre manière, ou bien compléter ce qui précède, en définissant un schéma de classification spécifique et personel, comme dans l’exemple suivant :

<taxonomy xml:id="taxinomiePerso">
  <category xml:id="a.a">
    <catDesc>littérature</catDesc>
  </category>
  <category xml:id="a.a.1">
    <catDesc>Drame bourgeois</catDesc>
  </category>
  <category xml:id="a.a.1.α">
    <catDesc>Comédie larmoyante</catDesc>
  </category>
  <category xml:id="a.b">
    <catDesc>Correspondance</catDesc>
  </category>
  <category xml:id="a.b.1.a">
    <catDesc>Dernières lettres</catDesc>
  </category>
  <category xml:id="a.c.">
    <catDesc>Littérature européenne -- 16e siècle</catDesc>
  </category>
  <category xml:id="a.c.1">
    <catDesc>Satire de la Renaissance </catDesc>
  </category>
  <category xml:id="a.d">
    <catDesc>Récits de voyage</catDesc>
  </category>
  <category xml:id="a.d.1">
    <catDesc>Récits de la mer </catDesc>
  </category>
</taxonomy>&gt;

Relier un texte particulier et une catégorie dans une taxinomie est réalisé grâce à l’élément <catRef>, inséré dans l’élément <textClass>. Cf. section ci-dessous.

La description du profil

L’élément <profileDesc> permet de caractériser la diversité des dimensions d’un texte. Il doit être enregistré dans un seul cadre et comporte trois constituants optionnels :

L’élément <creation> permet de documenter le lieu de la création du travail, même si celui-ci n’a pas été publié, ou bien s’il n’a pas été explicitement noté dans la source.

Exemple :

<creation><date when="1992-08">August 1992</date><name type="place">Taos, New
Mexico</name></creation>

Quand le texte est écrit dans différentes langues, on se sert de l’élément <langUsage>. Celui-ci contient des éléments permettent de documenter chaque langue en particulier : Par exemple, un texte comportant de manière prédominante du français tel qu’il est parlé au Québec, mais aussi de plus petits passages en anglais britannique et en anglais du Canada pourrait être documenté comme suit :

<langUsage>
  <language ident="fr-CA" usage="60">Québecois</language>
  <language ident="en-CA" usage="20">Anglais canadien</language>
  <language ident="en-GB" usage="20">Anglais britannique</language>
</langUsage>

L’élément <textClass> permet de classer le texte. On établit une référence vers un système de classification, localement défini par l’élément <classDecl>, ou bien on réfère à un schéma établi de manière externe, par exemple la Classification Décimale Universelle. Les textes peuvent être aussi classés à l’aide de listes de mots clés, qui peuvent eux-mêmes venir de listes contrôlées, définies localement, ou bien de manière externe. On utilise les éléments suivants pour établir de telles classifications :

La manière la plus simple de classer un texte est d’utiliser l’élément <classCode>. Par exemple, un texte avec la classification 410 de la Classification Décimale Universelle pourrait être documenté comme suit : <classCode scheme="http://www.udc.org">410</classCode>

Quand un schéma de classification a été défini localement en utilisant l’élément <taxonomy>, présenté dans la section précédente, l’élément <carRef> peut être utilisé pour y faire référence. Poursuivons avec un exemple proposé plus tôt, un travail répertorié dans ce corpus comme "Drame bourgeois" et "Récits de la mer". Il pourrait être documenté comme suit : <catRef target="#a.a.1 #a.d.1"/>

L’élément <keywords> contient la liste des mots clés ou des expressions qui identifient les thèmes ou la nature du texte. Comme précédemment, l’attribut @scheme identifie la source de laquelle ces termes ont été extraits, par exemple du système RAMEAU, ou ailleurs. Les mots clés utilisés peuvent également être répertorié dans élément <taxonomy>, tel que cela été présenté ci-dessus :

<textClass><keywords scheme="#fr_RAMEAU">
  <term>Littérature française -- 20ème siècle -- Histoire et critique</term>
  <term>Littérature française -- Histoire et critique -- Théorie, etc.</term>
  <term>Français (langue) -- Style -- Bases de données.</term>
</keywords></textClass>

Les classifications multiples sont possibles ; elles utilisent les mécanismes décrits dans cette section.

La description des modifications

L’élément <revisionDesc> permet de tenir le journal des modifications. Le journal peut être conservé sous la forme d’une suite d’éléments <change>, chacun contenant une courte description de la modification. On utilise les attributs @when et @who pour spécifier quand le changement a eu lieu et qui en est responsable.

Exemple :

<revisionDesc>
  <change when="1991-03-06" who="#EMB">fichier validé</change>
  <change when="1990-05-25" who="#EMB">version corrigée</change>
</revisionDesc>

Dans un environnement de production, il est souvent préférable d’utiliser un système automatisé pour conserver la trace des modifications. Beaucoup de systèmes de gestion de versions peuvent être également configurés pour mettre à jour automatiquement l’en-tête TEI d’un fichier.

Liste des éléments décrits

Le schéma TEI Lite est un sous-ensemble de la TEI P5. Dans la liste qui suit, qui rassemble des éléments et des classes qui ont été décrits ci-dessus, les informations, notamment les exemples, ont été extraites des définitions fournies dans la TEI P5, et peuvent donc renvoyer à des éléments ou des attributs qui ne sont pas proposées dans la TEI Lite. Notons cependant que seuls les éléments listés ici sont disponibles dans le schéma TEI Lite. Certaines spécifications peuvent également renvoyer à des attributs, qui, bien qu’ils soient disponibles dans la TEI Lite, n’ont pas été, par manque de place, présentés dans ce tutoriel.

<TEI>
@version

att.global
@xml:base

att.global.rendition
@style
@rendition

att.global.linking
@synch
@sameAs
@copyOf
@exclude
@select

att.datable.w3c
@notBefore
@notAfter
@from
@to

att.internetMedia

att.datcat

att.docStatus

att.internetMedia

model.msItemPart

model.msQuoteLike

model.personPart