Last refreshed: 2026-07-06
Source: Digital Object schema docs and digital.json, part of Linked Art API 1.0, published under CC BY 4.0. This is a project summary; the upstream schema is authoritative.
Purpose
The Digital Object schema describes `dig:D1_Digital_Object`: a digital resource, such as a web page, image, manifest, or other retrievable digital carrier. In Linked Art API terms this is the endpoint shape for `DigitalObject` records and closely related embedded digital service structures.
Related upstream references:
Top-Level Constraints
- Schema type: object.
- CRM/digital class: `dig:D1_Digital_Object`.
- Additional top-level properties are not allowed.
- `@context`: required.
- `id`: required URI string for the entity.
- `type`: required class string. Practical Linked Art classes include `DigitalObject` and `DigitalService`.
- `_label`: required developer-facing human-readable label.
Permitted Top-Level Fields
- `identified_by`: array of `Name` or `Identifier` structures.
- `classified_as`: array of `Type` structures that classify this digital object.
- `referred_to_by`: array of embedded statements or textual references about the digital object.
- `equivalent`: array of compact references to equivalent digital identities.
- `representation`: array of embedded `VisualItem` structures linked through digital objects.
- `member_of`: array of `Set` references.
- `subject_of`: array of embedded `LinguisticObject` web pages or digital objects focused on this entity.
- `attributed_by`: array of `AttributeAssignment` structures relating another entity to this one.
- `dimension`: array of `Dimension` structures.
- `part_of`: compact reference to another `DigitalObject` of which this one is part.
- `format`: media type string, such as `image/jpeg` or `text/html`.
- `conforms_to`: array of `InformationObject` references for standards or specifications embodied by the resource.
- `access_point`: array of URLs from which the digital object can be retrieved.
- `digitally_available_via`: array of `DigitalService` structures used to retrieve or act on the digital object.
- `digitally_carries`: array of `LinguisticObject` references carried by the digital object.
- `digitally_shows`: array of `VisualItem` references shown by the digital object.
- `used_for`: array of `Activity` structures for activities that used the digital object.
- `created_by`: creation activity for the intellectual or conceptual entity.
Embedded Structures Highlighted By The Schema
`identified_by` items can be:
- `Name` structures, with required `type` and `content`, plus optional `_label`, nested `identified_by`, `referred_to_by`, `classified_as`, `language`, and `part`.
- `Identifier` structures, following the shared identifier pattern.
`referred_to_by` items are embedded `LinguisticObject` statements:
- `type`: required.
- `content`: required.
- `_label`, `identified_by`, `classified_as`, `referred_to_by`, `language`, and `format` are allowed.
`representation` items are embedded `VisualItem` structures:
- `type`: required.
- `_label`, `identified_by`, `classified_as`, `referred_to_by`, and `digitally_shown_by` are allowed.
- Nested `digitally_shown_by` digital objects can include `access_point`, `format`, and `conforms_to`.
`subject_of` items are embedded `LinguisticObject` structures:
- `type`: required.
- `_label`, `identified_by`, `classified_as`, `referred_to_by`, `language`, and `digitally_carried_by` are allowed.
`part_of` references another digital object:
- `id`: required.
- `type`: required.
- `_label`, `equivalent`, `format`, `conforms_to`, and `access_point` are allowed.
`digitally_available_via` items are `DigitalService` structures:
- `type`
- `_label`
- `identified_by`
- `classified_as`
- `referred_to_by`
- `access_point`
- `conforms_to`
`digitally_carries` and `digitally_shows` use compact content references:
- `digitally_carries` references `LinguisticObject` records.
- `digitally_shows` references `VisualItem` records.
- Each reference carries required `id` and `type`, plus optional `_label` and `equivalent`.
Activity Shapes
`used_for` records activities that used the digital object. `created_by` describes creation of the digital object or conceptual digital resource. Both support normal activity fields:
- `type`
- `_label`
- `identified_by`
- `classified_as`
- `referred_to_by`
- `took_place_at`
- `timespan`
- `caused_by`
- `carried_out_by`
- `used_specific_object`
- `influenced_by`
- `technique`
- `during`
- `after`
- `before`
- `part_of`
`created_by.part_of` can reference an `Event` or `Activity` with required `id` and `type`, plus optional `_label` and `equivalent`.
Meta Museum Notes
Meta Museum already preserves digital-object and digital-service patterns in endpoint notes and shared digital-link notes: `access_point`, `format`, `conforms_to`, `digitally_carries`, `digitally_shows`, `digitally_carried_by`, `digitally_shown_by`, and IIIF-style service references stay structured rather than being flattened into image URLs.
This expanded schema adds the strict endpoint validation target for digital carriers: required identity fields, no unexpected top-level properties, explicit service/access relationships, media type handling, content-carrier boundaries, and activity evidence for creation or use.
Test Ideas
- Validate representative `DigitalObject` and `DigitalService` records against `digital.json`.
- Assert `@context`, `id`, `type`, and `_label` are present.
- Assert unknown top-level properties fail schema validation.
- Preserve `access_point`, `format`, and `conforms_to` on digital objects and nested digital services.
- Preserve `digitally_carries` and `digitally_shows` as references rather than flattening them into display strings.
- Preserve `used_for` and `created_by` activity evidence including `timespan`, `carried_out_by`, `used_specific_object`, and `technique`.