glam/schemas/20251121/linkml/modules/classes/Appointment.yaml
kempersc ca4a54181e Refactor schema files to improve clarity and maintainability
- Updated WorldCatIdentifier.yaml to remove unnecessary description and ensure consistent formatting.
- Enhanced WorldHeritageSite.yaml by breaking long description into multiple lines for better readability and removed unused attributes.
- Simplified WritingSystem.yaml by removing redundant attributes and ensuring consistent formatting.
- Cleaned up XPathScore.yaml by removing unnecessary attributes and ensuring consistent formatting.
- Improved YoutubeChannel.yaml by breaking long description into multiple lines for better readability.
- Enhanced YoutubeEnrichment.yaml by breaking long description into multiple lines for better readability.
- Updated YoutubeVideo.yaml to break long description into multiple lines and removed legacy field name.
- Refined has_or_had_affiliation.yaml by removing unnecessary comments and ensuring clarity.
- Cleaned up is_or_was_retrieved_at.yaml by removing unnecessary comments and ensuring clarity.
- Added rules for generic slots and avoiding rough edits in schema files to maintain structural integrity.
- Introduced changes_or_changed_through.yaml to define a new slot for linking entities to change events.
2026-01-31 00:46:23 +01:00

111 lines
4.5 KiB
YAML

id: https://nde.nl/ontology/hc/class/Appointment
name: appointment_class
title: Appointment Class
version: 1.0.0
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
rico: https://www.ica.org/standards/RiC/ontology#
imports:
- linkml:types
- ../slots/has_or_had_description
- ../slots/has_or_had_label
- ../slots/temporal_extent
- ./TimeSpan
default_prefix: hc
classes:
Appointment:
class_uri: schema:Reservation
description: "Models an appointment or reservation requirement as a structured entity.\n\n**PURPOSE**:\nHeritage institutions often require appointments for:\n- Special collections access\n- Reading room reservations \n- Guided tours of sensitive materials\n- Conservation viewing requests\n\nBy modeling appointments as entities (not just boolean flags), we can capture:\n- Lead time requirements (24h, 48h, 1 week in advance)\n- Booking methods (email, phone, online form)\n- Confirmation requirements\n- Cancellation policies\n- Temporal validity (when appointments are required)\n\n**ONTOLOGY ALIGNMENT**:\n- schema:Reservation - \"A reservation for an event, service, or product\"\n- rico:conditionsOfAccess - Links to RiC-O access condition patterns\n\n**REPLACES**:\n- appointment_required (boolean) - Now modeled as structured entity\n- requires_appointment (boolean) - Preserved for backward compatibility\n"
exact_mappings:
- schema:Reservation
close_mappings:
- rico:Rule
slots:
- has_or_had_label
- has_or_had_description
- temporal_extent
attributes:
appointment_id:
description: Unique identifier for this appointment requirement type
range: uriorcurie
identifier: true
lead_time_hours:
description: 'Minimum hours in advance that appointment must be booked.
E.g., 24 = appointment must be made at least 24 hours before.
'
range: integer
minimum_value: 0
examples:
- value: 24
description: 24 hours advance notice
- value: 48
description: 48 hours advance notice
- value: 168
description: 1 week (168 hours) advance notice
booking_method:
description: How appointments can be made
range: string
multivalued: true
examples:
- value: email
description: Book via email
- value: phone
description: Book via telephone
- value: online_form
description: Book via website form
- value: in_person
description: Book at institution
booking_contact:
description: Contact information for making appointments
range: string
examples:
- value: studiezaal@nationaalarchief.nl
- value: +31 70 331 5400
confirmation_required:
description: Whether confirmation of appointment is required before visit
range: boolean
cancellation_notice_hours:
description: Hours in advance cancellation must be made
range: integer
minimum_value: 0
appointment_required:
description: 'Whether appointment is mandatory (true) or recommended (false).
Preserves backward compatibility with boolean appointment_required field.
'
range: boolean
examples:
- value: true
description: Appointment is mandatory
- value: false
description: Appointment recommended but not required
slot_usage:
has_or_had_label:
examples:
- value: Reading Room Appointment
- value: Special Collections Viewing
- value: Conservation Lab Access
has_or_had_description:
examples:
- value: "Appointments for the Special Collections reading room must be made \nat least 48 hours in advance. Please specify which materials you \nwish to consult. Maximum 5 items per visit.\n"
temporal_extent:
range: TimeSpan
inlined: true
examples:
- value:
appointment_id: hc:appointment/nationaal-archief-special-collections
has_or_had_label: Special Collections Appointment
has_or_had_description: Advance appointment required for manuscript and map collections
- value:
appointment_id: hc:appointment/reading-room-recommended
has_or_had_label: Reading Room Reservation
has_or_had_description: Reservations recommended but walk-ins accepted based on availability
annotations:
specificity_score: 0.1
specificity_rationale: Generic utility class/slot created during migration
custodian_types: "['*']"