• Aucun résultat trouvé

6.2 IsaViz

6.2.2 Édition des modèles

L’intérêt principal d’IsaViz par rapport aux autres outils visuels existants dédiés à RDF est la possibi-lité de créer et d’éditer les modèles à partir de leur représentation visuelle. Il existe un autre outil offrant lui aussi des possibilités d’édition, appelé RDFAuthor [200]. Cet outil est de notre point de vue plus li-mité, notamment au niveau de la résistance au facteur d’échelle (scalability) : l’algorithme d’agencement spatial du graphe est très basique et les arcs représentant les propriétés sont limités à des flèches droites. La figure 6.6 montre le même modèle RDF après importation et agencement automatique, dans RDFAu-thor (à gauche), et dans IsaViz (à droite), qui fait appel à GraphViz pour calculer la position des nœuds et la forme des arcs. RDFAuthor fournit d’autre part des fonctions de navigation très limitées et peu ergonomiques (translation par barre de défilement et zoom discret controlé par une règlette). RDFAuthor présente néanmoins les intérêts suivants : il supporte la représentation Unicode (modèles utilisant par exemple des caractères asiatiques) et il est possible d’exprimer des requêtes visuelles à partir de graphes incomplets.

Interaction contrainte

IsaViz n’est pas un simple outil d’édition de graphes orientés, mais a été conçu spécialement pour RDF. Les contraintes spécifiques aux graphes RDF ont été modélisées dans l’environnement (on parle d’un RDF-aware environment), ce qui se traduit concrètement par une limitation des actions que peut en-treprendre l’utilisateur au cours de l’édition, ainsi que par le déclenchement automatique de commandes

FIG. 6.6 : Représentation du même modèle par RDFAuthor et IsaViz

en réponse à certaines actions, ceci afin de garantir la validité du modèle par rapport à la recommandation RDF du W3C [144]. L’interaction ne doit cependant pas être trop contrainte de manière à ne pas frustrer l’utilisateur en l’empêchant de réaliser des séquences d’actions qui pourraient rendre le modèle tempo-rairement invalide mais qui sont plus pratiques du point de vue du processus d’édition (voir section 5.2.4, le concept d’interaction visuelle légale de Bottoni [32] et la notion de Premature commitment de Green [111]). Ainsi, nous n’empêchons pas la création de ressources et de littéraux sans valeur associée, cette valeur pouvant être spécifiée plus tard. Par contre, nous interdisons les actions d’édition présentant un caractère d’erreur évident, comme la création d’une affirmation ayant pour sujet un nœud de type littéral. Dans le même esprit, et aussi afin de limiter la viscosité (effort requis pour effectuer un changement, voir section 3.4.2), l’environnement détruit automatiquement les propriétés attachées aux nœuds sup-primés par l’utilisateur, ceci afin de ne pas se retrouver avec des arcs flottants (pending edges). IsaViz fournit aussi des fonctions de couper/copier/coller ainsi qu’une fonction permettant d’annuler les der-nières actions. Ces fonctions sont plus complexes à implémenter que leurs équivalents textuels car elles doivent gérer des structures de données plus complexes : la copie d’une ressource engendre une nouvelle URI unique afin de préserver la validité du graphe ; lorsqu’un ensemble de nœuds et d’arcs sont copiés, leur collage entraîne une duplication de l’ensemble des entités et leur ajout au modèle en mémoire5.

5Les arcs sélectionnés pour la copie ayant au moins un des deux nœuds associés non sélectionnés ne sont pas collés afin, encore une fois, de ne pas avoir d’arc flottant.

IsaViz 181

Géométrie

Lors de l’importation des modèles RDF, IsaViz fait appel au programme dot pour calculer l’agence-ment spatial initial du graphe. L’utilisateur peut ensuite modifier la disposition et la taille des nœuds ainsi que le chemin emprunté par les arcs. Les différentes sérialisations ne conservent pas l’information géo-métrique associée aux différentes entités. Les modifications effectuées par l’utilisateur ne sont donc pas conservées d’une session à l’autre. Il est cependant intéressant de pouvoir restituer les modèles en fonc-tion de l’apparence que leur a donné l’utilisateur. En effet, comme nous l’avons vu dans le chapitre 5, les vues XVTM et le mode de navigation renforcent l’idée que les objets ont une localisation géométrique constante rendant ainsi l’orientation de l’utilisateur dans le modèle plus aisée. Permettre à l’utilisateur de modifier la position des objets à sa convenance contribue aussi à ce résultat en lui fournissant poten-tiellement des repères visuels plus intuitifs et familiers. L’utilisateur peut plus facilement retrouver une ressource dans le graphe s’il se rappelle, même vaguement, où il l’a placée dans l’espace virtuel.

Afin de pouvoir enregistrer l’information géométrique, nous avons défini un format XML spécifique pour les projets IsaViz. L’utilisateur peut utiliser ce format pour sauvegarder les projets sur lesquels il travaille. Les fichiers projets ISV sauvegardent le modèle augmenté de l’information géométrique asso-ciée à chaque nœud et chaque arc du graphe ainsi que quelques attributs supplémentaires abordés plus loin dans cette section. Ces fichiers sont plus volumineux que les sérialisations RDF/XML ou NTriples des modèles car ils enregistrent plus d’information et ne peuvent pas bénéficier des techniques d’abré-viation utilisées dans la syntaxe RDF/XML. Nous avions envisagé au départ d’enrichir la sérialisation RDF/XML par l’information géométrique représentée en SVG. Cette solution rencontre malheureuse-ment certains obstacles, comme l’absence d’élémalheureuse-ment représentant les nœuds anonymes (bNodes). Cette possibilité n’est cependant pas écartée, mais demande à être étudiée en profondeur en tenant compte de la nouvelle spécification du W3C relative à la syntaxe [14] afin de fournir une solution élégante et respectant cette nouvelle spécification.

Notations secondaires

Le format ISV permet de plus de proposer dans l’environnement une fonction de désactivation des nœuds et des arcs du modèle. Cette fonction peut être comparée à la mise en commentaire d’éléments dans les fichiers XML. Ces éléments existent toujours dans la représentation visuelle du modèle, mais ils ne font pas partie du modèle mémoire et ne sont pas exportés lors de la sérialisation en RDF/XML ou NTriples. Ils sont affichés en utilisant une couleur grise peu contrastée par rapport à la couleur de fond d’écran de manière à ne pas interférer avec les éléments actifs du graphe, améliorant ainsi la perception qu’en a l’utilisateur. Comme précédemment, le fait de désactiver un nœud du graphe a pour conséquence la désactivation automatique de toutes les propriétés qui lui sont attachées, afin de ne pas engendrer un modèle invalide.

La désactivation des nœuds est aussi un moyen de créer des notations secondaires [111]. En effet, comme avec les fonctions de commentaire des langages textuels, il est possible de créer des littéraux désactivés qui serviront de boîtes de texte dans lesquelles l’utilisateur pourra écrire des commentaires textuels pour annoter le modèle. Les possibilités d’annotation et surtout de désactivation sont encore

FIG. 6.7 : Librairies utilisées par IsaViz

rares dans les environnements visuels, alors que le fait d’avoir une représentation visuelle ne modifie en rien leur besoin.