From 07e1df4f40802abac4515f48fd305ac30ea8767f Mon Sep 17 00:00:00 2001 From: giacomounivr Date: Fri, 2 Aug 2024 16:57:03 +0200 Subject: [PATCH 1/7] First draft --- _includes/links.md | 2 + index.md | 1 + .../annotation.json | 14 +++ .../0485-contentstate-canvas-region/index.md | 96 +++++++++++++++++++ 4 files changed, 113 insertions(+) create mode 100644 recipe/0485-contentstate-canvas-region/annotation.json create mode 100644 recipe/0485-contentstate-canvas-region/index.md diff --git a/_includes/links.md b/_includes/links.md index c609ac312..ae70a9668 100644 --- a/_includes/links.md +++ b/_includes/links.md @@ -72,6 +72,8 @@ [0466]: {{ site.cookbook_url | absolute_url }}/recipe/0466-link-for-loading-manifest/ "Loading a manifest with a viewer using a link" +[0485]: {{ site.cookbook_url | absolute_url }}/recipe/0485-contentstate-canvas-region/ "Open a specific region of a canvas in a viewer" + [0434]: {{ site.cookbook_url | absolute_url }}/recipe/0434-choice-av/ "Multiple Choice of Audio Formats in a Single View (Canvas)" [cookbook-process]: {{site.cookbook_url | absolute_url }}/recipe diff --git a/index.md b/index.md index 327c8e848..7660e4acb 100644 --- a/index.md +++ b/index.md @@ -139,6 +139,7 @@ _(leading on to segmentation examples later)_ Recipes using [Content State API](https://iiif.io/api/content-state/1.0/) * [Loading a manifest with a viewer using a link][0466] +* [Open a specific region of a canvas in a viewer][0485] ## Technical diff --git a/recipe/0485-contentstate-canvas-region/annotation.json b/recipe/0485-contentstate-canvas-region/annotation.json new file mode 100644 index 000000000..f0e75c0bc --- /dev/null +++ b/recipe/0485-contentstate-canvas-region/annotation.json @@ -0,0 +1,14 @@ +{ + "@context": "http://iiif.io/api/presentation/3/context.json", + "id": "https://example.org/import/1", + "type": "Annotation", + "motivation": ["contentState"], + "target": { + "id": "https://iiif.io/api/cookbook/recipe/0009-book-1/canvas/p2#xywh=1528,3024,344,408", + "type": "Canvas", + "partOf": [{ + "id": "https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json", + "type": "Manifest" + }] + } + } \ No newline at end of file diff --git a/recipe/0485-contentstate-canvas-region/index.md b/recipe/0485-contentstate-canvas-region/index.md new file mode 100644 index 000000000..1e60c9a6f --- /dev/null +++ b/recipe/0485-contentstate-canvas-region/index.md @@ -0,0 +1,96 @@ +--- +title: Open a specific region of a canvas in a viewer +id: 485 +layout: recipe +tags: [annotation] +summary: "Allows users to use content state API to open a specific region of a canvas by means of supported viewers." +viewers: + - Mirador + - Clover +topic: + - content-state +--- + +## Use Case + +I want to share a link to highlight a detail in a specific region of an image. I want to share a portion of a digitized manuscript text allowing the user an easy access to the rest of the manuscript. + +Institutions might want to use this recipe for sharing portions of their object through social media allowing a direct link to the viewer for improving the users interaction with the digitized content. A scholar who finds a relevant passage on a manuscript might want to share the precise location with other colleagues, allowing them to check the original source. + +## Implementation Notes + +To implement this feature we must create a request to an entry point of a viewer instance with the necessary information for the viewer to open the Manifest, retrive the Canvas and set the viewport to the desired region. + +[Image API](https://iiif.io/api/image/3.0/#41-region) allows users to share a specific region of an image, however, the context from which the region is extracted is not easily accessible. Instead, sharing a link to a open the specific region with a viewer allows the users to explore other part of the image or related content and metadata present in the Manifest. [link to other recipe] + +This request can be implemented in a standardized manner using the [IIIF Content State API](https://iiif.io/api/content-state), providing the data as values of the `iiif-content` query string parameter as explained in the [API section](https://iiif.io/api/content-state/1.0/#initialization-mechanisms-link). + +We can use the [Web Annotation Data Model](https://www.w3.org/TR/annotation-model/) to encode the information necessary, as shown in [A Region of a Canvas in a Manifest](https://iiif.io/api/content-state/1.0/#51-a-region-of-a-canvas-in-a-manifest) section of the standard. + +However, before passing the data as a query parameter we must encode it as explained in the https://iiif.io/api/content-state/1.0/#6-content-state-encoding. + + +## Example +In this example we want to highlight a portion of an image contained in a book. + +We will use the following manifest shown in the Simple Manifest -Book recipe which is available at the following link: [https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json](https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json) + +We want to open the viewport to a specific region of a canvas using a viewer available at the following page https://example.org/viewer. + +First we create an Annotation: + +``` +{ + "@context": "http://iiif.io/api/presentation/3/context.json", + "id": "https://example.org/import/1", + "type": "Annotation", + "motivation": ["contentState"], + "target": { + "id": "https://iiif.io/api/cookbook/recipe/0009-book-1/canvas/p2#xywh=1528,3024,344,408", + "type": "Canvas", + "partOf": [{ + "id": "https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json", + "type": "Manifest" + }] + } +} +``` + +We can create an Annotation with `motivation` set to `contentState` and a target `type` set to Canvas the `id` of the target will contain a fragment selector with the coordinates of the canvas we want to share, and a `partOf` element containing the `id` of the Manifest containing the Canvas. + +We can now use one of the methods listed in the [examples of content state encoding section](https://iiif.io/api/content-state/1.0/#63-examples-of-content-state-encoding) to generate a base64url string (**note: we removed new lines characters and white spaces for brevity before computing the base64url**). + +We can pass as the encoded value using the query parameter `iiif-content` of the viewer landing page the Manifest URL: +```html +https://example.org/viewer?iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE +``` + +Eventually, we can create an anchor tag with the link as the `href` attribute to use in the web page: + +```html +Link for visualizing the region of a Canvas using a viewer. +``` + +**Mirador**: +Link of the viewer: https://projectmirador.org/embed + +Complete link: https://projectmirador.org/embed/?iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE + +**Clover**: +https://samvera-labs.github.io/clover-iiif/docs/viewer/demo?iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE + +**Glycerine** + +https://demo.viewer.glycerine.io/viewer?iiif-content=iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE + +## Related Recipes + +* [Simplest Manifest - Image][0001] shows the basic structure of a IIIF Manifest using presentation API 3.0. +* [A simple book][0009] shows the manifest structure. +* [Link for loading a manifest][0466] another example of content state API. + + + +{% include acronyms.md %} +{% include links.md %} + From 5387df845cf2d37bd9969135d46e8521eff2271c Mon Sep 17 00:00:00 2001 From: giacomounivr Date: Fri, 9 Aug 2024 13:45:49 +0200 Subject: [PATCH 2/7] post-cookbook meeting comments --- .../0485-contentstate-canvas-region/index.md | 51 ++++++++----------- 1 file changed, 22 insertions(+), 29 deletions(-) diff --git a/recipe/0485-contentstate-canvas-region/index.md b/recipe/0485-contentstate-canvas-region/index.md index 1e60c9a6f..06f5e885d 100644 --- a/recipe/0485-contentstate-canvas-region/index.md +++ b/recipe/0485-contentstate-canvas-region/index.md @@ -2,44 +2,45 @@ title: Open a specific region of a canvas in a viewer id: 485 layout: recipe -tags: [annotation] +tags: [annotation, content-state] summary: "Allows users to use content state API to open a specific region of a canvas by means of supported viewers." viewers: - - Mirador - - Clover topic: - content-state --- ## Use Case -I want to share a link to highlight a detail in a specific region of an image. I want to share a portion of a digitized manuscript text allowing the user an easy access to the rest of the manuscript. +I want to share a link to highlight a detail in a specific region of an image. I want to share a portion of a digitized manuscript text, allowing the user easy access to the rest of the manuscript. -Institutions might want to use this recipe for sharing portions of their object through social media allowing a direct link to the viewer for improving the users interaction with the digitized content. A scholar who finds a relevant passage on a manuscript might want to share the precise location with other colleagues, allowing them to check the original source. +Institutions might want to use this recipe to share portions of their object through social media, allowing a direct link to the viewer to improve the user's interaction with the digitized content. A scholar who finds a relevant passage in a manuscript might want to share the precise location with other colleagues, allowing them to check the original source. ## Implementation Notes -To implement this feature we must create a request to an entry point of a viewer instance with the necessary information for the viewer to open the Manifest, retrive the Canvas and set the viewport to the desired region. +To implement this feature, we must create a request to an entry point of a viewer instance with the necessary information for the viewer to open the Manifest, retrieve the Canvas and set the viewport to the desired region. -[Image API](https://iiif.io/api/image/3.0/#41-region) allows users to share a specific region of an image, however, the context from which the region is extracted is not easily accessible. Instead, sharing a link to a open the specific region with a viewer allows the users to explore other part of the image or related content and metadata present in the Manifest. [link to other recipe] +[Image API](https://iiif.io/api/image/3.0/#41-region) allows users to share a specific region of an image. However, the context from which the region is extracted is not easily accessible. Instead, sharing a link to open the specific region with a viewer allows the users to explore another part of the image or related content and metadata in the Manifest. This request can be implemented in a standardized manner using the [IIIF Content State API](https://iiif.io/api/content-state), providing the data as values of the `iiif-content` query string parameter as explained in the [API section](https://iiif.io/api/content-state/1.0/#initialization-mechanisms-link). -We can use the [Web Annotation Data Model](https://www.w3.org/TR/annotation-model/) to encode the information necessary, as shown in [A Region of a Canvas in a Manifest](https://iiif.io/api/content-state/1.0/#51-a-region-of-a-canvas-in-a-manifest) section of the standard. +We can use the [Web Annotation Data Model](https://www.w3.org/TR/annotation-model/) to encode the information necessary, as shown in ["A Region of a Canvas in a Manifest"](https://iiif.io/api/content-state/1.0/#51-a-region-of-a-canvas-in-a-manifest) section of the standard. -However, before passing the data as a query parameter we must encode it as explained in the https://iiif.io/api/content-state/1.0/#6-content-state-encoding. +However, before passing the data as a query parameter, we must encode it as explained in the [content state encoding guidelines](https://iiif.io/api/content-state/1.0/#6-content-state-encoding). ## Example -In this example we want to highlight a portion of an image contained in a book. +In this example, we want to highlight a portion of an image contained in a book. -We will use the following manifest shown in the Simple Manifest -Book recipe which is available at the following link: [https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json](https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json) +We will use the following manifest shown in the Simple Manifest -Book recipe, which is available at the following link: [https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json](https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json) -We want to open the viewport to a specific region of a canvas using a viewer available at the following page https://example.org/viewer. +We want to open the viewport to a specific canvas region using a viewer available on the following page `https://example.org/viewer`. -First we create an Annotation: +First, we create an Annotation: -``` +{% include manifest_links.html manifest="annotation.json" %} + + +```json { "@context": "http://iiif.io/api/presentation/3/context.json", "id": "https://example.org/import/1", @@ -51,19 +52,17 @@ First we create an Annotation: "partOf": [{ "id": "https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json", "type": "Manifest" - }] - } + }] + } } ``` -We can create an Annotation with `motivation` set to `contentState` and a target `type` set to Canvas the `id` of the target will contain a fragment selector with the coordinates of the canvas we want to share, and a `partOf` element containing the `id` of the Manifest containing the Canvas. +We can create an Annotation with `motivation` set to `contentState` and a target `type` set to Canvas the `id` of the target will contain a fragment selector with the coordinates of the canvas we want to share, while the `partOf` element has the `id` of the Manifest containing the Canvas. -We can now use one of the methods listed in the [examples of content state encoding section](https://iiif.io/api/content-state/1.0/#63-examples-of-content-state-encoding) to generate a base64url string (**note: we removed new lines characters and white spaces for brevity before computing the base64url**). +We can now use one of the methods listed in the [examples of content state encoding section](https://iiif.io/api/content-state/1.0/#63-examples-of-content-state-encoding) to generate a base64url string (**note: for brevity, we removed new lines characters and white spaces before computing the base64url**). We can pass as the encoded value using the query parameter `iiif-content` of the viewer landing page the Manifest URL: -```html -https://example.org/viewer?iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE -``` +[https://example.org/viewer?iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE](https://example.org/) Eventually, we can create an anchor tag with the link as the `href` attribute to use in the web page: @@ -71,17 +70,11 @@ Eventually, we can create an anchor tag with the link as the `href` attribute to Link for visualizing the region of a Canvas using a viewer. ``` -**Mirador**: -Link of the viewer: https://projectmirador.org/embed - -Complete link: https://projectmirador.org/embed/?iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE +Examples of viewers implementing this recipe: -**Clover**: -https://samvera-labs.github.io/clover-iiif/docs/viewer/demo?iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE +None -**Glycerine** -https://demo.viewer.glycerine.io/viewer?iiif-content=iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE ## Related Recipes From 5be9532bf5c72632447092c36932c376b13d7f90 Mon Sep 17 00:00:00 2001 From: giacomounivr Date: Fri, 9 Aug 2024 14:18:04 +0200 Subject: [PATCH 3/7] change viewers compatibility system --- recipe/0485-contentstate-canvas-region/index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipe/0485-contentstate-canvas-region/index.md b/recipe/0485-contentstate-canvas-region/index.md index 06f5e885d..04db7f298 100644 --- a/recipe/0485-contentstate-canvas-region/index.md +++ b/recipe/0485-contentstate-canvas-region/index.md @@ -37,7 +37,7 @@ We want to open the viewport to a specific canvas region using a viewer availabl First, we create an Annotation: -{% include manifest_links.html manifest="annotation.json" %} + ```json @@ -70,9 +70,9 @@ Eventually, we can create an anchor tag with the link as the `href` attribute to Link for visualizing the region of a Canvas using a viewer. ``` -Examples of viewers implementing this recipe: +{% include manifest_links.html viewers="UV, Mirador, Curation" manifest="annotation.json" %} -None +{% include jsonviewer.html src="annotation.json" %} From 7732ceed75285a4a00cadbd9464547884623b7b7 Mon Sep 17 00:00:00 2001 From: Glen Robson Date: Tue, 13 Aug 2024 15:46:57 +0100 Subject: [PATCH 4/7] Adding Content State encode --- _includes/content-state-viewers.html | 39 +++++++++++++++++++ _includes/viewer_link.html | 2 +- .../0485-contentstate-canvas-region/index.md | 4 +- 3 files changed, 41 insertions(+), 4 deletions(-) create mode 100644 _includes/content-state-viewers.html diff --git a/_includes/content-state-viewers.html b/_includes/content-state-viewers.html new file mode 100644 index 000000000..7f66c23b4 --- /dev/null +++ b/_includes/content-state-viewers.html @@ -0,0 +1,39 @@ +{% if include.viewers %} +{% assign viewers = include.viewers | split: "," %} +{% else %} +{% assign viewers = page.viewers %} +{% endif %} +[JSON-LD]({{ include.iiif-content }}) {% for viewerTxt in viewers %}{% assign viewer = viewerTxt | strip %}| {% include viewer_link.html type=viewer manifest=include.iiif-content class="content-state" %}{% endfor %} + +{% if page.code %} +{% include code_links.html %} +{% endif %} + + \ No newline at end of file diff --git a/_includes/viewer_link.html b/_includes/viewer_link.html index a9615f41a..5bba00c55 100644 --- a/_includes/viewer_link.html +++ b/_includes/viewer_link.html @@ -59,4 +59,4 @@ {% else %} {% capture default_text %}Unknown Viewer type '{{ include.type}}'{% endcapture %} {% capture viewer_url %}{{manifest_url |strip}}{% endcapture %} -{% endif %}{{ include.text | default: default_text }} +{% endif %}{{ include.text | default: default_text }} diff --git a/recipe/0485-contentstate-canvas-region/index.md b/recipe/0485-contentstate-canvas-region/index.md index 04db7f298..c8ab902b7 100644 --- a/recipe/0485-contentstate-canvas-region/index.md +++ b/recipe/0485-contentstate-canvas-region/index.md @@ -70,12 +70,10 @@ Eventually, we can create an anchor tag with the link as the `href` attribute to Link for visualizing the region of a Canvas using a viewer. ``` -{% include manifest_links.html viewers="UV, Mirador, Curation" manifest="annotation.json" %} +{% include content-state-viewers.html iiif-content="annotation.json" viewers="UV, Mirador, Curation" %} {% include jsonviewer.html src="annotation.json" %} - - ## Related Recipes * [Simplest Manifest - Image][0001] shows the basic structure of a IIIF Manifest using presentation API 3.0. From 748220de5279126d503682fc17a30c27607080a5 Mon Sep 17 00:00:00 2001 From: Glen Robson Date: Tue, 13 Aug 2024 16:58:15 +0100 Subject: [PATCH 5/7] Adding clover removing UV and Curation Viewer --- recipe/0485-contentstate-canvas-region/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipe/0485-contentstate-canvas-region/index.md b/recipe/0485-contentstate-canvas-region/index.md index c8ab902b7..e646db76c 100644 --- a/recipe/0485-contentstate-canvas-region/index.md +++ b/recipe/0485-contentstate-canvas-region/index.md @@ -70,7 +70,7 @@ Eventually, we can create an anchor tag with the link as the `href` attribute to Link for visualizing the region of a Canvas using a viewer. ``` -{% include content-state-viewers.html iiif-content="annotation.json" viewers="UV, Mirador, Curation" %} +{% include content-state-viewers.html iiif-content="annotation.json" viewers="Mirador, Clover" %} {% include jsonviewer.html src="annotation.json" %} From 82077a03e988b9c577d601d73371425f9e435387 Mon Sep 17 00:00:00 2001 From: Glen Robson Date: Mon, 19 Aug 2024 15:12:49 +0100 Subject: [PATCH 6/7] Addressing editor comments --- .../0485-contentstate-canvas-region/index.md | 45 ++++++++++-------- .../0485-contentstate-canvas-region/page.jpg | Bin 0 -> 106829 bytes 2 files changed, 26 insertions(+), 19 deletions(-) create mode 100644 recipe/0485-contentstate-canvas-region/page.jpg diff --git a/recipe/0485-contentstate-canvas-region/index.md b/recipe/0485-contentstate-canvas-region/index.md index e646db76c..5fa6a5cfa 100644 --- a/recipe/0485-contentstate-canvas-region/index.md +++ b/recipe/0485-contentstate-canvas-region/index.md @@ -11,35 +11,24 @@ topic: ## Use Case -I want to share a link to highlight a detail in a specific region of an image. I want to share a portion of a digitized manuscript text, allowing the user easy access to the rest of the manuscript. +I want to share a link to highlight a detail in a specific region of an image to share a portion of a digitized manuscript text, allowing the user easy access to the rest of the manuscript. Institutions might want to use this recipe to share portions of their object through social media, allowing a direct link to the viewer to improve the user's interaction with the digitized content. A scholar who finds a relevant passage in a manuscript might want to share the precise location with other colleagues, allowing them to check the original source. ## Implementation Notes -To implement this feature, we must create a request to an entry point of a viewer instance with the necessary information for the viewer to open the Manifest, retrieve the Canvas and set the viewport to the desired region. - -[Image API](https://iiif.io/api/image/3.0/#41-region) allows users to share a specific region of an image. However, the context from which the region is extracted is not easily accessible. Instead, sharing a link to open the specific region with a viewer allows the users to explore another part of the image or related content and metadata in the Manifest. - This request can be implemented in a standardized manner using the [IIIF Content State API](https://iiif.io/api/content-state), providing the data as values of the `iiif-content` query string parameter as explained in the [API section](https://iiif.io/api/content-state/1.0/#initialization-mechanisms-link). We can use the [Web Annotation Data Model](https://www.w3.org/TR/annotation-model/) to encode the information necessary, as shown in ["A Region of a Canvas in a Manifest"](https://iiif.io/api/content-state/1.0/#51-a-region-of-a-canvas-in-a-manifest) section of the standard. However, before passing the data as a query parameter, we must encode it as explained in the [content state encoding guidelines](https://iiif.io/api/content-state/1.0/#6-content-state-encoding). - -## Example -In this example, we want to highlight a portion of an image contained in a book. - -We will use the following manifest shown in the Simple Manifest -Book recipe, which is available at the following link: [https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json](https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json) +In this example, we want to highlight a portion of an image contained in a book. We will use the following manifest shown in the Simple Manifest Book recipe, which is available at the following link: [https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json](https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json) We want to open the viewport to a specific canvas region using a viewer available on the following page `https://example.org/viewer`. First, we create an Annotation: - - - ```json { "@context": "http://iiif.io/api/presentation/3/context.json", @@ -59,18 +48,38 @@ First, we create an Annotation: We can create an Annotation with `motivation` set to `contentState` and a target `type` set to Canvas the `id` of the target will contain a fragment selector with the coordinates of the canvas we want to share, while the `partOf` element has the `id` of the Manifest containing the Canvas. -We can now use one of the methods listed in the [examples of content state encoding section](https://iiif.io/api/content-state/1.0/#63-examples-of-content-state-encoding) to generate a base64url string (**note: for brevity, we removed new lines characters and white spaces before computing the base64url**). +We can now use one of the methods listed in the [examples of content state encoding section](https://iiif.io/api/content-state/1.0/#63-examples-of-content-state-encoding) to generate a base64url string (**note: for brevity, we removed new lines characters and white spaces before computing the base64url**). -We can pass as the encoded value using the query parameter `iiif-content` of the viewer landing page the Manifest URL: +We can pass the encoded value, using the `iiif-content` query parameter of the viewer landing page: [https://example.org/viewer?iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE](https://example.org/) -Eventually, we can create an anchor tag with the link as the `href` attribute to use in the web page: +We can also create an anchor tag with the link as the `href` attribute for use in a web page: ```html Link for visualizing the region of a Canvas using a viewer. ``` -{% include content-state-viewers.html iiif-content="annotation.json" viewers="Mirador, Clover" %} +An alternive way of sharing a region of an image is to use the [Image API](https://iiif.io/api/image/3.0/#41-region). However, the context from which the region is extracted is not easily accessible. Instead, sharing a link to open the specific region with a viewer allows the users to explore another part of the image or related content and metadata in the Manifest. + +## Restrictions + +Note content state does not define how the viewer should bring the regsion of the canvas to the attention of the user. It only mentions: + +"This data structure can be used by clients to load the resource required, present a particular part of the resource to the user." https://iiif.io/api/content-state/1.0/#content-state + +Viewers may set the viewport to the region or highlight the region with an annotation. + +## Example + +In this example we are aiming to highlight the bug that is on the second page of the Book in receip []. The part of the image we are highlighting is as follows: + +![Image of a bug](https://iiif.io/api/image/3.0/example/reference/59d09e6773341f28ea166e9f3c1e674f-gallica_ark_12148_bpt6k1526005v_f19/1528,3024,344,408/pct:50/0/default.jpg) + +and this is located in the following region of the second image: + +![Location of the region to be highlighted.](page.jpg) + +{% include content-state-viewers.html iiif-content="annotation.json" viewers="" %} {% include jsonviewer.html src="annotation.json" %} @@ -80,8 +89,6 @@ Eventually, we can create an anchor tag with the link as the `href` attribute to * [A simple book][0009] shows the manifest structure. * [Link for loading a manifest][0466] another example of content state API. - - {% include acronyms.md %} {% include links.md %} diff --git a/recipe/0485-contentstate-canvas-region/page.jpg b/recipe/0485-contentstate-canvas-region/page.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d3846825f2b910ce1820a586691fa47628f3c4a8 GIT binary patch literal 106829 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 z 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Т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 z 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 z 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

4M)+H%Po>@K{tLB9 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

xDJ$Y^)b)#zlBd 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 Hd(8jY;C4b` literal 0 HcmV?d00001 From 8650db6aa99e58c9e58601911936a4def75e3db3 Mon Sep 17 00:00:00 2001 From: giacomounivr Date: Fri, 27 Sep 2024 17:02:50 +0200 Subject: [PATCH 7/7] Post TRC corrections --- .../0485-contentstate-canvas-region/index.md | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/recipe/0485-contentstate-canvas-region/index.md b/recipe/0485-contentstate-canvas-region/index.md index 5fa6a5cfa..06b0ba56e 100644 --- a/recipe/0485-contentstate-canvas-region/index.md +++ b/recipe/0485-contentstate-canvas-region/index.md @@ -1,9 +1,9 @@ --- -title: Open a specific region of a canvas in a viewer +title: Open a specific region of a Canvas in a viewer id: 485 layout: recipe tags: [annotation, content-state] -summary: "Allows users to use content state API to open a specific region of a canvas by means of supported viewers." +summary: "Allows users to use Content State API to open a specific region of a Canvas by means of supported viewers." viewers: topic: - content-state @@ -21,11 +21,11 @@ This request can be implemented in a standardized manner using the [IIIF Content We can use the [Web Annotation Data Model](https://www.w3.org/TR/annotation-model/) to encode the information necessary, as shown in ["A Region of a Canvas in a Manifest"](https://iiif.io/api/content-state/1.0/#51-a-region-of-a-canvas-in-a-manifest) section of the standard. -However, before passing the data as a query parameter, we must encode it as explained in the [content state encoding guidelines](https://iiif.io/api/content-state/1.0/#6-content-state-encoding). +However, before passing the data as a query parameter, we must encode it as explained in the [Content State encoding guidelines](https://iiif.io/api/content-state/1.0/#6-content-state-encoding). In this example, we want to highlight a portion of an image contained in a book. We will use the following manifest shown in the Simple Manifest Book recipe, which is available at the following link: [https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json](https://iiif.io/api/cookbook/recipe/0009-book-1/manifest.json) -We want to open the viewport to a specific canvas region using a viewer available on the following page `https://example.org/viewer`. +We want to open the viewport to a specific Canvas region using a viewer available on the following page `https://example.org/viewer`. First, we create an Annotation: @@ -46,9 +46,9 @@ First, we create an Annotation: } ``` -We can create an Annotation with `motivation` set to `contentState` and a target `type` set to Canvas the `id` of the target will contain a fragment selector with the coordinates of the canvas we want to share, while the `partOf` element has the `id` of the Manifest containing the Canvas. +We can create an Annotation with `motivation` set to `contentState` and a target `type` set to Canvas. The `id` of the target will contain a fragment selector (`#xywh=1528,3024,344,408`) with the coordinates of the Canvas we want to share, while the `partOf` element has the `id` of the Manifest containing the Canvas. -We can now use one of the methods listed in the [examples of content state encoding section](https://iiif.io/api/content-state/1.0/#63-examples-of-content-state-encoding) to generate a base64url string (**note: for brevity, we removed new lines characters and white spaces before computing the base64url**). +We can now use one of the methods listed in the [examples of Content State encoding section](https://iiif.io/api/content-state/1.0/#63-examples-of-content-state-encoding) to generate a base64url string (**note: for brevity, we removed new line characters and white space before computing the base64url**). We can pass the encoded value, using the `iiif-content` query parameter of the viewer landing page: [https://example.org/viewer?iiif-content=JTdCJTIyJTQwY29udGV4dCUyMiUzQSUyMmh0dHAlM0ElMkYlMkZpaWlmLmlvJTJGYXBpJTJGcHJlc2VudGF0aW9uJTJGMyUyRmNvbnRleHQuanNvbiUyMiUyQyUyMmlkJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZleGFtcGxlLm9yZyUyRmltcG9ydCUyRjElMjIlMkMlMjJ0eXBlJTIyJTNBJTIyQW5ub3RhdGlvbiUyMiUyQyUyMm1vdGl2YXRpb24lMjIlM0ElNUIlMjJjb250ZW50U3RhdGUlMjIlNUQlMkMlMjJ0YXJnZXQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZjYW52YXMlMkZwMiUyM3h5d2glM0QxNTI4JTJDMzAyNCUyQzM0NCUyQzQwOCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJDYW52YXMlMjIlMkMlMjJwYXJ0T2YlMjIlM0ElNUIlN0IlMjJpZCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGaWlpZi5pbyUyRmFwaSUyRmNvb2tib29rJTJGcmVjaXBlJTJGMDAwOS1ib29rLTElMkZtYW5pZmVzdC5qc29uJTIyJTJDJTIydHlwZSUyMiUzQSUyMk1hbmlmZXN0JTIyJTdEJTVEJTdEJTdE](https://example.org/) @@ -59,11 +59,11 @@ We can also create an anchor tag with the link as the `href` attribute for use i Link for visualizing the region of a Canvas using a viewer. ``` -An alternive way of sharing a region of an image is to use the [Image API](https://iiif.io/api/image/3.0/#41-region). However, the context from which the region is extracted is not easily accessible. Instead, sharing a link to open the specific region with a viewer allows the users to explore another part of the image or related content and metadata in the Manifest. +An alternative way of sharing a region of an image is to use the [Image API](https://iiif.io/api/image/3.0/#41-region). However, the context from which the region is extracted is not easily accessible. Instead, sharing a link to open the specific region with a viewer allows the users to explore another part of the image or related content and metadata in the Manifest. ## Restrictions -Note content state does not define how the viewer should bring the regsion of the canvas to the attention of the user. It only mentions: +Note Content State does not define how the viewer should bring the regions of the Canvas to the attention of the user. It only mentions: "This data structure can be used by clients to load the resource required, present a particular part of the resource to the user." https://iiif.io/api/content-state/1.0/#content-state @@ -71,7 +71,7 @@ Viewers may set the viewport to the region or highlight the region with an annot ## Example -In this example we are aiming to highlight the bug that is on the second page of the Book in receip []. The part of the image we are highlighting is as follows: +In this example we are aiming to highlight the bug that is on the second page of the [Book in recipe][0009]. The part of the image we are highlighting is as follows: ![Image of a bug](https://iiif.io/api/image/3.0/example/reference/59d09e6773341f28ea166e9f3c1e674f-gallica_ark_12148_bpt6k1526005v_f19/1528,3024,344,408/pct:50/0/default.jpg) @@ -85,9 +85,10 @@ and this is located in the following region of the second image: ## Related Recipes -* [Simplest Manifest - Image][0001] shows the basic structure of a IIIF Manifest using presentation API 3.0. +* [Simplest Manifest - Image][0001] shows the basic structure of a IIIF Manifest using Presentation API 3.0. * [A simple book][0009] shows the manifest structure. -* [Link for loading a manifest][0466] another example of content state API. +* [Link for loading a manifest][0466] another example of Content State API. +* [Addressing a Spatial Region][0299] an example of sharing a region of a Canvas creating a new Manifest. {% include acronyms.md %} {% include links.md %}