<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Annotations</title>
  <meta name="GENERATOR" content="amaya V4.3.1" />
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>

<body xml:lang="fr" lang="fr">

<table border="0" summary="toc">
  <tbody>
    <tr>
      <td><img alt="W3C" src="../../Icons/WWW/w3c_home" /> <img
        alt="Amaya" src="../Icons/amaya.gif" /></td>
      <td><p><a href="MakeBook.html.fr" accesskey="p"><img
        alt="previous" src="../Icons/left.gif" /></a> <a
        href="Manual.html.fr" accesskey="t"><img alt="top"
        src="../Icons/up.gif" /></a> <a href="Configure.html.fr"
        accesskey="n"><img alt="next" src="../Icons/right.gif"
        /></a></p>
      </td>
    </tr>
  </tbody>
</table>
<ul>
  <li><a href="Annotations.html.fr#def">Définition</a></li>
  <li><a href="Annotations.html.fr#Local">Annotations locales et
  distantes</a></li>
  <li><a href="Annotations.html.fr#Annotation">Menu des annotations</a></li>
  <li><a href="Annotations.html.fr#Configurat">Menu de configuration pour les
    annotations</a></li>
  <li><a href="Annotations.html.fr#Creating1">Créer une annotation</a></li>
  <li><a href="Annotations.html.fr#Deleting1">Supprimer une
  annotation</a></li>
  <li><a href="Annotations.html.fr#Loading">Charger et afficher une
    annotations</a></li>
  <li><a href="Annotations.html.fr#Navigating">Activer des
  annotations</a></li>
  <li><a href="Annotations.html.fr#Moving">Déplacer des annotations</a></li>
  <li><a href="Annotations.html.fr#Issues1">Problèmes relatifs aux annotations
    et aux documents modifiés</a></li>
</ul>

<div id="Annotations">
<h2><a name="L1065">Les annotations dans Amaya</a></h2>

<h3 id="def">Définition</h3>

<p>Une annotation est un commentaire, une note, une explication ou tout autre
remarque externe qui peut être attachée à un document web ou à une partie de
celui-ci. Comme les annotations dans Amaya sont externes au document, il est
possible d'annoter n'importe quel document du web, même sans avoir le droit de
le modifier. D'un point de vue technique, une annotation peut être vue comme
une méta-donnée puisqu'elle fournit une information supplémentaire sur une
donnée existante. Dans Amaya, nous utilisons un <a
href="http://www.w3.org/2000/10/annotation-ns">schéma</a> <a
href="http://www.w3.org/RDF/">RDF</a> pour décrire les annotations.</p>

<p>Les annotations peuvent être enregistrées localement ou sur un ou plusieurs
<strong>serveur(s) d'annotations</strong>. Lorsqu'un document est chargé,
Amaya interroge chacun de ces serveurs et recherche les annotations relatives
à ce document. Chaque annotation est ensuite représentée par l'icône suivante
<img src="../Icons/annot.png" alt="Crayon representant une annotation" /> qui
est ajoutée au document (voir figure ci-dessous). Lorsque l'utilisateur clique
sur l'icône d'annotation, le passage annoté est mis en évidence. Si
l'utilisateur double-clique sur l'icône alors le contenu de l'annotation ainsi
que les autres méta-données lui sont présentées dans une nouvelle fenêtre.</p>

<p style="text-align: center"><img src="../Icons/annotationicon.png"
alt="annotation icon (= pencil)" /></p>

<p>Une annotation possède plusieurs propriétés :</p>
<ul>
  <li>Point de stockage: dans le système de fichiers de l'utilisateur ou sur
    un serveur d'annotations</li>
  <li>Etendue : l'annotation est associée à un document entier ou à une
    fragment de celui-ci</li>
  <li>Type de l'annotation: 'Annotation', 'Comment', 'Query', ...</li>
</ul>

<h3 id="Local">Annotations locales et distantes</h3>

