Closed lisestork closed 3 years ago
Tutorial, with IIIF and json (textual annotations, annotation lists). JSON-LD? Annotating with semantics? They mention linking to things (e.g. wikipedia) and using controlled vocabularies to tag annotations.
I think, we should adhere to the IIIF spec including the architecture. Moreover, the IIIF context includes OA, DC etc. For the simplest example, see the Manifest (v3) of an image. Each file describes how to present a single object such as a book etc. Furthermore, the Annotorius/OpenSeadragon plugin (client-side) now includes support for W3C Web Annotations.
a mirador example where an image has an sc:AnnotationList for both transcriptions and named entities. They label the lists with "label": "Transcription annotations", and "label": "Named Entity Extraction Annotations").
Example of transcription and named entity list of annotations:
transcriptions, named entities
Example entity annotation (does not seem to use body?):
{
"@id": "https://elucidate.dlcs-ida.org/annotation/w3c/2e76a8d10159fca064c265102c13dfb2/1cc203d8-19ee-4ad3-ac08-3b3537e9569c",
"@type": "oa:Annotation",
"dcterms:created": {
"@type": "xsd:dateTime",
"@value": "2018-01-05T03:57:54.393Z"
},
"resource": [
{
"@type": "oa:Tag",
"format": "text/plain",
"as:generator": {
"@id": "https://omeka.dlcs-ida.org/s/ida/montague/open"
},
"chars": "October,"
},
{
"format": "application/html",
"as:generator": {
"@id": "https://omeka.dlcs-ida.org/s/ida/montague/open/nlp/"
},
"chars": "<a href=\"https://omeka.dlcs-ida.org/s/ida/page/topics/virtual:date/october%2c\">https://omeka.dlcs-ida.org/s/ida/page/topics/virtual:date/october%2c</a>"
},
{
"as:generator": {
"@id": "https://omeka.dlcs-ida.org/s/ida/montague/open"
},
"@type": "oa:Tag",
"chars": "entity:DATE"
}
],
"on": "https://presley.dlcs-ida.org/iiif/idatest01/_roll_M-1070_46_cvs-932-1132/canvas/c938#xywh=523,1575,166,52",
"motivation": "oa:tagging"
},
In fact, the Annotation
examples above do not have target
(mandatory) nor body
. Instead, check this MANIFEST (v3) in Mirador.
$ curl https://iiif.io/api/cookbook/recipe/0001-mvm-image/manifest.json
{
"@context": "http://iiif.io/api/presentation/3/context.json",
"id": "https://iiif.io/api/cookbook/recipe/0001-mvm-image/manifest.json",
"type": "Manifest",
"label": {
"en": [
"Image 1"
]
},
"items": [
{
"id": "https://iiif.io/api/cookbook/recipe/0001-mvm-image/canvas/p1",
"type": "Canvas",
"height": 1800,
"width": 1200,
"items": [
{
"id": "https://iiif.io/api/cookbook/recipe/0001-mvm-image/page/p1/1",
"type": "AnnotationPage",
"items": [
{
"id": "https://iiif.io/api/cookbook/recipe/0001-mvm-image/annotation/p0001-image",
"type": "Annotation",
"motivation": "painting",
"body": {
"id": "http://iiif.io/api/presentation/2.1/example/fixtures/resources/page1-full.png",
"type": "Image",
"format": "image/png",
"height": 1800,
"width": 1200
},
"target": "https://iiif.io/api/cookbook/recipe/0001-mvm-image/canvas/p1"
}
]
}
]
}
]
}
I took the liberty to rename this issue given the rage of topics discussed so far.
See https://github.com/IIIF/awesome-iiif.