Balisage basique
Attention :
Ce cours n'a pas pour but d'être exhaustif.
La liste de toutes les spécifications étant très longue il ne s'agira ici que d'en survoler les plus importantes sans pour autant entrer dans les détails.
Structure de base d'un fichier TEI
Définition :
Un document TEI est composé d'un en-tête comprenant les métadonnées du document et du document en lui même.
<TEI xmlns="http://www.tei-c.org/ns/1.0">
<teiHeader>
<!-- .... -->
</teiHeader>
<text>
<!-- .... -->
</text>
</TEI>
Remarque :
Un document TEI peut aussi être composé de plusieurs document TEI. Dans ce cas on utilisera le module CORPUS et la balise <teiCorpus>
. Qui contiendra une balise <teiHeader>
et un nombre non nul de balises <TEI>
Attributs globaux
La TEI propose des attributs utilisables sur n'importe quelle balise du document.
xml:id (identifier) Identifiant unique de l'élément
n (number) Numéro (ou un nom) pour l'élément. Il n'est pas forcément unique
xml:lang (language) Indique le langage des éléments contenus dans cette balise
rend (rendition) Indique comment l'élément était fourni dans le document originel
style Information supplémentaires de style utilisant un langage de style dédié (exemple CSS)
rendition Référence vers une description du style utilisé pour cet élément dans le document original
xml:base Apporte une URI de base pour les URL éléments fils.
xml:space Informations sur la manière de traiter les caractères de type espace (retour chariot, espace, tabulations, etc)
Remarque :
Les attributs xml:id
, xml:lang
, xml:base
et xml:space
sont définis dans le standard XML
Le header
Définition :
Le header est composé par les métadonnées relatives au document. Un document TEI doit obligatoirement en comporter un. Il se situe juste en dessous de la balise <TEI>
<teiHeader>
<!-- .... -->
</teiHeader>
Composition du header
Description du fichier
<fileDesc>
Description de l'encodage
<encodingDesc>
Profil du texte (des informations de contexte, classification)
<profileDesc>
Historique de version
<revisionDesc>
Attention : Complexité
Selon le domaine d'application du texte à baliser, le header peut être plus ou moins complexe. Par exemple le header d'un corpus de textes est plus lourd étant donné qu'il doit inclure en plus des balises de bases (pour le corpus dans sa globalité) les informations sur chaque texte en particulier. De ce fait, le module CORPUS va ajouter des balises utilisables dans le header.
Remarque : Header minimal
Seule la description du fichier est obligatoire dans le header.
Exemple : Header pour un livre
<teiHeader>
<fileDesc>
<titleStmt>
<title>Discours de métaphysique, suivi de Monadologie et Autres textes</title>
<author>Gottfried Wilhelm Leibniz</author>
</titleStmt>
<editionStmt>
<edition>Folio Essais, <date>Avril 2004</date></edition>
<respStmt>
<resp>Annotations by</resp>
<name>Michel Fichant</name>
</respStmt>
</editionStmt>
</fileDesc>
</teiHeader>
Balises communes
Remarque :
Elles sont incluses dans le module CORE
Paragraphe
<p> ... </p>
C'est une balise qui permet d'encadrer des éléments de prose. Ces derniers sont très présents dans la majorité des textes balisés par la TEI. Un paragraphe peut inclure n'importe quelle autre balise du module CORE.
<p>Zombie ipsum reversus ab viral inferno, nam rick grimes malum cerebro. De carne lumbering animata corpora quaeritis. Summus brains sit, morbo vel maleficia? De apocalypsi gorger omero undead survivor dictum mauris. Hi mindless mortuis soulless creaturas, imo evil stalking monstra adventus resi dentevil vultus comedat cerebella viventium. Qui animated corpse, cricket bat max brucks terribilem incessu zomby. The voodoo sacerdos flesh eater, suscitat mortuos comedere carnem virus. Zonbi tattered for solum oculi eorum defunctis go lum cerebro. Nescio brains an Undead zombies. Sicut malus putrid voodoo horror. Nigh tofth eliv ingdead.</p>
Mise en valeur
<hi>Texte important</hi>
<foreign>Foreign text</foreign>
<emph rend="italic">Texte en italique</emph>
<distinct type="vulgaire">Texte vulgaire</distinct>
Ces balises permettent de mettre en valeur certaines parties d'un texte. Il s'agit principalement une mise en valeur sémantique mais avec l'application des attributs rend, style ou rendition on peut leur définir une apparence particulière.
Citations
<q>Passage cité</q>
<said>Parole cité</said>
<quote>Citation d'une source externe</quote>
<cit>Citation tirée d'un autre document</cit>
<mentioned>Mot ou expression mentionnée, non utilisée</mentioned>
<soCalled>Mot ou phrase pour lequel l'auteur ne prend pas de responsabilité</soCalled>
Ces balises permettent d'encoder plus spécifiquement tout ce qui a rapport avec la citation dans un texte qu'il s'agisse de la parole d'une personne, un extrait d'un autre document ou encore des mentions.
Complément : Plus de contenu
Structure des textes
Structure de base
La base est composée de trois balises :
front : Comprend les textes informatifs qui arrivent avant le corps du texte, comme le titre, une préface ou encore une dédicasse
body : Le corps du texte en lui même
back : Annexes, appendices ou autres contenus qui suivent le corps du texte
<TEI xmlns="http://www.tei-c.org/ns/1.0">
<teiHeader>
<!-- .... -->
</teiHeader>
<text>
<front>
<!-- .... -->
</front>
<body>
<!-- .... -->
</body>
<back>
<!-- .... -->
</back>
</text>
</TEI>
Il est possible d'imbriquer plusieurs de ces contenus dans une balise <groupe>
. L'ordre sera donc le suivant :
front
les group (composés de balises text)
back
<TEI xmlns="http://www.tei-c.org/ns/1.0">
<teiHeader>
<!-- .... -->
</teiHeader>
<text>
<front>
<!-- .... -->
</front>
<group>
<text>
<front>
<!-- .... -->
</front>
<body>
<!-- .... -->
</body>
<back>
<!-- .... -->
</back>
</text>
<text>
<body>
<!-- .... -->
</body>
</text>
</group>
<back>
<!-- .... -->
</back>
</text>
</TEI>
Divisions
La balise <div> permet d'identifier une division dans le texte.
Elle possède deux attributs type et subtype afin d'identifier plus précisément le rôle de cette dernière.
<body>
<div type="part" n="1">
<div type="chapter" n="1">
<!-- Partie 1, Chaptitre 1 -->
</div>
<div type="chapter" n="2">
<!-- Partie 1, Chaptitre 2 -->
</div>
</div>
<div type="part" n="2">
<div n="1" type="chapter">
<!-- Partie 2, Chaptitre 1 -->
</div>
<div n="2" type="chapter">
<!-- Partie 2, Chaptitre 2 -->
</div>
</div>
</body>
Des divisons plus précises existent. Elles permettent d'indiquer le niveau sous-division. Elles sont nommées <div1>
<div2>
... <div7>
. Elle peuvent porter les même attributs que les divisions normales
<body>
<div1 type="part" n="1">
<div2 type="chapter" n="1">
<!-- Partie 1, Chaptitre 1 -->
</div2>
<div2 type="chapter" n="2">
<!-- Partie 1, Chaptitre 2 -->
</div2>
</div1>
<div1 type="part" n="2">
<div2 n="1" type="chapter">
<!-- Partie 2, Chaptitre 1 -->
</div2>
<div2 n="2" type="chapter">
<!-- Partie 2, Chaptitre 2 -->
</div2>
</div1>
</body>