glam/frontend/public/schemas/20251121/linkml/modules/classes/URL.yaml
kempersc 53c6dbc2d9 feat(schema): Migrate temporal slots and introduce new pattern classes
Major slot migrations following slot_fixes.yaml revisions:
- TimeSpan: begin_of_the_begin, begin_of_the_end, end_of_the_begin, end_of_the_end
- Quantity: has_or_had_measurement_unit with MeasureUnit class
- Description: has_or_had_description with Description class
- URL, WikiData, Timestamp, Location, Provenance pattern classes

New slots for RiC-O compliance:
- Temporal: has_or_had_time_interval, calendar_system
- Transfer: is_or_was_transferred, has_or_had_policy
- Location: starts/ends_or_started/ended_at_location
- Provenance: has_or_had_provenance_path, is_or_was_webarchived_at

Archive deprecated slots per Rule 53 workflow.
2026-01-14 20:01:55 +01:00

121 lines
3.6 KiB
YAML

# URL class
# Structured URL representation with type and metadata
#
# Generation date: 2026-01-15
# Rule compliance: 0 (LinkML single source of truth), 38 (slot centralization), 53 (slot_fixes.yaml)
#
# This class supports 4 slot migrations per slot_fixes.yaml:
# - website → has_or_had_url + URL
# - url → has_or_had_url + URL
# - vendor_url → has_or_had_url + URL
# - was_archived_at → is_or_was_webarchived_at + URL
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/url_value
- ../slots/url_type
- ../slots/language
- ../slots/specificity_annotation
- ../slots/template_specificity
- ./SpecificityAnnotation
- ./TemplateSpecificityScores
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:
- url_value
- url_type
- language
- specificity_annotation
- template_specificity
slot_usage:
url_value:
description: |
The actual URL string (e.g., https://example.org/).
range: uri
required: true
url_type:
description: |
Classification of the URL type (website, api, archive, etc.).
range: string
required: false
language:
description: |
Language/locale of the content at this URL.
ISO 639-1 code, optionally with region (e.g., "en", "nl-NL").
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: |
url_value: "https://www.rijksmuseum.nl/"
url_type: website
language: nl
description: "Official website URL for Rijksmuseum"
- value: |
url_value: "https://api.rijksmuseum.nl/api/nl/collection"
url_type: api
language: nl
description: "API endpoint for Rijksmuseum collection"
- value: |
url_value: "https://web.archive.org/web/20240101/https://example.org/"
url_type: webarchive
description: "Web archive snapshot URL"