<p>Amaya peut sauver les annotations dans un fichier local (annotations
locales) ou sur le Web (annotations distantes). Les <strong>annotations
distantes</strong> sont enregistrées sur des serveurs d'annotations et peuvent
être chargées ou enregistrées par quiconque ayant les droits d'accès
correspondants, comme pour les autres documents HTML. Les annotations
distantes sont dites <strong>partagées</strong> ou <strong>publiques</strong>
parce qu'elles peuvent être vues par plusieurs personnes. Si vous désirez
installer votre propre serveur d'annotations, veuillez vous référer au
document "<a
href="http://www.w3.org/1999/02/26-modules/User/Annotations-HOWTO.html">Annotation-Server
HOWTO</a>".</p>

<p>Les <strong>annotations locales</strong> ne nécessitent pas l'utilisation
de serveur. Elles sont enregistrées sous le repértoire de configuration
d'Amaya, dans un répertoire spécifique appelé <code>annotations</code> et
peuvent être visualisées uniquement par leur auteur (selon les droits d'accès
en fonction). Ce répertoire comporte trois sortes de fichiers:</p>
<dl>
  <dt><strong>annot.index</strong></dt>
    <dd>les URL associées aux fichiers dans lesquels les méta-données des
      annotations sont sauvegardées.</dd>
  <dt><strong>index + random suffix</strong></dt>
    <dd>un fichier contenant les meta-données d'une annotation relative à une
      URL. Les meta-données sont spécifiées avec RDF.</dd>
  <dt><strong>annot + random suffix.html</strong></dt>
    <dd>contient le corps de l'annotation enregistrée en XHTML.</dd>
</dl>

<p>Un utilisateur peut à tout moment transformer une annotation locale en une
annotation partagée en utilisant l'entrée <strong>Enregistrer une
annotation</strong> du menu <strong>Annotations</strong>. Si cette commande
réussit, l'annotation est supprimée localement et transférée sur un serveur
d'annotations. La section suivante décrit comment définir le nom du serveur
d'annotations sur lequel les annotations distantes sont enregistrées.</p>

<h3 id="Annotation">Menu des annotations</h3>

<p>La plupart des commandes utilisées pour la gestion des annotations se
trouvent dans le menu d'annotations représenté ci dessous.</p>

<p style="text-align: center"><img src="../Icons/annotationsmenu_fr.png"
alt="Annotations menu" /></p>

<h3 id="Configurat">Menu de configuration pour les annotations</h3>

<p>Ce menu est appelé à partir de l'entrée <strong>Configuration</strong>. La
figure suivante montre la version Windows de ce menu. La version Unix a une
interface utilisateur légèrement différente mais offre les mêmes
fonctionnalités.</p>

<p style="text-align: center"><img src="../Icons/configurebox.png"
alt="configuration dialog box" /></p>

