glam/schemas/20251121/linkml/modules/classes/URL.yaml
kempersc fc405445c6 Refactor and update schema definitions
- Removed obsolete slots: `has_or_had_custodian_observation`, `provider`, and `specificity_annotation`.
- Updated `has_or_had_score` slot to use `SpecificityScore` class and modified its description and examples.
- Added new slots: `end_seconds`, `end_time`, `has_archive_path`, `has_or_had_custodian_name`, `protocol_name`, and `protocol_version`.
- Introduced a script `check_annotation_types.py` to validate the presence and structure of `custodian_types` in YAML files.
- Added a script `update_specificity.py` to automate updates related to `SpecificityAnnotation` to `SpecificityScore`.
2026-02-01 19:55:38 +01:00

94 lines
No EOL
3 KiB
YAML

id: https://nde.nl/ontology/hc/class/URL
name: url_class
title: URL Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
dcterms: http://purl.org/dc/terms/
prov: http://www.w3.org/ns/prov#
default_prefix: hc
imports:
- linkml:types
- ../metadata
- ../slots/has_or_had_score # was: template_specificity
- ../slots/has_or_had_type # was: url_type
- ../slots/has_or_had_url # was: url_value
- ../slots/language
classes:
URL:
class_uri: schema:URL
description: |
Structured representation of a URL with type classification and metadata.
**Purpose**:
URL provides a reusable class for representing web addresses with
additional context about what type of URL it is (website, API, archive, etc.)
and optional language/locale information.
**Ontological Alignment**:
- **Primary**: `schema:URL` - Schema.org URL datatype
- **Close**: `dcterms:URI` - Dublin Core URI
- **Related**: `prov:Entity` - Provenance entity (for archived URLs)
**Use Cases**:
- Institution websites: `has_or_had_url` with type "website"
- API endpoints: `has_or_had_url` with type "api"
- Web archive snapshots: `is_or_was_webarchived_at` with archive URL
- Vendor/supplier sites: `has_or_had_url` with type "vendor"
**Replaces** (per slot_fixes.yaml):
- `website` (simple string URL)
- `url` (simple string URL)
- `vendor_url` (simple string URL)
- `was_archived_at` (simple string URL)
exact_mappings:
- schema:URL
close_mappings:
- dcterms:URI
related_mappings:
- prov:Entity
slots:
- has_or_had_url # was: url_value - migrated 2026-01-16 per Rule 53
- has_or_had_type # was: url_type - migrated 2026-01-16 per Rule 53
- language
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
slot_usage:
has_or_had_url: # was: url_value - migrated 2026-01-16 per Rule 53
range: uri
required: true
has_or_had_type: # was: url_type - migrated 2026-01-16 per Rule 53
range: string
required: false
language:
range: string
required: false
pattern: "^[a-z]{2}(-[A-Z]{2})?$"
annotations:
custodian_types: '["*"]'
custodian_types_rationale: URLs apply to all heritage custodian types.
custodian_types_primary: null
specificity_score: 0.15
specificity_rationale: Generic URL class applicable across all contexts.
examples:
- value: |
has_or_had_url: "https://www.rijksmuseum.nl/"
has_or_had_type: website
language: nl
- value: |
has_or_had_url: "https://api.rijksmuseum.nl/api/nl/collection"
has_or_had_type: api
language: nl
- value: |
has_or_had_url: "https://web.archive.org/web/20240101/https://example.org/"
has_or_had_type: webarchive