Travail dirigé de Martin Sévigny, ©1996 Section précédente | Section suivante | Page d'accueil |

3. Revue de quelques systèmes existants

Un aspect important de la méthodologie utilisée pour cette recherche est l’étude de systèmes similaires. Pour ce travail, trois systèmes ont fait l’objet d’une étude, soit le lecteur Dynatext, de Electronic Book Technologies, Panorama de SoftQuad et Édibase SGML, de Documensa.

Les deux premiers logiciels ont comme fonction de présenter des documents structurés, en format SGML, et de permettre certaines recherches dans ces textes. Le troisième logiciel est un système de gestion de bases de données, avec la particularité que les documents sources sont en format SGML. Notre étude s’est penchée plus spécifiquement sur les possibilités de recherche de ces logiciels, de même que sur les éléments d’interface propres à l’exploitation de documents structurés.

Les informations concernant Dynatext proviennent de l’aide en ligne fournie avec le logiciel, de l’expérience personnelle de l’auteur avec le logiciel ainsi que de la documentation sommaire fournie par la compagnie. Pour Panorama, l’aide en ligne et certaines expérimentations constituent les seules sources de renseignement, alors que pour Édibase SGML, une présentation privée effectuée par un représentant de Documensa de même que les fiches techniques ont permis d’en faire l’analyse.

3.1 Dynatext

Le lecteur Dynatext (Dynatext Viewer), conçu par Electronic Book Technologies, est un logiciel de consultation et de recherche pour des documents électroniques. Le lecteur est le dernier élément d’une chaîne de production de documents électroniques: les documents furent auparavant conçus, validés et compilés par d’autres logiciels de la même famille, parce que le lecteur Dynatext ne peut le faire seul.

La chaîne de production dont fait partie Dynatext est conçue pour traiter des documents en format SGML, peu importe le type des documents. Toutefois, avant de distribuer les documents avec Dynatext, ils doivent être compilés, c’est-à-dire traduits dans un certain format (propriétaire), qui inclut entre autres des index. Étant donné le format d'origine des documents (SGML), Dynatext constitue tout de même un environnement de recherche et de consultation de documents structurés.

Dynatext gère son information à l’aide de deux ensembles, les collections et les livres, une collection contenant plusieurs livres. La définition exacte d’une collection ou d’un livre est laissée à l’éditeur des documents électroniques, mais une chose est sûre, ce choix a des conséquences importantes sur la recherche.

En mode consultation, l’usager ouvre un livre qui est ainsi associé à une fenêtre. Il peut ouvrir de nombreux livres, y compris plusieurs fois le même livre ou des livres provenant de collections différentes. Il est à noter que certaines parties de livres peuvent être présentées dans des fenêtres différentes, comme les tableaux ou les figures.

Les fenêtres de consultation des livres présentent habituellement deux parties; une première affiche le contenu du livre et l’autre affiche un navigateur. Ce navigateur est destiné à aider l’usager à parcourir des livres volumineux, et est normalement constitué d’une table des matières du livre, qui défile de façon synchronisée avec le contenu.

Dynatext permet des recherches relativement complexes dans les bases de documents qu’il gère. Un langage de commandes structuré est disponible, et l'éditeur des documents peut également fournir des bordereaux de recherche spécialisés pour permettre à ses lecteurs d'effectuer des requêtes complexes sans avoir à connaître la structure de la base.

Le langage de recherche permet bien sûr de trouver des mots ou des phrases (maximum 10 mots), mais il permet également de raffiner ces recherches de trois façons:

Recherche par proximité

La recherche par proximité permet de sélectionner des parties de texte qui contiennent des mots ou des phrases situées à proximité l’un de l’autre. Les mots-clés associés à ces recherches sont: AFTER, BEFORE, OF, NEAR, WITHIN, WORD, WORDS. Une recherche typique serait:

informatique within 2 words before documentaire

Recherche booléenne

La recherche booléenne est effectuée de façon traditionnelle, avec les opérateurs AND, OR, NOT. Fait important à noter, l'étendue valide du AND n'est pas spécifiée dans l'aide en ligne. Toutefois, l'expérience nous a montré que l'opérateur and est exactement équivalent à la séquence within 20 words of, du moins pour la base de documents avec laquelle nous avons fait les tests.

Recherche contextuelle

