IIIF
Leipzig University Library (UBL) provides access to its high-quality digitised material according to the API standards of the International Image Interoperability Framework (IIIF). This is a modern standard based on JSON-LD.
The IIIF APIs are particularly well suited for integrating UBL image content directly into your own websites, applications and apps without having to copy or edit the images. With IIIF, an interface is available that allows you to dynamically access UBL’s rich data collections from your own applications.
Following the specifications of IIIF, the UBL’s holdings are hierarchically divided into collections, bibliographic units are represented by manifests. Both are done according to the specifications of the IIIF Presentation API. From the manifests, access to the actual digitized material is possible according to the specifications of the IIIF Image API.
At this time the UBL supports version 2 of the IIIF API standards. For a description of all functions of the APIs please read the descriptions on https://iiif.io
Collections
You can access UBL’s data sets via the collections on the top level:
https://iiif.ub.uni-leipzig.de/static/collections/toplevel.json
{ "@context" : "http://iiif.io/api/presentation/2/context.json", "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/toplevel.json", "@type" : "sc:Collection", "label" : "IIIF Collection for Leipzig University Library", "description" : "Collection for all IIIF manifests which are produced by the Leipzig University Library.", "collections" : [ { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/Drucke16/collection.json", "@type" : "sc:Collection", "label" : "Drucke des 16. Jahrhunderts", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/LeipzigerVerlage/collection.json", "@type" : "sc:Collection", "label" : "Leipziger Verlage", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/Drucke17/collection.json", "@type" : "sc:Collection", "label" : "Drucke des 17. Jahrhunderts", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/Buchhandschriften/collection.json", "@type" : "sc:Collection", "label" : "Buchhandschriften", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/MittelalterHandschriften/collection.json", "@type" : "sc:Collection", "label" : "Abendländische mittelalterliche Handschriften", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/NachlassWustmann/collection.json", "@type" : "sc:Collection", "label" : "Nachlass Wustmann - Autographensammlung Wustmann [NL 297/4]", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/Drucke15/collection.json", "@type" : "sc:Collection", "label" : "Drucke des 15. Jahrhunderts", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/Drucke19/collection.json", "@type" : "sc:Collection", "label" : "Drucke des 19. Jahrhunderts", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/GriechischeHandschriften/collection.json", "@type" : "sc:Collection", "label" : "Griechische Handschriften", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/Drucke20/collection.json", "@type" : "sc:Collection", "label" : "Drucke des 20. Jahrhunderts", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/AbendNeuzeitHandschriften/collection.json", "@type" : "sc:Collection", "label" : "Abendländische neuzeitliche Handschriften", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/Drucke18/collection.json", "@type" : "sc:Collection", "label" : "Drucke des 18. Jahrhunderts", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }, { "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/NeuzeitHandschriften/collection.json", "@type" : "sc:Collection", "label" : "Neuzeitliche Handschriften", "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } } ], "attribution" : "Provided by Leipzig University Library", "logo" : { "@id" : "https://iiif.ub.uni-leipzig.de/ubl-logo.png", "format" : "image/png" } }
Subordinate collections are linked in JSON and can be tracked :
https://iiif.ub.uni-leipzig.de/static/collections/Buchhandschriften/collection.json
{ "@context" : "http://iiif.io/api/presentation/2/context.json", "@id" : "https://iiif.ub.uni-leipzig.de/static/collections/Buchhandschriften/collection.json", "@type" : "sc:Collection", "label" : "Buchhandschriften", "manifests" : [ { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000003244/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Fragm. lat. 53" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000003909/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Fragm. lat. 424" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000004134/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Ms 671" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000004357/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Ms 1529" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000003895/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Fragm. lat. 400" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000003630/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Fragm. lat. 335" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000004473/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Fragm. Civ. Lips. 1" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000003163/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Fragm. lat. 21" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000002958/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Ms 96" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000005430/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Rep. II 120 (Leihgabe Leipziger Stadtbibliothek)" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000003262/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Fragm. lat. 56" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000004611/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Ms 1311" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000004626/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Ms 1574" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000001780/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Ms 150" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000004574/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Ms 1313" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000003670/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Fragm. lat. 339" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000004470/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Ms 1033" }, { "@type" : "sc:Manifest", "@id" : "https://iiif.ub.uni-leipzig.de/0000004604/manifest.json", "label" : "Leipzig, Universitätsbibliothek Leipzig, Ms 412" }]}
Manifests
Collections at the lowest level refer to the manifests of the bibliographic units assigned to them. These can also be retrieved via HTTPS.
https://iiif.ub.uni-leipzig.de/0000004604/manifest.json
Images
The manifests contain references to the interfaces of the IIIF Image API:
https://iiif.ub.uni-leipzig.de/iiif/j2k/0000/0046/0000004604/00000084.jpx
The IIIF Image API is ideal for integrating digital image content directly into other applications. Nearly all digitized material of the UBL is made available under open licenses and can thus be used in scientific, artistic and also commercial projects.
By appending the string “info.json” the information about the respective digitised material can be obtained according to the IIIF Image API.
https://iiif.ub.uni-leipzig.de/iiif/j2k/0000/0046/0000004604/00000084.jpx/info.json
{ "@context" : "http://iiif.io/api/image/2/context.json", "@id" : "https://iiif.ub.uni-leipzig.de/fcgi-bin/iipsrv.fcgi?iiif=/j2k/0000/0046/0000004604/00000084.jpx", "protocol" : "http://iiif.io/api/image", "width" : 3840, "height" : 5760, "tiles" : [ { "width" : 256, "height" : 256, "scaleFactors" : [ 1, 2, 4, 8, 16, 32 ] } ], "profile" : [ "http://iiif.io/api/image/2/level1.json", { "formats" : [ "jpg" ], "qualities" : [ "native","color","gray" ], "supports" : ["regionByPct","sizeByForcedWh","sizeByWh","sizeAboveFull","rotationBy90s","mirroring","gray"] } ] }
According to the API specification, the actual image data can now be accessed. The whole image in maximum resolution and quality can be obtained by appending the string /full/full/0/default.jpeg:
https://iiif.ub.uni-leipzig.de/iiif/j2k/0000/0046/0000004604/00000084.jpx/full/full/0/default.jpg
However, the image data can also be delivered scaled by the server. Here is an example, scaled to 300 pixels height.
https://iiif.ub.uni-leipzig.de/iiif/j2k/0000/0046/0000004604/00000084.jpx/full/,300/0/default.jpg
Instead of the complete image, the IIIF server can also provide image details. Here for example an image section with coordinates x=1050, y=500, w=900, h=900, scaled to 200 pixels width.
The image section can also be displayed in rotated form (90 degrees clockwise).
And deliverd in grayscale.
More detailed information about the IIIF APIs can be found on the website https://iiif.io.
If you have any questions about the use of our APIs or if you would like to implement IIIF APIs yourself, please contact us.
Further information
We have summarized our offers to end users on the basis of the IIIF APIs in a separate article.
Much more information about the IIIF API standards can be found on the website https://iiif.io
A list of exemplary applications, frameworks and the like is maintained here: https://github.com/IIIF/awesome-iiif
A selection of other IIIF Collections can be found here: https://github.com/ryanfb/iiif-universe/blob/gh-pages/iiif-universe.json