Install Folio

bin/console folio:pull --dataset nara/coll_gb-whorm

Link Types

Forward Reverse Links
coll contains doc
contains
doc belongs_to coll
belongs_to
4,956

Observed Schema

Name Core Type Rows
dto_coll_collection coll collection 172
dto_doc_document doc document 2,464
dto_doc_film doc film 11
dto_doc_photograph doc photograph 3
dto_series_document series document 171

Archive Docs

Folio Metadata json
{
    "folio": {
        "code": "nara/coll_gb-whorm",
        "label": "NARA Collection gb-whorm \u2014 Collection gb-whorm",
        "dataset_key": "nara/coll_gb-whorm",
        "row_count": 2821
    },
    "cores": [
        {
            "code": "coll",
            "label": null,
            "row_count": 172
        },
        {
            "code": "doc",
            "label": null,
            "row_count": 2478
        },
        {
            "code": "series",
            "label": null,
            "row_count": 171
        }
    ],
    "dtoTables": [
        {
            "id": "nara/coll_gb-whorm:dto_coll_collection",
            "name": "dto_coll_collection",
            "kind": "dto",
            "core_code": "coll",
            "dto_type": "collection",
            "label": "Collection",
            "description": "A collection / series \u2014 an aggregation of items rather than a single object.\nTwo producers: the \"folio of folios\" (each row is a whole folio) and aggregators like the\nSmithsonian that expose collections and series alongside objects. Unlike a generic item, a\ncollection is browsed by its dataset-level descriptors \u2014 provider, country, language, size \u2014\nso those are promoted to facets here. `subjects` (a parent facet) carries the dtoType mix.\n/",
            "row_count": 172
        },
        {
            "id": "nara/coll_gb-whorm:dto_doc_document",
            "name": "dto_doc_document",
            "kind": "dto",
            "core_code": "doc",
            "dto_type": "document",
            "label": "Document",
            "description": "Generic text-primary item: broadsides, lists, clippings, forms, and any textual work that does not fit a more specific type.",
            "row_count": 2464
        },
        {
            "id": "nara/coll_gb-whorm:dto_doc_film",
            "name": "dto_doc_film",
            "kind": "dto",
            "core_code": "doc",
            "dto_type": "film",
            "label": "Film",
            "description": "Moving image works: newsreels, home movies, documentaries, and silent films.",
            "row_count": 11
        },
        {
            "id": "nara/coll_gb-whorm:dto_doc_photograph",
            "name": "dto_doc_photograph",
            "kind": "dto",
            "core_code": "doc",
            "dto_type": "photograph",
            "label": "Photograph",
            "description": null,
            "row_count": 3
        },
        {
            "id": "nara/coll_gb-whorm:dto_series_document",
            "name": "dto_series_document",
            "kind": "dto",
            "core_code": "series",
            "dto_type": "document",
            "label": "Document",
            "description": "Generic text-primary item: broadsides, lists, clippings, forms, and any textual work that does not fit a more specific type.",
            "row_count": 171
        }
    ],
    "views": [
        "dto_coll_collection",
        "dto_doc_document",
        "dto_doc_film",
        "dto_doc_photograph",
        "dto_series_document"
    ],
    "generatedAt": "2026-06-25T18:05:59+00:00",
    "metadata": {
        "archivePreparedAt": "2026-06-25T18:05:59+00:00",
        "schema": {
            "tables": 8,
            "properties": 52
        },
        "views": {
            "views": 5
        }
    }
}
Overview md
# Folio nara/coll_gb-whorm

NARA Collection gb-whorm — Collection gb-whorm

- Dataset key: `nara/coll_gb-whorm`
- Rows: 2,821
- Cores: 3
- Observed DTO tables: 5

## Cores

| Core | Label | Rows |
| --- | --- | ---: |
| `coll` | coll | 172 |
| `doc` | doc | 2,478 |
| `series` | series | 171 |
Observed Schema md
# Observed Schema

## `dto_coll_collection`

- Core: `coll`
- DTO type: `collection`
- Rows: 172

A collection / series — an aggregation of items rather than a single object.
Two producers: the "folio of folios" (each row is a whole folio) and aggregators like the
Smithsonian that expose collections and series alongside objects. Unlike a generic item, a
collection is browsed by its dataset-level descriptors — provider, country, language, size —
so those are promoted to facets here. `subjects` (a parent facet) carries the dtoType mix.
/

| Field | Type | Flags | Description |
| --- | --- | --- | --- |
| `id` | `?string` |  |  |
| `contentType` | `?string` |  |  |
| `title` | `?string` |  | dcterms:title |
| `source` | `string` |  | Source of this data: import \| ai \| ocr \| human |

## `dto_doc_document`

- Core: `doc`
- DTO type: `document`
- Rows: 2,464

Generic text-primary item: broadsides, lists, clippings, forms, and any textual work that does not fit a more specific type.