La recherche contextuelle est celle qui profite de la structure des documents de la base. Il est possible de préciser les requêtes de recherche en utilisant les éléments SGML définis dans la DTD et les mots-clés CONT, CONTAINING, DIRECTLY, IN, INSIDE, NULL, WITH.

Il semble que les mots-clés in et inside aient la même signification, c'est-à-dire tout ce qu'il y a "au-dessous" d'un point de vue hiérarchique. La signification des mots-clés NULL et WITH n'est pas expliquée par l’aide en ligne, alors que DIRECTLY vient qualifier IN ou INSIDE en spécifiant de chercher un seul niveau hiérarchique inférieur, donc immédiatement au-dessous.

Dans l'exemple suivant, tous les titres qui contiennent le mot "bibliothèque" seront retenus:

bibliothèque inside <title>

Alors que dans l'exemple suivant, seuls les titres se trouvant sous un chapitre seront retenus:

bibliothèque inside <title> inside <chapter>

Finalement, pour illustrer l'utilisation de DIRECTLY, mentionnons que dans l'exemple suivant, seuls les titres de chapitre seront retenus:

bibliothèque inside <title> directly inside <chapter>

La différence est importante, puisque dans le deuxième exemple, les titres de section (par exemple) seraient également retenus.

La signification des mots-clés CONT et CONTAINING est similaire à celle de IN et INSIDE, à deux exceptions près. Il s’agit bien sûr de l’opposé hiérarchique ("contient" plutôt que "est inclus") et de plus, cela fait une différence dans la présentation des résultats. Nous reviendrons là-dessus plus loin.

Cette brève description du fonctionnement de Dynatext nous permet de tirer certaines conclusions au sujet de la recherche et des éléments d’interface. Il est d’abord important de mentionner que la documentation sur la recherche contextuelle n’est pas fournie avec le logiciel, mais bien avec la collection de documents électroniques, si l’éditeur le juge nécessaire. Le producteur (Electronic Book Technologies) semble croire que la recherche contextuelle demande une connaissance de la structure de la part de l’usager, et par le fait même cette recherche dépend du type de document (DTD en langage SGML), donc de la collection et donc de l’éditeur.

Cette position peut se défendre, mais elle est surtout basée sur le fait que Dynatext ne peut lui-même donner des informations sur la structure. En effet, aucune fonction de Dynatext ne permet à l’usager de connaître la structure des documents qu’il consulte, et donc de l’exploiter. En fait, le seul indice provient de l’apparence des diverses sections à l’écran. La table des matières contient cette information en partie, mais l’usager ne sait pas comment elle fut construite. Dynatext permet également d’exporter les documents en format SGML, mais un éditeur de texte est nécessaire pour les consulter. Encore une fois, le lecteur Dynatext n’est d’aucune aide.

Ces remarques montrent bien la philosophie derrière ce produit: le langage d’interrogation contextuel est destiné à l’éditeur des documents, et non à l’usager. En effet, l’éditeur a le loisir de définir des bordereaux de recherche spécialisés qui peuvent offrir des fonctions de recherche exploitant la structure. Bien entendu, ces bordereaux et leur contenu sont traduits dans le langage d’interrogation décrit précédemment puis les recherches sont effectuées.

Dynatext, comme nous l’avons mentionné, fonctionne avec des collections de livres. La recherche peut s’effectuer dans un livre, un ensemble de livres, une collection ou un ensemble de collections. La présentation des résultats est basée sur le concept de "succès" (hits). Au niveau de la (ou des) collection, le nombre de succès est indiqué pour chaque livre. Ensuite, l’ouverture d’un livre qui comprend au moins un succès aura pour effet de faire défiler le contenu (et la table des matières) de façon à montrer le premier succès. De plus, le nombre de succès est indiqué à côté de chaque entrée de table des matières. L’usager peut passer rapidement d’un succès à l’autre à l’aide de fonctions de navigation.

Dans la plupart des cas, un succès correspond à la présence d'un ou de mots qui constituaient les termes de recherche. Dynatext souligne la présence de ces mots en leur donnant l’apparence de "texte sélectionné" (vidéo inversé). Si le résultat demandé était un élément de structure (suite à l'utilisation des mots-clés CONT ou CONTAINING), Dynatext "sélectionnera" l’élément au complet.