<p></p>
<dl>
  <dt><strong>Nom de l'utilisateur (Annotation user)</strong></dt>
    <dd>Ce champ est associé à chaque nouvelle annotation et définit
      l'<strong>auteur</strong> de l'annotation. Par défaut, Amaya utilise le
      nom de connexion pour construire la méta-donnée auteur. Le champ
      "Annotation user" permet à un utilisateur de remplacer ce nom par un nom
      plus significatif comme par exemple, changer le nom
      <code>u1723242</code> en <code>marja</code>.</dd>
  <dt><strong>Serveurs d'Annotations (Annotation servers)</strong></dt>
    <dd>Ce champ définit les serveurs d'annotations à interroger lorsque Amaya
      cherche une annotation. Vous pouvez spécifier un ou plusieurs serveurs.
      Le nom de serveur <strong>localhost</strong> est réservé, il indique à
      Amaya de chercher localement les annotations. Cela ne signifie pas que
      l'on utilise un serveur pour les annotations locale, pour cela il
      faudrait donner l'URL complète de celui-ci. Sous Unix, les serveurs
      d'annotations sont spécifiés à la suite, séparés par un espace. Sous
      Windows, ils sont spécifiés les uns après les autres et séparés par la
      touche <code>Return</code>. Par défaut, ce champ est initialisé avec
      <code>localhost</code>. 
      <p><em>ASTUCE</em>: Vous pouvez inhiber la consultation d'un serveur
      d'annotations en préfixant l'URL du serveur avec le caractère '-'.</p>
    </dd>
  <dt><strong>Chargement automatique des annotations locales et distantes
  (Autoload annotations)</strong></dt>
    <dd>Ces options indiquent à Amaya de rechercher automatiquement ou non les
      annotations lorsqu'une nouvelle URL est chargée. Si elles ne sont pas
      positionnées alors l'utilisateur doit explicitement sélectionner
      l'entrée <strong>Charger les annotations</strong> pour visualiser
      celles-ci. Il peut y avoir un certain délai lorsque Amaya charge les
      annotations distantes, ce délai étant du à la résolution du nom DNS des
      serveurs d'annotations. Par défaut, ces options sont désactivées.</dd>
  <dt><strong>Désactiver le chargement automatique des annotations
  distantes</strong></dt>
    <dd>Lorsque cette option est activée, Amaya réinitialise l'option
      <code>Chargement automatique des annotations distantes</code> au
      démarrage. Cela est très utile si vous travaillez en mode déconnecté de
      temps en temps et que vous voulez continuer à charger automatiquement
      les annotations locales tout en rechargeant les annotations distantes
      lorsque vous êtes connectés.</dd>
  <dt><strong>Serveur de publication des annotations (Annotation Post
  Server)</strong></dt>
    <dd>Ce champ définit le serveur sur lequel les annotations sont
      enregistrées. Les annotations locales sont toujours sauvegardées dans un
      répertoire local, sans tenir compte de ce champ. Par défaut, il est
      vide. Il est à noter que le serveur sur lequel les annotations distantes
      sont enregistrées n'est pas nécessairement inclus dans la liste des
      serveurs interrogés; pour cela, vous devez rentrer son nom dans chacun
      des deux champs, dans l'ordre que vous voulez.</dd>
</dl>

<h3 id="Creating1">Créer une annotation</h3>

<p>La version courante d'Amaya supporte deux sortes d'annotations: celles qui
s'appliquent sur le document entier et celles qui s'appliquent sur une partie
ou une sélection du document. Pour annoter un document entier, sélectionnez
l'entrée <strong>Annoter le document</strong> du menu
<strong>Annotations</strong>. Pour annoter une partie, placez le curseur sur
la partie désirée et sélectionnez l'entrée <strong>Annoter la
sélection</strong>. Pour annoter la sélection, utilisez la même entrée après
avoir fait la sélection désirée. Dans tous les cas, une fenêtre d'annotation
s'affichera (figure suivante). Le contenu de cette fenêtre montre les
méta-données de l'annotation à l'intérieur d'un cadre et le
<strong>corps</strong> de l'annotation à l'extérieur.</p>

<p style="text-align: center"><img src="../Icons/annotationwindow.png"
alt="annotation window" /></p>

<p></p>

<p>Les méta-données actuellement définies pour une annotation indiquent le
<strong>nom de son auteur</strong>, le <strong>titre du document
annoté</strong> (également appelé document source), le <strong>type de
l'annotation</strong>, sa <strong>date de création</strong> et la <strong>date
de sa dernière modification</strong>. Certaines de ces méta-données ont des
propriétés spécifiques. Ainsi, le champ <strong>document source</strong> est
également un lien qui pointe sur le texte annoté. Si l'utilisateur
double-clique dessus (comme pour tout lien dans Amaya) alors le document
annoté est affiché en premier plan et le texte annoté est mis en évidence. La
méta-donnée <strong>type de l'annotation</strong> permet à l'utilisateur de
classer les annotations et de changer leur type. Un double-clic sur ce champ
montre la liste des types disponibles. Nous préciserons plus loin comment un
utilisateur peut définir son propre type d'annotation. Enfin, la méta-donnée
<strong>date de dernière modification</strong> est automatiquement mise à jour
lorsque l'annotation est sauvegardée.</p>

