Valid HTML 4.01!

Thèse previousnext

Chapitre III : Spécification d'un environnement auteur idéal

1. Introduction

Au cours du chapitre précédent, nous avons pu voir les différents formalismes utilisés pour définir des documents multimédias, les types d'environnement d'édition qui existent, ainsi que les différents besoins de l'auteur au cours du processus d'édition. Nous avons vu comment ces besoins étaient plus ou moins couverts par les environnements existants. À partir de ces informations, nous allons à présent définir ce que nous considérons être l'environnement d'édition de documents multimédias idéal, c'est-à-dire celui satisfaisant au mieux les besoins des auteurs identifiés auparavant.
Pour cela nous nous inspirerons des différents systèmes auteur de documents multimédias présentés, mais ces derniers n'apportant pas une réponse satisfaisante à tous les besoins, nous élargirons notre domaine de référence pour chercher des idées de solutions dans des domaines voisins comme l'édition de texte, d'hypertexte ou de vidéo. Dans ce chapitre, nous allons essentiellement nous intéresser aux fonctionnalités que doit fournir un tel environnement. Pour le moment, nous ne nous intéresserons pas ou peu aux aspects graphiques de l'interface. Ces aspects ne sont pas indépendants, mais nous nous focaliserons sur les fonctions intrinsèques de base.
Dans un premier temps, nous présenterons les principes généraux de cet environnement (section 2).
Nous validerons ensuite cette proposition d'environnement idéal en indiquant comment il permet de répondre aux différents besoins de visualisation (section 3), ainsi qu'aux différents besoins de navigation de l'auteur (section 4). Et nous terminerons ce chapitre par l'illustration de l'utilisation de cet environnement auteur au travers d'une session d'édition (section 5).

2. Spécification de l'architecture de l'environnement idéal

Nous allons présenter dans un premier temps l'architecture générale de cet environnement d'édition idéal (section 2.1). Dans un deuxième temps, nous spécifierons le formalisme d'édition que nous utiliserons dans cet environnement d'édition (section 2.2). Dans un troisième temps nous nous intéresserons aux modes de visualisation que cet environnement doit fournir (section 2.3) et enfin dans une dernière partie nous présenterons les différents services d'aide que devra fournir cet environnement pour faciliter la tâche d'édition de l'auteur (section 2.4).

2.1 Rappel du cycle d'édition et architecture générale

Avant d'aller plus loin, nous rappelons le cycle d'édition défini dans le chapitre précédent (voir chapitre II section 2.2.1), ce processus se décompose suivant cinq étapes :
  1. Ouverture du document ;
  2. Visualisation du document et navigation à l'intérieur des différentes informations ;
  3. Modification du document ;
  4. Vérification de la cohérence et formatage ;
  5. Sauvegarde du document.
De ce processus de base, on a proposé une architecture générale de l'environnement auteur qui se découpe en quatre grandes fonctions (voir chapitre II section 2.2.1 et Figure III-1) :
Cycle d edition simple

Figure III-1 : Cycle d'édition simple

Dans le chapitre précédent nous avons proposé cette architecture générale pour un environnement d'édition de documents multimédias. L'environnement auteur idéal que nous allons proposer est basé sur cette architecture. Au cours de ce chapitre, nous allons nous intéresser essentiellement à la définition du formalisme d'édition de cet environnement. Ce formalisme est le coeur de l'environnement d'édition. Nous nous intéresserons dans un deuxième temps aux services d'aide à l'édition que doit fournir un environnement auteur.

2.2 Spécification d'un formalisme d'édition

Nous allons dans un premier temps préciser quel type de formalisme d'édition nous allons choisir et justifier notre choix (section 2.2.1). Dans un deuxième temps, nous présenterons ce formalisme d'édition (section 2.2.2), et enfin, dans une troisième partie, nous identifierons les services que devra fournir l'environnement auteur idéal pour éditer ce formalisme (section 2.2.3).

2.2.1 Motivations

Comme nous avons pu le voir dans le chapitre précédent (section 3), il existe de nombreux langages pour décrire des documents multimédias.

La première solution pour réaliser un environnement auteur consiste à utiliser le formalisme du langage de sauvegarde/présentation comme formalisme d'édition. Néanmoins ces langages sont souvent adaptés à la présentation de documents multimédias, mais ils sont en général peu adaptés à l'édition.

Une deuxième approche consiste à réaliser un environnement avec son propre formalisme d'édition et de réaliser des fonctions d'import / export vers d'autres langages. Cependant, l'inconvénient de telles fonctions, est que l'on perd souvent les informations d'édition. En effet, le fichier de restitution essaie de conserver au maximum les informations de présentation, en oubliant généralement les informations qui ont permis d'arriver à cette présentation. Cela pose principalement deux problèmes : l'édition par un tiers du fichier de restitution, et le problème de stockage et de gestion de version des deux fichiers qu'il faut garder (sauvegarde et restitution). Cette situation arrive par exemple, quand une personne écrit ses pages Web avec Word pour les exporter finalement en HTML.

Cette deuxième solution, serait celle qui offrirait la plus grande satisfaction pour le concepteur de l'environnement auteur. Cependant, la diversité des langages actuels est tel que cela est impossible. En effet, le formalisme commun nécessaire serait une combinaison des différents formalismes, et ne permettrait pas de répondre aux besoins des auteurs vis-à-vis de l'édition. En effet, on ne peut pas éditer de la même façon tous les langages, cela ne serait pas pertinent vis-à-vis des formats existants aujourd'hui.

Une solution autre consiste à faire un compromis entre ces deux approches.

Cette solution est illustrée dans la Figure III-2. Elle consiste à faire cohabiter les deux solutions précédentes, c'est-à-dire faire cohabiter à la fois le formalisme de haut niveau proposé par l'environnement, tout en laissant la possibilité à l'auteur d'accéder au langage de présentation.

MultiFormalismes

Figure III-2 : Un environnement auteur utilisant plusieurs formalismes

Dans ce cas-là, c'est le système qui s'occupe de conserver la relation entre le formalisme de l'environnement et celui du langage de présentation. Il est nécessaire pour cela de stocker certaines informations complémentaires du fait qu'il n'y ait pas de bijection entre les possibilités du langage et celui de l'environnement. Ces informations complémentaires pourront être stockées à l'intérieur même du fichier par exemple par l'intermédiaire des espaces de noms proposés dans XML. Ainsi, dans l'exemple de la Figure III-3 on peut voir un exemple de fichier SMIL où l'environnement auteur a sauvegardé des informations spécifiques (des relations spatiales).

La manipulation de ces deux formalismes peut rendre plus complexe la tâche de l'auteur. L'environnement doit aider l'auteur dans cette compréhension en offrant par exemple des services de visualisation adaptés.

