Linked Art API: Dimension Structure

Introduction

Dimensions are a combination of a numeric value, a unit for the value, and a classification as to what sort of value it is. They can be measured on the entity by some means, such as counting or using an instrument. The data structure is commonly used for physical things (e.g. height and width), but is also applicable to textual works (e.g. number of words) or even people (e.g. height, weight). If there is a countable feature, then that can be expressed as a dimension using this data structure.

Property Definitions

The dimension data structure has the following properties.

Properties of Dimensions

Property Name Datatype Requirement Description
id string Optional If present, the value MUST be a URI identifying the dimension, from which a representation of the dimension can be retrieved
type string Required The class for the name, which MUST be the value "Dimension"
_label string Recommended A human readable label, intended for developers
_complete boolean Optional Non-Semantic. If there is an id property with a URI, and there is more information about the identifier available from the representation at that URI, then _complete MUST be present with a value of false to inform the consuming application that it might want to retrieve it
value number Required The numeric value of the dimension
unit json object Required The unit for the dimension, which MUST follow the requirements for a MeasurementUnit
classified_as array Recommended An array of json objects, each of which is a further classification of the dimension and MUST follow the requirements for Type
identified_by array Recommended An array of json objects, each of which is a textual representation of the structured data in the dimension, and MUST follow the requirements for Name
upper_value_limit number Optional A number, which represents the highest possible value for the dimension
lower_value_limit number Optional A number, which represents the lowest possible value for the dimension
referred_to_by array Optional An array of json objects, each of which is either a reference to a textual work that refers to the dimension, or an embedded statement about the dimension.
assigned_by array Optional An array of json objects, each of which is a measurement activity for the dimension, as below

Properties of Measurements

Property Name Datatype Requirement Description
type string Required The class for the measurement, which MUST be the value "AttributeAssignment"
_label string Recommended A human readable label for the measurement, intended for developers
classified_as array Recommended An array of json objects, each of which is a further classification of the measurement and MUST follow the requirements for Type
carried_out_by array Recommended An array of json objects, each of which is a reference to a Person or Group
timespan json object Optional A json object which MUST follow the requirements for timespans
during array Optional An array of json objects, each of which is a reference to a Period during which the measurement occured
referred_to_by array Optional An array of json objects, each of which is an embedded statement about the measurement

Property Diagram

diagram

Incoming Properties

Dimension instances are typically found as the object of the following properties. This list is not exhaustive, but is intended to cover the likely cases.

Property Name Source Endpoint Description
dimension Physical Object, Digital Object, and others The dimension instance is a dimension of the source entity, especially for physical and digital objects
duration TimeSpan in All The dimension is the length of time (duration) of the actual time span, within the boundaries described in the TimeSpan instance, which can be present in all endpoints

Example

A Human-Made Object instance has a dimension of 24 (+/- 2) inches high, as measured by a curator:

{
  "@context": "https://linked.art/ns/v1/linked-art.json",
  "id": "https://linked.art/example/object/7",
  "type": "HumanMadeObject",
  "dimension": [
    {
      "type": "Dimension",
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300055644",
          "type": "Type",
          "_label": "Height"
        }
      ],
      "value": 24,
      "upper_value_limit": 26,
      "lower_value_limit": 22,
      "unit": {
        "id": "http://vocab.getty.edu/aat/300379100",
        "type": "MeasurementUnit",
        "_label": "inches"
      },
      "identified_by": [
        {
          "type": "Name",
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300404669",
              "type": "Type",
              "_label": "Display Title"
            }
          ],
          "content": "24 inches high (+/- 2 inches)"
        }
      ],
      "assigned_by": [
        {
          "type": "AttributeAssignment",
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300053578",
              "type": "Type",
              "_label": "Measuring"
            }
          ],
          "carried_out_by": [
            {
              "type": "Person",
              "_label": "Curator"
            }
          ]
        }
      ]
    }
  ]
}

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(object/7) class O1 object; O1-- type -->O1_0[HumanMadeObject] class O1_0 classstyle; O2( _ ) class O2 dims; O2-- type -->O2_0[Dimension] class O2_0 classstyle; O3(aat:300055644) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Height''") class O3_3 literal; O2-- classified_as -->O3 O2-- value -->O2_3(24) class O2_3 literal; O2-- upper_value_limit -->O2_4(26) class O2_4 literal; O2-- lower_value_limit -->O2_5(22) class O2_5 literal; O4(aat:300379100) class O4 type; O4-- type -->O4_0[MeasurementUnit] class O4_0 classstyle; O4-- _label -->O4_3("''inches''") class O4_3 literal; O2-- unit -->O4 O5( _ ) class O5 name; O5-- type -->O5_0[Name] class O5_0 classstyle; O6(aat:300404669) class O6 type; O6-- type -->O6_0[Type] class O6_0 classstyle; O6-- _label -->O6_3("''Display Title''") class O6_3 literal; O5-- classified_as -->O6 O5-- content -->O5_3("''24 inches high (+/- 2 inches)''") class O5_3 literal; O2-- identified_by -->O5 O7( _ ) class O7 event; O7-- type -->O7_0[AttributeAssignment] class O7_0 classstyle; O8(aat:300053578) class O8 type; O8-- type -->O8_0[Type] class O8_0 classstyle; O8-- _label -->O8_3("''Measuring''") class O8_3 literal; O7-- classified_as -->O8 O9( _ ) class O9 actor; O9-- type -->O9_0[Person] class O9_0 classstyle; O9-- _label -->O9_2("''Curator''") class O9_2 literal; O7-- carried_out_by -->O9 O2-- assigned_by -->O7 O1-- dimension -->O2
Other Representations: JSON-LD (raw) | JSON-LD (playground) | Turtle (raw) | Turtle (styled)