<p>Sous l'entête de l'annotation se trouve le <strong>corps</strong> de
celle-ci. Il montre son contenu courant et peut être édité comme n'importe
quel document HTML. Il est à noter que la version courante d'Amaya ne supporte
pas les images dans le corps des annotations et que certaines des
fonctionnalités de celles-ci ne sont pas encore disponibles, comme la vue
structure par exemple.</p>

<p>Sauver une annotation revient à sauver n'importe quel autre document,
l'utilisateur doit juste sélectionner l'entrée <strong>Sauver</strong> du menu
<strong>Fichier</strong> ou cliquer sur le bouton équivalent ou bien activer
le raccourci-clavier correspondant. Les annotations locales sont sauvées sous
le répertoire des annotations et les annotations distantes sont sauvées sous
le serveur d'annotation correspondant, si l'utilisateur possède un droit
d'écriture dessus. Pour transformer une annotation locale en une annotation
publique (distante), l'utilisateur doit utiliser l'entrée <strong>Enregistrer
les annotations</strong>, elles seront alors enregistrées sous le serveur
défini dans le menu de configuration puis, en cas de succès, supprimées du
répertoire local. La sauvegarde des annotations se fera alors directement sur
le serveur d'annotations. Dans la version initiale des annotations,
l'opération inverse (transfert d'une annotation distante dans le répertoire
local) n'est pas supportée .</p>

<p>Certaines commandes accessibles dans la vue principale d'Amaya sont
également disponibles pour les annotation comme par exemple le commande
<strong>Imprimer</strong> qui imprime le corps de l'annotation ou la commande
<strong>Recharger</strong>.</p>

<h3 id="Deleting1">Détruire une annotation</h3>

<p>La commande <strong>Détruire une annotation</strong> du menu de la fenêtre
d'annotation vous permet de supprimer celle-ci. Vous pouvez également
supprimer une annotation à partir du document annoté en sélectionnant l'icône
de celle-ci puis en appelant cette commande dans le menu du document
annoté.</p>

<h3 id="Loading">Charger et présenter les annotations</h3>

<p>La commande <strong>Charger les annotations</strong> indique à Amaya de
rechercher les annotations associées à l'URL du document chargé dans la vue
principale. Amaya va alors rechercher les annotations correspondantes dans les
serveurs d'annotations définis par le <strong>menu de Configuration</strong>.
Les annotations peuvent également être chargées automatiquement en choisissant
l'option <strong>Autoload annotations</strong> dans le menu de configuration.
Dans la version actuelle des annotations, la recherche sur un serveur
d'annotations retourne <strong>toutes</strong> les annotations associées à un
document. Dans une prochaine version, il sera possible de mieux cibler la
requête envoyée aux serveurs.</p>

<p>L'entrée <strong>Filtre local</strong> permet à l'utilisateur de montrer ou
de cacher les icônes d'annotation dans un document annoté pour mieux se
concentrer par exemple sur ce qui l'intéresse ou pour faciliter la lecture
d'un document annoté. L'utilisateur peut filtrer ces icônes selon trois
critères: le <strong>nom de l'auteur</strong> de l'annotation, le
<strong>type</strong> de l'annotation et le <strong>nom du serveur</strong>
d'annotations. Pour appliquer chacun de ces filtres, cliquez sur le texte
correspondant pour sélectionner un type donné d'annotation puis sur le bouton
correspondant à l'action. Les commandes <strong>Montrer Tout</strong> et
<strong>Cacher Tout</strong> s'appliquent sur l'ensemble des annotations. On
prefixe chaque entrée du menu d'un espace (' '), d'une étoile ('*') et d'un
tiré ('-') pour indiquer que toutes les annotations appartenant à une
catégorie donnée sont visibles, cachées ou partiellement cachées,
respectivement.</p>

<p>Il est à noter que le menu Filtre vous montre l'état courant du document au
moment où le filtre est invoqué. Si vous ajoutez des nouvelles annotations
entre temps, le filtre ne les montrera pas. Il faudra appuyer sur le bouton
terminer et le rappeler pour voir le nouvel état.</p>

