Properties

Brian Riley Collection — Coast Guard Heritage Museum

All properties (5)
Folio property values and provenance
Key Value Source Owner Updated (UTC)
contentType null import
Provenance
{
    "sourceRef": "folio.content_type"
}
legacy.folio Not recorded
description Brian Riley Collection — Coast Guard Heritage Museum meta dataset:dc
label Brian Riley Collection meta dataset:dc
rowCount 6 build folio.build
schemaVersion 2 build folio.format

4 photos, 1942–1947

Link Types

Forward Reverse Links
per created obj
created
obj created_by per
created_by
1
coll contains obj
contains
obj belongs_to coll
belongs_to
4

Observed Schema

Name Core Type Rows
dto_coll_collection coll collection 1
dto_document obj document 2
dto_per_org per org 1
dto_photograph obj photograph 2

Archive Docs

Folio Metadata json
{
    "folio": {
        "code": "dc/4t64k9186",
        "dataset_key": "dc/4t64k9186",
        "label": "Brian Riley Collection",
        "row_count": 6,
        "description": "Brian Riley Collection \u2014 Coast Guard Heritage Museum"
    },
    "cores": [
        {
            "code": "coll",
            "label": null,
            "row_count": 1
        },
        {
            "code": "obj",
            "label": null,
            "row_count": 4
        },
        {
            "code": "per",
            "label": null,
            "row_count": 1
        }
    ],
    "dtoTables": [
        {
            "id": "dc/4t64k9186: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": 1
        },
        {
            "id": "dc/4t64k9186:dto_document",
            "name": "dto_document",
            "kind": "dto",
            "core_code": "obj",
            "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": 2
        },
        {
            "id": "dc/4t64k9186:dto_per_org",
            "name": "dto_per_org",
            "kind": "dto",
            "core_code": "per",
            "dto_type": "org",
            "label": "Org",
            "description": "Concrete BaseItemDto for subjects whose content type is unknown or mixed.\nUse when no domain-specific DTO subclass applies.\n/",
            "row_count": 1
        },
        {
            "id": "dc/4t64k9186:dto_photograph",
            "name": "dto_photograph",
            "kind": "dto",
            "core_code": "obj",
            "dto_type": "photograph",
            "label": "Photograph",
            "description": null,
            "row_count": 2
        }
    ],
    "views": [
        "dto_coll_collection",
        "dto_document",
        "dto_per_org",
        "dto_photograph"
    ],
    "generatedAt": "2026-10-12T14:50:49+00:00",
    "metadata": {
        "archivePreparedAt": "2026-10-12T14:50:48+00:00",
        "schema": {
            "tables": 7,
            "properties": 75
        },
        "views": {
            "views": 4,
            "linkViews": 2
        }
    }
}
Overview md
# Folio dc/4t64k9186

Brian Riley Collection

- Dataset key: `dc/4t64k9186`
- Rows: 6
- Cores: 3
- Observed DTO tables: 4

## Cores

| Core | Label | Rows |
| --- | --- | ---: |
| `coll` | coll | 1 |
| `obj` | obj | 4 |
| `per` | per | 1 |
Observed Schema md
# Observed Schema

