Der Cache-Server hat vorerst nur die Aufgabe, alle Annotationen zu einer Seite zentral zu sammeln. Damit vermeidet man die erneuten Anfragen bei allen Annotations-Servern, wenn man auf einen Annotations-Hinweis klickt, um die kompletten Informationen anzusehen. Ein anderer Ansatz wäre, die Informationen zu den Annotationen im Proxy oder gleich auf dem Client zu lagern.
Bisher ,,überschreiben`` aber die Annotationen eines neu angeforderten Dokumentes die des vorherigen. Außerdem existiert noch kein ,,Alterungmechanismus`` (Expiration) und der Cache-Server stellt auch nicht fest, ob sich eine Annotation in der Zwischenzeit verändert hat.
Annotationen werden in der folgenden Form an den Server geschickt. Auch hier ist die Reihenfolge der Attribute wieder beliebig.
SPMquot
CACHE URL: <URL>; Author: <Autor>; Date: <Datum>;SPMquot
Pos: <Textstelle>; Annotation: <Text>;SPMquot
Name: <Annotations ID>; refersTo: <Bezug ID>;endquoteWegen der relativ einfachen Annotationsstruktur muß der Cache-Server in den an ihn geschickten Annotationen zu einer Textstelle nur die Teilbäume extrahieren, diese sortiert abspeichern und der Visualisierungs-Komponente auf Anfrage liefern.
Für Annotationen, die sich auf mehrere Annotationen beziehen können sollen, deren Struktur also einen allgemeinen gerichteten Graphen ergibt, müßte der Cache-Server dementsprechend die Bezirke (maximal zusammenhängende Graphen) finden.
Die Anfrage
SPMquot
RETRIEVE for: <URL>; Name: <Annotations ID>;endquoteliefert die gewünschte und, so vorhanden, alle ,,dranhängenden`` Annotationen. Die Annotation hat wieder die Form
SPMquot
ANNO Author: <Autor>; Date: <Datum>; Pos: <Textstelle>;SPMquot
Annotation: <Text>; Name: <Annotations ID>;SPMquot
refersTo: <Bezug ID>;endquoteWegen des einfachen Protokolls, das nur einzeilige Strings vorsieht und somit immer nur eine Annotation beinhaltet, schickt der Cache-Server die Annotationen einzeln. Ein Client muß diese solange anfordern, bis der Server mit ,,NONE`` antwortet.
SPMquot
ANNO Author: <Autor>; Date: <Datum>; Pos: <Textstelle>;SPMquot
Annotation: <Text>; Name: <Annotations ID>;SPMquot
refersTo: <Bezug ID>;endquoteWegen des einfachen Protokolls, das nur einzeilige Strings vorsieht und somit immer nur eine Annotation beinhaltet, schickt der Cache-Server die Annotationen einzeln. Ein Client muß diese solange anfordern, bis der Server mit ,,NONE`` antwortet.
SPMquot
RETRIEVE for: <URL>; Name: <Annotations ID>;endquoteliefert die gewünschte und, so vorhanden, alle ,,dranhängenden`` Annotationen. Die Annotation hat wieder die Form
SPMquot
ANNO Author: <Autor>; Date: <Datum>; Pos: <Textstelle>;SPMquot
Annotation: <Text>; Name: <Annotations ID>;SPMquot
refersTo: <Bezug ID>;endquoteWegen des einfachen Protokolls, das nur einzeilige Strings vorsieht und somit immer nur eine Annotation beinhaltet, schickt der Cache-Server die Annotationen einzeln. Ein Client muß diese solange anfordern, bis der Server mit ,,NONE`` antwortet.
SPMquot
ANNO Author: <Autor>; Date: <Datum>; Pos: <Textstelle>;SPMquot
Annotation: <Text>; Name: <Annotations ID>;SPMquot
refersTo: <Bezug ID>;endquoteWegen des einfachen Protokolls, das nur einzeilige Strings vorsieht und somit immer nur eine Annotation beinhaltet, schickt der Cache-Server die Annotationen einzeln. Ein Client muß diese solange anfordern, bis der Server mit ,,NONE`` antwortet.
SPMquot
CACHE URL: <URL>; Author: <Autor>; Date: <Datum>;
SPMquot
Pos: <Textstelle>; Annotation: <Text>;
SPMquot
Name: <Annotations ID>; refersTo: <Bezug ID>;endquote
Wegen der relativ einfachen Annotationsstruktur muß der Cache-Server in den an ihn geschickten Annotationen zu einer Textstelle nur die Teilbäume extrahieren, diese sortiert abspeichern und der Visualisierungs-Komponente auf Anfrage liefern.
Für Annotationen, die sich auf mehrere Annotationen beziehen können sollen, deren Struktur also einen allgemeinen gerichteten Graphen ergibt, müßte der Cache-Server dementsprechend die Bezirke (maximal zusammenhängende Graphen) finden.
Die Anfrage
SPMquot
RETRIEVE for: <URL>; Name: <Annotations ID>;endquoteliefert die gewünschte und, so vorhanden, alle ,,dranhängenden`` Annotationen. Die Annotation hat wieder die Form
SPMquot
ANNO Author: <Autor>; Date: <Datum>; Pos: <Textstelle>;SPMquot
Annotation: <Text>; Name: <Annotations ID>;SPMquot
refersTo: <Bezug ID>;endquoteWegen des einfachen Protokolls, das nur einzeilige Strings vorsieht und somit immer nur eine Annotation beinhaltet, schickt der Cache-Server die Annotationen einzeln. Ein Client muß diese solange anfordern, bis der Server mit ,,NONE`` antwortet.
SPMquot
ANNO Author: <Autor>; Date: <Datum>; Pos: <Textstelle>;SPMquot
Annotation: <Text>; Name: <Annotations ID>;SPMquot
refersTo: <Bezug ID>;endquoteWegen des einfachen Protokolls, das nur einzeilige Strings vorsieht und somit immer nur eine Annotation beinhaltet, schickt der Cache-Server die Annotationen einzeln. Ein Client muß diese solange anfordern, bis der Server mit ,,NONE`` antwortet.
SPMquot
RETRIEVE for: <URL>; Name: <Annotations ID>;endquote
liefert die gewünschte und, so vorhanden, alle ,,dranhängenden`` Annotationen. Die Annotation hat wieder die Form
SPMquot
ANNO Author: <Autor>; Date: <Datum>; Pos: <Textstelle>;SPMquot
Annotation: <Text>; Name: <Annotations ID>;SPMquot
refersTo: <Bezug ID>;endquoteWegen des einfachen Protokolls, das nur einzeilige Strings vorsieht und somit immer nur eine Annotation beinhaltet, schickt der Cache-Server die Annotationen einzeln. Ein Client muß diese solange anfordern, bis der Server mit ,,NONE`` antwortet.
SPMquot
ANNO Author: <Autor>; Date: <Datum>; Pos: <Textstelle>;
SPMquot
Annotation: <Text>; Name: <Annotations ID>;
SPMquot
refersTo: <Bezug ID>;endquote
Wegen des einfachen Protokolls, das nur einzeilige Strings vorsieht und somit immer nur eine Annotation beinhaltet, schickt der Cache-Server die Annotationen einzeln. Ein Client muß diese solange anfordern, bis der Server mit ,,NONE`` antwortet.