<p>Pour chaque annotation, le nom de l'utilisateur est obtenu en concaténant
le nom de l'auteur et le nom du serveur d'annotations sur lequel celle-ci est
enregistrée, comme montré dans la figure suivante.</p>

<p></p>

<p style="text-align: center"><img src="../Icons/localfilter.png"
alt="local filter dialog box" /></p>

<h3 id="Navigating">Activer des annotations</h3>

<p>Les annotations apparaissent dans la vue <strong>Liens</strong> du document
annoté (avec les autres liens définis dans ce document) et sont symbolisées
par la même icône que dans la vue principale. La vue Liens montre toutes les
annotations du document sans tenir compte du fait qu'elles aient été ou non
cachées par le menu <strong>Filtrer</strong>. Comme dans la vue principale, un
simple-clic sur l'icône met en évidence le partie annotée du document et un
double-clic ouvre l'annotation. La figure ci-dessous montre un exemple de
navigation d'un lien d'annotation vers un autre même si l'annotation ne peut
être vue par tous les utilisateurs à cause d'une indisponibilité ou des
caractéristiques du support utilisé.</p>

<p style="text-align: center"><img src="../Icons/linkwindow.png"
alt="Link window shows annotations" /></p>

<h3 id="Moving">Déplacer des annotations</h3>

<p>Amaya vous permet également de deplacer une annotation vers un autre
endroit du document, par exemple pour rattacher des <a
href="Annotations.html#Issues1">annotations trompeuses ou orphelines</a>. Vous
pouvez déplacer une annotation soit vers la sélection courante, soit vers la
valeur d'un XPointer. Actuellemnt, on ne peut déplacer des annotations que
dans le document où elles ont été créées.</p>

<p>Pour déplacer une annotation vers la sélection courante, il faut dábord
ouvrir une fenêtre d'annotation et sélectionner une partie du document annoté.
Puis, dans la fenêtre d'annotation, appeler le menu <strong>Annotations/Move
to selection</strong>. Amaya déplace alors l'icône de l'annotation vers la
partie sélectionnée et considère l'annotation comme modifiée. Pour rendre ce
changement effectif, vous devrez la sauver. De la même manière que pour la
création, vous pouvez déplacer une annotation vers la position courante du
curseur sans avoir besoin de faire la sélection.</p>

<p>Pous pouvez aussi mémoriser la position où vous voulez déplacer une
annotation, par exemple pour déplacer plusieurs annotations vers le même
endroit ou pour se déplacer dans la fenêtre avant de faire la manipulation.
Pour cela, faire la sélection (ou placer le curseur) à l'endroit désiré puis,
utiliser le menu <strong>Link/Store link as XPointer</strong> pour créer un
XPointer représentant cette sélection. Enfin, dans la fenêtre d'annotation,
utiliser le menu <strong>Annotations/Move to stored XPointer</strong> pour
déplacer l'annotation à la nouvelle position. Comme précédemment, vous devrez
sauver l'annotation pour rendre ce changement effectif.</p>
</div>

<div id="Issues">
<h3 id="Issues1">Problèmes relatifs aux annotations et aux documents
modifiés</h3>

<p>Si vous utilisez les annotations sur des documents dont le contenu peut
être modifié, deux catégories de problèmes peuvent survenir: les
<strong>annotations orphelines</strong> et les <strong>annotations
trompeuses.</strong> Avant d'aller plus loin sur ces problèmes, nous allons
d'abord décrire comment Amaya relie les annotations aux documents annotés.</p>