Nous verrons en conclusion de ce chapitre en quoi ce double formalisme permet de répondre aux différents besoins auteur.
 

<?xml version="1.0"?>

<smil>
<head>
<layout xmlns:EnvAuteur="http//www.inrialpes.fr/opera/EnvA.dtd">

<region id="région1" top="180" left="80" width="100" height="40" />
<region id="région2" top="240" left="100" width="100" height="40" />
<region id="région3" top="300" left="120" width="100" height="40" />
<region id="région4" top="360" left="140" width="100" height="40" />
<region id="région5" top="420" left="160" width="100" height="40" />
<EnvAuteur:Relation>
<EnvAuteur:LeftAlign EnvAuteur:el1="région1" EnvAuteur:el2="région2">
</EnvAuteur:Relation>
</layout>
</head>
<body>

<par dur="50" id="Document" >

<text src="/home/Texte1.html" id="T1" region="region1"/>
<text src="/home/Texte2.html" id="T2" begin="10.0" region="region2"/>
<text src="/home/Texte3.html" id="T3" begin="20.0" region="region3"/>
<text src="/home/Texte4.html" id="T4" begin="30.0" region="region4"/>
<text src="/home/Texte5.html" id="T5" begin="40.0" region="region5"/>
</par>
</body>
</smil>
Figure III-3 : Exemple de fichier utilisant un espace de noms

De plus, l'importance réciproque de ces besoins dépend de l'objectif de l'auteur. On peut définir trois classes d'objectifs lors de la conception d'un document :

En conclusion, le choix que nous allons faire est de proposer un formalisme d'édition propre à l'environnement tout en laissant la possibilité à l'auteur d'accéder au formalisme du langage.

2.2.2 Le formalisme d'édition de l'environnement auteur idéal

Le choix du formalisme que nous allons employer est motivé par l'analyse du chapitre précédent. En effet, des formalismes comme le formalisme absolu ou événementiel sont trop complexes et rendent le document difficilement gérable de manière globale. De plus, les travaux menés avec l'équipe Airelle [Bétrancourt99] ont permis de montrer que l'approche basée sur les groupes et les relations était plus facilement compréhensible et offrait une édition plus souple.

De ces faits nous allons proposer un formalisme d'édition relationnel caractérisé par :

Cependant, comme nous venons de le voir dans la section précédente le formalisme d'édition offert par l'environnement d'édition est là pour faciliter l'édition du langage de présentation. Pour chaque environnement d'édition réalisé, le formalisme d'édition est donc dépendant du langage de présentation sur lequel sera basé l'édition. Néanmoins, quel que soit le langage de présentation et de sauvegarde utilisé les environnements d'édition auront un certain nombre de caractéristiques communes. Nous allons donc présenter ses caractéristiques communes en trois étapes : définition des médias, définition des groupes et définition des relations, tout en spécialisant nos propos dans le cadre de langages de présentation précis lorsque cela sera nécessaire. Les langages qui nous servirons à illustrer ce chapitre seront SMIL, MHML et Madeus. Ces langages sont aujourd'hui représentatifs des approches événementielles et relatives de spécifications.

Le formalisme fourni par l'environnement auteur est le suivant :

Définition de médias :

Les médias sont caractérisés par un ensemble d'attributs :

LienTemporel

Figure III-4 : Lien temporel

On peut noter que la spécification de la valeur d'un attribut n'est pas obligatoire. De plus, chaque attribut, dont l'ensemble de valeurs est énumérable est défini par intervalle de valeurs possibles, par exemple :

Dans l'exemple de la Figure III-5 nous donnons un exemple de syntaxe (décrite en XML) pouvant servir pour décrire un média.
 
<Média Type="Image" > 

<AttributSpatiaux 

X="8 10 12"
Y="10 10 14"
Hauteur="12"
Largeur="10">
<AttributTemporels 
Begin="12 14 15"
End="16 16 16"
Durée="1 2 4">
<LienNavigation =http://www.inrialpes.fr/opera/>
<LienTemporel ="#14s">
</Media> 
Figure III-5 : Exemple de syntaxe décrivant un media

Définition de la présentation :

Nous venons de voir comment définir un élément média, cet élément est la base de tout document multimédia. Nous allons maintenant nous intéresser à la définition de la présentation du document. C'est-à-dire à l'agencement des différents médias temporellement et spatialement. Cet agencement se fera dans le cadre d'une structure à base de groupes. Nous allons dans un premier temps écrire les attributs associés à un groupe avant de décrire plus précisément les groupes temporels et spatiaux.

Un groupe est caractérisé par :

Nous allons maintenant donner un exemple de syntaxe pouvant permettre de décrire cette spécification de la présentation (Figure III-6).
 
 
<GroupeTemporel 
ListeElement="A B C D E"
Opérateur ="Inside" >
<AttributsTemporel 
Début = "14 18 19"
Durée = " 5 6 8"
fin = "19 24 27" />
<ListeRelations >
<Relation Nom="Before" Objet1="A" Objet2="B" Param="4s">
</ListeRelations>
</GroupeTemporel>

Figure III-6 : Exemple de syntaxe permettant de décrire la présentation

Le formalisme que nous venons de définir permet d'associer à chaque groupe un opérateur, un ensemble de relations et des attributs. Cet ensemble d'informations permet de définir le placement relatif de chaque objet du groupe par rapport au début du groupe. Le placement relatif d'un objet est donc le résultat d'un calcul (le formatage) entre ces différentes informations.

Ces informations peuvent être :

<GroupeTemporel Id="C" 
ListeElement="A B"
Opérateur="Inside"/>
<AttributTemporel dur="10 10 10" />
<ListeRelations >
<Relation Nom="Before" Objet1="A" Objet2="B">
</ListeRelations>
</GroupeTemporel>
Figure III-7 : Exemple d'informations complémentaires
<GroupeTemporel Id="C" ListeElement="A " Opérateur="Inside"/>
<AttributTemporel dur="9 9 9" />
<Element Id="A" />
<AttributTemporel dur="10 10 10"/>
</Element>
</GroupeTemporel>
Figure III-8 : Exemple d'informations contradictoires

En introduction de cette section nous avons dit que le jeu de relations et d'opérateurs offert par l'environnement idéal est lié au langage de présentation utilisé. Nous allons donner ici le jeu de relations et d'opérateurs défini pour les trois langage SMIL, Madeus et MHML.

Ces relations seront :

Ces relations seront définies par le concepteur de l'environnement auteur, mais elles doivent être aussi extensibles par l'auteur s'il en éprouve le besoin. Nous présenterons ce mécanisme dans le chapitre IV section 7.