Enfin, mentionnons que Dynatext donne une signification particulière au ET logique. Selon la documentation, le ET logique signifie "près de", mais on ne précise pas ce que signifie exactement cette proximité. Toutefois, l'expérience avec une base de documents gérée par Dynatext nous montre que l'on a donné la signification suivante au ET logique: WITHIN 20 WORDS OF. Il s’agit donc réellement d’une proximité, et d’une proximité qui ne tient aucunement compte de la structure. Par exemple, autant la proximité que le ET logique permettront de repérer deux mots qui se situent à la fin et au début de deux chapitres consécutifs.

3.2 Panorama

Panorama est un logiciel récent distribué par SoftQuad, développé en collaboration avec la firme suédoise Synex. Panorama est un lecteur de documents structurés (SGML), mais à la différence de Dynatext, il peut compiler les documents lui-même et les présenter à l’usager; il s’agit donc d’un lecteur dynamique. D’ailleurs, le logiciel est d'abord et avant tout distribué comme un baladeur du World-Wide Web (WWW), car utilisé conjointement avec NCSA Mosaic, il peut explorer les ressources en format SGML du WWW.

L’approche dynamique de Panorama est relativement simple. On lui fournit d’abord l’instance de document et, si elle n’est pas incluse, la DTD. Ensuite, le logiciel utilise une feuille de style pour la présentation et un navigateur pour l’aide à la consultation. Plusieurs feuilles de style et plusieurs navigateurs peuvent être associés à un même document (ou une même DTD). Dans ce cas, l'usager peut choisir lui-même quelle feuille de style et quel navigateur il veut utiliser parmi les choix disponibles.

Deux navigateurs semblent utilisés régulièrement: la table des matières et l’arbre SGML (SGML tree). La table des matières est extraite de la structure représentée par les éléments SGML, et cette extraction est faite à partir de spécifications données dans un fichier de navigation. L’arbre SGML est une représentation fidèle de la structure du document, car tous les éléments s’y retrouvent sous la forme d’une petite boîte reliée à leur parent. Le résultat est donc un arbre de la structure.

La recherche dans les documents présentés par Panorama est effectuée à l'aide d'un langage relativement simple mais qui permet tout de même d'exploiter la structure des documents. Afin de bien exprimer le langage, nous en reproduisons ici la syntaxe exprimée selon une grammaire (non définie dans l’aide en ligne):


Figure 2: grammaire du langage de recherche de Panorama


QueryExpression   ::= QueryTerm (AND|OR) QueryExpression

QueryTerm         ::= QueryFactor (IN|CONT) QueryExpression

QueryFactor       ::= TextSpecification|TagSpecification|
                      (QueryExpression)

TextSpecification ::= (char+|literal)+

char              ::= any characters except the keywords AND OR IN
                      CONT or the characters " and '

literal           ::= any characters delimited by ' or "

tagname           ::= a name string, i.e. a generic identifier of the
                      form [A-Za-z0-9]+

À première vue, ce langage permet d'exploiter la structure hiérarchique des documents, mais de façon limitée. En effet, il ne semble pas possible de limiter le nombre de niveaux hiérarchiques à considérer, ni d'utiliser les attributs SGML en recherche.

Les recherches effectuées avec Panorama sont bien sûr limitées au document en cours. Les résultats sont présentés de la même façon que le fait le lecteur Dynatext, c’est-à-dire que les mots constituant les critères de recherche sont "sélectionnés" dans le texte et on peut passer d’un à l’autre à l’aide des fonctions de navigation habituelles. Si le résultat est un élément (avec l’utilisation du mot-clé CONT), l’élément au complet sera sélectionné.

Panorama inclut également un indicateur de densité, qui permet de connaître quelles portions du document contiennent les expressions recherchées. Cet indicateur est difficile à lire, mais une fois habitué on arrive à l’utiliser efficacement. Étant présenté de façon similaire à un ascenseur de défilement, il permet de se promener rapidement dans les parties du texte intéressantes du point de vue de notre recherche.

3.3 Édibase SGML

Le logiciel de gestion de bases de données Édibase est un produit de la compagnie québécoise Documensa. À la fin 1995 ou au début de 1996, ils mettront sur le marché un nouveau produit appelé "Édibase SGML". Ce logiciel effectuera à peu près les mêmes tâches que la version régulière d’Édibase, soit les fonctions habituelles des systèmes de gestion de bases de données textuels. La seule différence provient du fait que les données alimentant les bases devront être en format SGML.

Dans le monde des applications SGML, Édibase SGML se veut d'abord et avant tout un outil de recherche dans des corpus de documents SGML, et en particulier lorsque l'information est sectionnée en unités documentaires simples telles des fiches (notices) dans une base de données textuelles. Il peut ainsi, par exemple, servir de moteur de recherche pour un CD-ROM contenant une base de données bibliographiques.

