From 86b9dcebff14851a862a74353dd942cc3bd5826d Mon Sep 17 00:00:00 2001 From: kempersc Date: Sun, 15 Feb 2026 15:54:26 +0100 Subject: [PATCH] Refactor Digital Platform Classes and Introduce New Classes - Renamed DigitalPlatformV2DataSource to DigitalPlatformDataSource with updated description and mappings. - Updated DigitalPlatformV2KeyContact to DigitalPlatformKeyContact, enhancing description and mappings. - Refined DigitalPlatformV2OrganizationProfile to DigitalPlatformOrganizationProfile, improving description and slot usage. - Revised DigitalPlatformV2OrganizationStatus to DigitalPlatformOrganizationStatus, clarifying description and mappings. - Changed DigitalPlatformV2PrimaryPlatform to DigitalPlatformPrimaryPlatform, enhancing description and slot definitions. - Updated DigitalPlatformV2Provenance to DigitalPlatformProvenance, refining description and mappings. - Revised DigitalPlatformV2ServiceDetails to DigitalPlatformServiceDetails, improving description and mappings. - Changed DigitalPlatformV2TransformationMetadata to DigitalPlatformTransformationMetadata, enhancing description and mappings. - Added new classes: DetectionThreshold, DeviceType, DeviceTypes, DiarizationStatus, DigitalArchive, DigitalArchiveRecordSetType, DigitalArchiveRecordSetTypes, and DigitalConfidence with appropriate descriptions and mappings. - Established rules for class descriptions, multilingual support, and slot definitions to ensure consistency and clarity across the schema. --- .opencode/rules/class-file-name-sync-rule.md | 54 +++ .../linkml/class-description-quality-rule.md | 228 +++++++++++++ .../linkml/class-files-no-inline-slots.md | 133 ++++++++ .../linkml/class-multilingual-support-rule.md | 158 +++++++++ .../no-version-indicators-in-names-rule.md | 53 +++ .../schemas/20251121/linkml/manifest.json | 2 +- schemas/20251121/linkml/manifest.json | 2 +- .../linkml/modules/classes/Department.yaml | 144 +++----- .../modules/classes/DepartmentalArchives.yaml | 123 +++---- .../DepartmentalArchivesRecordSetType.yaml | 41 ++- .../DepartmentalArchivesRecordSetTypes.yaml | 67 ++-- .../modules/classes/DeploymentEvent.yaml | 54 ++- .../modules/classes/DepositArchive.yaml | 107 +++--- .../classes/DepositArchiveRecordSetType.yaml | 44 ++- .../classes/DepositArchiveRecordSetTypes.yaml | 34 +- .../classes/DepositingOrganization.yaml | 22 +- .../linkml/modules/classes/Description.yaml | 105 ++---- .../modules/classes/DetectedEntity.yaml | 150 ++------ .../linkml/modules/classes/DetectedFace.yaml | 22 +- .../modules/classes/DetectedLandmark.yaml | 22 +- .../linkml/modules/classes/DetectedLogo.yaml | 22 +- .../modules/classes/DetectedObject.yaml | 22 +- .../modules/classes/DetectionLevelType.yaml | 53 ++- .../modules/classes/DetectionLevelTypes.yaml | 1 + .../modules/classes/DetectionThreshold.yaml | 27 ++ .../linkml/modules/classes/DeviceType.yaml | 26 ++ .../linkml/modules/classes/DeviceTypes.yaml | 61 ++++ .../modules/classes/DiarizationStatus.yaml | 22 ++ .../modules/classes/DigitalArchive.yaml | 37 ++ .../classes/DigitalArchiveRecordSetType.yaml | 24 ++ .../classes/DigitalArchiveRecordSetTypes.yaml | 73 ++++ .../modules/classes/DigitalConfidence.yaml | 30 ++ .../modules/classes/DigitalInstantiation.yaml | 26 +- .../modules/classes/DigitalPlatform.yaml | 322 ++---------------- .../modules/classes/DigitalPlatformScore.yaml | 29 +- .../modules/classes/DigitalPlatformType.yaml | 165 +-------- .../DigitalPlatformUserIdentifier.yaml | 62 +--- .../modules/classes/DigitalPlatformV2.yaml | 30 +- .../DigitalPlatformV2DataQualityNotes.yaml | 27 +- .../classes/DigitalPlatformV2DataSource.yaml | 28 +- .../classes/DigitalPlatformV2KeyContact.yaml | 24 +- .../DigitalPlatformV2OrganizationProfile.yaml | 24 +- .../DigitalPlatformV2OrganizationStatus.yaml | 30 +- .../DigitalPlatformV2PrimaryPlatform.yaml | 30 +- .../classes/DigitalPlatformV2Provenance.yaml | 20 +- .../DigitalPlatformV2ServiceDetails.yaml | 26 +- ...gitalPlatformV2TransformationMetadata.yaml | 26 +- 47 files changed, 1519 insertions(+), 1313 deletions(-) create mode 100644 .opencode/rules/class-file-name-sync-rule.md create mode 100644 .opencode/rules/linkml/class-description-quality-rule.md create mode 100644 .opencode/rules/linkml/class-files-no-inline-slots.md create mode 100644 .opencode/rules/linkml/class-multilingual-support-rule.md create mode 100644 .opencode/rules/no-version-indicators-in-names-rule.md create mode 100644 schemas/20251121/linkml/modules/classes/DetectionThreshold.yaml create mode 100644 schemas/20251121/linkml/modules/classes/DeviceType.yaml create mode 100644 schemas/20251121/linkml/modules/classes/DeviceTypes.yaml create mode 100644 schemas/20251121/linkml/modules/classes/DiarizationStatus.yaml create mode 100644 schemas/20251121/linkml/modules/classes/DigitalArchive.yaml create mode 100644 schemas/20251121/linkml/modules/classes/DigitalArchiveRecordSetType.yaml create mode 100644 schemas/20251121/linkml/modules/classes/DigitalArchiveRecordSetTypes.yaml create mode 100644 schemas/20251121/linkml/modules/classes/DigitalConfidence.yaml diff --git a/.opencode/rules/class-file-name-sync-rule.md b/.opencode/rules/class-file-name-sync-rule.md new file mode 100644 index 0000000000..dba1a3dc32 --- /dev/null +++ b/.opencode/rules/class-file-name-sync-rule.md @@ -0,0 +1,54 @@ +# Rule: Class File Name Must Match Class Label/Name + +## 🚨 Critical + +When a class label/name is changed, the class file name must be renamed to match. + +This keeps class modules discoverable, prevents stale imports, and avoids long-term naming drift. + +## The Rule + +1. If the primary class identifier changes, rename the file in the same edit set. + - Change triggers include updates to: + - top-level `name:` + - class key under `classes:` + - canonical class label used for module naming + +2. File naming must reflect the canonical class name. + - ✅ `DigitalPlatformProfile.yaml` for class `DigitalPlatformProfile` + - ❌ `DigitalPlatformV2.yaml` for class `DigitalPlatformProfile` + +3. After renaming a file, update all references. + - `imports:` in other class/slot/type files + - manifests/indexes/build inputs + - any generated or curated mapping lists that include file paths + +4. Keep semantic names versionless. + - Do not preserve old versioned file names when class names are de-versioned. + - Coordinate with `no-version-indicators-in-names-rule.md`. + +## Required Checklist + +- [ ] File name matches canonical class name +- [ ] `id:` and `name:` are internally consistent +- [ ] All import paths updated +- [ ] Search confirms no stale old file-name references remain +- [ ] YAML parses after rename + +## Example + +Before: +```yaml +# file: DigitalPlatformV2.yaml +name: DigitalPlatformProfile +classes: + DigitalPlatformProfile: +``` + +After: +```yaml +# file: DigitalPlatformProfile.yaml +name: DigitalPlatformProfile +classes: + DigitalPlatformProfile: +``` diff --git a/.opencode/rules/linkml/class-description-quality-rule.md b/.opencode/rules/linkml/class-description-quality-rule.md new file mode 100644 index 0000000000..3b2a8d027e --- /dev/null +++ b/.opencode/rules/linkml/class-description-quality-rule.md @@ -0,0 +1,228 @@ +# Class Description Quality Rule + +## Rule: Write Dictionary-Style Definitions Without Repeating the Class Name + +When writing class descriptions, follow these principles. + +### 1. No Repetition of Class Name Components + +**WRONG:** +```yaml +AcademicArchiveRecordSetType: + description: >- + A classification type for archival record sets created by academic + institutions. This class represents the record set type... +``` + +**CORRECT:** +```yaml +AcademicArchiveRecordSetType: + description: >- + Category for grouping documentary materials accumulated by tertiary + educational institutions during their administrative, academic, and + operational activities. +``` + +The description should define the concept using synonyms and related terms, not repeat words from the class name. + +### 2. MIGRATE Structured Data Before Removing from Descriptions + +**CRITICAL**: When a description contains structured data (examples, typical contents, alignment notes, etc.), you MUST: + +1. **First check** if the structured data already exists in proper LinkML fields +2. **If NOT present**: ADD it to the appropriate structured field +3. **ONLY THEN**: Remove it from the description + +**Never simply delete structured content from descriptions without preserving it elsewhere.** + +**MIGRATION CHECKLIST:** + +| Content Type | Target Field | Example | +|--------------|--------------|---------| +| Example instances | `examples:` | `- value: {...} description: "..."` | +| Typical contents | `keywords:` or `comments:` | List of typical materials | +| Alignment explanations | `broad_mappings`, `related_mappings` | Ontology references | +| Usage notes | `comments:` | Operational guidance | +| Provenance notes | `comments:` or `annotations:` | Historical context | +| Privacy/legal notes | `comments:` | Access restrictions | +| Definition details | Keep in description | Core semantic definition | + +**WRONG - Deleting without migration:** +```yaml +# BEFORE (has rich content) +description: | + Records documenting student academic careers. + + **Typical Contents**: + - Enrollment records + - Academic transcripts + - Graduation records + + Subject to privacy regulations (FERPA, GDPR). + +# AFTER (lost information!) - DON'T DO THIS +description: >- + Records documenting student academic careers. +``` + +**CORRECT - Migrate first, then clean:** +```yaml +# Step 1: Add to structured fields +description: >- + Records documenting student academic careers. +keywords: + - enrollment records + - academic transcripts + - graduation records +comments: + - Subject to privacy regulations (FERPA, GDPR, AVG) + - Access restrictions typically apply for records less than 75 years old + +# Step 2: Now description is clean but no information lost +``` + +### 3. No Structured Data or Meta-Discussion in Descriptions + +After migration, descriptions should contain only the definition. Do not include: +- Alignment explanations (use `broad_mappings`, `close_mappings`, `exact_mappings`) +- Pattern explanations (use `see_also`, `comments`) +- Usage examples (use `examples:` annotation) +- Rationale for mappings (use `comments:` or `annotations:`) +- Typical contents lists (use `keywords:` or `comments:`) + +**WRONG:** +```yaml +description: >- + A type for X. + + **RiC-O Alignment**: Maps to rico:RecordSetType because... + + **Pattern**: This is part of a dual-class pattern with Y. + + **Examples**: Administrative fonds, student records... +``` + +**CORRECT:** +```yaml +description: >- + Category for grouping documentary materials accumulated by tertiary + educational institutions. + +broad_mappings: + - rico:RecordSetType +see_also: + - AcademicArchive +keywords: + - administrative fonds + - student records +examples: + - value: {...} + description: Administrative fonds containing governance records +``` + +### 4. Use Folded Block Scalar (`>-`) for Descriptions + +Use `>-` (folded, strip) instead of `|` (literal) to ensure clean paragraph formatting in generated documentation. + +**WRONG:** +```yaml +description: | + A type for X. + This spans multiple lines. +``` + +**CORRECT:** +```yaml +description: >- + A type for X. This will be formatted as a single clean paragraph + in the generated documentation. +``` + +### 5. Use LinkML `examples:` Annotation for Examples + +Structure examples properly with `value:` and `description:` keys. + +```yaml +examples: +- value: + has_type: hc:ArchiveOrganizationType + has_label: University Administrative Records + description: Administrative fonds containing governance records +``` + +### 6. Keywords vs Examples - Know the Difference + +**CRITICAL**: Do not confuse `keywords:` with `examples:`. They serve different purposes: + +| Field | Purpose | Content Type | +|-------|---------|--------------| +| `keywords:` | Search terms, topics, categories | List of strings (topics/materials) | +| `examples:` | Valid instance data demonstrations | Structured objects with `value` and `description` | + +**Keywords** = Topics, material types, categories that describe what the class is about: +```yaml +keywords: + - enrollment records # type of material + - academic transcripts # type of material + - graduation records # type of material +``` + +**Examples** = Actual instances of the class with populated slots: +```yaml +examples: +- value: + has_type: hc:ArchiveOrganizationType + has_label: Registrar Student Records + has_note: Enrollment, transcripts, graduation records + description: Student records series from the registrar's office +``` + +**WRONG - Using keywords as examples:** +```yaml +# DON'T: "enrollment records" is not an instance of AcademicStudentRecordSeries +examples: +- value: enrollment records + description: Type of student record +``` + +**CORRECT - Keywords for topics, examples for instances:** +```yaml +keywords: + - enrollment records + - academic transcripts + - graduation records +examples: +- value: + has_type: hc:ArchiveOrganizationType + has_label: Historical Student Records + has_note: Pre-1950 student records with fewer access restrictions + description: Historical student records open for research access +``` + +### 7. Multiple Examples for Different Use Cases + +Provide multiple examples to show different contexts or configurations: + +```yaml +examples: +- value: + has_type: hc:ArchiveOrganizationType + has_label: Recent Student Records + description: Current records subject to privacy restrictions +- value: + has_type: hc:ArchiveOrganizationType + has_label: Historical Student Records + description: Records 75+ years old with fewer access restrictions +``` + +## Summary + +| Element | Placement | +|---------|-----------| +| Definition | `description:` (concise, no repetition) | +| Ontology mappings | `exact_mappings`, `broad_mappings`, etc. | +| Related concepts | `see_also:` | +| Usage notes | `comments:` | +| Metadata | `annotations:` | +| Examples | `examples:` with `value` and `description` | +| Typical contents | `keywords:` or `comments:` | diff --git a/.opencode/rules/linkml/class-files-no-inline-slots.md b/.opencode/rules/linkml/class-files-no-inline-slots.md new file mode 100644 index 0000000000..994dd0bd0f --- /dev/null +++ b/.opencode/rules/linkml/class-files-no-inline-slots.md @@ -0,0 +1,133 @@ +# Rule 48: Class Files Must Not Define Inline Slots + +🚨 **CRITICAL**: LinkML class files in `schemas/20251121/linkml/modules/classes/` MUST NOT define their own slots inline. All slots MUST be imported from the centralized `modules/slots/` directory. + +## Problem Statement + +When class files define their own slots (e.g., `AccessRestriction.yaml` defining its own slot properties), this creates: + +1. **Duplication**: Same slot semantics defined in multiple places +2. **Inconsistency**: Slot definitions may diverge between files +3. **Frontend Issues**: LinkML viewer cannot properly render slot relationships +4. **Maintenance Burden**: Changes require updates in multiple locations + +## Architecture Requirement + +``` +schemas/20251121/linkml/ +├── modules/ +│ ├── classes/ # Class definitions ONLY +│ │ └── *.yaml # NO inline slot definitions +│ ├── slots/ # ALL slot definitions go here +│ │ └── *.yaml # One file per slot or logical group +│ └── enums/ # Enumeration definitions +``` + +## Correct Pattern + +**Class file** (`modules/classes/AccessRestriction.yaml`): + +```yaml +id: https://nde.nl/ontology/hc/class/AccessRestriction +name: AccessRestriction +prefixes: + hc: https://nde.nl/ontology/hc/ + linkml: https://w3id.org/linkml/ + +imports: + - linkml:types + - ../slots/restriction_type # Import slot from centralized location + - ../slots/restriction_reason + - ../slots/applies_from + - ../slots/applies_until + +default_range: string + +classes: + AccessRestriction: + class_uri: hc:AccessRestriction + description: >- + Describes access restrictions on heritage collections or items. + slots: + - restriction_type # Reference slot by name + - restriction_reason + - applies_from + - applies_until +``` + +**Slot file** (`modules/slots/restriction_type.yaml`): + +```yaml +id: https://nde.nl/ontology/hc/slot/restriction_type +name: restriction_type +prefixes: + hc: https://nde.nl/ontology/hc/ + schema: http://schema.org/ + linkml: https://w3id.org/linkml/ + +imports: + - linkml:types + +slots: + restriction_type: + slot_uri: hc:restrictionType + description: The type of access restriction applied. + range: string + exact_mappings: + - schema:accessMode +``` + +## Anti-Pattern (WRONG) + +**DO NOT** define slots inline in class files: + +```yaml +# WRONG - AccessRestriction.yaml with inline slots +classes: + AccessRestriction: + slots: + - restriction_type + +slots: # ❌ DO NOT define slots here + restriction_type: + description: Type of restriction + range: string +``` + +## Identifying Violations + +To find class files that incorrectly define slots: + +```bash +# Find class files with inline slot definitions +grep -l "^slots:" schemas/20251121/linkml/modules/classes/*.yaml +``` + +Files that match need refactoring: +1. Extract slot definitions to `modules/slots/` +2. Add imports for the extracted slots +3. Remove inline `slots:` section from class file + +## Migration Workflow + +1. **Identify inline slots** in class file +2. **Check if slot exists** in `modules/slots/` +3. **If exists**: Remove inline definition, add import +4. **If not exists**: Create new slot file in `modules/slots/`, then add import +5. **Validate**: Run `linkml-validate` to ensure schema integrity +6. **Update manifest**: Regenerate `manifest.json` if needed + +## Rationale + +- **Single Source of Truth**: Each slot defined exactly once +- **Reusability**: Slots can be used across multiple classes +- **Frontend Compatibility**: LinkML viewer depends on centralized slots for proper edge rendering in UML diagrams +- **Semantic Consistency**: `slot_uri` and mappings defined once, applied everywhere +- **Maintenance**: Changes to slot semantics applied in one place + +## See Also + +- Rule 38: Slot Centralization and Semantic URI Requirements +- Rule 39: Slot Naming Convention (RiC-O Style) +- Rule 42: No Ontology Prefixes in Slot Names +- Rule 43: Slot Nouns Must Be Singular diff --git a/.opencode/rules/linkml/class-multilingual-support-rule.md b/.opencode/rules/linkml/class-multilingual-support-rule.md new file mode 100644 index 0000000000..1b5e893bf6 --- /dev/null +++ b/.opencode/rules/linkml/class-multilingual-support-rule.md @@ -0,0 +1,158 @@ +# Class Multilingual Support Rule + +## Rule: All Class Files Must Include Multilingual Descriptions and Aliases + +Every class file must provide `alt_descriptions` and `structured_aliases` in all supported languages to ensure internationalization and interoperability with multilingual heritage systems. + +### Required Languages + +| Code | Language | +|------|----------| +| `nl` | Dutch | +| `de` | German | +| `fr` | French | +| `es` | Spanish | +| `ar` | Arabic | +| `id` | Indonesian | +| `zh` | Chinese | + +### Structure + +#### alt_descriptions + +Provide translated descriptions for each supported language: + +```yaml +classes: + AcademicArchiveRecordSetType: + description: >- + Category for grouping documentary materials accumulated by tertiary + educational institutions during their administrative, academic, and + operational activities. + alt_descriptions: + nl: >- + Categorie voor het groeperen van documentair materiaal dat door + hogeronderwijsinstellingen is verzameld tijdens hun administratieve, + academische en operationele activiteiten. + de: >- + Kategorie zur Gruppierung von Dokumentenmaterial, das von Hochschulen + während ihrer administrativen, akademischen und betrieblichen Aktivitäten + angesammelt wurde. + fr: >- + Catégorie de regroupement des documents accumulés par les établissements + d'enseignement supérieur au cours de leurs activités administratives, + académiques et opérationnelles. + es: >- + Categoría para agrupar materiales documentales acumulados por instituciones + de educación superior durante sus actividades administrativas, académicas + y operativas. + ar: >- + فئة لتجميع المواد الوثائقية التي جمعتها مؤسسات التعليم العالي + خلال أنشطتها الإدارية والأكاديمية والتشغيلية. + id: >- + Kategori untuk mengelompokkan materi dokumenter yang dikumpulkan oleh + institusi pendidikan tinggi selama aktivitas administratif, akademik, + dan operasional mereka. + zh: >- + 高等教育机构在行政、学术和运营活动中积累的文献材料的分类类别。 +``` + +#### structured_aliases + +Provide language-specific aliases/alternative names: + +```yaml +classes: + AcademicArchiveRecordSetType: + structured_aliases: + - literal_form: academisch archiefbestand + in_language: nl + - literal_form: Hochschularchivbestand + in_language: de + - literal_form: fonds d'archives académiques + in_language: fr + - literal_form: fondo de archivo académico + in_language: es + - literal_form: أرشيف أكاديمي + in_language: ar + - literal_form: koleksi arsip akademik + in_language: id + - literal_form: 学术档案集 + in_language: zh +``` + +### Complete Example + +```yaml +id: https://nde.nl/ontology/hc/class/AcademicArchiveRecordSetType +name: AcademicArchiveRecordSetType +title: Academic Archive Record Set Type +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + skos: http://www.w3.org/2004/02/skos/core# +default_prefix: hc +imports: + - linkml:types + - ../classes/CollectionType +classes: + AcademicArchiveRecordSetType: + description: >- + Category for grouping documentary materials accumulated by tertiary + educational institutions during their administrative, academic, and + operational activities. + alt_descriptions: + nl: >- + Categorie voor het groeperen van documentair materiaal dat door + hogeronderwijsinstellingen is verzameld. + de: >- + Kategorie zur Gruppierung von Dokumentenmaterial, das von Hochschulen + angesammelt wurde. + fr: >- + Catégorie de regroupement des documents accumulés par les établissements + d'enseignement supérieur. + es: >- + Categoría para agrupar materiales documentales acumulados por instituciones + de educación superior. + ar: >- + فئة لتجميع المواد الوثائقية التي جمعتها مؤسسات التعليم العالي. + id: >- + Kategori untuk mengelompokkan materi dokumenter yang dikumpulkan oleh + institusi pendidikan tinggi. + zh: >- + 高等教育机构积累的文献材料的分类类别。 + structured_aliases: + - literal_form: academisch archiefbestand + in_language: nl + - literal_form: Hochschularchivbestand + in_language: de + - literal_form: fonds d'archives académiques + in_language: fr + - literal_form: fondo de archivo académico + in_language: es + - literal_form: أرشيف أكاديمي + in_language: ar + - literal_form: koleksi arsip akademik + in_language: id + - literal_form: 学术档案集 + in_language: zh + is_a: CollectionType + # ... rest of class definition +``` + +### Translation Guidelines + +1. **Accuracy over literal translation**: Translate the concept, not word-by-word +2. **Use domain-appropriate terminology**: Use archival/library/museum terminology standard in each language +3. **Consult existing vocabularies**: Reference RiC-O, ISAD(G), AAT translations when available +4. **Maintain consistency**: Same term should be translated consistently across all class files + +### Checklist + +For each class file, verify: + +- [ ] `alt_descriptions` present with all 7 languages +- [ ] `structured_aliases` present with all 7 languages +- [ ] Translations are accurate and domain-appropriate +- [ ] Arabic text is properly encoded (RTL) +- [ ] Chinese uses simplified characters (zh) unless traditional specified (zh-hant) diff --git a/.opencode/rules/no-version-indicators-in-names-rule.md b/.opencode/rules/no-version-indicators-in-names-rule.md new file mode 100644 index 0000000000..e2105984ef --- /dev/null +++ b/.opencode/rules/no-version-indicators-in-names-rule.md @@ -0,0 +1,53 @@ +# Rule: No Version Indicators in Names + +## 🚨 Critical + +Do not include version identifiers in **class names**, **slot names**, or **enum names**. + +Version tags in semantic names create churn, break reuse, and force unnecessary migrations. + +## The Rule + +1. Use stable semantic names for LinkML elements. + - ✅ `DigitalPlatform` + - ❌ `DigitalPlatformV2` + +2. If a model evolves, keep the name and update metadata/provenance. + - Track revision in changelog, annotations, or transformation metadata. + - Do not encode `v2`, `v3`, `_2026`, `beta`, `final` in the element name. + +3. Apply this to all naming surfaces: + - `classes:` keys + - `slots:` keys + - `enums:` keys + - `name:` values in module files + +## Allowed Versioning Locations + +- File-level changelog/comments +- Dedicated metadata classes/slots (e.g., transformation metadata) +- External release tags (git tags, manifest versions) + +## Migration Guidance + +When you encounter versioned names: + +1. Rename semantic elements to stable names. +2. Update references/imports/usages accordingly. +3. Preserve provenance of the migration in comments/annotations. + +## Examples + +✅ Correct: +```yaml +classes: + DigitalPlatformTransformationMetadata: + description: Metadata about record transformation steps. +``` + +❌ Wrong: +```yaml +classes: + DigitalPlatformV2TransformationMetadata: + description: Metadata about V2 transformation. +``` diff --git a/frontend/public/schemas/20251121/linkml/manifest.json b/frontend/public/schemas/20251121/linkml/manifest.json index 856b3ec207..55b8ee43a0 100644 --- a/frontend/public/schemas/20251121/linkml/manifest.json +++ b/frontend/public/schemas/20251121/linkml/manifest.json @@ -1,5 +1,5 @@ { - "generated": "2026-02-15T13:45:47.467Z", + "generated": "2026-02-15T14:49:36.432Z", "schemaRoot": "/schemas/20251121/linkml", "totalFiles": 2369, "categoryCounts": { diff --git a/schemas/20251121/linkml/manifest.json b/schemas/20251121/linkml/manifest.json index 55b8ee43a0..5f4232b3b4 100644 --- a/schemas/20251121/linkml/manifest.json +++ b/schemas/20251121/linkml/manifest.json @@ -1,5 +1,5 @@ { - "generated": "2026-02-15T14:49:36.432Z", + "generated": "2026-02-15T14:54:26.856Z", "schemaRoot": "/schemas/20251121/linkml", "totalFiles": 2369, "categoryCounts": { diff --git a/schemas/20251121/linkml/modules/classes/Department.yaml b/schemas/20251121/linkml/modules/classes/Department.yaml index 678382eb7f..44726078b7 100644 --- a/schemas/20251121/linkml/modules/classes/Department.yaml +++ b/schemas/20251121/linkml/modules/classes/Department.yaml @@ -31,146 +31,84 @@ imports: classes: Department: class_uri: org:OrganizationalUnit - description: "Formal department within a heritage custodian organization.\n\n**DEFINITION**:\n\nDepartment represents a FORMAL organizational unit within a heritage\ninstitution, often with regulatory, legal, or governance significance.\nDepartments typically have:\n- Official mandate or charter\n- Defined responsibilities\n- Budget allocation\n- Reporting structure\n- Staff positions with formal titles\n\n**DISTINCTION FROM OrganizationalStructure**:\n\n| Department | OrganizationalStructure |\n|------------|-------------------------|\n| Formal, often codified | Informal, operational |\n| Legal/regulatory basis | Pragmatic organization |\n| Budget line items | Ad-hoc groupings |\n| Charter/mandate | Flexible scope |\n| \"Archives Department\" | \"Digital Preservation Team\" |\n\nBoth use `org:OrganizationalUnit` but represent different levels of formality.\n\n**ARCHIVE CONTEXT**:\n\nIn archival institutions, \"department\" often refers to:\n- Record groups managed (e.g., \"Colonial\ - \ Records Department\")\n- Functional areas (e.g., \"Preservation Department\")\n- Public service units (e.g., \"Reference Department\")\n\nArchiveTypeEnum value \"DEPARTMENT\" (Q107679962) maps to this class when\nused to describe archival organizational units.\n\n**Wikidata Alignment**:\n- Q2366457 (department - organizational unit)\n- Q107679962 (archival unit)\n\n**W3C ORG Alignment**:\n\n`org:OrganizationalUnit` - \"An Organization such as a University Support Unit\nwhich is part of some larger FormalOrganization and only has full recognition\nwithin the context of that FormalOrganization.\"\n\n**RELATIONSHIP TO OTHER CLASSES**:\n\n```\nCustodian (hub)\n \u2502\n \u251C\u2500\u2500 organizational_structure \u2192 OrganizationalStructure[] (informal)\n \u2502\n \u2514\u2500\u2500 departments \u2192 Department[] (THIS CLASS - formal)\n \u251C\u2500\u2500 department_head \u2192 PersonObservation\n \u251C\u2500\u2500 manages_collections \u2192 Collection[]\n \ - \ \u251C\u2500\u2500 parent_department \u2192 Department\n \u251C\u2500\u2500 sub_departments \u2192 Department[]\n \u2514\u2500\u2500 located_at \u2192 AuxiliaryPlace\n```\n\n**USE CASES**:\n\n1. **National Archive Department**:\n - department_name: \"Colonial Records Department\"\n - mandate: \"Preserves and provides access to colonial-era government records\"\n - manages_collections: [Colonial Administration Fonds, Trade Company Records]\n \n2. **Museum Department**:\n - department_name: \"Paintings Department\"\n - department_head: \"Dr. Jane Smith, Curator of Dutch Paintings\"\n - manages_collections: [Dutch Golden Age Collection, Flemish Baroque]\n \n3. **Library Department**:\n - department_name: \"Special Collections Department\"\n - mandate: \"Acquires, preserves, and provides access to rare materials\"\n - manages_collections: [Rare Books, Manuscripts, Maps]\n\n**LINK TO ArchiveTypeEnum**:\n\nThe ArchiveTypeEnum value \"DEPARTMENT\"\ - \ (Q107679962) describes archives\norganized as departments within larger institutions. This class provides\nthe structural representation for such organizational units.\n" + description: >- + Formal organizational unit within a parent institution with defined + mandate, responsibilities, and reporting lines. + alt_descriptions: + nl: {text: Formele organisatorische eenheid binnen een moederinstelling met vastgesteld mandaat, taken en rapportagelijnen., language: nl} + de: {text: Formale Organisationseinheit innerhalb einer uebergeordneten Institution mit festgelegtem Mandat, Aufgaben und Berichtslinien., language: de} + fr: {text: Unite organisationnelle formelle au sein d une institution parente avec mandat, responsabilites et lignes de reporting definis., language: fr} + es: {text: Unidad organizativa formal dentro de una institucion matriz con mandato, responsabilidades y lineas de reporte definidas., language: es} + ar: {text: وحدة تنظيمية رسمية داخل مؤسسة أم ذات تفويض ومسؤوليات وخطوط إبلاغ محددة., language: ar} + id: {text: Unit organisasi formal dalam institusi induk dengan mandat, tanggung jawab, dan garis pelaporan yang ditetapkan., language: id} + zh: {text: 隶属于上级机构、具备明确职责、授权与汇报关系的正式组织单元。, language: zh} + structured_aliases: + nl: [{literal_form: afdeling, language: nl}] + de: [{literal_form: Abteilung, language: de}] + fr: [{literal_form: departement interne, language: fr}] + es: [{literal_form: departamento, language: es}] + ar: [{literal_form: إدارة, language: ar}] + id: [{literal_form: departemen, language: id}] + zh: [{literal_form: 部门单元, language: zh}] exact_mappings: - - org:OrganizationalUnit - - wikidata:Q2366457 + - org:OrganizationalUnit + - wd:Q2366457 close_mappings: - - rico:Agent - - schema:Organization + - rico:Agent + - schema:Organization related_mappings: - - crm:E74_Group - - wikidata:Q107679962 + - crm:E74_Group slots: - - has_contact_point - - has_label - - has_type - - has_description - - managed_by - - identified_by - - dissolved_by - - located_at - - has_mandate - - part_of - - refer_to - - has_staff - - has_score + - has_contact_point + - has_label + - has_type + - has_description + - managed_by + - identified_by + - dissolved_by + - located_at + - has_mandate + - part_of + - refer_to + - has_staff + - has_score slot_usage: identified_by: -# range: string # uriorcurie required: true identifier: true - examples: - - value: https://nde.nl/ontology/hc/dept/nationaal-archief-colonial-records has_label: range: Label inlined: true multivalued: true required: true - examples: - - value: - has_text: Colonial Records Department - has_type: DepartmentName - - value: - has_text: CRD - has_type: DepartmentCode - - value: - has_text: Paintings Department - has_type: DepartmentName - - value: - has_text: PNTG - has_type: DepartmentCode has_type: range: LabelType inlined: true required: false has_description: -# range: string - inlined: false # Fixed invalid inline for primitive type + inlined: false required: false - examples: - - value: - has_text: The Colonial Records Department preserves and provides access to government records from the Dutch colonial period (1602-1949). Holdings include VOC archives, colonial administration files, and diplomatic correspondence. has_mandate: -# range: string - examples: - - value: Established by Royal Decree of 1891 to manage and preserve records of the Dutch East Indies administration. Mandate expanded in 1950 to include all colonial-era records. + required: false part_of: range: Department - examples: - - value: https://nde.nl/ontology/hc/dept/nationaal-archief-collections managed_by: range: Manager inlined: true required: false - examples: - - value: - has_name: Dr. Maria van der Berg - has_title: Head of Colonial Records Department has_staff: range: PersonObservation multivalued: true inlined_as_list: true - located_at: - examples: - - value: https://nde.nl/ontology/hc/aux-place/nationaal-archief-building-b - has_contact_point: -# range: string - examples: - - value: colonial-records@nationaalarchief.nl - - value: https://www.nationaalarchief.nl/onderzoeken/colonial-records dissolved_by: range: DissolutionEvent inlined: true refer_to: range: Custodian required: true - examples: - - value: https://nde.nl/ontology/hc/nl-zh-hag-a-na comments: - - Department represents FORMAL organizational units (vs informal OrganizationalStructure) - - Often has legal/regulatory basis (charter, mandate, decree) - - Maps to ArchiveTypeEnum DEPARTMENT (Q107679962) concept - - Hierarchical structure via parent_department/sub_departments - - Links to Collections via manages_collections (rico:isManagerOf) - - Links to staff via department_head and staff_members - see_also: - - https://www.wikidata.org/wiki/Q2366457 - - https://www.wikidata.org/wiki/Q107679962 - - https://www.w3.org/ns/org#OrganizationalUnit - - https://www.ica.org/standards/RiC/ontology#Agent - examples: - - value: - identified_by: https://nde.nl/ontology/hc/dept/nationaal-archief-colonial-records - has_label: - - has_text: Colonial Records Department - has_type: DepartmentName - - has_text: CRD - has_type: DepartmentCode - has_description: - has_text: Preserves and provides access to government records from the Dutch colonial period (1602-1949). Holdings include VOC archives, colonial administration files, and diplomatic correspondence. - mandate: Established by Royal Decree of 1891 to manage and preserve records of the Dutch East Indies administration. - established_by: - temporal_extent: - begin_of_the_begin: '1891-06-15' - contact_point: colonial-records@nationaalarchief.nl - refers_to_custodian: https://nde.nl/ontology/hc/nl-zh-hag-a-na - - value: - identified_by: https://nde.nl/ontology/hc/dept/rijksmuseum-paintings - has_label: - - has_text: Paintings Department - has_type: DepartmentName - - has_text: PNTG - has_type: DepartmentCode - has_description: - has_text: Responsible for the museum's collection of paintings from the Middle Ages to the 20th century. Includes Dutch Golden Age masterpieces, Flemish Baroque, and European paintings. - managed_by: - has_name: Dr. Pieter Roelofs - has_title: Head of Paintings Department - refers_to_custodian: https://nde.nl/ontology/hc/nl-nh-ams-m-rm + - Formal structural unit, distinct from informal team groupings + - Supports hierarchy through part_of and cross-linking to custodian annotations: specificity_score: 0.1 specificity_rationale: Generic utility class/slot created during migration diff --git a/schemas/20251121/linkml/modules/classes/DepartmentalArchives.yaml b/schemas/20251121/linkml/modules/classes/DepartmentalArchives.yaml index 0c241260f9..617a359ba3 100644 --- a/schemas/20251121/linkml/modules/classes/DepartmentalArchives.yaml +++ b/schemas/20251121/linkml/modules/classes/DepartmentalArchives.yaml @@ -7,10 +7,8 @@ prefixes: hc: https://nde.nl/ontology/hc/ skos: http://www.w3.org/2004/02/skos/core# wd: http://www.wikidata.org/entity/ - rico: https://www.ica.org/standards/RiC/ontology# default_prefix: hc imports: - - ../classes/AgentType - linkml:types - ../slots/identified_by - ../slots/has_score @@ -19,99 +17,56 @@ imports: - ../slots/hold_record_set - ../slots/applicable_in - ../slots/part_of - - ../slots/related_to classes: DepartmentalArchives: is_a: CustodianType - class_uri: schema:ArchiveOrganization + class_uri: skos:Concept + description: >- + Public repository institution at the French departement level, + responsible for stewardship of regional administrative and civil records. + alt_descriptions: + nl: {text: Openbare archiefinstelling op Frans departementsniveau voor beheer van regionale bestuurs- en burgerlijke documenten., language: nl} + de: {text: Oeffentliche Archivinstitution auf franzoesischer Departementsebene zur Bewahrung regionaler Verwaltungs- und Personenstandsunterlagen., language: de} + fr: {text: Institution archivistique publique au niveau departemental francais chargee de la conservation des archives administratives et civiles., language: fr} + es: {text: Institucion archivistica publica a nivel departamental frances responsable de registros administrativos y civiles regionales., language: es} + ar: {text: مؤسسة أرشيف عامة على مستوى المقاطعة في فرنسا مسؤولة عن حفظ السجلات الإدارية والمدنية الإقليمية., language: ar} + id: {text: Lembaga arsip publik tingkat departemen di Prancis yang bertanggung jawab atas pengelolaan arsip administratif dan sipil regional., language: id} + zh: {text: 法国省级公共档案机构,负责区域行政与民事档案保管。, language: zh} + structured_aliases: + nl: [{literal_form: departementsarchief frankrijk, language: nl}] + de: [{literal_form: Departementsarchiv, language: de}] + fr: [{literal_form: archives departementales, language: fr}] + es: [{literal_form: archivos departamentales, language: es}] + ar: [{literal_form: الأرشيفات الإدارية للمقاطعات الفرنسية, language: ar}] + id: [{literal_form: arsip departemen prancis, language: id}] + zh: [{literal_form: 法国省级档案馆, language: zh}] + exact_mappings: + - wd:Q2860456 + broad_mappings: + - skos:Concept + - schema:ArchiveOrganization + - wd:Q166118 + keywords: + - france departmental archives + - civil registration holdings + - regional public records slots: - - part_of - - has_type - - has_service_area - - hold_record_set - - has_score - - identified_by - description: "Departmental archives in France (archives d\xE9partementales).\n\n**Wikidata**: Q2860456 (archives d\xE9partementales)\n\n**\u26A0\uFE0F GEOGRAPHIC RESTRICTION: FRANCE ONLY**\n\nThis type applies ONLY to French d\xE9partement-level archives. For archives\nat comparable administrative levels in other countries, use:\n- DistrictArchiveGermany (Q130757255) for Kreisarchiv\n- ProvincialArchive (Q5403345) for provincial archives\n- RegionalArchive (Q27032392) for other regional archives\n\n**DEFINITION**:\n\nArchives d\xE9partementales are public archives at the d\xE9partement level in France.\nThey are the primary repositories for:\n- Pre-revolutionary records (ancien r\xE9gime documents)\n- Civil registration (\xE9tat civil) from 1792\n- Notarial archives\n- Cadastral/land records\n- Local government records\n- Regional ecclesiastical records\n\n**FRENCH TERRITORIAL ARCHIVE HIERARCHY**:\n\n```\nArchives nationales (national)\n \u2514\u2500\u2500 Archives r\xE9gionales (regional)\n\ - \ \u2514\u2500\u2500 Archives d\xE9partementales (THIS TYPE)\n \u2514\u2500\u2500 Archives communales (municipal)\n```\n\n**STANDARDIZATION**:\n\nAll 101 d\xE9partements (96 metropolitan + 5 overseas) have departmental archives.\nThey use standardized classification (s\xE9rie/sous-s\xE9rie) based on circulars\nfrom Archives de France.\n\n**COMMON SERIES**:\n- S\xE9rie A-L: Ancien r\xE9gime\n- S\xE9rie M-Z: Post-1790 records\n- S\xE9rie E: Civil registration (\xE9tat civil)\n- S\xE9rie Q: National property (biens nationaux)\n\n**MULTILINGUAL LABELS**:\n- D\xE9partement-Archiv (de)\n- archivos departamentales (es)\n- archives d\xE9partementales (fr)\n\n**RELATED TYPES**:\n- ArchivesRegionales (Q2860567) - regional archives (France)\n- PublicArchivesInFrance (Q2421452) - public archives in France\n- MunicipalArchive (Q604177) - communal archives\n" + - part_of + - has_type + - has_service_area + - hold_record_set + - has_score + - identified_by slot_usage: - identified_by: null - has_service_area: - range: ServiceArea - inlined: true - required: false - description: "French d\xE9partement served by this archive.\nMIGRATED from 'departement_code' and 'departement_name' slots per slot_fixes.yaml (Rule 53).\n\nUses ServiceArea class with:\n- service_area_name: D\xE9partement name (e.g., \"Bouches-du-Rh\xF4ne\")\n- identified_by: D\xE9partement code as structured identifier (e.g., \"13\")\n" - examples: - - value: - service_area_name: Paris - identified_by: - - value: - service_area_name: "Bouches-du-Rh\xF4ne" - identified_by: - - value: - service_area_name: "La R\xE9union" - identified_by: - cover_country: - alpha_2: FR - part_of: -# range: string - multivalued: true - examples: - - value: - - "A-L (ancien r\xE9gime)" - - "E (\xE9tat civil)" - - M (administration) - - Q (biens nationaux) + has_type: + equals_string: hc:ArchiveOrganizationType applicable_in: range: Country required: true minimum_cardinality: 1 maximum_cardinality: 1 - examples: - - value: - identified_by: FR - has_type: - equals_expression: '["hc:ArchiveOrganizationType"]' - rules: - exact_mappings: - - wd:Q2860456 - close_mappings: - - rico:CorporateBody - - skos:Concept - broad_mappings: - - wd:Q166118 - related_mappings: - - wikidata:Q2860567 - - wikidata:Q2421452 - - wikidata:Q604177 comments: - - "\u26A0\uFE0F FRANCE ONLY - French d\xE9partements have this archive type" - - 101 departmental archives across France (96 metropolitan + 5 overseas) - - "Major source for genealogical research (\xE9tat civil from 1792)" - - Uses standardized French archival classification - - Part of Archives de France network - - 'Geographic restriction enforced via LinkML rules: France (FR) only' - see_also: - - https://www.wikidata.org/wiki/Q2860456 - - https://francearchives.gouv.fr/ - examples: - - value: - identified_by: https://nde.nl/ontology/hc/type/archive/Q2860456 - has_type_code: ARCHIVE - has_label: - - Departmental Archives@en - - "D\xE9partement-Archiv@de" - - archivos departamentales@es - - "archives d\xE9partementales@fr" - has_description: Departmental archives in France - has_service_area: - service_area_name: "Bouches-du-Rh\xF4ne" - identified_by: - cover_country: - alpha_2: FR - part_of: - - "A-L (ancien r\xE9gime)" - - "E (\xE9tat civil)" - - M (administration) + - Organization type restricted to the French administrative context annotations: specificity_score: 0.1 specificity_rationale: Generic utility class/slot created during migration diff --git a/schemas/20251121/linkml/modules/classes/DepartmentalArchivesRecordSetType.yaml b/schemas/20251121/linkml/modules/classes/DepartmentalArchivesRecordSetType.yaml index c160829758..0c76b80e86 100644 --- a/schemas/20251121/linkml/modules/classes/DepartmentalArchivesRecordSetType.yaml +++ b/schemas/20251121/linkml/modules/classes/DepartmentalArchivesRecordSetType.yaml @@ -3,7 +3,6 @@ name: DepartmentalArchivesRecordSetType title: DepartmentalArchives Record Set Type prefixes: linkml: https://w3id.org/linkml/ - schema: http://schema.org/ hc: https://nde.nl/ontology/hc/ skos: http://www.w3.org/2004/02/skos/core# wd: http://www.wikidata.org/entity/ @@ -12,27 +11,43 @@ imports: - linkml:types - ../slots/has_score - ../slots/has_type - - ../slots/related_to classes: DepartmentalArchivesRecordSetType: - description: A rico:RecordSetType for classifying collections of French departmental archive materials within heritage institutions. is_a: CollectionType class_uri: rico:RecordSetType - exact_mappings: - - wd:Q2860456 + description: >- + Taxonomic category for documentary aggregations curated by French + departement-level public archive institutions. + alt_descriptions: + nl: {text: Taxonomische categorie voor documentaggregaties beheerd door Franse departementsarchieven., language: nl} + de: {text: Taxonomische Kategorie fuer Dokumentaggregationen in franzoesischen Departementsarchiven., language: de} + fr: {text: Categorie taxonomique des ensembles documentaires conserves par les archives departementales francaises., language: fr} + es: {text: Categoria taxonomica para agregaciones documentales custodiadas por archivos departamentales franceses., language: es} + ar: {text: فئة تصنيفية للتجميعات الوثائقية المحفوظة لدى الأرشيفات الإدارية الفرنسية على مستوى المقاطعة., language: ar} + id: {text: Kategori taksonomi untuk agregasi dokumenter yang dikurasi arsip departemen publik Prancis., language: id} + zh: {text: 由法国省级公共档案机构保管之文献聚合体分类类型。, language: zh} + structured_aliases: + nl: [{literal_form: departementsarchief-recordsettype, language: nl}] + de: [{literal_form: Departementsarchiv-Bestandsart, language: de}] + fr: [{literal_form: type de fonds des archives departementales, language: fr}] + es: [{literal_form: tipo de conjunto documental departamental frances, language: es}] + ar: [{literal_form: نوع مجموعة سجلات الأرشيفات الإدارية, language: ar}] + id: [{literal_form: jenis set catatan arsip departemen, language: id}] + zh: [{literal_form: 法国省级档案记录集类型, language: zh}] + broad_mappings: + - rico:RecordSetType + - skos:Concept + related_mappings: + - wd:Q2860456 slot_usage: has_type: - equals_expression: '["hc:ArchiveOrganizationType"]' - related_to: - range: WikidataAlignment - inlined: true + equals_string: hc:ArchiveOrganizationType see_also: - - DepartmentalArchives + - DepartmentalArchives annotations: specificity_score: 0.1 specificity_rationale: Generic utility class/slot created during migration custodian_types: "['*']" slots: - - has_type - - has_score - - related_to + - has_type + - has_score diff --git a/schemas/20251121/linkml/modules/classes/DepartmentalArchivesRecordSetTypes.yaml b/schemas/20251121/linkml/modules/classes/DepartmentalArchivesRecordSetTypes.yaml index e119e9200f..3cd13cd859 100644 --- a/schemas/20251121/linkml/modules/classes/DepartmentalArchivesRecordSetTypes.yaml +++ b/schemas/20251121/linkml/modules/classes/DepartmentalArchivesRecordSetTypes.yaml @@ -4,11 +4,9 @@ title: DepartmentalArchives Record Set Type Subclasses prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ - schema: http://schema.org/ skos: http://www.w3.org/2004/02/skos/core# rico: https://www.ica.org/standards/RiC/ontology# rico-rst: https://www.ica.org/standards/RiC/vocabularies/recordSetTypes# - wd: http://www.wikidata.org/entity/ default_prefix: hc imports: - ./DepartmentalArchivesRecordSetType @@ -21,66 +19,47 @@ classes: DepartmentAdministrationFonds: is_a: DepartmentalArchivesRecordSetType class_uri: rico:RecordSetType - description: "A rico:RecordSetType for Departmental government records (France).\n\ - \n**RiC-O Alignment**:\nThis class is a specialized rico:RecordSetType following\ - \ the fonds \norganizational principle as defined by rico-rst:Fonds.\n" + description: >- + Documentary aggregation arranged as a fonds for departement-level public + administration records in France. broad_mappings: - - rico:RecordSetType + - rico:RecordSetType + - skos:Concept related_mappings: - - rico-rst:Fonds - close_mappings: - - skos:Concept - see_also: - - DepartmentalArchivesRecordSetType - - rico:RecordSetType + - rico-rst:Fonds slots: - - has_type - - has_score - - has_custodian - - record_holder_note - - has_type + - has_type + - has_score + - has_custodian + - record_holder_note slot_usage: - has_type: - equals_expression: '["hc:ArchiveOrganizationType"]' has_type: equals_string: DepartmentAdministrationFonds has_custodian: equals_string: DepartmentalArchives record_holder_note: - equals_string: This RecordSetType is typically held by DepartmentalArchives - custodians. Inverse of rico:isOrWasHolderOf. - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' + equals_string: This RecordSetType is typically held by DepartmentalArchives custodians. + PrefectureSeries: is_a: DepartmentalArchivesRecordSetType class_uri: rico:RecordSetType - description: "A rico:RecordSetType for Prefecture administrative records.\n\n\ - **RiC-O Alignment**:\nThis class is a specialized rico:RecordSetType following\ - \ the series \norganizational principle as defined by rico-rst:Series.\n" + description: >- + Documentary aggregation arranged as a series for prefectural governance, + regulation, and civil administration records. broad_mappings: - - rico:RecordSetType + - rico:RecordSetType + - skos:Concept related_mappings: - - rico-rst:Series - close_mappings: - - skos:Concept - see_also: - - DepartmentalArchivesRecordSetType - - rico:RecordSetType + - rico-rst:Series slots: - - has_type - - has_score - - has_custodian - - record_holder_note - - has_type + - has_type + - has_score + - has_custodian + - record_holder_note slot_usage: - has_type: - equals_expression: '["hc:ArchiveOrganizationType"]' has_type: equals_string: PrefectureSeries has_custodian: equals_string: DepartmentalArchives record_holder_note: - equals_string: This RecordSetType is typically held by DepartmentalArchives - custodians. Inverse of rico:isOrWasHolderOf. + equals_string: This RecordSetType is typically held by DepartmentalArchives custodians. diff --git a/schemas/20251121/linkml/modules/classes/DeploymentEvent.yaml b/schemas/20251121/linkml/modules/classes/DeploymentEvent.yaml index 992f8ea92a..3903c6cbb3 100644 --- a/schemas/20251121/linkml/modules/classes/DeploymentEvent.yaml +++ b/schemas/20251121/linkml/modules/classes/DeploymentEvent.yaml @@ -20,39 +20,25 @@ imports: classes: DeploymentEvent: class_uri: prov:Activity - description: | - Event representing the deployment of a software system (CMS, platform) at an institution. - - **Purpose**: - DeploymentEvent captures the full context of a software deployment: - - WHEN: Via temporal_extent (TimeSpan with fuzzy boundaries) - - WHERE: Via refers_to_custodian (target institution) - - WHAT: Linked from CollectionManagementSystem.deployed_at - - WHY: Via description (deployment rationale, notes) - - **MIGRATED FROM**: `deployment_date` slot - - Replaces simple date with structured event that: - - Supports fuzzy temporal bounds (TimeSpan) - - Tracks deployment at specific custodians - - Enables multiple deployment events per system - - Captures deployment context and rationale - - **Ontological Alignment**: - - **Primary**: `prov:Activity` - PROV-O activity - - **Close**: `crm:E5_Event` - CIDOC-CRM event - - **Related**: `schema:Action` - Schema.org action - - **Relationship to CollectionManagementSystem**: - ``` - CollectionManagementSystem - │ - └── deployed_at → DeploymentEvent[] - ├── temporal_extent → TimeSpan - ├── refers_to_custodian → Custodian - └── description → Description - ``` - + description: >- + Operational event recording the rollout of a digital system at a target + institution, including timing and contextual notes. + alt_descriptions: + nl: {text: Operationele gebeurtenis die de uitrol van een digitaal systeem bij een instelling vastlegt, inclusief timing en contextnotities., language: nl} + de: {text: Operatives Ereignis zur Einfuehrung eines digitalen Systems in einer Zielinstitution mit Zeitangaben und Kontextnotizen., language: de} + fr: {text: Evenement operationnel enregistrant le deploiement d un systeme numerique dans une institution cible avec temporalite et contexte., language: fr} + es: {text: Evento operativo que registra el despliegue de un sistema digital en una institucion objetivo con temporalidad y contexto., language: es} + ar: {text: حدث تشغيلي يسجل نشر نظام رقمي لدى مؤسسة مستهدفة مع التوقيت والسياق., language: ar} + id: {text: Peristiwa operasional yang mencatat penerapan sistem digital pada institusi target beserta waktu dan konteksnya., language: id} + zh: {text: 记录数字系统在目标机构上线部署及其时间与背景说明的运营事件。, language: zh} + structured_aliases: + nl: [{literal_form: uitrolgebeurtenis, language: nl}] + de: [{literal_form: Bereitstellungsereignis, language: de}] + fr: [{literal_form: evenement de deploiement, language: fr}] + es: [{literal_form: evento de despliegue, language: es}] + ar: [{literal_form: حدث نشر, language: ar}] + id: [{literal_form: peristiwa deployment, language: id}] + zh: [{literal_form: 部署事件, language: zh}] exact_mappings: - prov:Activity @@ -120,4 +106,4 @@ classes: end_of_the_end: "2020-03-31" refers_to_custodian: https://nde.nl/ontology/hc/nl-zh-hag-a-na has_description: - has_text: "Upgrade to MAIS-Flexis v3.0. Migration included archival descriptions from 2010-2019." \ No newline at end of file + has_text: "Upgrade to MAIS-Flexis v3.0. Migration included archival descriptions from 2010-2019." diff --git a/schemas/20251121/linkml/modules/classes/DepositArchive.yaml b/schemas/20251121/linkml/modules/classes/DepositArchive.yaml index 9d803e8202..9364e3eda9 100644 --- a/schemas/20251121/linkml/modules/classes/DepositArchive.yaml +++ b/schemas/20251121/linkml/modules/classes/DepositArchive.yaml @@ -7,14 +7,11 @@ prefixes: hc: https://nde.nl/ontology/hc/ skos: http://www.w3.org/2004/02/skos/core# wd: http://www.wikidata.org/entity/ - rico: https://www.ica.org/standards/RiC/ontology# premis: http://www.loc.gov/premis/rdf/v3/ default_prefix: hc imports: - - ../classes/AgentType - linkml:types - ../slots/identified_by - - ../slots/has_scope - ../slots/has_score - ../slots/has_service - ../slots/has_type @@ -23,75 +20,51 @@ imports: classes: DepositArchive: is_a: CustodianType - class_uri: schema:ArchiveOrganization + class_uri: skos:Concept + description: >- + Repository institution for semi-current records under retention control, + pending transfer to permanent custody or authorized disposal. + alt_descriptions: + nl: {text: Archiefinstelling voor semistatische documenten onder bewaartermijnbeheer, in afwachting van overbrenging of geautoriseerde vernietiging., language: nl} + de: {text: Archivinstitution fuer Zwischenarchivgut unter Aufbewahrungssteuerung bis zur Uebernahme in Dauerarchivierung oder zulaessigen Vernichtung., language: de} + fr: {text: Institution de conservation intermediaire pour des dossiers semi-courants sous controle de retention avant transfert ou elimination autorisee., language: fr} + es: {text: Institucion de archivo intermedio para registros semiactivos bajo control de retencion antes de transferencia o eliminacion autorizada., language: es} + ar: {text: مؤسسة أرشيف وسيط للسجلات شبه الجارية تحت إدارة مدد الاحتفاظ قبل النقل الدائم أو الإتلاف المصرح به., language: ar} + id: {text: Lembaga arsip simpan antara untuk rekod semiaktif di bawah kendali retensi sebelum transfer permanen atau pemusnahan yang disahkan., language: id} + zh: {text: 用于保留期管理下半现行档案的中间保管机构,待永久移交或依法处置。, language: zh} + structured_aliases: + nl: [{literal_form: depotarchief, language: nl}] + de: [{literal_form: Zwischenarchiv, language: de}] + fr: [{literal_form: archive intermediaire, language: fr}] + es: [{literal_form: archivo de deposito, language: es}] + ar: [{literal_form: أرشيف وسيط, language: ar}] + id: [{literal_form: arsip deposito, language: id}] + zh: [{literal_form: 中间档案机构, language: zh}] + exact_mappings: + - wd:Q244904 + broad_mappings: + - skos:Concept + - schema:ArchiveOrganization + - wd:Q166118 + close_mappings: + - premis:StorageLocation + related_mappings: + - wd:Q3621648 + - wd:Q3621673 slots: - - has_type - - has_service - - hold_record_set - - has_roadmap - - has_score - - identified_by - description: "Archive for intermediate/semi-current records awaiting final disposition.\n\n**Wikidata**: Q244904 (deposit archive / Zwischenarchiv / archive interm\xE9diaire)\n\n**DEFINITION**:\n\nDeposit Archive (also called \"intermediate archive\" or \"records center\")\nmanages records that are:\n- No longer actively used (not current archive)\n- Not yet transferred to permanent archive\n- Awaiting retention period completion or disposition decision\n\n**ARCHIVAL LIFECYCLE POSITION**:\n\n```\nCurrent Archive (active use)\n \u2193\nDEPOSIT ARCHIVE (semi-current) \u2190 THIS TYPE\n \u2193\nHistorical Archive (permanent preservation)\n or\nDestruction (per retention schedule)\n```\n\n**KEY CHARACTERISTICS**:\n\n1. **Custody Without Ownership**: Deposit archives often hold materials \n deposited by other organizations while ownership remains with depositor\n\n2. **Retention Management**: Tracks retention schedules and triggers \n disposition actions (transfer or destruction)\n\ - \n3. **Efficient Storage**: Uses cost-effective storage for semi-current\n records with lower access frequency\n\n4. **Retrieval Services**: Provides retrieval for depositing organizations\n as needed\n\n**SPECIAL LINKAGE: StorageType**\n\nDeposit archives operate specialized storage facilities. This class links\nto StorageType to describe the deposit storage characteristics:\n- operates_storage \u2192 Storage[] \u2192 has_storage_type \u2192 StorageType\n- StorageType code: DEPOSIT_STORAGE\n\n```\nDepositArchive (custodian type)\n \u2502\n \u2514\u2500\u2500 operates_storage \u2192 Storage (facility instance)\n \u2502\n \u2514\u2500\u2500 has_storage_type \u2192 StorageType\n \u2514\u2500\u2500 DEPOSIT_STORAGE\n```\n\n**MULTILINGUAL LABELS**:\n- Zwischenarchiv (de)\n- archivo de dep\xF3sito (es)\n- archive interm\xE9diaire (fr)\n\n**RELATED TYPES**:\n- CurrentArchive (Q3621648) - active records\ - \ (earlier phase)\n- HistoricalArchive (Q3621673) - permanent records (later phase)\n- StorageType.DEPOSIT_STORAGE - storage type for deposit facilities\n\n**ONTOLOGICAL ALIGNMENT**:\n- **SKOS**: skos:Concept (type classification)\n- **RiC-O**: rico:RecordSet for deposited materials\n- **PREMIS**: premis:StorageLocation for storage facilities\n- **Wikidata**: Q244904\n" + - has_type + - has_service + - hold_record_set + - has_roadmap + - has_score + - identified_by slot_usage: - identified_by: + has_type: + equals_string: hc:ArchiveOrganizationType has_roadmap: range: boolean - examples: - - value: true - has_service: -# range: string - multivalued: true - inlined: false # Fixed invalid inline for primitive type - examples: - - value: - has_type: SecureDestructionService - has_label: Secure Destruction - - value: - has_type: PermanentArchiveTransferService - has_label: Transfer to National Archives - - value: - has_type: DepositorReturnService - has_label: Return to Depositor - has_type: - equals_expression: '["hc:ArchiveOrganizationType"]' - exact_mappings: - - wd:Q244904 - close_mappings: - - rico:RecordSet - - premis:StorageLocation - - skos:Concept - broad_mappings: - - wd:Q166118 - related_mappings: - - wikidata:Q3621648 - - wikidata:Q3621673 comments: - - Deposit archives manage semi-current records awaiting disposition - - 'SPECIAL LINKAGE: operates_storage_types links to StorageType' - - Key role in retention management and disposition planning - - Provides cost-effective storage for lower-access materials - - "Part of archival lifecycle: current \u2192 deposit \u2192 permanent" - see_also: - - https://www.wikidata.org/wiki/Q244904 - - https://www.iso.org/standard/62542.html - examples: - - value: - identified_by: https://nde.nl/ontology/hc/type/archive/Q244904 - has_type_code: ARCHIVE - has_label: - - Deposit Archive@en - - Zwischenarchiv@de - - "archivo de dep\xF3sito@es" - - "archive interm\xE9diaire@fr" - has_description: Archive for semi-current records awaiting disposition - retention_tracking: true - has_service: - - has_type: SecureDestructionService - has_label: secure destruction - - has_type: PermanentArchiveTransferService - has_label: transfer to national archives + - Organization type for lifecycle phase between active use and permanent custody annotations: specificity_score: 0.1 specificity_rationale: Generic utility class/slot created during migration diff --git a/schemas/20251121/linkml/modules/classes/DepositArchiveRecordSetType.yaml b/schemas/20251121/linkml/modules/classes/DepositArchiveRecordSetType.yaml index 58b5ecc898..cdd6abe65c 100644 --- a/schemas/20251121/linkml/modules/classes/DepositArchiveRecordSetType.yaml +++ b/schemas/20251121/linkml/modules/classes/DepositArchiveRecordSetType.yaml @@ -3,35 +3,49 @@ name: DepositArchiveRecordSetType title: DepositArchive Record Set Type prefixes: linkml: https://w3id.org/linkml/ - schema: http://schema.org/ hc: https://nde.nl/ontology/hc/ skos: http://www.w3.org/2004/02/skos/core# - wd: http://www.wikidata.org/entity/ rico: https://www.ica.org/standards/RiC/ontology# - premis: http://www.loc.gov/premis/rdf/v3/ + wd: http://www.wikidata.org/entity/ imports: - linkml:types - ../slots/has_scope classes: DepositArchiveRecordSetType: - description: 'A rico:RecordSetType for classifying collections held by DepositArchive custodians. - - ' is_a: CollectionType class_uri: rico:RecordSetType + description: >- + Taxonomic category for documentary aggregations managed in intermediate + custody pending disposition outcomes. + alt_descriptions: + nl: {text: Taxonomische categorie voor documentaggregaties in tussenbewaring in afwachting van selectiebesluiten., language: nl} + de: {text: Taxonomische Kategorie fuer Dokumentaggregationen in Zwischenverwahrung bis zur Aussonderungsentscheidung., language: de} + fr: {text: Categorie taxonomique pour les ensembles documentaires conserves en depot intermediaire avant decision de sort final., language: fr} + es: {text: Categoria taxonomica para agregaciones documentales en custodia intermedia antes de la disposicion final., language: es} + ar: {text: فئة تصنيفية للتجميعات الوثائقية في الحفظ الوسيط بانتظار قرار المصير النهائي., language: ar} + id: {text: Kategori taksonomi untuk agregasi dokumenter dalam kustodi antara sebelum keputusan disposisi akhir., language: id} + zh: {text: 在中间托管阶段、待最终处置前之文献聚合体分类类型。, language: zh} + structured_aliases: + nl: [{literal_form: depotarchief-recordsettype, language: nl}] + de: [{literal_form: Zwischenarchiv-Bestandsart, language: de}] + fr: [{literal_form: type de fonds d archive intermediaire, language: fr}] + es: [{literal_form: tipo de conjunto documental de deposito, language: es}] + ar: [{literal_form: نوع مجموعة سجلات أرشيف وسيط, language: ar}] + id: [{literal_form: jenis set catatan arsip deposito, language: id}] + zh: [{literal_form: 中间档案记录集类型, language: zh}] + broad_mappings: + - rico:RecordSetType + - skos:Concept + related_mappings: + - wd:Q244904 slots: - - has_scope # was: type_scope - migrated per Rule 53 (2026-01-15) + - has_scope see_also: - - DepositArchive - - rico:RecordSetType + - DepositArchive + - rico:RecordSetType annotations: custodian_types: '["hc:ArchiveOrganizationType"]' linked_custodian_type: DepositArchive dual_class_pattern: collection_type specificity_score: 0.7 - specificity_rationale: Type taxonomy class. - specificity_annotation_timestamp: '2026-01-06T00:26:29.677478Z' - specificity_annotation_agent: opencode-claude-sonnet-4 - template_specificity: '{"archive_search": 0.2, "museum_search": 0.75, "library_search": 0.75, "collection_discovery": - 0.75, "person_research": 0.75, "location_browse": 0.75, "identifier_lookup": 0.75, "organizational_change": 0.75, - "digital_platform": 0.75, "general_heritage": 0.75}' + specificity_rationale: Type taxonomy class diff --git a/schemas/20251121/linkml/modules/classes/DepositArchiveRecordSetTypes.yaml b/schemas/20251121/linkml/modules/classes/DepositArchiveRecordSetTypes.yaml index 617b2eb663..6b7243aa26 100644 --- a/schemas/20251121/linkml/modules/classes/DepositArchiveRecordSetTypes.yaml +++ b/schemas/20251121/linkml/modules/classes/DepositArchiveRecordSetTypes.yaml @@ -4,11 +4,9 @@ title: DepositArchive Record Set Type Subclasses prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ - schema: http://schema.org/ skos: http://www.w3.org/2004/02/skos/core# rico: https://www.ica.org/standards/RiC/ontology# rico-rst: https://www.ica.org/standards/RiC/vocabularies/recordSetTypes# - wd: http://www.wikidata.org/entity/ default_prefix: hc imports: - ./DepositArchiveRecordSetType @@ -21,35 +19,23 @@ classes: DepositedRecordsFonds: is_a: DepositArchiveRecordSetType class_uri: rico:RecordSetType - description: "A rico:RecordSetType for Records deposited by external bodies.\n\ - \n**RiC-O Alignment**:\nThis class is a specialized rico:RecordSetType following\ - \ the fonds \norganizational principle as defined by rico-rst:Fonds.\n" + description: >- + Documentary aggregation arranged as a fonds for externally deposited + records under retention management. broad_mappings: - - rico:RecordSetType + - rico:RecordSetType + - skos:Concept related_mappings: - - rico-rst:Fonds - close_mappings: - - skos:Concept - see_also: - - DepositArchiveRecordSetType - - rico:RecordSetType + - rico-rst:Fonds slots: - - has_type - - has_score - - has_custodian - - record_holder_note - - has_type + - has_type + - has_score + - has_custodian + - record_holder_note slot_usage: - has_type: - equals_expression: '["hc:ArchiveOrganizationType"]' has_type: equals_string: DepositedRecordsFonds has_custodian: equals_string: DepositArchive record_holder_note: equals_string: This RecordSetType is typically held by DepositArchive custodians. - Inverse of rico:isOrWasHolderOf. - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' diff --git a/schemas/20251121/linkml/modules/classes/DepositingOrganization.yaml b/schemas/20251121/linkml/modules/classes/DepositingOrganization.yaml index 53f138ea3e..f31896a054 100644 --- a/schemas/20251121/linkml/modules/classes/DepositingOrganization.yaml +++ b/schemas/20251121/linkml/modules/classes/DepositingOrganization.yaml @@ -13,7 +13,27 @@ imports: classes: DepositingOrganization: class_uri: schema:Organization - description: Depositing organization. + description: >- + Organization that transfers materials into another custodian's care while + retaining attribution to the depositor role. + alt_descriptions: + nl: {text: Organisatie die materialen overdraagt aan een andere beheerder met behoud van herkomst als deposant., language: nl} + de: {text: Organisation, die Materialien in die Verwahrung eines anderen Traegers uebergibt und dabei die Rolle als Einlieferer behaelt., language: de} + fr: {text: Organisation qui transfere des materiaux sous la garde d un autre depositaire tout en conservant l attribution du role de deposant., language: fr} + es: {text: Organizacion que transfiere materiales al cuidado de otro custodio manteniendo la atribucion del rol depositante., language: es} + ar: {text: منظمة تقوم بإيداع مواد لدى جهة حافظة أخرى مع بقاء نسبتها بصفتها جهة مُودِعة., language: ar} + id: {text: Organisasi yang menitipkan materi ke kustodian lain sambil mempertahankan atribusi peran sebagai penyetor., language: id} + zh: {text: 将材料移交他方托管并保留“移交机构”身份归属的组织。, language: zh} + structured_aliases: + nl: [{literal_form: deponerende organisatie, language: nl}] + de: [{literal_form: einliefernde Organisation, language: de}] + fr: [{literal_form: organisation deposante, language: fr}] + es: [{literal_form: organizacion depositante, language: es}] + ar: [{literal_form: منظمة مُودِعة, language: ar}] + id: [{literal_form: organisasi penyetor, language: id}] + zh: [{literal_form: 移交机构, language: zh}] + broad_mappings: + - schema:Organization slots: - has_name annotations: diff --git a/schemas/20251121/linkml/modules/classes/Description.yaml b/schemas/20251121/linkml/modules/classes/Description.yaml index 27721befc7..914fd7b790 100644 --- a/schemas/20251121/linkml/modules/classes/Description.yaml +++ b/schemas/20251121/linkml/modules/classes/Description.yaml @@ -1,7 +1,6 @@ id: https://nde.nl/ontology/hc/class/Description name: description_class title: Description Class - prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ @@ -9,112 +8,58 @@ prefixes: rdfs: http://www.w3.org/2000/01/rdf-schema# schema: http://schema.org/ dcterms: http://purl.org/dc/terms/ - default_prefix: hc - imports: - linkml:types - ../metadata - ../slots/has_type - ../slots/has_content - - ../slots/has_score # was: template_specificity + - ../slots/has_score - ../slots/in_language classes: Description: class_uri: hc:Description - description: | - A typed description with optional language tagging and type metadata. - - **Purpose**: - Description provides a reusable class for representing textual descriptions - across the heritage custodian schema. Supports typed descriptions (binding, - branch, budget, zone, etc.) with language tagging. - - **Ontological Alignment**: - - **Primary**: `dcterms:description` - Dublin Core description - - **Close**: `skos:definition` - formal definition - - **Related**: `schema:description` - Schema.org description - - **Use Cases**: - - Binding descriptions for physical carriers - - Branch/office descriptions for organizational units - - Budget descriptions for financial records - - Zone/warehouse descriptions for storage facilities - - Type descriptions for classification explanations - - **Replaces** (per slot_fixes.yaml): - - `binding_description` (string) - - `branch_description` (string) - - `branch_office_description` (string) - - `budget_description` (string) - - `zone_description` (string) - - `warehouse_description` (string) - - `unit_description` (string) - - `type_description` (string) - + description: >- + Reusable typed text statement used to supply contextual explanatory + content with optional language tagging. + alt_descriptions: + nl: {text: Herbruikbare getypeerde tekstverklaring voor contextuele toelichting met optionele taalmarkering., language: nl} + de: {text: Wiederverwendbare typisierte Textaussage fuer kontextuelle Erlaeuterungen mit optionaler Sprachkennzeichnung., language: de} + fr: {text: Enonce textuel type reutilisable pour fournir un contexte explicatif avec marquage linguistique optionnel., language: fr} + es: {text: Enunciado textual tipado reutilizable para aportar contexto explicativo con etiquetado de idioma opcional., language: es} + ar: {text: بيان نصي نمطي قابل لإعادة الاستخدام لتقديم سياق توضيحي مع وسم لغوي اختياري., language: ar} + id: {text: Pernyataan teks bertipe yang dapat digunakan ulang untuk memberi konteks penjelasan dengan penandaan bahasa opsional., language: id} + zh: {text: 可复用的类型化文本说明,用于提供解释性上下文并可选语言标注。, language: zh} + structured_aliases: + nl: [{literal_form: toelichting, language: nl}] + de: [{literal_form: Beschreibungseintrag, language: de}] + fr: [{literal_form: notice descriptive, language: fr}] + es: [{literal_form: descripcion tipada, language: es}] + ar: [{literal_form: وصف توضيحي, language: ar}] + id: [{literal_form: deskripsi bertipe, language: id}] + zh: [{literal_form: 描述条目, language: zh}] close_mappings: - dcterms:description - skos:definition - rdfs:comment - related_mappings: - schema:description - slots: - # MIGRATED 2026-01-25: description_text → has_content (Rule 53) - has_content - has_type - in_language - - has_score # was: template_specificity - migrated per Rule 53 (2026-01-17) - + - has_score slot_usage: - # DEPRECATED 2026-01-25: description_text migrated to has_content + Content (Rule 53) - # Old slot archived: modules/slots/archive/description_text_archived_20260125.yaml has_content: -# range: string required: true - inlined: false # Fixed invalid inline for primitive type - examples: - - value: - has_label: "Zone Description" - has_description: "Climate-controlled storage zone with dedicated HVAC for archival materials." + inlined: false has_type: -# range: string required: false - examples: - - value: binding - - value: branch - - value: budget - - value: zone in_language: -# range: string required: false - pattern: "^[a-z]{2}$" - + pattern: ^[a-z]{2}$ annotations: custodian_types: '["*"]' - custodian_types_rationale: Generic description class applicable to all custodian types. - custodian_types_primary: null + custodian_types_rationale: Generic description class applicable to all domains specificity_score: 0.2 - specificity_rationale: Very broadly applicable generic class for textual descriptions. - - examples: - # MIGRATED 2026-01-25: examples updated to use has_content + Content (Rule 53) - - value: - has_content: - has_label: "Storage Zone Climate Control" - has_description: "Climate-controlled storage zone with dedicated HVAC for archival materials. Maintains 65°F and 35% RH." - description_type: zone - language: en - - value: - has_content: - has_label: "Quarter Leather Binding" - has_description: "Quarter leather binding with marbled boards, spine with five raised bands and gilt titling." - description_type: binding - language: en - - value: - has_content: - has_label: "Noord-Holland Regional Branch" - has_description: "Regional branch serving Noord-Holland province with specialized genealogy and notarial collections." - description_type: branch - language: en \ No newline at end of file + specificity_rationale: Broad reusable text-annotation class diff --git a/schemas/20251121/linkml/modules/classes/DetectedEntity.yaml b/schemas/20251121/linkml/modules/classes/DetectedEntity.yaml index e47fe49bd5..b959bb4457 100644 --- a/schemas/20251121/linkml/modules/classes/DetectedEntity.yaml +++ b/schemas/20251121/linkml/modules/classes/DetectedEntity.yaml @@ -7,7 +7,6 @@ prefixes: prov: http://www.w3.org/ns/prov# schema: http://schema.org/ crm: http://www.cidoc-crm.org/cidoc-crm/ - skos: http://www.w3.org/2004/02/skos/core# default_prefix: hc imports: - linkml:types @@ -20,142 +19,55 @@ imports: classes: DetectedEntity: class_uri: prov:Entity - description: "Base class for entities detected through automated analysis processes.\n\ - \n**DEFINITION**:\n\nDetectedEntity represents items identified by automated\ - \ analysis pipelines\n(computer vision, NLP, audio analysis, etc.). Each detected\ - \ entity captures:\n- What was detected (via has_type → specific Type\ - \ class)\n- Detection confidence (probability score)\n- Temporal/spatial location\ - \ (timestamps, bounding boxes)\n\n**CRITICAL: DETECTION vs TYPE**\n\n| Aspect\ - \ | DetectedEntity (This Class) | *Type Classes (Categories) |\n|--------|----------------------------|---------------------------|\n\ - | **Nature** | Detection result | Classification |\n| **Examples** | \"Transition\ - \ at 00:03:15\" | FADE_IN, CUT, DISSOLVE |\n| **Properties** | Confidence, timestamps\ - \ | Semantic metadata |\n| **Cardinality** | Many instances per video | ~20-30\ - \ types |\n\n**USE CASE - Video Annotation**:\n\n```\nVideoAnnotation\n │\n\ - \ └── has_detected → DetectedEntity[]\n ├── has_type →\ - \ TransitionType (FADE_IN, CUT, etc.)\n ├── confidence_score → 0.95\n\ - \ ├── start_time → \"00:03:15\"\n └── end_time → \"00:03:17\"\n\ - ```\n\n**USE CASE - Text Detection**:\n\n```\nVideoAnnotation\n │\n └── has_detected\ - \ → DetectedEntity[]\n ├── has_type → TextType (TITLE, CAPTION,\ - \ etc.)\n ├── confidence_score → 0.87\n ├── has_geographic_extent\ - \ → [x1, y1, x2, y2]\n └── has_label → \"Museum Tour\"\n```\n\n\ - **ONTOLOGY ALIGNMENT**:\n\n- **PROV-O Entity**: Detected entities are generated\ - \ by activities\n- **W3C Web Annotation**: Compatible with annotation body/target\ - \ patterns\n- **CIDOC-CRM E73_Information_Object**: Information derived from\ - \ sources\n\n**RELATIONSHIP TO SLOTS**:\n\n- `has_detected`: Links from\ - \ VideoAnnotation → DetectedEntity[]\n- `has_type`: Links DetectedEntity\ - \ → TransitionType, TextType, etc.\n- Uses shared slots for identifier, label,\ - \ confidence\n" - abstract: false + description: >- + Observation artifact produced by automated analysis indicating a + machine-detected item with confidence and localization metadata. + alt_descriptions: + nl: {text: Observatieartefact uit geautomatiseerde analyse dat een machinaal gedetecteerd item met confidence- en lokalisatiemetadata vastlegt., language: nl} + de: {text: Beobachtungsartefakt aus automatisierter Analyse, das ein maschinell erkanntes Element mit Konfidenz- und Lokalisierungsmetadaten festhaelt., language: de} + fr: {text: Artefact d observation issu d une analyse automatisee indiquant un element detecte avec metadonnees de confiance et de localisation., language: fr} + es: {text: Artefacto de observacion generado por analisis automatizado que indica un elemento detectado con metadatos de confianza y localizacion., language: es} + ar: {text: أثر ملاحظاتي ناتج عن تحليل آلي يشير إلى عنصر مكتشف آلياً مع بيانات الثقة والتموضع., language: ar} + id: {text: Artefak observasi hasil analisis otomatis yang menunjukkan item terdeteksi mesin beserta metadata kepercayaan dan lokalisasi., language: id} + zh: {text: 由自动分析产生的观测实体,表示机器检测项及其置信度与定位元数据。, language: zh} + structured_aliases: + nl: [{literal_form: gedetecteerde entiteit, language: nl}] + de: [{literal_form: erkannte Entitaet, language: de}] + fr: [{literal_form: entite detectee, language: fr}] + es: [{literal_form: entidad detectada, language: es}] + ar: [{literal_form: كيان مكتشف, language: ar}] + id: [{literal_form: entitas terdeteksi, language: id}] + zh: [{literal_form: 检测实体, language: zh}] exact_mappings: - - prov:Entity + - prov:Entity close_mappings: - - crm:E73_Information_Object - - schema:DataDownload + - crm:E73_Information_Object related_mappings: - - schema:Thing - - crm:E21_Person + - schema:Thing slots: - - identified_by - - has_label - - has_type - - generated_by - - has_time_interval - - geographic_extent - - begin_of_the_begin + - identified_by + - has_label + - has_type + - generated_by + - has_time_interval + - geographic_extent + - begin_of_the_begin slot_usage: - identified_by: -# range: string - required: false - examples: - - value: detection-001 - - value: transition-fade-00:03:15 has_type: -# range: string required: true - examples: - - value: TransitionType:FADE_IN - - value: TextType:TITLE - has_label: -# range: string - required: false - examples: - - value: Museum Tour - - value: Opening Credits generated_by: range: GenerationEvent required: false inlined: true - description: 'Generation event containing confidence score for entity detection. - MIGRATED 2026-01-19: Replaces confidence_score slot with structured pattern.' - examples: - - value: - has_score: - has_score: 0.95 - has_method: computer_vision - - value: - has_score: - has_score: 0.62 - has_method: ocr_extraction has_time_interval: range: TimeInterval required: false inlined: true - examples: - - value: null geographic_extent: range: float multivalued: true required: false - examples: - - value: - - 100.0 - - 50.0 - - 400.0 - - 150.0 annotations: specificity_score: '0.65' - specificity_rationale: Fairly specific - detection entities are domain-relevant - for media analysis. - has_score: null - replaces_pattern: 'Replaces inline transition_types_detected and text_types_detected - slots - - with structured DetectedEntity → has_type → Type pattern. - - ' - custodian_types: '[''*'']' - comments: - - Base class for automated detection results - - Use has_type to link to specific Type classes (TransitionType, TextType) - - 'Captures detection metadata: confidence (via generated_by), timestamps, - bounding boxes' - - Generated by detection activities (prov:wasGeneratedBy pattern) - - 'Rule 39 compliant: uses has_* slot naming (migrated from has_or_had_*)' - - 'MIGRATED 2026-01-19: confidence_score → generated_by + ConfidenceScore' - see_also: - - https://www.w3.org/TR/prov-o/#Entity - - https://www.w3.org/TR/annotation-model/ - - http://www.cidoc-crm.org/cidoc-crm/E73_Information_Object - examples: - - value: - identified_by: transition-001 - has_type: TransitionType:FADE_IN - generated_by: - has_score: - has_score: 0.95 - has_method: video_analysis - start_time: 00:03:15 - has_time_interval: null - - value: - identified_by: text-001 - has_type: TextType:TITLE - has_label: Museum Tour Guide - generated_by: - has_score: - has_score: 0.87 - has_method: ocr_extraction - has_geographic_extent: - - 100.0 - - 50.0 - - 400.0 - - 150.0 + specificity_rationale: Fairly specific for media-analysis and extraction workflows + custodian_types: "['*']" diff --git a/schemas/20251121/linkml/modules/classes/DetectedFace.yaml b/schemas/20251121/linkml/modules/classes/DetectedFace.yaml index ad793d1e98..2b5c48dceb 100644 --- a/schemas/20251121/linkml/modules/classes/DetectedFace.yaml +++ b/schemas/20251121/linkml/modules/classes/DetectedFace.yaml @@ -21,7 +21,27 @@ imports: classes: DetectedFace: class_uri: schema:Thing - description: Detected face. + description: >- + Detection result representing a human face localized in visual media for + identification or review workflows. + alt_descriptions: + nl: {text: Detectieresultaat van een menselijk gezicht in visuele media voor identificatie- of reviewworkflows., language: nl} + de: {text: Erkennungsergebnis eines menschlichen Gesichts in visuellen Medien fuer Identifikations- oder Pruefprozesse., language: de} + fr: {text: Resultat de detection d un visage humain localise dans un media visuel pour identification ou revue., language: fr} + es: {text: Resultado de deteccion de un rostro humano localizado en medios visuales para identificacion o revision., language: es} + ar: {text: نتيجة كشف لوجه بشري في وسيط بصري لأغراض التعرف أو المراجعة., language: ar} + id: {text: Hasil deteksi wajah manusia pada media visual untuk alur identifikasi atau tinjauan., language: id} + zh: {text: 在视觉媒体中定位到的人脸检测结果,用于识别或复核流程。, language: zh} + structured_aliases: + nl: [{literal_form: gedetecteerd gezicht, language: nl}] + de: [{literal_form: erkanntes Gesicht, language: de}] + fr: [{literal_form: visage detecte, language: fr}] + es: [{literal_form: rostro detectado, language: es}] + ar: [{literal_form: وجه مكتشف, language: ar}] + id: [{literal_form: wajah terdeteksi, language: id}] + zh: [{literal_form: 检测到的人脸, language: zh}] + broad_mappings: + - schema:Thing slots: - has_label - generated_by diff --git a/schemas/20251121/linkml/modules/classes/DetectedLandmark.yaml b/schemas/20251121/linkml/modules/classes/DetectedLandmark.yaml index 68410601bb..1744cfbf01 100644 --- a/schemas/20251121/linkml/modules/classes/DetectedLandmark.yaml +++ b/schemas/20251121/linkml/modules/classes/DetectedLandmark.yaml @@ -14,7 +14,27 @@ imports: classes: DetectedLandmark: class_uri: schema:LandmarksOrHistoricalBuildings - description: Detected landmark. + description: >- + Detection result representing an identified landmark or historic building + feature within visual content. + alt_descriptions: + nl: {text: Detectieresultaat van een herkend landmark of historisch gebouwkenmerk in visuele content., language: nl} + de: {text: Erkennungsergebnis eines identifizierten Wahrzeichens oder historischen Gebaeudemerkmals in visuellem Inhalt., language: de} + fr: {text: Resultat de detection d un repere ou element de batiment historique dans un contenu visuel., language: fr} + es: {text: Resultado de deteccion de un hito o rasgo de edificio historico en contenido visual., language: es} + ar: {text: نتيجة كشف لمعلم أو سمة مبنى تاريخي داخل محتوى بصري., language: ar} + id: {text: Hasil deteksi tengaran atau fitur bangunan bersejarah dalam konten visual., language: id} + zh: {text: 视觉内容中识别到的地标或历史建筑特征检测结果。, language: zh} + structured_aliases: + nl: [{literal_form: gedetecteerd landmark, language: nl}] + de: [{literal_form: erkanntes Wahrzeichen, language: de}] + fr: [{literal_form: repere detecte, language: fr}] + es: [{literal_form: hito detectado, language: es}] + ar: [{literal_form: معلم مكتشف, language: ar}] + id: [{literal_form: landmark terdeteksi, language: id}] + zh: [{literal_form: 检测地标, language: zh}] + broad_mappings: + - schema:LandmarksOrHistoricalBuildings slots: - has_label - generated_by diff --git a/schemas/20251121/linkml/modules/classes/DetectedLogo.yaml b/schemas/20251121/linkml/modules/classes/DetectedLogo.yaml index f0deb10a65..7c9155cee4 100644 --- a/schemas/20251121/linkml/modules/classes/DetectedLogo.yaml +++ b/schemas/20251121/linkml/modules/classes/DetectedLogo.yaml @@ -21,7 +21,27 @@ imports: classes: DetectedLogo: class_uri: schema:Thing - description: Detected logo. + description: >- + Detection result representing a brand or institutional emblem identified + in media content. + alt_descriptions: + nl: {text: Detectieresultaat van een merk- of instellingsembleem in mediacontent., language: nl} + de: {text: Erkennungsergebnis eines Marken- oder Institutionsemblems in Medieninhalten., language: de} + fr: {text: Resultat de detection d un logo de marque ou d institution dans un contenu media., language: fr} + es: {text: Resultado de deteccion de un emblema de marca o institucion en contenido multimedia., language: es} + ar: {text: نتيجة كشف لشعار علامة تجارية أو مؤسسة ضمن محتوى وسائطي., language: ar} + id: {text: Hasil deteksi lambang merek atau institusi dalam konten media., language: id} + zh: {text: 在媒体内容中识别到的品牌或机构标识检测结果。, language: zh} + structured_aliases: + nl: [{literal_form: gedetecteerd logo, language: nl}] + de: [{literal_form: erkanntes Logo, language: de}] + fr: [{literal_form: logo detecte, language: fr}] + es: [{literal_form: logotipo detectado, language: es}] + ar: [{literal_form: شعار مكتشف, language: ar}] + id: [{literal_form: logo terdeteksi, language: id}] + zh: [{literal_form: 检测标识, language: zh}] + broad_mappings: + - schema:Thing slots: - has_label - generated_by diff --git a/schemas/20251121/linkml/modules/classes/DetectedObject.yaml b/schemas/20251121/linkml/modules/classes/DetectedObject.yaml index fb8c9136d9..0b5b85cba0 100644 --- a/schemas/20251121/linkml/modules/classes/DetectedObject.yaml +++ b/schemas/20251121/linkml/modules/classes/DetectedObject.yaml @@ -14,7 +14,27 @@ imports: classes: DetectedObject: class_uri: schema:Thing - description: Detected object. + description: >- + Detection result representing a physical or symbolic object localized in + media content. + alt_descriptions: + nl: {text: Detectieresultaat van een fysiek of symbolisch object gelokaliseerd in mediacontent., language: nl} + de: {text: Erkennungsergebnis eines physischen oder symbolischen Objekts, das in Medieninhalten lokalisiert wurde., language: de} + fr: {text: Resultat de detection d un objet physique ou symbolique localise dans un contenu media., language: fr} + es: {text: Resultado de deteccion de un objeto fisico o simbolico localizado en contenido multimedia., language: es} + ar: {text: نتيجة كشف لكائن مادي أو رمزي محدد الموضع داخل محتوى وسائطي., language: ar} + id: {text: Hasil deteksi objek fisik atau simbolik yang dilokalisasi dalam konten media., language: id} + zh: {text: 在媒体内容中定位到的实体或符号对象检测结果。, language: zh} + structured_aliases: + nl: [{literal_form: gedetecteerd object, language: nl}] + de: [{literal_form: erkanntes Objekt, language: de}] + fr: [{literal_form: objet detecte, language: fr}] + es: [{literal_form: objeto detectado, language: es}] + ar: [{literal_form: كائن مكتشف, language: ar}] + id: [{literal_form: objek terdeteksi, language: id}] + zh: [{literal_form: 检测对象, language: zh}] + broad_mappings: + - schema:Thing slots: - has_label - generated_by diff --git a/schemas/20251121/linkml/modules/classes/DetectionLevelType.yaml b/schemas/20251121/linkml/modules/classes/DetectionLevelType.yaml index 498c576f3f..9f3d7b59d4 100644 --- a/schemas/20251121/linkml/modules/classes/DetectionLevelType.yaml +++ b/schemas/20251121/linkml/modules/classes/DetectionLevelType.yaml @@ -20,39 +20,26 @@ classes: DetectionLevelType: class_uri: skos:Concept abstract: true - description: | - Abstract base class for detection confidence level types. - - **Type/Types Pattern (Rule 0b)**: - - `DetectionLevelType` (this file): Abstract base class - - `DetectionLevelTypes.yaml`: Concrete subclasses (HIGH, MEDIUM, LOW, etc.) - - **DEFINITION**: - - Detection levels categorize the confidence/quality of automated detection - results. Rather than raw numeric thresholds, these provide semantic - categories for filtering and display decisions. - - **Level Hierarchy**: - - | Level | Confidence Range | Use Case | - |-------|------------------|----------| - | HIGH | 0.9+ | Production, public display | - | MEDIUM | 0.7-0.9 | Review queue, moderate confidence | - | LOW | 0.5-0.7 | Research, exhaustive analysis | - | UNCERTAIN | < 0.5 | Flagged for manual review | - - **Ontological Alignment**: - - **SKOS**: `skos:Concept` - controlled vocabulary term - - **DQV**: Related to data quality metrics - - **Migrated From** (per slot_fixes.yaml): - - `detection_level` now uses: - - `filters_or_filtered` → DetectedEntity - - `has_type` → DetectionLevelType (this class) - - `include` → DetectionLevelTypes (subclasses) - - exact_mappings: + description: >- + Abstract taxonomy node for confidence-band categories assigned to + automated detection results. + alt_descriptions: + nl: {text: Abstract taxonomieknooppunt voor confidenceband-categorieen bij geautomatiseerde detectieresultaten., language: nl} + de: {text: Abstrakter Taxonomieknoten fuer Konfidenzband-Kategorien bei automatisierten Erkennungsergebnissen., language: de} + fr: {text: Noeud taxonomique abstrait pour les categories de bandes de confiance appliquees aux resultats de detection automatisee., language: fr} + es: {text: Nodo taxonomico abstracto para categorias de bandas de confianza asignadas a resultados de deteccion automatizada., language: es} + ar: {text: عقدة تصنيفية مجردة لفئات نطاقات الثقة المخصصة لنتائج الكشف الآلي., language: ar} + id: {text: Simpul taksonomi abstrak untuk kategori pita kepercayaan pada hasil deteksi otomatis., language: id} + zh: {text: 用于自动检测结果置信区间类别的抽象分类节点。, language: zh} + structured_aliases: + nl: [{literal_form: detectieniveautype, language: nl}] + de: [{literal_form: Erkennungsstufentyp, language: de}] + fr: [{literal_form: type de niveau de detection, language: fr}] + es: [{literal_form: tipo de nivel de deteccion, language: es}] + ar: [{literal_form: نوع مستوى الكشف, language: ar}] + id: [{literal_form: tipe tingkat deteksi, language: id}] + zh: [{literal_form: 检测级别类型, language: zh}] + broad_mappings: - skos:Concept close_mappings: diff --git a/schemas/20251121/linkml/modules/classes/DetectionLevelTypes.yaml b/schemas/20251121/linkml/modules/classes/DetectionLevelTypes.yaml index 48f56daa7e..7b0482d216 100644 --- a/schemas/20251121/linkml/modules/classes/DetectionLevelTypes.yaml +++ b/schemas/20251121/linkml/modules/classes/DetectionLevelTypes.yaml @@ -4,6 +4,7 @@ title: Detection Level Types prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ + skos: http://www.w3.org/2004/02/skos/core# default_prefix: hc imports: - ./DetectionLevelType diff --git a/schemas/20251121/linkml/modules/classes/DetectionThreshold.yaml b/schemas/20251121/linkml/modules/classes/DetectionThreshold.yaml new file mode 100644 index 0000000000..a6ebcf1854 --- /dev/null +++ b/schemas/20251121/linkml/modules/classes/DetectionThreshold.yaml @@ -0,0 +1,27 @@ +id: https://nde.nl/ontology/hc/class/DetectionThreshold +name: DetectionThreshold +title: Detection Threshold Class +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + dqv: http://www.w3.org/ns/dqv# + schema: http://schema.org/ +default_prefix: hc +imports: + - linkml:types + - ../slots/has_description + - ../slots/has_label + - ../slots/has_type +classes: + DetectionThreshold: + class_uri: dqv:QualityMeasurement + description: >- + Confidence cutoff specification used to filter machine-detection results in analysis pipelines. + exact_mappings: + - dqv:QualityMeasurement + close_mappings: + - schema:QuantitativeValue + slots: + - has_label + - has_description + - has_type diff --git a/schemas/20251121/linkml/modules/classes/DeviceType.yaml b/schemas/20251121/linkml/modules/classes/DeviceType.yaml new file mode 100644 index 0000000000..7251b8bd83 --- /dev/null +++ b/schemas/20251121/linkml/modules/classes/DeviceType.yaml @@ -0,0 +1,26 @@ +id: https://nde.nl/ontology/hc/class/DeviceType +name: device_type_class +title: DeviceType Class +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + schema: http://schema.org/ + skos: http://www.w3.org/2004/02/skos/core# +default_prefix: hc +imports: + - linkml:types + - ../slots/identified_by + - ../slots/has_label +classes: + DeviceType: + class_uri: skos:Concept + abstract: true + description: >- + Abstract taxonomy concept for classifying digital and IoT hardware used by heritage institutions. + broad_mappings: + - skos:Concept + close_mappings: + - schema:Product + slots: + - identified_by + - has_label diff --git a/schemas/20251121/linkml/modules/classes/DeviceTypes.yaml b/schemas/20251121/linkml/modules/classes/DeviceTypes.yaml new file mode 100644 index 0000000000..ee6bedf1ea --- /dev/null +++ b/schemas/20251121/linkml/modules/classes/DeviceTypes.yaml @@ -0,0 +1,61 @@ +id: https://nde.nl/ontology/hc/class/DeviceTypes +name: device_types_class +title: DeviceTypes Class +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + skos: http://www.w3.org/2004/02/skos/core# + schema: http://schema.org/ + sosa: http://www.w3.org/ns/sosa/ +default_prefix: hc +imports: + - ./DeviceType + - linkml:types +classes: + IoTBeacon: + is_a: DeviceType + class_uri: hc:IoTBeacon + description: Proximity device for location-triggered interactions. + broad_mappings: + - skos:Concept + close_mappings: + - sosa:Platform + - schema:Product + + IoTSensor: + is_a: DeviceType + class_uri: hc:IoTSensor + description: Sensing device for environmental or usage measurements. + broad_mappings: + - skos:Concept + close_mappings: + - sosa:Sensor + - schema:Product + + IoTKiosk: + is_a: DeviceType + class_uri: hc:IoTKiosk + description: Interactive public terminal for discovery and service access. + broad_mappings: + - skos:Concept + close_mappings: + - schema:Product + + IoTDisplay: + is_a: DeviceType + class_uri: hc:IoTDisplay + description: Networked display device for signage and interpretation. + broad_mappings: + - skos:Concept + close_mappings: + - schema:Product + + IoTActuator: + is_a: DeviceType + class_uri: hc:IoTActuator + description: Control device that performs physical actions from digital signals. + broad_mappings: + - skos:Concept + close_mappings: + - sosa:Actuator + - schema:Product diff --git a/schemas/20251121/linkml/modules/classes/DiarizationStatus.yaml b/schemas/20251121/linkml/modules/classes/DiarizationStatus.yaml new file mode 100644 index 0000000000..05fbd27854 --- /dev/null +++ b/schemas/20251121/linkml/modules/classes/DiarizationStatus.yaml @@ -0,0 +1,22 @@ +id: https://nde.nl/ontology/hc/class/DiarizationStatus +name: diarization_status_class +title: DiarizationStatus Class +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + schema: http://schema.org/ +default_prefix: hc +imports: + - linkml:types + - ../slots/identified_by + - ../slots/has_label +classes: + DiarizationStatus: + class_uri: schema:ActionStatusType + description: >- + Processing-state indicator for speaker diarization workflows. + exact_mappings: + - schema:ActionStatusType + slots: + - identified_by + - has_label diff --git a/schemas/20251121/linkml/modules/classes/DigitalArchive.yaml b/schemas/20251121/linkml/modules/classes/DigitalArchive.yaml new file mode 100644 index 0000000000..c99b2e926a --- /dev/null +++ b/schemas/20251121/linkml/modules/classes/DigitalArchive.yaml @@ -0,0 +1,37 @@ +id: https://nde.nl/ontology/hc/class/DigitalArchive +name: digital_archive_class +title: Digital Archive Type +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + skos: http://www.w3.org/2004/02/skos/core# + schema: http://schema.org/ + wd: http://www.wikidata.org/entity/ +default_prefix: hc +imports: + - ../classes/AgentType + - linkml:types + - ../slots/identified_by + - ../slots/has_scope + - ../slots/has_format + - ../slots/has_interface + - ../slots/hold_record_set + - ../slots/has_score +classes: + DigitalArchive: + is_a: CustodianType + class_uri: skos:Concept + description: >- + Custodian category for institutions whose primary archival operations are delivered through digital systems. + broad_mappings: + - skos:Concept + - schema:ArchiveOrganization + related_mappings: + - wd:Q1224984 + slots: + - identified_by + - has_scope + - has_format + - has_interface + - hold_record_set + - has_score diff --git a/schemas/20251121/linkml/modules/classes/DigitalArchiveRecordSetType.yaml b/schemas/20251121/linkml/modules/classes/DigitalArchiveRecordSetType.yaml new file mode 100644 index 0000000000..4283e23e87 --- /dev/null +++ b/schemas/20251121/linkml/modules/classes/DigitalArchiveRecordSetType.yaml @@ -0,0 +1,24 @@ +id: https://nde.nl/ontology/hc/class/DigitalArchiveRecordSetType +name: DigitalArchiveRecordSetType +title: DigitalArchive Record Set Type +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + rico: https://www.ica.org/standards/RiC/ontology# + skos: http://www.w3.org/2004/02/skos/core# +default_prefix: hc +imports: + - linkml:types + - ../slots/has_scope +classes: + DigitalArchiveRecordSetType: + is_a: CollectionType + abstract: true + class_uri: rico:RecordSetType + description: >- + Abstract taxonomy node for digital-archive record-set categories. + broad_mappings: + - rico:RecordSetType + - skos:Concept + slots: + - has_scope diff --git a/schemas/20251121/linkml/modules/classes/DigitalArchiveRecordSetTypes.yaml b/schemas/20251121/linkml/modules/classes/DigitalArchiveRecordSetTypes.yaml new file mode 100644 index 0000000000..651c3797e3 --- /dev/null +++ b/schemas/20251121/linkml/modules/classes/DigitalArchiveRecordSetTypes.yaml @@ -0,0 +1,73 @@ +id: https://nde.nl/ontology/hc/class/DigitalArchiveRecordSetTypes +name: DigitalArchiveRecordSetTypes +title: DigitalArchive Record Set Type Subclasses +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + rico: https://www.ica.org/standards/RiC/ontology# + rico-rst: https://www.ica.org/standards/RiC/vocabularies/recordSetTypes# +default_prefix: hc +imports: + - ./DigitalArchiveRecordSetType + - linkml:types + - ../slots/has_score + - ../slots/has_type + - ../slots/has_custodian + - ../slots/has_note +classes: + DigitalObjectCollection: + is_a: DigitalArchiveRecordSetType + class_uri: rico:RecordSetType + description: Collection-level aggregation of born-digital materials. + broad_mappings: + - rico:RecordSetType + related_mappings: + - rico-rst:Collection + slots: + - has_type + - has_score + - has_custodian + - has_note + slot_usage: + has_type: + equals_string: DigitalObjectCollection + has_custodian: + equals_string: DigitalArchive + + DigitizedCollection: + is_a: DigitalArchiveRecordSetType + class_uri: rico:RecordSetType + description: Collection-level aggregation of digitized source materials. + broad_mappings: + - rico:RecordSetType + related_mappings: + - rico-rst:Collection + slots: + - has_type + - has_score + - has_custodian + - has_note + slot_usage: + has_type: + equals_string: DigitizedCollection + has_custodian: + equals_string: DigitalArchive + + WebArchiveCollection: + is_a: DigitalArchiveRecordSetType + class_uri: rico:RecordSetType + description: Collection-level aggregation of captured web content. + broad_mappings: + - rico:RecordSetType + related_mappings: + - rico-rst:Collection + slots: + - has_type + - has_score + - has_custodian + - has_note + slot_usage: + has_type: + equals_string: WebArchiveCollection + has_custodian: + equals_string: DigitalArchive diff --git a/schemas/20251121/linkml/modules/classes/DigitalConfidence.yaml b/schemas/20251121/linkml/modules/classes/DigitalConfidence.yaml new file mode 100644 index 0000000000..0a3f7e699f --- /dev/null +++ b/schemas/20251121/linkml/modules/classes/DigitalConfidence.yaml @@ -0,0 +1,30 @@ +id: https://nde.nl/ontology/hc/class/DigitalConfidence +name: DigitalConfidence +title: Digital Confidence Class +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + dqv: http://www.w3.org/ns/dqv# +default_prefix: hc +imports: + - linkml:types + - ../slots/has_description + - ../slots/has_score + - ../slots/has_type +classes: + DigitalConfidence: + class_uri: dqv:QualityMeasurement + description: >- + Confidence assessment for inferred or extracted digital attributes. + exact_mappings: + - dqv:QualityMeasurement + slots: + - has_score + - has_description + - has_type + slot_usage: + has_score: + range: float + required: true + minimum_value: 0.0 + maximum_value: 1.0 diff --git a/schemas/20251121/linkml/modules/classes/DigitalInstantiation.yaml b/schemas/20251121/linkml/modules/classes/DigitalInstantiation.yaml index 04a8d5a477..08e673b0d8 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalInstantiation.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalInstantiation.yaml @@ -1,9 +1,11 @@ id: https://nde.nl/ontology/hc/class/DigitalInstantiation name: DigitalInstantiation -description: Representation of a digital surrogate, digitization status, or digital manifestation of an entity. Captures details about digital availability, format, and resolution. +title: Digital Instantiation Class prefixes: + linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ crm: http://www.cidoc-crm.org/cidoc-crm/ +default_prefix: hc imports: - linkml:types - ../slots/has_label @@ -12,19 +14,11 @@ imports: classes: DigitalInstantiation: class_uri: crm:E73_Information_Object - description: A digital manifestation or surrogate of a heritage entity. MIGRATED from digital_surrogate, digital_surrogate_url, and digitization_status slots (2026-01-25). + description: >- + Digital surrogate or manifestation record describing access endpoint and lifecycle status. + broad_mappings: + - crm:E73_Information_Object slots: - - has_url - - has_status - - has_label - slot_usage: - has_url: - range: uri - has_status: - range: Status - has_label: -# range: string - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: "['*']" + - has_url + - has_status + - has_label diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatform.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatform.yaml index b1af56e3e4..f91edaa1cb 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatform.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatform.yaml @@ -1,310 +1,60 @@ id: https://nde.nl/ontology/hc/class/digital-platform name: digital_platform_class title: DigitalPlatform Class +prefixes: + linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + schema: http://schema.org/ + dcat: http://www.w3.org/ns/dcat# + doap: http://usefulinc.com/ns/doap# + prov: http://www.w3.org/ns/prov# +default_prefix: hc imports: - linkml:types - - ../slots/related_to - ../slots/has_endpoint - - ../slots/has_score - ../slots/has_url - - ../slots/has_inventory - - ../slots/associated_with - - ../slots/checked_through - - ../slots/derive_from - - ../slots/generated_by - - ../slots/stored_at - - ../slots/has_linked_data - - ../slots/has_standard - ../slots/identified_by - ../slots/has_label - ../slots/has_type - ../slots/has_level - ../slots/refer_to - - ../slots/powered_by - - ../slots/has_finding_aid + - ../slots/has_standard + - ../slots/has_linked_data - ../slots/temporal_extent -prefixes: - linkml: https://w3id.org/linkml/ - hc: https://nde.nl/ontology/hc/ - schema: http://schema.org/ - foaf: http://xmlns.com/foaf/0.1/ - dcat: http://www.w3.org/ns/dcat# - dcterms: http://purl.org/dc/terms/ - crm: http://www.cidoc-crm.org/cidoc-crm/ - doap: http://usefulinc.com/ns/doap# - premis: http://www.loc.gov/premis/rdf/v3/ - prov: http://www.w3.org/ns/prov# + - ../slots/has_score + - ../slots/derive_from + - ../slots/generated_by classes: DigitalPlatform: is_a: ReconstructedEntity class_uri: schema:WebSite - description: "Digital platform or online system associated with a heritage custodian.\n\ - \n**CRITICAL DISTINCTION**:\n\n**DigitalPlatform CLASS** (this class):\n- Represents\ - \ the DIGITAL INFRASTRUCTURE of any custodian\n- Used by PHYSICAL institutions\ - \ (museums, archives, libraries) to represent their websites\n- Used by DIGITAL-FIRST\ - \ institutions to represent their primary platform\n- Examples: Rijksmuseum\ - \ website, museum online catalog, archive digital portal\n\n**DigitalPlatformType**\ - \ (custodian type):\n- Classification for DIGITAL-FIRST custodians (online-only,\ - \ no physical building)\n- Example: Europeana (aggregation platform), Internet\ - \ Archive (born-digital)\n\n**Decision Rules**:\n\n1. **Physical Institution\ - \ with Website**:\n - Custodian.custodian_type = MUSEUM/ARCHIVE/LIBRARY (not\ - \ DIGITAL_PLATFORM)\n - Custodian.digital_platform → DigitalPlatform instance\ - \ (this class)\n - Example: Rijksmuseum (MUSEUM) has Rijksstudio (DigitalPlatform)\n\ - \n2. **Digital-First Institution**:\n - Custodian.custodian_type = DIGITAL_PLATFORM\ - \ (DigitalPlatformType)\n - Custodian.digital_platform → DigitalPlatform instance\ - \ (primary platform)\n - Example: Europeana (DIGITAL_PLATFORM) operates at\ - \ https://europeana.eu/\n\n**Relationship to Custodian Hub**:\n\nDigitalPlatform\ - \ is DIRECTLY connected to Custodian via refers_to_custodian,\njust like CustodianPlace,\ - \ CustodianName, and CustodianLegalStatus.\n\nThis allows modeling:\n- Multiple\ - \ digital platforms per custodian (website + API + mobile app)\n- Platform evolution\ - \ over time (temporal validity)\n- Platform features and technical capabilities\n\ - - Access points for digital heritage\n\n- Schema.org: schema:WebSite (primary),\ - \ schema:WebApplication\n- DCAT: dcat:Catalog (for aggregation platforms), dcat:DataService\ - \ (for APIs)\n- FOAF: foaf:homepage, foaf:Document\n- CIDOC-CRM: crm:E73_Information_Object\ - \ (digital objects)\n\n**Example - Physical Museum with Digital Platform**:\n\ - ```yaml\nCustodian:\n identified_by: \"https://nde.nl/ontology/hc/nl-nh-ams-m-rm-q190804\"\ - \n preferred_label: \"Rijksmuseum\"\n custodian_type: MUSEUM # Physical institution\n\ - \ digital_platform:\n - platform_name: \"Rijksmuseum Website\"\n homepage_web_address:\ - \ \"https://www.rijksmuseum.nl/\"\n platform_type: DISCOVERY_PORTAL\n \ - \ iiif_support: true\n linked_data: true\n```\n\n**Example - Digital-First\ - \ Platform**:\n```yaml\nCustodian:\n identified_by: \"https://nde.nl/ontology/hc/eu-europeana\"\ - \n preferred_label: \"Europeana\"\n custodian_type: DIGITAL_PLATFORM # Digital-first\n\ - \ digital_platform:\n - platform_name: \"Europeana Platform\"\n homepage_web_address:\ - \ \"https://www.europeana.eu/\"\n platform_type: AGGREGATION_PLATFORM\n\ - \ api_endpoint: \"https://api.europeana.eu/\"\n iiif_support: true\n\ - \ linked_data: true\n programming_languages: [\"Java\", \"Python\"\ - , \"JavaScript\"]\n```\n" + description: >- + Digital service surface operated by a custodian for discovery, access, and delivery of heritage resources. exact_mappings: - - schema:WebSite + - schema:WebSite close_mappings: - - foaf:homepage - - schema:WebApplication - - dcat:Catalog - - dcat:DataService - - crm:E73_Information_Object - - doap:Project - - premis:IntellectualEntity + - schema:WebApplication + - dcat:DataService + - dcat:Catalog + - doap:Project related_mappings: - - foaf:Document - - schema:SoftwareApplication - - dcat:accessURL + - schema:SoftwareApplication + - prov:Entity slots: - - has_endpoint - - related_to - - checked_through - - has_url - - has_inventory - - has_linked_data - - has_standard - - has_endpoint - - identified_by - - has_label - - has_type - - has_level - - refer_to - - powered_by - - has_finding_aid - - has_endpoint - - stored_at - - has_score - - temporal_extent - - derive_from - - generated_by - - has_provenance + - has_endpoint + - has_url + - identified_by + - has_label + - has_type + - has_level + - refer_to + - has_standard + - has_linked_data + - temporal_extent + - has_score + - derive_from + - generated_by slot_usage: - identified_by: -# range: string # uriorcurie - required: false - examples: - - value: https://nde.nl/ontology/hc/platform/rijksmuseum-website - has_label: -# range: string - required: false - examples: - - value: Rijksmuseum Website - - value: Europeana Platform - has_type: -# range: string - multivalued: false - required: false - examples: - - value: DigitalArchivePlatform - description: Digital archive platform (wd:Q1224984) - - value: AggregationPlatform - description: Aggregation platform (wd:Q7894) - - value: WEBSITE - has_url: - range: uri - required: false - inlined: false # Fixed invalid inline for primitive type - examples: - - value: - has_url: https://www.rijksmuseum.nl/ - has_type: homepage - - value: - has_url: https://www.europeana.eu/ - has_type: homepage - has_inventory: - range: uri - multivalued: true - examples: - - value: https://www.nationaalarchief.nl/onderzoeken/index - has_endpoint: - range: APIEndpoint - inlined: true - examples: - - value: - has_url: https://api.europeana.eu/record/v2/ - has_description: Europeana REST API endpoint - has_endpoint: - range: uri - examples: - - value: https://api.europeana.eu/sparql - has_endpoint: - range: uri - examples: - - value: https://www.europeana.eu/oai - powered_by: -# range: string - examples: - - value: DSpace 7.2 - has_linked_data: - range: boolean - examples: - - value: true - has_standard: -# range: string - multivalued: true - examples: - - value: Dublin Core - - value: MARC21 - associated_with: - range: AuxiliaryDigitalPlatform - multivalued: true - inlined_as_list: true - required: false - examples: - - value: - - platform_name: Rijksstudio - has_type: - has_label: PROJECT_WEBSITE - platform_url: https://www.rijksmuseum.nl/nl/rijksstudio - - platform_name: Rijksmuseum Data API - has_type: - has_label: API_ENDPOINT - platform_url: https://data.rijksmuseum.nl/ - temporal_extent: - range: TimeSpan - examples: - - value: - begin_of_the_begin: '2008-11-20' - end_of_the_begin: '2008-11-20' - derive_from: - range: CustodianObservation - multivalued: true - required: false - generated_by: - range: ReconstructionActivity - required: false refer_to: range: Custodian - required: false - examples: - - value: https://nde.nl/ontology/hc/nl-nh-ams-m-rm-q190804 - has_level: -# range: string - required: false - examples: - - value: full_preservation - - value: bit_preservation - stored_at: - range: StorageLocation - required: false - inlined: true - examples: - - value: - identified_by: aws-s3-eu-west-1 - has_label: - label_text: AWS S3 eu-west-1 - language: en - - value: - identified_by: dans-data-archive - has_label: - label_text: DANS Data Archive - language: en - checked_through: - range: FixityVerification - inlined: true - required: false - examples: - - value: - temporal_extent: - begin_of_the_begin: '2025-11-15' - has_label: Last full fixity check - has_finding_aid: -# range: string # uriorcurie - multivalued: true - inlined_as_list: false # Fixed invalid inline for primitive type - required: false - examples: - - value: https://nde.nl/ontology/hc/finding-aid/na/voc-inventory - - value: https://nde.nl/ontology/hc/finding-aid/rm/paintings-catalogue - comments: - - DigitalPlatform is DIRECTLY linked to Custodian hub (not a subclass of CustodianObservation) - - Used by BOTH physical institutions (website) and digital-first custodians (primary - platform) - - 'Multivalued on Custodian: one custodian can have multiple platforms (website - + API + mobile app)' - - Temporal validity tracks platform lifecycle (launch, shutdown, migration) - - IIIF and linked data flags enable discovery of interoperable platforms - - 'MIGRATED: auxiliary_platforms → has_auxiliary_entities for AuxiliaryDigitalPlatform - sites (project portals, microsites, APIs)' - - Hierarchical pattern mirrors CustodianName → CustodianAppellation relationship - see_also: - - https://schema.org/WebSite - - https://www.w3.org/ns/dcat - - https://iiif.io/ - - http://usefulinc.com/ns/doap# - - https://www.loc.gov/standards/premis/ - examples: - - value: - platform_id: https://nde.nl/ontology/hc/platform/rijksmuseum-website - platform_name: Rijksmuseum Website - has_type: - - DiscoveryPortal - has_url: - has_url: https://www.rijksmuseum.nl/ - has_type: homepage - api_endpoint: https://www.rijksmuseum.nl/api/ - linked_data: true - has_standard: - - Dublin Core - - LIDO - refers_to_custodian: https://nde.nl/ontology/hc/nl-nh-ams-m-rm-q190804 - - value: - platform_id: https://nde.nl/ontology/hc/platform/europeana - platform_name: Europeana Platform - has_type: - - AggregationPlatform - - APIService - has_url: - has_url: https://www.europeana.eu/ - has_type: homepage - has_endpoint: - has_url: https://api.europeana.eu/record/v2/ - sparql_endpoint: https://api.europeana.eu/sparql - oai_pmh_endpoint: https://www.europeana.eu/oai - linked_data: true - has_standard: - - EDM (Europeana Data Model) - - Dublin Core - - LIDO - - EAD - temporal_extent: - begin_of_the_begin: '2008-11-20' - end_of_the_begin: '2008-11-20' - refers_to_custodian: https://nde.nl/ontology/hc/eu-europeana - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' + required: true diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformScore.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformScore.yaml index 81686ed1c2..7e42373087 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformScore.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformScore.yaml @@ -4,15 +4,7 @@ title: Digital Platform Score Class prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ - schema: http://schema.org/ sosa: http://www.w3.org/ns/sosa/ - dcterms: http://purl.org/dc/terms/ - prov: http://www.w3.org/ns/prov# - crm: http://www.cidoc-crm.org/cidoc-crm/ - skos: http://www.w3.org/2004/02/skos/core# - rdfs: http://www.w3.org/2000/01/rdf-schema# - org: http://www.w3.org/ns/org# - xsd: http://www.w3.org/2001/XMLSchema# default_prefix: hc imports: - linkml:types @@ -20,28 +12,15 @@ imports: classes: DigitalPlatformScore: class_uri: sosa:Result - description: 'Represents a score for digital platform relevance or specificity. - - - **MIGRATION SOURCE**: Created from digital_platform_score slot migration (Rule 53, 2026-01-25). - - - **Ontological Alignment**: - - - **Primary**: `sosa:Result` - Result of an observation/scoring - - ' + description: >- + Quantitative scoring result for platform relevance, confidence, or specificity. exact_mappings: - - sosa:Result + - sosa:Result slots: - - has_score + - has_score slot_usage: has_score: range: float required: true minimum_value: 0.0 maximum_value: 1.0 - annotations: - custodian_types: '["*"]' - specificity_score: 0.2 - specificity_rationale: Used for scoring digital platform relevance. diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformType.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformType.yaml index 6bafd5ad6d..9deeadcdfa 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformType.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformType.yaml @@ -3,15 +3,13 @@ name: digital_platform_type_class title: Digital Platform Type prefixes: linkml: https://w3id.org/linkml/ + hc: https://nde.nl/ontology/hc/ + skos: http://www.w3.org/2004/02/skos/core# schema: http://schema.org/ dcat: http://www.w3.org/ns/dcat# - dcterms: http://purl.org/dc/terms/ - skos: http://www.w3.org/2004/02/skos/core# - wikidata: http://www.wikidata.org/entity/ +default_prefix: hc imports: - linkml:types - - ../enums/PlatformTypeCategoryEnum - - ../metadata - ../slots/has_example - ../slots/has_feature - ../slots/has_score @@ -24,150 +22,19 @@ classes: DigitalPlatformType: class_uri: skos:Concept abstract: true - annotations: - skos:prefLabel: Digital Platform - skos:altLabel: digital library, online archive, virtual museum, web portal, digital repository, aggregator, discovery platform - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: "['*']" - structured_aliases: - - literal_form: digitaal platform - predicate: EXACT_SYNONYM - in_language: nl - - literal_form: digitale bibliotheek - predicate: EXACT_SYNONYM - in_language: nl - - literal_form: online archief - predicate: EXACT_SYNONYM - in_language: nl - - literal_form: virtueel museum - predicate: EXACT_SYNONYM - in_language: nl - - literal_form: webportaal - predicate: EXACT_SYNONYM - in_language: nl - - literal_form: digital platform - predicate: EXACT_SYNONYM - in_language: en - - literal_form: digital library - predicate: EXACT_SYNONYM - in_language: en - - literal_form: online archive - predicate: EXACT_SYNONYM - in_language: en - - literal_form: virtual museum - predicate: EXACT_SYNONYM - in_language: en - - literal_form: web portal - predicate: EXACT_SYNONYM - in_language: en - - literal_form: aggregator - predicate: EXACT_SYNONYM - in_language: en - - literal_form: digitale Plattform - predicate: EXACT_SYNONYM - in_language: de - - literal_form: digitale Bibliothek - predicate: EXACT_SYNONYM - in_language: de - - literal_form: Online-Archiv - predicate: EXACT_SYNONYM - in_language: de - - literal_form: virtuelles Museum - predicate: EXACT_SYNONYM - in_language: de - - literal_form: Webportal - predicate: EXACT_SYNONYM - in_language: de - - literal_form: "plateforme num\xE9rique" - predicate: EXACT_SYNONYM - in_language: fr - - literal_form: "biblioth\xE8que num\xE9rique" - predicate: EXACT_SYNONYM - in_language: fr - - literal_form: archives en ligne - predicate: EXACT_SYNONYM - in_language: fr - - literal_form: "mus\xE9e virtuel" - predicate: EXACT_SYNONYM - in_language: fr - - literal_form: portail web - predicate: EXACT_SYNONYM - in_language: fr - - literal_form: plataforma digital - predicate: EXACT_SYNONYM - in_language: es - - literal_form: biblioteca digital - predicate: EXACT_SYNONYM - in_language: es - - literal_form: "archivo en l\xEDnea" - predicate: EXACT_SYNONYM - in_language: es - - literal_form: museo virtual - predicate: EXACT_SYNONYM - in_language: es - - literal_form: portal web - predicate: EXACT_SYNONYM - in_language: es - - literal_form: piattaforma digitale - predicate: EXACT_SYNONYM - in_language: it - - literal_form: biblioteca digitale - predicate: EXACT_SYNONYM - in_language: it - - literal_form: archivio online - predicate: EXACT_SYNONYM - in_language: it - - literal_form: museo virtuale - predicate: EXACT_SYNONYM - in_language: it - - literal_form: plataforma digital - predicate: EXACT_SYNONYM - in_language: pt - - literal_form: biblioteca digital - predicate: EXACT_SYNONYM - in_language: pt - - literal_form: arquivo online - predicate: EXACT_SYNONYM - in_language: pt - - literal_form: museu virtual - predicate: EXACT_SYNONYM - in_language: pt - description: "Abstract base class for digital platform type classifications in the heritage domain.\n\n**DEFINITION**:\n\nDigitalPlatformType represents CATEGORIES of heritage digital platforms,\nnot individual platform instances. Each subclass defines characteristics of a\nplatform category (function, scope, typical features, etc.).\n\n**CRITICAL: TYPE vs INSTANCE**\n\n| Aspect | DigitalPlatformType (This Class) | DigitalPlatform (Instance Class) |\n|--------|-------------------------------------|----------------------------------|\n| **Nature** | Classification/category | Individual platform |\n| **Examples** | DIGITAL_LIBRARY, VIRTUAL_MUSEUM | Gallica, Rijksstudio |\n| **Properties** | Category metadata, typical standards | URL, content count, operator |\n| **Cardinality** | ~70 types | Thousands of instances |\n\n**CATEGORY STRUCTURE**:\n\nPlatform types are organized into high-level categories:\n\n1. **REPOSITORY**: Platforms for storing/accessing digital content\n - Digital Library,\ - \ Digital Archive, Document Repository\n - Open Access Repository, Preservation Repository\n \n2. **AGGREGATOR**: Platforms aggregating from multiple sources\n - Aggregator, Bibliographic Database, Specialized Database\n - Regional Portal, Archives Portal\n \n3. **DISCOVERY**: Platforms for searching/browsing heritage\n - Web Portal, Online Database, Data Platform\n - Collection Browser, Virtual Library\n \n4. **VIRTUAL_HERITAGE**: Digital representations of physical heritage\n - Virtual Museum, Virtual Herbarium, Virtual Map Library\n - Online Art Gallery, Virtual Tour\n \n5. **RESEARCH**: Platforms supporting scholarly research\n - Disciplinary Repository, Preprint Server\n - Genealogy Database, Geospatial Repository\n \n6. **INTERACTIVE**: Platforms enabling user engagement\n - Crowdsourcing Platform, Educational Portal\n - Social Media, Blog/News\n \n7. **COMMERCE**: Transaction-oriented platforms\n - Booking System, Webshop\n \n8. **AUXILIARY**:\ - \ Secondary/supporting platforms\n - Project Website, Exhibition Microsite, API Endpoint\n - Mobile App, Legacy Platform\n\n**MIGRATION FROM ENUMS**:\n\nThis class hierarchy replaces two enums:\n- `DigitalPlatformTypeEnum` (53 values from Wikidata)\n- `AuxiliaryDigitalPlatformTypeEnum` (16 values)\n\nEach enum value becomes a subclass with richer semantic modeling.\n\n**USAGE IN DIGITALPLATFORM**:\n\nThe DigitalPlatform.platform_type slot references these types:\n```yaml\nDigitalPlatform:\n platform_type:\n range: DigitalPlatformType # Polymorphic - any subclass\n```\n\n**ONTOLOGY ALIGNMENT**:\n\n- SKOS Concept: Platform types are concepts in a controlled vocabulary\n- Wikidata: Many types have Wikidata entity mappings\n- DCAT: Data Catalog vocabulary for data platforms\n- Schema.org: Web semantics for platform properties\n\n**SUBCLASSES**:\n\nSee DigitalPlatformTypes.yaml for 69 concrete platform type subclasses organized\nby category: REPOSITORY, AGGREGATOR, DISCOVERY, VIRTUAL_HERITAGE,\ - \ RESEARCH,\nINTERACTIVE, COMMERCE, and AUXILIARY.\n" + description: >- + Abstract taxonomy concept for classifying platform functions and service patterns. exact_mappings: - - skos:Concept + - skos:Concept close_mappings: - - dcat:Catalog - - schema:WebSite + - schema:DefinedTerm + - dcat:Catalog slots: - - has_example - - has_label - - has_hypernym - - has_type - - has_type - - has_type - - has_score - - has_standard - - has_feature - - related_to - slot_usage: - has_type: - identifier: true - required: true - has_type: - required: true - has_hypernym: - required: false - comments: - - Abstract base class - use specific subclasses (DigitalLibrary, VirtualMuseum, etc.) - - Represents PLATFORM TYPES, not platform instances - - DigitalPlatform.platform_type references these type classes - - Replaces DigitalPlatformTypeEnum and AuxiliaryDigitalPlatformTypeEnum - - Organized by function, scope, and technical characteristics - see_also: - - https://www.wikidata.org/ - - https://www.w3.org/2004/02/skos/ - - https://www.w3.org/ns/dcat + - has_example + - has_label + - has_hypernym + - has_type + - has_score + - has_standard + - has_feature + - related_to diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformUserIdentifier.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformUserIdentifier.yaml index e9d0c3bff5..131fd43861 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformUserIdentifier.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformUserIdentifier.yaml @@ -4,69 +4,29 @@ title: Digital Platform User Identifier Class prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ + foaf: http://xmlns.com/foaf/0.1/ schema: http://schema.org/ dcterms: http://purl.org/dc/terms/ - foaf: http://xmlns.com/foaf/0.1/ - as: https://www.w3.org/ns/activitystreams# +default_prefix: hc imports: - linkml:types - ../slots/has_type - ../slots/has_url - - ../metadata - ../slots/identified_by - ../slots/has_label -default_prefix: hc classes: DigitalPlatformUserIdentifier: is_a: Identifier class_uri: hc:DigitalPlatformUserIdentifier - description: 'Identifier for a user account on a digital platform (YouTube, Twitter, - etc.). **PURPOSE**: Structured representation of platform-specific user identifiers, - such as YouTube channel IDs, Twitter handles, or Instagram usernames. Replaces - simple string channel_id slots with typed identifiers. **DESIGN RATIONALE**: - Created per slot_fixes.yaml migration from `comment_author_channel_id` string - to structured `has_author` + `Author` with `identified_by` + - `DigitalPlatformUserIdentifier` for platform user identification. **PLATFORM - IDENTIFIER TYPES**: | Platform | Identifier Type | Example | |----------|-----------------|---------| - | YouTube | Channel ID | UC1234abcdef | | Twitter/X | User ID | 12345678 | | - Instagram | Username | @museum_account | | Facebook | Page ID | 123456789 | - | LinkedIn | Company ID | heritage-foundation | | TikTok | User ID | museum_official - | **ONTOLOGY ALIGNMENT**: | Ontology | Class/Property | Usage | |----------|----------------|-------| - | **Dublin Core** | `dcterms:identifier` | Base identifier semantics | | **Schema.org** - | `schema:identifier` | Web-standard identifier | | **FOAF** | `foaf:OnlineAccount` - | Online account modeling | | **Activity Streams** | `as:Person` | Social media - activity | ' - exact_mappings: - - foaf:OnlineAccount + description: >- + Platform-account identifier for authors, contributors, or institutional profiles in external services. close_mappings: - - schema:identifier + - foaf:OnlineAccount + - schema:identifier related_mappings: - - dcterms:identifier - - as:actor - slot_usage: - ifabsent: string(digital_platform_user_id) - examples: - - value: - platform_type: youtube - profile_url: https://www.youtube.com/channel/UCsT0YIqwnpJCM-mx7-gSA4Q - - value: - platform_type: twitter - profile_url: https://twitter.com/rijksmuseum - - value: - platform_type: youtube - comments: - - Created per slot_fixes.yaml migration from comment_author_channel_id (2026-01-22) - - Extends Identifier class with platform-specific fields - - Use for identifying users/authors on digital platforms - - Supports YouTube, Twitter, Instagram, Facebook, LinkedIn, TikTok - see_also: - - http://xmlns.com/foaf/0.1/OnlineAccount - - https://www.w3.org/ns/activitystreams - - https://developers.google.com/youtube/v3/docs/channels - annotations: - specificity_score: 0.7 - specificity_rationale: Specific to digital platform user identification contexts. - custodian_types: '[''*'']' + - dcterms:identifier slots: - - has_type - - has_url + - has_type + - has_url + - identified_by + - has_label diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2.yaml index ddb2340593..dd4ca61850 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2.yaml @@ -1,13 +1,13 @@ -id: https://nde.nl/ontology/hc/classes/DigitalPlatformV2 -name: DigitalPlatformV2 -title: DigitalPlatformV2 +id: https://nde.nl/ontology/hc/class/DigitalPlatformProfile +name: DigitalPlatformProfile +title: Digital Platform Profile prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ schema: http://schema.org/ prov: http://www.w3.org/ns/prov# org: http://www.w3.org/ns/org# - xsd: http://www.w3.org/2001/XMLSchema# +default_prefix: hc imports: - linkml:types - ./DigitalPlatformV2Provenance @@ -29,11 +29,11 @@ imports: - ../slots/has_contact_details - ../slots/has_facility - ../slots/contain_collection -# default_range: string classes: - DigitalPlatformV2: - description: "Enhanced digital platform data structure (v2)" + DigitalPlatformProfile: class_uri: org:Organization + description: >- + Consolidated profile record for an organization's digital platform footprint and service metadata. slots: - has_metadata - has_status @@ -52,20 +52,4 @@ classes: - refer_to - has_contact_details - has_facility - - has_digital_platform - - has_provenance - contain_collection - - has_url - slot_usage: - identified_by: - description: External identifiers (Wikidata, Sigla, ICO, etc.) -# range: string - multivalued: true - inlined_as_list: false # Fixed invalid inline for primitive type - has_type: - description: Type of platform (institutional_website, discovery_portal, etc.) - can be string or array -# range: string - any_of: - - range: string - - range: string - multivalued: true diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2DataQualityNotes.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2DataQualityNotes.yaml index 5ee2a84864..28fa822246 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2DataQualityNotes.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2DataQualityNotes.yaml @@ -1,27 +1,18 @@ -id: https://nde.nl/ontology/hc/classes/DigitalPlatformV2DataQualityNotes -name: DigitalPlatformV2DataQualityNotes -title: DigitalPlatformV2DataQualityNotes +id: https://nde.nl/ontology/hc/class/DigitalPlatformDataQualityNotes +name: DigitalPlatformDataQualityNotes +title: Digital Platform Data Quality Notes prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ dqv: http://www.w3.org/ns/dqv# - xsd: http://www.w3.org/2001/XMLSchema# - schema: http://schema.org/ - dcterms: http://purl.org/dc/terms/ - prov: http://www.w3.org/ns/prov# - crm: http://www.cidoc-crm.org/cidoc-crm/ - skos: http://www.w3.org/2004/02/skos/core# - rdfs: http://www.w3.org/2000/01/rdf-schema# - org: http://www.w3.org/ns/org# +default_prefix: hc imports: - linkml:types -# default_range: string classes: - DigitalPlatformV2DataQualityNotes: - description: Notes about data quality, verification status, and source checks + DigitalPlatformDataQualityNotes: class_uri: dqv:QualityAnnotation - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' + description: >- + Notes describing verification state, completeness, and known quality limitations. + broad_mappings: + - dqv:QualityAnnotation slots: [] diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2DataSource.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2DataSource.yaml index 0c9af986d8..19b7b3abad 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2DataSource.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2DataSource.yaml @@ -1,24 +1,22 @@ -id: https://nde.nl/ontology/hc/classes/DigitalPlatformV2DataSource -name: DigitalPlatformV2DataSource -title: DigitalPlatformV2DataSource +id: https://nde.nl/ontology/hc/class/DigitalPlatformDataSource +name: DigitalPlatformDataSource +title: Digital Platform Data Source prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ prov: http://www.w3.org/ns/prov# - xsd: http://www.w3.org/2001/XMLSchema# +default_prefix: hc imports: - linkml:types -# default_range: string classes: - DigitalPlatformV2DataSource: - description: Individual data source used for enrichment with quality tier + DigitalPlatformDataSource: class_uri: prov:Entity - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' + description: >- + Individual source artifact used in platform profiling and enrichment. + broad_mappings: + - prov:Entity slots: - - has_type - - has_url - - retrieved_by - - retrieved_at + - has_type + - has_url + - retrieved_by + - retrieved_at diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2KeyContact.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2KeyContact.yaml index 8d50e68674..10ed6b17ee 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2KeyContact.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2KeyContact.yaml @@ -1,22 +1,20 @@ -id: https://nde.nl/ontology/hc/classes/DigitalPlatformV2KeyContact -name: DigitalPlatformV2KeyContact -title: DigitalPlatformV2KeyContact +id: https://nde.nl/ontology/hc/class/DigitalPlatformKeyContact +name: DigitalPlatformKeyContact +title: Digital Platform Key Contact prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ schema: http://schema.org/ - xsd: http://www.w3.org/2001/XMLSchema# +default_prefix: hc imports: - linkml:types -# default_range: string classes: - DigitalPlatformV2KeyContact: - description: Key staff contact for the organization + DigitalPlatformKeyContact: class_uri: schema:Person - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' + description: >- + Responsible contact profile for platform operations, support, or governance communication. + close_mappings: + - schema:ContactPoint slots: - - has_name - - has_source + - has_name + - has_source diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2OrganizationProfile.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2OrganizationProfile.yaml index cb586e260a..5ce5a4b0a6 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2OrganizationProfile.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2OrganizationProfile.yaml @@ -1,30 +1,26 @@ -id: https://nde.nl/ontology/hc/classes/DigitalPlatformV2OrganizationProfile -name: DigitalPlatformV2OrganizationProfile -title: DigitalPlatformV2OrganizationProfile +id: https://nde.nl/ontology/hc/class/DigitalPlatformOrganizationProfile +name: DigitalPlatformOrganizationProfile +title: Digital Platform Organization Profile prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ schema: http://schema.org/ - xsd: http://www.w3.org/2001/XMLSchema# +default_prefix: hc imports: - linkml:types - ../slots/founded_through - ../slots/has_type - ../slots/has_scope -# default_range: string classes: - DigitalPlatformV2OrganizationProfile: - description: Detailed profile of the organization including type, scope, and description + DigitalPlatformOrganizationProfile: class_uri: schema:Organization + description: >- + Organizational profile section covering institutional type, scope, and founding context. slots: - - founded_through - - has_type - - has_scope + - founded_through + - has_type + - has_scope slot_usage: founded_through: range: FoundingEvent inlined: true - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2OrganizationStatus.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2OrganizationStatus.yaml index 32d01e18c0..e74dab2e04 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2OrganizationStatus.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2OrganizationStatus.yaml @@ -1,28 +1,20 @@ -id: https://nde.nl/ontology/hc/classes/DigitalPlatformV2OrganizationStatus -name: DigitalPlatformV2OrganizationStatus -title: DigitalPlatformV2OrganizationStatus +id: https://nde.nl/ontology/hc/class/DigitalPlatformOrganizationStatus +name: DigitalPlatformOrganizationStatus +title: Digital Platform Organization Status prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ org: http://www.w3.org/ns/org# - xsd: http://www.w3.org/2001/XMLSchema# - schema: http://schema.org/ - dcterms: http://purl.org/dc/terms/ - prov: http://www.w3.org/ns/prov# - crm: http://www.cidoc-crm.org/cidoc-crm/ - skos: http://www.w3.org/2004/02/skos/core# - rdfs: http://www.w3.org/2000/01/rdf-schema# +default_prefix: hc imports: - linkml:types -# default_range: string classes: - DigitalPlatformV2OrganizationStatus: - description: Current operational status and legal form of an organization + DigitalPlatformOrganizationStatus: class_uri: org:Organization - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' + description: >- + Operational and legal standing statement for the organization behind a platform. + close_mappings: + - org:FormalOrganization slots: - - has_legal_form - - has_label + - has_legal_form + - has_label diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2PrimaryPlatform.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2PrimaryPlatform.yaml index cd1a31a921..be1253e91f 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2PrimaryPlatform.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2PrimaryPlatform.yaml @@ -1,25 +1,23 @@ -id: https://nde.nl/ontology/hc/classes/DigitalPlatformV2PrimaryPlatform -name: DigitalPlatformV2PrimaryPlatform -title: DigitalPlatformV2PrimaryPlatform +id: https://nde.nl/ontology/hc/class/DigitalPlatformPrimaryPlatform +name: DigitalPlatformPrimaryPlatform +title: Digital Platform Primary Platform prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ schema: http://schema.org/ - xsd: http://www.w3.org/2001/XMLSchema# +default_prefix: hc imports: - linkml:types -# default_range: string classes: - DigitalPlatformV2PrimaryPlatform: - description: Primary digital platform or website for the organization + DigitalPlatformPrimaryPlatform: class_uri: schema:WebSite - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' + description: >- + Primary web surface designated as the main public access point for an organization. + exact_mappings: + - schema:WebSite slots: - - identified_by - - has_url - - has_type - - has_label - - in_language + - identified_by + - has_url + - has_type + - has_label + - in_language diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2Provenance.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2Provenance.yaml index 8cb15fb1d3..9cc20f824c 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2Provenance.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2Provenance.yaml @@ -1,20 +1,18 @@ -id: https://nde.nl/ontology/hc/classes/DigitalPlatformV2Provenance -name: DigitalPlatformV2Provenance -title: DigitalPlatformV2Provenance +id: https://nde.nl/ontology/hc/class/DigitalPlatformProvenance +name: DigitalPlatformProvenance +title: Digital Platform Provenance prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ prov: http://www.w3.org/ns/prov# - xsd: http://www.w3.org/2001/XMLSchema# +default_prefix: hc imports: - linkml:types -# default_range: string classes: - DigitalPlatformV2Provenance: - description: Research provenance including date, agent, and data sources + DigitalPlatformProvenance: class_uri: prov:Activity - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' + description: >- + Provenance activity documenting profiling steps, data retrieval, and transformation decisions. + broad_mappings: + - prov:Activity slots: [] diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2ServiceDetails.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2ServiceDetails.yaml index 98eafd6abe..0c947d4fed 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2ServiceDetails.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2ServiceDetails.yaml @@ -1,26 +1,18 @@ -id: https://nde.nl/ontology/hc/classes/DigitalPlatformV2ServiceDetails -name: DigitalPlatformV2ServiceDetails -title: DigitalPlatformV2ServiceDetails +id: https://nde.nl/ontology/hc/class/DigitalPlatformServiceDetails +name: DigitalPlatformServiceDetails +title: Digital Platform Service Details prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ schema: http://schema.org/ - xsd: http://www.w3.org/2001/XMLSchema# - dcterms: http://purl.org/dc/terms/ - prov: http://www.w3.org/ns/prov# - crm: http://www.cidoc-crm.org/cidoc-crm/ - skos: http://www.w3.org/2004/02/skos/core# - rdfs: http://www.w3.org/2000/01/rdf-schema# - org: http://www.w3.org/ns/org# +default_prefix: hc imports: - linkml:types -# default_range: string classes: - DigitalPlatformV2ServiceDetails: - description: Service offerings, opening hours, and regional support information + DigitalPlatformServiceDetails: class_uri: schema:OpeningHoursSpecification - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' + description: >- + Service specification block describing availability, support windows, and delivery constraints. + close_mappings: + - schema:Service slots: [] diff --git a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2TransformationMetadata.yaml b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2TransformationMetadata.yaml index b2fe1c8c92..984b2767cc 100644 --- a/schemas/20251121/linkml/modules/classes/DigitalPlatformV2TransformationMetadata.yaml +++ b/schemas/20251121/linkml/modules/classes/DigitalPlatformV2TransformationMetadata.yaml @@ -1,26 +1,18 @@ -id: https://nde.nl/ontology/hc/classes/DigitalPlatformV2TransformationMetadata -name: DigitalPlatformV2TransformationMetadata -title: DigitalPlatformV2TransformationMetadata +id: https://nde.nl/ontology/hc/class/DigitalPlatformTransformationMetadata +name: DigitalPlatformTransformationMetadata +title: Digital Platform Transformation Metadata prefixes: linkml: https://w3id.org/linkml/ hc: https://nde.nl/ontology/hc/ prov: http://www.w3.org/ns/prov# - xsd: http://www.w3.org/2001/XMLSchema# - schema: http://schema.org/ - dcterms: http://purl.org/dc/terms/ - crm: http://www.cidoc-crm.org/cidoc-crm/ - skos: http://www.w3.org/2004/02/skos/core# - rdfs: http://www.w3.org/2000/01/rdf-schema# - org: http://www.w3.org/ns/org# +default_prefix: hc imports: - linkml:types -# default_range: string classes: - DigitalPlatformV2TransformationMetadata: - description: Metadata about how a DigitalPlatformV2 record was created or transformed + DigitalPlatformTransformationMetadata: class_uri: prov:Activity - annotations: - specificity_score: 0.1 - specificity_rationale: Generic utility class/slot created during migration - custodian_types: '[''*'']' + description: >- + Transformation metadata describing how platform profile records were generated or normalized. + broad_mappings: + - prov:Activity slots: []