Les petites cases

Les réalités dans l'encodage XML

Depuis que nous nous sommes revus1 à Digital Humanities en juillet, Christian Vandendorpe2 et moi débattons du problème de l'encodage en XML des caractéristiques physiques d'un document. Cette discussion qui a trouvé une première issue à Victoria, ainsi que la préparation d'une communication sur l'encodage des chartes médiévales pour le Consortium des corpus de français médiéval, m'ont amené à réfléchir à un des problèmes que je rencontrais dans l'encodage en XML, en particulier des éditions critiques : mettre en lumière les différents niveaux/types de renseignements qu'on peut trouver dans un document.

Nous sommes bien d'accord que le XML est basé sur l'idée de séparer le contenu de la mise en forme des données. Cela permet d'assurer l'interopérabilité entre les différents outils et plate-formes permettant de l'exploiter et de le traiter.

Cette règle a peut-être tendance à nous faire oublier qu'un document se compose à la fois de données et d'un support. La conservation en bibliothèque a pour but d'assurer l'intégrité de ce couple et les chercheurs en histoire du livre ont montré que la mise en forme avait de l'importance dans l'organisation et l'appréhension de l'information. Lorsqu'on encode l'édition d'un texte manuscrit, il n'est donc pas inutile d'encoder certaines informations qui relèvent de caractéristiques physiques du document source3 : changement de lignes, de pages ou de mains, dans le cas d'un manuscrit, les abréviations... Dans ce cas, les informations encodées n'ont rien à voir avec le rendu à l'écran. Elles font partie intégrante du document source transcrit. Ces informations physiques deviennent alors des informations logiques et elles relèvent des buts fixés par l'encodeur.

Or, même si leurs études croisées avec le texte du document en lui-même sont fondamentales, nous sommes d'accord que ces deux types d'informations ne sont pas de même nature, c'est ce que j'appelle une réalité. Dans le cas de l'édition d'un manuscrit, le document encodé est composé d'au moins deux réalités :

  1. les caractéristiques physiques du support du texte ;

  2. le texte en lui-même, les données brutes.

La mise en lumière des réalités encodées permet de mieux appréhender le balisage et évite les erreurs dans le choix de balises. Cela permet de prendre conscience des différents niveaux d'informations contenues dans le document et aider à son analyse et son traitement. Mon exemple se limite à deux réalités, mais d'autres exemples sont plus complexes. Dans le cas de l'édition critique d'une charte, par exemple, l'encodage de l'édition critique de la charte reflète l'événement relaté dans la charte (une donation par exemple), l'analyse du chercheur, le texte qui relate l'événement et le support physique avec la prise en compte pour ces deux dernières réalités qu'il existe plusieurs supports du texte différents (original et copies).

Mais, revenons à mon exemple et à son encodage. Encoder ces deux réalités posent le problème de l'overlapping. En XML, les balises ne peuvent pas se chevaucher. Si j'encode les caractéristiques physiques et la structure logique du texte, un paragraphe peut commencer sur une page et finir sur une autre, on ne peut pas écrire :

<page><p>Blabla</page><page> blabla</p></page>

Dans ce genre de cas, la TEI préconise l'utilisation de « milestone », c'est à dire des balises vides qui donnent une information sur le point précis, dans notre exemple, le changement de pages :

<p>Blabla <pb/> blabla</p>

Mais, bien souvent et en TEI en particulier, l'encodage de la structure logique prend le pas sur les caractéristiques physiques. Après tout, on pourrait vouloir encoder en priorité les caractéristiques physiques et simplement à titre d'appui la structure logique. Il serait intéressant, me semble-t-il, de permettre la réciproque ou mettre au même plan les deux réalités.

C'est pourquoi certains font d'autres propositions : encodage dans deux fichiers séparés des deux réalités ou utiliser les namespaces pour différencier les deux arbres en mettant de côté le problème de l'overlapping, le multi-hierarchical XML, dont j'ai parlé dans mon précédent billet.

Ces deux solutions n'apportent pas de réponses entièrement satisfaisantes. Dans le cas de deux fichiers séparés, il faut quand même mettre au point un système de pointeurs qui permet de synchroniser les deux niveaux d'informations dans les deux fichiers différents qui se traduira bien souvent par l'ajout de balises. Au final, je ne sais pas si cela facilite véritablement le processus. Quant à la deuxième solution, elle propose une utilisation des namespaces qui n'est pas conventionnel, ce qui pourrait poser des problèmes au cas où les deux réalités utilisent le même schéma, donc le même namespace. Pourtant, cette dernière solution a le mérite de mettre le doigt sur un autre problème en proposant d'ailleurs une réponse. Le XML n'offre aucun moyen de mettre en lumière une des réalités encodées, ce qui permettrait de repérer rapidement et facilement une des réalités et, ainsi, en optimiser son traitement, son interrogation et son indexation. C'est particulièrement crucial dans le cas où les différentes réalités sont encodées avec les mêmes balises comme dans une page Web. C'est ce cas que je vous propose d'étudier dans le prochain billet.

Quelques notes en passant

1 J'ai pour la première fois eu l'honneur de rencontrer Christian Vandendorpe à un colloque organisé à l'ENSSIB : les défis de la publications sur le Web.

2 Christian Vandendorpe, que je remercie pour nos discussions et nos échanges, spécialiste de la théorie du texte et de l'hypertexte est l'auteur d'un très bon livre sur l'hypertexte, Du papyrus à l'hypertexte, dont je recommande à tous la lecture.

3 Il existe un champ de recherche spécialisé par cette question : la critique génétique des textes dont le laboratoire ITEM est le spécialiste.

Structuration XML Causeries Édition critique TEI — 

Commentaires

Merci, Gautier, pour ce résumé de la problématique. De fait, il n'existe pas de solution entièrement satisfaisante à ce problème. Les données visuelles de mise en page ne sont pas toujours des éléments secondaires susceptibles d'être écartés du revers de la main : elles peuvent même influencer de façon notable la lecture du texte, le cas le plus extrême étant sans doute la mise en forme du poème de Mallarmé sur le coup de dés (http://poetes.com/mallarme/coup_de.htm).

Renear, Mylonas et Durand ont fort bien exposé dans un article de 1993 les apories auxquelles se heurte toute tentative de réduire le texte à une Hiérarchie Ordonnée de Contenus (en anglais : OHCO) pour finir par conclure que la recherche sur le texte en est encore à un stade rudimentaire (http://www.stg.brown.edu/resources/stg/monographs/ohco.html). Dans la pratique, toutefois, la réduction du texte à une structure logique se révèle efficace, à tel point que les questions de mise en page sont souvent tenues pour secondaires, voire inexistantes -- je précise tout de suite que ce n'est pas le cas du blog de Gautier, dont la mise en page au moyen de feuilles de style est particulièrement soignée et invite à une lecture précise plutôt qu'à un simple écrémage. Le problème se situe au plan de la philosophie qui sous-tend le xml et qui a eu pour conséquence de minimiser, dans l'esprit de beaucoup, la dimension visuelle: c'est contre cela qu'il faut réagir. On ne peut pas tout simplement oublier les acquis de plusieurs siècles de recherches sur la mise en page et la typographie.