I have made a number of improvements to the web annotation code during the month of May (follow the link for a current screenshot). Since these are increasingly integrated with Moodle, I do not intend to update the static example for the forseeable future.
Changes include a number of user interface improvements, such as more convenient buttons and automatic display of all annotations for a discussion. I experimented with a number of interfaces for creating new annotations, including a pop-up right-click menu and a shifting insertion caret, but settled on a clickable margin as the most practical user-friendly solution. Finally, I have added experimental syndication support, so that users can subscribe to a discussion and be notified when annotations are added or modified. This is only a trial: for it to be useful, it would also require the ability for users to view each others’ annotations.
Many of the most important changes are technical, and are not apparent in the interface. Though the annotation system is necessarily embedded in Moodle, I want to make it easy to take the code and use it elsewhere. To this end, I made a number of architectural changes. For a start, I moved to a REST architecture and adopted nicer URLs, both of which should make the system easier to understand and integrate. I have also switched to using Atom as an intermediate data format. There has been discussion on the Web lately about uses of RSS and Atom for representing metadata annotation seems like an ideal use. This has the added benefit that a whole class of aggregation software is capable of reading the annotation data. However, because the Atom specification has not yet been finalized, I have implemented RSS 2.0 support for experimentation in the interim.