home *** CD-ROM | disk | FTP | other *** search
/ PC World 2001 April / PCWorld_2001-04_cd.bin / Komunik / Amaya / WinNT2000 / amaya-WindowsNT-4.3.exe / _SETUP.1 / Annotations.html < prev    next >
Encoding:
Extensible Markup Language  |  2001-02-22  |  20.8 KB  |  399 lines

  1. <?xml version="1.0" encoding="iso-8859-1"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3.     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml">
  5. <head>
  6.   <title>Annotations in Amaya</title>
  7.   <meta name="GENERATOR" content="amaya V4.2.2" />
  8.   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  9. </head>
  10.  
  11. <body>
  12.  
  13. <table border="0" width="100%" summary="toc">
  14.   <tbody>
  15.     <tr>
  16.       <td><img border="0" alt="W3C" src="../../Icons/WWW/w3c_home" /> <img
  17.         border="0" alt="Amaya" src="../Icons/amaya.gif" /></td>
  18.       <td><p align="right"><a href="MakeBook.html" accesskey="p"><img
  19.         alt="previous" border="0" src="../Icons/left.gif" /></a> <a
  20.         href="Manual.html" accesskey="t"><img alt="top" border="0"
  21.         src="../Icons/up.gif" /></a> <a href="Configure.html"
  22.         accesskey="n"><img alt="next" border="0" src="../Icons/right.gif"
  23.         /></a></p>
  24.       </td>
  25.     </tr>
  26.   </tbody>
  27. </table>
  28. <ul>
  29.   <li><a href="#What">What is an Annotation</a></li>
  30.   <li><a href="#Local">Local and Remote Annotations</a></li>
  31.   <li><a href="#Annotation">Annotations Menu</a></li>
  32.   <li><a href="#Configurat">Configuration Settings for Annotations</a></li>
  33.   <li><a href="#Creating1">Creating an Annotation</a></li>
  34.   <li><a href="#Deleting">Deleting an Annotation</a></li>
  35.   <li><a href="#Loading">Loading and Presenting Annotations</a></li>
  36.   <li><a href="#Navigating">Navigating Annotations</a></li>
  37.   <li><a href="#Issues1">Issues with Annotations and Modified
  38.   Documents</a></li>
  39. </ul>
  40.  
  41. <div id="Annotations">
  42. <h2>Annotations in Amaya</h2>
  43.  
  44. <h3><a name="What">What is an Annotation?</a></h3>
  45.  
  46. <p>Annotations are comments, notes, explanations, or other types of external
  47. remarks that can be attached to a Web document or a selected part of the
  48. document. As they are external, it is possible to annotate any Web document
  49. independently, without needing to edit that document. From the technical point
  50. of view, annotations are usually seen as <strong>metadata,</strong> as they
  51. give additional information about an existing piece of data. In this project,
  52. we use a special <strong><a href="http://www.w3.org/RDF/">RDF</a></strong> <a
  53. href="http://www.w3.org/2000/10/annotation-ns">annotation schema</a> for
  54. describing annotations.</p>
  55.  
  56. <p>Annotations can be stored locally or in one or more <strong>annotation
  57. servers</strong>. When a document is browsed, Amaya queries each of these
  58. servers, requesting the annotations related to that document. Currently Amaya
  59. presents annotations with pencil annotation icons ( <img
  60. src="../Icons/annot.png" alt="Annotation pencil icon" /> )that are visually
  61. embedded in the document, as shown in the figure below. If the user
  62. single-clicks on an annotation icon, the text that was annotated is
  63. highlighted. If the user double-clicks on this icon, the annotation text and
  64. other metadata are presented in a separate window.</p>
  65.  
  66. <p style="text-align: center"><img src="../Icons/annotationicon.png"
  67. alt="annotation icon (= pencil)" /></p>
  68.  
  69. <p>An annotation has many properties including:</p>
  70. <ul>
  71.   <li>Physical location: is the annotation stored in a local file system or in
  72.     an annotation server</li>
  73.   <li>Scope: is the annotation associated to a whole document or just to a
  74.     fragment of this document</li>
  75.   <li>Annotation type: 'Annotation', 'Comment', 'Query', ...</li>
  76. </ul>
  77.  
  78. <h3 id="Local">Local and remote annotations</h3>
  79.  
  80. <p>Amaya can store annotation data in a local file system (called "local
  81. annotations") or in the Web (called "remote annotations"). <strong>Remote
  82. annotations</strong> are stored in annotation servers and can be downloaded
  83. and stored by anyone having the correct access rights, such as is the case of
  84. other HTML documents. We also refer to remote annotations as <strong>shared or
  85. public annotations</strong>, as they can be seen by other people. If you wish
  86. to install your own annotation server, please refer to <a
  87. href="http://www.w3.org/1999/02/26-modules/User/Annotations-HOWTO.html">Annotation-Server-HOWTO</a>.</p>
  88.  
  89. <p>The user doesn't need a server to make <strong>local annotations</strong>.
  90. Local annotations are stored under the <a
  91. href="/home/kahan/Amaya/doc/amaya/Configure.html">user preferences
  92. directory</a>, in a special directory called <code>annotations</code>, and can
  93. be seen only by their owner (according to the system access right setup). This
  94. directory is made of three kinds of files:</p>
  95. <dl>
  96.   <dt><strong>annot.index</strong></dt>
  97.     <dd>associates URLs with the files where the metadata of the annotations
  98.       are stored.</dd>
  99.   <dt><strong>index + random suffix</strong></dt>
  100.     <dd>a file that stores the metadata of the annotations related to a given
  101.       URL. The metadata is specified with RDF.</dd>
  102.   <dt><strong>annot + random suffix.html</strong></dt>
  103.     <dd>contains the body of an annotation, stored as XHTML.</dd>
  104. </dl>
  105.  
  106. <p>At any time, a user can convert a local annotation to a shared one, by
  107. using the <strong>Annotations/Post annotation</strong> menu entry. If this
  108. operation is succesful, the local annotation will be deleted, as it will have
  109. been moved to an annotation server. The following section describes how to set
  110. up the name of the server to which annotations should be posted.</p>
  111.  
  112. <h3 id="Annotation">Annotations Menu</h3>
  113.  
  114. <p>Most of the commands needed for handling annotations can be found from the
  115. Annotations menu shown below. The commands are explained later in this
  116. document in the context of users' goals when handling annotations.</p>
  117.  
  118. <p style="text-align: center"><img src="../Icons/annotationsmenu.png"
  119. alt="Annotations menu" /></p>
  120.  
  121. <h3 id="Configurat">Configuration Settings for Annotations</h3>
  122.  
  123. <p>The annotations configuration menu is found under
  124. the<strong>Annotations/Configure</strong> menu entry. The following figure
  125. shows the Windows version of this menu. The Unix version has a slightly
  126. different user interface, but the same functionalities.</p>
  127.  
  128. <p style="text-align: center"><img src="../Icons/configurebox.png"
  129. alt="configuration dialog box" /></p>
  130.  
  131. <p></p>
  132. <dl>
  133.   <dt><strong>Annotation user</strong></dt>
  134.     <dd>A field that is associated with each new annotation as the
  135.       <strong>author</strong> of the annotation. By default, Amaya uses the
  136.       login name of the user when building the author metadata field. The
  137.       annotation user setting allows a user to change this name to a more
  138.       significant one, for example, from <code>u1723242</code> (which makes
  139.       happy my system administrator) to <code>marja</code> (which other people
  140.       normally use when talking with me)<code>.</code></dd>
  141.   <dt><strong>Annotation servers</strong></dt>
  142.     <dd>This setting tells Amaya what servers it should contact when looking
  143.       for annotations. You can specify one or more servers. We use the
  144.       reserved server name <strong>localhost</strong> to tell Amaya we want to
  145.       search the local annotations. It doesn't mean we're running a local
  146.       annotation server. If that were the case, we would need to give its
  147.       complete URL. Under Unix, the annotation servers are specified as a
  148.       space separated list. Under Windows, they are added one after the other
  149.       by directly typing their names in the dialog box, using the
  150.       <code>Return</code> key to add a new one. By default, the annotation
  151.       servers field is initialized to <code>localhost</code>. 
  152.       <p><em>TIP</em>: If you want to temporarily disable an annotation
  153.       server, add a "-" char before its URL. Amaya will ignore it.</p>
  154.     </dd>
  155.   <dt><strong>Autoload local annotations/Autoload remote
  156.   annotations</strong></dt>
  157.     <dd>These setting tells Amaya whether or not to request annotations
  158.       automatically (that is, query the annotation servers ) every time that a
  159.       URL is browsed. If it's not checked, then the user has to manually
  160.       invoke the <strong>Load annotations</strong> function from the
  161.       <strong>Annotations</strong> menu. Note that the if you check the
  162.       <code>autoload remote annotations</code>option, there may be a delay
  163.       when Amaya resolves the DNS name of the annotation servers. By default,
  164.       both these options are turned off.</dd>
  165.   <dt><strong>Disable remote autoload at each startup</strong></dt>
  166.     <dd>If this option is checked, Amaya will reset the <code>autoload remote
  167.       annotations</code> option at launch time. This option can be useful if
  168.       you're working offline from time to time, but still want to autoload the
  169.       local annotations, and the remote ones from time to time, for example,
  170.       when going on-line for a while.</dd>
  171.   <dt><strong>Annotation post server</strong></dt>
  172.     <dd><p>This setting defines the server to which the annotations are
  173.       posted. Local annotations are always saved to the local repository,
  174.       regardless of the value of this setting. By default, this setting is
  175.       empty. Note that the post server is not automatically included in the
  176.       list of servers to be queried; you must enter the post server name in
  177.       both places, in whatever order you choose.</p>
  178.     </dd>
  179. </dl>
  180.  
  181. <h3 id="Creating1">Creating an Annotation</h3>
  182.  
  183. <p>This version of Amaya support two kinds of annotations: annotations that
  184. apply to a whole document and annotations that apply to a specific point or
  185. selection in a document.</p>
  186.  
  187. <p>To annotate a whole document, just select the <strong>Annotations/Annotate
  188. document</strong> menu entry. To annotate a point, put the caret in any point
  189. in the document and select the <strong>Annotations/Annotate selection</strong>
  190. menu entry. To annotate a selection, make a selection in the document, and
  191. then use the <strong>Annotations/Annotate selection</strong> menu entry. In
  192. all of these cases, an annotation window will appear (see following figure).
  193. The content of this window shows the <strong>metadata</strong> of the
  194. annotation, inside a box, and the <strong>body</strong> of the annotation.</p>
  195.  
  196. <p style="text-align: center"><img src="../Icons/annotationwindow.png"
  197. alt="annotation window" /></p>
  198.  
  199. <p></p>
  200.  
  201. <p>Currently, the metadata consists of the <strong>author's name</strong>, the
  202. <strong>title of the annotated document</strong>, the <strong>type of the
  203. annotation</strong>, the <strong>date of creation</strong>, and the
  204. <strong>date of the last modification</strong> . Some of the metadata fields
  205. have special properties. The <strong>source document</strong> field is also a
  206. link that points back to the annotated text. If the user double-clicks on it,
  207. as when following any other link with Amaya, the annotated document will be
  208. raised and the annotated text will be highlighted. The <strong>annotation
  209. types</strong> field allows the user to classify the annotation and change its
  210. type. Double-click on the text "annotation type" to see the list of types
  211. available. We'll describe later how users can also define their own annotation
  212. types. Finally, the <strong>Last modified</strong> field is updated
  213. automatically each time that an annotation is saved.</p>
  214.  
  215. <p>Below the header area is the <strong>annotation body area</strong>. It
  216. shows the current content, and it can be edited as if we were editing any
  217. other HTML document,. N.B., we don't support yet the use of images inside the
  218. body. Some of the features may not be ready in the initial release, such as
  219. the Structure view.</p>
  220.  
  221. <p>Saving an annotation is equivalent to saving any other document with Amaya.
  222. The user just needs to select the <strong>File/Save</strong> command (or use
  223. its equivalent shortcut or button menu). Local annotations are saved to the
  224. annotations directory and remote annotations are saved to the annotation post
  225. server where they are stored if the user has write access. To convert a local
  226. annotation into a shared one, the user needs to use the
  227. <strong>Annotations/Post annotation</strong> command and the annotation will
  228. be saved to the <strong>Post server</strong> as defined in the configuration
  229. menu. If this operation is succesful, the local annotation will be removed and
  230. further save operations will go directly to that annotation server. In the
  231. initial release, Amaya does not support an operation to save a copy of a
  232. remote annotation in the local annotations directory.</p>
  233.  
  234. <p>Some commands applied to the document in the <strong>Amaya Document
  235. window</strong> will be applied to annotation document in the
  236. <strong>Annotation window</strong>. For instance, the body of an annotation
  237. can be printed with <strong>File/Print</strong> command, or reloaded with
  238. <strong>File/Reload document</strong> command. (Note: some of these may not be
  239. implemented yet.)</p>
  240.  
  241. <h3 id="Deleting">Deleting an Annotation</h3>
  242.  
  243. <p>The <strong>Annotations/Delete annotation</strong> menu command lets you
  244. delete an annotation. You can invoke this command from an open annotation
  245. window. You can also delete an annotation from the annotated document by first
  246. selecting the annotation by doing a simple click on the annotation icon, and
  247. then calling this menu command.</p>
  248.  
  249. <h3 id="Loading">Loading and Presenting Annotations</h3>
  250.  
  251. <p>The <strong>Load annotations</strong> command tells amaya to load the
  252. annotations that are associated to the URL of the document that is being
  253. browsed in that window. Amaya will query the annotations servers, as set up in
  254. the <strong>Annotations/Configure</strong> dialogue, asking for any relevant
  255. annotation.</p>
  256.  
  257. <p>The annotations can also be loaded automatically whenever a new page is
  258. loaded by selecting the <strong>Autoload annotations</strong> checkbox in the
  259. <strong>Annotations/Configure</strong> dialogue.</p>
  260.  
  261. <p>Note that in this version of Amaya, querying an annotation server will
  262. return <em>all</em> the the annotations that are associated to to a document.
  263. In a future version, it may be possible to use a customized query menu to
  264. refine the query string that is sent to the servers.</p>
  265.  
  266. <p>The <strong>Annotations/Local filter</strong> menu allows a user to show or
  267. hide the annotation icons from the document window, for example, to
  268. concentrate on those that really interest him, or, to make it easier to read a
  269. heavily annotated document. The user can <strong>show</strong> or
  270. <strong>hide</strong> annotations by three types of metadata: by the name of
  271. the annotation's <strong>author</strong>, by the <strong>type</strong> of
  272. annotation, and by the <strong>annotation server</strong> name. To apply any
  273. of these filters, you need to click on the text box to select a given type of
  274. annotations, and then on the corresponding action button. The <strong>Show
  275. all</strong> and <strong>Hide all</strong> commands apply to all the
  276. annotations.A small and uncomfortable prefix charater shows the status of a
  277. given entry. This character can be either a space (' '), a star ('*') or a
  278. signet ('-') to say that tje annotations belonging to this given entrty are
  279. all visible, all hidden, or partially visible, respectively.</p>
  280.  
  281. <p>Note that the filter menus only show you the annotations it knows about at
  282. the moment of its invocation. If you add new annotations in the meantime,
  283. you'll need to destroy this menu and invoke it again to see them.</p>
  284.  
  285. <p>Note that for each annotation, the annotation user is shown by
  286. concatenating the author's name to the name of the annotation server where the
  287. annotation is stored, as shown in the following figure.</p>
  288.  
  289. <p></p>
  290.  
  291. <p style="text-align: center"><img src="../Icons/localfilter.png"
  292. alt="local filter dialog box" /></p>
  293.  
  294. <h3 id="Navigating">Navigating Annotations</h3>
  295.  
  296. <p>Annotations appear as links in the <strong>Link window</strong> whih can be
  297. activated by the <strong>Views/ Show links</strong> command. Annotations in
  298. this window are marked with the same pencil icon as the annotations in the
  299. document window. The <strong>Link window</strong> shows all the annotations,
  300. without taking into account whether they have been hidden with the
  301. <strong>Annotation Local Filter</strong> menu. As with the document window, a
  302. single-click on the annotation will select the annotated text in the document
  303. window and a double click will open the annotation. This is an example of how
  304. to navigate from one annotation link to another even if the annotation cannot
  305. be seen by the user because of disabilities or because of the characteristics
  306. of the used device.</p>
  307.  
  308. <p></p>
  309.  
  310. <p style="text-align: center"><img src="../Icons/linkwindow.png"
  311. alt="Link window shows annotations" /></p>
  312. </div>
  313.  
  314. <div id="Issues">
  315. <h3 id="Issues1">Issues with Annotations and Modified Documents</h3>
  316.  
  317. <p>If you are using annotations with live documents (documents whose contents
  318. can be modified), you may encounter two kinds of problems: <strong>orphan
  319. annotations</strong> and <strong>misleading annotations</strong>. Let's first
  320. describe a bit more in detail how Amaya attaches annotations to documents.</p>
  321.  
  322. <p>Amaya uses <strong><a
  323. href="http://www.w3.org/XML/Linking">XPointer</a></strong> to describe where
  324. an annotation should be attached to a document. XPointers are based in the
  325. structure of the document. To build an XPointer, for example for a selection,
  326. we start from the first point of the selection and walk backwards through the
  327. document's structure, until we find the root of the document. If an element
  328. has an ID attribute, we stop building the XPointer and we consider that the
  329. beginning of this XPointer is the element that has this ID attribute value.
  330. For example,. if you look at the HTML source for this document, you'll notice
  331. that this section (Issues with annotations...) is enclosed within a DIV
  332. element that has an ID attribute with the value "Issues". Here's an extract of
  333. the source code:</p>
  334. <pre>  <div id="Issues">
  335.   <h3>>Issues with ....</h3>>
  336.   <p>If you are using...</p>
  337.   <p>Amaya uses <strong>XPointer</strong>...</p>
  338.   ...
  339.   </div></pre>
  340.  
  341. <p>And here's the XPointer that points to the second paragraph::</p>
  342.  
  343. <p style="text-align: center"><code>xpointer(id("Issues")/p[2])</code></p>
  344.  
  345. <p>The above XPointer points to the second <code>p</code> element, from the
  346. element parent having an ID attribute with value "Issues". (In order to select
  347. a whole paragraph, we put the cursor in the paragraph and pressed the Escape
  348. (Unix) or F2 (Windows) key). Note that the use of the ID attribute allows the
  349. document author to move this whole section elsewhere on the document, without
  350. needing to update the XPointer. The XPointer doesn't depend on the elements
  351. that precede this particular DIV element.</p>
  352.  
  353. <p>We say that an annotation becomes an <strong>orphan</strong> when it cannot
  354. be attached anymore to a document, that is, when the XPointer doesn't resolve
  355. anymore to any element in the strucutre. This happens when a document's
  356. structure is modified. For example, the above XPointer wouldn't resolve
  357. anymore if we destroyed the ID attribute "Issues". Amaya will warn you if it
  358. detects any orphan annotation while downloading a set of annotations from an
  359. annotation server. All orphan annotations are visible from the Links view and
  360. are associated with an icon that shows a question mark superimposed on the
  361. annotation pencil <img src="../Icons/annotorp.png"
  362. alt="Orphan annotation icon" />.</p>
  363.  
  364. <p>We say that an annotation is <strong>misleading</strong> when it points to
  365. a wrong piece of information. Coming back to our example, we can create a
  366. misleading annotation if we exchange the first and second paragraph. The
  367. XPointer will continue to point to the second paragraph, although we would
  368. have liked it to point now to the first paragraph. This problem is even more
  369. common when you annotate a portion of text that may change. In the first
  370. release, Amaya does not warn the user if an annotation is misleading. A future
  371. release may notify users of the potential for an annotation to be
  372. misleading.</p>
  373.  
  374. <p>How can you protect yourself?</p>
  375.  
  376. <p>If you're the author of a document, try to use the ID attribute in
  377. strategic places, for example, in the DIV elements. Amaya allows you to
  378. automatically associate or remove an ID attribute to/from a set of elements by
  379. means of the <strong>Special/Make Add/Remove ID</strong> menu command. In the
  380. above example, we could have avoided the problem of misleading annotations if
  381. we had added an ID attribute to the second paragraph:</p>
  382. <pre>  <p id="Amaya">Amaya uses...</p></pre>
  383.  
  384. <p>An XPointer that points to this paragraph is</p>
  385.  
  386. <p style="text-align: center"><code>xpointer(id("Amaya"))</code></p>
  387.  
  388. <p>Thus, the Xpointer will point to the same paragraph, regardless of its
  389. position in the document's structure.</p>
  390. </div>
  391.  
  392. <p align="right"><a href="MakeBook.html"><img alt="previous" border="0"
  393. src="../Icons/left.gif" /></a> <a href="Manual.html"><img alt="top" border="0"
  394. src="../Icons/up.gif" /></a> <a href="Configure.html"><img alt="next"
  395. border="0" src="../Icons/right.gif" /></a></p>
  396. <hr />
  397. </body>
  398. </html>
  399.