Skip to content

Commit

Permalink
Adding latest
Browse files Browse the repository at this point in the history
  • Loading branch information
glenrobson committed May 10, 2024
1 parent 99a7728 commit 5aa5f21
Show file tree
Hide file tree
Showing 4 changed files with 327 additions and 1 deletion.
5 changes: 4 additions & 1 deletion humboldt_university/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,7 @@
- [Overview](README.md)
- [What is IIIF](part1/whatisiiif.md)
- [Exercise: Finding Census Manifests](census.md)
- [Exercise: Finding IIIF Manifests](part1/guides.md)
- [Exercise: Finding IIIF Manifests](part1/guides.md)
- [Deep dive into the Census Manifests](census-manifests.md)
- [A look into Aggregation](aggregration.md)
- [Extra: Create an Exhibit](exhibit/exhibit.md)
36 changes: 36 additions & 0 deletions humboldt_university/aggregation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Aggregation

Aggregation is the action of bringing together a number of digital objects from different locations into one Website. This allows you to gather together related content into a single portal and potentially develop specific tools for that content. There are a number of organizations which have done this and integrated IIIF. The advantage of doing integration with IIIF is that you don't need to copy the Image files but instead can harvest the IIIF Manifests and embed them on your site.

There are three examples of aggregation included in this guide.

## Example 1 - Manuscriptorium
https://new.manuscriptorium.com/hub/catalog/default/dashboard?lang=en

Manuscriptorium seeks to aggregate the old written and documentary heritage (medieval and early modern manuscripts, incunabula, and early printed books until c. 1800) of European civilisation in a united user interface and present it to end users as well as have other sources use it (Manuscriptorium is, for example, a domain aggregator for Europeana). In addition to being an extensive digital library, Manuscriptorium has the ambition to become a virtual research environment for working with historical documents and collections by creating digital tools adapted as modules in a digital network. As a result, user data can be created in the personalised environment of an individual account and published in correlation with the aggregated content (data and metadata). The ultimate goal is the full integration in the digital network environment with the use of data standards, digitised document indexes, and persistent addressing of both complex digital documents (manuscripts, books) and their partial objects (pages) or fragments (page details) where blockchainisation is an inspiration rather than big data.

from https://new.manuscriptorium.com/en/about-us/

## Example 2 - Europeana example
https://www.europeana.eu/en/search?page=1&qf=collection%3Aindustrial&query=provider_aggregation_edm_isShownBy%3A%2Aiiif%2A&view=grid

* A large scale aggregator
* Use a variety of methods to ingest content. Both IIIF Discovery and other technologies

To find all 4 million IIIF items: https://www.europeana.eu/portal/en/search?q=provider_aggregation_edm_isShownBy%3A*iiif*&view=grid

## Example 3 - ARGO Maps
https://www.argomaps.org/

This is a different type of aggregation focused on maps around the American Revolution.

* Currently 16 partners
* Includes cross instution themes and stories
* Allows Georeferencing of Maps
* Allows you to explore through a map

## Methods for aggregation

Single item

IIIF discovery and other aggregation standards
286 changes: 286 additions & 0 deletions humboldt_university/census-manifests.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,286 @@
# Deep dive into Census Manifests

In this section we are going to have a look at one of the easyDB manifests to see whats there and possible improvements. We will be using the following Manifest:

https://database.census.de/api/v1/objects/uuid/4b3714d5-6112-47b3-ba6e-97f816e3fa41/format/iiif/v3/manifest.json

while doing this we will also have a look at the item in Mirador so we can see where the content comes from:

https://projectmirador.org/embed/?iiif-content=https://database.census.de/api/v1/objects/uuid/4b3714d5-6112-47b3-ba6e-97f816e3fa41/format/iiif/v3/manifest.json

The first part we will look at is the top level of the manifest particularly the following sections:

```
{
"@context": "http://iiif.io/api/presentation/3/context.json",
"id": "https://database.census.de/api/v1/objects/uuid/4b3714d5-6112-47b3-ba6e-97f816e3fa41/format/iiif/v3/manifest.json",
"label": { },
"metadata": [ ],
"provider": [ ],
"rendering": [ ],
"requiredStatement": {},
"seeAlso": [ ],
```

## Label

The label is the title of the item and you can see this prominently displayed in Mirador. In the example item it has the label of 'inv. 405 A v' and the language is set to US English:
```
"label": {
"en-US": [
"inv. 405 A v"
]
},
```
## Metadata

