Split-brain Manifesting
Moving from IIIF Presentation v2 to v3
Kevin S. Clarke
<ksclarke@library.ucla.edu>
UCLA Library, Services Team
Our IIIF Presentation
Manifest Environment
1. Sinai
Palimpsests
2. Digital
Library
Images
3. Sinai
Manuscripts
4. Digital
Library
A / V
Mirador
Universal
Viewer
Fester
Fester Manifest Service
GET / PUT / DELETE
CSV
Importer
OpenAPI defined service
CSV
JSON
JSON
JSON
JSON
S3 Bucket
(POST)
Fester Manifest Event Routing
CSV
Importer
CSV
jiiify-presentation
v2
jiiify-presentation
v3
S3 Bucket
Jiiify-Presentation / Fester
-
Jiiify-Presentation handles the version 2 or 3 manifest / collection document reading and writing (and provides a programmatic model)
-
Aims to support the full v3 specification (though, currently, only supports part of v2)
-
-
Fester handles the mapping between CSV values and manifest (or collection document)
-
Aims to support just the parts of the v2 or v3 specs we use (with incremental additions)
-
Inflexible, Split-brain
Retrieval
S3 Bucket
Mirador
Universal
Viewer
Universal
Viewer
v3
v2
v2
Fester API Versioning
-
Versioning through URI path
- https://iiif.library.ucla.edu/3/ark%253A%252F21198%252Fzz0002nqg2/manifest
-
Versioning through query parameters
- https://iiif.library.ucla.edu/ark%253A%252F21198%252Fzz0002nqg2/manifest?v=3
-
Versioning through custom headers
- curl -H "Accepts-version: 3" https://iiif.library.ucla.edu/ark%253A%252F21198%252Fzz0002nqg2/manifest
-
Versioning through content negotation
- curl -H “Accept: application/json; version=3” https://iiif.library.ucla.edu/ark%253A%252F21198%252Fzz0002nqg2/manifest
Next Steps?
-
Deciding on a versioning scheme (or two)
- Implement URI Path versioning and Content Negotiation?
-
What is the non-versioned default?
- Latest or first implemented version?
-
How do we evolve from static v2 manifests?
- Migrate everything to a new preferred static version (v3)
- Support on demand transformations between versions?
- Use something less static as the stored representation?
Thank You!
-
What are you all doing with your manifests?
-
Links
- https://github.com/uclalibrary/fester
- https://github.com/ksclarke/jiiify-presentation
Kevin S. Clarke
<ksclarke@library.ucla.edu>
UCLA Library, Services Team
Split-brain Manifesting
By Kevin S. Clarke
Split-brain Manifesting
- 141