{"id":"linked-art/api/schema-abstract-work","relativePath":"linked-art/api/schema-abstract-work.md","title":"Linked Art API Schema: Abstract Work","markdown":"# Linked Art API Schema: Abstract Work\n\n**Last refreshed:** 2026-07-06\n\nSource: [Abstract Work schema docs](https://linked.art/api/1.0/schema_docs/abstract/) and [abstract.json](https://linked.art/api/1.0/schema/abstract.json), part of Linked Art API 1.0, published under [CC BY 4.0](http://creativecommons.org/licenses/by/4.0/). This is a project summary; the upstream schema is authoritative.\n\n## Purpose\n\nThe Abstract Work schema describes a `crm:E89_Propositional_Object`: a purely conceptual work, such as the idea behind an exhibition. In Linked Art API terms this is the `PropositionalObject` endpoint shape.\n\nRelated upstream references:\n\n- [Abstract Work API endpoint](https://linked.art/api/1.0/endpoint/abstract_work/)\n- [Abstract Work model documentation](https://linked.art/model/document/)\n\n## Top-Level Constraints\n\n- Schema type: object.\n- CRM class: `crm:E89_Propositional_Object`.\n- Additional top-level properties are not allowed.\n- `@context`: required.\n- `id`: required URI string for the entity.\n- `type`: required class string, such as `Person`, `Place`, `Type`, or `HumanMadeObject`; for this endpoint the practical Linked Art class is `PropositionalObject`.\n- `_label`: required developer-facing human-readable label.\n\n## Permitted Top-Level Fields\n\n- `identified_by`: array of `Name` or `Identifier` structures.\n- `classified_as`: array of `Type` structures that classify the entity beyond its `type`.\n- `referred_to_by`: array of embedded statements or textual references about the entity.\n- `equivalent`: array of compact references to equivalent identities in external vocabularies or systems.\n- `representation`: array of embedded `VisualItem` structures linked to digital objects.\n- `member_of`: array of `Set` references.\n- `subject_of`: array of embedded `LinguisticObject` web pages or digital objects focused on this entity.\n- `attributed_by`: array of `AttributeAssignment` structures relating another entity to this one.\n- `dimension`: array of `Dimension` structures.\n- `subject_to`: array of `Right` structures.\n- `about`: array of references to the main topics of the abstract work.\n- `conceptually_part_of`: array of `PropositionalObject` references for parent abstract works.\n- `created_by`: creation activity for the intellectual or conceptual entity.\n\n## Embedded Structures Highlighted By The Schema\n\n`identified_by` items can be:\n\n- `Name` structures, with required `type` and `content`, plus optional `_label`, `identified_by`, `referred_to_by`, `classified_as`, `language`, and `part`.\n- `Identifier` structures, following the shared identifier pattern.\n\n`equivalent` items are compact references:\n\n- `id`: required.\n- `type`: required.\n- `_label`: optional.\n- `equivalent`: optional nested equivalent references.\n\n`representation` items are embedded `VisualItem` structures:\n\n- `type`: required.\n- `_label`, `identified_by`, `classified_as`, `referred_to_by`, and `digitally_shown_by` are allowed.\n\n`subject_of` items are embedded `LinguisticObject` structures:\n\n- `type`: required.\n- `_label`, `identified_by`, `classified_as`, `referred_to_by`, `language`, and `digitally_carried_by` are allowed.\n\n`subject_to` items are `Right` structures:\n\n- `type`: required.\n- `_label`, `identified_by`, `classified_as`, `referred_to_by`, `created_by`, and `possessed_by` are allowed.\n\n`conceptually_part_of` items are compact `PropositionalObject` references:\n\n- `id`: required.\n- `type`: required.\n- `_label`: optional.\n- `equivalent`: optional.\n\n## Creation Activity Shape\n\n`created_by` describes the creation of the conceptual entity. The expanded schema allows normal activity fields:\n\n- `type`\n- `_label`\n- `identified_by`\n- `classified_as`\n- `referred_to_by`\n- `took_place_at`\n- `timespan`\n- `caused_by`\n- `carried_out_by`\n- `used_specific_object`\n- `influenced_by`\n- `technique`\n- `during`\n- `after`\n- `before`\n- `part_of`\n\n`part_of` can reference an `Event` or `Activity` with required `id` and `type`, plus optional `_label` and `equivalent`.\n\n## Meta Museum Notes\n\nMeta Museum's existing Abstract Works endpoint note already records the conceptual-work boundary. This expanded schema adds the concrete validation shape: top-level strictness, required `@context`/`id`/`type`/`_label`, and the allowed places for names, identifiers, external equivalents, visual representation, set membership, subject web pages, attribution evidence, rights, topics, parent abstract works, and creation activities.\n\nThe highest-value next code task is to add schema-backed validation fixtures for representative `PropositionalObject` records and assert that unknown top-level fields fail validation.\n\n## Test Ideas\n\n- Validate a representative Abstract Work record against `abstract.json`.\n- Assert `@context`, `id`, `type`, and `_label` are present.\n- Assert unknown top-level properties fail schema validation.\n- Preserve `created_by` activity fields including `timespan`, `carried_out_by`, `used_specific_object`, `technique`, and `part_of`.\n- Preserve `conceptually_part_of` as compact `PropositionalObject` references with `id` and `type`.\n- Preserve `subject_of` web-page evidence and `representation` image evidence without flattening them into display text.\n","sections":[{"level":2,"heading":"Purpose","anchor":"purpose"},{"level":2,"heading":"Top-Level Constraints","anchor":"top-level-constraints"},{"level":2,"heading":"Permitted Top-Level Fields","anchor":"permitted-top-level-fields"},{"level":2,"heading":"Embedded Structures Highlighted By The Schema","anchor":"embedded-structures-highlighted-by-the-schema"},{"level":2,"heading":"Creation Activity Shape","anchor":"creation-activity-shape"},{"level":2,"heading":"Meta Museum Notes","anchor":"meta-museum-notes"},{"level":2,"heading":"Test Ideas","anchor":"test-ideas"}],"html":"<h1 id=\"linked-art-api-schema-abstract-work\">Linked Art API Schema: Abstract Work</h1>\n<p><strong>Last refreshed:</strong> 2026-07-06</p>\n<p>Source: <a href=\"https://linked.art/api/1.0/schema_docs/abstract/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"doc-link\">Abstract Work schema docs</a> and <a href=\"https://linked.art/api/1.0/schema/abstract.json\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"doc-link\">abstract.json</a>, part of Linked Art API 1.0, published under <a href=\"http://creativecommons.org/licenses/by/4.0/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"doc-link\">CC BY 4.0</a>. This is a project summary; the upstream schema is authoritative.</p>\n<h2 id=\"purpose\">Purpose</h2>\n<p>The Abstract Work schema describes a `crm:E89_Propositional_Object`: a purely conceptual work, such as the idea behind an exhibition. In Linked Art API terms this is the `PropositionalObject` endpoint shape.</p>\n<p>Related upstream references:</p>\n<ul><li><a href=\"https://linked.art/api/1.0/endpoint/abstract_work/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"doc-link\">Abstract Work API endpoint</a></li><li><a href=\"https://linked.art/model/document/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"doc-link\">Abstract Work model documentation</a></li></ul>\n<h2 id=\"top-level-constraints\">Top-Level Constraints</h2>\n<ul><li>Schema type: object.</li><li>CRM class: `crm:E89_Propositional_Object`.</li><li>Additional top-level properties are not allowed.</li><li>`@context`: required.</li><li>`id`: required URI string for the entity.</li><li>`type`: required class string, such as `Person`, `Place`, `Type`, or `HumanMadeObject`; for this endpoint the practical Linked Art class is `PropositionalObject`.</li><li>`_label`: required developer-facing human-readable label.</li></ul>\n<h2 id=\"permitted-top-level-fields\">Permitted Top-Level Fields</h2>\n<ul><li>`identified_by`: array of `Name` or `Identifier` structures.</li><li>`classified_as`: array of `Type` structures that classify the entity beyond its `type`.</li><li>`referred_to_by`: array of embedded statements or textual references about the entity.</li><li>`equivalent`: array of compact references to equivalent identities in external vocabularies or systems.</li><li>`representation`: array of embedded `VisualItem` structures linked to digital objects.</li><li>`member_of`: array of `Set` references.</li><li>`subject_of`: array of embedded `LinguisticObject` web pages or digital objects focused on this entity.</li><li>`attributed_by`: array of `AttributeAssignment` structures relating another entity to this one.</li><li>`dimension`: array of `Dimension` structures.</li><li>`subject_to`: array of `Right` structures.</li><li>`about`: array of references to the main topics of the abstract work.</li><li>`conceptually_part_of`: array of `PropositionalObject` references for parent abstract works.</li><li>`created_by`: creation activity for the intellectual or conceptual entity.</li></ul>\n<h2 id=\"embedded-structures-highlighted-by-the-schema\">Embedded Structures Highlighted By The Schema</h2>\n<p>`identified_by` items can be:</p>\n<ul><li>`Name` structures, with required `type` and `content`, plus optional `_label`, `identified_by`, `referred_to_by`, `classified_as`, `language`, and `part`.</li><li>`Identifier` structures, following the shared identifier pattern.</li></ul>\n<p>`equivalent` items are compact references:</p>\n<ul><li>`id`: required.</li><li>`type`: required.</li><li>`_label`: optional.</li><li>`equivalent`: optional nested equivalent references.</li></ul>\n<p>`representation` items are embedded `VisualItem` structures:</p>\n<ul><li>`type`: required.</li><li>`_label`, `identified_by`, `classified_as`, `referred_to_by`, and `digitally_shown_by` are allowed.</li></ul>\n<p>`subject_of` items are embedded `LinguisticObject` structures:</p>\n<ul><li>`type`: required.</li><li>`_label`, `identified_by`, `classified_as`, `referred_to_by`, `language`, and `digitally_carried_by` are allowed.</li></ul>\n<p>`subject_to` items are `Right` structures:</p>\n<ul><li>`type`: required.</li><li>`_label`, `identified_by`, `classified_as`, `referred_to_by`, `created_by`, and `possessed_by` are allowed.</li></ul>\n<p>`conceptually_part_of` items are compact `PropositionalObject` references:</p>\n<ul><li>`id`: required.</li><li>`type`: required.</li><li>`_label`: optional.</li><li>`equivalent`: optional.</li></ul>\n<h2 id=\"creation-activity-shape\">Creation Activity Shape</h2>\n<p>`created_by` describes the creation of the conceptual entity. The expanded schema allows normal activity fields:</p>\n<ul><li>`type`</li><li>`_label`</li><li>`identified_by`</li><li>`classified_as`</li><li>`referred_to_by`</li><li>`took_place_at`</li><li>`timespan`</li><li>`caused_by`</li><li>`carried_out_by`</li><li>`used_specific_object`</li><li>`influenced_by`</li><li>`technique`</li><li>`during`</li><li>`after`</li><li>`before`</li><li>`part_of`</li></ul>\n<p>`part_of` can reference an `Event` or `Activity` with required `id` and `type`, plus optional `_label` and `equivalent`.</p>\n<h2 id=\"meta-museum-notes\">Meta Museum Notes</h2>\n<p>Meta Museum&#39;s existing Abstract Works endpoint note already records the conceptual-work boundary. This expanded schema adds the concrete validation shape: top-level strictness, required `@context`/`id`/`type`/`_label`, and the allowed places for names, identifiers, external equivalents, visual representation, set membership, subject web pages, attribution evidence, rights, topics, parent abstract works, and creation activities.</p>\n<p>The highest-value next code task is to add schema-backed validation fixtures for representative `PropositionalObject` records and assert that unknown top-level fields fail validation.</p>\n<h2 id=\"test-ideas\">Test Ideas</h2>\n<ul><li>Validate a representative Abstract Work record against `abstract.json`.</li><li>Assert `@context`, `id`, `type`, and `_label` are present.</li><li>Assert unknown top-level properties fail schema validation.</li><li>Preserve `created_by` activity fields including `timespan`, `carried_out_by`, `used_specific_object`, `technique`, and `part_of`.</li><li>Preserve `conceptually_part_of` as compact `PropositionalObject` references with `id` and `type`.</li><li>Preserve `subject_of` web-page evidence and `representation` image evidence without flattening them into display text.</li></ul>","updatedAt":"2026-07-06T00:00:00.000Z","checksum":"20660a51677e92cafd88de97ecc025d03448ae280fa6b434cf6b1c45395225c4","checksumPrefix":"20660a51677e","anchorCount":7,"lineCount":115,"rawUrl":"/api/docs/content?path=linked-art%2Fapi%2Fschema-abstract-work.md","htmlUrl":"/docs?doc=linked-art%2Fapi%2Fschema-abstract-work.md","apiUrl":"/api/docs/content?path=linked-art%2Fapi%2Fschema-abstract-work.md"}