Nous allons présenter maintenant, le formalisme pour les trois langages qui nous servirons à illustrer ce principe : Madeus, SMIL et MHML.

Dans le cas de langages événementiels, l'environnement fournit à l'auteur la possibilité d'éditer directement les événements du langage par l'intermédiaire d'une palette par exemple.

Le formalisme d'édition pour le langage Madeus :

Le jeu de relations de Madeus étant relativement complet spatialement, nous l'étendons seulement du coté temporel.

Pour cela nous intégrons quatre nouvelles relations aux relations définies dans Madeus-97 (chapitre II section 3.4.2) :

Kaomi Madeus relations
Figure III-9 : L'extension des relations temporelles de Madeus
Le formalisme d'édition pour le langage SMIL :

Le langage SMIL contient essentiellement des opérateurs temporels. Le langage doit donc être essentiellement étendu spatialement. En effet, le langage SMIL permet uniquement de définir un positionnement spatial absolu, il est donc nécessaire pour faciliter l'édition de l'auteur d'offrir une édition de plus haut niveau. Pour cela nous définissons dans le formalisme de l'environnement auteur associé à SMIL les relations spatiales suivantes : LeftAlign, RightAlign, Center, TopAlign, BottomAlign. Chacune de ces relations pouvant prendre un paramètre permettant de définir un décalage.

Nous étendons aussi le formalisme d'un point de vue temporel, en insérant l'opérateur ParEquals permettant de définir un élément composite de type parallèle avec comme contrainte supplémentaire que tous les fils ont la même durée (voir Figure III-10).

KaomiSmil relations

Figure III-10 : L'extension de relation temporelle de SMIL

Le ParEquals permet de préciser une sémantique particulière à l'opérateur Par, celle-ci sera que tous les objets contenus dans le Par auront la même durée.

De plus, dans le cas d'un opérateur Par, nous permettons à l'auteur de définir des relations entre les éléments du Par. Ces relations sont les relations de Madeus-97 étendues des quatre relations décrites dans la Figure III-9. Cette spécification relative facilitera la tâche lors des phases d'édition en permettant à l'auteur de spécifier le comportement de son document de manière relative.

Le formalisme d'édition pour le langage MHML :

Le langage MHML est de plus bas niveau que les deux langages présentés ci-dessus. Il est donc nécessaire pour faciliter la tâche de l'auteur de définir un jeu de relations de haut niveau plus important que pour les deux langages précédents. Pour cela nous définissons pour les relations temporelles l'ensemble des relations de Madeus-97 (Allen + relations causales) que nous étendons comme pour Madeus des quatre relations décrites dans la Figure III-9.

Nous définissons comme jeu de relations spatiales, les relations spatiales suivantes : LeftAlign, RightAlign, Center, TopAlign, BottomAlign. Chacune de ces relations pouvant prendre un paramètre permettant de définir un décalage.

Ce formalisme permet de répondre aux besoins spécifiés dans le chapitre précédent. Les différents besoins en expressivité sont satisfaits (dans le cadre de documents prédictifs avec de la navigation). De plus les besoins de structuration et de support pour la modification du document sont satisfaits grâce d'une part à la structure de groupe et d'autre part à l'utilisation de relations flexibles et la définition des attributs par intervalle.

2.2.3 Les services d'édition de l'environnement idéal

Un système auteur doit fournir un ensemble de fonctions d'édition et de services pour permettre à l'auteur d'éditer son document au travers du formalisme d'édition proposé. Ce formalisme est une extension du formalisme du fichier de sauvegarde.

Dans le chapitre précédent, nous avons listé les différents besoins de l'auteur pendant ce processus, nous allons ici lister les services que le système doit offrir pour répondre en partie à ces besoins. Ces fonctions sont :

On peut remarquer que ce sont des fonctionnalités que l'on retrouve dans l'édition de documents structurés [Quint99]. On peut noter, que la réalisation d'une fonction telle que le copier/coller évolué pose de nombreux problèmes. En effet, le copier/coller ne se résume pas seulement à une duplication de la structure et des informations de présentation, mais elle nécessite souvent une transformation de ces informations en fonction du contexte dans lequel on l'insert. Cette transformation ne peut être complètement automatique et doit être assistée de l'auteur ([Bonhomme98]). Dans notre contexte cette difficulté est liée à la notion de groupe ainsi qu'aux relations.

2.2.4 Edition par manipulation directe

Une fonctionnalité offerte par l'environnement auteur idéal doit être l'édition pat manipulation directe. C'est-à-dire que l'auteur doit pouvoir éditer les attributs de ces objets dans les vues spatiale ou temporelle.

De plus, le système doit maintenir les relations existantes entre les objets durant tout le long du cycle d'édition, y compris lorsque l'auteur déplace graphiquement les objets :

Dans la Figure III-11 l'auteur déplace la bicyclette, et ce dernier reste sur la droite qui modélise une pente. Au cours de ce déplacement le logiciel Cabri [Laborde95] maintiendra les différentes relations que l'auteur a spécifiées.

Cabri Geometre

Figure III-11 : Manipulation directe dans Cabri Géomètre II

On peut noter cependant que, dans cette représentation, l'auteur ne visualise pas les relations entre les différents éléments, il en a seulement une perception par les déplacements autorisés. De plus, lors du déplacement, il n'a aucune explication sur le comportement de l'objet, notamment sur les relations qui sont maintenues.

2.3 Spécification d'un système multivues

Nous venons de voir que nous avons choisi d'utiliser un formalisme essentiellement relationnel pour favoriser la tâche d'édition de l'auteur. Cependant, dans le chapitre II section 3.4, nous avons vu que les contreparties à cette flexibilité sont une plus grande complexité de la tâche de visualisation et la nécessité d'automatiser les services de cohérence et de formatage. Nous présenterons les différentes techniques de cohérence et de formatage dans le chapitre V.
Nous allons nous intéresser maintenant aux services de visualisation que doit fournir l'environnement auteur idéal. Ces services de visualisation ne doivent pas être indépendants de l'édition et doivent être liés au processus et aux fonctions d'édition. Ces services de visualisation se feront au travers de vues.
Une vue est non seulement une entité graphique qui permet de visualiser à l'écran une information, mais c'est une entité qui permet à l'auteur de l'éditer.

2.3.1 Spécification des différentes vues

Étant donnée la complexité des documents multimédias, offrir une seule vue à l'auteur serait insuffisant. Le système auteur doit donc offrir plusieurs vues adaptées à la visualisation des informations attendues par l'auteur. Cependant le système auteur doit aussi fournir des vues pour aider l'auteur, notamment lors de la navigation dans son document. Les vues nécessaires sont : Nous verrons dans les sections 3 et 4 comment ces vues permettent de répondre aux différents besoins de visualisation et de navigation.

