- Removed obsolete slots: `has_or_had_custodian_observation`, `provider`, and `specificity_annotation`. - Updated `has_or_had_score` slot to use `SpecificityScore` class and modified its description and examples. - Added new slots: `end_seconds`, `end_time`, `has_archive_path`, `has_or_had_custodian_name`, `protocol_name`, and `protocol_version`. - Introduced a script `check_annotation_types.py` to validate the presence and structure of `custodian_types` in YAML files. - Added a script `update_specificity.py` to automate updates related to `SpecificityAnnotation` to `SpecificityScore`.
72 lines
2.7 KiB
YAML
72 lines
2.7 KiB
YAML
id: https://nde.nl/ontology/hc/class/Agent
|
|
name: Agent
|
|
title: Agent
|
|
prefixes:
|
|
linkml: https://w3id.org/linkml/
|
|
hc: https://nde.nl/ontology/hc/
|
|
prov: http://www.w3.org/ns/prov#
|
|
foaf: http://xmlns.com/foaf/0.1/
|
|
schema: http://schema.org/
|
|
dcterms: http://purl.org/dc/terms/
|
|
default_prefix: hc
|
|
imports:
|
|
- linkml:types
|
|
- ../slots/has_or_had_identifier
|
|
- ../slots/has_or_had_name
|
|
- ../slots/has_or_had_type
|
|
classes:
|
|
Agent:
|
|
class_uri: prov:Agent
|
|
description: "An agent (person, organization, or software) that performs actions.\n\
|
|
\n**RULE 53 MIGRATION**:\nReplaces simple string slots with a structured agent\
|
|
\ model:\n- `is_or_was_acquired_by` → Agent (this class)\n- Supports typed agents\
|
|
\ (person, organization, software)\n\n**USAGE**:\n```yaml\nis_or_was_acquired_by:\n\
|
|
\ - agent_name: \"Dr. Jane Smith\"\n agent_type: person\n has_or_had_identifier:\n\
|
|
\ - identifier_scheme: ORCID\n identifier_value: \"0000-0001-2345-6789\"\
|
|
\n```\n\n**Ontological Alignment**:\n- **Primary** (`class_uri`): `prov:Agent`\
|
|
\ - PROV-O agent\n- **Close**: `foaf:Agent` - FOAF agent\n- **Close**: `schema:Person`\
|
|
\ / `schema:Organization` - Schema.org agents\n- **Close**: `dcterms:Agent`\
|
|
\ - Dublin Core agent\n\n**Use Cases**:\n- Specimen collectors (field biologists)\n\
|
|
- Artwork donors/sellers\n- Archive depositors\n- Record creators\n"
|
|
exact_mappings:
|
|
- prov:Agent
|
|
close_mappings:
|
|
- foaf:Agent
|
|
- dcterms:Agent
|
|
related_mappings:
|
|
- schema:Person
|
|
- schema:Organization
|
|
slots:
|
|
- has_or_had_name
|
|
- has_or_had_type
|
|
- has_or_had_identifier
|
|
slot_usage:
|
|
has_or_had_name:
|
|
range: uriorcurie
|
|
required: false
|
|
has_or_had_type:
|
|
range: uriorcurie
|
|
required: false
|
|
has_or_had_identifier:
|
|
range: uriorcurie
|
|
multivalued: true
|
|
required: false
|
|
annotations:
|
|
specificity_score: '0.25'
|
|
specificity_rationale: Broadly applicable - agents appear across all heritage
|
|
contexts.
|
|
template_specificity: '{"archive_search": 0.30, "museum_search": 0.30, "library_search":
|
|
0.30, "collection_discovery": 0.40, "person_research": 0.60, "location_browse":
|
|
0.15, "identifier_lookup": 0.35, "organizational_change": 0.25, "digital_platform":
|
|
0.20, "general_heritage": 0.25}'
|
|
custodian_types: '[''*'']'
|
|
examples:
|
|
- value: null
|
|
- value: null
|
|
- value:
|
|
has_or_had_identifier:
|
|
- identifier_scheme: ISIL
|
|
comments:
|
|
- Created per slot_fixes.yaml migration (2026-01-22)
|
|
- 'RULE 53: Replaces collector string slot with structured model'
|
|
- Generic agent class for persons, organizations, and software
|