A similar argument could be made for including "group annotations" on the
server side, while merging in "personal annotations" on the client side. The
key is that the original document can be augmented or enhanced as it is
retrieved.(While experimenting with cascading caches using an NCSA httpd, we
found it quite useful to include "no-cache" links along with the age of the
document in the cache as a quick means of seeing where a document ripened the
longest.)
Enhancing the granularity/functionality of fragment id's will be a useful
addition for search interfaces in general, regardless of where the
functionality is actually implemented. Since bandwidth is free and
compute cycles are cheap, the processing could migrate to the server or
to the client depending on the load on either end of the request.