IE Annotation Support
This support primarily consists of a downloadable plugin for Internet Explorer that enables the reading and writing of course annotations in the context of Connexions.
Not installed
- If the plugin is not installed, there should be no difference. Annotations will be completely unavailable to IE users. Connexions pages (and all web pages for that matter) should display as usual. Note: we may in the future wish to prompt users to install the plugin on pages where annotations are available.
Download and installation
- The download should be in the form of a single executable file.
- Installation should be a step-by-step "wizard" process that walks the use through installing the plugin. It may prompt the user to install additional libraries (ie. MSXML) and must fail if the user declines. Installation may require administrator access
- The plugin should support IE 6 running on Win2K and WinXP.
- The plugin should be uninstallable and remove all traces (libraries, registry entries, folder, etc.) of itself. If an upgrade of MSXML was performed, it may leave that in place.
Viewing annotations
- When viewing pages that have no defined annotations[2] (pages outside Connexions, modules outside the context of a course[1], modules that have no annotations, etc.) there must be no effect on page display.
- On Connexions pages that have defined annotations (annotated modules in the context of a course), the plugin must insert annotation icons into the document at the beginning of the annotation range. The icons must correctly indicate the category of the specific annotation.
- When a user single clicks on an annotation icon, the plugin must display the body of the annotation in a new window (popup or dialog). The annotation view window must not be a full new browser window with menu and location bars.
- The annotation view window may or may not be modal
- The annotation view window should also display additional metadata regarding the annotation (eg. creator, date, language, etc.)
- The annotation view window must provide a button to close it (eg. OK, Cancel, or Close)
- When displaying read-only annotations[3], the annotation view window must not allow editing of the annotation body
- The annotation view window should allow users to select the annotation body text for copying
Creating annotations
- When viewing pages that have no defined writable annotation
server[4] (non-Connexions pages, or modules outside the context of a
course being edited) the
Annotate...command should not still appear in menus. If this is technically infeasible, the command must give an appropriate message about being unable to annotate. - When in the context of a course that is being edited (not in the published state), visiting the URL of any module in that course should display the module correctly with a writable annotation server set for the course. There may or may not be an immediately visible indicator of the writable annotation server.
- When displaying a page with a writable annotation server defined there must be an Annotate command (either menu or toolbar) for creating a new annotation of the selection.
- If the user issues the Annotate command without selecting anything, the plugin must issue an appropriate error message.
- The Annotate command must display a new window (popup or dialog) in which to edit the new annotation. The annotation edit window must not be a full new browser window with menu and location bars.
- The annotation edit window may or may not be modal
- If the annotation edit window is not modal, the user must be able to perform normal browser activities (select different text, navigate to other pages) without breaking the annotation being edited.
- The annotation edit window should also allow the user to edit additional metadata regarding the annotation (eg. creator, language, category, etc.)
- The annotation edit window must provide a Cancel button to cancel the creation of the new annotation
- The annotation edit window must provide a button (OK, Post, Save, etc.) that will post the annotation to the server.
Editing annotations
- When viewing pages with a writable annotation server that have annotations already defined, clicking the annotation icon must bring up the annotation edit window rather than the annotation view window
- The annotation edit window must have a Delete button to delete the annotation
[1] For the pusposes of Connexions, you are defined to be "in the
context of a course" when you have a cookie named courseURL set for
that Connexions server. This may happen in one of two ways: either
you visit the URL of a published course (having the form
http://cnx.rice.edu/content/colXXXX/....) or you visit the course
composer page for a course checked out (or newly created) in a
workspace. These URLs have for form
(http://cnx.rice.edu/YYYY/colXXX/collection_composer). You will
remain in the context of the course until you either 1) enter the
context of a different course 2) delete the courseURL cookie, or 3)
close your browser.
[2] For the purposes of this plugin, a page is defined as having
annotations if there appears a tag whose rel attribute
contains the string annotea' and whose href attribute defines the
URL of an annotation server that returns one or more annotations for
the page when accessed using the annotea protocol defined at
http://www.w3.org/2001/Annotea/User/Protocol. The page may also have
javascript required to launch the plugin.
[3] If the tag's rel attribute contains the string read,
the annotations on that page are considered to be read-only
[4] If the tag's rel attribute contains the string write,
the annotation server is writable.
