Actors: People and Organizations

Table of Contents


Introduction

All activities are carried out by some actor, either a person (Person) or a group of people (Group) such as an organization or company. The identity and description of these actors are very important to record in order to provide the human context for the activities, and their related places and objects. The creators, finders, owners, sellers and curators of objects are all relevant to understanding our cultural heritage.

As far as scope goes, the model does not consider that non-humans (such as software or animals) can perform activities, as activities require some notion of intent. Thus the productions of the infamous monkey selfies from 2011 are not carried out by anyone, as the monkey cannot do it and the photographer did not intend for the photographs to be taken.

This model does not aim to capture all of the possible information about a Person or Group, or their relationships to other people, objects, places or activities. Instead it attempts to capture sufficient information to distinguish the actor from others, and to align the actor with other systems.

Types

There are two primary types of acting agent, Person and Group. Person is used for humans, and Group is used for any collective set of humans. Groups typically are able to take action as a coherent whole, but in some cases this is overlooked for simplicity's sake. For example, it is useful to be able to say that "The Museum" acquired a painting or "The Workshop" produced a sculpture, when in fact it was some subset of the members of the group that actually performed the activity but we do not know exactly who.

Person and Group are sub-classes of the Actor class, which might be used as a fallback when it is not known whether the actor is a Person or a Group. For example, if a sale of an object is listed as being from an art dealer called "Smith", it is unclear whether it refers to a person via their family name, or to an organization named after its owner. Equally, if there is no information about the actor currently available, but identity is desired such that it can later be reconciled or used because there is some other information known, then the use of Actor is likely needed in this case as well. This is only to be used when the nature of the actor is unknown to avoid asserting the existence of a Person when it might have been a Group, or vice versa.

Example:

The person J. Smith is a member of a group, Museum Organization.

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/0", 
  "type": "Person", 
  "_label": "J. Smith", 
  "member_of": [
    {
      "type": "Group", 
      "_label": "Museum Organization", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300312281", 
          "type": "Type", 
          "_label": "Museum"
        }
      ]
    }
  ]
}
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(person0) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''J. Smith''") class O1_4 literal; O2() class O2 actor; O2-- type -->O2_0[Group] class O2_0 classstyle; O2-- _label -->O2_2("''Museum Organization''") class O2_2 literal; O3(aat:300312281) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Museum''") class O3_3 literal; O2-- classified_as -->O3 O1-- member_of -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Names

Names are described in detail in the shared patterns section.

Example:

A person named "J. Smith"

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/1", 
  "type": "Person", 
  "_label": "J. Smith", 
  "identified_by": [
    {
      "type": "Name", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300404670", 
          "type": "Type", 
          "_label": "Primary Name"
        }
      ], 
      "content": "J. Smith"
    }
  ]
}
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(person1) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''J. Smith''") class O1_4 literal; O2() class O2 name; O2-- type -->O2_0[Name] class O2_0 classstyle; O3(aat:300404670) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Primary Name''") class O3_3 literal; O2-- classified_as -->O3 O2-- content -->O2_3("''J. Smith''") class O2_3 literal; O1-- identified_by -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Parts of Names

Personal names can often be broken down into parts, with different types. The types are given using the classified_as property. The name parts are themselves Names, and are included in the part set in the same way as other partitioning. The type of name is given using classified_as, in the regular fashion. Western name division vocabulary is given below, and other name part types should be suggested.

Example:

A person named 'Joan A. Smith"

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/2", 
  "type": "Person", 
  "_label": "Joan A. Smith", 
  "identified_by": [
    {
      "type": "Name", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300404670", 
          "type": "Type", 
          "_label": "Primary Name"
        }
      ], 
      "content": "Joan A. Smith", 
      "part": [
        {
          "type": "Name", 
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300404651", 
              "type": "Type", 
              "_label": "Given Name"
            }
          ], 
          "content": "Joan"
        }, 
        {
          "type": "Name", 
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300404654", 
              "type": "Type", 
              "_label": "Middle Name"
            }
          ], 
          "content": "A."
        }, 
        {
          "type": "Name", 
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300404652", 
              "type": "Type", 
              "_label": "Family Name"
            }
          ], 
          "content": "Smith"
        }
      ]
    }
  ]
}
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(person2) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''Joan A. Smith''") class O1_4 literal; O2() class O2 name; O2-- type -->O2_0[Name] class O2_0 classstyle; O3(aat:300404670) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Primary Name''") class O3_3 literal; O2-- classified_as -->O3 O2-- content -->O2_3("''Joan A. Smith''") class O2_3 literal; O4() class O4 name; O4-- type -->O4_0[Name] class O4_0 classstyle; O5(aat:300404651) class O5 type; O5-- type -->O5_0[Type] class O5_0 classstyle; O5-- _label -->O5_3("''Given Name''") class O5_3 literal; O4-- classified_as -->O5 O4-- content -->O4_3("''Joan''") class O4_3 literal; O2-- part -->O4 O6() class O6 name; O6-- type -->O6_0[Name] class O6_0 classstyle; O7(aat:300404654) class O7 type; O7-- type -->O7_0[Type] class O7_0 classstyle; O7-- _label -->O7_3("''Middle Name''") class O7_3 literal; O6-- classified_as -->O7 O6-- content -->O6_3("''A.''") class O6_3 literal; O2-- part -->O6 O8() class O8 name; O8-- type -->O8_0[Name] class O8_0 classstyle; O9(aat:300404652) class O9 type; O9-- type -->O9_0[Type] class O9_0 classstyle; O9-- _label -->O9_3("''Family Name''") class O9_3 literal; O8-- classified_as -->O9 O8-- content -->O8_3("''Smith''") class O8_3 literal; O2-- part -->O8 O1-- identified_by -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Identity

People and Organizations are often assigned identifiers that should be recorded and tracked in the same way as any other identity. These follow the same [basic pattern][/model/base.html#identifiers] as for other identifiers, with identified_by being used with an Identifier resource.

Example:

A local identifier for the person is "643".

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/3", 
  "type": "Person", 
  "_label": "Xavier Y. Zeelander", 
  "identified_by": [
    {
      "type": "Identifier", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300404621", 
          "type": "Type", 
          "_label": "Owner-Assigned Number"
        }
      ], 
      "content": "643"
    }
  ]
}
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(person3) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''Xavier Y. Zeelander''") class O1_4 literal; O2() class O2 name; O2-- type -->O2_0[Identifier] class O2_0 classstyle; O3(aat:300404621) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Owner-Assigned Number''") class O3_3 literal; O2-- classified_as -->O3 O2-- content -->O2_3("''643''") class O2_3 literal; O1-- identified_by -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Equivalent Resources

There may be other identifiers for the person available in external systems, such as ULAN or any of a dozen others. If all of the information needed about the person is available from that system, then it is recommended to simply use that identifier directly as the URI for the Person. If there is a requirement to maintain separate information about the person, then the equivalent property should be used to align the two. This might happen when, for example, the local data has additional information about which documents refer to the person, or more detailed biographical information.

Example:

The equivalent resource in ULAN for a local Vincent Van Gogh Person entity is http://vocab.getty.edu/ulan/500115588

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/4", 
  "type": "Person", 
  "_label": "Vincent Van Gogh", 
  "equivalent": [
    {
      "id": "http://vocab.getty.edu/ulan/500115588", 
      "type": "Person", 
      "_label": "Vincent Van Gogh"
    }
  ]
}
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(person4) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''Vincent Van Gogh''") class O1_4 literal; O2(ulan:500115588) class O2 actor; O2-- type -->O2_0[Person] class O2_0 classstyle; O2-- _label -->O2_3("''Vincent Van Gogh''") class O2_3 literal; O1-- equivalent -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Addresses

People and Organizations often have addresses, physical or online, via which they can be contacted. This includes mailing addresses, email addresses and so forth. These are referenced separately from Names and Identifiers, as many Actors might have the same contact point. The address is an identifier for a location or service, and is thus modeled as an Identifier. This means it does not have language information, unlike Names, but addresses are not inherently linguistic.

This Identifier is then related to the actor via the contact_point property. They can be classified_as different types, and use the content property to capture the address itself.

Example:

The person A. Bacchus has an email address, and can be contacted via mail at the museum they are employed by.

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/5", 
  "type": "Person", 
  "_label": "A. Bacchus", 
  "member_of": [
    {
      "type": "Group", 
      "_label": "Example City Museum", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300312281", 
          "type": "Type", 
          "_label": "Museum"
        }
      ], 
      "contact_point": [
        {
          "type": "Identifier", 
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300435687", 
              "type": "Type", 
              "_label": "Street Address"
            }
          ], 
          "content": "1200 Museum Drive, Example City"
        }
      ]
    }
  ], 
  "contact_point": [
    {
      "type": "Identifier", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300435686", 
          "type": "Type", 
          "_label": "Email Address"
        }
      ], 
      "content": "a.person@example.org"
    }
  ]
}
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(person5) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''A. Bacchus''") class O1_4 literal; O2() class O2 actor; O2-- type -->O2_0[Group] class O2_0 classstyle; O2-- _label -->O2_2("''Example City Museum''") class O2_2 literal; O3(aat:300312281) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Museum''") class O3_3 literal; O2-- classified_as -->O3 O4() class O4 name; O4-- type -->O4_0[Identifier] class O4_0 classstyle; O5(aat:300435687) class O5 type; O5-- type -->O5_0[Type] class O5_0 classstyle; O5-- _label -->O5_3("''Street Address''") class O5_3 literal; O4-- classified_as -->O5 O4-- content -->O4_3("''1200 Museum Drive, Example City''") class O4_3 literal; O2-- contact_point -->O4 O1-- member_of -->O2 O6() class O6 name; O6-- type -->O6_0[Identifier] class O6_0 classstyle; O7(aat:300435686) class O7 type; O7-- type -->O7_0[Type] class O7_0 classstyle; O7-- _label -->O7_3("''Email Address''") class O7_3 literal; O6-- classified_as -->O7 O6-- content -->O6_3("''a.person@example.org''") class O6_3 literal; O1-- contact_point -->O6
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Life Events

There are key events in a person or organization's lifespan that are often recorded as they contribute core information for determining the identity of the actor. These include the birth or formation, death or dissolution, and the period in which they carried out the work they are known for.

Birth and Death / Formation and Dissolution

Like the production of objects or the creation of texts, people and organizations also come into and out of existence through events. These events can take place at certain Places, and happen at certain times.

People are born in Birth events and die in Death events, related to the person by the born and died properties respectively. Groups are formed in Formation events, and dissolved in Dissolution events, referenced via the formed_by and dissolved_by properties. These classes are modeled not as Activities, but as Events that are not themselves carried out by anyone. They are the coming into existence instant of the person, not the conception of the couple, the labor of the mother, or potentially the killing by a murderer. These activities can be modeled as causes, as described below.

Birth and Death do not have any properties of their own that are used in the model, only those inherited from the event superclass, such as timespan and took_place_at.

!!! "note" "Inanimate Thing or Dead Person?" After death, people are still instances of Person which is a subclass of Actor, even though they can no longer carry out activities. People in comas or otherwise completely incapacitated also cannot carry out activities, but are not temporarily non-Actors. The modeling that death is a transformation from an instance of Person to an instance of Thing adds complexity for the sake of purity, but does not add any actual value. Thus a burial activity (aat:300263485) buries a Person, not a Thing-that-used-to-be-a-Person. However if the skeleton is then dug up and exhibited, it is exhibited as a Thing. There is, therefore, a transition at some undetermined point.

