Linked Art API: Set

Introduction

The Set API is a method of getting access to descriptions of sets or collections of any sort of entity, including especially objects, texts and images. The Set model is relatively simple with the common properties and patterns, and very few additions. It must be noted that, like the Group API, the Set API does not list its members, to avoid the potential for very long lists. Instead the individual entities are members of the set, and discovering others is left to APIs to be determined.

For more information about the usage of Set data, please see the Collection model description.

Property Definitions

Dereferencing an entity via the Set endpoint would result in a JSON-LD document containing a single JSON object with the following properties.

Properties of Sets

Property Name Datatype Requirement Description
@context string, array Required The value MUST be the URI of the Linked Art context as a string, "https://linked.art/ns/v1/linked-art.json" or an array in which the URI is the last entry to allow for extensions
id string Required The value MUST be the HTTP(S) URI at which the set's representation can be dereferenced
type string Required The class for the set, which MUST be the value "Set"
_label string Recommended A human readable label for the set, intended for developers
classified_as array Recommended An array of json objects, each of which is a classification of the set and MUST follow the requirements for Type
identified_by array Recommended An array of json objects, each of which is a name of the set and MUST follow the requirements for Name, or an identifier for the set and MUST follow the requirements for Identifier
referred_to_by array Optional An array of json objects, each of which is a human readable statement about the set and MUST follow the requirements for Statement
equivalent array Optional An array of json objects, each of which is a reference to an external identity and description of the current set
representation array Optional An array of json objects, each of which is a reference to a Visual Work that represents the current set, and MUST follow the requirements for a reference
member_of array Optional An array of json objects, each of which is a Set that the current set is a member of and MUST follow the requirements for a reference to a Set
subject_of array Optional An array of json objects, each of which is a reference to a Textual Work, the content of which focuses on the current set, and MUST follow the requirements for a reference
attributed_by array Optional An array of json objects, each of which is a Relationship Assignment that relates the current set to another entity
dimension array Optional An array of json objects, each of which is a Dimension, such as total number of members, of the current set
members_exemplified_by array Optional An array of json objects, each of which is either an embedded structure that follows the patterns of one of the Linked Art API endpoints, or a reference to any Linked Art resource
members_contained_by array Optional An array of json objects, each of which is a reference to a Physical Object that holds or contains (physical) members of the current set
created_by json object Optional A json object representing the creation of the set, which follows the requirements for a Creation
used_for array Optional An array of json objects, each of which is a Publication (or similar activity) which follows the requirements for an Activity

Property Diagram

diagram

JSON Schema

See the schema documentation and the schema itself

Note that the members_exemplified_by property can only be minimally validated.

Incoming Properties

Set instances are typically found as the object of the following properties, other than the self-referential properties above. This list is not exhaustive, but is intended to cover the likely cases where other endpoints refer to sets.

Property Name Source Endpoint Description
member_of All Entities other than People or Groups can be members of sets. (People and Groups are members of Groups instead)
used_specific_object Event Events can use sets of things, for example the set of objects in an exhibition or auction lot

Example

The JSON for a Set entry for the Met's Collection could be as below.

{
  "@context": "https://linked.art/ns/v1/linked-art.json",
  "id": "https://linked.art/example/set/1",
  "type": "Set",
  "_label": "Collection of the Met",
  "classified_as": [
    {
      "id": "http://vocab.getty.edu/aat/300025976",
      "type": "Type",
      "_label": "Collection"
    }
  ],
  "identified_by": [
    {
      "type": "Name",
      "content": "Art Collection of the Metropolitan Museum of Art"
    }
  ],
  "referred_to_by": [
    {
      "type": "LinguisticObject",
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300435416",
          "type": "Type",
          "_label": "Description",
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300418049",
              "type": "Type",
              "_label": "Brief Text"
            }
          ]
        }
      ],
      "content": "Over 2 million works, divided into 17 curatorial departments"
    }
  ],
  "created_by": {
    "type": "Creation",
    "timespan": {
      "type": "TimeSpan",
      "_label": "April 13th, 1870",
      "begin_of_the_begin": "1870-04-13T00:00:00Z",
      "end_of_the_end": "1870-04-13T23:59:59Z"
    }
  }
}

graph TD classDef object stroke:black,fill:#E1BA9C,rx:20px,ry:20px; classDef actor stroke:black,fill:#FFBDCA,rx:20px,ry:20px; classDef type stroke:red,fill:#FAB565,rx:20px,ry:20px; classDef name stroke:orange,fill:#FEF3BA,rx:20px,ry:20px; classDef dims stroke:black,fill:#c6c6c6,rx:20px,ry:20px; classDef infoobj stroke:#907010,fill:#fffa40,rx:20px,ry:20px classDef timespan stroke:blue,fill:#ddfffe,rx:20px,ry:20px classDef place stroke:#3a7a3a,fill:#aff090,rx:20px,ry:20px classDef event stroke:#1010FF,fill:#96e0f6,rx:20px,ry:20px classDef literal stroke:black,fill:#f0f0e0; classDef classstyle stroke:black,fill:white; O1(set/1) class O1 infoobj; O1-- type -->O1_0[Set] class O1_0 classstyle; O1-- _label -->O1_4("''Collection of the Met''") class O1_4 literal; O2(aat:300025976) class O2 type; O2-- type -->O2_0[Type] class O2_0 classstyle; O2-- _label -->O2_3("''Collection''") class O2_3 literal; O1-- classified_as -->O2 O3( _ ) class O3 name; O3-- type -->O3_0[Name] class O3_0 classstyle; O3-- content -->O3_2("''Art Collection of the Metropolitan Museum of Art''") class O3_2 literal; O1-- identified_by -->O3 O4( _ ) class O4 infoobj; O4-- type -->O4_0[LinguisticObject] class O4_0 classstyle; O5(aat:300435416) class O5 type; O5-- type -->O5_0[Type] class O5_0 classstyle; O5-- _label -->O5_3("''Description''") class O5_3 literal; O6(aat:300418049) class O6 type; O6-- type -->O6_0[Type] class O6_0 classstyle; O6-- _label -->O6_3("''Brief Text''") class O6_3 literal; O5-- classified_as -->O6 O4-- classified_as -->O5 O4-- content -->O4_3("''Over 2 million works, divided into 17 curatorial departments''") class O4_3 literal; O1-- referred_to_by -->O4 O7( _ ) class O7 event; O7-- type -->O7_0[Creation] class O7_0 classstyle; O8( _ ) class O8 timespan; O8-- type -->O8_0[TimeSpan] class O8_0 classstyle; O8-- _label -->O8_2("''April 13th, 1870''") class O8_2 literal; O8-- begin_of_the_begin -->O8_3("''1870-04-13T00:00:00Z''") class O8_3 literal; O8-- end_of_the_end -->O8_4("''1870-04-13T23:59:59Z''") class O8_4 literal; O7-- timespan -->O8 O1-- created_by -->O7
Other Representations: JSON-LD (raw) | JSON-LD (playground) | Turtle (raw) | Turtle (styled)