glam/schemas/20251121/linkml/modules/classes/Person.yaml

130 lines
9.3 KiB
YAML

id: https://nde.nl/ontology/hc/class/Person
name: Person
title: Person Hub Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
crm: http://www.cidoc-crm.org/cidoc-crm/
prov: http://www.w3.org/ns/prov#
schema: http://schema.org/
pico: https://personsincontext.org/model#
foaf: http://xmlns.com/foaf/0.1/
dcterms: http://purl.org/dc/terms/
skos: http://www.w3.org/2004/02/skos/core#
default_prefix: hc
imports:
- linkml:types
- ../slots/person_id
- ../slots/preferred_label
- ../slots/has_or_had_participated_in_event
- ../slots/has_person_observation
- ../slots/created
- ../slots/modified
- ./Event
- ../slots/preferred_name
- ../slots/specificity_annotation
- ../slots/has_or_had_score
- ./PersonObservation
- ./SpecificityAnnotation
- ./TemplateSpecificityScore
- ./TemplateSpecificityType
- ./TemplateSpecificityTypes
- ../slots/created
- ../slots/has_or_had_participated_in_event
- ../slots/has_person_observation
- ../slots/modified
- ../slots/person_id
- ../slots/preferred_name
- ../slots/specificity_annotation
- ../slots/has_or_had_score
- ../slots/created
- ../slots/has_or_had_participated_in_event
- ../slots/has_person_observation
- ../slots/modified
- ../slots/person_id
- ../slots/preferred_name
- ../slots/specificity_annotation
- ../slots/has_or_had_score
classes:
Person:
class_uri: crm:E21_Person
description: "An abstract hub class that serves as the central connection point for all\ninformation about an individual person. The Person itself contains minimal\ninformation - essentially just its persistent identifier (person_id) and\npreferred name - and acts as a node to which all observations attach.\n\nThis hub pattern allows multiple observations from different sources to be\nconnected to a single logical person without asserting which observation\nis \"correct\" or \"primary\".\n\n**HUB ARCHITECTURE**:\n\n```\nPersonObservation \u2500\u2500refers_to_person\u2500\u2500> Person \u2500\u2500participated_in_events\u2500\u2500> Event\n \u2502 \u2191\n \u2502 \u2502\n(source: LinkedIn 2024) (source: Annual Report 2020)\n \u2502 \u2502\n \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\
\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n Multiple observations \u2192 Single hub\n```\n\n- The Person hub is identified by: https://nde.nl/ontology/hc/person/{person-slug}\n- All PersonObservations refer to the hub via refers_to_person\n- The hub persists while observations and interpretations evolve\n\n**DISTINCTION FROM PersonObservation**:\n\n| Aspect | Person (Hub) | PersonObservation |\n|--------|--------------|-------------------|\n| **Purpose** | Abstract identity | Evidence-based data |\n| **Contains** | Minimal: ID, preferred name | Rich: role, affiliation, dates |\n| **Temporal** | Timeless identity | Point-in-time snapshot |\n| **Source** | Canonical | From specific source |\n| **Count** | One per person | Many per person |\n\n**USE CASES**:\n\n1. **Cross-Custodian Career Tracking**:\n Person worked at Rijksmuseum (observation 1), then at Van Gogh Museum (observation 2).\n Both observations link\
\ to same Person hub.\n \n2. **Source Reconciliation**:\n LinkedIn says \"Director\", annual report says \"General Director\".\n Both are valid observations of the same Person.\n \n3. **Event Participation**:\n Person participated in merger event, relocation event, etc.\n Events link to Person hub, not individual observations.\n\n**PICO ALIGNMENT**:\n\nThe PiCo (Persons in Context) ontology establishes this hub/observation pattern:\n- `pico:Person`: The abstract identity (hub) - this class\n- `pico:PersonObservation`: Evidence-based data about a person\n\nKey relationships:\n- PersonObservation \u2192 Person via pico:observationOf (refers_to_person)\n- Person \u2192 PersonObservation via pico:hasObservation (inverse)\n\n**CIDOC-CRM ALIGNMENT**:\n\nMaps to crm:E21_Person which is defined as:\n\"This class comprises real persons who live or are assumed to have lived.\"\n\nE21_Person is a subclass of:\n- E39_Actor (shared superclass with organizations)\n- E20_Biological_Object\n\
\nKey relationships:\n- P48_has_preferred_identifier \u2192 person_id\n- P11i_participated_in \u2192 Event (via participated_in_events)\n\n**RELATIONSHIP TO Custodian**:\n\nPerson and Custodian are parallel hub classes, both subclasses of crm:E39_Actor:\n\n```\ncrm:E39_Actor\n\u251C\u2500\u2500 crm:E21_Person (Person hub)\n\u2502 \u2514\u2500\u2500 PersonObservation refers to Person\n\u2514\u2500\u2500 crm:E74_Group (Custodian hub)\n \u2514\u2500\u2500 CustodianObservation refers to Custodian\n```\n\nA Custodian can BE a Person (private collector), but typically:\n- Person = individual human\n- Custodian = organization/group/institution\n\n**EXAMPLE - Director with Multiple Roles**:\n\n```yaml\nPerson:\n person_id: \"https://nde.nl/ontology/hc/person/taco-dibbits\"\n preferred_name: \"Taco Dibbits\"\n participated_in_events:\n - \"https://nde.nl/ontology/hc/event/dibbits-appointed-director-2020\"\n\n# Observations from different sources:\nPersonObservation: # From LinkedIn\n\
\ person_name: \"Taco Dibbits\"\n role_title: \"General Director\"\n unit_affiliation: \"Executive Board\"\n refers_to_person: \"https://nde.nl/ontology/hc/person/taco-dibbits\"\n observation_source: \"LinkedIn profile, 2025-01-15\"\n\nPersonObservation: # From annual report\n person_name: \"T.J.S. Dibbits\"\n role_title: \"Algemeen Directeur\"\n refers_to_person: \"https://nde.nl/ontology/hc/person/taco-dibbits\"\n observation_source: \"Rijksmuseum Jaarverslag 2023\"\n```\n\n**EXAMPLE - Person Across Multiple Institutions**:\n\n```yaml\nPerson:\n person_id: \"https://nde.nl/ontology/hc/person/maria-garcia\"\n preferred_name: \"Maria Garcia\"\n participated_in_events:\n - \"https://nde.nl/ontology/hc/event/garcia-curator-appointment-2015\"\n - \"https://nde.nl/ontology/hc/event/garcia-director-appointment-2022\"\n\nPersonObservation: # Earlier role\n role_title: \"Curator of European Art\"\n unit_affiliation: \"Rijksmuseum\"\n role_start_date: \"2015-03-01\"\n\
\ role_end_date: \"2021-12-31\"\n refers_to_person: \"https://nde.nl/ontology/hc/person/maria-garcia\"\n\nPersonObservation: # Current role\n role_title: \"Director\"\n unit_affiliation: \"Mauritshuis\"\n role_start_date: \"2022-01-01\"\n refers_to_person: \"https://nde.nl/ontology/hc/person/maria-garcia\"\n```\n"
exact_mappings:
- crm:E21_Person
- pico:Person
- foaf:Person
close_mappings:
- schema:Person
- prov:Person
broad_mappings:
- crm:E39_Actor
- prov:Agent
- foaf:Agent
slots:
- created
- has_person_observation
- modified
- has_or_had_participated_in_event
- person_id
- preferred_name
- specificity_annotation
- has_or_had_score
slot_usage:
person_id:
range: uriorcurie
required: true
identifier: true
pattern: ^https://nde\.nl/ontology/hc/person/[a-z0-9-]+$
preferred_name:
range: string
required: false
has_or_had_participated_in_event:
range: Event
multivalued: true
required: false
has_person_observation:
range: PersonObservation
multivalued: true
required: false
inlined: false
comments:
- Person is the hub class for individual humans in the HC ontology
- PersonObservation entities attach to Person via refers_to_person
- Parallel architecture to Custodian hub class
- Enables linking same person across multiple institutions and sources
- preferred_name is minimal - rich data lives in PersonObservation
- participated_in_events links person to life/career events
examples:
- value:
person_id: https://nde.nl/ontology/hc/person/taco-dibbits
preferred_name: Taco Dibbits
has_or_had_participated_in_event:
- https://nde.nl/ontology/hc/event/dibbits-appointed-director-2020
has_person_observation:
- https://nde.nl/ontology/hc/observation/dibbits-linkedin-2025
- https://nde.nl/ontology/hc/observation/dibbits-rijksmuseum-annual-report-2024
description: Director of Rijksmuseum as Person hub with multiple observations
- value:
person_id: https://nde.nl/ontology/hc/person/jan-de-vries-1985
preferred_name: Jan de Vries
description: Person with disambiguator (birth year)
- value:
person_id: https://nde.nl/ontology/hc/person/maria-garcia
preferred_name: Maria Garcia
has_person_observation:
- https://nde.nl/ontology/hc/observation/garcia-rijksmuseum-2015
- https://nde.nl/ontology/hc/observation/garcia-mauritshuis-2022
has_or_had_participated_in_event:
- https://nde.nl/ontology/hc/event/garcia-curator-appointment-2015
- https://nde.nl/ontology/hc/event/garcia-director-appointment-2022
description: Person with career spanning multiple institutions - observations from each role
annotations:
specificity_score: 0.1
specificity_rationale: Generic utility class/slot created during migration
custodian_types: "['*']"
custodian_types_rationale: Universal utility concept