<p>Pour cela, Amaya utilise le mécanisme <strong><a
href="http://www.w3.org/XML/Linking">XPointer</a></strong>. Les XPointers
reposent sur la structure du document. Pour construire un XPointer, par
exemple pour une sélection, on part du premier point de la sélection et on
remonte à travers la structure du document jusqu'à trouver la racine de
celui-ci. Si un élément possède un attribut ID, on arrête la recherche et on
considère que le début du XPointer est cet élément. Par exemple, en regardant
le source HTML de cette documentation, on s'aperçoit que la section courante
est à l'intérieur d'un élément DIV, lequel possède un attribut ID avec la
valeur "Issues". Voici un extrait du code source:</p>
<pre>  &lt;div id="Issues"&gt;
  &lt;h3&gt;&gt;Problèmes sur ....&lt;/h3&gt;&gt;
  &lt;p&gt;Si vous utilisez ...&lt;/p&gt;
  &lt;p&gt;Pour cela, Amaya utilise le mécanisme &lt;strong&gt;XPointer&lt;/strong&gt;...&lt;/p&gt;
  ...
  &lt;/div&gt;</pre>

<p>Et voici le XPointer qui pointe sur le second paragraphe:</p>

<p style="text-align: center"><code>xpointer(id("Issues")/p[2])</code></p>

<p>Le XPointer ci-dessus pointe sur le second élément <code>p</code> à partir
de l'élément parent qui possède l'attribut ID avec la valeur "Issues".
L'utilisation de l'attribut ID permet à l'auteur du document de déplacer la
totalité de cette section n'importe où dans le document sans avoir besoin de
remettre à jour le Xpointer correspondant. Ce dernier de dépend pas des
éléments qui précèdent cette section.</p>

<p>Une annotation est dite <strong>orpheline</strong> lorsqu'elle ne peut plus
être rattachée au document, c'est à dire quand le Xpointer ne trouve plus
l'élément correspondant dans la structure du document. Cela arrive notamment
quand la structure est modifiée. Par exemple, le Xpointer précédent ne
pourrait plus retrouver l'élément correspondant si l'on supprimait l'attribut
ID de celui-ci. Amaya avertit l'utilisateur s'il détecte une annotation
orpheline au chargement. Les annotations orphelines sont visibles dans la vue
<strong>Liens</strong> du document et sont symbolisées par l'icône des
annotations sur laquelle est superposé un point d'interrogation <img
src="../Icons/annotorp.png" alt="Orphan annotation icon" />.</p>

<p>Une annotation est dite <strong>trompeuse</strong> lorsqu'elle ne pointe
pas sur la bonne partie du document. En reprenant notre exemple, nous pouvons
créer une annotation trompeuse en intervertissant le premier et le second
paragraphe. Le Xpointer continuera de pointer vers le second paragraphe bien
qu'il devrait pointer désormais sur le premier. Ce problème est encore plus
fréquent lorsque vous annotez un texte qui peut changer. Dans sa version
actuelle, Amaya n'avertit pas l'utilisateur des annotations trompeuses. Une
prochaine version l'avertira de la possibilité d'une annotation d'être
trompeuse.</p>

<p>Comment éviter ces problèmes ?</p>

<p>Si vous êtes l'auteur du document, utilisez les attributs ID aux endroits
stratégiques, par exemple pour les éléments DIV. Amaya vous permet d'associer
ou de retirer automatiquement un attribut ID en sélectionnant l'entrée
<strong>Ajouter/Retirer des attributs ID</strong> du menu
<strong>Spécial</strong>. Dans notre exemple, on peut éviter le problème des
annotations trompeuses en ajoutant un attribut ID au second paragraphe:</p>
<pre>  &lt;p id="Amaya"&gt;Pour cela, Amaya utilise...&lt;/p&gt;</pre>

<p>Un XPointer qui pointe sur ce paragraphe est alors</p>

<p style="text-align: center"><code>xpointer(id("Amaya"))</code></p>

<p>Ainsi, ce Xpointer pointera toujours sur le même paragraphe, sans se
soucier de la position de celui-ci dans la structure du document.</p>
</div>

<p><a href="MakeBook.html.fr"><img alt="previous" 
src="../Icons/left.gif" /></a> <a href="Manual.html.fr"><img alt="top"
src="../Icons/up.gif" /></a> <a href="Configure.html.fr"><img
alt="next" src="../Icons/right.gif" /></a></p>
<hr />
</body>
</html>