Example: The birth and death of Amanda B. Curtlett.

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/6", 
  "type": "Person", 
  "_label": "Amanda B. Curtlett", 
  "born": {
    "type": "Birth", 
    "timespan": {
      "type": "TimeSpan", 
      "begin_of_the_begin": "1767-01-09", 
      "end_of_the_end": "1767-01-12"
    }
  }, 
  "died": {
    "type": "Death", 
    "timespan": {
      "type": "TimeSpan", 
      "begin_of_the_begin": "1824-08-21", 
      "end_of_the_end": "1824-08-21"
    }, 
    "took_place_at": [
      {
        "type": "Place", 
        "_label": "Death Place"
      }
    ]
  }
}
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(person6) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''Amanda B. Curtlett''") class O1_4 literal; O2() class O2 event; O2-- type -->O2_0[Birth] class O2_0 classstyle; O3() class O3 timespan; O3-- type -->O3_0[TimeSpan] class O3_0 classstyle; O3-- begin_of_the_begin -->O3_2("''1767-01-09''") class O3_2 literal; O3-- end_of_the_end -->O3_3("''1767-01-12''") class O3_3 literal; O2-- timespan -->O3 O1-- born -->O2 O4() class O4 event; O4-- type -->O4_0[Death] class O4_0 classstyle; O5() class O5 timespan; O5-- type -->O5_0[TimeSpan] class O5_0 classstyle; O5-- begin_of_the_begin -->O5_2("''1824-08-21''") class O5_2 literal; O5-- end_of_the_end -->O5_3("''1824-08-21''") class O5_3 literal; O4-- timespan -->O5 O6() class O6 place; O6-- type -->O6_0[Place] class O6_0 classstyle; O6-- _label -->O6_2("''Death Place''") class O6_2 literal; O4-- took_place_at -->O6 O1-- died -->O4
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Example: The formation and dissolution of the ill-fated Example Organization

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/group/0", 
  "type": "Group", 
  "_label": "Example Organization", 
  "dissolved_by": {
    "type": "Dissolution", 
    "_label": "Dissolution of Example Organization", 
    "timespan": {
      "type": "TimeSpan", 
      "begin_of_the_begin": "1790-06-12T00:00:00", 
      "end_of_the_end": "1790-06-12T23:59:59"
    }
  }, 
  "formed_by": {
    "type": "Formation", 
    "_label": "Formation of Example Organization", 
    "timespan": {
      "type": "TimeSpan", 
      "begin_of_the_begin": "1639-12-01T00:00:00", 
      "end_of_the_end": "1639-12-31T23:59:59"
    }
  }
}
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(group0) class O1 actor; O1-- type -->O1_0[Group] class O1_0 classstyle; O1-- _label -->O1_4("''Example Organization''") class O1_4 literal; O2() class O2 event; O2-- type -->O2_0[Dissolution] class O2_0 classstyle; O2-- _label -->O2_2("''Dissolution of Example Organization''") class O2_2 literal; O3() class O3 timespan; O3-- type -->O3_0[TimeSpan] class O3_0 classstyle; O3-- begin_of_the_begin -->O3_2("''1790-06-12T00:00:00''") class O3_2 literal; O3-- end_of_the_end -->O3_3("''1790-06-12T23:59:59''") class O3_3 literal; O2-- timespan -->O3 O1-- dissolved_by -->O2 O4() class O4 event; O4-- type -->O4_0[Formation] class O4_0 classstyle; O4-- _label -->O4_2("''Formation of Example Organization''") class O4_2 literal; O5() class O5 timespan; O5-- type -->O5_0[TimeSpan] class O5_0 classstyle; O5-- begin_of_the_begin -->O5_2("''1639-12-01T00:00:00''") class O5_2 literal; O5-- end_of_the_end -->O5_3("''1639-12-31T23:59:59''") class O5_3 literal; O4-- timespan -->O5 O1-- formed_by -->O4
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Active Dates

It is often useful to know where and when the person or organization was active in their professional function. For example, an artist might have started painting when they were 20, stopped by 30, and only painted in Italy. This information can be used to help eliminate dubious attributions, for example.

The property for the Person or Group is carried_out, the inverse of the more familiar carried_out_by from Activities to Actors. The Activity resource should be classified_as aat:300393177, meaning the time when the actor is actively performing their primary professional function. The other properties of activities can and should also be used.