2.3.2 Coopération entre les différentes vues du document

Une des difficultés pour l'auteur vient du nombre de vues nécessaires à la visualisation des différents éléments contenus dans le document. Pour faciliter le travail de l'auteur dans les différentes vues, on peut imaginer une synchronisation sur l'objet sélectionné qui impose au système, lorsque l'auteur change de vue, de focaliser la vue sur cet objet. Ainsi, si l'auteur passe de la vue temporelle à la vue de présentation, cette dernière se positionne à l'instant de début de l'objet sélectionné.

Un autre moyen de faciliter la tâche de l'auteur est de visualiser plusieurs informations dans une vue. Par exemple, la vue temporelle peut non seulement visualiser l'enchaînement temporel des objets mais aussi la structure hiérarchique. La visualisation de cette structure peut permettre à l'auteur de faire plus facilement le lien entre la vue hiérarchique et la vue temporelle. De même, au cours de l'exécution du document dans la vue de présentation, le système peut afficher la progression de la présentation du document. Ces synchronisations sont essentielles pour que l'auteur puisse se repérer facilement entre les différentes vues.

Le fait d'avoir différentes vues permet aussi d'aider l'auteur dans les tâches d'édition complexes, en découpant ces tâches en sous-tâches, chacune s'accomplissant dans la vue la plus adaptée. Nous verrons cela plus précisément dans l'exemple de la section 5.

Aujourd'hui de nombreux systèmes proposent plusieurs vues pour faciliter les tâches de l'auteur. Amaya [Amaya00], par exemple, permet d'utiliser la vue structure pour parcourir les pages HTML, ce qui permet à l'auteur d'avoir une vue globale de son document et de naviguer à l'intérieur.

La spécification proposée ici vise à généraliser et à adapter ces principes au contexte multimédia.

Par exemple, pour permettre à l'auteur de faire facilement le lien entre une présentation de son document et la spécification (spécification qui permet de définir un ensemble de présentations), nous offrons en cours d'exécution une ligne temporelle qui se déplace dans la vue temporelle. Cette ligne permet de visualiser l'instant courant de la présentation. Elle permet à l'auteur de faire le lien entre la présentation et le document. Ce mécanisme se retrouve dans Grins et Director.

Notons que l'utilisation d'un système multi-vues nécessite une synchronisation des informations visualisées dans chacune des vues de manière à garantir une certaine cohérence à l'auteur.

2.4 Les services d'aide

Comme nous avons pu le voir précédemment, l'édition de l'auteur peut se faire à deux niveaux : au niveau du formalisme de l'environnement auteur ou alors au niveau du formalisme du langage de sauvegarde utilisé. De ce fait, les services d'aide sont, eux aussi, à deux niveaux.

Le système auteur doit assurer des services complets de vérification de la cohérence, d'aide lors de la spécification (par exemple en l'aidant dans le calcul des durées des objets), mais aussi dans les cas d'erreur ou d'incohérence de documents, en offrant une visualisation et un diagnostique des erreurs sur les deux niveaux possibles de la spécification.

Nous allons maintenant nous intéresser aux différents services d'aide fournis par l'environnement auteur.

La vérification de cohérence : à chaque modification du document, le système d'édition doit vérifier la cohérence du document et calculer une nouvelle solution. En effet, la complexité des documents multimédias est telle que l'auteur ne peut pas appréhender toutes les répercussions possibles d'une modification qu'il a effectuée. Le système doit donc être capable de vérifier en temps réel la cohérence d'un document. Quand une incohérence est détectée le système d'édition doit informer l'auteur de l'erreur, et lui donner un diagnostique aussi complet que possible sur l'erreur de manière à ce que celui-ci puisse rendre le document de nouveau cohérent [Song99]. Il existe différents types de cohérence possibles [Layaïda97, Sabry99] :

Coherences

Figure III-12 : Cohérence qualitative et quantitative

Au cours du processus d'édition, les erreurs sont détectées directement lors de la spécification. Les mécanismes pour détecter ce genre d'erreurs sont relativement simples à mettre en oeuvre. Les principaux algorithmes sont PC2 [Mackworth85], DPC [Meiri92] et DPCincrémental [Chleq95]. Le problème majeur de ces approches est le temps de vérification nécessaire.

Le formatage :

L'environnement auteur idéal doit posséder un formateur. En effet, un besoin essentiel de la phase d'édition est le formatage. La valeur d'un attribut lors de la présentation est le résultat d'un calcul entre les différentes spécification de l'auteur (attribut, relation, ). Comme nous avons pu le voir dans les différents langages présentés, il existe différentes méthodes pour spécifier la valeur d'un attribut. La valeur d'un attribut au moment de la présentation peut dépendre de :

Prenons l'exemple d'un document où l'on possède les informations suivantes : L'auteur ajoute ensuite une relation de la forme : Le système doit alors calculer une nouvelle valeur pour les attributs X des objets A et B.

Dans le cas ci-dessus, le système doit affecter par exemple la valeur 130 aux deux attributs. Cette valeur satisfait l'ensemble des informations que l'auteur a spécifiées. Sans ce nouveau calcul, le document aurait été quantitativement incohérent.

