Linked Art API: Place

Table of Contents


Introduction

Places are a foundational aspect of the Linked Art model for providing context as to where activities occur. They are extents in space described by a geometry, and independent of time or what object(s) may be present at the location. Places are a relatively simple model and therefore a relatively simple API, using the shared features and common patterns, along with a WKT based definition of the geometry.

For more information about the usage of Places, please see the Place model.

Property Definitions

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

Properties of Places

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 place's representation can be dereferenced
type string Required The class of the place, which MUST be the value "Place"
_label string Recommended A human readable label for the place, intended for developers
classified_as array Recommended An array of json objects, each of which is a classification of the Place and MUST follow the requirements for Type
identified_by array Recommended An array of json objects, each of which is a name of the Place and MUST follow the requirements for Name, or an identifier for the Place 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 Place and MUST follow the requirements for Statement
defined_by string Optional A string containing the WKT representation of the geometry of the Place
approximated_by array Optional An array of json objects, each of which is an approximation of the current Place and MUST follow the requirements for an entity reference to a Place
part_of array Optional An array of json objects, each of which is a Place that the current Place falls within and MUST follow the requirements for an entity reference to a Place
member_of array Optional An array of json objects, each of which is a Set that the current Place is a member of and MUST follow the requirements for an entity reference to a Set

Property Diagram

diagram

Incoming Properties

Type 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 Places.

Property Name Source Endpoint Description
current_location Physical Object The current location of an object is managed by the object
current_permanent_location Physical Object The normal location of the object is also managed by the object
moved_from Provenance Activity In Provenance Activities, objects can be moved in a Move activity from one place ...
moved_to Provenance Activity ... to another place
residence Person, Group People and Groups have Places at which they are or have been resident
took_place_at All All Events and Activities can take place at a Place, which appear in most of the endpoints such as the location of the birth of a person, or the location of the assignment of an identifier

Example

The JSON for a Place entry for the city of Los Angeles could be as below.

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/place/0", 
  "type": "Place", 
  "_label": "Los Angeles", 
  "classified_as": [
    {
      "id": "http://vocab.getty.edu/aat/300008389", 
      "type": "Type", 
      "_label": "City"
    }
  ], 
  "identified_by": [
    {
      "type": "Name", 
      "content": "Los Angeles"
    }, 
    {
      "type": "Identifier", 
      "content": "06-44000"
    }
  ], 
  "defined_by": "POLYGON((-118.574 34.185,-117.558 34.185,-117.5585 33.512,-118.574 33.512,-118.5745 34.185))", 
  "referred_to_by": [
    {
      "type": "LinguisticObject", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300411780", 
          "type": "Type", 
          "_label": "Description", 
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300418049", 
              "type": "Type", 
              "_label": "Brief Text"
            }
          ]
        }
      ], 
      "content": "Los Angeles is the largest city in California"
    }
  ], 
  "approximated_by": [
    {
      "type": "Place", 
      "_label": "Los Angeles Centroid"
    }
  ], 
  "member_of": [
    {
      "type": "Set", 
      "_label": "Top 10 Cities in USA"
    }
  ], 
  "part_of": [
    {
      "type": "Place", 
      "_label": "California"
    }
  ]
}
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:blue,fill:#96e0f6,rx:20px,ry:20px classDef event stroke:blue,fill:purple,rx:20px,ry:20px classDef literal stroke:black,fill:#f0f0e0; classDef classstyle stroke:black,fill:white; O1(place0) class O1 place; O1-- type -->O1_0[Place] class O1_0 classstyle; O1-- _label -->O1_4("''Los Angeles''") class O1_4 literal; O2(aat:300008389) class O2 type; O2-- type -->O2_0[Type] class O2_0 classstyle; O2-- _label -->O2_3("''City''") 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("''Los Angeles''") class O3_2 literal; O1-- identified_by -->O3 O4() class O4 name; O4-- type -->O4_0[Identifier] class O4_0 classstyle; O4-- content -->O4_2("''06-44000''") class O4_2 literal; O1-- identified_by -->O4 O1-- defined_by -->O1_7("''POLYGON((-118.574 34.185,-117.558 34.185,-117.5585 33.512,-118.574 33.512,-118.5745 34.185))''") class O1_7 literal; O5() class O5 infoobj; O5-- type -->O5_0[LinguisticObject] class O5_0 classstyle; O6(aat:300411780) class O6 type; O6-- type -->O6_0[Type] class O6_0 classstyle; O6-- _label -->O6_3("''Description''") class O6_3 literal; O7(aat:300418049) class O7 type; O7-- type -->O7_0[Type] class O7_0 classstyle; O7-- _label -->O7_3("''Brief Text''") class O7_3 literal; O6-- classified_as -->O7 O5-- classified_as -->O6 O5-- content -->O5_3("''Los Angeles is the largest city in California''") class O5_3 literal; O1-- referred_to_by -->O5 O8() class O8 place; O8-- type -->O8_0[Place] class O8_0 classstyle; O8-- _label -->O8_2("''California''") class O8_2 literal; O1-- part_of -->O8 O9() class O9 place; O9-- type -->O9_0[Place] class O9_0 classstyle; O9-- _label -->O9_2("''Los Angeles Centroid''") class O9_2 literal; O1-- approximated_by -->O9 O10() class O10 infoobj; O10-- type -->O10_0[Set] class O10_0 classstyle; O10-- _label -->O10_2("''Top 10 Cities in USA''") class O10_2 literal; O1-- member_of -->O10
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Incoming Reference Example

A Physical Object referring to two places via the current_location and the location that it was created.

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/object/0", 
  "type": "HumanMadeObject", 
  "_label": "Van Gogh Painting", 
  "produced_by": {
    "type": "Production", 
    "_label": "Production of Painting", 
    "took_place_at": [
      {
        "type": "Place", 
        "_label": "Amsterdam"
      }
    ]
  }, 
  "current_location": {
    "type": "Place", 
    "_label": "Rijksmuseum Gallery"
  }
}
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:blue,fill:#96e0f6,rx:20px,ry:20px classDef event stroke:blue,fill:purple,rx:20px,ry:20px classDef literal stroke:black,fill:#f0f0e0; classDef classstyle stroke:black,fill:white; O1(object0) class O1 object; O1-- type -->O1_0[HumanMadeObject] class O1_0 classstyle; O1-- _label -->O1_4("''Van Gogh Painting''") class O1_4 literal; O2() class O2 event; O2-- type -->O2_0[Production] class O2_0 classstyle; O2-- _label -->O2_2("''Production of Painting''") class O2_2 literal; O3() class O3 place; O3-- type -->O3_0[Place] class O3_0 classstyle; O3-- _label -->O3_2("''Amsterdam''") class O3_2 literal; O2-- took_place_at -->O3 O1-- produced_by -->O2 O4() class O4 place; O4-- type -->O4_0[Place] class O4_0 classstyle; O4-- _label -->O4_2("''Rijksmuseum Gallery''") class O4_2 literal; O1-- current_location -->O4
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)