The [metadata section](https://iiif.io/api/presentation/3.0/#metadata) is an open list of metadata about the item. This is shown in the side panel of Mirador and should give the user enough context to understand what they are looking at if they open the Manifest in a viewer which isn't on your site.

In the example Manifest there are a number of fields but we are going to focus on the first one 'Label Name'. In the metadata section you have a 'label' and a 'value' so for example 'author' maybe a label and the value could be 'Charles Dickens'. Both the label and the value can be translated into multiple languages. In the example below the label has both a English label and a German Label (but note the actual text 'Label Name' is in English for both cases). The value doesn't have a language associated with it so its label as `none`.

The value contains HTML which is valid but not strictly necessary in this case and does lead to some strange formatting in Mirador.

```
metadata": [
{
"label": {
"de-DE": [
"Label Name"
],
"en-US": [
"Label Name"
]
},
"value": {
"none": [
"<span class=\"value\">\n inv. 405 A v</span>"
]
}
},
```
The value of Creator in particular would be better formatted as separate fields. Currently it has:

```
<span class="record">
<span class="value">
<span class="label">
<i>Creation Date</i>
</span>
<span class="nested">
<span class="record">
<span class="value">
<span class="label">
<i>Date</i>
</span>
<a href="https://database.census.de/api/v1/objects/uuid/e1ef905b-c756-41f2-8b2e-e9207ed469a3/format/html">post 1504-ante 1536</a>
</span>
<span class="value">
<span class="label">
<i>Earliest Date</i>
</span>
1505-01-01 00:00:00
</span>
<span class="value">
<span class="label">
<i>Latest Date</i>
</span>
1536-01-05 00:00:00
</span>
</span>
</span>
</span>
<span class="value">
<span class="label">
<i>Actors Involved in Creation</i>
</span>
<span class="nested">
<span class="record">
<span class="value">
<span class="label">
<i>Actor</i>
</span>
<a href="https://database.census.de/api/v1/objects/uuid/c2112528-5760-4e1b-b2d4-c015ff1d0a2a/format/html">Peruzzi, Baldassare</a>
</span>
<span class="value">
<span class="label">
<i>Actor Role</i>
</span>
<a href="https://database.census.de/api/v1/objects/uuid/dc1f3d3e-755c-4cbd-b8bd-d69facc885c3/format/html">artist/author</a>
</span>
</span>
</span>
</span>
</span>
```

For example:
```
{
"label": {
"en-US": [
"Creation Date"
]
},
"value": {
"none": [
"post 1504-ante 1536"
]
}
},
```

## provider

This is where you can link back to the institution that is publishing the resource. In this case the Census website. Unfortunately this property isn't well supported by Viewers currently (see: https://iiif.io/api/cookbook/recipe/0234-provider/)

```
"provider": [
{
"id": "https://database.census.de",
"label": {
"de-DE": [
""
],
"en-US": [
"Census Database"
]
},
"logo": [
{
"format": "image/jpeg",
"height": 720,
"id": "https://database.census.de/api/v1/eas/download/215665/870edd2273b3393e9aaea88baeb6b077fb3bfa32472a88218fcfb04f870d5984/original.jpg",
"service": {
"id": "https://database.census.de/api/v1/eas/iiif/215665/870edd2273b3393e9aaea88baeb6b077fb3bfa32472a88218fcfb04f870d5984/original.jpg",
"profile": "level1",
"type": "ImageService3"
},
"type": "Image",
"width": 586
}
],
"type": "Agent"
}
],
```

## rendering

Rendering is where you advertise different versions of the resource you are currently looking at. Typically these are things like a PDF version of a resource. In this manifest there is a HTML version of the resource. Note if you are linking back to the conical location of the item you would use a `homepage` property.

```
rendering": [
{
"format": "text/html",
"id": "https://database.census.de/api/v1/objects/uuid/4b3714d5-6112-47b3-ba6e-97f816e3fa41/format/html",
"label": {
"da-DK": [
"HTML representation"
],
"de-DE": [
"HTML Representation"
],
"en-US": [
"HTML representation"
],
"fi-FI": [
"HTML-esitys"
],
"fr-FR": [
"Représentation HTML"
],
"it-IT": [
"Rappresentazione HTML"
],
"ru-RU": [
""
],
"sv-SE": [
"HTML representation"
],
"uz-UZ": [
""
]
},
"type": "Text"
}
],
```

## requiredStatement
In the example this is empty but this is where you would put attribution or mention where the material comes from. You can see a populated version of this rights statement in this [cookbook recipe](https://iiif.io/api/cookbook/recipe/0008-rights/).

```
requiredStatement": {
"label": {
"de-DE": [
""
],
"en-US": [
""
]
},
"value": {
"de-DE": [
""
],
"en-US": [
""
]
}
},
```

## seeAlso

See Also is where you can link out to Machine Readable metadata about the item. This is particularly useful for aggregators like Europeana which requires structured metadata to be able to accept items into their collection.

In the example manifest it links out to some easydb XML metadata.

```
seeAlso": [
{
"id": "https://database.census.de/api/v1/objects/uuid/4b3714d5-6112-47b3-ba6e-97f816e3fa41/format/xml_easydb",
"type": "Dataset",
"format": "text/xml",
"label": {
"da-DK": [
"XML (easydb)"
],
"de-DE": [
"XML (easydb)"
],
"en-US": [
"XML (easydb)"
],
"fi-FI": [
"XML (easydb)"
],
"fr-FR": [
"XML (easydb)"
],
"it-IT": [
"XML (easydb)"
],
"ru-RU": [
""
],
"sv-SE": [
"XML (easydb)"
],
"uz-UZ": [
""
]
}
}
],
```

## Other sections

The other parts of the manifest are the `items` where the different pages of the manuscript live and the `structures` element which is where you setup a table of contents. You can see the following table of contents for a Vatican manifest:

https://projectmirador.org/embed/?iiif-content=https://digi.vatlib.it/iiif/MSS_Pal.lat.957/manifest.json

The table of contents for the easyDb manifest looks a but confused and doesn't work in mirador. It looks like the metadata has been incorrectly copied into the Structures element.
1 change: 1 addition & 0 deletions humboldt_university/exhibit

0 comments on commit 5aa5f21

Please sign in to comment.