Example: Patrick Q. Robertson was active between 1910-01-01 and 1934-03-21

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/7", 
  "type": "Person", 
  "_label": "Patrick Q. Robertson", 
  "carried_out": [
    {
      "type": "Activity", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300393177", 
          "type": "Type", 
          "_label": "Professional Activities"
        }
      ], 
      "timespan": {
        "type": "TimeSpan", 
        "begin_of_the_begin": "1910-01-01", 
        "end_of_the_end": "1934-03-21"
      }
    }
  ]
}
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(person7) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''Patrick Q. Robertson''") class O1_4 literal; O2() class O2 event; O2-- type -->O2_0[Activity] class O2_0 classstyle; O3(aat:300393177) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Professional Activities''") class O3_3 literal; O2-- classified_as -->O3 O4() class O4 timespan; O4-- type -->O4_0[TimeSpan] class O4_0 classstyle; O4-- begin_of_the_begin -->O4_2("''1910-01-01''") class O4_2 literal; O4-- end_of_the_end -->O4_3("''1934-03-21''") class O4_3 literal; O2-- timespan -->O4 O1-- carried_out -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Descriptive Information

Biography

Biographical descriptions follow the LinguisticObject pattern, with biography (aat:300080102) as the classification. In all other respects, it is a vanilla usage of a resource being referred_to_by a particular text.

Example: David E. Frederickson's very short example biography.

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/8", 
  "type": "Person", 
  "_label": "David E. Frederickson", 
  "referred_to_by": [
    {
      "type": "LinguisticObject", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300435422", 
          "type": "Type", 
          "_label": "Biography Statement", 
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300418049", 
              "type": "Type", 
              "_label": "Brief Text"
            }
          ]
        }
      ], 
      "content": "David was born at a very early age."
    }
  ]
}
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(person8) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''David E. Frederickson''") class O1_4 literal; O2() class O2 infoobj; O2-- type -->O2_0[LinguisticObject] class O2_0 classstyle; O3(aat:300435422) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Biography Statement''") class O3_3 literal; O4(aat:300418049) class O4 type; O4-- type -->O4_0[Type] class O4_0 classstyle; O4-- _label -->O4_3("''Brief Text''") class O4_3 literal; O3-- classified_as -->O4 O2-- classified_as -->O3 O2-- content -->O2_3("''David was born at a very early age.''") class O2_3 literal; O1-- referred_to_by -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Nationality

Nationality is modeled as a Type that is associated with the Person, rather than as a Group as described in the CIDOC-CRM ontology document. This is because all of the people, across all time, who have had a particular nationality, cannot take action as a single coherent entity. As Group is a sub-class of Actor, it is not thought to be an appropriate class for this use. Without proliferating new classes (e.g. sets of people that are not actors), the traditional and perfectly consistent way to describe nationality is as a flag on the person, which is modeled as a Type.

The Type resource should have aat:300379842 as one of its classifications, such that a consuming application can find all of the nationality types from amongst the person's classifications. The nationality resource should either be from an established vocabulary of nationalities, or have an exact_match to an established vocabulary entry if additional local information is necessary to record, such as a particular name for that nationality.

Example: Jeremy K. Lintott is a British national.

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/9", 
  "type": "Person", 
  "_label": "Jeremy K. Lintott", 
  "classified_as": [
    {
      "id": "http://vocab.getty.edu/aat/300111159", 
      "type": "Type", 
      "_label": "British", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300379842", 
          "type": "Type", 
          "_label": "Nationality"
        }
      ]
    }
  ]
}
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(person9) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''Jeremy K. Lintott''") class O1_4 literal; O2(aat:300111159) class O2 type; O2-- type -->O2_0[Type] class O2_0 classstyle; O2-- _label -->O2_3("''British''") class O2_3 literal; O3(aat:300379842) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Nationality''") class O3_3 literal; O2-- classified_as -->O3 O1-- classified_as -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Ethnicity

Ethnicity is separate from nationality, as it refers to a social group or culture as opposed to a political nation or state. The same rationale as for Nationality being a classification also applies to ethnicity or culture -- it is unlikely to be a coherent collective capable of intentional action.

Gender

Gender is a debated and politically charged topic. The intent of this section is not to take a stand on those debates, but instead to allow the representation of data in museum and other information management systems to be made accessible.

