- 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`.
77 lines
3.7 KiB
YAML
77 lines
3.7 KiB
YAML
id: https://nde.nl/ontology/hc/class/DataServiceEndpoint
|
|
name: data_service_endpoint
|
|
title: DataServiceEndpoint Class
|
|
prefixes:
|
|
linkml: https://w3id.org/linkml/
|
|
hc: https://nde.nl/ontology/hc/
|
|
dcat: http://www.w3.org/ns/dcat#
|
|
dcterms: http://purl.org/dc/terms/
|
|
schema: http://schema.org/
|
|
hydra: http://www.w3.org/ns/hydra/core#
|
|
xsd: http://www.w3.org/2001/XMLSchema#
|
|
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#
|
|
imports:
|
|
- linkml:types
|
|
- ../enums/AuthenticationMethodEnum
|
|
- ../enums/DataServiceProtocolEnum
|
|
- ../enums/EndpointStatusEnum
|
|
- ../metadata
|
|
- ../slots/has_or_had_score
|
|
- ../slots/has_or_had_url
|
|
- ../slots/is_or_was_required
|
|
- ../slots/response_format
|
|
classes:
|
|
DataServiceEndpoint:
|
|
abstract: true
|
|
class_uri: dcat:DataService
|
|
slots:
|
|
- is_or_was_required
|
|
- response_format
|
|
- has_or_had_url
|
|
- has_or_had_score
|
|
description: "Abstract base class for API service endpoints exposed by heritage\
|
|
\ digital platforms.\n\n**Purpose:**\n\nModels the technical API endpoints discovered\
|
|
\ at heritage institutions, enabling:\n- Machine-readable discovery of available\
|
|
\ APIs\n- Integration with aggregation platforms\n- Automated harvesting and\
|
|
\ synchronization\n- Developer documentation\n\n**DCAT 3 Alignment:**\n\nMaps\
|
|
\ to `dcat:DataService` which represents:\n- \"A collection of operations that\
|
|
\ provides access to one or more datasets or data processing functions\"\n-\
|
|
\ Has endpoint URL (dcat:endpointURL)\n- Has endpoint description/documentation\
|
|
\ (dcat:endpointDescription)\n- May serve one or more datasets (dcat:servesDataset)\n\
|
|
\n**Subclasses:**\n\n| Class | Protocol | Purpose |\n|-------|----------|---------|\n\
|
|
| OAIPMHEndpoint | OAI-PMH | Metadata harvesting |\n| SearchAPI | REST/JSON\
|
|
\ | Search and discovery |\n| METSAPI | REST/XML | METS document retrieval |\n\
|
|
| FileAPI | REST | File/asset download |\n| IIPImageServer | IIP/IIIF | Image\
|
|
\ serving |\n| EADDownload | HTTP | EAD finding aid export |\n\n**Example -\
|
|
\ Nationaal Archief APIs:**\n\n```yaml\ndigital_platform:\n platform_name:\
|
|
\ \"Nationaal Archief Website\"\n data_service_endpoints:\n - endpoint_type:\
|
|
\ OAIPMHEndpoint\n endpoint_url: \"https://www.nationaalarchief.nl/onderzoeken/oai-pmh\"\
|
|
\n protocol: OAI-PMH\n \n - endpoint_type: SearchAPI\n endpoint_url:\
|
|
\ \"https://www.nationaalarchief.nl/onderzoeken/api/zoeken\"\n protocol:\
|
|
\ REST\n response_formats: [\"application/json\"]\n \n - endpoint_type:\
|
|
\ IIPImageServer\n endpoint_url: \"https://service.archief.nl/iipsrv\"\n\
|
|
\ protocol: IIP\n```\n\n**Provenance:**\n\nDataServiceEndpoint instances\
|
|
\ MUST include discovery provenance:\n- When the endpoint was discovered\n-\
|
|
\ How it was discovered (web scrape, documentation, API testing)\n- Verification\
|
|
\ status\n"
|
|
exact_mappings:
|
|
- dcat:DataService
|
|
close_mappings:
|
|
- schema:WebAPI
|
|
- hydra:ApiDocumentation
|
|
comments:
|
|
- Abstract class - use concrete subclasses (OAIPMHEndpoint, SearchAPI, etc.)
|
|
- Maps to DCAT 3 dcat:DataService for semantic interoperability
|
|
- Required for modeling API infrastructure of heritage digital platforms
|
|
see_also:
|
|
- https://www.w3.org/TR/vocab-dcat-3/#Class:Data_Service
|
|
- https://schema.org/WebAPI
|
|
- https://www.hydra-cg.com/spec/latest/core/
|
|
annotations:
|
|
specificity_score: 0.1
|
|
specificity_rationale: Generic utility class/slot created during migration
|
|
custodian_types: '[''*'']'
|