On peut noter que, lors d'une opération d'édition (la modification de la valeur d'un attribut ou de l'ajout d'une relation), le formateur doit calculer un nouveau placement (spatial ou temporel) pour les objets. Ce calcul doit être rapide lors du processus d'édition.

L'utilisation de méthodes ad hoc de formatage ([Quint98], [Tardif97b]) est aujourd'hui la plus répandue dans les systèmes auteur, cependant l'amélioration des techniques à base de contraintes semble offrir des perspectives intéressantes en termes de simplicité d'expression, d'évolution et de maintenance. Nous étudierons dans le chapitre V ces techniques et nous verrons comment les utiliser dans notre contexte.

Aide au diagnostique : le système doit apporter une aide à l'auteur pour expliquer ces actions dans deux situations :

2.5 Synthèse sur la spécification de l'environnement idéal

Nous venons de définir un environnement idéal fournissant un formalisme d'édition, un ensemble de vues pour visualiser et éditer son document au travers du formalisme d'édition offert, et un ensemble de services d'aide tels que la vérification de cohérence, le formatage et le diagnostique pour faciliter la tâche de l'auteur.

Aujourd'hui aucun système auteur n'apporte de réponses pertinentes à ces différents besoins. Au cours des chapitres suivants nous apporterons des réponses concrètes à ces besoins.

L'ensemble des services décrits ci-dessus est complexe du fait qu'il doit à la fois permettre à l'auteur de manipuler facilement le document, tout en essayant de garder un lien avec le langage de présentation. Ce lien doit être conservé pour permettre de satisfaire les besoins liés à la vie du document ainsi qu'au cycle d'édition.

Nous allons maintenant valider ces propositions en indiquant comment elles permettent de répondre aux différents besoins de visualisation (section 3) définis dans le chapitre II, ainsi qu'aux différents besoins de navigation de l'auteur (section 4).
 

3. Visualisation d'information dans un contexte d'édition

Le système d'édition doit offrir la possibilité à l'auteur d'explorer les informations du document ([Jourdan97b, Jourdan98d]), tout en lui permettant d'adapter l'exploration de l'ensemble de ces informations en fonction de ses besoins (édition, compréhension du comportement de son document,).

Nous allons voir comment l'environnement idéal que nous venons de spécifier permet de répondre aux différents besoins définis dans le chapitre II liés à la fois à la visualisation des médias de base qui constituent le document (section 3.1), mais aussi à la visualisation statique des différentes dimensions qui le composent (section 3.2). Dans la section 4 nous verrons comment les différentes manipulations offertes dans les vues permettront de satisfaire le besoin de perception de l'espace de solutions.

Lors de ces présentations nous essaierons de voir pour chaque besoin quelles techniques permettent de le satisfaire. L'objectif de cette section est donc double :

3.1 Accès aux médias et aux informations de base

Lors des manipulations de médias dans la phase d'édition l'auteur a besoin de visualiser : La visualisation des attributs des médias peut se faire via une palette d'attributs. Cependant, l'auteur a besoin de percevoir non seulement l'aspect quantitatif des attributs mais aussi un aspect qualitatif. De ce fait, visualiser ces informations sous une autre forme est essentiel. Par exemple, les attributs spatiaux seront visualisés dans la vue de présentation.

La visualisation de l'ensemble des éléments d'un document multimédia pose quant à elle des difficultés à cause du facteur d'échelle. L'ordre de grandeur d'un document multimédia est de mille objets pour une présentation d'une dizaine de minutes. L'idée la plus simple consiste à visualiser tous les médias dans une fenêtre comme dans Director en y ajoutant une visualisation des attributs de l'objet sélectionné (Figure III-13). Cette représentation très utile pour de petits documents se révèle inexploitable pour de gros documents. Des techniques à base de filtres peuvent être utilisées pour ne visualiser que les objets d'un certain type ou qui apparaissent dans une certaine scène ou encore les objets non encore utilisés. Ce sont des techniques issues de la visualisation d'informations qui pourraient être utilisées (visualisations en oeil de poisson [Sarkar94] ou sur les murs de perspective [Mackinlay91]). Malheureusement ces techniques ne sont encore que peu employées dans le cadre de l'édition de documents multimédias.

ObjectView
Figure III-13 : Vue des objets présents dans le document

On peut noter que pour des médias comme la vidéo, il est nécessaire de pouvoir visualiser de nombreuses informations. Outre les attributs classiques (spatiaux et temporels), il peut être utile d'avoir des informations sur le nombre de plans, de scènes ainsi que les dépendances temporelles ou spatiales de ces différents éléments.

Dans le domaine de l'édition et l'annotation de vidéo, on peut trouver de nombreux travaux qui permettent d'éditer des parties de vidéos et/ou de les annoter.

Le point commun de tous ces travaux est qu'ils manipulent une structure sur les médias. Parmi ces travaux, on peut citer les travaux de Dumas [Dumas00] qui permettent de définir un modèle d'annotation pour les vidéos, ceux de Chang [Chang97] qui permettent de rechercher de l'information dans des vidéos annotées et enfin ceux de Carrer [Carrer97] qui ont vu la réalisation d'un outil d'annotation. Dans le cadre du projet Opéra les travaux de Tien [Roisin00] visent à intégrer un outil de structuration et d'édition de vidéo au processus d'édition de documents multimédias, permettant ainsi à l'auteur de mettre des relations entre des objets du document et des scènes de la vidéo par exemple. Ces différents travaux n'offrent que peu de représentations graphiques novatrices pour visualiser ces informations et se ramènent souvent à la visualisation de la structure hiérarchique de la vidéo. Cette structure étant synchronisée avec une représentation graphique de la vidéo permettant ainsi à l'auteur de faire facilement le lien entre la structure ou l'annotation et l'image (ou partie de la vidéo) associée.

Dans le cadre de l'environnement idéal que nous avons proposé ces besoins sont couverts par les vues objets, attributs et hiérarchique.

3.2 Accès aux différentes dimensions du document

Dans un premier temps, nous allons nous intéresser à l'aspect visualisation d'informations sans parler des aspects de navigation. Pour chacune des dimensions, nous nous intéresserons dans un premier temps à l'étude de différents travaux permettant de visualiser le type d'informations correspondant sans nous limiter au contexte des documents multimédias, et dans un deuxième temps nous regarderons comment ces techniques sont employées dans notre contexte.

Nous présenterons différents travaux selon le type d'informations visualisé :

Nous nous intéresserons aussi à la visualisation des propriétés intrinsèques à notre formalisme d'édition :

3.2.1 Visualisation de l'information temporelle

Un des principaux besoins dans le cadre de l'édition de documents multimédias consiste à visualiser les informations temporelles contenues dans le document.

Ces informations sont de différentes natures :

Une solution utilisée classiquement pour représenter de telles informations est une vue temporelle linéaire communément appelée vue temporelle. Une telle visualisation est utilisée par exemple dans le cadre d'outils d'édition de vidéo (Adobe première [Adobe-Premiere00]) ou de musique et même dans certains éditeurs de documents multimédias ([Macromédia-Director00], [Jourdan97a]).

Dans le cadre de l'édition de documents à l'aide de relations, une des difficultés est liée à ce que l'auteur manipule un ensemble d'exécutions possibles de son document. Par une représentation statique, il est difficile de faire percevoir à l'auteur l'espace de solutions tout en préservant une réalité temporelle à la représentation. Des métaphores telles que celle des ressorts [Tardif97] peuvent être employées pour indiquer à l'auteur les zones du document qui contiennent de la flexibilité. Dans l'exemple de la Figure III-14 on peut voir un exemple d'une telle représentation.

scenario1
Figure III-14 : Visualisation de la flexibilité dans la vue temporelle

Le principal problème d'une telle représentation est la visualisation de gros volumes d'informations.

On peut noter que dans l'environnement idéal certaines informations sont représentées dans plusieurs vues. Par exemple, les attributs temporels sont visualisés dans les vues attribut et temporelle ce qui permet à l'auteur d'utiliser la vue la plus adaptée à son besoin. Par exemple, en phase de création d'un média la vue attribut lui permettra de positionner tous les attributs sur son média, la vue temporelle, lui permettant elle, d'ajuster le placement temporel entre les médias. De la même manière la structure de groupe temporel est visualisée dans les vues hiérarchique et temporelle.

Les problématiques de visualisation de relations étant communes à toutes les informations, nous les présenterons ultérieurement à la fin de cette section dans le cas de la visualisation des relations. Les techniques d'affichage de gros volumes d'information seront elles présentées dans la section visualisation de données hiérarchiques.

Dans la section 4 nous verrons comment des techniques de navigation peuvent améliorer la perception de cet espace de solutions.

3.2.2 Visualisation d'informations spatiales

Les informations spatiales contenues dans le document sont de différentes natures : Les méthodes de visualisation du placement spatial offertes dans l'environnement idéal pour les objets respectent le principe du WYSIWYG utilisé dans le cadre des éditeurs graphiques ainsi que pour l'édition de documents classiques. L'environnement auteur permet, par exemple, à l'auteur d'afficher certains instants précis du document dans la vue de présentation. Dans la Figure III-15 nous pouvons voir que l'auteur a stoppé la présentation de son document à un instant précis.

Presentation View
Figure III-15 : Vue de présentation

La limite de cette approche est que l'on ne peut pas voir comment deux objets qui n'ont pas d'instant de présentation en commun sont placés l'un par rapport à l'autre. Il faut donc pouvoir présenter plusieurs instants en même temps.

Dans Grins (Figure III-16), une vue permet de visualiser en même temps toutes les régions du document. On a ainsi sur la même vue, la représentation spatiale d'objets ou de zones qui ne sont pas présents temporellement aux mêmes instants.

Grins layout
Figure III-16 : Visualisation des régions dans Grins

Ce principe peut être affiné de manière à pouvoir par exemple visualiser toutes les régions utilisées sur une période de temps, ou toutes les régions d'un sous-ensemble d'objets du document. Supposons que nous ayons un document composé de trois objets, chacun associé à une région (Figure III-17), si nous visualisons simultanément les 3 régions à l'écran nous obtenons la visualisation de toutes les régions du document. Cet affichage, fort utile pour des présentations de type transparent (pour permettre le placement d'objets comme les titres, aux mêmes endroits) se révèle vite inutilisable pour d'autres types de documents du fait du nombre de régions présentes dans le document. Pour remédier à cela des techniques de filtrage peuvent être appliquées lors de la visualisation pour par exemple ne visualiser que les régions utilisées pendant les 30 premières secondes, Il n'est malgré tout pas toujours facile de trouver un bon filtre, celui-ci étant dépendant de l'opération qu'est en train de faire l'auteur.