Édibase SGML permet aux usagers d'exploiter la structure des documents en recherche, mais pas de façon dynamique. En effet, c'est au moment de la création des index, donc lors de la conception de la base de données, que la structure est utilisée. En effet, les index sont construits à partir des éléments SGML que l'on retrouve dans les documents.

Par exemple, on peut demander de créer un index des auteurs en indiquant d'utiliser le contenu de tous les éléments AUTEUR. De plus, si on veut construire un index des titres de section, on pourrait demander de construire l'index à partir de tous les éléments TITRE que l'on retrouve à l'intérieur d'un élément SECTION. Ceci permettrait d'exclure, par exemple, les titres de chapitre, soit les éléments TITRE qui se retrouvent à l'intérieur de l'élément CHAPITRE.

Une fois ces index créés, ce qui est la responsabilité du concepteur de la base de données, on les interroge de façon classique, c'est-à-dire avec des requêtes de recherche qui posent des conditions textuelles à ces index. On peut ainsi faire une requête pour repêcher les documents dont l'auteur est "Platon" et dont le titre contient "République".

3.4 À retenir

Cette brève analyse de trois logiciels utilisant des documents SGML nous permet de tirer certaines conclusions intéressantes quant à l'interface-utilisateurs de même que pour les possibilités de recherche.

Les deux premiers logiciels (Dynatext et Panorama) tirent profit de la structure des documents et ce principalement par l'entremise des navigateurs: la table des matières dans le cas de Dynatext ou tout navigateur défini par l'éditeur ou l’usager dans le cas de Panorama. Le plus souvent, on retrouve la table des matières ou les éléments SGML. L'association entre un navigateur et le texte structuré semble donc très naturelle.

La recherche dans les documents à l'aide de ces deux premiers logiciels est relativement traditionnelle. Même si les langages d'interrogation permettent l'exploitation de la structure des documents, peu d'efforts sont déployés pour aider les usagers à exploiter cette structure. En effet, le langage est un peu obscur, il n'y a pas de bordereaux déjà définis par le producteur, et la structure n'est pas vraiment présentée à l'usager.

Pour exploiter la structure des documents en recherche avec Dynatext, il faut s'en remettre à l'éditeur de la base de documents. S'il a bien voulu inclure certains bordereaux de recherche plus évolués ou s'il donne des indications sur les éléments SGML des documents, alors c'est possible. Sinon, il faut se contenter de recherches simples. Dans le cas de Panorama, il est toujours possible de faire afficher les étiquettes à l'écran, ce qui permet d'appréhender quelque peu la structure pendant la navigation. De plus, on peut afficher le navigateur "arbre SGML" qui aide également. Avec ces informations et une certaine connaissance du langage d'interrogation, on peut arriver à formuler des requêtes exploitant la structure.

Un autre point important est la présentation des résultats. Dans le cas de Dynatext, l'unité de présentation la plus simple est le "livre", et c'est l'éditeur de la base de documents qui détermine ce qu'est un livre. Ainsi, la recherche nous donne le nombre d’occurrences dans un livre, ensuite il faut ouvrir ce livre et vérifier les occurrences dans chaque section ou chapitre. On peut passer d'un résultat de recherche à l'autre à l'intérieur d'un livre avec une fonction de navigation.

Dans le cas de Panorama, encore une fois l'unité de présentation est large, soit le document, au sens SGML du terme. Les résultats de recherche sont encore une fois présentés par indicateurs, dont un indicateur de densité. Mais le document demeure toujours dans son contexte, en entier. Pour Édibase SGML, la question de l’unité de présentation est peu critique, puisque le logiciel est avant tout destiné à gérer des descriptions de documents, et ces descriptions ("notices") constituent l’unité de présentation.

Il faut donc retenir que même si des logiciels permettent d’exploiter la structure des documents, peu d’efforts sont faits afin de présenter cette structure aux usagers; dans le cas de Dynatext, on serait presque tenté de dire que l’on tente de cacher la structure et les recherches l’exploitant. De plus, à part les navigateurs, peu d’éléments d’interface semblent spécifiques à l’exploitation de documents structurés dans ces logiciels.


Travail dirigé de Martin Sévigny, ©1996 Section précédente | Section suivante | Page d'accueil |