Version 10 (modified by 11 years ago) (diff) | ,
---|
Web-annotator/API interaction scenarios
Contents
- Authentication
- Visiting an annotated web page
- Viewing an individual annotation
- Annotation creation
- Editing an annotation body
- Managing readers and writers
- Managing annotations
- Notebooks
ToDo: (general): add example XML serializations of requests/responses to serve as basis for (modifications of) the schemata
Authentication
- User logs-in to annotation service, so the UID gets known by the server.
ToDo: Add to API the "who-am-I" service that allows the user to obtain his/her UID and list of notebooks(read and write), incl. their id's and rendering names.
Status: done, pls check https://trac.clarin.eu/wiki/DASISH/SpecificationDocument#Userrealm and https://trac.clarin.eu/wiki/DASISH/XSD%20and%20XML#RespondingGETapiuser
Visiting an annotated web page
- User: visits the page <...>.
- Client: requests the lists of annotations to which the user has "read" access.
- GET api/annotations?source=<...>&access=read
- Service: returns list of annotation id-s with the corresponding headlines, notebooks, owners, and target sources URI's;
ToDo: Olha: example XML +schema of the respond.
Status. Done, pls check https://trac.clarin.eu/wiki/DASISH/XSD%20and%20XML#RespondingGETapiannotationssourcehttp:en.wikipedia.orgwikiSagrada_FamC3ADliaaccessread
- Client: Resolving fragments (mapping) happens after the response. There are two internal lists for the client: the resolvable and unresolvable target.
Viewing an individual annotation
Resolvable target
- User: selects an annotation with "at least one resolvable" (debatable) target for reading.
- Client: retrieves the annotation
- GET api/annotations/<aid>
- Service: returns the annotation
ToDo: Olha: xml.
Status. Done, pls check https://trac.clarin.eu/wiki/DASISH/XSD%20and%20XML#RespondingGETapiannotationsAID02exampleusageforresolvabletargetsources.
Unresolvable target
- User: select an annotation with unresolvable targets for reading.
- Client: get annotation and its target sources
- GET api/annotations/<aid>
- GET api/annotations/<aid>/sources
- Client: get cached representations for target sources
- GET api/sources/<sid>/cached
- GET api/sources/<sid>/cached/<cid>
ToDo: Olha: examples XML+schema of the respond, for all 4 calls.
Status. Done, pls check https://trac.clarin.eu/wiki/DASISH/XSD%20and%20XML#RespondingGETapiannotationsAID01exampleusageforunresolvabletargetsources, https://trac.clarin.eu/wiki/DASISH/XSD%20and%20XML#RespondingGETapiannotationsAID01sourcesexampleusageforunresolvabletargetsources, https://trac.clarin.eu/wiki/DASISH/XSD%20and%20XML#RespondingGETapisourcesSID05cachedexampleusageforunresolvabletargetsources, https://trac.clarin.eu/wiki/DASISH/XSD%20and%20XML#RespondingGETapisourcesSID05cachedCID005Aexampleusageforunresolvabletargetsources.
Annotation creation
- User: creates a text note on a selected text.
- Client: sends the annotation to the server
- POST api/annotation (Olha, to do: input example XML+schema of the body, like in the example)
Status. Done, pls check https://trac.clarin.eu/wiki/DASISH/XSD%20and%20XML#RequestbodyforPOSTapiannotations.
- Service: responds with the annotation <aid>, with temp id-s replaced by the permanent ones, the full URI for the target sources, action:create cached representation.
- Client: sends cached representation
- POST/api/cources/<sid>/cached
- Service: store representation
Editing an annotation body
TODO
Managing readers and writers
Adding readers and writers
TODO
Removing readers and writers
TODO
Managing annotations
Deleting an entire annotation
TODO
Notebooks
Retrieving list of annotations in a notebook
TODO
Adding an annotation to a notebook
TODO