Visualisation Regions
Figure III-17 : Visualisation simultanée des régions

3.2.3 Visualisation d'informations hiérarchiques

La visualisation d'informations hiérarchiques est utile pour visualiser les structures hiérarchiques (spatiale, temporelle) du document.

Le problème que l'on rencontre communément dans ce contexte est celui du facteur d'échelle. Des techniques telles que l'utilisation de filtres (filtres sur le type des noeuds, sur la profondeur, sur la valeur de certains attributs) peuvent permettre d'alléger l'affichage. De plus, des techniques graphiques peuvent permettre d'améliorer la lisibilité de l'affichage. De telles techniques ont été développées essentiellement dans le cadre de la visualisation de systèmes de fichiers. Les techniques les plus connues sont à base d'arbres (Figure III-18a) ou d'arbre coniques (Figure III-18b, [Robertson91]). Dans le cadre de l'édition de documents, ce sont les techniques à base d'arbres qui sont le plus communément utilisées. On peut par exemple citer Amaya [Amaya00] qui utilise une telle représentation pour visualiser la structure XML du document (Figure III-19).

tree explorer

a) Représentation à base d'arbres

conetree unix file system
 
 
 
 
 
 
 
 

b) Représentation à base d'arbres coniques

Figure III-18 : Représentations hiérarchiques d'un système de fichier
 

Amaya
Figure III-19 : Structure XML d'un document dans Amaya

3.2.4 Visualisation d'informations sur la structure hypertexte

La dernière composante à laquelle nous allons nous intéresser est la visualisation de la structure hypertexte.

Les besoins dans le cadre de l'édition de documents multimédias sont similaires à ceux liés à l'édition hypertexte :

Avec l'avènement du Web, l'explosion des pages HTML et la complexité de plus en plus croissante des sites Web, de nombreux travaux ont essayé de faciliter la perception globale des sites.

On peut noter que les besoins dans le cadre de documents multimédias recouvrent ceux qui sont liés à la dimension hypertexte mais la dimension temporelle soulève un nouveau problème. Il est important de visualiser la partie de document qui n'a pas été jouée à cause de l'activation du lien. Dans le cas de documents prédictifs, on a la connaissance de cette partie, et il est important de permettre à l'auteur de la visualiser. Ce besoin que l'on avait déjà dans la navigation hypertexte classique n'était pas satisfaisable dans ce contexte du fait que l'on n'avait pas la connaissance réelle de ce qu'avait vu (ou lu) le lecteur.

Dans la Figure III-20 on peut visualiser un exemple d'affichage de la structure d'un document hypertexte. Comme le montre cette figure, cette représentation sans doute très utile pour de petits documents devient vite inexploitable pour des documents complexes.

Sac de noeuds
Figure III-20 : Visualisation de la structure hypertexte d'un document

Des techniques à base de filtres (sur le type des liens, ou sur le type de document, la localité des documents) doivent être utilisées pour alléger l'affichage.

Dans le cadre de l'édition de documents, peu de systèmes intègrent de tels outils. La métaphore la plus communément utilisée est la visualisation du lien par une icône sur le média. Les systèmes n'offrent pas une vue globale de la structure.

Dans le cadre de notre environnement idéal, la vue hypertexte doit permettre de visualiser ces différentes informations (liens de navigation, interdépendance entre documents).

Aucun système ne propose une visualisation de l'espace précis de navigation du lecteur. Ce besoin, difficilement satisfaisable dans le cadre de document hypertexte classique du fait que l'on ne connaît pas ce que le lecteur a réellement lu d'un document, peut être satisfait dans le cadre des présentations temporisées.

La vue rapport d'exécution, permet à l'auteur de visualiser une exécution réelle de son document, et de ce fait, elle peut être utilisée pour visualiser l'espace de navigation accédé au cours de la présentation par le lecteur.

3.2.5 Visualisationde l'exécution du document

Le système auteur idéal doit permettre à l'auteur de visualiser les différentes informations liées à l'exécution de son document. Ces informations sont :

Ces trois fonctions sont très utiles lors de la phase d'édition car elles permettent à l'auteur de visualiser le document selon une localité temporelle.

3.2.6 Visualisation des relations contenues dans le document