## `dto_coll_collection`

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

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` |  |  |
| `stage` | `?string` | filterable, facet | Pipeline processing stage (raw / normalized / enriched). A facet so you can filter to enriched items. Grouped under Admin -- plumbing a visitor neither knows nor wants, and the sidebar starts an Admin block collapsed. / |
| `title` | `?string` |  | dcterms:title |
| `pageCount` | `?int` | sortable | Number of pages in the document. |
| `source` | `string` |  | Source of this data: import \| ai \| ocr \| human |

## `dto_document`

- Core: `obj`
- DTO type: `document`
- Rows: 2

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` |  | The citable/reader-facing page for this record (e.g. a museum's public object page). |
| `url` | `?string` |  | The item's own canonical source URI, DISTINCT from $sourceUrl -- e.g. for a Wikibase- sourced item, the raw wiki page (all statements inspectable) vs $sourceUrl's polished public page. The two can genuinely differ; not every source has both. / |
| `contentType` | `?string` |  |  |
| `stage` | `?string` | filterable, facet | Pipeline processing stage (raw / normalized / enriched). A facet so you can filter to enriched items. Grouped under Admin -- plumbing a visitor neither knows nor wants, and the sidebar starts an Admin block collapsed. / |
| `title` | `?string` |  | dcterms:title |
| `date` | `?string` |  | dcterms:date — display string, may be fuzzy ("ca. 1920") |
| `year` | `?int` | filterable, facet, sortable | Coverage/production year. |
| `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. |
| `rights` | `?string` | filterable, facet | dcterms:rights — rights/copyright statement as text (e.g. "CC0", "Copyrighted"). A top-level facet. |
| `rightsUri` | `?string` | filterable, facet | dcterms:license URI (rightsstatements.org). Also a facet: some sources (e.g. Cleveland) carry the rights value as a short licence code here rather than a URI (CC0 / Copyrighted), and that splits a collection cleanly. NOTE: if a subclass DTO redeclares this property, repeat #[Field] — PHP attributes are not inherited on a redeclared property. / |
| `reuseAllowed` | `?string` |  | dcterms:accessRights — e.g. "no restrictions", "creative commons" |
| `language` | `?string` |  | dcterms:language |
| `identifierLocal` | `?string` |  | dcterms:identifier — local accession number |
| `institution` | `?string` |  | Holding institution |
| `collections` | `?array` |  | Collection name(s) |
| `subjects` | `?array` | filterable, facet | dcterms:subject — keyword/topical subjects (incl. AI keywords). A sidebar facet. #[Translatable], same as $tags below: each element is extracted/translated independently, so a locale-variant folio build (folio:build --locale=en) folds in translated subject text automatically. Missing before 2026-08-04 -- subjects stayed in the source language on every translated build even after title/description were correctly translated, since applyTranslations() only touches #[Translatable] fields. / |
| `genreBasic` | `?array` | filterable, facet | Broad genre/form terms (MODS genre @basic) — e.g. ["Photographs"]. A sidebar facet. |
| `genreSpecific` | `?array` | filterable, facet | Specific genre/form terms (MODS genre @specific) — e.g. ["Albumen prints"]. A facet. |
| `typeOfResource` | `?array` | filterable, facet | MODS typeOfResource — coarse resource class, e.g. ["Still image"], ["Text"]. A facet. |
| `iiifBase` | `?string` |  | IIIF Image API base URL — use for AI vision and imgProxy resizing |
| `iiifManifest` | `?string` |  |  |
| `thumbnailUrl` | `?string` |  |  |
| `largeImageUrl` | `?string` |  |  |
| `pageCount` | `?int` | sortable | Number of pages in the document. |
| `source` | `string` |  | Source of this data: import \| ai \| ocr \| human |
| `extent` | `?string` |  |  |
| `hasTranscription` | `bool` |  |  |

## `dto_per_org`

- Core: `per`
- DTO type: `org`
- Rows: 1

Concrete BaseItemDto for subjects whose content type is unknown or mixed.
Use when no domain-specific DTO subclass applies.
/

| Field | Type | Flags | Description |
| --- | --- | --- | --- |
| `id` | `?string` |  |  |
| `contentType` | `?string` |  |  |
| `stage` | `?string` | filterable, facet | Pipeline processing stage (raw / normalized / enriched). A facet so you can filter to enriched items. Grouped under Admin -- plumbing a visitor neither knows nor wants, and the sidebar starts an Admin block collapsed. / |
| `title` | `?string` |  | dcterms:title |
| `pageCount` | `?int` | sortable | Number of pages in the document. |
| `source` | `string` |  | Source of this data: import \| ai \| ocr \| human |

## `dto_photograph`

- Core: `obj`
- DTO type: `photograph`
- Rows: 2

| Field | Type | Flags | Description |
| --- | --- | --- | --- |
| `id` | `?string` |  |  |
| `sourceUrl` | `?string` |  | The citable/reader-facing page for this record (e.g. a museum's public object page). |
| `url` | `?string` |  | The item's own canonical source URI, DISTINCT from $sourceUrl -- e.g. for a Wikibase- sourced item, the raw wiki page (all statements inspectable) vs $sourceUrl's polished public page. The two can genuinely differ; not every source has both. / |
| `contentType` | `?string` |  |  |
| `stage` | `?string` | filterable, facet | Pipeline processing stage (raw / normalized / enriched). A facet so you can filter to enriched items. Grouped under Admin -- plumbing a visitor neither knows nor wants, and the sidebar starts an Admin block collapsed. / |
| `title` | `?string` |  | dcterms:title |
| `date` | `?string` |  | dcterms:date — display string, may be fuzzy ("ca. 1920") |
| `year` | `?int` | filterable, facet, sortable | Coverage/production year. |
| `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. |
| `rights` | `?string` | filterable, facet | dcterms:rights — rights/copyright statement as text (e.g. "CC0", "Copyrighted"). A top-level facet. |
| `rightsUri` | `?string` | filterable, facet | dcterms:license URI (rightsstatements.org). Also a facet: some sources (e.g. Cleveland) carry the rights value as a short licence code here rather than a URI (CC0 / Copyrighted), and that splits a collection cleanly. NOTE: if a subclass DTO redeclares this property, repeat #[Field] — PHP attributes are not inherited on a redeclared property. / |
| `reuseAllowed` | `?string` |  | dcterms:accessRights — e.g. "no restrictions", "creative commons" |
| `language` | `?string` |  | dcterms:language |
| `identifierLocal` | `?string` |  | dcterms:identifier — local accession number |
| `creators` | `?array` |  | dcterms:creator — array of names |
| `institution` | `?string` |  | Holding institution |
| `collections` | `?array` |  | Collection name(s) |
| `subjects` | `?array` | filterable, facet | dcterms:subject — keyword/topical subjects (incl. AI keywords). A sidebar facet. #[Translatable], same as $tags below: each element is extracted/translated independently, so a locale-variant folio build (folio:build --locale=en) folds in translated subject text automatically. Missing before 2026-08-04 -- subjects stayed in the source language on every translated build even after title/description were correctly translated, since applyTranslations() only touches #[Translatable] fields. / |
| `subjectsGeographic` | `?array` | filterable, facet | dcterms:spatial — geographic subjects |
| `genreBasic` | `?array` | filterable, facet | Broad genre/form terms (MODS genre @basic) — e.g. ["Photographs"]. A sidebar facet. |
| `genreSpecific` | `?array` | filterable, facet | Genre specific terms (TGM) e.g. "Portrait photographs", "Architectural photographs". A facet. |
| `typeOfResource` | `?array` | filterable, facet | MODS typeOfResource — coarse resource class, e.g. ["Still image"], ["Text"]. A facet. |
| `country` | `?string` | filterable, facet |  |
| `state` | `?string` | filterable, facet | Primary/display state — see ItemField::STATE. Always set when a record has ≥1 state (the "City, State, Country" line in PhotoGrid.html.twig reads this one, not $states). |
| `county` | `?string` |  |  |
| `city` | `?string` | filterable, facet |  |
| `latitude` | `?float` |  |  |
| `longitude` | `?float` |  |  |
| `iiifBase` | `?string` |  | IIIF Image API base URL — use for AI vision and imgProxy resizing |
| `iiifManifest` | `?string` |  |  |
| `thumbnailUrl` | `?string` |  |  |
| `largeImageUrl` | `?string` |  |  |
| `pageCount` | `?int` | sortable | Number of pages in the document. |
| `source` | `string` |  | Source of this data: import \| ai \| ocr \| human |
| `description` | `?string` |  | dcterms:description — short curatorial text from the source institution |
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_document limit 20;
```

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

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