| Field | Type | Flags | Description |
| --- | --- | --- | --- |
| `id` | `?string` |  |  |
| `sourceUrl` | `?string` |  |  |
| `contentType` | `?string` |  |  |
| `title` | `?string` |  | dcterms:title |
| `description` | `?string` |  | dcterms:description — short curatorial text from the source institution |
| `citationUrl` | `?string` |  | ItemField::CITATION_URL — deep link back to the source record (e.g. the NARA catalog page). Rendered as the "Original" link on the folio item page. |
| `collections` | `?array` |  | Collection name(s) |
| `iiifBase` | `?string` |  | IIIF Image API base URL — use for AI vision and imgProxy resizing |
| `thumbnailUrl` | `?string` |  |  |
| `largeImageUrl` | `?string` |  |  |
| `imageCount` | `?int` | filterable, facet, sortable | Number of images associated with the item. |
| `hasImages` | `?bool` | filterable, facet | Whether the item has at least one image; facet for filtering out image-less objects. |
| `source` | `string` |  | Source of this data: import \| ai \| ocr \| human |
| `hasTranscription` | `bool` |  |  |
| `identifierLocal` | `?string` |  | dcterms:identifier — local accession number |
| `subjects` | `?array` | filterable, facet | dcterms:subject — keyword/topical subjects (incl. AI keywords). A sidebar facet. |

## `dto_doc_film`

- Core: `doc`
- DTO type: `film`
- Rows: 11

Moving image works: newsreels, home movies, documentaries, and silent films.

| Field | Type | Flags | Description |
| --- | --- | --- | --- |
| `id` | `?string` |  |  |
| `sourceUrl` | `?string` |  |  |
| `contentType` | `?string` |  |  |
| `title` | `?string` |  | dcterms:title |
| `description` | `?string` |  | dcterms:description — short curatorial text from the source institution |
| `citationUrl` | `?string` |  | ItemField::CITATION_URL — deep link back to the source record (e.g. the NARA catalog page). Rendered as the "Original" link on the folio item page. |
| `collections` | `?array` |  | Collection name(s) |
| `iiifBase` | `?string` |  | IIIF Image API base URL — use for AI vision and imgProxy resizing |
| `thumbnailUrl` | `?string` |  |  |
| `largeImageUrl` | `?string` |  |  |
| `imageCount` | `?int` | filterable, facet, sortable | Number of images associated with the item. |
| `hasImages` | `?bool` | filterable, facet | Whether the item has at least one image; facet for filtering out image-less objects. |
| `source` | `string` |  | Source of this data: import \| ai \| ocr \| human |
| `hasTranscription` | `bool` |  |  |

## `dto_doc_photograph`

- Core: `doc`
- DTO type: `photograph`
- Rows: 3

| Field | Type | Flags | Description |
| --- | --- | --- | --- |
| `id` | `?string` |  |  |
| `sourceUrl` | `?string` |  |  |
| `contentType` | `?string` |  |  |
| `title` | `?string` |  | dcterms:title |
| `description` | `?string` |  | dcterms:description — short curatorial text from the source institution |
| `citationUrl` | `?string` |  | ItemField::CITATION_URL — deep link back to the source record (e.g. the NARA catalog page). Rendered as the "Original" link on the folio item page. |
| `collections` | `?array` |  | Collection name(s) |
| `iiifBase` | `?string` |  | IIIF Image API base URL — use for AI vision and imgProxy resizing |
| `thumbnailUrl` | `?string` |  |  |
| `largeImageUrl` | `?string` |  |  |
| `imageCount` | `?int` | filterable, facet, sortable | Number of images associated with the item. |
| `hasImages` | `?bool` | filterable, facet | Whether the item has at least one image; facet for filtering out image-less objects. |
| `source` | `string` |  | Source of this data: import \| ai \| ocr \| human |

## `dto_series_document`

- Core: `series`
- DTO type: `document`
- Rows: 171

Generic text-primary item: broadsides, lists, clippings, forms, and any textual work that does not fit a more specific type.

| Field | Type | Flags | Description |
| --- | --- | --- | --- |
| `id` | `?string` |  |  |
| `contentType` | `?string` |  |  |
| `title` | `?string` |  | dcterms:title |
| `source` | `string` |  | Source of this data: import \| ai \| ocr \| human |
| `hasTranscription` | `bool` |  |  |
Query Guide md
# Query Guide

This folio stores canonical rows in `item` and observed field metadata in `schema_table` / `schema_property`.

```sql
select * from schema_table where kind = 'dto';
select * from schema_property where table_id = ? order by position;
select local_id, label, dto_type, dto_data, extras from item limit 20;
```

Convenience views are generated from observed DTO fields:

```sql
select * from dto_coll_collection limit 20;
```

```sql
select * from dto_doc_document limit 20;
```

```sql
select * from dto_doc_film limit 20;
```

```sql
select * from dto_doc_photograph limit 20;
```

```sql
select * from dto_series_document limit 20;
```