glam/schemas/20251121/linkml/modules/classes/DualClassLink.yaml
kempersc 174a420c08
All checks were successful
Deploy Frontend / build-and-deploy (push) Successful in 3m57s
refactor(schema): centralize 1515 inline slot definitions per Rule 48
- Remove inline slot definitions from 144 class files
- Create 7 new centralized slot files in modules/slots/:
  - custodian_type_broader.yaml
  - custodian_type_narrower.yaml
  - custodian_type_related.yaml
  - definition.yaml
  - finding_aid_access_restriction.yaml
  - finding_aid_description.yaml
  - finding_aid_temporal_coverage.yaml
- Add centralize_inline_slots.py automation script
- Update manifest with new timestamp

Rule 48: Class files must NOT define inline slots - all slots
must be imported from modules/slots/ directory.

Note: Pre-existing IdentifierFormat duplicate class definition
(in Standard.yaml and IdentifierFormat.yaml) not addressed in
this commit - requires separate schema refactor.
2026-01-11 22:02:14 +01:00

37 lines
1 KiB
YAML

id: https://nde.nl/ontology/hc/class/DualClassLink
name: DualClassLink
title: Dual-Class Link
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
rdfs: http://www.w3.org/2000/01/rdf-schema#
skos: http://www.w3.org/2004/02/skos/core#
default_prefix: hc
imports:
- linkml:types
- ../enums/DualClassPatternEnum
- ../slots/dual_class_role
- ../slots/link_rationale
- ../slots/linked_class_name
classes:
DualClassLink:
class_uri: hc:DualClassLink
description: 'Structured metadata for dual-class pattern linking.
Connects custodian types to their corresponding collection types and vice versa.
**Pattern**:
- Custodian type (organization) ↔ Collection type (rico:RecordSetType)
- E.g., AcademicArchive (custodian) ↔ AcademicArchiveRecordSetType (collection)
'
slots:
- dual_class_role
- linked_class_name
- link_rationale
annotations:
specificity_score: 0.4
specificity_rationale: Structural pattern for heritage ontology class linking