Gender is not specifically discussed in CRM, in fact it was even deleted from a previous version, and the modeling follows the same classification pattern as for nationality and culture. This allows a plethora of gender diversity, and does not make any specific statements about biological versus assumed versus preferred gender roles. The gender must be classified_as aat:300055147.

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/10", 
  "type": "Person", 
  "_label": "Mabel N. Overton", 
  "classified_as": [
    {
      "id": "http://vocab.getty.edu/aat/300189557", 
      "type": "Type", 
      "_label": "Feminine", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300055147", 
          "type": "Type", 
          "_label": "Gender"
        }
      ]
    }
  ]
}
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(person10) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''Mabel N. Overton''") class O1_4 literal; O2(aat:300189557) class O2 type; O2-- type -->O2_0[Type] class O2_0 classstyle; O2-- _label -->O2_3("''Feminine''") class O2_3 literal; O3(aat:300055147) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Gender''") class O3_3 literal; O2-- classified_as -->O3 O1-- classified_as -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Digital Integration

Images of the person can also be provided, following the common pattern for digital resources. Only the basic image case is shown below, the other scenarios can easily be determined from the referenced digital integration for objects.

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/11", 
  "type": "Person", 
  "_label": "Gertrude H. Ingram", 
  "representation": [
    {
      "type": "VisualItem", 
      "digitally_carried_by": [
        {
          "id": "http://example.org/images/gertrude.jpg", 
          "type": "DigitalObject", 
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300215302", 
              "type": "Type", 
              "_label": "Digital Image"
            }
          ]
        }
      ]
    }
  ]
}
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(person11) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''Gertrude H. Ingram''") class O1_4 literal; O2() class O2 infoobj; O2-- type -->O2_0[VisualItem] class O2_0 classstyle; O3(http://example.org/images/gertrude.jpg) class O3 digital; O3-- type -->O3_0[DigitalObject] class O3_0 classstyle; O4(aat:300215302) class O4 type; O4-- type -->O4_0[Type] class O4_0 classstyle; O4-- _label -->O4_3("''Digital Image''") class O4_3 literal; O3-- classified_as -->O4 O2-- digitally_carried_by -->O3 O1-- representation -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)

Organization Membership

As discussed above, Organizations can be seen as the actor when it comes to their roles in various events. For example, an auction is likely to be carried out by an organization, and they can own and curate objects.

The only significantly new aspect to organizational actors, compared to people, is that they can have members. These members can be either sub-groups, such as a department within a museum, or individuals.

For example, a curator could be a member_of a department, which is in turn a member of the wider institution. This is simply the inverse of member relationship described in the base patterns.

{
  "@context": "https://linked.art/ns/v1/linked-art.json", 
  "id": "https://linked.art/example/person/12", 
  "type": "Person", 
  "_label": "Sameen T. Underwood", 
  "member_of": [
    {
      "type": "Group", 
      "_label": "Paintings Department", 
      "classified_as": [
        {
          "id": "http://vocab.getty.edu/aat/300263534", 
          "type": "Type", 
          "_label": "Department"
        }
      ], 
      "member_of": [
        {
          "type": "Group", 
          "_label": "Example Museum", 
          "classified_as": [
            {
              "id": "http://vocab.getty.edu/aat/300312281", 
              "type": "Type", 
              "_label": "Museum"
            }
          ]
        }
      ]
    }
  ]
}
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(person12) class O1 actor; O1-- type -->O1_0[Person] class O1_0 classstyle; O1-- _label -->O1_4("''Sameen T. Underwood''") class O1_4 literal; O2() class O2 actor; O2-- type -->O2_0[Group] class O2_0 classstyle; O2-- _label -->O2_2("''Paintings Department''") class O2_2 literal; O3(aat:300263534) class O3 type; O3-- type -->O3_0[Type] class O3_0 classstyle; O3-- _label -->O3_3("''Department''") class O3_3 literal; O2-- classified_as -->O3 O4() class O4 actor; O4-- type -->O4_0[Group] class O4_0 classstyle; O4-- _label -->O4_2("''Example Museum''") class O4_2 literal; O5(aat:300312281) class O5 type; O5-- type -->O5_0[Type] class O5_0 classstyle; O5-- _label -->O5_3("''Museum''") class O5_3 literal; O4-- classified_as -->O5 O2-- member_of -->O4 O1-- member_of -->O2
Other Representations: JSON-LD (Raw) | JSON-LD (Playground) | Turtle (Raw) | Turtle (Styled)