Une des difficultés rencontrées dans les différentes dimensions est de visualiser les relations que l'auteur a spécifiées entre les différents objets et leurs conséquences.

Cette visualisation peut se faire à différents niveaux. On peut, par exemple, enrichir chacune des vues pour afficher cette information, c'est le cas de la visualisation des arcs de synchronisation dans la vue temporelle de Grins. On peut aussi visualiser explicitement le graphe de dépendance, comme c'est réalisé dans le logiciel FireFly [Buchanan93] (Figure III-21). Dans cette figure, on voit que le système représente explicitement les instants de début et de fin des objets, les synchronisations étant représentées par des liens entre les noeuds. L'inconvénient majeur de ce genre de représentation est qu'il ne donne pas une représentation temporelle de l'enchaînement des événements.

FireFly
Figure III-21 : Graphe de synchronisation de Firefly

Parmi les outils qui offrent une visualisation de relations dans des domaines autres que l'édition multimédia, on peut citer Action Works d'IBM (Figure III-22) qui permet à l'auteur de visualiser de manière abstraite l'ensemble des relations qui composent un Workflow. Un workflow est la description d'un ensemble de tâches qui sont liées les unes par rapports aux autres temporellement. Nous donnerons une définition plus précise dans le chapitre VI section 3.

Sur la Figure III-22 on peut voir que différentes métaphores graphiques sont utilisées en fonction du type de relations que l'on visualise. Le système représente les différentes possibilités par des icônes différentes (rendez-vous, condition, enchaînement automatique, enchaînement en cas d'erreur). Cette représentation permet facilement de voir les dépendances entre les tâches, cependant elle ne permet pas de percevoir l'enchaînement temporel de ces dernières.

Actions works
Figure III-22 : Vue d'édition d'Action Works Project Builder

Le système doit aussi fournir des mécanismes de synchronisation forte entre chacune des vues et la liste des relations. Par exemple, lorsque l'on sélectionne un objet dans la vue spatiale, les relations impliquées dans son placement doivent être aussi visualisées.

On retrouve ce type de fonction dans le logiciel Cabri [Laborde95]. Cabri permet entre autres de dessiner des figures géométriques en spécifiant des relations entre les objets. Ainsi, l'extension réalisée par Bellynck [Bellynck99] permet de synchroniser la liste des relations avec les objets manipulés.

4. Parcours dans le document multimédia

Dans de nombreux domaines (hypertexte, recherche d'informations) des métaphores graphiques (boîtes, ressorts, arbres coniques) sont utilisées pour permettre à l'auteur de mieux appréhender les gros volumes d'information comme c'est le cas de certains documents multimédias. Cependant ces métaphores graphiques ne sont pas suffisantes ([Morse99], [Wilcox97]). Il est important de compléter ces métaphores graphiques statiques par des moyens de parcours à l'intérieur du volume d'informations offert à l'auteur. La barre de défilement en est un exemple simpliste, mais d'autres mécanismes peuvent être proposés comme les arbres hyperboliques. La représentation graphique choisie permet d'afficher à l'auteur l'information qui est essentielle à son travail en cours, tout en lui permettant d'accéder aux autres informations par des manipulations simples.

Nous allons nous intéresser dans cette partie à des techniques de navigation développées dans l'environnement idéal de manière à aider l'utilisateur dans sa tâche de compréhension d'un gros volume d'information.

4.1 Type de parcours offerts dans l'environnement idéal

Des techniques ont été développées pour permettre à l'auteur de naviguer de façon plus rapide à l'intérieur de son document. On peut classer ces techniques en trois catégories : Les modes de parcours peuvent également tirer parti des services de synchronisation entre les vues. On peut par exemple imaginer une synchronisation sur les objets en cours de visualisation entre ces vues de navigation et les autres vues de l'application. Cela pourrait se faire au moyen d'une métaphore graphique qui, par exemple, dans la vue hiérarchique se traduirait par le changement de couleur des objets en cours de visualisation.

On peut citer aussi les techniques de navigation plus évoluées qui se basent sur les instants clés du document (images clés représentant les instants de début ou de fin d'objets (voir Figure III-23) ([Layaida99])), les techniques qui permettent de compresser certaines parties temporelles. On peut noter que ces techniques sont largement utilisées dans les outils de création et de manipulation de vidéo [Adobe-premiere00].

Storyboard
Figure III-23 : Visualisation des instants clés

4.2 Parcours de l'espace de solutions du document

Nous avons vu au cours du chapitre précédent que lors de l'édition de documents à base de relations flexibles, l'auteur ne spécifie pas une présentation de son document mais un ensemble de présentations. Le système doit donc permettre à l'auteur de naviguer dans cet espace. Un moyen simple de réaliser cela est de permettre à l'auteur de manipuler directement la flexibilité des relations [Tardif97]. Un besoin important lors de ces opérations est la perception de l'espace des déplacements possibles des objets avant toute manipulation. Par exemple, lorsque l'auteur sélectionne un objet dans le but de le déplacer dans la dimension spatiale ou temporelle, il est important que le système l'informe de l'intervalle dans lequel il pourra effectuer ce déplacement sans enfreindre les différentes relations du document qu'il a déjà spécifiées. Le système auteur doit donc dans un premier temps calculer l'intervalle de déplacement possible de l'auteur et dans un deuxième temps le rendre perceptible à ce dernier, par exemple en l'affichant [Tardif97].

Cet intervalle n'est pas seulement dû aux propriétés intrinsèques de l'objet, mais aussi à son contexte dans le document et notamment aux différentes relations directes ou indirectes qui le lient aux autres objets.
Par exemple dans la Figure III-24, si l'auteur définit le document suivant :

Objets

A: [4]
B: [10]
C: [4]
D: [1 3 6]

Relations

A Suivi_de B
B Suivi_de C
A Avant D
D Avant C

Anticipation

Figure III-24 : Besoin d'anticipation en cours d'édition

La solution courante est affichée dans la Figure III-24, avec A=4, B=10, C=4, D=3. Maintenant supposons que l'auteur déplace l'objet D. Il est important de l'informer que ce déplacement peut se faire uniquement de quatre unités vers la gauche ou de trois unités vers la droite (par une borne de déplacement comme sur la figure, par exemple).

4.3 Synthèse sur le parcours des informations contenues dans le document

Les différentes vues spécifiées dans la section 2.3 répondent aux besoins de visualisation définis dans le chapitre précédent (section 2.2.2), en permettant à l'auteur de comprendre et de manipuler les différents aspects de son document. De plus, certaines vues, comme la vue temporelle et spatiale, permettent à l'auteur d'éditer simplement le document, par exemple, en plaçant directement les objets à leur emplacement temporel ou spatial.

Le parcours des informations contenues dans le document au travers des vues permet à l'auteur, entre autre, de visualiser l'espace de solutions défini dans son document et lui permet de parcourir, selon ses besoins, les différentes parties du document. De plus, la combinaison des vues et des fonctions de navigation permet à l'auteur d'avoir à sa disposition plusieurs manières pour effectuer chacune des opérations d'édition. Il peut alors choisir celle qui convient le mieux à l'opération qu'il fait ou la plus adaptée à la succession d'opérations qu'il est en train de faire. Nous illustrerons cela dans l'exemple de session d'édition dans la section qui suit.

5 Illustration au travers d'un exemple

De manière à illustrer ce chapitre et le type d'environnement auteur que nous proposons, nous allons terminer ce chapitre par un exemple de session d'édition avec un tel environnement.
Nous allons utiliser l'environnement auteur idéal construit au dessus de Madeus. Ce choix, est purement arbitraire, l'édition se faisant de manière similaire dans tous les environnements auteur.
Nous allons donc reprendre le document INRIA présenté dans le chapitre précédent.
Dans un premier temps, l'auteur au moyen de l'interface va créer ces cinq médias texte ("Institut", "National", "de Recherche ", "en Informatique", "et Automatique").
Dans l'exemple de la Figure III-25, on peut voir cette création. L'auteur a plusieurs possibilités pour créer ces objets. Par exemple, il peut insérer l'objet directement dans la vue spatiale ou hiérarchique (flèches 1 de la figure), et ensuite positionner les attributs soit par manipulations directes dans les vues (attributs spatiaux dans la vue de présentation et attributs temporels dans la vue temporelle) ou grâce à la vue attributs (flèches 2 de la figure).

add text
Figure III-25 : Ajout d'un élément texte
Dans un deuxième temps, il va définir la structure spatiale et créer un composite qui contient ces cinq médias. Il va ensuite mettre quatre relations pour aligner ces objets horizontalement (<AligneAGauche param1="media1" param2="media2" delta="+60">), et quatre relations pour aligner ces objets verticalement (<Under param1="media1" param2="media2" delta="+20">). Dans l'exemple de la Figure III-26, l'auteur insert une relation spatiale entre les objets "National" et "et Automatique". Pour cela il peut sélectionner les objets dans la vue qu'il préfère (dans l'exemple, la sélection s'effectue à l'aide des vues spatiale et hiérarchique), et il positionne une relation à l'aide de la palette de relations.

Une fois le positionnement spatial défini, il peut définir la structure temporelle en définissant un composite qui contient les cinq médias et placer les objets les uns par rapport aux autres avec des relations spatiales et/ou temporelles (exemple : <start param1="media1" param2="media2" delay="10s"> ).

Dans l'exemple de la Figure III-27, l'auteur insert une relation temporelle entre deux objets. Comme pour les relations spatiales il peut sélectionner les objets dans la vue qu'il désire, et positionne une relation grâce à la palette temporelle.


Add relation spatial
Figure III-26 : ajout de relation spatiale
Une fois ces définitions faites, il peut placer spatialement le média qui apparaît en premier là où il le désire dans la vue présentation. Du fait que le système auteur maintient les relations, les autres objets seront toujours placés en cascade les uns par rapport aux autres. Il fait de même pour le premier objet temporel.

Add relation temporelle
Figure III-27 : Ajout de relation temporelle
A tout moment au cours de ce processus d'édition l'auteur peut exécuter son document de manière à avoir un aperçu de son document.

On peut noter que s'il désire rajouter une image de titre, il lui suffit de créer le média, de le placer spatialement et temporellement, et si nécessaire de mettre une relation avec un des autres objets pour que la présentation s'adapte automatiquement. De la même façon, s'il désire que sa présentation fasse 10 secondes de plus, il lui suffit de spécifier cette durée sur le document, et le formateur modifiera les durées sur les objets pour prendre en compte cette modification.

On peut aussi imaginer que l'auteur veuille utiliser cette présentation pour réaliser un autre document, par exemple la présentation de la boîte à outils Kaomi. Pour cela, il remplace le contenu des cinq médias texte par ("Kaomi :", "une boîte", "à outils", "pour la construction", "d'environnements auteur". Le système ajustera alors le placement spatial des cinq objets en conservant les relations spatiales spécifiées.

6 Bilan et perspectives de l'environnement idéal

Au cours de ce chapitre nous venons de proposer un formalisme d'édition et un environnement auteur pour la spécification de documents multimédias. Dans l'exemple terminant ce chapitre, nous avons pu voir qu'il était relativement simple de définir le document, et qu'il était relativement simple de le modifier.

L'hypothèse que nous avons faite, qui était de fournir un environnement auteur basé essentiellement sur un formalisme d'édition relationnelle (tout en permettant à l'auteur d'utiliser le formalisme du fichier de sauvegarde), répond dans un premier temps aux différents besoins énoncés dans le chapitre II (section 2.1 et 2.2).

Les différentes propositions qui ont été faites dans ce chapitre permettent aussi de répondre aux différents besoins de visualisation et de présentation définis dans le chapitre II.

L'environnement résultant permet donc d'apporter à la fois une réponse sur la simplicité d'édition ainsi que sur les services d'aide à l'auteur tel que la visualisation, la vérification de cohérence et le formatage. Ce sont généralement ces points qui limitent l'utilisation des outils actuels.

Nous allons nous intéresser maintenant à la réalisation d'un tel environnement. L'environnement que nous allons proposer ne satisfait pas tous les points décrits dans ce chapitre. Cette limitation porte essentiellement sur les trois points suivants :

Pour ces trois points de nombreux travaux sont en cours et ils ne sont pas liés à la dimension temporelle des documents multimédias.

Nous apporterons par contre une réponse à tous les autres points. La volonté de valider les principes d'édition pour de nombreux langages représentatifs des différentes approches de spécifications a motivé le choix de réaliser une boîte à outils de manière à mettre en commun le maximum de compétence. Les points difficiles dans la réalisation de cette boîte à outils sont :

La présentation des réponses à ces problèmes se fera en trois temps. Nous présenterons dans un premier temps l'architecture de la boîte à outils ainsi que la mise en oeuvre du formalisme d'édition et des différentes vues dans le chapitre IV.

Dans un deuxième temps (chapitre V), nous présenterons la réalisation des deux derniers points, que nous avons choisi de réaliser à l'aide de technologies à base de contraintes. Le choix d'utiliser des techniques à base de contraintes est motivé par le fait que nous voulons apporter une réponse globale aux problèmes de placement et de cohérence pour les différents langages de documents multimédias que nous allons expérimenter.

Dans un troisième temps (Chapitre VI) nous présenterons la réalisation de différents environnements auteur de documents multimédias.