chore: trigger DSPy eval workflow
All checks were successful
Deploy Frontend / build-and-deploy (push) Successful in 4m13s
All checks were successful
Deploy Frontend / build-and-deploy (push) Successful in 4m13s
This commit is contained in:
parent
75d53a006e
commit
5d3d8530b0
50 changed files with 1988 additions and 4777 deletions
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"generated": "2026-01-11T20:42:55.546Z",
|
"generated": "2026-01-11T21:26:38.219Z",
|
||||||
"schemaRoot": "/schemas/20251121/linkml",
|
"schemaRoot": "/schemas/20251121/linkml",
|
||||||
"totalFiles": 2869,
|
"totalFiles": 2869,
|
||||||
"categoryCounts": {
|
"categoryCounts": {
|
||||||
|
|
@ -3952,41 +3952,6 @@
|
||||||
"path": "modules/slots/accepts_or_accepted_visiting_scholar.yaml",
|
"path": "modules/slots/accepts_or_accepted_visiting_scholar.yaml",
|
||||||
"category": "slot"
|
"category": "slot"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "access_rights",
|
|
||||||
"path": "modules/slots/access_rights.yaml",
|
|
||||||
"category": "slot"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "access_trigger_events",
|
|
||||||
"path": "modules/slots/access_trigger_events.yaml",
|
|
||||||
"category": "slot"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "account_id",
|
|
||||||
"path": "modules/slots/account_id.yaml",
|
|
||||||
"category": "slot"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "accumulation_date_end",
|
|
||||||
"path": "modules/slots/accumulation_date_end.yaml",
|
|
||||||
"category": "slot"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "accumulation_date_start",
|
|
||||||
"path": "modules/slots/accumulation_date_start.yaml",
|
|
||||||
"category": "slot"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "accuracy_meters",
|
|
||||||
"path": "modules/slots/accuracy_meters.yaml",
|
|
||||||
"category": "slot"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "active_since",
|
|
||||||
"path": "modules/slots/active_since.yaml",
|
|
||||||
"category": "slot"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "activities_societies",
|
"name": "activities_societies",
|
||||||
"path": "modules/slots/activities_societies.yaml",
|
"path": "modules/slots/activities_societies.yaml",
|
||||||
|
|
@ -5672,6 +5637,21 @@
|
||||||
"path": "modules/slots/custodian_only.yaml",
|
"path": "modules/slots/custodian_only.yaml",
|
||||||
"category": "slot"
|
"category": "slot"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "custodian_type_broader",
|
||||||
|
"path": "modules/slots/custodian_type_broader.yaml",
|
||||||
|
"category": "slot"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "custodian_type_narrower",
|
||||||
|
"path": "modules/slots/custodian_type_narrower.yaml",
|
||||||
|
"category": "slot"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "custodian_type_related",
|
||||||
|
"path": "modules/slots/custodian_type_related.yaml",
|
||||||
|
"category": "slot"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "custody_history",
|
"name": "custody_history",
|
||||||
"path": "modules/slots/custody_history.yaml",
|
"path": "modules/slots/custody_history.yaml",
|
||||||
|
|
@ -5812,6 +5792,11 @@
|
||||||
"path": "modules/slots/defined_by_standard.yaml",
|
"path": "modules/slots/defined_by_standard.yaml",
|
||||||
"category": "slot"
|
"category": "slot"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "definition",
|
||||||
|
"path": "modules/slots/definition.yaml",
|
||||||
|
"category": "slot"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "degree_name",
|
"name": "degree_name",
|
||||||
"path": "modules/slots/degree_name.yaml",
|
"path": "modules/slots/degree_name.yaml",
|
||||||
|
|
@ -6877,6 +6862,16 @@
|
||||||
"path": "modules/slots/financial_document_url.yaml",
|
"path": "modules/slots/financial_document_url.yaml",
|
||||||
"category": "slot"
|
"category": "slot"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "finding_aid_access_restriction",
|
||||||
|
"path": "modules/slots/finding_aid_access_restriction.yaml",
|
||||||
|
"category": "slot"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "finding_aid_description",
|
||||||
|
"path": "modules/slots/finding_aid_description.yaml",
|
||||||
|
"category": "slot"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "finding_aid_note",
|
"name": "finding_aid_note",
|
||||||
"path": "modules/slots/finding_aid_note.yaml",
|
"path": "modules/slots/finding_aid_note.yaml",
|
||||||
|
|
@ -6887,6 +6882,11 @@
|
||||||
"path": "modules/slots/finding_aid_scope_note.yaml",
|
"path": "modules/slots/finding_aid_scope_note.yaml",
|
||||||
"category": "slot"
|
"category": "slot"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "finding_aid_temporal_coverage",
|
||||||
|
"path": "modules/slots/finding_aid_temporal_coverage.yaml",
|
||||||
|
"category": "slot"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "finding_aid_type",
|
"name": "finding_aid_type",
|
||||||
"path": "modules/slots/finding_aid_type.yaml",
|
"path": "modules/slots/finding_aid_type.yaml",
|
||||||
|
|
@ -7292,11 +7292,6 @@
|
||||||
"path": "modules/slots/has_accession_number.yaml",
|
"path": "modules/slots/has_accession_number.yaml",
|
||||||
"category": "slot"
|
"category": "slot"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "has_account_identifier",
|
|
||||||
"path": "modules/slots/has_account_identifier.yaml",
|
|
||||||
"category": "slot"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "has_accumulation_end_date",
|
"name": "has_accumulation_end_date",
|
||||||
"path": "modules/slots/has_accumulation_end_date.yaml",
|
"path": "modules/slots/has_accumulation_end_date.yaml",
|
||||||
|
|
@ -7332,11 +7327,6 @@
|
||||||
"path": "modules/slots/has_acquisition_source.yaml",
|
"path": "modules/slots/has_acquisition_source.yaml",
|
||||||
"category": "slot"
|
"category": "slot"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "has_active_since_date",
|
|
||||||
"path": "modules/slots/has_active_since_date.yaml",
|
|
||||||
"category": "slot"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "has_activity_description",
|
"name": "has_activity_description",
|
||||||
"path": "modules/slots/has_activity_description.yaml",
|
"path": "modules/slots/has_activity_description.yaml",
|
||||||
|
|
@ -8067,6 +8057,11 @@
|
||||||
"path": "modules/slots/has_or_had_accessibility_feature.yaml",
|
"path": "modules/slots/has_or_had_accessibility_feature.yaml",
|
||||||
"category": "slot"
|
"category": "slot"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "has_or_had_account_identifier",
|
||||||
|
"path": "modules/slots/has_or_had_account_identifier.yaml",
|
||||||
|
"category": "slot"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "has_or_had_account_name",
|
"name": "has_or_had_account_name",
|
||||||
"path": "modules/slots/has_or_had_account_name.yaml",
|
"path": "modules/slots/has_or_had_account_name.yaml",
|
||||||
|
|
@ -9477,6 +9472,11 @@
|
||||||
"path": "modules/slots/is_or_was_access_restricted.yaml",
|
"path": "modules/slots/is_or_was_access_restricted.yaml",
|
||||||
"category": "slot"
|
"category": "slot"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "is_or_was_active_since",
|
||||||
|
"path": "modules/slots/is_or_was_active_since.yaml",
|
||||||
|
"category": "slot"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "is_or_was_affected_by_event",
|
"name": "is_or_was_affected_by_event",
|
||||||
"path": "modules/slots/is_or_was_affected_by_event.yaml",
|
"path": "modules/slots/is_or_was_affected_by_event.yaml",
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"generated": "2026-01-11T21:26:38.219Z",
|
"generated": "2026-01-11T21:40:23.628Z",
|
||||||
"schemaRoot": "/schemas/20251121/linkml",
|
"schemaRoot": "/schemas/20251121/linkml",
|
||||||
"totalFiles": 2869,
|
"totalFiles": 2869,
|
||||||
"categoryCounts": {
|
"categoryCounts": {
|
||||||
|
|
|
||||||
|
|
@ -20,33 +20,26 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/AllocationDomainEnum
|
||||||
classes:
|
classes:
|
||||||
AllocationAgency:
|
AllocationAgency:
|
||||||
class_uri: org:FormalOrganization
|
class_uri: org:FormalOrganization
|
||||||
description: "An organization that allocates identifiers within a specific geographic\
|
description: "An organization that allocates identifiers within a specific geographic area \nand/or domain of heritage\
|
||||||
\ area \nand/or domain of heritage institutions.\n\n**Key Distinction from RegistrationAuthority:**\n\
|
\ institutions.\n\n**Key Distinction from RegistrationAuthority:**\n\n- **RegistrationAuthority**: Maintains the GLOBAL\
|
||||||
\n- **RegistrationAuthority**: Maintains the GLOBAL registry for a standard\n\
|
\ registry for a standard\n - Example: Danish Agency for Culture and Palaces maintains global ISIL registry\n - Example:\
|
||||||
\ - Example: Danish Agency for Culture and Palaces maintains global ISIL registry\n\
|
\ ISNI International Agency (WIPO) maintains global ISNI database\n\n- **AllocationAgency**: Allocates identifiers LOCALLY\
|
||||||
\ - Example: ISNI International Agency (WIPO) maintains global ISNI database\n\
|
\ within constraints\n - Example: Koninklijke Bibliotheek allocates ISIL for Dutch public libraries\n - Example: OCLC\
|
||||||
\n- **AllocationAgency**: Allocates identifiers LOCALLY within constraints\n\
|
\ allocates ISIL for Dutch academic libraries\n - Example: Nationaal Archief allocates ISIL for Dutch archives\n\n\
|
||||||
\ - Example: Koninklijke Bibliotheek allocates ISIL for Dutch public libraries\n\
|
**Multi-Dimensional Scope:**\n\nAllocationAgencies have both:\n1. **Geographic scope**: Which country/region they serve\n\
|
||||||
\ - Example: OCLC allocates ISIL for Dutch academic libraries\n - Example:\
|
2. **Domain scope**: Which types of institutions they serve\n\nThis allows multiple agencies per country, each serving\
|
||||||
\ Nationaal Archief allocates ISIL for Dutch archives\n\n**Multi-Dimensional\
|
\ different domains:\n- NL public libraries → KB\n- NL academic libraries → OCLC\n- NL archives → Nationaal Archief\n\
|
||||||
\ Scope:**\n\nAllocationAgencies have both:\n1. **Geographic scope**: Which\
|
\n**Relationship to Standard:**\n\nAn AllocationAgency allocates for one or more Standards:\n- AllocationAgency.allocates_for\
|
||||||
\ country/region they serve\n2. **Domain scope**: Which types of institutions\
|
\ → Standard[]\n- Standard can have multiple AllocationAgencies (one per country/domain)\n\n**Examples:**\n\n| Agency\
|
||||||
\ they serve\n\nThis allows multiple agencies per country, each serving different\
|
\ | Country | Domain | Standard |\n|--------|---------|--------|----------|\n| Koninklijke Bibliotheek | NL | Public\
|
||||||
\ domains:\n- NL public libraries → KB\n- NL academic libraries → OCLC\n- NL\
|
\ libraries | ISIL |\n| OCLC | NL | Academic libraries | ISIL |\n| Nationaal Archief | NL | Archives | ISIL |\n| British\
|
||||||
\ archives → Nationaal Archief\n\n**Relationship to Standard:**\n\nAn AllocationAgency\
|
\ Library | GB | All | ISIL |\n| Library of Congress | US | All | ISIL |\n| OCLC | Global | Academic | VIAF |\n| Deutsche\
|
||||||
\ allocates for one or more Standards:\n- AllocationAgency.allocates_for → Standard[]\n\
|
\ Nationalbibliothek | DE | All | ISNI |\n\n**Ontology Alignment:**\n\n- org:FormalOrganization - W3C Organization Ontology\n\
|
||||||
- Standard can have multiple AllocationAgencies (one per country/domain)\n\n\
|
- Extends gleif_base:RegistrationAuthority concept (but for allocation, not registration)\n"
|
||||||
**Examples:**\n\n| Agency | Country | Domain | Standard |\n|--------|---------|--------|----------|\n\
|
|
||||||
| Koninklijke Bibliotheek | NL | Public libraries | ISIL |\n| OCLC | NL | Academic\
|
|
||||||
\ libraries | ISIL |\n| Nationaal Archief | NL | Archives | ISIL |\n| British\
|
|
||||||
\ Library | GB | All | ISIL |\n| Library of Congress | US | All | ISIL |\n|\
|
|
||||||
\ OCLC | Global | Academic | VIAF |\n| Deutsche Nationalbibliothek | DE | All\
|
|
||||||
\ | ISNI |\n\n**Ontology Alignment:**\n\n- org:FormalOrganization - W3C Organization\
|
|
||||||
\ Ontology\n- Extends gleif_base:RegistrationAuthority concept (but for allocation,\
|
|
||||||
\ not registration)\n"
|
|
||||||
exact_mappings:
|
exact_mappings:
|
||||||
- org:FormalOrganization
|
- org:FormalOrganization
|
||||||
close_mappings:
|
close_mappings:
|
||||||
|
|
@ -56,138 +49,193 @@ classes:
|
||||||
id:
|
id:
|
||||||
identifier: true
|
identifier: true
|
||||||
slot_uri: schema:identifier
|
slot_uri: schema:identifier
|
||||||
description: |
|
description: 'Unique identifier for this allocation agency.
|
||||||
Unique identifier for this allocation agency.
|
|
||||||
|
|
||||||
Recommended format: {country}-{abbreviation} or {abbreviation}
|
Recommended format: {country}-{abbreviation} or {abbreviation}
|
||||||
|
|
||||||
|
|
||||||
Examples: "nl-kb", "nl-oclc", "nl-na", "gb-bl", "us-loc"
|
Examples: "nl-kb", "nl-oclc", "nl-na", "gb-bl", "us-loc"
|
||||||
|
|
||||||
|
'
|
||||||
range: uriorcurie
|
range: uriorcurie
|
||||||
required: true
|
required: true
|
||||||
name:
|
name:
|
||||||
slot_uri: schema:name
|
slot_uri: schema:name
|
||||||
description: |
|
description: 'Official full name of the allocation agency.
|
||||||
Official full name of the allocation agency.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "Koninklijke Bibliotheek"
|
- "Koninklijke Bibliotheek"
|
||||||
|
|
||||||
- "Nationaal Archief"
|
- "Nationaal Archief"
|
||||||
|
|
||||||
- "British Library"
|
- "British Library"
|
||||||
|
|
||||||
- "Library of Congress"
|
- "Library of Congress"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
name_local:
|
name_local:
|
||||||
slot_uri: schema:alternateName
|
slot_uri: schema:alternateName
|
||||||
description: |
|
description: 'Name in local language (if different from English name).
|
||||||
Name in local language (if different from English name).
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "Koninklijke Bibliotheek" (Dutch)
|
- "Koninklijke Bibliotheek" (Dutch)
|
||||||
|
|
||||||
- "Deutsche Nationalbibliothek" (German)
|
- "Deutsche Nationalbibliothek" (German)
|
||||||
|
|
||||||
- "Bibliothèque nationale de France" (French)
|
- "Bibliothèque nationale de France" (French)
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
has_or_had_abbreviation:
|
has_or_had_abbreviation:
|
||||||
slot_uri: schema:alternateName
|
slot_uri: schema:alternateName
|
||||||
description: |
|
description: 'Common abbreviation.
|
||||||
Common abbreviation.
|
|
||||||
|
|
||||||
Examples: "KB", "NA", "BL", "LOC", "BnF", "DNB"
|
Examples: "KB", "NA", "BL", "LOC", "BnF", "DNB"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
country_scope:
|
country_scope:
|
||||||
slot_uri: gleif_base:hasCoverageArea
|
slot_uri: gleif_base:hasCoverageArea
|
||||||
description: |
|
description: 'Geographic area(s) where this agency allocates identifiers.
|
||||||
Geographic area(s) where this agency allocates identifiers.
|
|
||||||
|
|
||||||
Usually a single country, but can be multiple countries or subregions.
|
Usually a single country, but can be multiple countries or subregions.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- [NL] for Koninklijke Bibliotheek
|
- [NL] for Koninklijke Bibliotheek
|
||||||
|
|
||||||
- [GB] for British Library
|
- [GB] for British Library
|
||||||
|
|
||||||
- [US] for Library of Congress
|
- [US] for Library of Congress
|
||||||
|
|
||||||
- [DE-BY, DE-BW] for regional German agency
|
- [DE-BY, DE-BW] for regional German agency
|
||||||
|
|
||||||
|
'
|
||||||
range: Country
|
range: Country
|
||||||
multivalued: true
|
multivalued: true
|
||||||
required: true
|
required: true
|
||||||
inlined: false
|
inlined: false
|
||||||
subregion_scope:
|
subregion_scope:
|
||||||
slot_uri: schema:areaServed
|
slot_uri: schema:areaServed
|
||||||
description: |
|
description: 'Subregion-level geographic scope (if more specific than country).
|
||||||
Subregion-level geographic scope (if more specific than country).
|
|
||||||
|
|
||||||
For agencies that only serve specific regions within a country.
|
For agencies that only serve specific regions within a country.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- Staatsarchiv München: [DE-BY] (Bavaria only)
|
- Staatsarchiv München: [DE-BY] (Bavaria only)
|
||||||
|
|
||||||
|
'
|
||||||
range: Subregion
|
range: Subregion
|
||||||
multivalued: true
|
multivalued: true
|
||||||
inlined: false
|
inlined: false
|
||||||
allocation_domain:
|
allocation_domain:
|
||||||
slot_uri: schema:audienceType
|
slot_uri: schema:audienceType
|
||||||
description: |
|
description: 'Types of institutions this agency allocates identifiers for.
|
||||||
Types of institutions this agency allocates identifiers for.
|
|
||||||
|
|
||||||
Multiple values allowed for agencies serving multiple domains.
|
Multiple values allowed for agencies serving multiple domains.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- KB: [LIBRARY_PUBLIC]
|
- KB: [LIBRARY_PUBLIC]
|
||||||
|
|
||||||
- OCLC: [LIBRARY_ACADEMIC, LIBRARY_RESEARCH]
|
- OCLC: [LIBRARY_ACADEMIC, LIBRARY_RESEARCH]
|
||||||
|
|
||||||
- Nationaal Archief: [ARCHIVE]
|
- Nationaal Archief: [ARCHIVE]
|
||||||
|
|
||||||
- British Library: [LIBRARY_PUBLIC, LIBRARY_ACADEMIC, ARCHIVE] (all types)
|
- British Library: [LIBRARY_PUBLIC, LIBRARY_ACADEMIC, ARCHIVE] (all types)
|
||||||
|
|
||||||
|
'
|
||||||
range: AllocationDomainEnum
|
range: AllocationDomainEnum
|
||||||
multivalued: true
|
multivalued: true
|
||||||
required: true
|
required: true
|
||||||
allocates_for:
|
allocates_for:
|
||||||
slot_uri: schema:serviceOutput
|
slot_uri: schema:serviceOutput
|
||||||
description: |
|
description: 'Standards for which this agency allocates identifiers.
|
||||||
Standards for which this agency allocates identifiers.
|
|
||||||
|
|
||||||
Most agencies allocate for a single standard, but some handle multiple.
|
Most agencies allocate for a single standard, but some handle multiple.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- KB: [ISIL]
|
- KB: [ISIL]
|
||||||
|
|
||||||
- DNB: [ISIL, ISNI]
|
- DNB: [ISIL, ISNI]
|
||||||
|
|
||||||
- OCLC: [ISIL, VIAF]
|
- OCLC: [ISIL, VIAF]
|
||||||
|
|
||||||
|
'
|
||||||
range: Standard
|
range: Standard
|
||||||
multivalued: true
|
multivalued: true
|
||||||
required: true
|
required: true
|
||||||
inlined: false
|
inlined: false
|
||||||
allocation_prefix:
|
allocation_prefix:
|
||||||
slot_uri: schema:identifier
|
slot_uri: schema:identifier
|
||||||
description: |
|
description: 'Prefix used by this agency when allocating identifiers.
|
||||||
Prefix used by this agency when allocating identifiers.
|
|
||||||
|
|
||||||
For ISIL, this is typically the country code.
|
For ISIL, this is typically the country code.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- Netherlands ISIL: "NL-"
|
- Netherlands ISIL: "NL-"
|
||||||
|
|
||||||
- Germany ISIL: "DE-"
|
- Germany ISIL: "DE-"
|
||||||
|
|
||||||
- UK ISIL: "UK-" or "GB-" (both used historically)
|
- UK ISIL: "UK-" or "GB-" (both used historically)
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
parent_registration_authority:
|
parent_registration_authority:
|
||||||
slot_uri: schema:parentOrganization
|
slot_uri: schema:parentOrganization
|
||||||
description: |
|
description: 'The registration authority to which this agency reports allocations.
|
||||||
The registration authority to which this agency reports allocations.
|
|
||||||
|
|
||||||
AllocationAgencies report their allocations to the global RegistrationAuthority.
|
AllocationAgencies report their allocations to the global RegistrationAuthority.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- KB (NL ISIL) → Danish Agency for Culture and Palaces
|
- KB (NL ISIL) → Danish Agency for Culture and Palaces
|
||||||
|
|
||||||
- DNB (DE ISNI) → ISNI International Agency
|
- DNB (DE ISNI) → ISNI International Agency
|
||||||
|
|
||||||
|
'
|
||||||
range: RegistrationAuthority
|
range: RegistrationAuthority
|
||||||
inlined: false
|
inlined: false
|
||||||
allocation_start_date:
|
allocation_start_date:
|
||||||
slot_uri: schema:startDate
|
slot_uri: schema:startDate
|
||||||
description: |
|
description: 'Date when this agency started allocating identifiers.
|
||||||
Date when this agency started allocating identifiers.
|
|
||||||
|
|
||||||
Format: ISO 8601 date
|
Format: ISO 8601 date
|
||||||
|
|
||||||
|
'
|
||||||
range: date
|
range: date
|
||||||
allocation_end_date:
|
allocation_end_date:
|
||||||
slot_uri: schema:endDate
|
slot_uri: schema:endDate
|
||||||
description: |
|
description: 'Date when this agency stopped allocating (if no longer active).
|
||||||
Date when this agency stopped allocating (if no longer active).
|
|
||||||
|
|
||||||
Null if still active.
|
Null if still active.
|
||||||
|
|
||||||
|
'
|
||||||
range: date
|
range: date
|
||||||
is_active:
|
is_active:
|
||||||
slot_uri: schema:status
|
slot_uri: schema:status
|
||||||
|
|
@ -196,24 +244,30 @@ classes:
|
||||||
required: true
|
required: true
|
||||||
website:
|
website:
|
||||||
slot_uri: schema:url
|
slot_uri: schema:url
|
||||||
description: |
|
description: 'Official website of the allocation agency.
|
||||||
Official website of the allocation agency.
|
|
||||||
|
|
||||||
Preferably the page about identifier allocation services.
|
Preferably the page about identifier allocation services.
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
contact_email:
|
contact_email:
|
||||||
slot_uri: schema:email
|
slot_uri: schema:email
|
||||||
description: |
|
description: 'Contact email for identifier allocation requests.
|
||||||
Contact email for identifier allocation requests.
|
|
||||||
|
|
||||||
Examples: "isil@kb.nl", "isni@dnb.de"
|
Examples: "isil@kb.nl", "isni@dnb.de"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
allocation_policy_url:
|
allocation_policy_url:
|
||||||
slot_uri: schema:usageInfo
|
slot_uri: schema:usageInfo
|
||||||
description: |
|
description: 'URL to the allocation policy documentation.
|
||||||
URL to the allocation policy documentation.
|
|
||||||
|
|
||||||
Describes eligibility, process, requirements for obtaining identifiers.
|
Describes eligibility, process, requirements for obtaining identifiers.
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
agency_description:
|
agency_description:
|
||||||
slot_uri: schema:description
|
slot_uri: schema:description
|
||||||
|
|
@ -229,62 +283,3 @@ classes:
|
||||||
template_specificity:
|
template_specificity:
|
||||||
range: TemplateSpecificityScores
|
range: TemplateSpecificityScores
|
||||||
inlined: true
|
inlined: true
|
||||||
enums:
|
|
||||||
AllocationDomainEnum:
|
|
||||||
description: |
|
|
||||||
Types of heritage institutions that an AllocationAgency can serve.
|
|
||||||
|
|
||||||
Based on GLAMORCUBESFIXPHDNT taxonomy but focused on allocation domains.
|
|
||||||
permissible_values:
|
|
||||||
LIBRARY_PUBLIC:
|
|
||||||
description: |
|
|
||||||
Public libraries (openbare bibliotheken).
|
|
||||||
Examples: Municipal libraries, regional libraries
|
|
||||||
LIBRARY_ACADEMIC:
|
|
||||||
description: |
|
|
||||||
Academic and university libraries.
|
|
||||||
Examples: University libraries, polytechnic libraries
|
|
||||||
LIBRARY_RESEARCH:
|
|
||||||
description: |
|
|
||||||
Research and special libraries.
|
|
||||||
Examples: Corporate libraries, government agency libraries
|
|
||||||
LIBRARY_NATIONAL:
|
|
||||||
description: |
|
|
||||||
National libraries.
|
|
||||||
Examples: Koninklijke Bibliotheek, Library of Congress
|
|
||||||
ARCHIVE:
|
|
||||||
description: |
|
|
||||||
Archives of all types.
|
|
||||||
Examples: National archives, regional archives, municipal archives
|
|
||||||
MUSEUM:
|
|
||||||
description: |
|
|
||||||
Museums of all types.
|
|
||||||
Examples: Art museums, history museums, science museums
|
|
||||||
GALLERY:
|
|
||||||
description: |
|
|
||||||
Art galleries and exhibition spaces.
|
|
||||||
Examples: Commercial galleries, kunsthallen
|
|
||||||
HERITAGE_SOCIETY:
|
|
||||||
description: |
|
|
||||||
Heritage and historical societies.
|
|
||||||
Examples: Heemkundige kringen, genealogical societies
|
|
||||||
RESEARCH_ORGANIZATION:
|
|
||||||
description: |
|
|
||||||
Research organizations and documentation centers.
|
|
||||||
Examples: Research institutes, knowledge centers
|
|
||||||
EDUCATION_PROVIDER:
|
|
||||||
description: |
|
|
||||||
Educational institutions with heritage collections.
|
|
||||||
Examples: Universities, academies
|
|
||||||
RELIGIOUS_INSTITUTION:
|
|
||||||
description: |
|
|
||||||
Religious institutions with collections.
|
|
||||||
Examples: Church archives, monastery libraries
|
|
||||||
GOVERNMENT_AGENCY:
|
|
||||||
description: |
|
|
||||||
Government agencies and official institutions.
|
|
||||||
Examples: Ministries, provincial heritage services
|
|
||||||
ALL:
|
|
||||||
description: |
|
|
||||||
Agency allocates for all institution types.
|
|
||||||
Used when there's a single national agency for all domains.
|
|
||||||
|
|
|
||||||
|
|
@ -15,33 +15,28 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/DataLicenseTypeEnum
|
||||||
|
- ../enums/DataOpennessLevelEnum
|
||||||
|
- ../enums/OpennessStanceEnum
|
||||||
default_prefix: hc
|
default_prefix: hc
|
||||||
classes:
|
classes:
|
||||||
DataLicensePolicy:
|
DataLicensePolicy:
|
||||||
class_uri: odrl:Policy
|
class_uri: odrl:Policy
|
||||||
description: "An organization's policy regarding data licensing and openness,\
|
description: "An organization's policy regarding data licensing and openness, representing\nthe principles and practices\
|
||||||
\ representing\nthe principles and practices the organization strives for in\
|
\ the organization strives for in sharing data.\n\n**APPLICABLE TO BOTH**:\n\n1. **EncompassingBody** (Cooperative,\
|
||||||
\ sharing data.\n\n**APPLICABLE TO BOTH**:\n\n1. **EncompassingBody** (Cooperative,\
|
\ SocialMovement, Network, Consortium, Umbrella)\n - OCLC (Cooperative): Mixed policy - WorldCat proprietary, VIAF\
|
||||||
\ SocialMovement, Network, Consortium, Umbrella)\n - OCLC (Cooperative): Mixed\
|
\ open\n - Wikimedia Foundation (SocialMovement): Strong open advocate - CC0 for Wikidata\n \n2. **Custodian** (Museums,\
|
||||||
\ policy - WorldCat proprietary, VIAF open\n - Wikimedia Foundation (SocialMovement):\
|
\ Archives, Libraries, etc.)\n - Rijksmuseum: Open policy - CC0 for high-res images\n - Some private collections:\
|
||||||
\ Strong open advocate - CC0 for Wikidata\n \n2. **Custodian** (Museums, Archives,\
|
\ Proprietary - no reuse allowed\n\n**POLICY vs LICENSE**:\n\n- **DataLicensePolicy**: The ASPIRATIONAL stance - what\
|
||||||
\ Libraries, etc.)\n - Rijksmuseum: Open policy - CC0 for high-res images\n\
|
\ the organization strives for\n- **DataLicense**: The LEGAL instrument - specific license terms (CC0, CC-BY, etc.)\n\
|
||||||
\ - Some private collections: Proprietary - no reuse allowed\n\n**POLICY vs\
|
\nAn organization's policy may include:\n- Default license for all data/content\n- Service-specific licenses (different\
|
||||||
\ LICENSE**:\n\n- **DataLicensePolicy**: The ASPIRATIONAL stance - what the\
|
\ licenses for different services)\n- Advocacy activities (promoting open data beyond their own data)\n- Endorsement\
|
||||||
\ organization strives for\n- **DataLicense**: The LEGAL instrument - specific\
|
\ of open data principles (FAIR, Open Definition)\n\n**CRITICAL DISTINCTION: OPEN vs CLOSED**\n\nThis class is essential\
|
||||||
\ license terms (CC0, CC-BY, etc.)\n\nAn organization's policy may include:\n\
|
\ for understanding the fundamental difference between:\n\n- **OCLC (Cooperative)**: MIXED_POLICY\n - WorldCat: Proprietary\
|
||||||
- Default license for all data/content\n- Service-specific licenses (different\
|
\ (subscription-based)\n - VIAF: ODC-BY (open with attribution)\n - Members pay for services\n \n- **Wikimedia Foundation\
|
||||||
\ licenses for different services)\n- Advocacy activities (promoting open data\
|
\ (Social Movement)**: STRONG_OPEN_ADVOCATE\n - Wikidata: CC0 (public domain)\n - Wikipedia: CC-BY-SA (copyleft)\n\
|
||||||
\ beyond their own data)\n- Endorsement of open data principles (FAIR, Open\
|
\ - All contributions openly licensed\n - Free access for all\n\n**Ontology Alignment:**\n\n- odrl:Policy (ODRL -\
|
||||||
\ Definition)\n\n**CRITICAL DISTINCTION: OPEN vs CLOSED**\n\nThis class is essential\
|
\ Open Digital Rights Language)\n- dcterms:Policy (Dublin Core)\n- schema:DigitalDocument (for policy documents)\n"
|
||||||
\ for understanding the fundamental difference between:\n\n- **OCLC (Cooperative)**:\
|
|
||||||
\ MIXED_POLICY\n - WorldCat: Proprietary (subscription-based)\n - VIAF: ODC-BY\
|
|
||||||
\ (open with attribution)\n - Members pay for services\n \n- **Wikimedia Foundation\
|
|
||||||
\ (Social Movement)**: STRONG_OPEN_ADVOCATE\n - Wikidata: CC0 (public domain)\n\
|
|
||||||
\ - Wikipedia: CC-BY-SA (copyleft)\n - All contributions openly licensed\n\
|
|
||||||
\ - Free access for all\n\n**Ontology Alignment:**\n\n- odrl:Policy (ODRL -\
|
|
||||||
\ Open Digital Rights Language)\n- dcterms:Policy (Dublin Core)\n- schema:DigitalDocument\
|
|
||||||
\ (for policy documents)\n"
|
|
||||||
exact_mappings:
|
exact_mappings:
|
||||||
- odrl:Policy
|
- odrl:Policy
|
||||||
close_mappings:
|
close_mappings:
|
||||||
|
|
@ -51,142 +46,177 @@ classes:
|
||||||
id:
|
id:
|
||||||
identifier: true
|
identifier: true
|
||||||
slot_uri: schema:identifier
|
slot_uri: schema:identifier
|
||||||
description: |
|
description: 'Unique identifier for this data license policy.
|
||||||
Unique identifier for this data license policy.
|
|
||||||
|
|
||||||
Format: https://nde.nl/ontology/hc/policy/{organization-slug}
|
Format: https://nde.nl/ontology/hc/policy/{organization-slug}
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "https://nde.nl/ontology/hc/policy/oclc"
|
- "https://nde.nl/ontology/hc/policy/oclc"
|
||||||
|
|
||||||
- "https://nde.nl/ontology/hc/policy/wikimedia"
|
- "https://nde.nl/ontology/hc/policy/wikimedia"
|
||||||
|
|
||||||
- "https://nde.nl/ontology/hc/policy/rijksmuseum"
|
- "https://nde.nl/ontology/hc/policy/rijksmuseum"
|
||||||
|
|
||||||
|
'
|
||||||
range: uriorcurie
|
range: uriorcurie
|
||||||
required: true
|
required: true
|
||||||
policy_name:
|
policy_name:
|
||||||
slot_uri: schema:name
|
slot_uri: schema:name
|
||||||
description: |
|
description: 'Name of the data license policy.
|
||||||
Name of the data license policy.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "OCLC Data Usage Policy"
|
- "OCLC Data Usage Policy"
|
||||||
|
|
||||||
- "Wikimedia Foundation Open Data Policy"
|
- "Wikimedia Foundation Open Data Policy"
|
||||||
|
|
||||||
- "Europeana Licensing Framework"
|
- "Europeana Licensing Framework"
|
||||||
|
|
||||||
- "Rijksmuseum Open Access Policy"
|
- "Rijksmuseum Open Access Policy"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
default_license:
|
default_license:
|
||||||
slot_uri: schema:license
|
slot_uri: schema:license
|
||||||
description: |
|
description: 'The default license applied to data/content unless otherwise specified.
|
||||||
The default license applied to data/content unless otherwise specified.
|
|
||||||
|
|
||||||
Links to a DataLicense instance representing the specific legal instrument.
|
Links to a DataLicense instance representing the specific legal instrument.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- Wikimedia Foundation: CC0 (for Wikidata)
|
- Wikimedia Foundation: CC0 (for Wikidata)
|
||||||
|
|
||||||
- Europeana: CC0 (for metadata)
|
- Europeana: CC0 (for metadata)
|
||||||
|
|
||||||
- OCLC: Proprietary (for WorldCat)
|
- OCLC: Proprietary (for WorldCat)
|
||||||
|
|
||||||
- Rijksmuseum: CC0 (for high-res images)
|
- Rijksmuseum: CC0 (for high-res images)
|
||||||
|
|
||||||
|
'
|
||||||
range: DataLicense
|
range: DataLicense
|
||||||
inlined: false
|
inlined: false
|
||||||
required: true
|
required: true
|
||||||
service_specific_licenses:
|
service_specific_licenses:
|
||||||
slot_uri: schema:hasPart
|
slot_uri: schema:hasPart
|
||||||
description: |
|
description: "Licenses for specific services that differ from the default.\n\nAllows modeling organizations with mixed\
|
||||||
Licenses for specific services that differ from the default.
|
\ policies where different\nservices or data types have different licenses.\n\n**Example - OCLC (Cooperative with\
|
||||||
|
\ mixed policy):**\n```yaml\ndefault_license: proprietary-worldcat\nservice_specific_licenses:\n - service_name:\
|
||||||
Allows modeling organizations with mixed policies where different
|
\ \"VIAF\"\n license: odc-by-1.0\n - service_name: \"WorldCat Identities\"\n license: odc-by-1.0\n```\n\n\
|
||||||
services or data types have different licenses.
|
**Example - Wikimedia (Movement with unified open policy):**\n```yaml\ndefault_license: cc0-1.0\nservice_specific_licenses:\n\
|
||||||
|
\ - service_name: \"Wikipedia\"\n license: cc-by-sa-4.0 # Different from default\n - service_name: \"Wikidata\"\
|
||||||
**Example - OCLC (Cooperative with mixed policy):**
|
\n license: cc0-1.0 # Same as default\n```\n"
|
||||||
```yaml
|
|
||||||
default_license: proprietary-worldcat
|
|
||||||
service_specific_licenses:
|
|
||||||
- service_name: "VIAF"
|
|
||||||
license: odc-by-1.0
|
|
||||||
- service_name: "WorldCat Identities"
|
|
||||||
license: odc-by-1.0
|
|
||||||
```
|
|
||||||
|
|
||||||
**Example - Wikimedia (Movement with unified open policy):**
|
|
||||||
```yaml
|
|
||||||
default_license: cc0-1.0
|
|
||||||
service_specific_licenses:
|
|
||||||
- service_name: "Wikipedia"
|
|
||||||
license: cc-by-sa-4.0 # Different from default
|
|
||||||
- service_name: "Wikidata"
|
|
||||||
license: cc0-1.0 # Same as default
|
|
||||||
```
|
|
||||||
range: ServiceLicense
|
range: ServiceLicense
|
||||||
multivalued: true
|
multivalued: true
|
||||||
inlined_as_list: true
|
inlined_as_list: true
|
||||||
openness_stance:
|
openness_stance:
|
||||||
slot_uri: schema:position
|
slot_uri: schema:position
|
||||||
description: |
|
description: 'Organization''s overall philosophical stance on data openness.
|
||||||
Organization's overall philosophical stance on data openness.
|
|
||||||
|
|
||||||
This captures the ADVOCACY dimension beyond just licensing:
|
This captures the ADVOCACY dimension beyond just licensing:
|
||||||
|
|
||||||
|
|
||||||
- **STRONG_OPEN_ADVOCATE**: Actively promotes open data (Wikimedia, CC, OKFN)
|
- **STRONG_OPEN_ADVOCATE**: Actively promotes open data (Wikimedia, CC, OKFN)
|
||||||
|
|
||||||
- **OPEN_BY_DEFAULT**: Generally open but practical exceptions (Europeana)
|
- **OPEN_BY_DEFAULT**: Generally open but practical exceptions (Europeana)
|
||||||
|
|
||||||
- **MIXED_POLICY**: Some open, some closed (OCLC)
|
- **MIXED_POLICY**: Some open, some closed (OCLC)
|
||||||
|
|
||||||
- **CLOSED_BY_DEFAULT**: Generally closed with some open offerings
|
- **CLOSED_BY_DEFAULT**: Generally closed with some open offerings
|
||||||
|
|
||||||
- **FULLY_PROPRIETARY**: All data proprietary
|
- **FULLY_PROPRIETARY**: All data proprietary
|
||||||
|
|
||||||
|
|
||||||
This is the PRIMARY indicator for comparing organizations.
|
This is the PRIMARY indicator for comparing organizations.
|
||||||
|
|
||||||
|
'
|
||||||
range: OpennessStanceEnum
|
range: OpennessStanceEnum
|
||||||
required: true
|
required: true
|
||||||
open_data_principles:
|
open_data_principles:
|
||||||
slot_uri: schema:valueReference
|
slot_uri: schema:valueReference
|
||||||
description: |
|
description: 'Open data principles or frameworks the organization formally endorses.
|
||||||
Open data principles or frameworks the organization formally endorses.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "FAIR Principles" (Findable, Accessible, Interoperable, Reusable)
|
- "FAIR Principles" (Findable, Accessible, Interoperable, Reusable)
|
||||||
|
|
||||||
- "Open Definition" (Open Knowledge Foundation)
|
- "Open Definition" (Open Knowledge Foundation)
|
||||||
|
|
||||||
- "Sunlight Foundation Open Data Principles"
|
- "Sunlight Foundation Open Data Principles"
|
||||||
|
|
||||||
- "G8 Open Data Charter"
|
- "G8 Open Data Charter"
|
||||||
|
|
||||||
- "Budapest Open Access Initiative"
|
- "Budapest Open Access Initiative"
|
||||||
|
|
||||||
- "Berlin Declaration on Open Access"
|
- "Berlin Declaration on Open Access"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
policy_url:
|
policy_url:
|
||||||
slot_uri: schema:url
|
slot_uri: schema:url
|
||||||
description: |
|
description: 'URL to the organization''s official data policy documentation.
|
||||||
URL to the organization's official data policy documentation.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- https://www.oclc.org/en/worldcat/community/data-strategy.html
|
- https://www.oclc.org/en/worldcat/community/data-strategy.html
|
||||||
|
|
||||||
- https://foundation.wikimedia.org/wiki/Policy:Terms_of_Use
|
- https://foundation.wikimedia.org/wiki/Policy:Terms_of_Use
|
||||||
|
|
||||||
- https://www.rijksmuseum.nl/en/research/image-requests
|
- https://www.rijksmuseum.nl/en/research/image-requests
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
policy_effective_date:
|
policy_effective_date:
|
||||||
slot_uri: schema:datePublished
|
slot_uri: schema:datePublished
|
||||||
description: |
|
description: 'Date when this policy became effective.
|
||||||
Date when this policy became effective.
|
|
||||||
|
|
||||||
Useful for tracking policy evolution over time.
|
Useful for tracking policy evolution over time.
|
||||||
|
|
||||||
|
'
|
||||||
range: date
|
range: date
|
||||||
advocacy_activities:
|
advocacy_activities:
|
||||||
slot_uri: schema:potentialAction
|
slot_uri: schema:potentialAction
|
||||||
description: |
|
description: 'Open data advocacy activities the organization engages in.
|
||||||
Open data advocacy activities the organization engages in.
|
|
||||||
|
|
||||||
These activities go BEYOND just licensing their own data - they
|
These activities go BEYOND just licensing their own data - they
|
||||||
|
|
||||||
represent active promotion of open data practices in the broader community.
|
represent active promotion of open data practices in the broader community.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "Open Data Day sponsorship"
|
- "Open Data Day sponsorship"
|
||||||
|
|
||||||
- "Creative Commons affiliate network membership"
|
- "Creative Commons affiliate network membership"
|
||||||
|
|
||||||
- "Open Knowledge Foundation partnership"
|
- "Open Knowledge Foundation partnership"
|
||||||
|
|
||||||
- "FAIR data training programs"
|
- "FAIR data training programs"
|
||||||
|
|
||||||
- "Open GLAM initiative participation"
|
- "Open GLAM initiative participation"
|
||||||
|
|
||||||
- "Linked Open Data evangelism"
|
- "Linked Open Data evangelism"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
policy_description:
|
policy_description:
|
||||||
slot_uri: schema:description
|
slot_uri: schema:description
|
||||||
description: |
|
description: 'Narrative description of the organization''s data policy philosophy.
|
||||||
Narrative description of the organization's data policy philosophy.
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
|
|
@ -200,21 +230,16 @@ classes:
|
||||||
inlined: true
|
inlined: true
|
||||||
DataLicense:
|
DataLicense:
|
||||||
class_uri: cc:License
|
class_uri: cc:License
|
||||||
description: "A specific data license - the legal instrument that defines how\
|
description: "A specific data license - the legal instrument that defines how data may be\nused, shared, and redistributed.\n\
|
||||||
\ data may be\nused, shared, and redistributed.\n\n**License Categories:**\n\
|
\n**License Categories:**\n\n1. **Creative Commons (CC)** - For creative works and data\n - CC0: Public domain dedication\
|
||||||
\n1. **Creative Commons (CC)** - For creative works and data\n - CC0: Public\
|
\ (no rights reserved)\n - CC-BY: Attribution required\n - CC-BY-SA: Attribution + ShareAlike (copyleft)\n - CC-BY-NC:\
|
||||||
\ domain dedication (no rights reserved)\n - CC-BY: Attribution required\n\
|
\ Attribution + Non-Commercial\n - CC-BY-ND: Attribution + No Derivatives\n \n2. **Open Data Commons (ODC)** - Specifically\
|
||||||
\ - CC-BY-SA: Attribution + ShareAlike (copyleft)\n - CC-BY-NC: Attribution\
|
\ for databases\n - PDDL: Public Domain Dedication and License\n - ODC-BY: Attribution License for databases\n \
|
||||||
\ + Non-Commercial\n - CC-BY-ND: Attribution + No Derivatives\n \n2. **Open\
|
\ - ODbL: Open Database License (Attribution + ShareAlike)\n \n3. **Government Open Licenses**\n - UK OGL: UK Open\
|
||||||
\ Data Commons (ODC)** - Specifically for databases\n - PDDL: Public Domain\
|
\ Government Licence\n - French Licence Ouverte\n - US Public Domain (government works)\n \n4. **Proprietary**\
|
||||||
\ Dedication and License\n - ODC-BY: Attribution License for databases\n \
|
\ - Closed/restricted access\n - Subscription required\n - Terms of service restrictions\n - No redistribution\
|
||||||
\ - ODbL: Open Database License (Attribution + ShareAlike)\n \n3. **Government\
|
\ rights\n\n**Reference**: https://creativecommons.org/licenses/\n\n**Ontology Alignment:**\n\n- cc:License (Creative\
|
||||||
\ Open Licenses**\n - UK OGL: UK Open Government Licence\n - French Licence\
|
\ Commons namespace)\n- dcterms:LicenseDocument (Dublin Core)\n- schema:CreativeWork (for license documents)\n"
|
||||||
\ Ouverte\n - US Public Domain (government works)\n \n4. **Proprietary**\
|
|
||||||
\ - Closed/restricted access\n - Subscription required\n - Terms of service\
|
|
||||||
\ restrictions\n - No redistribution rights\n\n**Reference**: https://creativecommons.org/licenses/\n\
|
|
||||||
\n**Ontology Alignment:**\n\n- cc:License (Creative Commons namespace)\n- dcterms:LicenseDocument\
|
|
||||||
\ (Dublin Core)\n- schema:CreativeWork (for license documents)\n"
|
|
||||||
exact_mappings:
|
exact_mappings:
|
||||||
- cc:License
|
- cc:License
|
||||||
close_mappings:
|
close_mappings:
|
||||||
|
|
@ -224,167 +249,239 @@ classes:
|
||||||
id:
|
id:
|
||||||
identifier: true
|
identifier: true
|
||||||
slot_uri: schema:identifier
|
slot_uri: schema:identifier
|
||||||
description: |
|
description: 'Unique identifier for this license.
|
||||||
Unique identifier for this license.
|
|
||||||
|
|
||||||
Recommended: Use standard SPDX-style identifiers.
|
Recommended: Use standard SPDX-style identifiers.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "cc0-1.0" (Creative Commons Zero 1.0)
|
- "cc0-1.0" (Creative Commons Zero 1.0)
|
||||||
|
|
||||||
- "cc-by-4.0" (Creative Commons Attribution 4.0)
|
- "cc-by-4.0" (Creative Commons Attribution 4.0)
|
||||||
|
|
||||||
- "odc-by-1.0" (Open Data Commons Attribution 1.0)
|
- "odc-by-1.0" (Open Data Commons Attribution 1.0)
|
||||||
|
|
||||||
- "proprietary-oclc" (OCLC proprietary terms)
|
- "proprietary-oclc" (OCLC proprietary terms)
|
||||||
|
|
||||||
|
'
|
||||||
range: uriorcurie
|
range: uriorcurie
|
||||||
required: true
|
required: true
|
||||||
name:
|
name:
|
||||||
slot_uri: schema:name
|
slot_uri: schema:name
|
||||||
description: |
|
description: 'Full official name of the license.
|
||||||
Full official name of the license.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "Creative Commons Zero 1.0 Universal"
|
- "Creative Commons Zero 1.0 Universal"
|
||||||
|
|
||||||
- "Creative Commons Attribution 4.0 International"
|
- "Creative Commons Attribution 4.0 International"
|
||||||
|
|
||||||
- "Open Data Commons Attribution License 1.0"
|
- "Open Data Commons Attribution License 1.0"
|
||||||
|
|
||||||
- "Open Database License (ODbL) 1.0"
|
- "Open Database License (ODbL) 1.0"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
has_or_had_abbreviation:
|
has_or_had_abbreviation:
|
||||||
slot_uri: schema:alternateName
|
slot_uri: schema:alternateName
|
||||||
description: |
|
description: 'Common has_or_had_abbreviation for the license.
|
||||||
Common has_or_had_abbreviation for the license.
|
|
||||||
|
|
||||||
Examples: "CC0", "CC-BY", "CC-BY-SA", "ODC-BY", "ODbL"
|
Examples: "CC0", "CC-BY", "CC-BY-SA", "ODC-BY", "ODbL"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
license_type:
|
license_type:
|
||||||
slot_uri: schema:additionalType
|
slot_uri: schema:additionalType
|
||||||
description: |
|
description: 'Classification of this license by its framework/family.
|
||||||
Classification of this license by its framework/family.
|
|
||||||
|
'
|
||||||
range: DataLicenseTypeEnum
|
range: DataLicenseTypeEnum
|
||||||
required: true
|
required: true
|
||||||
openness_level:
|
openness_level:
|
||||||
slot_uri: schema:accessMode
|
slot_uri: schema:accessMode
|
||||||
description: |
|
description: 'Degree of openness on a spectrum from fully open to fully closed.
|
||||||
Degree of openness on a spectrum from fully open to fully closed.
|
|
||||||
|
|
||||||
This is the PRIMARY indicator for data accessibility:
|
This is the PRIMARY indicator for data accessibility:
|
||||||
|
|
||||||
|
|
||||||
- **FULLY_OPEN**: No restrictions (CC0, PDDL)
|
- **FULLY_OPEN**: No restrictions (CC0, PDDL)
|
||||||
|
|
||||||
- **OPEN_WITH_ATTRIBUTION**: Attribution required (CC-BY, ODC-BY)
|
- **OPEN_WITH_ATTRIBUTION**: Attribution required (CC-BY, ODC-BY)
|
||||||
|
|
||||||
- **OPEN_SHAREALIKE**: Copyleft requirement (CC-BY-SA, ODbL)
|
- **OPEN_SHAREALIKE**: Copyleft requirement (CC-BY-SA, ODbL)
|
||||||
|
|
||||||
- **RESTRICTED_NONCOMMERCIAL**: Non-commercial only (CC-BY-NC)
|
- **RESTRICTED_NONCOMMERCIAL**: Non-commercial only (CC-BY-NC)
|
||||||
|
|
||||||
- **RESTRICTED_NO_DERIVATIVES**: No modifications (CC-BY-ND)
|
- **RESTRICTED_NO_DERIVATIVES**: No modifications (CC-BY-ND)
|
||||||
|
|
||||||
- **CLOSED_SUBSCRIPTION**: Paid access required
|
- **CLOSED_SUBSCRIPTION**: Paid access required
|
||||||
|
|
||||||
- **CLOSED_PROPRIETARY**: No reuse rights
|
- **CLOSED_PROPRIETARY**: No reuse rights
|
||||||
|
|
||||||
|
'
|
||||||
range: DataOpennessLevelEnum
|
range: DataOpennessLevelEnum
|
||||||
required: true
|
required: true
|
||||||
license_url:
|
license_url:
|
||||||
slot_uri: cc:legalcode
|
slot_uri: cc:legalcode
|
||||||
description: |
|
description: 'URL to the official legal text of the license.
|
||||||
URL to the official legal text of the license.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- https://creativecommons.org/publicdomain/zero/1.0/legalcode
|
- https://creativecommons.org/publicdomain/zero/1.0/legalcode
|
||||||
|
|
||||||
- https://creativecommons.org/licenses/by/4.0/legalcode
|
- https://creativecommons.org/licenses/by/4.0/legalcode
|
||||||
|
|
||||||
- https://opendatacommons.org/licenses/by/1-0/
|
- https://opendatacommons.org/licenses/by/1-0/
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
required: true
|
required: true
|
||||||
deed_url:
|
deed_url:
|
||||||
slot_uri: schema:url
|
slot_uri: schema:url
|
||||||
description: |
|
description: 'URL to the human-readable license summary (the "deed").
|
||||||
URL to the human-readable license summary (the "deed").
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- https://creativecommons.org/publicdomain/zero/1.0/
|
- https://creativecommons.org/publicdomain/zero/1.0/
|
||||||
|
|
||||||
- https://creativecommons.org/licenses/by/4.0/
|
- https://creativecommons.org/licenses/by/4.0/
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
version:
|
version:
|
||||||
slot_uri: schema:version
|
slot_uri: schema:version
|
||||||
description: |
|
description: 'Version number of the license.
|
||||||
Version number of the license.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "1.0" (CC0 1.0, ODC-BY 1.0)
|
- "1.0" (CC0 1.0, ODC-BY 1.0)
|
||||||
|
|
||||||
- "4.0" (CC-BY 4.0 - current version)
|
- "4.0" (CC-BY 4.0 - current version)
|
||||||
|
|
||||||
- "3.0" (legacy CC licenses)
|
- "3.0" (legacy CC licenses)
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
allows_commercial_use:
|
allows_commercial_use:
|
||||||
slot_uri: cc:commercialUse
|
slot_uri: cc:commercialUse
|
||||||
description: |
|
description: 'Whether the license permits commercial use of the data.
|
||||||
Whether the license permits commercial use of the data.
|
|
||||||
|
|
||||||
- true: Commercial use allowed (CC0, CC-BY, ODC-BY, ODbL)
|
- true: Commercial use allowed (CC0, CC-BY, ODC-BY, ODbL)
|
||||||
|
|
||||||
- false: Non-commercial only (CC-BY-NC, CC-BY-NC-SA)
|
- false: Non-commercial only (CC-BY-NC, CC-BY-NC-SA)
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
required: true
|
required: true
|
||||||
requires_attribution:
|
requires_attribution:
|
||||||
slot_uri: cc:attributionRequired
|
slot_uri: cc:attributionRequired
|
||||||
description: |
|
description: 'Whether the license requires attribution to the source.
|
||||||
Whether the license requires attribution to the source.
|
|
||||||
|
|
||||||
- true: Attribution required (CC-BY, ODC-BY, ODbL)
|
- true: Attribution required (CC-BY, ODC-BY, ODbL)
|
||||||
|
|
||||||
- false: No attribution needed (CC0, PDDL)
|
- false: No attribution needed (CC0, PDDL)
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
required: true
|
required: true
|
||||||
requires_sharealike:
|
requires_sharealike:
|
||||||
slot_uri: cc:shareAlike
|
slot_uri: cc:shareAlike
|
||||||
description: |
|
description: 'Whether derivatives must be shared under the same or compatible license.
|
||||||
Whether derivatives must be shared under the same or compatible license.
|
|
||||||
|
|
||||||
- true: ShareAlike/copyleft required (CC-BY-SA, ODbL)
|
- true: ShareAlike/copyleft required (CC-BY-SA, ODbL)
|
||||||
|
|
||||||
- false: No ShareAlike requirement (CC0, CC-BY, ODC-BY)
|
- false: No ShareAlike requirement (CC0, CC-BY, ODC-BY)
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
required: true
|
required: true
|
||||||
allows_derivatives:
|
allows_derivatives:
|
||||||
slot_uri: cc:DerivativeWorks
|
slot_uri: cc:DerivativeWorks
|
||||||
description: |
|
description: 'Whether the license permits creating derivative works.
|
||||||
Whether the license permits creating derivative works.
|
|
||||||
|
|
||||||
- true: Derivatives allowed (most open licenses)
|
- true: Derivatives allowed (most open licenses)
|
||||||
|
|
||||||
- false: No derivatives allowed (CC-BY-ND, CC-BY-NC-ND)
|
- false: No derivatives allowed (CC-BY-ND, CC-BY-NC-ND)
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
required: true
|
required: true
|
||||||
license_jurisdiction:
|
license_jurisdiction:
|
||||||
slot_uri: cc:jurisdiction
|
slot_uri: cc:jurisdiction
|
||||||
description: |
|
description: 'Legal jurisdiction of the license (if jurisdiction-specific).
|
||||||
Legal jurisdiction of the license (if jurisdiction-specific).
|
|
||||||
|
|
||||||
Most modern licenses (CC 4.0+) are "international" (jurisdiction-agnostic).
|
Most modern licenses (CC 4.0+) are "international" (jurisdiction-agnostic).
|
||||||
|
|
||||||
Earlier versions (CC 3.0, 2.x) had jurisdiction-specific "ports".
|
Earlier versions (CC 3.0, 2.x) had jurisdiction-specific "ports".
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- null: International/universal (CC 4.0 licenses)
|
- null: International/universal (CC 4.0 licenses)
|
||||||
|
|
||||||
- "NL": Netherlands-specific ported license
|
- "NL": Netherlands-specific ported license
|
||||||
|
|
||||||
- "US": United States-specific
|
- "US": United States-specific
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
steward_organization:
|
steward_organization:
|
||||||
slot_uri: schema:maintainer
|
slot_uri: schema:maintainer
|
||||||
description: |
|
description: 'Organization that maintains and stewards this license.
|
||||||
Organization that maintains and stewards this license.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "Creative Commons" (for CC licenses)
|
- "Creative Commons" (for CC licenses)
|
||||||
|
|
||||||
- "Open Knowledge Foundation" (for ODC licenses)
|
- "Open Knowledge Foundation" (for ODC licenses)
|
||||||
|
|
||||||
- "UK National Archives" (for UK OGL)
|
- "UK National Archives" (for UK OGL)
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
spdx_identifier:
|
spdx_identifier:
|
||||||
slot_uri: dcterms:identifier
|
slot_uri: dcterms:identifier
|
||||||
description: |
|
description: 'SPDX License Identifier for software license compatibility.
|
||||||
SPDX License Identifier for software license compatibility.
|
|
||||||
|
|
||||||
SPDX (Software Package Data Exchange) provides standardized
|
SPDX (Software Package Data Exchange) provides standardized
|
||||||
|
|
||||||
identifiers for licenses used in software and data.
|
identifiers for licenses used in software and data.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "CC0-1.0"
|
- "CC0-1.0"
|
||||||
|
|
||||||
- "CC-BY-4.0"
|
- "CC-BY-4.0"
|
||||||
|
|
||||||
- "ODbL-1.0"
|
- "ODbL-1.0"
|
||||||
|
|
||||||
|
|
||||||
Reference: https://spdx.org/licenses/
|
Reference: https://spdx.org/licenses/
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
license_description:
|
license_description:
|
||||||
slot_uri: schema:description
|
slot_uri: schema:description
|
||||||
description: |
|
description: 'Human-readable description of what this license permits and requires.
|
||||||
Human-readable description of what this license permits and requires.
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
|
|
@ -398,58 +495,83 @@ classes:
|
||||||
inlined: true
|
inlined: true
|
||||||
ServiceLicense:
|
ServiceLicense:
|
||||||
class_uri: odrl:Agreement
|
class_uri: odrl:Agreement
|
||||||
description: |
|
description: 'A license assignment for a specific service within an organization''s policy.
|
||||||
A license assignment for a specific service within an organization's policy.
|
|
||||||
|
|
||||||
Used when an organization has different licenses for different services,
|
Used when an organization has different licenses for different services,
|
||||||
|
|
||||||
allowing for nuanced modeling of mixed open/closed policies.
|
allowing for nuanced modeling of mixed open/closed policies.
|
||||||
|
|
||||||
|
|
||||||
**Example - OCLC (Cooperative with mixed policy):**
|
**Example - OCLC (Cooperative with mixed policy):**
|
||||||
|
|
||||||
- WorldCat: Proprietary (default)
|
- WorldCat: Proprietary (default)
|
||||||
|
|
||||||
- VIAF: ODC-BY (open for linked data)
|
- VIAF: ODC-BY (open for linked data)
|
||||||
|
|
||||||
- WorldCat Identities: ODC-BY
|
- WorldCat Identities: ODC-BY
|
||||||
|
|
||||||
|
|
||||||
**Example - Wikimedia (Movement with mostly unified policy):**
|
**Example - Wikimedia (Movement with mostly unified policy):**
|
||||||
|
|
||||||
- Wikidata: CC0 (default)
|
- Wikidata: CC0 (default)
|
||||||
|
|
||||||
- Wikipedia: CC-BY-SA (different - copyleft for text)
|
- Wikipedia: CC-BY-SA (different - copyleft for text)
|
||||||
|
|
||||||
- Commons: Varies by upload (contributor choice)
|
- Commons: Varies by upload (contributor choice)
|
||||||
|
|
||||||
|
'
|
||||||
attributes:
|
attributes:
|
||||||
service_name:
|
service_name:
|
||||||
slot_uri: schema:name
|
slot_uri: schema:name
|
||||||
description: |
|
description: 'Name of the service this license applies to.
|
||||||
Name of the service this license applies to.
|
|
||||||
|
|
||||||
Examples: "VIAF", "WorldCat", "Wikidata", "Wikipedia", "Rijksstudio"
|
Examples: "VIAF", "WorldCat", "Wikidata", "Wikipedia", "Rijksstudio"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
service_url:
|
service_url:
|
||||||
slot_uri: schema:url
|
slot_uri: schema:url
|
||||||
description: |
|
description: 'URL of the service.
|
||||||
URL of the service.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- https://viaf.org/
|
- https://viaf.org/
|
||||||
|
|
||||||
- https://www.worldcat.org/
|
- https://www.worldcat.org/
|
||||||
|
|
||||||
- https://www.wikidata.org/
|
- https://www.wikidata.org/
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
service_license:
|
service_license:
|
||||||
slot_uri: schema:license
|
slot_uri: schema:license
|
||||||
description: |
|
description: 'The specific license that applies to this service.
|
||||||
The specific license that applies to this service.
|
|
||||||
|
|
||||||
Links to a DataLicense instance.
|
Links to a DataLicense instance.
|
||||||
|
|
||||||
|
'
|
||||||
range: DataLicense
|
range: DataLicense
|
||||||
inlined: false
|
inlined: false
|
||||||
required: true
|
required: true
|
||||||
license_notes:
|
license_notes:
|
||||||
slot_uri: schema:description
|
slot_uri: schema:description
|
||||||
description: |
|
description: 'Additional notes about how the license applies to this service.
|
||||||
Additional notes about how the license applies to this service.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "VIAF data is available under ODC-BY via OCLC Research"
|
- "VIAF data is available under ODC-BY via OCLC Research"
|
||||||
|
|
||||||
- "API access requires registration but data is freely reusable"
|
- "API access requires registration but data is freely reusable"
|
||||||
|
|
||||||
- "High-resolution images require separate agreement"
|
- "High-resolution images require separate agreement"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
|
|
@ -461,242 +583,3 @@ classes:
|
||||||
template_specificity:
|
template_specificity:
|
||||||
range: TemplateSpecificityScores
|
range: TemplateSpecificityScores
|
||||||
inlined: true
|
inlined: true
|
||||||
enums:
|
|
||||||
DataLicenseTypeEnum:
|
|
||||||
description: |
|
|
||||||
Classification of license types by their framework/family.
|
|
||||||
|
|
||||||
Different license families are designed for different purposes:
|
|
||||||
- Creative Commons: General creative works and data
|
|
||||||
- Open Data Commons: Specifically for databases
|
|
||||||
- Government: Public sector data
|
|
||||||
permissible_values:
|
|
||||||
CREATIVE_COMMONS:
|
|
||||||
description: |
|
|
||||||
Creative Commons license family (CC0, CC-BY, CC-BY-SA, etc.).
|
|
||||||
|
|
||||||
The most widely used open content licenses globally.
|
|
||||||
|
|
||||||
Reference: https://creativecommons.org/licenses/
|
|
||||||
meaning: cc:License
|
|
||||||
OPEN_DATA_COMMONS:
|
|
||||||
description: |
|
|
||||||
Open Data Commons license family (PDDL, ODC-BY, ODbL).
|
|
||||||
|
|
||||||
Specifically designed for databases and structured data.
|
|
||||||
Addresses sui generis database rights in EU law.
|
|
||||||
|
|
||||||
Reference: https://opendatacommons.org/licenses/
|
|
||||||
PUBLIC_DOMAIN:
|
|
||||||
description: |
|
|
||||||
Explicit public domain dedication (not technically a license).
|
|
||||||
|
|
||||||
Represents waiver of all rights to the fullest extent possible.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- CC0 (Creative Commons public domain dedication)
|
|
||||||
- PDDL (Open Data Commons Public Domain Dedication)
|
|
||||||
- Unlicense (for software)
|
|
||||||
OPEN_SOURCE:
|
|
||||||
description: |
|
|
||||||
Open source licenses approved by Open Source Initiative (OSI).
|
|
||||||
|
|
||||||
Primarily for software but sometimes applied to data.
|
|
||||||
|
|
||||||
Examples: MIT, Apache 2.0, GPL, BSD
|
|
||||||
|
|
||||||
Reference: https://opensource.org/licenses
|
|
||||||
GOVERNMENT_OPEN:
|
|
||||||
description: |
|
|
||||||
Government open data licenses.
|
|
||||||
|
|
||||||
National licenses for public sector information.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- UK Open Government Licence (OGL)
|
|
||||||
- French Licence Ouverte / Open Licence
|
|
||||||
- US works: Public domain by default (17 U.S.C. § 105)
|
|
||||||
PROPRIETARY:
|
|
||||||
description: |
|
|
||||||
Proprietary/closed licenses with restricted rights.
|
|
||||||
|
|
||||||
Typically requires subscription, payment, or specific agreements.
|
|
||||||
No redistribution or derivative rights without permission.
|
|
||||||
TERMS_OF_SERVICE:
|
|
||||||
description: |
|
|
||||||
Terms of service that govern data access without being a formal license.
|
|
||||||
|
|
||||||
Often more restrictive than licenses, may change without notice.
|
|
||||||
Common for commercial platforms and APIs.
|
|
||||||
DataOpennessLevelEnum:
|
|
||||||
description: |
|
|
||||||
Spectrum of data openness from fully open to fully closed.
|
|
||||||
|
|
||||||
This is the PRIMARY indicator for comparing data accessibility:
|
|
||||||
- Wikimedia Wikidata: FULLY_OPEN (CC0)
|
|
||||||
- OCLC VIAF: OPEN_WITH_ATTRIBUTION (ODC-BY)
|
|
||||||
- OCLC WorldCat: CLOSED_SUBSCRIPTION
|
|
||||||
permissible_values:
|
|
||||||
FULLY_OPEN:
|
|
||||||
description: "No restrictions on use, redistribution, or modification.\nPublic\
|
|
||||||
\ domain or equivalent dedication.\n\n**Rights**: No attribution required,\
|
|
||||||
\ commercial use allowed, \nderivatives allowed, no ShareAlike requirement.\n\
|
|
||||||
\nExamples:\n- Wikidata (CC0)\n- Europeana metadata (CC0)\n- US Government\
|
|
||||||
\ works (public domain by law)\n- Open Library metadata (PDDL)\n"
|
|
||||||
OPEN_WITH_ATTRIBUTION:
|
|
||||||
description: |
|
|
||||||
Open for any use, but attribution/credit to source required.
|
|
||||||
|
|
||||||
**Rights**: Commercial use allowed, derivatives allowed,
|
|
||||||
no ShareAlike requirement. MUST credit source.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- VIAF (ODC-BY)
|
|
||||||
- Many government datasets (UK OGL)
|
|
||||||
- Some museum collections (CC-BY)
|
|
||||||
OPEN_SHAREALIKE:
|
|
||||||
description: |
|
|
||||||
Open for any use, but derivatives must use same/compatible license.
|
|
||||||
Also known as "copyleft" for data.
|
|
||||||
|
|
||||||
**Rights**: Commercial use allowed, derivatives allowed,
|
|
||||||
attribution required. MUST share derivatives under same terms.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- Wikipedia text (CC-BY-SA)
|
|
||||||
- OpenStreetMap (ODbL)
|
|
||||||
- Wikibooks (CC-BY-SA)
|
|
||||||
RESTRICTED_NONCOMMERCIAL:
|
|
||||||
description: |
|
|
||||||
Open for non-commercial use only. Commercial use prohibited.
|
|
||||||
|
|
||||||
**Rights**: Attribution usually required, derivatives may be allowed.
|
|
||||||
NO commercial use without separate agreement.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- Some academic research datasets (CC-BY-NC)
|
|
||||||
- Some museum image collections (CC-BY-NC)
|
|
||||||
- Educational resources (CC-BY-NC-SA)
|
|
||||||
RESTRICTED_NO_DERIVATIVES:
|
|
||||||
description: |
|
|
||||||
Can share/redistribute but cannot modify or create derivatives.
|
|
||||||
|
|
||||||
**Rights**: Attribution required, redistribution allowed.
|
|
||||||
NO modifications, adaptations, or derivative works.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- Some archival materials (CC-BY-ND)
|
|
||||||
- Marketing materials
|
|
||||||
- Certain scholarly publications
|
|
||||||
CLOSED_SUBSCRIPTION:
|
|
||||||
description: |
|
|
||||||
Requires paid subscription or membership for access.
|
|
||||||
Limited or no redistribution rights.
|
|
||||||
|
|
||||||
**Rights**: Access requires payment. Redistribution typically prohibited.
|
|
||||||
May allow limited use under subscription terms.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- OCLC WorldCat (subscription database)
|
|
||||||
- JSTOR (academic subscription)
|
|
||||||
- ProQuest (commercial database)
|
|
||||||
CLOSED_PROPRIETARY:
|
|
||||||
description: |
|
|
||||||
Fully proprietary with no reuse rights.
|
|
||||||
Data cannot be redistributed, repurposed, or derived without explicit agreement.
|
|
||||||
|
|
||||||
**Rights**: No access or reuse without explicit permission.
|
|
||||||
All rights reserved.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- Internal corporate databases
|
|
||||||
- Classified government data
|
|
||||||
- Trade secrets and confidential business information
|
|
||||||
OpennessStanceEnum:
|
|
||||||
description: |
|
|
||||||
Organization's overall philosophical stance on data openness.
|
|
||||||
|
|
||||||
This captures the ADVOCACY and ASPIRATION dimension beyond just
|
|
||||||
the specific licenses applied. It represents what the organization
|
|
||||||
strives for and promotes in the broader community.
|
|
||||||
permissible_values:
|
|
||||||
STRONG_OPEN_ADVOCATE:
|
|
||||||
description: |
|
|
||||||
Organization actively promotes and advocates for open data.
|
|
||||||
|
|
||||||
Goes BEYOND just licensing own data openly - actively works
|
|
||||||
to influence others and advance open data movement.
|
|
||||||
|
|
||||||
**Characteristics:**
|
|
||||||
- All/most own data under open licenses
|
|
||||||
- Participates in open data advocacy organizations
|
|
||||||
- Provides funding/resources for open data initiatives
|
|
||||||
- Influences policy toward openness
|
|
||||||
- Trains others in open data practices
|
|
||||||
- May be part of a broader social movement
|
|
||||||
|
|
||||||
**Examples:**
|
|
||||||
- Wikimedia Foundation (social movement for free knowledge)
|
|
||||||
- Creative Commons (license steward and advocate)
|
|
||||||
- Open Knowledge Foundation (open data advocacy)
|
|
||||||
- Mozilla Foundation (open web advocacy)
|
|
||||||
- Internet Archive (preservation and access)
|
|
||||||
OPEN_BY_DEFAULT:
|
|
||||||
description: |
|
|
||||||
Organization prefers open data as default but may have practical exceptions.
|
|
||||||
|
|
||||||
**Characteristics:**
|
|
||||||
- Default license is open
|
|
||||||
- May have some restricted data for practical/legal reasons
|
|
||||||
- Generally supportive of open data movement
|
|
||||||
- Not necessarily active in advocacy
|
|
||||||
|
|
||||||
**Examples:**
|
|
||||||
- Many government open data programs
|
|
||||||
- Europeana (open metadata aggregator)
|
|
||||||
- Library of Congress (public domain by default)
|
|
||||||
- Rijksmuseum (open access to images)
|
|
||||||
MIXED_POLICY:
|
|
||||||
description: |
|
|
||||||
Organization has mix of open and closed data offerings.
|
|
||||||
|
|
||||||
**Characteristics:**
|
|
||||||
- Some services open, some proprietary
|
|
||||||
- May be transitioning toward openness
|
|
||||||
- Business model partially depends on closed data
|
|
||||||
- Pragmatic rather than ideological approach
|
|
||||||
|
|
||||||
**Examples:**
|
|
||||||
- OCLC (VIAF open, WorldCat closed)
|
|
||||||
- Some academic publishers (some open access journals)
|
|
||||||
- Hybrid open access publishers
|
|
||||||
- Museums with partial open access programs
|
|
||||||
CLOSED_BY_DEFAULT:
|
|
||||||
description: |
|
|
||||||
Organization generally keeps data closed but has some open offerings.
|
|
||||||
|
|
||||||
**Characteristics:**
|
|
||||||
- Default is proprietary/closed
|
|
||||||
- Some data released for specific purposes or requirements
|
|
||||||
- May participate in limited open data initiatives
|
|
||||||
- Open offerings are exceptions, not the rule
|
|
||||||
|
|
||||||
**Examples:**
|
|
||||||
- Traditional commercial publishers with some OA
|
|
||||||
- Some corporate data providers with limited free tiers
|
|
||||||
- Organizations transitioning slowly toward openness
|
|
||||||
FULLY_PROPRIETARY:
|
|
||||||
description: |
|
|
||||||
Organization maintains fully closed/proprietary data model.
|
|
||||||
|
|
||||||
**Characteristics:**
|
|
||||||
- All data proprietary
|
|
||||||
- No open data initiatives
|
|
||||||
- Business model depends on data exclusivity
|
|
||||||
- May view open data as threat to business
|
|
||||||
|
|
||||||
**Examples:**
|
|
||||||
- Commercial data vendors
|
|
||||||
- Some subscription databases
|
|
||||||
- Private corporate archives
|
|
||||||
- Trade secret repositories
|
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,9 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/DataServiceProtocolEnum
|
||||||
|
- ../enums/AuthenticationMethodEnum
|
||||||
|
- ../enums/EndpointStatusEnum
|
||||||
classes:
|
classes:
|
||||||
DataServiceEndpoint:
|
DataServiceEndpoint:
|
||||||
abstract: true
|
abstract: true
|
||||||
|
|
@ -30,31 +33,22 @@ classes:
|
||||||
- response_format
|
- response_format
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
- template_specificity
|
- template_specificity
|
||||||
description: "Abstract base class for API service endpoints exposed by heritage\
|
description: "Abstract base class for API service endpoints exposed by heritage digital platforms.\n\n**Purpose:**\n\n\
|
||||||
\ digital platforms.\n\n**Purpose:**\n\nModels the technical API endpoints discovered\
|
Models the technical API endpoints discovered at heritage institutions, enabling:\n- Machine-readable discovery of available\
|
||||||
\ 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\
|
||||||
\ APIs\n- Integration with aggregation platforms\n- Automated harvesting and\
|
\n**DCAT 3 Alignment:**\n\nMaps to `dcat:DataService` which represents:\n- \"A collection of operations that provides\
|
||||||
\ synchronization\n- Developer documentation\n\n**DCAT 3 Alignment:**\n\nMaps\
|
\ access to one or more datasets or data processing functions\"\n- Has endpoint URL (dcat:endpointURL)\n- Has endpoint\
|
||||||
\ to `dcat:DataService` which represents:\n- \"A collection of operations that\
|
\ description/documentation (dcat:endpointDescription)\n- May serve one or more datasets (dcat:servesDataset)\n\n**Subclasses:**\n\
|
||||||
\ provides access to one or more datasets or data processing functions\"\n-\
|
\n| Class | Protocol | Purpose |\n|-------|----------|---------|\n| OAIPMHEndpoint | OAI-PMH | Metadata harvesting |\n\
|
||||||
\ Has endpoint URL (dcat:endpointURL)\n- Has endpoint description/documentation\
|
| SearchAPI | REST/JSON | Search and discovery |\n| METSAPI | REST/XML | METS document retrieval |\n| FileAPI | REST\
|
||||||
\ (dcat:endpointDescription)\n- May serve one or more datasets (dcat:servesDataset)\n\
|
\ | File/asset download |\n| IIPImageServer | IIP/IIIF | Image serving |\n| EADDownload | HTTP | EAD finding aid export\
|
||||||
\n**Subclasses:**\n\n| Class | Protocol | Purpose |\n|-------|----------|---------|\n\
|
\ |\n\n**Example - Nationaal Archief APIs:**\n\n```yaml\ndigital_platform:\n platform_name: \"Nationaal Archief Website\"\
|
||||||
| OAIPMHEndpoint | OAI-PMH | Metadata harvesting |\n| SearchAPI | REST/JSON\
|
\n data_service_endpoints:\n - endpoint_type: OAIPMHEndpoint\n endpoint_url: \"https://www.nationaalarchief.nl/onderzoeken/oai-pmh\"\
|
||||||
\ | Search and discovery |\n| METSAPI | REST/XML | METS document retrieval |\n\
|
\n protocol: OAI-PMH\n \n - endpoint_type: SearchAPI\n endpoint_url: \"https://www.nationaalarchief.nl/onderzoeken/api/zoeken\"\
|
||||||
| FileAPI | REST | File/asset download |\n| IIPImageServer | IIP/IIIF | Image\
|
\n protocol: REST\n response_formats: [\"application/json\"]\n \n - endpoint_type: IIPImageServer\n\
|
||||||
\ serving |\n| EADDownload | HTTP | EAD finding aid export |\n\n**Example -\
|
\ endpoint_url: \"https://service.archief.nl/iipsrv\"\n protocol: IIP\n```\n\n**Provenance:**\n\nDataServiceEndpoint\
|
||||||
\ Nationaal Archief APIs:**\n\n```yaml\ndigital_platform:\n platform_name:\
|
\ instances MUST include discovery provenance:\n- When the endpoint was discovered\n- How it was discovered (web scrape,\
|
||||||
\ \"Nationaal Archief Website\"\n data_service_endpoints:\n - endpoint_type:\
|
\ documentation, API testing)\n- Verification status\n"
|
||||||
\ 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:
|
exact_mappings:
|
||||||
- dcat:DataService
|
- dcat:DataService
|
||||||
close_mappings:
|
close_mappings:
|
||||||
|
|
@ -64,195 +58,245 @@ classes:
|
||||||
endpoint_id:
|
endpoint_id:
|
||||||
identifier: true
|
identifier: true
|
||||||
slot_uri: dcterms:identifier
|
slot_uri: dcterms:identifier
|
||||||
description: |
|
description: 'Unique identifier for this data service endpoint.
|
||||||
Unique identifier for this data service endpoint.
|
|
||||||
|
|
||||||
Recommended format: URI combining platform ID and service type.
|
Recommended format: URI combining platform ID and service type.
|
||||||
|
|
||||||
|
|
||||||
Example: "https://nde.nl/ontology/hc/endpoint/nationaalarchief-oai-pmh"
|
Example: "https://nde.nl/ontology/hc/endpoint/nationaalarchief-oai-pmh"
|
||||||
|
|
||||||
|
'
|
||||||
range: uriorcurie
|
range: uriorcurie
|
||||||
required: true
|
required: true
|
||||||
endpoint_name:
|
endpoint_name:
|
||||||
slot_uri: schema:name
|
slot_uri: schema:name
|
||||||
description: |
|
description: 'Human-readable name for this endpoint.
|
||||||
Human-readable name for this endpoint.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "Nationaal Archief OAI-PMH Endpoint"
|
- "Nationaal Archief OAI-PMH Endpoint"
|
||||||
|
|
||||||
- "Heritage Search API"
|
- "Heritage Search API"
|
||||||
|
|
||||||
- "Image Server (IIP)"
|
- "Image Server (IIP)"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
endpoint_url:
|
endpoint_url:
|
||||||
slot_uri: dcat:endpointURL
|
slot_uri: dcat:endpointURL
|
||||||
description: |
|
description: 'Base URL of the service endpoint.
|
||||||
Base URL of the service endpoint.
|
|
||||||
|
|
||||||
DCAT: dcat:endpointURL - "The root location or primary endpoint of the service"
|
DCAT: dcat:endpointURL - "The root location or primary endpoint of the service"
|
||||||
|
|
||||||
|
|
||||||
This is the URL that clients use to access the service.
|
This is the URL that clients use to access the service.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "https://www.nationaalarchief.nl/onderzoeken/oai-pmh"
|
- "https://www.nationaalarchief.nl/onderzoeken/oai-pmh"
|
||||||
|
|
||||||
- "https://api.europeana.eu/record/v2/"
|
- "https://api.europeana.eu/record/v2/"
|
||||||
|
|
||||||
- "https://service.archief.nl/iipsrv"
|
- "https://service.archief.nl/iipsrv"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
required: true
|
required: true
|
||||||
endpoint_description_url:
|
endpoint_description_url:
|
||||||
slot_uri: dcat:endpointDescription
|
slot_uri: dcat:endpointDescription
|
||||||
description: |
|
description: 'URL to machine-readable API documentation.
|
||||||
URL to machine-readable API documentation.
|
|
||||||
|
|
||||||
DCAT: dcat:endpointDescription - "A description of the service end-point"
|
DCAT: dcat:endpointDescription - "A description of the service end-point"
|
||||||
|
|
||||||
|
|
||||||
May be:
|
May be:
|
||||||
|
|
||||||
- OpenAPI/Swagger specification (JSON/YAML)
|
- OpenAPI/Swagger specification (JSON/YAML)
|
||||||
|
|
||||||
- OAI-PMH Identify response
|
- OAI-PMH Identify response
|
||||||
|
|
||||||
- WSDL document
|
- WSDL document
|
||||||
|
|
||||||
- Human-readable documentation page
|
- Human-readable documentation page
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "https://api.example.org/openapi.json"
|
- "https://api.example.org/openapi.json"
|
||||||
|
|
||||||
- "https://www.nationaalarchief.nl/onderzoeken/oai-pmh?verb=Identify"
|
- "https://www.nationaalarchief.nl/onderzoeken/oai-pmh?verb=Identify"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
authentication_method:
|
authentication_method:
|
||||||
slot_uri: schema:potentialAction
|
slot_uri: schema:potentialAction
|
||||||
description: |
|
description: 'Authentication method required (if authentication_required is true).
|
||||||
Authentication method required (if authentication_required is true).
|
|
||||||
|
|
||||||
Values from AuthenticationMethodEnum:
|
Values from AuthenticationMethodEnum:
|
||||||
|
|
||||||
- NONE: No authentication
|
- NONE: No authentication
|
||||||
|
|
||||||
- API_KEY: API key in header or query parameter
|
- API_KEY: API key in header or query parameter
|
||||||
|
|
||||||
- OAUTH2: OAuth 2.0
|
- OAUTH2: OAuth 2.0
|
||||||
|
|
||||||
- BASIC: HTTP Basic Authentication
|
- BASIC: HTTP Basic Authentication
|
||||||
|
|
||||||
- IP_WHITELIST: IP address whitelist
|
- IP_WHITELIST: IP address whitelist
|
||||||
|
|
||||||
- INSTITUTIONAL: Institutional login (Shibboleth, etc.)
|
- INSTITUTIONAL: Institutional login (Shibboleth, etc.)
|
||||||
|
|
||||||
|
'
|
||||||
range: AuthenticationMethodEnum
|
range: AuthenticationMethodEnum
|
||||||
cors_enabled:
|
cors_enabled:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether CORS (Cross-Origin Resource Sharing) is enabled.
|
||||||
Whether CORS (Cross-Origin Resource Sharing) is enabled.
|
|
||||||
|
|
||||||
Important for browser-based JavaScript applications:
|
Important for browser-based JavaScript applications:
|
||||||
|
|
||||||
- true: Cross-origin requests allowed
|
- true: Cross-origin requests allowed
|
||||||
|
|
||||||
- false: Same-origin only
|
- false: Same-origin only
|
||||||
|
|
||||||
- null: Unknown
|
- null: Unknown
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
rate_limit:
|
rate_limit:
|
||||||
slot_uri: schema:rateValue
|
slot_uri: schema:rateValue
|
||||||
description: |
|
description: 'Rate limit description if applicable.
|
||||||
Rate limit description if applicable.
|
|
||||||
|
|
||||||
Free-text description of rate limiting policy.
|
Free-text description of rate limiting policy.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "100 requests per minute"
|
- "100 requests per minute"
|
||||||
|
|
||||||
- "1000 requests per day per API key"
|
- "1000 requests per day per API key"
|
||||||
|
|
||||||
- "No limit"
|
- "No limit"
|
||||||
|
|
||||||
- "Unknown"
|
- "Unknown"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
documentation_url:
|
documentation_url:
|
||||||
slot_uri: schema:documentation
|
slot_uri: schema:documentation
|
||||||
description: |
|
description: 'URL to human-readable documentation.
|
||||||
URL to human-readable documentation.
|
|
||||||
|
|
||||||
This is separate from endpoint_description_url which is machine-readable.
|
This is separate from endpoint_description_url which is machine-readable.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "https://pro.europeana.eu/resources/apis/record"
|
- "https://pro.europeana.eu/resources/apis/record"
|
||||||
|
|
||||||
- "https://www.nationaalarchief.nl/onderzoeken/handleiding/api"
|
- "https://www.nationaalarchief.nl/onderzoeken/handleiding/api"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
status:
|
status:
|
||||||
slot_uri: schema:serverStatus
|
slot_uri: schema:serverStatus
|
||||||
description: |
|
description: 'Operational status of the endpoint.
|
||||||
Operational status of the endpoint.
|
|
||||||
|
|
||||||
Values from EndpointStatusEnum:
|
Values from EndpointStatusEnum:
|
||||||
|
|
||||||
- ACTIVE: Endpoint is operational
|
- ACTIVE: Endpoint is operational
|
||||||
|
|
||||||
- DEPRECATED: Endpoint works but will be removed
|
- DEPRECATED: Endpoint works but will be removed
|
||||||
|
|
||||||
- BETA: Endpoint in testing/beta
|
- BETA: Endpoint in testing/beta
|
||||||
|
|
||||||
- OFFLINE: Endpoint currently unavailable
|
- OFFLINE: Endpoint currently unavailable
|
||||||
|
|
||||||
- UNKNOWN: Status not verified
|
- UNKNOWN: Status not verified
|
||||||
|
|
||||||
|
'
|
||||||
range: EndpointStatusEnum
|
range: EndpointStatusEnum
|
||||||
last_verified:
|
last_verified:
|
||||||
slot_uri: schema:dateModified
|
slot_uri: schema:dateModified
|
||||||
description: |
|
description: 'Date when this endpoint was last verified to be operational.
|
||||||
Date when this endpoint was last verified to be operational.
|
|
||||||
|
|
||||||
ISO 8601 date format.
|
ISO 8601 date format.
|
||||||
|
|
||||||
|
|
||||||
Example: "2025-12-14"
|
Example: "2025-12-14"
|
||||||
|
|
||||||
|
'
|
||||||
range: date
|
range: date
|
||||||
serves_dataset:
|
serves_dataset:
|
||||||
slot_uri: dcat:servesDataset
|
slot_uri: dcat:servesDataset
|
||||||
description: |
|
description: 'Dataset(s) that this service provides access to.
|
||||||
Dataset(s) that this service provides access to.
|
|
||||||
|
|
||||||
DCAT: dcat:servesDataset - "A collection of data that this data service can distribute"
|
DCAT: dcat:servesDataset - "A collection of data that this data service can distribute"
|
||||||
|
|
||||||
|
|
||||||
References to DCAT Dataset identifiers or descriptions.
|
References to DCAT Dataset identifiers or descriptions.
|
||||||
|
|
||||||
|
'
|
||||||
range: uriorcurie
|
range: uriorcurie
|
||||||
multivalued: true
|
multivalued: true
|
||||||
version:
|
version:
|
||||||
slot_uri: schema:version
|
slot_uri: schema:version
|
||||||
description: |
|
description: 'Version of the API or service.
|
||||||
Version of the API or service.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "v2"
|
- "v2"
|
||||||
|
|
||||||
- "1.0.0"
|
- "1.0.0"
|
||||||
|
|
||||||
- "2023-01"
|
- "2023-01"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
discovery_provenance:
|
discovery_provenance:
|
||||||
slot_uri: dcterms:provenance
|
slot_uri: dcterms:provenance
|
||||||
description: |
|
description: 'Provenance information about how this endpoint was discovered.
|
||||||
Provenance information about how this endpoint was discovered.
|
|
||||||
|
|
||||||
Should include:
|
Should include:
|
||||||
|
|
||||||
- Discovery date
|
- Discovery date
|
||||||
|
|
||||||
- Discovery method (documentation, web scrape, API testing)
|
- Discovery method (documentation, web scrape, API testing)
|
||||||
|
|
||||||
- Verification status
|
- Verification status
|
||||||
|
|
||||||
|
|
||||||
Free-text or structured provenance note.
|
Free-text or structured provenance note.
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
endpoint_type:
|
endpoint_type:
|
||||||
slot_uri: dcterms:type
|
slot_uri: dcterms:type
|
||||||
description: |
|
description: "Classification of this endpoint from the DataServiceEndpointType taxonomy.\n\n**Instance vs Type Architecture:**\n\
|
||||||
Classification of this endpoint from the DataServiceEndpointType taxonomy.
|
\nThis slot links an INSTANCE (DataServiceEndpoint) to its TYPE classification\n(DataServiceEndpointType), following\
|
||||||
|
\ the same architectural pattern as\nCustodian/CustodianType.\n\n```\nDataServiceEndpoint (INSTANCE) DataServiceEndpointType\
|
||||||
**Instance vs Type Architecture:**
|
\ (TYPE)\n├── endpoint_url ├── protocol_name\n├── status ├── protocol_version\n\
|
||||||
|
├── authentication_required ├── specification_url\n└── endpoint_type ────────────────►└── typical_response_formats\n\
|
||||||
This slot links an INSTANCE (DataServiceEndpoint) to its TYPE classification
|
```\n\n**Why Both `protocol` and `endpoint_type`?**\n\n- `protocol` (enum): Simple string classification for quick\
|
||||||
(DataServiceEndpointType), following the same architectural pattern as
|
\ filtering\n- `endpoint_type` (class reference): Rich type metadata with SKOS hierarchy,\n specification URLs,\
|
||||||
Custodian/CustodianType.
|
\ and semantic relationships\n\n**Example:**\n\n```yaml\ndata_service_endpoint:\n endpoint_id: \"https://nde.nl/hc/endpoint/na-oai-pmh\"\
|
||||||
|
\n endpoint_url: \"https://www.nationaalarchief.nl/onderzoeken/oai-pmh\"\n protocol: OAI_PMH \
|
||||||
```
|
\ # Simple enum (DataServiceProtocolEnum)\n endpoint_type: OAIPMHEndpointType # Rich type (DataServiceEndpointType\
|
||||||
DataServiceEndpoint (INSTANCE) DataServiceEndpointType (TYPE)
|
\ subclass)\n```\n\nThis pattern mirrors:\n- `custodian_type` enum + `CustodianType` class on `Custodian`\n- `platform_type`\
|
||||||
├── endpoint_url ├── protocol_name
|
\ enum + `DigitalPlatformType` class on `DigitalPlatform`\n"
|
||||||
├── status ├── protocol_version
|
|
||||||
├── authentication_required ├── specification_url
|
|
||||||
└── endpoint_type ────────────────►└── typical_response_formats
|
|
||||||
```
|
|
||||||
|
|
||||||
**Why Both `protocol` and `endpoint_type`?**
|
|
||||||
|
|
||||||
- `protocol` (enum): Simple string classification for quick filtering
|
|
||||||
- `endpoint_type` (class reference): Rich type metadata with SKOS hierarchy,
|
|
||||||
specification URLs, and semantic relationships
|
|
||||||
|
|
||||||
**Example:**
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
data_service_endpoint:
|
|
||||||
endpoint_id: "https://nde.nl/hc/endpoint/na-oai-pmh"
|
|
||||||
endpoint_url: "https://www.nationaalarchief.nl/onderzoeken/oai-pmh"
|
|
||||||
protocol: OAI_PMH # Simple enum (DataServiceProtocolEnum)
|
|
||||||
endpoint_type: OAIPMHEndpointType # Rich type (DataServiceEndpointType subclass)
|
|
||||||
```
|
|
||||||
|
|
||||||
This pattern mirrors:
|
|
||||||
- `custodian_type` enum + `CustodianType` class on `Custodian`
|
|
||||||
- `platform_type` enum + `DigitalPlatformType` class on `DigitalPlatform`
|
|
||||||
range: DataServiceEndpointType
|
range: DataServiceEndpointType
|
||||||
required: false
|
required: false
|
||||||
comments:
|
comments:
|
||||||
|
|
@ -274,195 +318,3 @@ classes:
|
||||||
template_specificity:
|
template_specificity:
|
||||||
range: TemplateSpecificityScores
|
range: TemplateSpecificityScores
|
||||||
inlined: true
|
inlined: true
|
||||||
enums:
|
|
||||||
DataServiceProtocolEnum:
|
|
||||||
description: |
|
|
||||||
Protocols and standards implemented by data service endpoints.
|
|
||||||
permissible_values:
|
|
||||||
OAI_PMH:
|
|
||||||
description: |
|
|
||||||
Open Archives Initiative Protocol for Metadata Harvesting.
|
|
||||||
|
|
||||||
Standard for harvesting metadata from repositories.
|
|
||||||
Specification: http://www.openarchives.org/OAI/openarchivesprotocol.html
|
|
||||||
REST:
|
|
||||||
description: |
|
|
||||||
RESTful HTTP API.
|
|
||||||
|
|
||||||
Uses HTTP methods (GET, POST, etc.) with JSON/XML responses.
|
|
||||||
SOAP:
|
|
||||||
description: |
|
|
||||||
SOAP web services.
|
|
||||||
|
|
||||||
XML-based protocol with WSDL service description.
|
|
||||||
GRAPHQL:
|
|
||||||
description: |
|
|
||||||
GraphQL API.
|
|
||||||
|
|
||||||
Query language for APIs.
|
|
||||||
SPARQL:
|
|
||||||
description: |
|
|
||||||
SPARQL Protocol and RDF Query Language.
|
|
||||||
|
|
||||||
For querying RDF triple stores.
|
|
||||||
IIIF_IMAGE:
|
|
||||||
description: |
|
|
||||||
IIIF Image API.
|
|
||||||
|
|
||||||
International Image Interoperability Framework Image API.
|
|
||||||
Specification: https://iiif.io/api/image/
|
|
||||||
IIIF_PRESENTATION:
|
|
||||||
description: |
|
|
||||||
IIIF Presentation API.
|
|
||||||
|
|
||||||
For describing structure and layout of compound digital objects.
|
|
||||||
Specification: https://iiif.io/api/presentation/
|
|
||||||
IIIF_CONTENT_SEARCH:
|
|
||||||
description: |
|
|
||||||
IIIF Content Search API.
|
|
||||||
|
|
||||||
For searching within annotations.
|
|
||||||
Specification: https://iiif.io/api/search/
|
|
||||||
IIIF_CHANGE_DISCOVERY:
|
|
||||||
description: |
|
|
||||||
IIIF Change Discovery API.
|
|
||||||
|
|
||||||
For discovering changes in IIIF resources.
|
|
||||||
Specification: https://iiif.io/api/discovery/
|
|
||||||
IIP:
|
|
||||||
description: |
|
|
||||||
Internet Imaging Protocol.
|
|
||||||
|
|
||||||
Tile-based image delivery protocol.
|
|
||||||
Common implementations: IIPImage server.
|
|
||||||
ZOOMIFY:
|
|
||||||
description: |
|
|
||||||
Zoomify tile protocol.
|
|
||||||
|
|
||||||
Proprietary but widely-supported tiling format.
|
|
||||||
DEEPZOOM:
|
|
||||||
description: |
|
|
||||||
Microsoft Deep Zoom.
|
|
||||||
|
|
||||||
Tile-based image format for Seadragon viewers.
|
|
||||||
SRU:
|
|
||||||
description: |
|
|
||||||
Search/Retrieve via URL.
|
|
||||||
|
|
||||||
Standard search protocol from Library of Congress.
|
|
||||||
Specification: http://www.loc.gov/standards/sru/
|
|
||||||
Z39_50:
|
|
||||||
description: |
|
|
||||||
ANSI/NISO Z39.50 protocol.
|
|
||||||
|
|
||||||
Library search and retrieval protocol.
|
|
||||||
ATOM:
|
|
||||||
description: |
|
|
||||||
Atom Syndication Format.
|
|
||||||
|
|
||||||
XML-based feed format for content syndication.
|
|
||||||
RSS:
|
|
||||||
description: |
|
|
||||||
RSS (Really Simple Syndication).
|
|
||||||
|
|
||||||
XML-based feed format.
|
|
||||||
OPENSEARCH:
|
|
||||||
description: |
|
|
||||||
OpenSearch protocol.
|
|
||||||
|
|
||||||
Collection of simple formats for sharing search results.
|
|
||||||
Specification: https://opensearch.org/
|
|
||||||
WEBDAV:
|
|
||||||
description: |
|
|
||||||
WebDAV (Web Distributed Authoring and Versioning).
|
|
||||||
|
|
||||||
HTTP extension for collaborative editing.
|
|
||||||
FTP:
|
|
||||||
description: |
|
|
||||||
File Transfer Protocol.
|
|
||||||
|
|
||||||
For bulk file downloads.
|
|
||||||
AuthenticationMethodEnum:
|
|
||||||
description: |
|
|
||||||
Authentication methods for accessing API endpoints.
|
|
||||||
permissible_values:
|
|
||||||
NONE:
|
|
||||||
description: No authentication required (public access)
|
|
||||||
API_KEY:
|
|
||||||
description: |
|
|
||||||
API key authentication.
|
|
||||||
|
|
||||||
Key provided in HTTP header (e.g., X-API-Key) or query parameter.
|
|
||||||
API_KEY_HEADER:
|
|
||||||
description: API key in HTTP header
|
|
||||||
API_KEY_QUERY:
|
|
||||||
description: API key in URL query parameter
|
|
||||||
OAUTH2:
|
|
||||||
description: |
|
|
||||||
OAuth 2.0 authentication.
|
|
||||||
|
|
||||||
Token-based authentication with authorization flow.
|
|
||||||
OAUTH1:
|
|
||||||
description: OAuth 1.0a authentication
|
|
||||||
BASIC:
|
|
||||||
description: |
|
|
||||||
HTTP Basic Authentication.
|
|
||||||
|
|
||||||
Username/password in Authorization header.
|
|
||||||
BEARER_TOKEN:
|
|
||||||
description: |
|
|
||||||
Bearer token authentication.
|
|
||||||
|
|
||||||
JWT or opaque token in Authorization header.
|
|
||||||
IP_WHITELIST:
|
|
||||||
description: |
|
|
||||||
IP address whitelist.
|
|
||||||
|
|
||||||
Access restricted to specific IP ranges.
|
|
||||||
INSTITUTIONAL:
|
|
||||||
description: |
|
|
||||||
Institutional login.
|
|
||||||
|
|
||||||
Shibboleth, SAML, or similar federated authentication.
|
|
||||||
CLIENT_CERTIFICATE:
|
|
||||||
description: |
|
|
||||||
Client certificate authentication.
|
|
||||||
|
|
||||||
TLS/SSL client certificates.
|
|
||||||
DIGEST:
|
|
||||||
description: HTTP Digest Authentication
|
|
||||||
EndpointStatusEnum:
|
|
||||||
description: |
|
|
||||||
Operational status of an API endpoint.
|
|
||||||
permissible_values:
|
|
||||||
ACTIVE:
|
|
||||||
description: |
|
|
||||||
Endpoint is operational and accepting requests.
|
|
||||||
DEPRECATED:
|
|
||||||
description: |
|
|
||||||
Endpoint works but is deprecated.
|
|
||||||
|
|
||||||
Will be removed in future - migrate to new endpoint.
|
|
||||||
BETA:
|
|
||||||
description: |
|
|
||||||
Endpoint in testing/beta phase.
|
|
||||||
|
|
||||||
May change without notice.
|
|
||||||
ALPHA:
|
|
||||||
description: |
|
|
||||||
Endpoint in early alpha testing.
|
|
||||||
|
|
||||||
Not recommended for production use.
|
|
||||||
OFFLINE:
|
|
||||||
description: |
|
|
||||||
Endpoint currently unavailable.
|
|
||||||
|
|
||||||
May be temporary maintenance or permanent shutdown.
|
|
||||||
MAINTENANCE:
|
|
||||||
description: |
|
|
||||||
Endpoint temporarily offline for maintenance.
|
|
||||||
UNKNOWN:
|
|
||||||
description: |
|
|
||||||
Status not verified.
|
|
||||||
|
|
||||||
Needs testing to determine current status.
|
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,11 @@ imports:
|
||||||
- ../metadata
|
- ../metadata
|
||||||
- ../slots/specificity_annotation
|
- ../slots/specificity_annotation
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
|
- ../slots/protocol_name
|
||||||
|
- ../slots/protocol_version
|
||||||
|
- ../slots/specification_url
|
||||||
|
- ../slots/typical_response_formats
|
||||||
|
- ../slots/typical_http_methods
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
classes:
|
classes:
|
||||||
|
|
@ -253,6 +258,11 @@ classes:
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
- template_specificity
|
- template_specificity
|
||||||
|
- protocol_name
|
||||||
|
- protocol_version
|
||||||
|
- specification_url
|
||||||
|
- typical_response_formats
|
||||||
|
- typical_http_methods
|
||||||
slot_usage:
|
slot_usage:
|
||||||
specificity_annotation:
|
specificity_annotation:
|
||||||
range: SpecificityAnnotation
|
range: SpecificityAnnotation
|
||||||
|
|
|
||||||
|
|
@ -18,89 +18,10 @@ imports:
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
classes:
|
classes:
|
||||||
OAIPMHEndpoint:
|
# NOTE: OAIPMHEndpoint, SearchAPI, FileAPI, IIPImageServer, EADDownload are defined
|
||||||
is_a: DataServiceEndpointType
|
# as full instance classes (is_a: DataServiceEndpoint) in their individual files.
|
||||||
class_uri: hc:OAIPMHEndpoint
|
# This file contains only TYPE classifications that do not conflict with those.
|
||||||
description: |
|
|
||||||
Classification for OAI-PMH (Open Archives Initiative Protocol for Metadata Harvesting) endpoints.
|
|
||||||
|
|
||||||
**Protocol**: OAI-PMH 2.0
|
|
||||||
**Purpose**: Metadata harvesting from repositories
|
|
||||||
**Standard**: http://www.openarchives.org/OAI/openarchivesprotocol.html
|
|
||||||
|
|
||||||
**Heritage Sector Usage**:
|
|
||||||
|
|
||||||
OAI-PMH is the dominant protocol for metadata aggregation in GLAM:
|
|
||||||
- National aggregators harvest from institutional repositories
|
|
||||||
- Europeana harvests from national aggregators
|
|
||||||
- Archives Portal Europe aggregates archival finding aids
|
|
||||||
|
|
||||||
**Verbs**: Identify, ListMetadataFormats, ListSets, ListIdentifiers, ListRecords, GetRecord
|
|
||||||
|
|
||||||
**Common Metadata Formats**: oai_dc, ese, edm, mods, marc21, ead, lido
|
|
||||||
slot_usage:
|
|
||||||
protocol_name:
|
|
||||||
equals_string: OAI-PMH
|
|
||||||
protocol_version:
|
|
||||||
ifabsent: string(2.0)
|
|
||||||
specification_url:
|
|
||||||
ifabsent: uri(http://www.openarchives.org/OAI/openarchivesprotocol.html)
|
|
||||||
typical_response_formats:
|
|
||||||
ifabsent: string(application/xml)
|
|
||||||
typical_http_methods:
|
|
||||||
ifabsent: string(GET)
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
comments:
|
|
||||||
- Most widely adopted metadata harvesting protocol in heritage sector
|
|
||||||
- Base protocol for Europeana, Archives Portal Europe, national aggregators
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
SearchAPI:
|
|
||||||
is_a: DataServiceEndpointType
|
|
||||||
class_uri: hc:SearchAPI
|
|
||||||
description: |
|
|
||||||
Classification for REST/JSON search API endpoints.
|
|
||||||
|
|
||||||
**Protocol**: REST over HTTP
|
|
||||||
**Purpose**: Search and discovery of collection records
|
|
||||||
**Format**: Typically JSON responses
|
|
||||||
|
|
||||||
**Heritage Sector Usage**:
|
|
||||||
|
|
||||||
Search APIs provide programmatic access to collection search:
|
|
||||||
- Europeana Search API
|
|
||||||
- Rijksmuseum API
|
|
||||||
- National Archives search endpoints
|
|
||||||
|
|
||||||
**Common Features**:
|
|
||||||
- Full-text search
|
|
||||||
- Faceted filtering
|
|
||||||
- Pagination
|
|
||||||
- Field-specific queries
|
|
||||||
slot_usage:
|
|
||||||
protocol_name:
|
|
||||||
equals_string: REST
|
|
||||||
typical_response_formats:
|
|
||||||
ifabsent: string(application/json)
|
|
||||||
typical_http_methods:
|
|
||||||
ifabsent: string(GET)
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
comments:
|
|
||||||
- Generic REST search endpoints - institution-specific implementations
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
SRUEndpoint:
|
SRUEndpoint:
|
||||||
is_a: DataServiceEndpointType
|
is_a: DataServiceEndpointType
|
||||||
class_uri: hc:SRUEndpoint
|
class_uri: hc:SRUEndpoint
|
||||||
|
|
@ -179,151 +100,6 @@ classes:
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
- template_specificity
|
- template_specificity
|
||||||
METSEndpoint:
|
|
||||||
is_a: DataServiceEndpointType
|
|
||||||
class_uri: hc:METSEndpoint
|
|
||||||
description: |
|
|
||||||
Classification for METS (Metadata Encoding and Transmission Standard) API endpoints.
|
|
||||||
|
|
||||||
**Protocol**: REST/XML
|
|
||||||
**Purpose**: METS document retrieval for digital objects
|
|
||||||
**Standard**: https://www.loc.gov/standards/mets/
|
|
||||||
|
|
||||||
**Heritage Sector Usage**:
|
|
||||||
|
|
||||||
METS APIs provide structural metadata for complex digital objects:
|
|
||||||
- Digitized archival records (scans + metadata)
|
|
||||||
- Multi-page documents
|
|
||||||
- Compound objects (book with pages)
|
|
||||||
|
|
||||||
**Example**: Nationaal Archief METS API for archival scans
|
|
||||||
slot_usage:
|
|
||||||
protocol_name:
|
|
||||||
equals_string: METS
|
|
||||||
typical_response_formats:
|
|
||||||
ifabsent: string(application/xml)
|
|
||||||
typical_http_methods:
|
|
||||||
ifabsent: string(GET)
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
comments:
|
|
||||||
- Structural metadata for complex digital objects
|
|
||||||
- Library of Congress standard
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
EADDownload:
|
|
||||||
is_a: DataServiceEndpointType
|
|
||||||
class_uri: hc:EADDownload
|
|
||||||
description: |
|
|
||||||
Classification for EAD (Encoded Archival Description) download endpoints.
|
|
||||||
|
|
||||||
**Protocol**: HTTP download
|
|
||||||
**Purpose**: Export archival finding aids in EAD XML format
|
|
||||||
**Standard**: https://www.loc.gov/ead/
|
|
||||||
|
|
||||||
**Heritage Sector Usage**:
|
|
||||||
|
|
||||||
EAD download endpoints enable:
|
|
||||||
- Finding aid export for offline use
|
|
||||||
- Aggregation by archival portals
|
|
||||||
- Migration between systems
|
|
||||||
- Preservation of archival descriptions
|
|
||||||
|
|
||||||
**Example**: Dutch regional archives EAD export endpoints
|
|
||||||
slot_usage:
|
|
||||||
protocol_name:
|
|
||||||
equals_string: HTTP
|
|
||||||
typical_response_formats:
|
|
||||||
ifabsent: string(application/xml)
|
|
||||||
typical_http_methods:
|
|
||||||
ifabsent: string(GET)
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
comments:
|
|
||||||
- Archival finding aid export standard
|
|
||||||
- Used for APE aggregation and migration
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
FileAPI:
|
|
||||||
is_a: DataServiceEndpointType
|
|
||||||
class_uri: hc:FileAPI
|
|
||||||
description: |
|
|
||||||
Classification for file/asset download API endpoints.
|
|
||||||
|
|
||||||
**Protocol**: HTTP file download
|
|
||||||
**Purpose**: Retrieve digital files (images, documents, media)
|
|
||||||
|
|
||||||
**Heritage Sector Usage**:
|
|
||||||
|
|
||||||
File APIs enable download of digital assets:
|
|
||||||
- High-resolution images
|
|
||||||
- PDF documents
|
|
||||||
- Audio/video files
|
|
||||||
- Bulk downloads
|
|
||||||
|
|
||||||
**Example**: Nationaal Archief File API for scan downloads
|
|
||||||
slot_usage:
|
|
||||||
protocol_name:
|
|
||||||
equals_string: HTTP
|
|
||||||
typical_http_methods:
|
|
||||||
ifabsent: string(GET)
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
comments:
|
|
||||||
- Generic file download endpoints
|
|
||||||
- May include authentication/rate limiting
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
IIPImageServer:
|
|
||||||
is_a: DataServiceEndpointType
|
|
||||||
class_uri: hc:IIPImageServer
|
|
||||||
description: |
|
|
||||||
Classification for IIP (Internet Imaging Protocol) image server endpoints.
|
|
||||||
|
|
||||||
**Protocol**: IIP
|
|
||||||
**Purpose**: Tile-based image delivery for deep zoom
|
|
||||||
**Software**: IIPImage Server
|
|
||||||
|
|
||||||
**Heritage Sector Usage**:
|
|
||||||
|
|
||||||
IIP servers enable high-resolution image viewing:
|
|
||||||
- Deep zoom for large images (maps, paintings, manuscripts)
|
|
||||||
- Efficient tile-based delivery
|
|
||||||
- Integration with OpenSeadragon, Leaflet viewers
|
|
||||||
|
|
||||||
**Example**: Nationaal Archief image server for archival scans
|
|
||||||
slot_usage:
|
|
||||||
protocol_name:
|
|
||||||
equals_string: IIP
|
|
||||||
typical_http_methods:
|
|
||||||
ifabsent: string(GET)
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
comments:
|
|
||||||
- Tile-based image server - predecessor to IIIF Image API
|
|
||||||
- Still widely used in Dutch heritage sector
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
IIIFImageAPI:
|
IIIFImageAPI:
|
||||||
is_a: DataServiceEndpointType
|
is_a: DataServiceEndpointType
|
||||||
class_uri: hc:IIIFImageAPI
|
class_uri: hc:IIIFImageAPI
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,7 @@ imports:
|
||||||
- ../slots/wikidata_mapping
|
- ../slots/wikidata_mapping
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/PlatformTypeCategoryEnum
|
||||||
classes:
|
classes:
|
||||||
DigitalPlatformType:
|
DigitalPlatformType:
|
||||||
class_uri: skos:Concept
|
class_uri: skos:Concept
|
||||||
|
|
@ -210,23 +211,3 @@ classes:
|
||||||
- https://www.wikidata.org/
|
- https://www.wikidata.org/
|
||||||
- https://www.w3.org/2004/02/skos/
|
- https://www.w3.org/2004/02/skos/
|
||||||
- https://www.w3.org/ns/dcat
|
- https://www.w3.org/ns/dcat
|
||||||
enums:
|
|
||||||
PlatformTypeCategoryEnum:
|
|
||||||
description: High-level categories for digital platform type classification
|
|
||||||
permissible_values:
|
|
||||||
REPOSITORY:
|
|
||||||
description: Platforms for storing and accessing digital content (digital libraries, archives, document repositories)
|
|
||||||
AGGREGATOR:
|
|
||||||
description: Platforms aggregating metadata/content from multiple sources (aggregators, bibliographic databases)
|
|
||||||
DISCOVERY:
|
|
||||||
description: Platforms for searching and browsing heritage content (web portals, online databases)
|
|
||||||
VIRTUAL_HERITAGE:
|
|
||||||
description: Digital representations of physical heritage (virtual museums, virtual tours, online galleries)
|
|
||||||
RESEARCH:
|
|
||||||
description: Platforms supporting scholarly research (disciplinary repositories, preprint servers)
|
|
||||||
INTERACTIVE:
|
|
||||||
description: Platforms enabling user engagement (crowdsourcing, educational, social media)
|
|
||||||
COMMERCE:
|
|
||||||
description: Transaction-oriented platforms (booking systems, webshops)
|
|
||||||
AUXILIARY:
|
|
||||||
description: Secondary/supporting platforms (project sites, microsites, APIs, legacy platforms)
|
|
||||||
|
|
|
||||||
|
|
@ -18,256 +18,286 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/EADVersionEnum
|
||||||
|
- ../enums/CompressionTypeEnum
|
||||||
classes:
|
classes:
|
||||||
EADDownload:
|
EADDownload:
|
||||||
is_a: DataServiceEndpoint
|
is_a: DataServiceEndpoint
|
||||||
class_uri: hc:EADDownload
|
class_uri: hc:EADDownload
|
||||||
description: |
|
description: "EAD (Encoded Archival Description) finding aid download endpoint.\n\n**Purpose:**\n\nModels endpoints that\
|
||||||
EAD (Encoded Archival Description) finding aid download endpoint.
|
\ provide EAD XML downloads for archival finding aids.\nEAD is the international standard for encoding archival descriptive\
|
||||||
|
\ information.\n\n**EAD Versions:**\n\n- **EAD3** (2015): Current standard, aligned with ISAD(G), RiC-CM\n- **EAD 2002**:\
|
||||||
**Purpose:**
|
\ Previous version, still widely used\n- **EAD 1.0** (1998): Original version, legacy\n\n**EAD Structure:**\n\nAn EAD\
|
||||||
|
\ document contains:\n- **<eadheader>** / **<control>**: Finding aid metadata\n- **<archdesc>**: Archival description\n\
|
||||||
Models endpoints that provide EAD XML downloads for archival finding aids.
|
\ - **<did>**: Descriptive identification (title, dates, extent)\n - **<bioghist>**: Biographical/historical note\n\
|
||||||
EAD is the international standard for encoding archival descriptive information.
|
\ - **<scopecontent>**: Scope and content\n - **<arrangement>**: Arrangement\n - **<accessrestrict>**: Access restrictions\n\
|
||||||
|
\ - **<userestrict>**: Use restrictions\n - **<dsc>**: Description of subordinate components (hierarchy)\n\n**Example\
|
||||||
**EAD Versions:**
|
\ - Nationaal Archief EAD Download:**\n\n```yaml\nead_download:\n endpoint_name: \"Nationaal Archief EAD Download\"\
|
||||||
|
\n base_url: \"https://www.nationaalarchief.nl/onderzoeken/archief/\"\n url_pattern: \"{base_url}{archive_code}/download/ead\"\
|
||||||
- **EAD3** (2015): Current standard, aligned with ISAD(G), RiC-CM
|
\n ead_version: EAD_2002\n archive_code_format: \"^[0-9]+\\\\.[0-9]+\\\\.[0-9]+$\"\n includes_dao_links: true\n \
|
||||||
- **EAD 2002**: Previous version, still widely used
|
\ includes_index: true\n compression: none\n example_url: \"https://www.nationaalarchief.nl/onderzoeken/archief/2.04.87/download/ead\"\
|
||||||
- **EAD 1.0** (1998): Original version, legacy
|
\n```\n\n**Use Cases:**\n\n1. **Finding aid harvesting**: Aggregate archival descriptions\n2. **Data migration**: Move\
|
||||||
|
\ descriptions between systems\n3. **Preservation**: Archive finding aids as XML\n4. **Integration**: Import into archival\
|
||||||
**EAD Structure:**
|
\ management systems\n\n**See Also:**\n\n- EAD3: https://www.loc.gov/ead/\n- ISAD(G): https://www.ica.org/en/isadg-general-international-standard-archival-description-second-edition\n"
|
||||||
|
|
||||||
An EAD document contains:
|
|
||||||
- **<eadheader>** / **<control>**: Finding aid metadata
|
|
||||||
- **<archdesc>**: Archival description
|
|
||||||
- **<did>**: Descriptive identification (title, dates, extent)
|
|
||||||
- **<bioghist>**: Biographical/historical note
|
|
||||||
- **<scopecontent>**: Scope and content
|
|
||||||
- **<arrangement>**: Arrangement
|
|
||||||
- **<accessrestrict>**: Access restrictions
|
|
||||||
- **<userestrict>**: Use restrictions
|
|
||||||
- **<dsc>**: Description of subordinate components (hierarchy)
|
|
||||||
|
|
||||||
**Example - Nationaal Archief EAD Download:**
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
ead_download:
|
|
||||||
endpoint_name: "Nationaal Archief EAD Download"
|
|
||||||
base_url: "https://www.nationaalarchief.nl/onderzoeken/archief/"
|
|
||||||
url_pattern: "{base_url}{archive_code}/download/ead"
|
|
||||||
ead_version: EAD_2002
|
|
||||||
archive_code_format: "^[0-9]+\\.[0-9]+\\.[0-9]+$"
|
|
||||||
includes_dao_links: true
|
|
||||||
includes_index: true
|
|
||||||
compression: none
|
|
||||||
example_url: "https://www.nationaalarchief.nl/onderzoeken/archief/2.04.87/download/ead"
|
|
||||||
```
|
|
||||||
|
|
||||||
**Use Cases:**
|
|
||||||
|
|
||||||
1. **Finding aid harvesting**: Aggregate archival descriptions
|
|
||||||
2. **Data migration**: Move descriptions between systems
|
|
||||||
3. **Preservation**: Archive finding aids as XML
|
|
||||||
4. **Integration**: Import into archival management systems
|
|
||||||
|
|
||||||
**See Also:**
|
|
||||||
|
|
||||||
- EAD3: https://www.loc.gov/ead/
|
|
||||||
- ISAD(G): https://www.ica.org/en/isadg-general-international-standard-archival-description-second-edition
|
|
||||||
attributes:
|
attributes:
|
||||||
base_url:
|
base_url:
|
||||||
slot_uri: dcat:endpointURL
|
slot_uri: dcat:endpointURL
|
||||||
description: |
|
description: 'Base URL for EAD downloads.
|
||||||
Base URL for EAD downloads.
|
|
||||||
|
|
||||||
Individual finding aids accessed by appending archive code.
|
Individual finding aids accessed by appending archive code.
|
||||||
|
|
||||||
|
|
||||||
Example: "https://www.nationaalarchief.nl/onderzoeken/archief/"
|
Example: "https://www.nationaalarchief.nl/onderzoeken/archief/"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
required: true
|
required: true
|
||||||
url_pattern:
|
url_pattern:
|
||||||
slot_uri: hydra:template
|
slot_uri: hydra:template
|
||||||
description: |
|
description: 'URL pattern for constructing EAD download requests.
|
||||||
URL pattern for constructing EAD download requests.
|
|
||||||
|
|
||||||
Use {placeholders} for dynamic parts:
|
Use {placeholders} for dynamic parts:
|
||||||
|
|
||||||
- {archive_code}: Archive/fonds identifier
|
- {archive_code}: Archive/fonds identifier
|
||||||
|
|
||||||
- {format}: Output format (ead, xml)
|
- {format}: Output format (ead, xml)
|
||||||
|
|
||||||
|
|
||||||
Example: "{base_url}{archive_code}/download/ead"
|
Example: "{base_url}{archive_code}/download/ead"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
ead_version:
|
ead_version:
|
||||||
slot_uri: dcterms:conformsTo
|
slot_uri: dcterms:conformsTo
|
||||||
description: |
|
description: 'EAD version used in downloaded files.
|
||||||
EAD version used in downloaded files.
|
|
||||||
|
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
- EAD3: Current standard (2015)
|
- EAD3: Current standard (2015)
|
||||||
|
|
||||||
- EAD_2002: Previous version, widely used
|
- EAD_2002: Previous version, widely used
|
||||||
|
|
||||||
- EAD_1_0: Original version (legacy)
|
- EAD_1_0: Original version (legacy)
|
||||||
|
|
||||||
|
'
|
||||||
range: EADVersionEnum
|
range: EADVersionEnum
|
||||||
required: true
|
required: true
|
||||||
ead_schema_url:
|
ead_schema_url:
|
||||||
slot_uri: schema:schemaVersion
|
slot_uri: schema:schemaVersion
|
||||||
description: |
|
description: 'URL to EAD schema (XSD or RNG) used for validation.
|
||||||
URL to EAD schema (XSD or RNG) used for validation.
|
|
||||||
|
|
||||||
Example: "https://www.loc.gov/ead/ead3.xsd"
|
Example: "https://www.loc.gov/ead/ead3.xsd"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
archive_code_format:
|
archive_code_format:
|
||||||
slot_uri: dcterms:identifier
|
slot_uri: dcterms:identifier
|
||||||
description: |
|
description: 'Regex pattern for archive/fonds codes used in URLs.
|
||||||
Regex pattern for archive/fonds codes used in URLs.
|
|
||||||
|
|
||||||
Dutch Nationaal Archief uses: "^[0-9]+\\.[0-9]+\\.[0-9]+$" (e.g., 2.04.87)
|
Dutch Nationaal Archief uses: "^[0-9]+\\.[0-9]+\\.[0-9]+$" (e.g., 2.04.87)
|
||||||
|
|
||||||
|
|
||||||
Example: "^[0-9]+\\.[0-9]+\\.[0-9]+$"
|
Example: "^[0-9]+\\.[0-9]+\\.[0-9]+$"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
archive_code_examples:
|
archive_code_examples:
|
||||||
slot_uri: schema:workExample
|
slot_uri: schema:workExample
|
||||||
description: |
|
description: 'Example archive codes for reference.
|
||||||
Example archive codes for reference.
|
|
||||||
|
|
||||||
Example: ["2.04.87", "2.21.281.02", "4.MST"]
|
Example: ["2.04.87", "2.21.281.02", "4.MST"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
isad_g_compliant:
|
isad_g_compliant:
|
||||||
slot_uri: dcterms:conformsTo
|
slot_uri: dcterms:conformsTo
|
||||||
description: |
|
description: 'Whether EAD output follows ISAD(G) description standard.
|
||||||
Whether EAD output follows ISAD(G) description standard.
|
|
||||||
|
|
||||||
ISAD(G) = General International Standard Archival Description
|
ISAD(G) = General International Standard Archival Description
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
includes_dao_links:
|
includes_dao_links:
|
||||||
slot_uri: schema:associatedMedia
|
slot_uri: schema:associatedMedia
|
||||||
description: |
|
description: 'Whether EAD includes <dao> (digital archival object) links.
|
||||||
Whether EAD includes <dao> (digital archival object) links.
|
|
||||||
|
|
||||||
<dao> elements link to digitized content (images, documents).
|
<dao> elements link to digitized content (images, documents).
|
||||||
|
|
||||||
Essential for integration with digital content delivery.
|
Essential for integration with digital content delivery.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
includes_index:
|
includes_index:
|
||||||
slot_uri: schema:hasPart
|
slot_uri: schema:hasPart
|
||||||
description: |
|
description: 'Whether EAD includes <index> elements.
|
||||||
Whether EAD includes <index> elements.
|
|
||||||
|
|
||||||
Index provides structured access points (names, subjects, places).
|
Index provides structured access points (names, subjects, places).
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
includes_controlaccess:
|
includes_controlaccess:
|
||||||
slot_uri: schema:hasPart
|
slot_uri: schema:hasPart
|
||||||
description: |
|
description: 'Whether EAD includes <controlaccess> elements.
|
||||||
Whether EAD includes <controlaccess> elements.
|
|
||||||
|
|
||||||
Controlled access terms (subjects, names, genres, functions).
|
Controlled access terms (subjects, names, genres, functions).
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
multilevel_description:
|
multilevel_description:
|
||||||
slot_uri: schema:hasPart
|
slot_uri: schema:hasPart
|
||||||
description: |
|
description: 'Whether EAD supports multi-level hierarchical description.
|
||||||
Whether EAD supports multi-level hierarchical description.
|
|
||||||
|
|
||||||
Uses <dsc> (description of subordinate components) with nested
|
Uses <dsc> (description of subordinate components) with nested
|
||||||
|
|
||||||
<c> (component) elements for series, files, items.
|
<c> (component) elements for series, files, items.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
max_hierarchy_depth:
|
max_hierarchy_depth:
|
||||||
slot_uri: schema:maxValue
|
slot_uri: schema:maxValue
|
||||||
description: |
|
description: 'Maximum depth of component hierarchy in downloaded EADs.
|
||||||
Maximum depth of component hierarchy in downloaded EADs.
|
|
||||||
|
|
||||||
Some systems limit depth for performance.
|
Some systems limit depth for performance.
|
||||||
|
|
||||||
|
|
||||||
Example: 12
|
Example: 12
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
encoding:
|
encoding:
|
||||||
slot_uri: schema:encodingType
|
slot_uri: schema:encodingType
|
||||||
description: |
|
description: 'Character encoding of EAD output.
|
||||||
Character encoding of EAD output.
|
|
||||||
|
|
||||||
Should be UTF-8 for modern systems.
|
Should be UTF-8 for modern systems.
|
||||||
|
|
||||||
|
|
||||||
Example: "UTF-8"
|
Example: "UTF-8"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
compression:
|
compression:
|
||||||
slot_uri: schema:encodingFormat
|
slot_uri: schema:encodingFormat
|
||||||
description: |
|
description: 'Compression applied to downloads.
|
||||||
Compression applied to downloads.
|
|
||||||
|
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
- NONE: Plain XML
|
- NONE: Plain XML
|
||||||
|
|
||||||
- GZIP: Gzip compressed
|
- GZIP: Gzip compressed
|
||||||
|
|
||||||
- ZIP: ZIP archive
|
- ZIP: ZIP archive
|
||||||
|
|
||||||
|
'
|
||||||
range: CompressionTypeEnum
|
range: CompressionTypeEnum
|
||||||
includes_dtd_declaration:
|
includes_dtd_declaration:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether XML includes DOCTYPE declaration referencing DTD.
|
||||||
Whether XML includes DOCTYPE declaration referencing DTD.
|
|
||||||
|
|
||||||
Legacy EAD often includes DTD reference.
|
Legacy EAD often includes DTD reference.
|
||||||
|
|
||||||
Modern practice uses XSD validation.
|
Modern practice uses XSD validation.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
namespace_aware:
|
namespace_aware:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether EAD uses XML namespaces.
|
||||||
Whether EAD uses XML namespaces.
|
|
||||||
|
|
||||||
EAD3 uses namespace: urn:isbn:1-931666-22-9 (changed to LOC namespace)
|
EAD3 uses namespace: urn:isbn:1-931666-22-9 (changed to LOC namespace)
|
||||||
|
|
||||||
EAD 2002 may be namespace-aware or not.
|
EAD 2002 may be namespace-aware or not.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
default_namespace:
|
default_namespace:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Default XML namespace for EAD elements.
|
||||||
Default XML namespace for EAD elements.
|
|
||||||
|
|
||||||
EAD3: "http://ead3.archivists.org/schema/"
|
EAD3: "http://ead3.archivists.org/schema/"
|
||||||
|
|
||||||
EAD 2002: "urn:isbn:1-931666-22-9"
|
EAD 2002: "urn:isbn:1-931666-22-9"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
language_of_description:
|
language_of_description:
|
||||||
slot_uri: dcterms:language
|
slot_uri: dcterms:language
|
||||||
description: |
|
description: 'Primary language of finding aid descriptions.
|
||||||
Primary language of finding aid descriptions.
|
|
||||||
|
|
||||||
ISO 639-1 code.
|
ISO 639-1 code.
|
||||||
|
|
||||||
|
|
||||||
Example: "nl" (Dutch)
|
Example: "nl" (Dutch)
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
supports_partial_download:
|
supports_partial_download:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether partial EAD download is supported.
|
||||||
Whether partial EAD download is supported.
|
|
||||||
|
|
||||||
Some systems allow downloading specific components rather
|
Some systems allow downloading specific components rather
|
||||||
|
|
||||||
than entire finding aid.
|
than entire finding aid.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
batch_download_available:
|
batch_download_available:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether batch download of multiple finding aids is available.
|
||||||
Whether batch download of multiple finding aids is available.
|
|
||||||
|
|
||||||
May provide ZIP archive or OAI-PMH harvesting.
|
May provide ZIP archive or OAI-PMH harvesting.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
transform_options:
|
transform_options:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Output transformation options available.
|
||||||
Output transformation options available.
|
|
||||||
|
|
||||||
Some systems offer XSLT-transformed output (HTML, PDF).
|
Some systems offer XSLT-transformed output (HTML, PDF).
|
||||||
|
|
||||||
|
|
||||||
Example: ["EAD", "HTML", "PDF"]
|
Example: ["EAD", "HTML", "PDF"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
example_url:
|
example_url:
|
||||||
slot_uri: schema:workExample
|
slot_uri: schema:workExample
|
||||||
description: |
|
description: 'Example URL for EAD download.
|
||||||
Example URL for EAD download.
|
|
||||||
|
|
||||||
Example: "https://www.nationaalarchief.nl/onderzoeken/archief/2.04.87/download/ead"
|
Example: "https://www.nationaalarchief.nl/onderzoeken/archief/2.04.87/download/ead"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
slot_usage:
|
slot_usage:
|
||||||
protocol:
|
protocol:
|
||||||
description: EAD downloads use HTTP GET (REST-like). Uses DataServiceProtocolEnum.REST.
|
description: EAD downloads use HTTP GET (REST-like). Uses DataServiceProtocolEnum.REST.
|
||||||
response_format:
|
response_format:
|
||||||
description: |
|
description: 'EAD is always XML.
|
||||||
EAD is always XML.
|
|
||||||
|
'
|
||||||
ifabsent: string(application/xml)
|
ifabsent: string(application/xml)
|
||||||
specificity_annotation:
|
specificity_annotation:
|
||||||
range: SpecificityAnnotation
|
range: SpecificityAnnotation
|
||||||
|
|
@ -286,68 +316,3 @@ classes:
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
- template_specificity
|
- template_specificity
|
||||||
enums:
|
|
||||||
EADVersionEnum:
|
|
||||||
description: |
|
|
||||||
Versions of the EAD (Encoded Archival Description) standard.
|
|
||||||
permissible_values:
|
|
||||||
EAD3:
|
|
||||||
description: |
|
|
||||||
EAD3 (2015) - Current standard.
|
|
||||||
|
|
||||||
Major revision aligned with:
|
|
||||||
- ISAD(G) and ISAAR(CPF)
|
|
||||||
- RiC-CM (Records in Contexts)
|
|
||||||
- Schema-first design (XSD, RNG)
|
|
||||||
|
|
||||||
Namespace: http://ead3.archivists.org/schema/
|
|
||||||
EAD_2002:
|
|
||||||
description: |
|
|
||||||
EAD 2002 - Previous version.
|
|
||||||
|
|
||||||
Most widely deployed version.
|
|
||||||
DTD and XSD schemas available.
|
|
||||||
|
|
||||||
Namespace: urn:isbn:1-931666-22-9
|
|
||||||
EAD_1_0:
|
|
||||||
description: |
|
|
||||||
EAD 1.0 (1998) - Original version.
|
|
||||||
|
|
||||||
Legacy, rarely used for new content.
|
|
||||||
DTD-based validation.
|
|
||||||
UNKNOWN:
|
|
||||||
description: |
|
|
||||||
EAD version not specified or unknown.
|
|
||||||
|
|
||||||
May require inspection of downloaded file.
|
|
||||||
CompressionTypeEnum:
|
|
||||||
description: |
|
|
||||||
Compression types for file downloads.
|
|
||||||
permissible_values:
|
|
||||||
NONE:
|
|
||||||
description: |
|
|
||||||
No compression - plain file.
|
|
||||||
|
|
||||||
MIME type unchanged from content type.
|
|
||||||
GZIP:
|
|
||||||
description: |
|
|
||||||
Gzip compression.
|
|
||||||
|
|
||||||
Single compressed file.
|
|
||||||
Content-Encoding: gzip
|
|
||||||
ZIP:
|
|
||||||
description: |
|
|
||||||
ZIP archive.
|
|
||||||
|
|
||||||
May contain multiple files.
|
|
||||||
application/zip
|
|
||||||
BZIP2:
|
|
||||||
description: |
|
|
||||||
Bzip2 compression.
|
|
||||||
|
|
||||||
Higher compression ratio than gzip.
|
|
||||||
XZ:
|
|
||||||
description: |
|
|
||||||
XZ/LZMA compression.
|
|
||||||
|
|
||||||
Very high compression ratio.
|
|
||||||
|
|
|
||||||
|
|
@ -402,907 +402,3 @@ classes:
|
||||||
- Complements but does not replace GovernanceStructure or OrganizationalStructure
|
- Complements but does not replace GovernanceStructure or OrganizationalStructure
|
||||||
- 'Six types reflect different relationship models: legal (umbrella), service (network), collaborative (consortium), ownership
|
- 'Six types reflect different relationship models: legal (umbrella), service (network), collaborative (consortium), ownership
|
||||||
(cooperative), ideological (social movement), financial (funding)'
|
(cooperative), ideological (social movement), financial (funding)'
|
||||||
UmbrellaOrganisation:
|
|
||||||
is_a: EncompassingBody
|
|
||||||
class_uri: org:FormalOrganization
|
|
||||||
description: "A legal parent organization with formal governance authority over heritage custodians,\ndefined in articles\
|
|
||||||
\ of association, foundation statutes, or legislation. Represents\nPERMANENT hierarchical legal structures.\n\n**Characteristics**:\n\
|
|
||||||
- **Legal basis**: Defined in founding documents, statutes, or laws\n- **Authority**: Strong governance authority (budgets,\
|
|
||||||
\ appointments, policy)\n- **Permanence**: Permanent structure (changes require legal amendments)\n- **Relationship**:\
|
|
||||||
\ Legal subordination (parent-child hierarchy)\n\n**Examples**:\n- **Ministry governing national cultural institutions**:\n\
|
|
||||||
\ - Ministry of OCW → National Archives, Rijksmuseum, National Library\n - Defined in Dutch government legislation\n\
|
|
||||||
- **Foundation board governing museum**:\n - Museum Board of Trustees → Museum operations\n - Defined in foundation\
|
|
||||||
\ statutes\n- **University governing university libraries**:\n - University administration → University library system\n\
|
|
||||||
\ - Defined in university charter\n- **Religious order governing monastery archives**:\n - Franciscan Order → Franciscan\
|
|
||||||
\ Archive\n - Defined in religious constitution\n\n**Ontological Alignment**:\n- W3C ORG: `org:FormalOrganization`\
|
|
||||||
\ - \"An Organization which is recognized in \n the world at large, in particular in legal jurisdictions, with associated\
|
|
||||||
\ rights \n and responsibilities.\"\n- TOOI: `tooi:Ministerie`, `tooi:RegionaalOpenbaarLichaam` (Dutch government bodies)\n\
|
|
||||||
- CPOV: `cpov:PublicOrganisation` (for public sector umbrella bodies)\n- Schema.org: `schema:GovernmentOrganization`,\
|
|
||||||
\ `schema:EducationalOrganization`\n\n**Temporal Dynamics**:\nUmbrella relationships typically persist over long periods.\
|
|
||||||
\ Changes occur through:\n- Government reorganizations (ministries merge/split)\n- Legal entity changes (foundation\
|
|
||||||
\ restructuring)\n- Policy reforms (agencies transferred between ministries)\n"
|
|
||||||
slot_usage:
|
|
||||||
organization_type:
|
|
||||||
range: EncompassingBodyTypeEnum
|
|
||||||
required: true
|
|
||||||
ifabsent: string(UMBRELLA)
|
|
||||||
description: Must be UMBRELLA for UmbrellaOrganisation
|
|
||||||
governance_authority:
|
|
||||||
required: true
|
|
||||||
description: 'Detailed description of legal governance authority.
|
|
||||||
|
|
||||||
Must document legal basis (statute, law, articles of association).
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Ministry OCW exercises governance authority over National Archives under Dutch Heritage Act 2016. Authority
|
|
||||||
includes budget approval, director appointment, and policy oversight.
|
|
||||||
organization_legal_form:
|
|
||||||
required: true
|
|
||||||
description: Legal form is required for umbrella organizations
|
|
||||||
examples:
|
|
||||||
- value: Government ministry
|
|
||||||
- value: Foundation board
|
|
||||||
- value: University governing body
|
|
||||||
legal_jurisdiction:
|
|
||||||
required: true
|
|
||||||
range: Jurisdiction
|
|
||||||
description: 'Legal jurisdiction where this umbrella organization has authority.
|
|
||||||
|
|
||||||
|
|
||||||
Required for UmbrellaOrganisation because legal parent-child relationships
|
|
||||||
|
|
||||||
are defined by law within specific jurisdictions.
|
|
||||||
|
|
||||||
|
|
||||||
**Examples:**
|
|
||||||
|
|
||||||
- Ministry of OCW: jurisdiction_type=NATIONAL, country=NL
|
|
||||||
|
|
||||||
- Bavarian State Ministry: jurisdiction_type=SUBNATIONAL, subregion=DE-BY
|
|
||||||
|
|
||||||
- University of Amsterdam: jurisdiction_type=NATIONAL, country=NL
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value:
|
|
||||||
jurisdiction_id: NL
|
|
||||||
jurisdiction_type: NATIONAL
|
|
||||||
country:
|
|
||||||
alpha_2: NL
|
|
||||||
alpha_3: NLD
|
|
||||||
description: Netherlands national jurisdiction
|
|
||||||
- value:
|
|
||||||
jurisdiction_id: DE-BY
|
|
||||||
jurisdiction_type: SUBNATIONAL
|
|
||||||
country:
|
|
||||||
alpha_2: DE
|
|
||||||
alpha_3: DEU
|
|
||||||
subregion:
|
|
||||||
iso_3166_2_code: DE-BY
|
|
||||||
description: Bavaria subnational jurisdiction
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
exact_mappings:
|
|
||||||
- org:FormalOrganization
|
|
||||||
close_mappings:
|
|
||||||
- tooi:Ministerie
|
|
||||||
- tooi:RegionaalOpenbaarLichaam
|
|
||||||
- cpov:PublicOrganisation
|
|
||||||
- schema:GovernmentOrganization
|
|
||||||
comments:
|
|
||||||
- UmbrellaOrganisation represents LEGAL parent-child relationships
|
|
||||||
- Changes to umbrella relationships require legal/statutory amendments
|
|
||||||
- Permanent structure - not temporary agreements
|
|
||||||
examples:
|
|
||||||
- value:
|
|
||||||
id: https://nde.nl/ontology/hc/encompassing-body/umbrella/nl-ministry-ocw
|
|
||||||
organization_name: Ministerie van Onderwijs, Cultuur en Wetenschap
|
|
||||||
organization_type: UMBRELLA
|
|
||||||
organization_legal_form: Government ministry
|
|
||||||
founding_date: '1965-07-01'
|
|
||||||
governance_authority: Exercises governance over Dutch national cultural heritage institutions under Heritage Act 2016.
|
|
||||||
Authority includes budget oversight, director appointments, and strategic policy direction.
|
|
||||||
legal_jurisdiction:
|
|
||||||
jurisdiction_id: NL
|
|
||||||
jurisdiction_type: NATIONAL
|
|
||||||
country:
|
|
||||||
alpha_2: NL
|
|
||||||
alpha_3: NLD
|
|
||||||
description: Netherlands national jurisdiction
|
|
||||||
has_or_had_member_custodian:
|
|
||||||
- hc_id: https://nde.nl/ontology/hc/nl-na
|
|
||||||
preferred_label: Nationaal Archief
|
|
||||||
- hc_id: https://nde.nl/ontology/hc/nl-nh-ams-m-rm
|
|
||||||
preferred_label: Rijksmuseum
|
|
||||||
website: https://www.rijksoverheid.nl/ministeries/ocw
|
|
||||||
description: Dutch Ministry OCW as umbrella organization for national heritage
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
NetworkOrganisation:
|
|
||||||
is_a: EncompassingBody
|
|
||||||
class_uri: schema:Organization
|
|
||||||
description: "A service provider network that coordinates and delivers services to member heritage\ncustodians through\
|
|
||||||
\ TEMPORARY agreements or treaties. Members choose to participate\nto access services; participation is NOT legally\
|
|
||||||
\ imposed.\n\n**Characteristics**:\n- **Service-oriented**: Provides infrastructure, platforms, training, coordination\n\
|
|
||||||
- **Voluntary membership**: Custodians choose to join for service benefits\n- **Temporary agreements**: Based on contracts/treaties,\
|
|
||||||
\ not permanent legal structure\n- **Limited authority**: Coordinates services but no direct governance over members\n\
|
|
||||||
\n**Examples**:\n- **Digital Heritage Network (Netherlands)**:\n - Provides digital preservation infrastructure to\
|
|
||||||
\ museums, archives, libraries\n - Members pay fees for services\n - No governance authority over member institutions\n\
|
|
||||||
- **DPLA (Digital Public Library of America)**:\n - Aggregates digital collections from libraries/archives\n - Members\
|
|
||||||
\ contribute metadata for aggregation\n - No control over member collection policies\n- **Europeana**:\n - European\
|
|
||||||
\ digital heritage aggregation network\n - Museums/archives contribute digitized collections\n - Coordination, not\
|
|
||||||
\ governance\n- **Regional archive networks**:\n - Shared conservation labs, digitization services\n - Temporary service\
|
|
||||||
\ agreements between institutions\n- Schema.org: `schema:Organization` (general organization type)\n- W3C ORG: `org:Organization`\
|
|
||||||
\ (parent class)\n- TOOI: `tooi:Samenwerkingsorganisatie` (Dutch collaborative organizations)\n\n**Temporal Dynamics**:\n\
|
|
||||||
Network memberships fluctuate - custodians join/leave based on service needs.\nNetworks themselves may dissolve if service\
|
|
||||||
\ model becomes obsolete or funding ends.\nTrack membership changes with temporal validity.\n"
|
|
||||||
slot_usage:
|
|
||||||
organization_type:
|
|
||||||
range: EncompassingBodyTypeEnum
|
|
||||||
required: true
|
|
||||||
ifabsent: string(NETWORK)
|
|
||||||
description: Must be NETWORK for NetworkOrganisation
|
|
||||||
service_offering:
|
|
||||||
required: true
|
|
||||||
description: 'Services provided to member custodians.
|
|
||||||
|
|
||||||
Required field for NetworkOrganisation (defines purpose).
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Digital preservation storage infrastructure
|
|
||||||
- value: Shared cataloging platform (union catalog)
|
|
||||||
- value: Conservation services and expertise
|
|
||||||
- value: Professional development workshops
|
|
||||||
membership_criteria:
|
|
||||||
recommended: true
|
|
||||||
description: 'Eligibility criteria for joining network.
|
|
||||||
|
|
||||||
Typically based on institution type, geographic location, or service needs.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: 'Dutch heritage institutions with digital collections seeking long-term preservation services. Membership
|
|
||||||
fee: €5,000/year.'
|
|
||||||
governance_authority:
|
|
||||||
description: 'Limited to SERVICE coordination authority.
|
|
||||||
|
|
||||||
Networks do NOT exercise governance over member institutions.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Network defines technical standards for digital preservation but members retain full autonomy over collection
|
|
||||||
policies and operations.
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
exact_mappings:
|
|
||||||
- schema:Organization
|
|
||||||
close_mappings:
|
|
||||||
- tooi:Samenwerkingsorganisatie
|
|
||||||
- org:Organization
|
|
||||||
comments:
|
|
||||||
- NetworkOrganisation provides SERVICES, not governance
|
|
||||||
- Membership is voluntary and service-driven
|
|
||||||
- Temporary agreements - not permanent legal subordination
|
|
||||||
examples:
|
|
||||||
- value:
|
|
||||||
id: https://nde.nl/ontology/hc/encompassing-body/network/digital-heritage-nl
|
|
||||||
organization_name: Digital Heritage Network Netherlands
|
|
||||||
organization_type: NETWORK
|
|
||||||
founding_date: '2015-03-01'
|
|
||||||
description: 'Collaborative network providing digital preservation infrastructure
|
|
||||||
|
|
||||||
and services to Dutch heritage institutions. Members access shared
|
|
||||||
|
|
||||||
storage, metadata standards, and technical expertise.
|
|
||||||
|
|
||||||
'
|
|
||||||
has_or_had_area_served:
|
|
||||||
- NL
|
|
||||||
service_offering:
|
|
||||||
- Long-term digital preservation storage (100TB+ capacity)
|
|
||||||
- Metadata aggregation and normalization services
|
|
||||||
- Technical training workshops (quarterly)
|
|
||||||
- Preservation format migration services
|
|
||||||
membership_criteria: Dutch museums, archives, and libraries with digital collections. Annual membership fee based
|
|
||||||
on storage usage.
|
|
||||||
has_or_had_member_custodian:
|
|
||||||
- hc_id: https://nde.nl/ontology/hc/nl-nh-ams-m-am
|
|
||||||
preferred_label: Amsterdam Museum
|
|
||||||
- hc_id: https://nde.nl/ontology/hc/nl-ut-utr-l-ub
|
|
||||||
preferred_label: Utrecht University Library
|
|
||||||
website: https://digitalheritage.nl
|
|
||||||
description: Service network for digital preservation
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
Consortium:
|
|
||||||
is_a: EncompassingBody
|
|
||||||
class_uri: schema:Consortium
|
|
||||||
description: "A collaborative body where member heritage custodians provide MUTUAL assistance\nto each other through TEMPORARY\
|
|
||||||
\ agreements. Unlike networks (centralized service\nprovider), consortia are PEER-TO-PEER collaboration models.\n\n\
|
|
||||||
**Characteristics**:\n- **Mutual assistance**: Members help each other (not centralized services)\n- **Peer-to-peer**:\
|
|
||||||
\ Equal participation, shared responsibility\n- **Temporary agreements**: Based on memoranda of understanding, not permanent\
|
|
||||||
\ structure\n- **Coordination only**: Facilitates collaboration, no authority over members\n\n**Examples**:\n- **Library\
|
|
||||||
\ consortia for shared cataloging**:\n - Members contribute catalog records to shared database\n - Peer-to-peer cataloging\
|
|
||||||
\ standards and quality control\n - Example: OCLC WorldCat participating libraries\n- **Bulk licensing consortia**:\n\
|
|
||||||
\ - Libraries collectively negotiate database subscriptions\n - Shared purchasing power, individual licenses\n- **Interlibrary\
|
|
||||||
\ loan consortia**:\n - Members lend materials to each other\n - Reciprocal borrowing agreements\n- **Conservation\
|
|
||||||
\ consortia**:\n - Museums share conservation expertise and equipment\n - Rotating access to specialized conservation\
|
|
||||||
\ labs\n- **Digitization consortia**:\n - Archives collaborate on large-scale digitization projects\n - Shared equipment,\
|
|
||||||
\ coordinated workflows\n\n**Distinction from NetworkOrganisation**:\n- **Consortium**: Peer-to-peer mutual assistance\
|
|
||||||
\ (members help each other)\n- **Network**: Centralized service provider (network provides services to members)\n\n\
|
|
||||||
**Ontological Alignment**:\n- Schema.org: `schema:Consortium` - \"A Consortium is a membership Organization \n whose\
|
|
||||||
\ members are typically Organizations.\"\n- W3C ORG: `org:Organization` (parent class)\n- TOOI: `tooi:Samenwerkingsorganisatie`\
|
|
||||||
\ (Dutch collaborative organizations)\n\n**Temporal Dynamics**:\nConsortia form for specific collaborative goals and\
|
|
||||||
\ may dissolve when goals are\nachieved or collaboration model becomes obsolete. Short to medium-term duration\n(3-10\
|
|
||||||
\ years typical).\n"
|
|
||||||
slot_usage:
|
|
||||||
organization_type:
|
|
||||||
range: EncompassingBodyTypeEnum
|
|
||||||
required: true
|
|
||||||
ifabsent: string(CONSORTIUM)
|
|
||||||
description: Must be CONSORTIUM for Consortium class
|
|
||||||
service_offering:
|
|
||||||
description: 'Services members provide TO EACH OTHER (not centralized services).
|
|
||||||
|
|
||||||
Focus on reciprocal/mutual assistance patterns.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Shared cataloging contributions to union catalog
|
|
||||||
- value: Reciprocal interlibrary loan services
|
|
||||||
- value: Peer review of conservation treatments
|
|
||||||
- value: Collaborative digitization equipment sharing
|
|
||||||
membership_criteria:
|
|
||||||
recommended: true
|
|
||||||
description: 'Criteria for joining consortium.
|
|
||||||
|
|
||||||
Typically based on ability to contribute to mutual assistance model.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Academic libraries with interlibrary loan capabilities and commitment to reciprocal lending. No membership
|
|
||||||
fee.
|
|
||||||
governance_authority:
|
|
||||||
description: 'Minimal authority - coordination and facilitation only.
|
|
||||||
|
|
||||||
Consortia do NOT govern members; they facilitate peer collaboration.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Consortium coordinates shared cataloging standards and provides technical infrastructure, but members retain
|
|
||||||
full autonomy.
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
exact_mappings:
|
|
||||||
- schema:Consortium
|
|
||||||
close_mappings:
|
|
||||||
- tooi:Samenwerkingsorganisatie
|
|
||||||
- org:Organization
|
|
||||||
comments:
|
|
||||||
- Consortium is PEER-TO-PEER mutual assistance model
|
|
||||||
- Distinguished from Network (centralized service provider)
|
|
||||||
- Temporary collaborative agreements, not permanent legal structure
|
|
||||||
examples:
|
|
||||||
- value:
|
|
||||||
id: https://nde.nl/ontology/hc/encompassing-body/consortium/dutch-univ-lib-consortium
|
|
||||||
organization_name: Dutch University Libraries Consortium
|
|
||||||
organization_type: CONSORTIUM
|
|
||||||
founding_date: '2010-09-01'
|
|
||||||
description: 'Collaborative consortium of Dutch university libraries for shared
|
|
||||||
|
|
||||||
cataloging, bulk licensing, and interlibrary loan. Members contribute
|
|
||||||
|
|
||||||
equally and benefit from collective resources.
|
|
||||||
|
|
||||||
'
|
|
||||||
service_offering:
|
|
||||||
- Shared union catalog contributions
|
|
||||||
- Collective database subscription negotiations
|
|
||||||
- Reciprocal interlibrary loan services
|
|
||||||
- Collaborative metadata enrichment projects
|
|
||||||
membership_criteria: Dutch university libraries accredited by VSNU (Association of Universities in the Netherlands).
|
|
||||||
Members must contribute cataloging records and participate in interlibrary loan network.
|
|
||||||
has_or_had_member_custodian:
|
|
||||||
- hc_id: https://nde.nl/ontology/hc/nl-zh-lei-l-ub
|
|
||||||
preferred_label: Leiden University Library
|
|
||||||
- hc_id: https://nde.nl/ontology/hc/nl-nh-ams-l-uba
|
|
||||||
preferred_label: Amsterdam University Library
|
|
||||||
website: https://universiteitsbibliotheken.nl
|
|
||||||
description: University library consortium for mutual assistance
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
Cooperative:
|
|
||||||
is_a: EncompassingBody
|
|
||||||
class_uri: org:FormalOrganization
|
|
||||||
description: "A member-OWNED organization where members both contribute to and benefit from\nshared services. Distinguished\
|
|
||||||
\ from Consortium by PERMANENT structure and\nOWNERSHIP model - members are legal owners of the cooperative.\n\n**Characteristics**:\n\
|
|
||||||
- **Member ownership**: Members hold shares/ownership stake\n- **Member governance**: One member, one vote principle\
|
|
||||||
\ (democratic)\n- **Permanent legal structure**: Formal organization, not temporary agreements\n- **Shared services\
|
|
||||||
\ AND shared ownership**: Dual benefit model\n- **Typically operates as non-profit**: Mutual benefit corporation\n-\
|
|
||||||
\ **May have closed/proprietary data model**: Data as organizational asset\n\n**CRITICAL: Data Openness Pattern**:\n\
|
|
||||||
Cooperatives often have MIXED or CLOSED data policies because:\n- Data contributed by members is organizational asset\n\
|
|
||||||
- Business model may depend on subscription/membership revenue\n- Balancing member value vs. public open access\n- Historical\
|
|
||||||
\ model predates open data movement\n\n**Examples**:\n\n- **OCLC** (Online Computer Library Center)\n - Member-owned\
|
|
||||||
\ library cooperative since 1967\n - 30,000+ member libraries worldwide\n - WorldCat: Proprietary (subscription-based)\n\
|
|
||||||
\ - VIAF: Open (ODC-BY) - strategic choice for linked data\n - Members both contribute data AND receive services\n\
|
|
||||||
\ \n- **RERO** (Library Network of Western Switzerland)\n - Cooperative of Swiss academic libraries\n - Shared cataloging\
|
|
||||||
\ and discovery services\n \n- **HathiTrust**\n - Partnership of academic and research libraries\n - Shared digital\
|
|
||||||
\ preservation infrastructure\n\n**Distinction from Consortium**:\n- **Cooperative**: Members OWN the organization (permanent\
|
|
||||||
\ legal structure)\n- **Consortium**: Members PARTICIPATE in agreements (temporary, no ownership)\n\n**Distinction from\
|
|
||||||
\ NetworkOrganisation**:\n- **Cooperative**: Members are owners AND contributors AND consumers\n- **Network**: Members\
|
|
||||||
\ are consumers of centralized services only\n\n**Ontological Alignment**:\n- W3C ORG: `org:FormalOrganization` (formal\
|
|
||||||
\ legal entity)\n- Schema.org: `schema:Organization` with `additionalType: Cooperative`\n- Can align with ICA (International\
|
|
||||||
\ Cooperative Alliance) principles\n"
|
|
||||||
slot_usage:
|
|
||||||
organization_type:
|
|
||||||
range: EncompassingBodyTypeEnum
|
|
||||||
required: true
|
|
||||||
ifabsent: string(COOPERATIVE)
|
|
||||||
description: Must be COOPERATIVE for Cooperative class
|
|
||||||
organization_legal_form:
|
|
||||||
required: true
|
|
||||||
description: 'Legal form of the cooperative.
|
|
||||||
|
|
||||||
Examples: "Cooperative corporation", "Mutual benefit corporation",
|
|
||||||
|
|
||||||
"Library cooperative", "Non-profit cooperative"
|
|
||||||
|
|
||||||
'
|
|
||||||
governance_authority:
|
|
||||||
required: true
|
|
||||||
description: 'Member governance model.
|
|
||||||
|
|
||||||
Must document: voting rights, board composition, annual meeting structure.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: OCLC is governed by a Global Council of library representatives elected by member libraries. Each member
|
|
||||||
has voting rights proportional to their usage. Annual Members Council meeting.
|
|
||||||
membership_criteria:
|
|
||||||
required: true
|
|
||||||
description: 'How to become a member/owner of the cooperative.
|
|
||||||
|
|
||||||
Must include: eligibility, membership fees, ownership stake.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: OCLC membership is open to libraries and cultural heritage organizations. Members pay annual fees based on
|
|
||||||
usage. Members receive governance rights and access to services.
|
|
||||||
data_license_policy:
|
|
||||||
recommended: true
|
|
||||||
description: 'Data openness policy for the cooperative.
|
|
||||||
|
|
||||||
|
|
||||||
Cooperatives typically have MIXED_POLICY:
|
|
||||||
|
|
||||||
- Core services may be proprietary (subscription revenue)
|
|
||||||
|
|
||||||
- Some services may be open (strategic value for linked data)
|
|
||||||
|
|
||||||
'
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
exact_mappings:
|
|
||||||
- org:FormalOrganization
|
|
||||||
close_mappings:
|
|
||||||
- schema:Organization
|
|
||||||
comments:
|
|
||||||
- Cooperative = member-owned permanent organization
|
|
||||||
- Distinguished from Consortium (ownership, permanence)
|
|
||||||
- Distinguished from Network (members contribute, not just consume)
|
|
||||||
- Typically MIXED or CLOSED data policy (data as organizational asset)
|
|
||||||
- 'Examples: OCLC, RERO, HathiTrust'
|
|
||||||
examples:
|
|
||||||
- value:
|
|
||||||
id: https://nde.nl/ontology/hc/encompassing-body/cooperative/oclc
|
|
||||||
organization_name: OCLC
|
|
||||||
organization_type: COOPERATIVE
|
|
||||||
organization_legal_form: Non-profit library cooperative
|
|
||||||
founding_date: '1967-07-05'
|
|
||||||
description: 'OCLC is a global library cooperative providing shared technology
|
|
||||||
|
|
||||||
services, research, and programs that help libraries meet the changing
|
|
||||||
|
|
||||||
needs of their users, institutions, and communities. Member libraries
|
|
||||||
|
|
||||||
cooperatively maintain WorldCat, the world''s largest shared catalog.
|
|
||||||
|
|
||||||
'
|
|
||||||
service_offering:
|
|
||||||
- WorldCat (shared cataloging database)
|
|
||||||
- VIAF (Virtual International Authority File)
|
|
||||||
- WorldShare Management Services
|
|
||||||
- Interlibrary loan services (WorldShare ILL)
|
|
||||||
- Digital preservation services
|
|
||||||
- CONTENTdm (digital collection management)
|
|
||||||
membership_criteria: Open to libraries and cultural heritage organizations worldwide. Membership includes governance
|
|
||||||
rights (voting in Global Council), access to member pricing for services, and participation in cooperative programs.
|
|
||||||
governance_authority: Governed by Global Council of elected library representatives. Board of Trustees provides strategic
|
|
||||||
oversight. Regional councils for Americas, EMEA, and Asia Pacific. Annual Members Council meeting.
|
|
||||||
data_license_policy:
|
|
||||||
policy_name: OCLC Data Usage Policy
|
|
||||||
openness_stance: MIXED_POLICY
|
|
||||||
default_license: proprietary-worldcat
|
|
||||||
service_specific_licenses:
|
|
||||||
- service_name: VIAF
|
|
||||||
license: odc-by-1.0
|
|
||||||
- service_name: WorldCat Identities
|
|
||||||
license: odc-by-1.0
|
|
||||||
external_identifier:
|
|
||||||
- http://www.wikidata.org/entity/Q190593
|
|
||||||
- https://viaf.org/viaf/125315828
|
|
||||||
website: https://www.oclc.org/
|
|
||||||
description: OCLC as member-owned library cooperative with mixed data policy
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
SocialMovement:
|
|
||||||
is_a: EncompassingBody
|
|
||||||
class_uri: schema:Organization
|
|
||||||
description: "A value-driven movement organized around shared ideological principles,\nwith open participation and commitment\
|
|
||||||
\ to public benefit. Distinguished from\nother types by ideological motivation and OPEN data policies as core value.\n\
|
|
||||||
\n**Characteristics**:\n- **Value-driven**: Ideological commitment to principles (free knowledge, openness)\n- **Open\
|
|
||||||
\ participation**: Anyone can join/contribute based on shared values\n- **Decentralized governance**: Community-driven\
|
|
||||||
\ decision making\n- **Non-proprietary by design**: Open data is core value, not business decision\n- **Global grassroots\
|
|
||||||
\ participation**: Often volunteer-driven\n- **May include formal foundation**: Legal entity supports the movement\n\
|
|
||||||
\n**CRITICAL: Data Openness Pattern**:\nSocial movements typically have FULLY OPEN data policies because:\n- Openness\
|
|
||||||
\ is ideological value, not business strategy\n- Mission centers on public access and benefit\n- Data openness is prerequisite\
|
|
||||||
\ for participation\n- No proprietary business model to protect\n- \"Information wants to be free\" philosophy\n\n**Examples**:\n\
|
|
||||||
\n- **Wikimedia Foundation / Movement**\n - Mission: \"Free knowledge for everyone\"\n - Wikidata: CC0 (public domain)\n\
|
|
||||||
\ - Wikipedia: CC-BY-SA (copyleft)\n - Global volunteer contributor base (300,000+ active editors)\n - Foundation\
|
|
||||||
\ supports movement, doesn't own content\n \n- **Creative Commons**\n - Mission: \"Enable sharing and reuse\"\n -\
|
|
||||||
\ License steward and open advocate\n - All materials openly licensed\n \n- **Open Knowledge Foundation**\n - Mission:\
|
|
||||||
\ \"Promote open data worldwide\"\n - Advocacy for open access and transparency\n - CKAN open source software\n \n\
|
|
||||||
- **Mozilla Foundation / Movement**\n - Mission: \"Open, accessible internet for all\"\n - Firefox (open source browser)\n\
|
|
||||||
\ - Open web standards advocacy\n \n- **Internet Archive**\n - Mission: \"Universal access to all knowledge\"\n \
|
|
||||||
\ - Wayback Machine, Open Library\n - Preservation and open access\n\n**Distinction from Cooperative**:\n- **SocialMovement**:\
|
|
||||||
\ Open participation, ideological commitment, open data\n- **Cooperative**: Membership-based ownership, may have closed\
|
|
||||||
\ data\n\n**Distinction from NetworkOrganisation**:\n- **SocialMovement**: Value-driven, open participation\n- **Network**:\
|
|
||||||
\ Service-driven, membership-based access\n\n**Ontological Alignment**:\n- Schema.org: `schema:Organization` (with movement\
|
|
||||||
\ characteristics)\n- Sociological concept of \"social movement\"\n- May have formal foundation (e.g., Wikimedia Foundation)\
|
|
||||||
\ but movement is broader\n"
|
|
||||||
slot_usage:
|
|
||||||
organization_type:
|
|
||||||
range: EncompassingBodyTypeEnum
|
|
||||||
required: true
|
|
||||||
ifabsent: string(SOCIAL_MOVEMENT)
|
|
||||||
description: Must be SOCIAL_MOVEMENT for SocialMovement class
|
|
||||||
description:
|
|
||||||
required: true
|
|
||||||
description: 'Must describe the ideological values and mission of the movement.
|
|
||||||
|
|
||||||
Should explain the open participation model and commitment to openness.
|
|
||||||
|
|
||||||
'
|
|
||||||
service_offering:
|
|
||||||
description: 'Services/platforms provided by the movement.
|
|
||||||
|
|
||||||
Typically all openly accessible (no subscription barriers).
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Wikidata (open knowledge base, CC0)
|
|
||||||
- value: Wikipedia (free encyclopedia, CC-BY-SA)
|
|
||||||
- value: Wikimedia Commons (free media repository)
|
|
||||||
membership_criteria:
|
|
||||||
description: 'How to participate in the movement.
|
|
||||||
|
|
||||||
Typically open to anyone who shares the values - no formal membership.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Open participation - anyone can edit Wikipedia, contribute to Wikidata, or upload to Wikimedia Commons. No
|
|
||||||
membership fee or application process. Contribution governed by community policies.
|
|
||||||
governance_authority:
|
|
||||||
description: 'Community-driven governance model.
|
|
||||||
|
|
||||||
Describes how decisions are made within the movement.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Wikimedia projects are governed by community consensus. The Wikimedia Foundation provides infrastructure
|
|
||||||
and legal support but does not control content. Movement governance through affiliates, chapters, and community-elected
|
|
||||||
bodies.
|
|
||||||
data_license_policy:
|
|
||||||
required: true
|
|
||||||
description: 'Data openness policy for the movement.
|
|
||||||
|
|
||||||
|
|
||||||
Social movements typically have STRONG_OPEN_ADVOCATE stance:
|
|
||||||
|
|
||||||
- All content openly licensed
|
|
||||||
|
|
||||||
- Openness is ideological requirement, not business option
|
|
||||||
|
|
||||||
- Active advocacy for open data in broader community
|
|
||||||
|
|
||||||
'
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
exact_mappings:
|
|
||||||
- schema:Organization
|
|
||||||
comments:
|
|
||||||
- SocialMovement = value-driven, open participation, open data
|
|
||||||
- Distinguished from Cooperative (ideology vs. ownership)
|
|
||||||
- Distinguished from Network (values vs. services)
|
|
||||||
- Typically FULLY OPEN data policy (openness as core value)
|
|
||||||
- 'Examples: Wikimedia, Creative Commons, Open Knowledge Foundation, Mozilla'
|
|
||||||
examples:
|
|
||||||
- value:
|
|
||||||
id: https://nde.nl/ontology/hc/encompassing-body/social-movement/wikimedia
|
|
||||||
organization_name: Wikimedia Foundation / Movement
|
|
||||||
organization_type: SOCIAL_MOVEMENT
|
|
||||||
organization_legal_form: 501(c)(3) non-profit foundation supporting broader movement
|
|
||||||
founding_date: '2003-06-20'
|
|
||||||
description: 'The Wikimedia movement is a global community of volunteers and
|
|
||||||
|
|
||||||
organizations dedicated to free knowledge. The movement operates
|
|
||||||
|
|
||||||
Wikipedia, Wikidata, Wikimedia Commons, and other free knowledge
|
|
||||||
|
|
||||||
projects. The Wikimedia Foundation provides infrastructure and
|
|
||||||
|
|
||||||
legal support but does not own or control the content created by
|
|
||||||
|
|
||||||
the volunteer community. The movement''s core value is that knowledge
|
|
||||||
|
|
||||||
should be freely accessible to everyone.
|
|
||||||
|
|
||||||
'
|
|
||||||
service_offering:
|
|
||||||
- Wikipedia (free encyclopedia, 60M+ articles, 300+ languages)
|
|
||||||
- Wikidata (open knowledge base, 100M+ items, CC0)
|
|
||||||
- Wikimedia Commons (free media repository, 90M+ files)
|
|
||||||
- Wikisource (free library of source texts)
|
|
||||||
- Wiktionary (free dictionary)
|
|
||||||
- MediaWiki (open source wiki software)
|
|
||||||
membership_criteria: Open participation - anyone can edit Wikipedia, contribute to Wikidata, or upload to Wikimedia
|
|
||||||
Commons. No membership fee or application. Contribution governed by community policies (neutral point of view, verifiability,
|
|
||||||
no original research). The movement includes formal affiliates (chapters, user groups, thematic orgs).
|
|
||||||
governance_authority: Wikimedia projects are governed by community consensus through volunteer administrators, arbitration
|
|
||||||
committees, and policy pages. The Wikimedia Foundation Board of Trustees provides strategic oversight. Movement
|
|
||||||
governance through affiliates, chapters, and community-elected bodies (Movement Charter in development).
|
|
||||||
data_license_policy:
|
|
||||||
policy_name: Wikimedia Foundation Open Content Policy
|
|
||||||
openness_stance: STRONG_OPEN_ADVOCATE
|
|
||||||
default_license: cc0-1.0
|
|
||||||
service_specific_licenses:
|
|
||||||
- service_name: Wikidata
|
|
||||||
license: cc0-1.0
|
|
||||||
license_notes: All structured data is public domain
|
|
||||||
- service_name: Wikipedia
|
|
||||||
license: cc-by-sa-4.0
|
|
||||||
license_notes: Text content is copyleft - derivatives must share alike
|
|
||||||
- service_name: Wikimedia Commons
|
|
||||||
license_notes: Varies by upload - must be free license (CC-BY, CC-BY-SA, CC0, or public domain)
|
|
||||||
open_data_principles:
|
|
||||||
- Free knowledge for everyone
|
|
||||||
- Open participation
|
|
||||||
- Neutral point of view
|
|
||||||
advocacy_activities:
|
|
||||||
- Open Access advocacy
|
|
||||||
- GLAM-Wiki partnerships
|
|
||||||
- Open data advocacy in policy forums
|
|
||||||
- Training librarians and cultural heritage professionals
|
|
||||||
external_identifier:
|
|
||||||
- http://www.wikidata.org/entity/Q180
|
|
||||||
- https://viaf.org/viaf/305375908
|
|
||||||
website: https://www.wikimedia.org/
|
|
||||||
description: Wikimedia as social movement for free knowledge with fully open data policy
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
FundingOrganisation:
|
|
||||||
is_a: EncompassingBody
|
|
||||||
class_uri: schema:FundingAgency
|
|
||||||
description: "A grant-giving organization that provides FINANCIAL RESOURCES to heritage\ncustodians through funding schemes,\
|
|
||||||
\ grants, and subsidies. Distinguished from\nother EncompassingBody types by the FINANCIAL relationship rather than\
|
|
||||||
\ governance,\nservices, or collaboration.\n\n**Characteristics**:\n- **Financial support**: Provides grants, subsidies,\
|
|
||||||
\ funding to custodians\n- **Funding schemes**: Implements structured programs with application processes\n- **No governance**:\
|
|
||||||
\ Does NOT govern recipients (unlike UmbrellaOrganisation)\n- **No ongoing services**: Does NOT provide operational\
|
|
||||||
\ services (unlike NetworkOrganisation)\n- **Evaluation and monitoring**: Assesses applications, monitors outcomes\n\
|
|
||||||
- **Time-limited relationships**: Grant periods define relationship duration\n\n**Relationship Model**:\nUnlike other\
|
|
||||||
\ EncompassingBody types that have ongoing structural relationships,\nFundingOrganisation has TRANSACTIONAL relationships:\n\
|
|
||||||
- Funder → (awards grant) → Custodian\n- Grant has start date, end date, amount, purpose\n- Multiple custodians may\
|
|
||||||
\ receive funding simultaneously\n- Same custodian may receive multiple grants over time\n\n**Examples**:\n\n- **Mondriaan\
|
|
||||||
\ Fund** (Mondriaan Fonds, Q2714299)\n - Dutch public fund for visual arts and cultural heritage\n - Instance of \"\
|
|
||||||
funding body\" (Q5509032) in Wikidata\n - Provides grants for exhibitions, acquisitions, conservation\n - Government-funded\
|
|
||||||
\ through Ministry of OCW, operates independently\n \n- **European Research Council** (ERC, Q1377836)\n - EU agency\
|
|
||||||
\ funding frontier research\n - Starting Grants, Consolidator Grants, Advanced Grants\n - Operates under Horizon Europe\
|
|
||||||
\ framework\n \n- **Creative Europe** (Q17084973)\n - EU programme supporting cultural and creative sectors\n - 2021-2027\
|
|
||||||
\ programming period\n - Funds transnational cooperation projects\n \n- **DC4EU** (Digital Credentials for Europe)\n\
|
|
||||||
\ - EU Digital Europe Programme project\n - Funds digital infrastructure for heritage sector\n \n- **National Endowment\
|
|
||||||
\ for the Humanities** (NEH)\n - US federal agency for humanities funding\n - Preservation, research, public programs\n\
|
|
||||||
\ \n- **Heritage Lottery Fund** (now National Lottery Heritage Fund)\n - UK lottery distributor for heritage projects\n\
|
|
||||||
\ - Major funder of UK heritage custodians\n\n**Distinction from UmbrellaOrganisation**:\n- **FundingOrganisation**:\
|
|
||||||
\ Provides money, NO governance authority\n- **UmbrellaOrganisation**: Legal parent WITH governance authority\n- A ministry\
|
|
||||||
\ may BOTH fund AND govern - in that case use UMBRELLA\n (the governance relationship is primary)\n\n**Distinction\
|
|
||||||
\ from NetworkOrganisation**:\n- **FundingOrganisation**: One-way financial relationship (funder → recipient)\n- **NetworkOrganisation**:\
|
|
||||||
\ Ongoing service provision relationship\n\n**When a Ministry is UMBRELLA vs FUNDING_BODY**:\n- Ministry of OCW → National\
|
|
||||||
\ Archives: UMBRELLA (governs)\n- Ministry of OCW → Mondriaan Fund: UMBRELLA (governs the fund)\n- Mondriaan Fund →\
|
|
||||||
\ Museum X: FUNDING_BODY (only provides grant)\n\n**Ontological Alignment**:\n- Schema.org: `schema:FundingAgency` -\
|
|
||||||
\ \"An organization that implements\n FundingSchemes and manages the granting process (via Grants)\"\n- Schema.org:\
|
|
||||||
\ `schema:FundingScheme` - structured funding programs\n- Schema.org: `schema:Grant` / `schema:MonetaryGrant` - individual\
|
|
||||||
\ awards\n- Wikidata: Q5509032 (funding body)\n- FOAF: `foaf:fundedBy` (legacy, use schema:funder instead)\n"
|
|
||||||
slots:
|
|
||||||
- funding_focus
|
|
||||||
- funding_scheme
|
|
||||||
- funding_source
|
|
||||||
- implements_agenda
|
|
||||||
- issued_call
|
|
||||||
- programme_period
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
- total_annual_budget
|
|
||||||
slot_usage:
|
|
||||||
organization_type:
|
|
||||||
range: EncompassingBodyTypeEnum
|
|
||||||
required: true
|
|
||||||
ifabsent: string(FUNDING_BODY)
|
|
||||||
description: Must be FUNDING_BODY for FundingOrganisation
|
|
||||||
description:
|
|
||||||
required: true
|
|
||||||
description: 'Description of the funding organization''s mission and focus areas.
|
|
||||||
|
|
||||||
Should explain what types of projects/custodians it funds.
|
|
||||||
|
|
||||||
'
|
|
||||||
implements_agenda:
|
|
||||||
slot_uri: org:linkedTo
|
|
||||||
range: uriorcurie
|
|
||||||
multivalued: true
|
|
||||||
inlined_as_list: true
|
|
||||||
description: "Strategic agendas implemented by this funding organisation.\n\nLinks to FundingAgenda instances that\
|
|
||||||
\ define strategic priorities\nguiding the organisation's funding decisions and call design.\n\n**Relationship Chain**:\n\
|
|
||||||
```\nFundingAgenda (NWA, Horizon Europe SP)\n │\n └── implemented by → FundingOrganisation\n \
|
|
||||||
\ │\n └── issues → CallForApplication[]\n```\n"
|
|
||||||
examples:
|
|
||||||
- value: https://nde.nl/ontology/hc/agenda/nl/nwa
|
|
||||||
description: NWO implements Dutch Research Agenda
|
|
||||||
issued_call:
|
|
||||||
slot_uri: schema:makesOffer
|
|
||||||
range: uriorcurie
|
|
||||||
multivalued: true
|
|
||||||
inlined_as_list: true
|
|
||||||
description: 'Funding calls issued by this organisation.
|
|
||||||
|
|
||||||
|
|
||||||
Links to CallForApplication instances representing specific
|
|
||||||
|
|
||||||
funding opportunities with defined budgets, deadlines, and criteria.
|
|
||||||
|
|
||||||
|
|
||||||
**Inverse of CallForApplication.issuing_organisation**
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: https://nde.nl/ontology/hc/call/nwo/nwa-heritage-2025
|
|
||||||
description: NWO NWA heritage call 2025
|
|
||||||
funding_focus:
|
|
||||||
range: string
|
|
||||||
multivalued: true
|
|
||||||
description: 'Focus areas for funding (heritage sectors, themes, activities).
|
|
||||||
|
|
||||||
Examples: "Visual arts", "Conservation", "Digitization", "Research"
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Visual arts and cultural heritage
|
|
||||||
- value: Museum acquisitions
|
|
||||||
- value: Conservation and restoration
|
|
||||||
- value: Digital infrastructure
|
|
||||||
funding_scheme:
|
|
||||||
range: string
|
|
||||||
multivalued: true
|
|
||||||
description: 'Named funding programs offered by this organization.
|
|
||||||
|
|
||||||
Each scheme typically has its own application process, criteria, and budget.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Project Grants for Museums
|
|
||||||
- value: Conservation Subsidy Programme
|
|
||||||
- value: Starting Grant
|
|
||||||
- value: Consolidator Grant
|
|
||||||
total_annual_budget:
|
|
||||||
range: string
|
|
||||||
description: 'Approximate annual budget for grants (for context).
|
|
||||||
|
|
||||||
Format: "€X million" or "€X-Y million range"
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: €30 million
|
|
||||||
- value: €2.5 billion (Horizon Europe ERC share)
|
|
||||||
funding_source:
|
|
||||||
range: string
|
|
||||||
description: 'Where the funding organization gets its resources.
|
|
||||||
|
|
||||||
Examples: "Government appropriation", "Lottery proceeds", "EU budget"
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Dutch Ministry of OCW annual budget
|
|
||||||
- value: Horizon Europe Framework Programme
|
|
||||||
- value: National Lottery proceeds
|
|
||||||
programme_period:
|
|
||||||
slot_uri: schema:temporalCoverage
|
|
||||||
range: TimeSpan
|
|
||||||
description: 'Temporal period of the funding programme.
|
|
||||||
|
|
||||||
|
|
||||||
**EU Programmes**: Use exact dates for 7-year programming periods.
|
|
||||||
|
|
||||||
**Ongoing Funds**: Set start date, leave end null.
|
|
||||||
|
|
||||||
|
|
||||||
Uses CIDOC-CRM E52_Time-Span pattern via TimeSpan class.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value:
|
|
||||||
begin_of_the_begin: '2021-01-01T00:00:00Z'
|
|
||||||
end_of_the_begin: '2021-01-01T00:00:00Z'
|
|
||||||
begin_of_the_end: '2027-12-31T23:59:59Z'
|
|
||||||
end_of_the_end: '2027-12-31T23:59:59Z'
|
|
||||||
description: 2021-2027 EU programming period
|
|
||||||
has_or_had_member_custodian:
|
|
||||||
description: 'For FundingOrganisation, this represents FUNDED custodians, not members.
|
|
||||||
|
|
||||||
|
|
||||||
Note: Unlike other EncompassingBody types where member_custodians
|
|
||||||
|
|
||||||
represents ongoing membership, for FundingOrganisation this captures
|
|
||||||
|
|
||||||
custodians that have received funding. Consider using Grant records
|
|
||||||
|
|
||||||
for detailed funding relationships with temporal information.
|
|
||||||
|
|
||||||
'
|
|
||||||
service_offering:
|
|
||||||
description: 'Additional services beyond funding (if any).
|
|
||||||
|
|
||||||
Many funding bodies also provide advisory services, training, etc.
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: Application guidance and coaching
|
|
||||||
- value: Networking events for grantees
|
|
||||||
- value: Outcome evaluation support
|
|
||||||
has_or_had_area_served:
|
|
||||||
description: 'Geographic scope of funding eligibility.
|
|
||||||
|
|
||||||
Which countries/regions can apply for funding?
|
|
||||||
|
|
||||||
'
|
|
||||||
examples:
|
|
||||||
- value: NL
|
|
||||||
description: Netherlands only (Mondriaan Fund)
|
|
||||||
- value: EU
|
|
||||||
description: EU member states (Creative Europe)
|
|
||||||
- value: GLOBAL
|
|
||||||
description: Worldwide eligibility
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
exact_mappings:
|
|
||||||
- schema:FundingAgency
|
|
||||||
close_mappings:
|
|
||||||
- schema:Organization
|
|
||||||
comments:
|
|
||||||
- FundingOrganisation provides FINANCIAL RESOURCES, not governance or services
|
|
||||||
- Relationship with custodians is transactional (grant-based)
|
|
||||||
- Distinguished from UMBRELLA (no governance authority)
|
|
||||||
- Distinguished from NETWORK (no ongoing services)
|
|
||||||
- Use schema:funder property to link to funded custodians
|
|
||||||
examples:
|
|
||||||
- value:
|
|
||||||
id: https://nde.nl/ontology/hc/encompassing-body/funding/mondriaan-fund
|
|
||||||
organization_name: Mondriaan Fonds
|
|
||||||
organization_type: FUNDING_BODY
|
|
||||||
organization_legal_form: Public fund (publiekrechtelijk fonds)
|
|
||||||
founding_date: '1994-01-01'
|
|
||||||
description: 'The Mondriaan Fund is the Dutch public fund for visual arts and
|
|
||||||
|
|
||||||
cultural heritage. It provides grants to artists, museums, archives,
|
|
||||||
|
|
||||||
and heritage organizations for exhibitions, acquisitions, conservation,
|
|
||||||
|
|
||||||
international exchange, and other cultural heritage activities.
|
|
||||||
|
|
||||||
The fund is named after Dutch painter Piet Mondrian.
|
|
||||||
|
|
||||||
'
|
|
||||||
funding_focus:
|
|
||||||
- Visual arts
|
|
||||||
- Cultural heritage
|
|
||||||
- Museum acquisitions
|
|
||||||
- Conservation and restoration
|
|
||||||
- International cultural exchange
|
|
||||||
- Artist residencies
|
|
||||||
funding_scheme:
|
|
||||||
- Project Grants for Museums
|
|
||||||
- Conservation Subsidy
|
|
||||||
- International Heritage Programme
|
|
||||||
- Acquisition Grants
|
|
||||||
total_annual_budget: €30 million (approximate)
|
|
||||||
funding_source: Dutch Ministry of OCW annual appropriation
|
|
||||||
has_or_had_area_served:
|
|
||||||
- NL
|
|
||||||
service_offering:
|
|
||||||
- Application guidance
|
|
||||||
- Networking events for grantees
|
|
||||||
- Impact evaluation
|
|
||||||
membership_criteria: 'Eligibility depends on specific funding scheme. Generally: Dutch museums, archives, heritage
|
|
||||||
organizations, and visual artists. International projects may have broader eligibility.'
|
|
||||||
external_identifier:
|
|
||||||
- http://www.wikidata.org/entity/Q2714299
|
|
||||||
website: https://www.mondriaanfonds.nl/
|
|
||||||
description: Mondriaan Fund as Dutch heritage funding organization
|
|
||||||
- value:
|
|
||||||
id: https://nde.nl/ontology/hc/encompassing-body/funding/erc
|
|
||||||
organization_name: European Research Council
|
|
||||||
organization_type: FUNDING_BODY
|
|
||||||
organization_legal_form: EU executive agency
|
|
||||||
founding_date: '2007-02-27'
|
|
||||||
description: 'The European Research Council (ERC) is the premier European funding
|
|
||||||
|
|
||||||
organisation for excellent frontier research. It funds researchers
|
|
||||||
|
|
||||||
of any nationality and has_age who wish to carry out their research in
|
|
||||||
|
|
||||||
EU Member States or Associated Countries. ERC grants are awarded
|
|
||||||
|
|
||||||
through open competition to researchers in any field of research.
|
|
||||||
|
|
||||||
'
|
|
||||||
funding_focus:
|
|
||||||
- Frontier research (all disciplines)
|
|
||||||
- Principal investigator-driven research
|
|
||||||
- High-risk/high-gain research
|
|
||||||
funding_scheme:
|
|
||||||
- Starting Grant (2-7 years post-PhD)
|
|
||||||
- Consolidator Grant (7-12 years post-PhD)
|
|
||||||
- Advanced Grant (established leaders)
|
|
||||||
- Synergy Grant (small group collaboration)
|
|
||||||
- Proof of Concept
|
|
||||||
total_annual_budget: €2.5 billion (under Horizon Europe)
|
|
||||||
funding_source: Horizon Europe Framework Programme (EU budget)
|
|
||||||
has_or_had_area_served:
|
|
||||||
- EU
|
|
||||||
- EEA
|
|
||||||
- Associated Countries
|
|
||||||
membership_criteria: Open to researchers of any nationality. Host institution must be in EU Member State or Horizon
|
|
||||||
Europe Associated Country. Selection based on scientific excellence only.
|
|
||||||
external_identifier:
|
|
||||||
- http://www.wikidata.org/entity/Q1377836
|
|
||||||
website: https://erc.europa.eu/
|
|
||||||
description: European Research Council as frontier research funding agency
|
|
||||||
|
|
|
||||||
|
|
@ -19,232 +19,261 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/ContentDispositionEnum
|
||||||
classes:
|
classes:
|
||||||
FileAPI:
|
FileAPI:
|
||||||
is_a: DataServiceEndpoint
|
is_a: DataServiceEndpoint
|
||||||
class_uri: hc:FileAPI
|
class_uri: hc:FileAPI
|
||||||
description: |
|
description: "File/asset retrieval API for downloading digital content.\n\n**Purpose:**\n\nModels endpoints that provide\
|
||||||
File/asset retrieval API for downloading digital content.
|
\ direct access to digital files\n(images, documents, audio, video, 3D models) stored in heritage repositories.\n\n\
|
||||||
|
**Distinction from Image Servers:**\n\n- **FileAPI**: Downloads original or derivative files as-is\n- **IIPImageServer**:\
|
||||||
**Purpose:**
|
\ Dynamic image delivery with zooming, tiling, region extraction\n\nUse FileAPI when you need:\n- Original/master files\n\
|
||||||
|
- Fixed-resolution derivatives\n- Non-image files (PDFs, audio, video, office documents)\n\n**Example - Nationaal Archief\
|
||||||
Models endpoints that provide direct access to digital files
|
\ File API:**\n\n```yaml\nfile_api:\n endpoint_name: \"Nationaal Archief File API\"\n base_url: \"https://service.archief.nl/gaf/api/file/v1/\"\
|
||||||
(images, documents, audio, video, 3D models) stored in heritage repositories.
|
\n url_pattern: \"{base_url}{uuid}/{level}/{format}\"\n version: \"v1\"\n supported_levels:\n - MASTER\n -\
|
||||||
|
\ HIGH\n - MEDIUM\n - LOW\n - THUMBNAIL\n supported_format:\n - image/jpeg\n - image/png\n - application/pdf\n\
|
||||||
**Distinction from Image Servers:**
|
\ max_file_size_mb: 500\n supports_range_requests: true\n example_url: \"https://service.archief.nl/gaf/api/file/v1/12345678.../high/jpeg\"\
|
||||||
|
\n```\n\n**Use Cases:**\n\n1. **Download master files**: Archival-quality preservation copies\n2. **Generate derivatives**:\
|
||||||
- **FileAPI**: Downloads original or derivative files as-is
|
\ Request specific size/format\n3. **Batch harvesting**: Download all files for a record\n4. **Streaming**: Audio/video\
|
||||||
- **IIPImageServer**: Dynamic image delivery with zooming, tiling, region extraction
|
\ delivery\n\n**See Also:**\n\n- Content-Disposition header for filename hints\n- HTTP Range requests (RFC 7233) for\
|
||||||
|
\ partial downloads\n"
|
||||||
Use FileAPI when you need:
|
|
||||||
- Original/master files
|
|
||||||
- Fixed-resolution derivatives
|
|
||||||
- Non-image files (PDFs, audio, video, office documents)
|
|
||||||
|
|
||||||
**Example - Nationaal Archief File API:**
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
file_api:
|
|
||||||
endpoint_name: "Nationaal Archief File API"
|
|
||||||
base_url: "https://service.archief.nl/gaf/api/file/v1/"
|
|
||||||
url_pattern: "{base_url}{uuid}/{level}/{format}"
|
|
||||||
version: "v1"
|
|
||||||
supported_levels:
|
|
||||||
- MASTER
|
|
||||||
- HIGH
|
|
||||||
- MEDIUM
|
|
||||||
- LOW
|
|
||||||
- THUMBNAIL
|
|
||||||
supported_format:
|
|
||||||
- image/jpeg
|
|
||||||
- image/png
|
|
||||||
- application/pdf
|
|
||||||
max_file_size_mb: 500
|
|
||||||
supports_range_requests: true
|
|
||||||
example_url: "https://service.archief.nl/gaf/api/file/v1/12345678.../high/jpeg"
|
|
||||||
```
|
|
||||||
|
|
||||||
**Use Cases:**
|
|
||||||
|
|
||||||
1. **Download master files**: Archival-quality preservation copies
|
|
||||||
2. **Generate derivatives**: Request specific size/format
|
|
||||||
3. **Batch harvesting**: Download all files for a record
|
|
||||||
4. **Streaming**: Audio/video delivery
|
|
||||||
|
|
||||||
**See Also:**
|
|
||||||
|
|
||||||
- Content-Disposition header for filename hints
|
|
||||||
- HTTP Range requests (RFC 7233) for partial downloads
|
|
||||||
attributes:
|
attributes:
|
||||||
base_url:
|
base_url:
|
||||||
slot_uri: dcat:endpointURL
|
slot_uri: dcat:endpointURL
|
||||||
description: |
|
description: 'Base URL for file retrieval.
|
||||||
Base URL for file retrieval.
|
|
||||||
|
|
||||||
Individual files are accessed by appending identifiers.
|
Individual files are accessed by appending identifiers.
|
||||||
|
|
||||||
|
|
||||||
Example: "https://service.archief.nl/gaf/api/file/v1/"
|
Example: "https://service.archief.nl/gaf/api/file/v1/"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
required: true
|
required: true
|
||||||
url_pattern:
|
url_pattern:
|
||||||
slot_uri: hydra:template
|
slot_uri: hydra:template
|
||||||
description: |
|
description: 'URL pattern for constructing file requests.
|
||||||
URL pattern for constructing file requests.
|
|
||||||
|
|
||||||
Use {placeholders} for dynamic parts:
|
Use {placeholders} for dynamic parts:
|
||||||
|
|
||||||
- {uuid}: File identifier
|
- {uuid}: File identifier
|
||||||
|
|
||||||
- {level}: Quality level (master, high, low, thumbnail)
|
- {level}: Quality level (master, high, low, thumbnail)
|
||||||
|
|
||||||
- {format}: File format (jpeg, png, pdf)
|
- {format}: File format (jpeg, png, pdf)
|
||||||
|
|
||||||
|
|
||||||
Example: "{base_url}{uuid}/{level}/{format}"
|
Example: "{base_url}{uuid}/{level}/{format}"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
identifier_type:
|
identifier_type:
|
||||||
slot_uri: dcterms:identifier
|
slot_uri: dcterms:identifier
|
||||||
description: |
|
description: 'Type of identifier used to request files.
|
||||||
Type of identifier used to request files.
|
|
||||||
|
|
||||||
Values: UUID, HANDLE, DOI, ARK, LOCAL_ID, FILENAME
|
Values: UUID, HANDLE, DOI, ARK, LOCAL_ID, FILENAME
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
supported_levels:
|
supported_levels:
|
||||||
slot_uri: schema:encodingFormat
|
slot_uri: schema:encodingFormat
|
||||||
description: |
|
description: 'Quality/resolution levels available.
|
||||||
Quality/resolution levels available.
|
|
||||||
|
|
||||||
Common levels:
|
Common levels:
|
||||||
|
|
||||||
- MASTER/ORIGINAL: Archival master file
|
- MASTER/ORIGINAL: Archival master file
|
||||||
|
|
||||||
- HIGH: High-resolution derivative
|
- HIGH: High-resolution derivative
|
||||||
|
|
||||||
- MEDIUM: Medium resolution (web-suitable)
|
- MEDIUM: Medium resolution (web-suitable)
|
||||||
|
|
||||||
- LOW: Low resolution (fast loading)
|
- LOW: Low resolution (fast loading)
|
||||||
|
|
||||||
- THUMBNAIL: Small preview image
|
- THUMBNAIL: Small preview image
|
||||||
|
|
||||||
|
|
||||||
Example: ["MASTER", "HIGH", "MEDIUM", "LOW", "THUMBNAIL"]
|
Example: ["MASTER", "HIGH", "MEDIUM", "LOW", "THUMBNAIL"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
supported_format:
|
supported_format:
|
||||||
slot_uri: dcterms:format
|
slot_uri: dcterms:format
|
||||||
description: |
|
description: 'File formats (MIME types) available for download.
|
||||||
File formats (MIME types) available for download.
|
|
||||||
|
|
||||||
May vary by content type and level.
|
May vary by content type and level.
|
||||||
|
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
- Images: ["image/jpeg", "image/png", "image/tiff"]
|
- Images: ["image/jpeg", "image/png", "image/tiff"]
|
||||||
|
|
||||||
- Documents: ["application/pdf", "application/xml"]
|
- Documents: ["application/pdf", "application/xml"]
|
||||||
|
|
||||||
- Audio: ["audio/mpeg", "audio/wav"]
|
- Audio: ["audio/mpeg", "audio/wav"]
|
||||||
|
|
||||||
- Video: ["video/mp4", "video/webm"]
|
- Video: ["video/mp4", "video/webm"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
required: true
|
required: true
|
||||||
max_file_size_mb:
|
max_file_size_mb:
|
||||||
slot_uri: schema:contentSize
|
slot_uri: schema:contentSize
|
||||||
description: |
|
description: 'Maximum file size available for download (in MB).
|
||||||
Maximum file size available for download (in MB).
|
|
||||||
|
|
||||||
Larger files may require special access or batch delivery.
|
Larger files may require special access or batch delivery.
|
||||||
|
|
||||||
|
|
||||||
Example: 500
|
Example: 500
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
typical_file_size_mb:
|
typical_file_size_mb:
|
||||||
slot_uri: schema:contentSize
|
slot_uri: schema:contentSize
|
||||||
description: |
|
description: 'Typical file size for most downloads (in MB).
|
||||||
Typical file size for most downloads (in MB).
|
|
||||||
|
|
||||||
Helps clients estimate download times.
|
Helps clients estimate download times.
|
||||||
|
|
||||||
|
|
||||||
Example: 10
|
Example: 10
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
supports_range_requests:
|
supports_range_requests:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether HTTP Range requests are supported (RFC 7233).
|
||||||
Whether HTTP Range requests are supported (RFC 7233).
|
|
||||||
|
|
||||||
Enables:
|
Enables:
|
||||||
|
|
||||||
- Resumable downloads
|
- Resumable downloads
|
||||||
|
|
||||||
- Partial content retrieval
|
- Partial content retrieval
|
||||||
|
|
||||||
- Streaming
|
- Streaming
|
||||||
|
|
||||||
|
|
||||||
Check for Accept-Ranges: bytes header.
|
Check for Accept-Ranges: bytes header.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
supports_streaming:
|
supports_streaming:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether the API supports media streaming.
|
||||||
Whether the API supports media streaming.
|
|
||||||
|
|
||||||
Relevant for audio/video content.
|
Relevant for audio/video content.
|
||||||
|
|
||||||
Enables progressive playback without full download.
|
Enables progressive playback without full download.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
content_disposition:
|
content_disposition:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Content-Disposition header behavior.
|
||||||
Content-Disposition header behavior.
|
|
||||||
|
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
- INLINE: Browser displays content
|
- INLINE: Browser displays content
|
||||||
|
|
||||||
- ATTACHMENT: Browser downloads file
|
- ATTACHMENT: Browser downloads file
|
||||||
|
|
||||||
- CONFIGURABLE: Client can request either
|
- CONFIGURABLE: Client can request either
|
||||||
|
|
||||||
|
'
|
||||||
range: ContentDispositionEnum
|
range: ContentDispositionEnum
|
||||||
filename_in_url:
|
filename_in_url:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether original filename is included in URL.
|
||||||
Whether original filename is included in URL.
|
|
||||||
|
|
||||||
Some APIs include filename for better download naming:
|
Some APIs include filename for better download naming:
|
||||||
|
|
||||||
/api/file/v1/uuid/original.tif
|
/api/file/v1/uuid/original.tif
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
supports_batch_download:
|
supports_batch_download:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether batch/bulk download is supported.
|
||||||
Whether batch/bulk download is supported.
|
|
||||||
|
|
||||||
May provide ZIP archives or async batch jobs.
|
May provide ZIP archives or async batch jobs.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
batch_download_format:
|
batch_download_format:
|
||||||
slot_uri: dcterms:format
|
slot_uri: dcterms:format
|
||||||
description: |
|
description: 'Format for batch downloads.
|
||||||
Format for batch downloads.
|
|
||||||
|
|
||||||
Example: "application/zip"
|
Example: "application/zip"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
thumbnail_dimensions:
|
thumbnail_dimensions:
|
||||||
slot_uri: schema:width
|
slot_uri: schema:width
|
||||||
description: |
|
description: 'Dimensions of thumbnail images (if thumbnail level available).
|
||||||
Dimensions of thumbnail images (if thumbnail level available).
|
|
||||||
|
|
||||||
Format: "WIDTHxHEIGHT"
|
Format: "WIDTHxHEIGHT"
|
||||||
|
|
||||||
|
|
||||||
Example: "150x150"
|
Example: "150x150"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
watermark_applied:
|
watermark_applied:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether watermarks are applied to downloaded files.
|
||||||
Whether watermarks are applied to downloaded files.
|
|
||||||
|
|
||||||
May vary by access level or file type.
|
May vary by access level or file type.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
has_or_had_access_restriction:
|
has_or_had_access_restriction:
|
||||||
slot_uri: dcterms:accessRights
|
slot_uri: dcterms:accessRights
|
||||||
description: |
|
description: 'Access restrictions on file downloads.
|
||||||
Access restrictions on file downloads.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "Public access to all levels"
|
- "Public access to all levels"
|
||||||
|
|
||||||
- "Master files require authentication"
|
- "Master files require authentication"
|
||||||
|
|
||||||
- "Some collections IP-restricted"
|
- "Some collections IP-restricted"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
example_url:
|
example_url:
|
||||||
slot_uri: schema:workExample
|
slot_uri: schema:workExample
|
||||||
description: |
|
description: 'Example URL for file download.
|
||||||
Example URL for file download.
|
|
||||||
|
|
||||||
Example: "https://service.archief.nl/gaf/api/file/v1/12345678.../high/jpeg"
|
Example: "https://service.archief.nl/gaf/api/file/v1/12345678.../high/jpeg"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
slot_usage:
|
slot_usage:
|
||||||
protocol:
|
protocol:
|
||||||
description: File APIs use REST protocol for downloads (DataServiceProtocolEnum.REST).
|
description: File APIs use REST protocol for downloads (DataServiceProtocolEnum.REST).
|
||||||
has_authentication_required_flag:
|
has_authentication_required_flag:
|
||||||
description: |
|
description: 'Master files often require authentication.
|
||||||
Master files often require authentication.
|
|
||||||
Thumbnails and low-res typically public.
|
Thumbnails and low-res typically public.
|
||||||
|
|
||||||
|
'
|
||||||
specificity_annotation:
|
specificity_annotation:
|
||||||
range: SpecificityAnnotation
|
range: SpecificityAnnotation
|
||||||
inlined: true
|
inlined: true
|
||||||
|
|
@ -261,27 +290,3 @@ classes:
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
- template_specificity
|
- template_specificity
|
||||||
enums:
|
|
||||||
ContentDispositionEnum:
|
|
||||||
description: |
|
|
||||||
HTTP Content-Disposition header behavior options.
|
|
||||||
permissible_values:
|
|
||||||
INLINE:
|
|
||||||
description: |
|
|
||||||
Content displayed inline in browser.
|
|
||||||
|
|
||||||
Header: Content-Disposition: inline
|
|
||||||
|
|
||||||
Browser attempts to render (images, PDFs).
|
|
||||||
ATTACHMENT:
|
|
||||||
description: |
|
|
||||||
Content downloaded as attachment.
|
|
||||||
|
|
||||||
Header: Content-Disposition: attachment; filename="example.pdf"
|
|
||||||
|
|
||||||
Browser prompts for download.
|
|
||||||
CONFIGURABLE:
|
|
||||||
description: |
|
|
||||||
Client can request either behavior.
|
|
||||||
|
|
||||||
Usually via query parameter: ?download=true
|
|
||||||
|
|
|
||||||
|
|
@ -152,81 +152,10 @@ imports:
|
||||||
- ../slots/event
|
- ../slots/event
|
||||||
- ../slots/event_en
|
- ../slots/event_en
|
||||||
- ../slots/claim_source_url
|
- ../slots/claim_source_url
|
||||||
enums:
|
- ../enums/ExternalResourceTypeEnum
|
||||||
ExternalResourceTypeEnum:
|
- ../enums/SubGuideTypeEnum
|
||||||
description: 'Types of external resources linked from finding aids.
|
- ../enums/RelationshipTypeEnum
|
||||||
|
- ../enums/LinkTypeEnum
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
database:
|
|
||||||
description: Searchable online database
|
|
||||||
organization:
|
|
||||||
description: Related organization or society
|
|
||||||
portal:
|
|
||||||
description: Discovery portal or aggregator
|
|
||||||
archive:
|
|
||||||
description: External archive holding related materials
|
|
||||||
library:
|
|
||||||
description: Library with related holdings
|
|
||||||
museum:
|
|
||||||
description: Museum with related collections
|
|
||||||
website:
|
|
||||||
description: General website resource
|
|
||||||
api:
|
|
||||||
description: API endpoint for programmatic access
|
|
||||||
reference:
|
|
||||||
description: Reference material or documentation
|
|
||||||
research_institute:
|
|
||||||
description: Research institution or academic center
|
|
||||||
aggregator:
|
|
||||||
description: Data aggregator or harvesting service
|
|
||||||
SubGuideTypeEnum:
|
|
||||||
description: 'Types of sub-guide references within a repository guide.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
sub_guide:
|
|
||||||
description: Direct sub-guide within same repository
|
|
||||||
cross_reference:
|
|
||||||
description: Cross-reference to another main guide
|
|
||||||
thematic:
|
|
||||||
description: Thematic sub-collection
|
|
||||||
regional:
|
|
||||||
description: Regional sub-guide
|
|
||||||
RelationshipTypeEnum:
|
|
||||||
description: 'Types of relationships between finding aids.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
cross_reference:
|
|
||||||
description: Related guide on related topic
|
|
||||||
parent:
|
|
||||||
description: Parent guide containing this guide
|
|
||||||
child:
|
|
||||||
description: Child guide within this guide
|
|
||||||
see_also:
|
|
||||||
description: See also reference
|
|
||||||
predecessor:
|
|
||||||
description: Previous version of this guide
|
|
||||||
successor:
|
|
||||||
description: Newer version of this guide
|
|
||||||
LinkTypeEnum:
|
|
||||||
description: 'Types of hyperlinks extracted from pages.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
internal:
|
|
||||||
description: Link within same domain
|
|
||||||
external:
|
|
||||||
description: Link to external domain
|
|
||||||
anchor:
|
|
||||||
description: Same-page anchor link
|
|
||||||
download:
|
|
||||||
description: Link to downloadable file
|
|
||||||
sub_guide:
|
|
||||||
description: Link to a sub-guide finding aid
|
|
||||||
featured:
|
|
||||||
description: Featured/highlighted link
|
|
||||||
classes:
|
classes:
|
||||||
FindingAid:
|
FindingAid:
|
||||||
class_uri: rico:FindingAid
|
class_uri: rico:FindingAid
|
||||||
|
|
|
||||||
|
|
@ -33,6 +33,7 @@ imports:
|
||||||
- ../slots/valid_to_geo
|
- ../slots/valid_to_geo
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/GeometryTypeEnum
|
||||||
types:
|
types:
|
||||||
WktLiteral:
|
WktLiteral:
|
||||||
uri: geosparql:wktLiteral
|
uri: geosparql:wktLiteral
|
||||||
|
|
@ -45,24 +46,6 @@ types:
|
||||||
examples:
|
examples:
|
||||||
- value: POINT(4.2894 52.0705)
|
- value: POINT(4.2894 52.0705)
|
||||||
- value: POLYGON((4.0 52.0, 4.5 52.0, 4.5 52.5, 4.0 52.5, 4.0 52.0))
|
- value: POLYGON((4.0 52.0, 4.5 52.0, 4.5 52.5, 4.0 52.5, 4.0 52.0))
|
||||||
enums:
|
|
||||||
GeometryTypeEnum:
|
|
||||||
description: OGC Simple Features geometry types
|
|
||||||
permissible_values:
|
|
||||||
POINT:
|
|
||||||
description: Single point location
|
|
||||||
LINESTRING:
|
|
||||||
description: Line or path
|
|
||||||
POLYGON:
|
|
||||||
description: Closed polygon boundary
|
|
||||||
MULTIPOINT:
|
|
||||||
description: Multiple points
|
|
||||||
MULTILINESTRING:
|
|
||||||
description: Multiple lines
|
|
||||||
MULTIPOLYGON:
|
|
||||||
description: Multiple polygons (e.g., archipelago)
|
|
||||||
GEOMETRYCOLLECTION:
|
|
||||||
description: Mixed geometry types
|
|
||||||
classes:
|
classes:
|
||||||
GeoSpatialPlace:
|
GeoSpatialPlace:
|
||||||
class_uri: geosparql:Feature
|
class_uri: geosparql:Feature
|
||||||
|
|
|
||||||
|
|
@ -18,282 +18,318 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/ImageProtocolEnum
|
||||||
|
- ../enums/IIIFComplianceLevelEnum
|
||||||
classes:
|
classes:
|
||||||
IIPImageServer:
|
IIPImageServer:
|
||||||
is_a: DataServiceEndpoint
|
is_a: DataServiceEndpoint
|
||||||
class_uri: hc:IIPImageServer
|
class_uri: hc:IIPImageServer
|
||||||
description: |
|
description: "Tiled image server endpoint for dynamic high-resolution image delivery.\n\n**Purpose:**\n\nModels image\
|
||||||
Tiled image server endpoint for dynamic high-resolution image delivery.
|
\ server endpoints that provide:\n- Deep zoom for high-resolution images\n- Tile-based delivery for smooth navigation\n\
|
||||||
|
- On-the-fly image manipulation (rotation, cropping, format conversion)\n- Efficient delivery of gigapixel images\n\n\
|
||||||
**Purpose:**
|
**Supported Protocols:**\n\n| Protocol | Description | Use Case |\n|----------|-------------|----------|\n| **IIP**\
|
||||||
|
\ | Internet Imaging Protocol | Legacy, widely deployed |\n| **IIIF Image** | International Image Interoperability Framework\
|
||||||
Models image server endpoints that provide:
|
\ | Modern standard, interoperable |\n| **Zoomify** | Zoomify tile format | Common in heritage sector |\n| **DeepZoom**\
|
||||||
- Deep zoom for high-resolution images
|
\ | Microsoft Deep Zoom | Seadragon viewers |\n\n**Example - Nationaal Archief IIP Server:**\n\n```yaml\niip_image_server:\n\
|
||||||
- Tile-based delivery for smooth navigation
|
\ endpoint_name: \"Nationaal Archief Image Server\"\n base_url: \"https://service.archief.nl/iipsrv\"\n server_software:\
|
||||||
- On-the-fly image manipulation (rotation, cropping, format conversion)
|
\ \"IIPImage\"\n supported_protocols:\n - IIP\n - Zoomify\n - IIIF_IMAGE\n iiif_compliance_level: LEVEL_1\n\
|
||||||
- Efficient delivery of gigapixel images
|
\ max_image_dimension: 10000\n supported_output_formats:\n - image/jpeg\n - image/png\n supports_region_extraction:\
|
||||||
|
\ true\n supports_rotation: true\n supports_quality_selection: true\n```\n\n**IIIF Image API Features:**\n\nIIIF Image\
|
||||||
**Supported Protocols:**
|
\ API URL structure:\n`{scheme}://{server}{/prefix}/{identifier}/{region}/{size}/{rotation}/{quality}.{format}`\n\n\
|
||||||
|
- **region**: full, square, x,y,w,h, pct:x,y,w,h\n- **size**: full, max, w,, ,h, pct:n, w,h, !w,h\n- **rotation**: 0-360,\
|
||||||
| Protocol | Description | Use Case |
|
\ with optional mirror (!)\n- **quality**: default, color, gray, bitonal\n- **format**: jpg, png, gif, webp, tif\n\n\
|
||||||
|----------|-------------|----------|
|
**See Also:**\n\n- IIIF Image API: https://iiif.io/api/image/\n- IIPImage Server: https://iipimage.sourceforge.io/\n"
|
||||||
| **IIP** | Internet Imaging Protocol | Legacy, widely deployed |
|
|
||||||
| **IIIF Image** | International Image Interoperability Framework | Modern standard, interoperable |
|
|
||||||
| **Zoomify** | Zoomify tile format | Common in heritage sector |
|
|
||||||
| **DeepZoom** | Microsoft Deep Zoom | Seadragon viewers |
|
|
||||||
|
|
||||||
**Example - Nationaal Archief IIP Server:**
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
iip_image_server:
|
|
||||||
endpoint_name: "Nationaal Archief Image Server"
|
|
||||||
base_url: "https://service.archief.nl/iipsrv"
|
|
||||||
server_software: "IIPImage"
|
|
||||||
supported_protocols:
|
|
||||||
- IIP
|
|
||||||
- Zoomify
|
|
||||||
- IIIF_IMAGE
|
|
||||||
iiif_compliance_level: LEVEL_1
|
|
||||||
max_image_dimension: 10000
|
|
||||||
supported_output_formats:
|
|
||||||
- image/jpeg
|
|
||||||
- image/png
|
|
||||||
supports_region_extraction: true
|
|
||||||
supports_rotation: true
|
|
||||||
supports_quality_selection: true
|
|
||||||
```
|
|
||||||
|
|
||||||
**IIIF Image API Features:**
|
|
||||||
|
|
||||||
IIIF Image API URL structure:
|
|
||||||
`{scheme}://{server}{/prefix}/{identifier}/{region}/{size}/{rotation}/{quality}.{format}`
|
|
||||||
|
|
||||||
- **region**: full, square, x,y,w,h, pct:x,y,w,h
|
|
||||||
- **size**: full, max, w,, ,h, pct:n, w,h, !w,h
|
|
||||||
- **rotation**: 0-360, with optional mirror (!)
|
|
||||||
- **quality**: default, color, gray, bitonal
|
|
||||||
- **format**: jpg, png, gif, webp, tif
|
|
||||||
|
|
||||||
**See Also:**
|
|
||||||
|
|
||||||
- IIIF Image API: https://iiif.io/api/image/
|
|
||||||
- IIPImage Server: https://iipimage.sourceforge.io/
|
|
||||||
attributes:
|
attributes:
|
||||||
base_url:
|
base_url:
|
||||||
slot_uri: dcat:endpointURL
|
slot_uri: dcat:endpointURL
|
||||||
description: |
|
description: 'Base URL of the image server.
|
||||||
Base URL of the image server.
|
|
||||||
|
|
||||||
Example: "https://service.archief.nl/iipsrv"
|
Example: "https://service.archief.nl/iipsrv"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
required: true
|
required: true
|
||||||
server_software:
|
server_software:
|
||||||
slot_uri: schema:softwareVersion
|
slot_uri: schema:softwareVersion
|
||||||
description: |
|
description: 'Image server software in use.
|
||||||
Image server software in use.
|
|
||||||
|
|
||||||
Common software:
|
Common software:
|
||||||
|
|
||||||
- IIPImage: Open-source, supports IIP, IIIF, Zoomify
|
- IIPImage: Open-source, supports IIP, IIIF, Zoomify
|
||||||
|
|
||||||
- Loris: Python IIIF image server
|
- Loris: Python IIIF image server
|
||||||
|
|
||||||
- Cantaloupe: Java IIIF server
|
- Cantaloupe: Java IIIF server
|
||||||
|
|
||||||
- Digilib: Java image server
|
- Digilib: Java image server
|
||||||
|
|
||||||
- RAIS: Rust IIIF server
|
- RAIS: Rust IIIF server
|
||||||
|
|
||||||
|
|
||||||
Example: "IIPImage"
|
Example: "IIPImage"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
server_version:
|
server_version:
|
||||||
slot_uri: schema:version
|
slot_uri: schema:version
|
||||||
description: |
|
description: 'Version of the image server software.
|
||||||
Version of the image server software.
|
|
||||||
|
|
||||||
Example: "1.1"
|
Example: "1.1"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
supported_protocols:
|
supported_protocols:
|
||||||
slot_uri: dcterms:conformsTo
|
slot_uri: dcterms:conformsTo
|
||||||
description: |
|
description: 'Image delivery protocols supported.
|
||||||
Image delivery protocols supported.
|
|
||||||
|
|
||||||
Values from DataServiceProtocolEnum:
|
Values from DataServiceProtocolEnum:
|
||||||
|
|
||||||
- IIP: Internet Imaging Protocol
|
- IIP: Internet Imaging Protocol
|
||||||
|
|
||||||
- IIIF_IMAGE: IIIF Image API
|
- IIIF_IMAGE: IIIF Image API
|
||||||
|
|
||||||
- ZOOMIFY: Zoomify tiles
|
- ZOOMIFY: Zoomify tiles
|
||||||
|
|
||||||
- DEEPZOOM: Microsoft Deep Zoom
|
- DEEPZOOM: Microsoft Deep Zoom
|
||||||
|
|
||||||
|
|
||||||
Example: ["IIP", "IIIF_IMAGE", "ZOOMIFY"]
|
Example: ["IIP", "IIIF_IMAGE", "ZOOMIFY"]
|
||||||
|
|
||||||
|
'
|
||||||
range: ImageProtocolEnum
|
range: ImageProtocolEnum
|
||||||
multivalued: true
|
multivalued: true
|
||||||
required: true
|
required: true
|
||||||
iiif_image_api_version:
|
iiif_image_api_version:
|
||||||
slot_uri: iiif:apiVersion
|
slot_uri: iiif:apiVersion
|
||||||
description: |
|
description: 'IIIF Image API version supported (if IIIF enabled).
|
||||||
IIIF Image API version supported (if IIIF enabled).
|
|
||||||
|
|
||||||
Current version: 3.0
|
Current version: 3.0
|
||||||
|
|
||||||
Legacy versions: 2.1, 2.0, 1.1, 1.0
|
Legacy versions: 2.1, 2.0, 1.1, 1.0
|
||||||
|
|
||||||
|
|
||||||
Example: "3.0"
|
Example: "3.0"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
iiif_compliance_level:
|
iiif_compliance_level:
|
||||||
slot_uri: dcterms:conformsTo
|
slot_uri: dcterms:conformsTo
|
||||||
description: |
|
description: 'IIIF Image API compliance level (if IIIF enabled).
|
||||||
IIIF Image API compliance level (if IIIF enabled).
|
|
||||||
|
|
||||||
Levels define mandatory features:
|
Levels define mandatory features:
|
||||||
|
|
||||||
- LEVEL_0: Basic (fixed sizes only)
|
- LEVEL_0: Basic (fixed sizes only)
|
||||||
|
|
||||||
- LEVEL_1: Region, size, rotation
|
- LEVEL_1: Region, size, rotation
|
||||||
|
|
||||||
- LEVEL_2: Full Image API features
|
- LEVEL_2: Full Image API features
|
||||||
|
|
||||||
|
|
||||||
Example: LEVEL_1
|
Example: LEVEL_1
|
||||||
|
|
||||||
|
'
|
||||||
range: IIIFComplianceLevelEnum
|
range: IIIFComplianceLevelEnum
|
||||||
iiif_context_url:
|
iiif_context_url:
|
||||||
slot_uri: schema:additionalType
|
slot_uri: schema:additionalType
|
||||||
description: |
|
description: 'IIIF context URL for JSON-LD.
|
||||||
IIIF context URL for JSON-LD.
|
|
||||||
|
|
||||||
Example: "http://iiif.io/api/image/3/context.json"
|
Example: "http://iiif.io/api/image/3/context.json"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
max_image_dimension:
|
max_image_dimension:
|
||||||
slot_uri: schema:maxValue
|
slot_uri: schema:maxValue
|
||||||
description: |
|
description: 'Maximum image dimension (width or height) that can be served.
|
||||||
Maximum image dimension (width or height) that can be served.
|
|
||||||
|
|
||||||
Larger images may be available but capped in delivery.
|
Larger images may be available but capped in delivery.
|
||||||
|
|
||||||
|
|
||||||
Example: 10000
|
Example: 10000
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
max_area:
|
max_area:
|
||||||
slot_uri: schema:maxValue
|
slot_uri: schema:maxValue
|
||||||
description: |
|
description: 'Maximum total pixel area that can be served in one request.
|
||||||
Maximum total pixel area that can be served in one request.
|
|
||||||
|
|
||||||
Prevents server overload on very large images.
|
Prevents server overload on very large images.
|
||||||
|
|
||||||
|
|
||||||
Example: 100000000 (100 megapixels)
|
Example: 100000000 (100 megapixels)
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
tile_size:
|
tile_size:
|
||||||
slot_uri: schema:size
|
slot_uri: schema:size
|
||||||
description: |
|
description: 'Default tile size in pixels.
|
||||||
Default tile size in pixels.
|
|
||||||
|
|
||||||
Most servers use 256 or 512 pixel tiles.
|
Most servers use 256 or 512 pixel tiles.
|
||||||
|
|
||||||
|
|
||||||
Example: 512
|
Example: 512
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
supported_input_formats:
|
supported_input_formats:
|
||||||
slot_uri: dcterms:format
|
slot_uri: dcterms:format
|
||||||
description: |
|
description: 'Source image formats the server can read.
|
||||||
Source image formats the server can read.
|
|
||||||
|
|
||||||
Common: TIFF, JPEG 2000, Pyramid TIFF
|
Common: TIFF, JPEG 2000, Pyramid TIFF
|
||||||
|
|
||||||
|
|
||||||
Example: ["image/tiff", "image/jp2"]
|
Example: ["image/tiff", "image/jp2"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
supported_output_formats:
|
supported_output_formats:
|
||||||
slot_uri: dcterms:format
|
slot_uri: dcterms:format
|
||||||
description: |
|
description: 'Output formats the server can deliver.
|
||||||
Output formats the server can deliver.
|
|
||||||
|
|
||||||
Example: ["image/jpeg", "image/png", "image/webp"]
|
Example: ["image/jpeg", "image/png", "image/webp"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
required: true
|
required: true
|
||||||
supports_region_extraction:
|
supports_region_extraction:
|
||||||
slot_uri: iiif:regionByPx
|
slot_uri: iiif:regionByPx
|
||||||
description: |
|
description: 'Whether the server supports extracting arbitrary image regions.
|
||||||
Whether the server supports extracting arbitrary image regions.
|
|
||||||
|
|
||||||
IIIF: region parameter (x,y,w,h or pct:x,y,w,h)
|
IIIF: region parameter (x,y,w,h or pct:x,y,w,h)
|
||||||
|
|
||||||
IIP: RGN parameter
|
IIP: RGN parameter
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
supports_rotation:
|
supports_rotation:
|
||||||
slot_uri: iiif:rotation
|
slot_uri: iiif:rotation
|
||||||
description: |
|
description: 'Whether the server supports image rotation.
|
||||||
Whether the server supports image rotation.
|
|
||||||
|
|
||||||
IIIF supports 0-360 degrees and mirroring.
|
IIIF supports 0-360 degrees and mirroring.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
supports_mirroring:
|
supports_mirroring:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether the server supports horizontal mirroring.
|
||||||
Whether the server supports horizontal mirroring.
|
|
||||||
|
|
||||||
IIIF: ! prefix on rotation (e.g., !0 for mirror only)
|
IIIF: ! prefix on rotation (e.g., !0 for mirror only)
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
supports_quality_selection:
|
supports_quality_selection:
|
||||||
slot_uri: iiif:quality
|
slot_uri: iiif:quality
|
||||||
description: |
|
description: 'Whether the server supports quality/color mode selection.
|
||||||
Whether the server supports quality/color mode selection.
|
|
||||||
|
|
||||||
IIIF qualities: default, color, gray, bitonal
|
IIIF qualities: default, color, gray, bitonal
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
supported_qualities:
|
supported_qualities:
|
||||||
slot_uri: iiif:quality
|
slot_uri: iiif:quality
|
||||||
description: |
|
description: 'Quality modes supported.
|
||||||
Quality modes supported.
|
|
||||||
|
|
||||||
Example: ["default", "color", "gray", "bitonal"]
|
Example: ["default", "color", "gray", "bitonal"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
supports_info_json:
|
supports_info_json:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether the server provides IIIF info.json for images.
|
||||||
Whether the server provides IIIF info.json for images.
|
|
||||||
|
|
||||||
info.json contains image metadata (dimensions, tiles, features).
|
info.json contains image metadata (dimensions, tiles, features).
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
info_json_url_pattern:
|
info_json_url_pattern:
|
||||||
slot_uri: hydra:template
|
slot_uri: hydra:template
|
||||||
description: |
|
description: 'URL pattern for retrieving IIIF info.json.
|
||||||
URL pattern for retrieving IIIF info.json.
|
|
||||||
|
|
||||||
Example: "{base_url}/iiif/{identifier}/info.json"
|
Example: "{base_url}/iiif/{identifier}/info.json"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
fcgi_path:
|
fcgi_path:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'FastCGI path for IIPImage servers.
|
||||||
FastCGI path for IIPImage servers.
|
|
||||||
|
|
||||||
Common: "/iipsrv/iipsrv.fcgi" or "/fcgi-bin/iipsrv.fcgi"
|
Common: "/iipsrv/iipsrv.fcgi" or "/fcgi-bin/iipsrv.fcgi"
|
||||||
|
|
||||||
|
|
||||||
Example: "/iipsrv/iipsrv.fcgi"
|
Example: "/iipsrv/iipsrv.fcgi"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
image_identifier_pattern:
|
image_identifier_pattern:
|
||||||
slot_uri: hydra:template
|
slot_uri: hydra:template
|
||||||
description: |
|
description: 'Pattern for image identifiers.
|
||||||
Pattern for image identifiers.
|
|
||||||
|
|
||||||
IIPImage uses FIF parameter with filesystem path.
|
IIPImage uses FIF parameter with filesystem path.
|
||||||
|
|
||||||
IIIF uses URL-encoded identifiers.
|
IIIF uses URL-encoded identifiers.
|
||||||
|
|
||||||
|
|
||||||
Example (IIP): "FIF=/path/to/{archive}/{uuid}.tif"
|
Example (IIP): "FIF=/path/to/{archive}/{uuid}.tif"
|
||||||
|
|
||||||
Example (IIIF): "{base_url}/iiif/{identifier}"
|
Example (IIIF): "{base_url}/iiif/{identifier}"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
cors_enabled:
|
cors_enabled:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether CORS is enabled for browser access.
|
||||||
Whether CORS is enabled for browser access.
|
|
||||||
|
|
||||||
Essential for JavaScript-based viewers.
|
Essential for JavaScript-based viewers.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
example_iiif_url:
|
example_iiif_url:
|
||||||
slot_uri: schema:workExample
|
slot_uri: schema:workExample
|
||||||
description: |
|
description: 'Example IIIF Image API URL.
|
||||||
Example IIIF Image API URL.
|
|
||||||
|
|
||||||
Example: "https://service.archief.nl/iiif/2/uuid:12345/full/1000,/0/default.jpg"
|
Example: "https://service.archief.nl/iiif/2/uuid:12345/full/1000,/0/default.jpg"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
example_iip_url:
|
example_iip_url:
|
||||||
slot_uri: schema:workExample
|
slot_uri: schema:workExample
|
||||||
description: |
|
description: 'Example IIP request URL.
|
||||||
Example IIP request URL.
|
|
||||||
|
|
||||||
Example: "https://service.archief.nl/iipsrv?FIF=/path/image.tif&WID=1000&CVT=jpeg"
|
Example: "https://service.archief.nl/iipsrv?FIF=/path/image.tif&WID=1000&CVT=jpeg"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
slot_usage:
|
slot_usage:
|
||||||
protocol:
|
protocol:
|
||||||
description: |
|
description: 'Primary protocol. Use supported_protocols for full list.
|
||||||
Primary protocol. Use supported_protocols for full list.
|
|
||||||
|
'
|
||||||
specificity_annotation:
|
specificity_annotation:
|
||||||
range: SpecificityAnnotation
|
range: SpecificityAnnotation
|
||||||
inlined: true
|
inlined: true
|
||||||
|
|
@ -311,73 +347,3 @@ classes:
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
- template_specificity
|
- template_specificity
|
||||||
enums:
|
|
||||||
ImageProtocolEnum:
|
|
||||||
description: |
|
|
||||||
Image delivery protocols supported by image servers.
|
|
||||||
permissible_values:
|
|
||||||
IIP:
|
|
||||||
description: |
|
|
||||||
Internet Imaging Protocol.
|
|
||||||
|
|
||||||
Original tiled image protocol.
|
|
||||||
Parameters: FIF, WID, HEI, RGN, QLT, CVT
|
|
||||||
IIIF_IMAGE:
|
|
||||||
description: |
|
|
||||||
IIIF Image API.
|
|
||||||
|
|
||||||
Modern standard for interoperable image delivery.
|
|
||||||
URL structure: {server}/{identifier}/{region}/{size}/{rotation}/{quality}.{format}
|
|
||||||
ZOOMIFY:
|
|
||||||
description: |
|
|
||||||
Zoomify tile format.
|
|
||||||
|
|
||||||
Pyramid tiles in folders: TileGroup0/, TileGroup1/...
|
|
||||||
Properties in ImageProperties.xml
|
|
||||||
DEEPZOOM:
|
|
||||||
description: |
|
|
||||||
Microsoft Deep Zoom format.
|
|
||||||
|
|
||||||
Pyramid tiles with .dzi descriptor file.
|
|
||||||
Common with OpenSeadragon viewer.
|
|
||||||
DJATOKA:
|
|
||||||
description: |
|
|
||||||
Djatoka JPEG 2000 image server.
|
|
||||||
|
|
||||||
Legacy LoC image server, deprecated in favor of IIIF.
|
|
||||||
IIIFComplianceLevelEnum:
|
|
||||||
description: |
|
|
||||||
IIIF Image API compliance levels.
|
|
||||||
|
|
||||||
Higher levels support more features.
|
|
||||||
permissible_values:
|
|
||||||
LEVEL_0:
|
|
||||||
description: |
|
|
||||||
Level 0 - Basic.
|
|
||||||
|
|
||||||
Only supports predefined image sizes listed in info.json.
|
|
||||||
No region extraction, rotation limited.
|
|
||||||
|
|
||||||
Minimum viable IIIF implementation.
|
|
||||||
LEVEL_1:
|
|
||||||
description: |
|
|
||||||
Level 1 - Intermediate.
|
|
||||||
|
|
||||||
Supports:
|
|
||||||
- Region by pixel and percentage
|
|
||||||
- Size by width, height, or percentage
|
|
||||||
- 0 and 90 degree rotation
|
|
||||||
- Default quality
|
|
||||||
|
|
||||||
Most common compliance level.
|
|
||||||
LEVEL_2:
|
|
||||||
description: |
|
|
||||||
Level 2 - Full.
|
|
||||||
|
|
||||||
Supports all Level 1 features plus:
|
|
||||||
- Arbitrary rotation (0-360)
|
|
||||||
- Mirroring
|
|
||||||
- All quality modes (color, gray, bitonal)
|
|
||||||
- Multiple output formats
|
|
||||||
|
|
||||||
Full Image API implementation.
|
|
||||||
|
|
|
||||||
|
|
@ -19,229 +19,260 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/METSIdentifierTypeEnum
|
||||||
classes:
|
classes:
|
||||||
METSAPI:
|
METSAPI:
|
||||||
is_a: DataServiceEndpoint
|
is_a: DataServiceEndpoint
|
||||||
class_uri: hc:METSAPI
|
class_uri: hc:METSAPI
|
||||||
description: |
|
description: "METS (Metadata Encoding and Transmission Standard) document retrieval API.\n\n**Purpose:**\n\nModels endpoints\
|
||||||
METS (Metadata Encoding and Transmission Standard) document retrieval API.
|
\ that provide access to METS documents describing\nthe structure and metadata of digital objects in heritage collections.\n\
|
||||||
|
\nMETS is a Library of Congress standard widely used in digital preservation\nand repository systems.\n\n**METS Structure:**\n\
|
||||||
**Purpose:**
|
\nA METS document contains:\n- **metsHdr**: Header with creation/modification metadata\n- **dmdSec**: Descriptive metadata\
|
||||||
|
\ (Dublin Core, MODS, EAD, etc.)\n- **amdSec**: Administrative metadata (technical, rights, provenance)\n- **fileSec**:\
|
||||||
Models endpoints that provide access to METS documents describing
|
\ File inventory with technical properties\n- **structMap**: Logical/physical structure of the object\n- **structLink**:\
|
||||||
the structure and metadata of digital objects in heritage collections.
|
\ Links between structural divisions\n- **behaviorSec**: Executable behaviors\n\n**Example - Nationaal Archief METS\
|
||||||
|
\ API:**\n\n```yaml\nmets_api:\n endpoint_name: \"Nationaal Archief METS API\"\n base_url: \"https://service.archief.nl/gaf/api/mets/v1/\"\
|
||||||
METS is a Library of Congress standard widely used in digital preservation
|
\n url_pattern: \"{base_url}{uuid}\"\n mets_profile: NATIONAAL_ARCHIEF\n version: \"v1\"\n descriptive_metadata_schemas:\n\
|
||||||
and repository systems.
|
\ - Dublin Core\n - EAD\n rights_metadata_available: true\n structural_metadata_available: true\n file_inventory_included:\
|
||||||
|
\ true\n example_url: \"https://service.archief.nl/gaf/api/mets/v1/12345678-1234-1234-1234-123456789012\"\n```\n\n\
|
||||||
**METS Structure:**
|
**Use Cases:**\n\n1. **Digital preservation**: Validate object integrity\n2. **Viewer integration**: Build multi-page\
|
||||||
|
\ viewers from structural metadata\n3. **Migration**: Transfer objects between repository systems\n4. **Audit**: Track\
|
||||||
A METS document contains:
|
\ provenance and rights\n\n**See Also:**\n\n- METS Standard: https://www.loc.gov/standards/mets/\n- METS Primer: https://www.loc.gov/standards/mets/METSPrimer.pdf\n"
|
||||||
- **metsHdr**: Header with creation/modification metadata
|
|
||||||
- **dmdSec**: Descriptive metadata (Dublin Core, MODS, EAD, etc.)
|
|
||||||
- **amdSec**: Administrative metadata (technical, rights, provenance)
|
|
||||||
- **fileSec**: File inventory with technical properties
|
|
||||||
- **structMap**: Logical/physical structure of the object
|
|
||||||
- **structLink**: Links between structural divisions
|
|
||||||
- **behaviorSec**: Executable behaviors
|
|
||||||
|
|
||||||
**Example - Nationaal Archief METS API:**
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
mets_api:
|
|
||||||
endpoint_name: "Nationaal Archief METS API"
|
|
||||||
base_url: "https://service.archief.nl/gaf/api/mets/v1/"
|
|
||||||
url_pattern: "{base_url}{uuid}"
|
|
||||||
mets_profile: NATIONAAL_ARCHIEF
|
|
||||||
version: "v1"
|
|
||||||
descriptive_metadata_schemas:
|
|
||||||
- Dublin Core
|
|
||||||
- EAD
|
|
||||||
rights_metadata_available: true
|
|
||||||
structural_metadata_available: true
|
|
||||||
file_inventory_included: true
|
|
||||||
example_url: "https://service.archief.nl/gaf/api/mets/v1/12345678-1234-1234-1234-123456789012"
|
|
||||||
```
|
|
||||||
|
|
||||||
**Use Cases:**
|
|
||||||
|
|
||||||
1. **Digital preservation**: Validate object integrity
|
|
||||||
2. **Viewer integration**: Build multi-page viewers from structural metadata
|
|
||||||
3. **Migration**: Transfer objects between repository systems
|
|
||||||
4. **Audit**: Track provenance and rights
|
|
||||||
|
|
||||||
**See Also:**
|
|
||||||
|
|
||||||
- METS Standard: https://www.loc.gov/standards/mets/
|
|
||||||
- METS Primer: https://www.loc.gov/standards/mets/METSPrimer.pdf
|
|
||||||
attributes:
|
attributes:
|
||||||
base_url:
|
base_url:
|
||||||
slot_uri: dcat:endpointURL
|
slot_uri: dcat:endpointURL
|
||||||
description: |
|
description: 'Base URL for METS document retrieval.
|
||||||
Base URL for METS document retrieval.
|
|
||||||
|
|
||||||
Individual documents are accessed by appending an identifier.
|
Individual documents are accessed by appending an identifier.
|
||||||
|
|
||||||
|
|
||||||
Example: "https://service.archief.nl/gaf/api/mets/v1/"
|
Example: "https://service.archief.nl/gaf/api/mets/v1/"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
required: true
|
required: true
|
||||||
url_pattern:
|
url_pattern:
|
||||||
slot_uri: hydra:template
|
slot_uri: hydra:template
|
||||||
description: |
|
description: 'URL pattern for constructing METS document requests.
|
||||||
URL pattern for constructing METS document requests.
|
|
||||||
|
|
||||||
Use {placeholders} for dynamic parts.
|
Use {placeholders} for dynamic parts.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "{base_url}{uuid}" → https://service.archief.nl/gaf/api/mets/v1/12345678-...
|
- "{base_url}{uuid}" → https://service.archief.nl/gaf/api/mets/v1/12345678-...
|
||||||
|
|
||||||
- "{base_url}?id={identifier}" → https://example.org/mets?id=doc123
|
- "{base_url}?id={identifier}" → https://example.org/mets?id=doc123
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
identifier_type:
|
identifier_type:
|
||||||
slot_uri: dcterms:identifier
|
slot_uri: dcterms:identifier
|
||||||
description: |
|
description: 'Type of identifier used to request METS documents.
|
||||||
Type of identifier used to request METS documents.
|
|
||||||
|
|
||||||
Values: UUID, HANDLE, DOI, ARK, LOCAL_ID
|
Values: UUID, HANDLE, DOI, ARK, LOCAL_ID
|
||||||
|
|
||||||
|
|
||||||
Example: UUID
|
Example: UUID
|
||||||
|
|
||||||
|
'
|
||||||
range: METSIdentifierTypeEnum
|
range: METSIdentifierTypeEnum
|
||||||
mets_profile:
|
mets_profile:
|
||||||
slot_uri: dcterms:conformsTo
|
slot_uri: dcterms:conformsTo
|
||||||
description: |
|
description: 'METS profile implemented by this API.
|
||||||
METS profile implemented by this API.
|
|
||||||
|
|
||||||
METS profiles constrain the standard for specific use cases.
|
METS profiles constrain the standard for specific use cases.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- NATIONAAL_ARCHIEF: Dutch National Archive profile
|
- NATIONAAL_ARCHIEF: Dutch National Archive profile
|
||||||
|
|
||||||
- BHL: Biodiversity Heritage Library profile
|
- BHL: Biodiversity Heritage Library profile
|
||||||
|
|
||||||
- FEDORA: Fedora repository profile
|
- FEDORA: Fedora repository profile
|
||||||
|
|
||||||
- NDNP: National Digital Newspaper Program
|
- NDNP: National Digital Newspaper Program
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
mets_schema_version:
|
mets_schema_version:
|
||||||
slot_uri: schema:schemaVersion
|
slot_uri: schema:schemaVersion
|
||||||
description: |
|
description: 'METS schema version used.
|
||||||
METS schema version used.
|
|
||||||
|
|
||||||
Current version: 1.12.1
|
Current version: 1.12.1
|
||||||
|
|
||||||
|
|
||||||
Example: "1.12.1"
|
Example: "1.12.1"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
descriptive_metadata_schemas:
|
descriptive_metadata_schemas:
|
||||||
slot_uri: dcterms:format
|
slot_uri: dcterms:format
|
||||||
description: |
|
description: 'Descriptive metadata schemas embedded in dmdSec.
|
||||||
Descriptive metadata schemas embedded in dmdSec.
|
|
||||||
|
|
||||||
Common schemas:
|
Common schemas:
|
||||||
|
|
||||||
- Dublin Core (oai_dc)
|
- Dublin Core (oai_dc)
|
||||||
|
|
||||||
- MODS
|
- MODS
|
||||||
|
|
||||||
- EAD (for archival description)
|
- EAD (for archival description)
|
||||||
|
|
||||||
- MARCXML
|
- MARCXML
|
||||||
|
|
||||||
- VRA Core (visual resources)
|
- VRA Core (visual resources)
|
||||||
|
|
||||||
|
|
||||||
Example: ["Dublin Core", "EAD"]
|
Example: ["Dublin Core", "EAD"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
administrative_metadata_sections:
|
administrative_metadata_sections:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Administrative metadata sections included.
|
||||||
Administrative metadata sections included.
|
|
||||||
|
|
||||||
METS defines:
|
METS defines:
|
||||||
|
|
||||||
- techMD: Technical metadata (file formats, dimensions)
|
- techMD: Technical metadata (file formats, dimensions)
|
||||||
|
|
||||||
- rightsMD: Rights/permissions
|
- rightsMD: Rights/permissions
|
||||||
|
|
||||||
- sourceMD: Source/provenance
|
- sourceMD: Source/provenance
|
||||||
|
|
||||||
- digiprovMD: Digital provenance (PREMIS events)
|
- digiprovMD: Digital provenance (PREMIS events)
|
||||||
|
|
||||||
|
|
||||||
Example: ["techMD", "rightsMD", "digiprovMD"]
|
Example: ["techMD", "rightsMD", "digiprovMD"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
rights_metadata_available:
|
rights_metadata_available:
|
||||||
slot_uri: dcterms:rights
|
slot_uri: dcterms:rights
|
||||||
description: |
|
description: 'Whether rights metadata (rightsMD) is included.
|
||||||
Whether rights metadata (rightsMD) is included.
|
|
||||||
|
|
||||||
Important for access control and reuse decisions.
|
Important for access control and reuse decisions.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
technical_metadata_standard:
|
technical_metadata_standard:
|
||||||
slot_uri: premis:hasObjectCharacteristics
|
slot_uri: premis:hasObjectCharacteristics
|
||||||
description: |
|
description: 'Standard used for technical metadata.
|
||||||
Standard used for technical metadata.
|
|
||||||
|
|
||||||
Common standards:
|
Common standards:
|
||||||
|
|
||||||
- PREMIS: PREservation Metadata
|
- PREMIS: PREservation Metadata
|
||||||
|
|
||||||
- MIX: NISO Metadata for Images in XML
|
- MIX: NISO Metadata for Images in XML
|
||||||
|
|
||||||
- textMD: Technical metadata for text
|
- textMD: Technical metadata for text
|
||||||
|
|
||||||
- AudioMD/VideoMD: AV technical metadata
|
- AudioMD/VideoMD: AV technical metadata
|
||||||
|
|
||||||
|
|
||||||
Example: "PREMIS"
|
Example: "PREMIS"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
structural_metadata_available:
|
structural_metadata_available:
|
||||||
slot_uri: schema:hasPart
|
slot_uri: schema:hasPart
|
||||||
description: |
|
description: 'Whether structural metadata (structMap) is included.
|
||||||
Whether structural metadata (structMap) is included.
|
|
||||||
|
|
||||||
Structural maps define how components relate to form the object
|
Structural maps define how components relate to form the object
|
||||||
|
|
||||||
(pages in a book, frames in a film, etc.).
|
(pages in a book, frames in a film, etc.).
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
structure_map_types:
|
structure_map_types:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Types of structural maps included.
|
||||||
Types of structural maps included.
|
|
||||||
|
|
||||||
Common types:
|
Common types:
|
||||||
|
|
||||||
- LOGICAL: Intellectual structure (chapters, sections)
|
- LOGICAL: Intellectual structure (chapters, sections)
|
||||||
|
|
||||||
- PHYSICAL: Physical organization (pages, leaves)
|
- PHYSICAL: Physical organization (pages, leaves)
|
||||||
|
|
||||||
- MIXED: Combination of logical and physical
|
- MIXED: Combination of logical and physical
|
||||||
|
|
||||||
|
|
||||||
Example: ["LOGICAL", "PHYSICAL"]
|
Example: ["LOGICAL", "PHYSICAL"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
file_inventory_included:
|
file_inventory_included:
|
||||||
slot_uri: dcat:distribution
|
slot_uri: dcat:distribution
|
||||||
description: |
|
description: 'Whether file inventory (fileSec) is included.
|
||||||
Whether file inventory (fileSec) is included.
|
|
||||||
|
|
||||||
File section lists all files with locations, sizes, checksums.
|
File section lists all files with locations, sizes, checksums.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
file_location_resolvable:
|
file_location_resolvable:
|
||||||
slot_uri: schema:contentUrl
|
slot_uri: schema:contentUrl
|
||||||
description: |
|
description: 'Whether file URLs in fileSec are directly resolvable.
|
||||||
Whether file URLs in fileSec are directly resolvable.
|
|
||||||
|
|
||||||
If true, file URLs can be used to download content.
|
If true, file URLs can be used to download content.
|
||||||
|
|
||||||
If false, files may require authentication or be internal references.
|
If false, files may require authentication or be internal references.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
checksum_algorithms:
|
checksum_algorithms:
|
||||||
slot_uri: schema:algorithm
|
slot_uri: schema:algorithm
|
||||||
description: |
|
description: 'Checksum algorithms used in file inventory.
|
||||||
Checksum algorithms used in file inventory.
|
|
||||||
|
|
||||||
For integrity verification.
|
For integrity verification.
|
||||||
|
|
||||||
|
|
||||||
Example: ["MD5", "SHA-256", "SHA-512"]
|
Example: ["MD5", "SHA-256", "SHA-512"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
supports_validation:
|
supports_validation:
|
||||||
slot_uri: schema:validIn
|
slot_uri: schema:validIn
|
||||||
description: |
|
description: 'Whether the API validates METS against schema/profile.
|
||||||
Whether the API validates METS against schema/profile.
|
|
||||||
|
|
||||||
Well-formed METS should validate against XSD schema.
|
Well-formed METS should validate against XSD schema.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
example_url:
|
example_url:
|
||||||
slot_uri: schema:workExample
|
slot_uri: schema:workExample
|
||||||
description: |
|
description: 'Example URL for retrieving a METS document.
|
||||||
Example URL for retrieving a METS document.
|
|
||||||
|
|
||||||
Example: "https://service.archief.nl/gaf/api/mets/v1/12345678-1234-1234-1234-123456789012"
|
Example: "https://service.archief.nl/gaf/api/mets/v1/12345678-1234-1234-1234-123456789012"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
slot_usage:
|
slot_usage:
|
||||||
protocol:
|
protocol:
|
||||||
description: METS APIs typically use REST protocol (DataServiceProtocolEnum.REST).
|
description: METS APIs typically use REST protocol (DataServiceProtocolEnum.REST).
|
||||||
response_format:
|
response_format:
|
||||||
description: |
|
description: 'METS documents are always XML.
|
||||||
METS documents are always XML.
|
|
||||||
|
'
|
||||||
ifabsent: string(application/xml)
|
ifabsent: string(application/xml)
|
||||||
specificity_annotation:
|
specificity_annotation:
|
||||||
range: SpecificityAnnotation
|
range: SpecificityAnnotation
|
||||||
|
|
@ -259,53 +290,3 @@ classes:
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
- template_specificity
|
- template_specificity
|
||||||
enums:
|
|
||||||
METSIdentifierTypeEnum:
|
|
||||||
description: |
|
|
||||||
Types of identifiers used to request METS documents.
|
|
||||||
permissible_values:
|
|
||||||
UUID:
|
|
||||||
description: |
|
|
||||||
Universally Unique Identifier.
|
|
||||||
|
|
||||||
Format: 8-4-4-4-12 hexadecimal
|
|
||||||
|
|
||||||
Example: "12345678-1234-1234-1234-123456789012"
|
|
||||||
HANDLE:
|
|
||||||
description: |
|
|
||||||
Handle System persistent identifier.
|
|
||||||
|
|
||||||
Format: prefix/suffix
|
|
||||||
|
|
||||||
Example: "10.5072/example.001"
|
|
||||||
DOI:
|
|
||||||
description: |
|
|
||||||
Digital Object Identifier.
|
|
||||||
|
|
||||||
Format: 10.prefix/suffix
|
|
||||||
|
|
||||||
Example: "10.1234/example.001"
|
|
||||||
ARK:
|
|
||||||
description: |
|
|
||||||
Archival Resource Key.
|
|
||||||
|
|
||||||
Format: ark:/NAAN/assigned-name
|
|
||||||
|
|
||||||
Example: "ark:/12345/fk4sample"
|
|
||||||
URN:
|
|
||||||
description: |
|
|
||||||
Uniform Resource Name.
|
|
||||||
|
|
||||||
Format: urn:namespace:identifier
|
|
||||||
|
|
||||||
Example: "urn:nbn:nl:ui:13-sample-001"
|
|
||||||
LOCAL_ID:
|
|
||||||
description: |
|
|
||||||
Local/internal identifier specific to the repository.
|
|
||||||
|
|
||||||
Format varies by institution.
|
|
||||||
INVENTORY_NUMBER:
|
|
||||||
description: |
|
|
||||||
Archival inventory/call number.
|
|
||||||
|
|
||||||
Format varies (e.g., "2.04.87/123")
|
|
||||||
|
|
|
||||||
|
|
@ -18,250 +18,279 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/OAIDeletedRecordPolicyEnum
|
||||||
|
- ../enums/OAIGranularityEnum
|
||||||
classes:
|
classes:
|
||||||
OAIPMHEndpoint:
|
OAIPMHEndpoint:
|
||||||
is_a: DataServiceEndpoint
|
is_a: DataServiceEndpoint
|
||||||
class_uri: hc:OAIPMHEndpoint
|
class_uri: hc:OAIPMHEndpoint
|
||||||
description: |
|
description: "OAI-PMH (Open Archives Initiative Protocol for Metadata Harvesting) endpoint.\n\n**Purpose:**\n\nModels\
|
||||||
OAI-PMH (Open Archives Initiative Protocol for Metadata Harvesting) endpoint.
|
\ OAI-PMH endpoints for automated metadata harvesting from heritage repositories.\nOAI-PMH is the dominant protocol\
|
||||||
|
\ for metadata aggregation in the GLAM sector.\n\n**Protocol Overview:**\n\nOAI-PMH defines six verbs:\n1. **Identify**\
|
||||||
**Purpose:**
|
\ - Repository information\n2. **ListMetadataFormats** - Available metadata formats\n3. **ListSets** - Collection/set\
|
||||||
|
\ hierarchy\n4. **ListIdentifiers** - Record identifiers\n5. **ListRecords** - Full records with metadata\n6. **GetRecord**\
|
||||||
Models OAI-PMH endpoints for automated metadata harvesting from heritage repositories.
|
\ - Single record by identifier\n\n**Example - Nationaal Archief OAI-PMH:**\n\n```yaml\noai_pmh_endpoint:\n endpoint_name:\
|
||||||
OAI-PMH is the dominant protocol for metadata aggregation in the GLAM sector.
|
\ \"Nationaal Archief OAI-PMH\"\n base_url: \"https://www.nationaalarchief.nl/onderzoeken/oai-pmh\"\n protocol_version:\
|
||||||
|
\ \"2.0\"\n repository_name: \"Nationaal Archief\"\n admin_email: \"helpdesk@nationaalarchief.nl\"\n earliest_datestamp:\
|
||||||
**Protocol Overview:**
|
\ \"2010-01-01\"\n deleted_record_policy: NO\n granularity: YYYY_MM_DD\n metadata_prefixes:\n - oai_dc\n -\
|
||||||
|
\ ese\n - edm\n sets:\n - name: \"Fotografische documenten\"\n spec: \"foto\"\n - name: \"Kaarten en\
|
||||||
OAI-PMH defines six verbs:
|
\ tekeningen\"\n spec: \"kaarten\"\n```\n\n**Harvesting Workflow:**\n\n1. Call Identify to get repository info\n\
|
||||||
1. **Identify** - Repository information
|
2. Call ListMetadataFormats to discover available formats\n3. Call ListSets to understand collection structure\n4. Call\
|
||||||
2. **ListMetadataFormats** - Available metadata formats
|
\ ListRecords with resumptionToken for incremental harvesting\n\n**See Also:**\n\n- OAI-PMH Specification: http://www.openarchives.org/OAI/openarchivesprotocol.html\n\
|
||||||
3. **ListSets** - Collection/set hierarchy
|
- Europeana Harvesting: https://pro.europeana.eu/page/harvesting-and-downloads\n"
|
||||||
4. **ListIdentifiers** - Record identifiers
|
|
||||||
5. **ListRecords** - Full records with metadata
|
|
||||||
6. **GetRecord** - Single record by identifier
|
|
||||||
|
|
||||||
**Example - Nationaal Archief OAI-PMH:**
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
oai_pmh_endpoint:
|
|
||||||
endpoint_name: "Nationaal Archief OAI-PMH"
|
|
||||||
base_url: "https://www.nationaalarchief.nl/onderzoeken/oai-pmh"
|
|
||||||
protocol_version: "2.0"
|
|
||||||
repository_name: "Nationaal Archief"
|
|
||||||
admin_email: "helpdesk@nationaalarchief.nl"
|
|
||||||
earliest_datestamp: "2010-01-01"
|
|
||||||
deleted_record_policy: NO
|
|
||||||
granularity: YYYY_MM_DD
|
|
||||||
metadata_prefixes:
|
|
||||||
- oai_dc
|
|
||||||
- ese
|
|
||||||
- edm
|
|
||||||
sets:
|
|
||||||
- name: "Fotografische documenten"
|
|
||||||
spec: "foto"
|
|
||||||
- name: "Kaarten en tekeningen"
|
|
||||||
spec: "kaarten"
|
|
||||||
```
|
|
||||||
|
|
||||||
**Harvesting Workflow:**
|
|
||||||
|
|
||||||
1. Call Identify to get repository info
|
|
||||||
2. Call ListMetadataFormats to discover available formats
|
|
||||||
3. Call ListSets to understand collection structure
|
|
||||||
4. Call ListRecords with resumptionToken for incremental harvesting
|
|
||||||
|
|
||||||
**See Also:**
|
|
||||||
|
|
||||||
- OAI-PMH Specification: http://www.openarchives.org/OAI/openarchivesprotocol.html
|
|
||||||
- Europeana Harvesting: https://pro.europeana.eu/page/harvesting-and-downloads
|
|
||||||
attributes:
|
attributes:
|
||||||
base_url:
|
base_url:
|
||||||
slot_uri: dcat:endpointURL
|
slot_uri: dcat:endpointURL
|
||||||
description: "Base URL for OAI-PMH requests.\n\nAll OAI-PMH verbs are appended\
|
description: "Base URL for OAI-PMH requests.\n\nAll OAI-PMH verbs are appended as query parameters to this URL.\n\n\
|
||||||
\ as query parameters to this URL.\n\nExample: \n- Base URL: \"https://www.nationaalarchief.nl/onderzoeken/oai-pmh\"\
|
Example: \n- Base URL: \"https://www.nationaalarchief.nl/onderzoeken/oai-pmh\"\n- Identify request: \"https://www.nationaalarchief.nl/onderzoeken/oai-pmh?verb=Identify\"\
|
||||||
\n- Identify request: \"https://www.nationaalarchief.nl/onderzoeken/oai-pmh?verb=Identify\"\
|
|
||||||
\n"
|
\n"
|
||||||
range: uri
|
range: uri
|
||||||
required: true
|
required: true
|
||||||
protocol_version:
|
protocol_version:
|
||||||
slot_uri: schema:version
|
slot_uri: schema:version
|
||||||
description: |
|
description: 'OAI-PMH protocol version supported.
|
||||||
OAI-PMH protocol version supported.
|
|
||||||
|
|
||||||
Current standard is version 2.0 (since 2002).
|
Current standard is version 2.0 (since 2002).
|
||||||
|
|
||||||
Earlier version 1.x is deprecated but may exist in legacy systems.
|
Earlier version 1.x is deprecated but may exist in legacy systems.
|
||||||
|
|
||||||
|
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
- "2.0" (current standard)
|
- "2.0" (current standard)
|
||||||
|
|
||||||
- "1.1" (legacy)
|
- "1.1" (legacy)
|
||||||
|
|
||||||
- "1.0" (legacy)
|
- "1.0" (legacy)
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
pattern: ^[12]\.[0-9]+$
|
pattern: ^[12]\.[0-9]+$
|
||||||
repository_name:
|
repository_name:
|
||||||
slot_uri: schema:name
|
slot_uri: schema:name
|
||||||
description: |
|
description: 'Human-readable name of the repository.
|
||||||
Human-readable name of the repository.
|
|
||||||
|
|
||||||
From OAI-PMH Identify response: <repositoryName>
|
From OAI-PMH Identify response: <repositoryName>
|
||||||
|
|
||||||
|
|
||||||
Example: "Nationaal Archief"
|
Example: "Nationaal Archief"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
admin_email:
|
admin_email:
|
||||||
slot_uri: schema:email
|
slot_uri: schema:email
|
||||||
description: |
|
description: 'Email address of repository administrator.
|
||||||
Email address of repository administrator.
|
|
||||||
|
|
||||||
From OAI-PMH Identify response: <adminEmail>
|
From OAI-PMH Identify response: <adminEmail>
|
||||||
|
|
||||||
|
|
||||||
May be multiple emails.
|
May be multiple emails.
|
||||||
|
|
||||||
|
|
||||||
Example: "helpdesk@nationaalarchief.nl"
|
Example: "helpdesk@nationaalarchief.nl"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
earliest_datestamp:
|
earliest_datestamp:
|
||||||
slot_uri: dcterms:temporal
|
slot_uri: dcterms:temporal
|
||||||
description: |
|
description: 'Earliest datestamp available in the repository.
|
||||||
Earliest datestamp available in the repository.
|
|
||||||
|
|
||||||
From OAI-PMH Identify response: <earliestDatestamp>
|
From OAI-PMH Identify response: <earliestDatestamp>
|
||||||
|
|
||||||
|
|
||||||
Records with dates before this are not available.
|
Records with dates before this are not available.
|
||||||
|
|
||||||
|
|
||||||
Format: YYYY-MM-DD or YYYY-MM-DDThh:mm:ssZ (depending on granularity)
|
Format: YYYY-MM-DD or YYYY-MM-DDThh:mm:ssZ (depending on granularity)
|
||||||
|
|
||||||
|
|
||||||
Example: "2010-01-01"
|
Example: "2010-01-01"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
deleted_record_policy:
|
deleted_record_policy:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Policy for reporting deleted records.
|
||||||
Policy for reporting deleted records.
|
|
||||||
|
|
||||||
From OAI-PMH Identify response: <deletedRecord>
|
From OAI-PMH Identify response: <deletedRecord>
|
||||||
|
|
||||||
|
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
- NO: Repository does not maintain deleted records
|
- NO: Repository does not maintain deleted records
|
||||||
|
|
||||||
- PERSISTENT: Deleted records are kept with "deleted" status
|
- PERSISTENT: Deleted records are kept with "deleted" status
|
||||||
|
|
||||||
- TRANSIENT: Deleted records are kept for some time
|
- TRANSIENT: Deleted records are kept for some time
|
||||||
|
|
||||||
|
'
|
||||||
range: OAIDeletedRecordPolicyEnum
|
range: OAIDeletedRecordPolicyEnum
|
||||||
granularity:
|
granularity:
|
||||||
slot_uri: dcterms:accrualPeriodicity
|
slot_uri: dcterms:accrualPeriodicity
|
||||||
description: |
|
description: 'Datestamp granularity supported by the repository.
|
||||||
Datestamp granularity supported by the repository.
|
|
||||||
|
|
||||||
From OAI-PMH Identify response: <granularity>
|
From OAI-PMH Identify response: <granularity>
|
||||||
|
|
||||||
|
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
- YYYY_MM_DD: Day-level precision (YYYY-MM-DD)
|
- YYYY_MM_DD: Day-level precision (YYYY-MM-DD)
|
||||||
|
|
||||||
- YYYY_MM_DD_THH_MM_SS_Z: Second-level precision (YYYY-MM-DDThh:mm:ssZ)
|
- YYYY_MM_DD_THH_MM_SS_Z: Second-level precision (YYYY-MM-DDThh:mm:ssZ)
|
||||||
|
|
||||||
|
|
||||||
Determines format for `from` and `until` parameters in selective harvesting.
|
Determines format for `from` and `until` parameters in selective harvesting.
|
||||||
|
|
||||||
|
'
|
||||||
range: OAIGranularityEnum
|
range: OAIGranularityEnum
|
||||||
metadata_prefixes:
|
metadata_prefixes:
|
||||||
slot_uri: dcterms:format
|
slot_uri: dcterms:format
|
||||||
description: |
|
description: 'Metadata formats (prefixes) supported by this repository.
|
||||||
Metadata formats (prefixes) supported by this repository.
|
|
||||||
|
|
||||||
From OAI-PMH ListMetadataFormats response.
|
From OAI-PMH ListMetadataFormats response.
|
||||||
|
|
||||||
|
|
||||||
Common prefixes:
|
Common prefixes:
|
||||||
|
|
||||||
- **oai_dc**: Dublin Core (required by OAI-PMH specification)
|
- **oai_dc**: Dublin Core (required by OAI-PMH specification)
|
||||||
|
|
||||||
- **ese**: Europeana Semantic Elements
|
- **ese**: Europeana Semantic Elements
|
||||||
|
|
||||||
- **edm**: Europeana Data Model
|
- **edm**: Europeana Data Model
|
||||||
|
|
||||||
- **mods**: MODS (Metadata Object Description Schema)
|
- **mods**: MODS (Metadata Object Description Schema)
|
||||||
|
|
||||||
- **marc21**: MARC 21
|
- **marc21**: MARC 21
|
||||||
|
|
||||||
- **ead**: Encoded Archival Description
|
- **ead**: Encoded Archival Description
|
||||||
|
|
||||||
- **lido**: LIDO (museum objects)
|
- **lido**: LIDO (museum objects)
|
||||||
|
|
||||||
- **dc**: Dublin Core (variant)
|
- **dc**: Dublin Core (variant)
|
||||||
|
|
||||||
- **qdc**: Qualified Dublin Core
|
- **qdc**: Qualified Dublin Core
|
||||||
|
|
||||||
|
|
||||||
Example: ["oai_dc", "ese", "edm"]
|
Example: ["oai_dc", "ese", "edm"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
required: true
|
required: true
|
||||||
compression:
|
compression:
|
||||||
slot_uri: schema:encodingFormat
|
slot_uri: schema:encodingFormat
|
||||||
description: |
|
description: 'Compression methods supported.
|
||||||
Compression methods supported.
|
|
||||||
|
|
||||||
From OAI-PMH Identify response: <compression>
|
From OAI-PMH Identify response: <compression>
|
||||||
|
|
||||||
|
|
||||||
Examples: ["gzip", "deflate"]
|
Examples: ["gzip", "deflate"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
sets:
|
sets:
|
||||||
slot_uri: dcat:theme
|
slot_uri: dcat:theme
|
||||||
description: "Sets (collections) available for selective harvesting.\n\nFrom\
|
description: "Sets (collections) available for selective harvesting.\n\nFrom OAI-PMH ListSets response.\n\nStructured\
|
||||||
\ OAI-PMH ListSets response.\n\nStructured as list of set specifications\
|
\ as list of set specifications with names.\n\nExample:\n```yaml\nsets:\n - spec: \"foto\"\n name: \"Fotografische\
|
||||||
\ with names.\n\nExample:\n```yaml\nsets:\n - spec: \"foto\"\n name:\
|
\ documenten\"\n - spec: \"kaarten\" \n name: \"Kaarten en tekeningen\"\n```\n"
|
||||||
\ \"Fotografische documenten\"\n - spec: \"kaarten\" \n name: \"Kaarten\
|
|
||||||
\ en tekeningen\"\n```\n"
|
|
||||||
range: OAIPMHSet
|
range: OAIPMHSet
|
||||||
multivalued: true
|
multivalued: true
|
||||||
inlined_as_list: true
|
inlined_as_list: true
|
||||||
sample_identifier:
|
sample_identifier:
|
||||||
slot_uri: dcterms:identifier
|
slot_uri: dcterms:identifier
|
||||||
description: |
|
description: 'Example identifier format used by this repository.
|
||||||
Example identifier format used by this repository.
|
|
||||||
|
|
||||||
From OAI-PMH Identify response: <sampleIdentifier> (optional in spec)
|
From OAI-PMH Identify response: <sampleIdentifier> (optional in spec)
|
||||||
|
|
||||||
|
|
||||||
Helps understand the identifier scheme.
|
Helps understand the identifier scheme.
|
||||||
|
|
||||||
|
|
||||||
Example: "oai:nationaalarchief.nl:2.04.87.01"
|
Example: "oai:nationaalarchief.nl:2.04.87.01"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
endpoint_description:
|
endpoint_description:
|
||||||
slot_uri: dcterms:description
|
slot_uri: dcterms:description
|
||||||
description: |
|
description: 'Repository description from OAI-PMH Identify response.
|
||||||
Repository description from OAI-PMH Identify response.
|
|
||||||
|
|
||||||
May contain structured XML (oai-identifier, eprints, friends, etc.)
|
May contain structured XML (oai-identifier, eprints, friends, etc.)
|
||||||
|
|
||||||
or free-text description.
|
or free-text description.
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
supports_resumption_token:
|
supports_resumption_token:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether the repository supports resumption tokens for large result sets.
|
||||||
Whether the repository supports resumption tokens for large result sets.
|
|
||||||
|
|
||||||
Required by OAI-PMH spec for ListRecords/ListIdentifiers/ListSets.
|
Required by OAI-PMH spec for ListRecords/ListIdentifiers/ListSets.
|
||||||
|
|
||||||
Most compliant repositories support this.
|
Most compliant repositories support this.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
batch_size:
|
batch_size:
|
||||||
slot_uri: schema:maxValue
|
slot_uri: schema:maxValue
|
||||||
description: |
|
description: 'Typical number of records per response (before resumption token).
|
||||||
Typical number of records per response (before resumption token).
|
|
||||||
|
|
||||||
Not part of OAI-PMH spec but useful for harvesting optimization.
|
Not part of OAI-PMH spec but useful for harvesting optimization.
|
||||||
|
|
||||||
|
|
||||||
Example: 100
|
Example: 100
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
total_records:
|
total_records:
|
||||||
slot_uri: schema:numberOfItems
|
slot_uri: schema:numberOfItems
|
||||||
description: |
|
description: 'Total number of records in the repository (approximate).
|
||||||
Total number of records in the repository (approximate).
|
|
||||||
|
|
||||||
From completeListSize attribute in OAI-PMH response (optional).
|
From completeListSize attribute in OAI-PMH response (optional).
|
||||||
|
|
||||||
|
|
||||||
Example: 1500000
|
Example: 1500000
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
last_harvested:
|
last_harvested:
|
||||||
slot_uri: schema:dateModified
|
slot_uri: schema:dateModified
|
||||||
description: |
|
description: 'Date when this endpoint was last successfully harvested.
|
||||||
Date when this endpoint was last successfully harvested.
|
|
||||||
|
|
||||||
Useful for tracking incremental harvesting.
|
Useful for tracking incremental harvesting.
|
||||||
|
|
||||||
|
|
||||||
ISO 8601 format.
|
ISO 8601 format.
|
||||||
|
|
||||||
|
|
||||||
Example: "2025-12-01T10:30:00Z"
|
Example: "2025-12-01T10:30:00Z"
|
||||||
|
|
||||||
|
'
|
||||||
range: datetime
|
range: datetime
|
||||||
slot_usage:
|
slot_usage:
|
||||||
protocol:
|
protocol:
|
||||||
description: Protocol is always OAI-PMH for this endpoint type. Value should
|
description: Protocol is always OAI-PMH for this endpoint type. Value should be OAI_PMH.
|
||||||
be OAI_PMH.
|
|
||||||
response_format:
|
response_format:
|
||||||
description: |
|
description: 'For OAI-PMH, always ["application/xml"].
|
||||||
For OAI-PMH, always ["application/xml"].
|
|
||||||
OAI-PMH responses are always XML.
|
OAI-PMH responses are always XML.
|
||||||
|
|
||||||
|
'
|
||||||
ifabsent: string(application/xml)
|
ifabsent: string(application/xml)
|
||||||
specificity_annotation:
|
specificity_annotation:
|
||||||
range: SpecificityAnnotation
|
range: SpecificityAnnotation
|
||||||
|
|
@ -281,52 +310,67 @@ classes:
|
||||||
- template_specificity
|
- template_specificity
|
||||||
OAIPMHSet:
|
OAIPMHSet:
|
||||||
class_uri: hc:OAIPMHSet
|
class_uri: hc:OAIPMHSet
|
||||||
description: |
|
description: 'Represents an OAI-PMH Set (collection) available for selective harvesting.
|
||||||
Represents an OAI-PMH Set (collection) available for selective harvesting.
|
|
||||||
|
|
||||||
Sets provide hierarchical organization of records, allowing harvesters
|
Sets provide hierarchical organization of records, allowing harvesters
|
||||||
|
|
||||||
to request records from specific collections.
|
to request records from specific collections.
|
||||||
|
|
||||||
|
|
||||||
Set hierarchies use colon separator: "category:subcategory:item"
|
Set hierarchies use colon separator: "category:subcategory:item"
|
||||||
|
|
||||||
|
'
|
||||||
attributes:
|
attributes:
|
||||||
spec:
|
spec:
|
||||||
slot_uri: dcterms:identifier
|
slot_uri: dcterms:identifier
|
||||||
description: |
|
description: 'Set specification (setSpec).
|
||||||
Set specification (setSpec).
|
|
||||||
|
|
||||||
Machine-readable identifier used in OAI-PMH requests.
|
Machine-readable identifier used in OAI-PMH requests.
|
||||||
|
|
||||||
|
|
||||||
Hierarchy indicated by colons (e.g., "photo:portraits:19th-century").
|
Hierarchy indicated by colons (e.g., "photo:portraits:19th-century").
|
||||||
|
|
||||||
|
|
||||||
Example: "foto"
|
Example: "foto"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
name:
|
name:
|
||||||
slot_uri: schema:name
|
slot_uri: schema:name
|
||||||
description: |
|
description: 'Human-readable set name (setName).
|
||||||
Human-readable set name (setName).
|
|
||||||
|
|
||||||
Example: "Fotografische documenten"
|
Example: "Fotografische documenten"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
set_description:
|
set_description:
|
||||||
slot_uri: dcterms:description
|
slot_uri: dcterms:description
|
||||||
description: |
|
description: 'Optional description of the set contents.
|
||||||
Optional description of the set contents.
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
parent_spec:
|
parent_spec:
|
||||||
slot_uri: schema:isPartOf
|
slot_uri: schema:isPartOf
|
||||||
description: |
|
description: 'Parent set specification for hierarchical sets.
|
||||||
Parent set specification for hierarchical sets.
|
|
||||||
|
|
||||||
If spec is "photo:portraits", parent_spec would be "photo".
|
If spec is "photo:portraits", parent_spec would be "photo".
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
record_count:
|
record_count:
|
||||||
slot_uri: schema:numberOfItems
|
slot_uri: schema:numberOfItems
|
||||||
description: |
|
description: 'Approximate number of records in this set.
|
||||||
Approximate number of records in this set.
|
|
||||||
|
|
||||||
Not part of OAI-PMH spec but useful if available.
|
Not part of OAI-PMH spec but useful if available.
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
|
|
@ -338,53 +382,3 @@ classes:
|
||||||
template_specificity:
|
template_specificity:
|
||||||
range: TemplateSpecificityScores
|
range: TemplateSpecificityScores
|
||||||
inlined: true
|
inlined: true
|
||||||
enums:
|
|
||||||
OAIDeletedRecordPolicyEnum:
|
|
||||||
description: |
|
|
||||||
OAI-PMH deleted record support policy.
|
|
||||||
|
|
||||||
Determines how the repository handles records that have been deleted.
|
|
||||||
permissible_values:
|
|
||||||
false:
|
|
||||||
description: |
|
|
||||||
Repository does not maintain information about deletions.
|
|
||||||
|
|
||||||
No "deleted" status will ever be returned.
|
|
||||||
Harvesters cannot detect deleted records.
|
|
||||||
TRANSIENT:
|
|
||||||
description: |
|
|
||||||
Repository maintains deleted records for an unspecified period.
|
|
||||||
|
|
||||||
Harvesters may see "deleted" status, but it's not guaranteed
|
|
||||||
to persist indefinitely.
|
|
||||||
PERSISTENT:
|
|
||||||
description: |
|
|
||||||
Repository persistently maintains deleted records.
|
|
||||||
|
|
||||||
Once a record is assigned "deleted" status, it remains
|
|
||||||
queryable with that status.
|
|
||||||
|
|
||||||
Recommended for reliable incremental harvesting.
|
|
||||||
OAIGranularityEnum:
|
|
||||||
description: |
|
|
||||||
OAI-PMH datestamp granularity.
|
|
||||||
|
|
||||||
Determines the precision of date/time values used in
|
|
||||||
selective harvesting (from/until parameters).
|
|
||||||
permissible_values:
|
|
||||||
YYYY_MM_DD:
|
|
||||||
description: |
|
|
||||||
Day-level granularity.
|
|
||||||
|
|
||||||
Format: YYYY-MM-DD
|
|
||||||
|
|
||||||
Example: "2025-12-14"
|
|
||||||
YYYY_MM_DD_THH_MM_SS_Z:
|
|
||||||
description: |
|
|
||||||
Second-level granularity.
|
|
||||||
|
|
||||||
Format: YYYY-MM-DDThh:mm:ssZ
|
|
||||||
|
|
||||||
Example: "2025-12-14T10:30:00Z"
|
|
||||||
|
|
||||||
Note: Must use UTC (Z suffix).
|
|
||||||
|
|
|
||||||
|
|
@ -1,76 +0,0 @@
|
||||||
id: https://nde.nl/ontology/hc/class/OAIPMHSet
|
|
||||||
name: oai_pmh_set
|
|
||||||
title: OAIPMHSet Class
|
|
||||||
prefixes:
|
|
||||||
linkml: https://w3id.org/linkml/
|
|
||||||
hc: https://nde.nl/ontology/hc/
|
|
||||||
dcterms: http://purl.org/dc/terms/
|
|
||||||
schema: http://schema.org/
|
|
||||||
imports:
|
|
||||||
- linkml:types
|
|
||||||
- ../slots/specificity_annotation
|
|
||||||
- ./SpecificityAnnotation
|
|
||||||
- ../slots/template_specificity
|
|
||||||
- ./TemplateSpecificityScores
|
|
||||||
default_prefix: hc
|
|
||||||
|
|
||||||
classes:
|
|
||||||
OAIPMHSet:
|
|
||||||
class_uri: hc:OAIPMHSet
|
|
||||||
description: |
|
|
||||||
Represents an OAI-PMH Set (collection) available for selective harvesting.
|
|
||||||
|
|
||||||
Sets provide hierarchical organization of records, allowing harvesters
|
|
||||||
to request records from specific collections.
|
|
||||||
|
|
||||||
Set hierarchies use colon separator: "category:subcategory:item"
|
|
||||||
attributes:
|
|
||||||
spec:
|
|
||||||
slot_uri: dcterms:identifier
|
|
||||||
description: |
|
|
||||||
Set specification (setSpec).
|
|
||||||
|
|
||||||
Machine-readable identifier used in OAI-PMH requests.
|
|
||||||
|
|
||||||
Hierarchy indicated by colons (e.g., "photo:portraits:19th-century").
|
|
||||||
|
|
||||||
Example: "foto"
|
|
||||||
range: string
|
|
||||||
required: true
|
|
||||||
name:
|
|
||||||
slot_uri: schema:name
|
|
||||||
description: |
|
|
||||||
Human-readable set name (setName).
|
|
||||||
|
|
||||||
Example: "Fotografische documenten"
|
|
||||||
range: string
|
|
||||||
required: true
|
|
||||||
set_description:
|
|
||||||
slot_uri: dcterms:description
|
|
||||||
description: |
|
|
||||||
Optional description of the set contents.
|
|
||||||
range: string
|
|
||||||
parent_spec:
|
|
||||||
slot_uri: schema:isPartOf
|
|
||||||
description: |
|
|
||||||
Parent set specification for hierarchical sets.
|
|
||||||
|
|
||||||
If spec is "photo:portraits", parent_spec would be "photo".
|
|
||||||
range: string
|
|
||||||
record_count:
|
|
||||||
slot_uri: schema:numberOfItems
|
|
||||||
description: |
|
|
||||||
Approximate number of records in this set.
|
|
||||||
|
|
||||||
Not part of OAI-PMH spec but useful if available.
|
|
||||||
range: integer
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
slot_usage:
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
|
|
@ -25,128 +25,9 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/PersonClaimTypeEnum
|
||||||
|
- ../enums/RetrievalAgentEnum
|
||||||
default_prefix: hc
|
default_prefix: hc
|
||||||
enums:
|
|
||||||
PersonClaimTypeEnum:
|
|
||||||
description: 'Types of claims that can be extracted about persons from web pages.
|
|
||||||
|
|
||||||
Each claim type has expected source locations in institutional pages.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
full_name:
|
|
||||||
description: Full name of the person
|
|
||||||
comments:
|
|
||||||
- 'Expected in: staff directory, about page, h2/h3 headings'
|
|
||||||
given_name:
|
|
||||||
description: First/given name only
|
|
||||||
comments:
|
|
||||||
- May be parsed from full_name
|
|
||||||
family_name:
|
|
||||||
description: Family/surname only
|
|
||||||
comments:
|
|
||||||
- May be parsed from full_name
|
|
||||||
role_title:
|
|
||||||
description: Job title or role within organization
|
|
||||||
comments:
|
|
||||||
- 'Expected in: staff directory, org chart, biography section'
|
|
||||||
department:
|
|
||||||
description: Department or division name
|
|
||||||
comments:
|
|
||||||
- 'Expected in: staff directory, org chart'
|
|
||||||
email:
|
|
||||||
description: Professional email address
|
|
||||||
comments:
|
|
||||||
- 'Expected in: staff directory, contact section'
|
|
||||||
- Only include if publicly listed
|
|
||||||
phone:
|
|
||||||
description: Professional phone number
|
|
||||||
comments:
|
|
||||||
- 'Expected in: staff directory, contact section'
|
|
||||||
- Only include if publicly listed
|
|
||||||
biography:
|
|
||||||
description: Professional biography text
|
|
||||||
comments:
|
|
||||||
- 'Expected in: staff page, about section'
|
|
||||||
specialization:
|
|
||||||
description: Area of expertise or specialization
|
|
||||||
comments:
|
|
||||||
- 'Expected in: biography, staff profile, research interests'
|
|
||||||
education:
|
|
||||||
description: Educational background or degrees
|
|
||||||
comments:
|
|
||||||
- 'Expected in: biography, CV section'
|
|
||||||
- 'Example: ''PhD Art History, University of Amsterdam'''
|
|
||||||
start_date:
|
|
||||||
description: Date when person started current role
|
|
||||||
comments:
|
|
||||||
- 'Expected in: biography, news announcements'
|
|
||||||
- 'Format: ISO 8601 date'
|
|
||||||
end_date:
|
|
||||||
description: Date when person ended role (if applicable)
|
|
||||||
comments:
|
|
||||||
- 'Expected in: historical records, farewell announcements'
|
|
||||||
photo_url:
|
|
||||||
description: URL to profile photo
|
|
||||||
comments:
|
|
||||||
- 'Expected in: staff directory, biography page'
|
|
||||||
- 'For LinkedIn: use CDN URL (media.licdn.com), not overlay page'
|
|
||||||
linkedin_url:
|
|
||||||
description: LinkedIn profile URL
|
|
||||||
comments:
|
|
||||||
- 'Expected in: staff page footer, social links'
|
|
||||||
orcid:
|
|
||||||
description: ORCID researcher identifier
|
|
||||||
comments:
|
|
||||||
- 'Expected in: research publications, CV section'
|
|
||||||
- 'Format: 0000-0000-0000-0000'
|
|
||||||
twitter_handle:
|
|
||||||
description: Twitter/X handle
|
|
||||||
comments:
|
|
||||||
- 'Expected in: social media section, footer'
|
|
||||||
previous_employer:
|
|
||||||
description: Previous organization where person worked
|
|
||||||
comments:
|
|
||||||
- 'Expected in: biography, LinkedIn experience'
|
|
||||||
publication:
|
|
||||||
description: Citation or link to publication
|
|
||||||
comments:
|
|
||||||
- 'Expected in: publications list, CV'
|
|
||||||
award:
|
|
||||||
description: Professional award or recognition
|
|
||||||
comments:
|
|
||||||
- 'Expected in: biography, awards section'
|
|
||||||
language_proficiency:
|
|
||||||
description: Language the person speaks
|
|
||||||
comments:
|
|
||||||
- 'Expected in: LinkedIn profile, CV'
|
|
||||||
RetrievalAgentEnum:
|
|
||||||
description: 'Tools/agents used to retrieve and extract person data.
|
|
||||||
|
|
||||||
Must match the tool that was actually used for extraction.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
firecrawl:
|
|
||||||
description: FireCrawl MCP tools for web scraping
|
|
||||||
comments:
|
|
||||||
- Primary tool for institutional websites
|
|
||||||
playwright:
|
|
||||||
description: Playwright browser automation
|
|
||||||
comments:
|
|
||||||
- For JavaScript-heavy sites requiring browser rendering
|
|
||||||
exa_crawling_exa:
|
|
||||||
description: Exa AI crawling with direct URL
|
|
||||||
comments:
|
|
||||||
- Primary tool for LinkedIn profile extraction
|
|
||||||
exa_linkedin_search_exa:
|
|
||||||
description: Exa AI LinkedIn search
|
|
||||||
comments:
|
|
||||||
- For finding LinkedIn profiles when URL unknown
|
|
||||||
manual:
|
|
||||||
description: Manual inspection and copy
|
|
||||||
comments:
|
|
||||||
- Last resort - document why automated tools failed
|
|
||||||
classes:
|
classes:
|
||||||
PersonWebClaim:
|
PersonWebClaim:
|
||||||
class_uri: prov:Entity
|
class_uri: prov:Entity
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,7 @@ imports:
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
- ../slots/has_annex_identifier
|
- ../slots/has_annex_identifier
|
||||||
|
- ../enums/ReadingRoomAnnexReasonEnum
|
||||||
prefixes:
|
prefixes:
|
||||||
linkml: https://w3id.org/linkml/
|
linkml: https://w3id.org/linkml/
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
@ -328,17 +329,3 @@ classes:
|
||||||
is_temporary: true
|
is_temporary: true
|
||||||
planned_closure_date: '2025-06-30'
|
planned_closure_date: '2025-06-30'
|
||||||
description: Temporary renovation annex
|
description: Temporary renovation annex
|
||||||
enums:
|
|
||||||
ReadingRoomAnnexReasonEnum:
|
|
||||||
description: Reasons for establishing a reading room annex
|
|
||||||
permissible_values:
|
|
||||||
CAPACITY_OVERFLOW:
|
|
||||||
description: Main reading room at capacity
|
|
||||||
SPECIALIZED_MATERIALS:
|
|
||||||
description: Serves specific material types (maps, newspapers, etc.)
|
|
||||||
GEOGRAPHIC_REACH:
|
|
||||||
description: Serves researchers in another geographic area
|
|
||||||
RENOVATION:
|
|
||||||
description: Temporary annex during main building renovation
|
|
||||||
PARTNERSHIP:
|
|
||||||
description: Shared space with another institution
|
|
||||||
|
|
|
||||||
|
|
@ -16,47 +16,24 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/RegistrationAuthorityGovernanceEnum
|
||||||
classes:
|
classes:
|
||||||
RegistrationAuthority:
|
RegistrationAuthority:
|
||||||
class_uri: gleif_base:RegistrationAuthority
|
class_uri: gleif_base:RegistrationAuthority
|
||||||
description: |
|
description: "An organization that maintains the GLOBAL registry for an identifier standard.\n\n**Key Distinction from\
|
||||||
An organization that maintains the GLOBAL registry for an identifier standard.
|
\ AllocationAgency:**\n\n- **RegistrationAuthority**: Single authoritative maintainer of the global registry\n - Ensures\
|
||||||
|
\ uniqueness across all identifiers\n - Publishes the authoritative dataset\n - Defines governance and policies\n\n\
|
||||||
**Key Distinction from AllocationAgency:**
|
- **AllocationAgency**: Allocates identifiers locally within constraints set by RegistrationAuthority\n - Multiple\
|
||||||
|
\ agencies per standard (one per country/domain)\n - Reports allocations to RegistrationAuthority\n - Follows policies\
|
||||||
- **RegistrationAuthority**: Single authoritative maintainer of the global registry
|
\ set by RegistrationAuthority\n\n**Examples:**\n\n| Standard | Registration Authority | AllocationAgencies |\n|----------|------------------------|---------------------|\n\
|
||||||
- Ensures uniqueness across all identifiers
|
| ISIL (ISO 15511) | Danish Agency for Culture and Palaces | KB (NL), BL (UK), LOC (US), etc. |\n| ISNI (ISO 27729)\
|
||||||
- Publishes the authoritative dataset
|
\ | ISNI International Agency (WIPO) | DNB, BnF, OCLC, etc. |\n| VIAF | OCLC | (contributing agencies, not allocators)\
|
||||||
- Defines governance and policies
|
\ |\n| Wikidata | Wikimedia Foundation | (community-allocated) |\n| ROR | ROR Steering Group | (community-allocated)\
|
||||||
|
\ |\n\n**ISIL Registration Authority History:**\n\nThe ISIL global registry has been maintained by:\n1. **Before 2019**:\
|
||||||
- **AllocationAgency**: Allocates identifiers locally within constraints set by RegistrationAuthority
|
\ Danish Agency for Library and Media (DALM)\n2. **2019-present**: Danish Agency for Culture and Palaces (Slots- og\
|
||||||
- Multiple agencies per standard (one per country/domain)
|
\ Kulturstyrelsen)\n\nThe registry is published at: https://sigel.info/\n\n**Ontology Alignment:**\n\n- gleif_base:RegistrationAuthority\
|
||||||
- Reports allocations to RegistrationAuthority
|
\ - GLEIF Legal Entity Identifier ontology\n- org:FormalOrganization - W3C Organization Ontology\n- schema:Organization\
|
||||||
- Follows policies set by RegistrationAuthority
|
\ - Schema.org\n"
|
||||||
|
|
||||||
**Examples:**
|
|
||||||
|
|
||||||
| Standard | Registration Authority | AllocationAgencies |
|
|
||||||
|----------|------------------------|---------------------|
|
|
||||||
| ISIL (ISO 15511) | Danish Agency for Culture and Palaces | KB (NL), BL (UK), LOC (US), etc. |
|
|
||||||
| ISNI (ISO 27729) | ISNI International Agency (WIPO) | DNB, BnF, OCLC, etc. |
|
|
||||||
| VIAF | OCLC | (contributing agencies, not allocators) |
|
|
||||||
| Wikidata | Wikimedia Foundation | (community-allocated) |
|
|
||||||
| ROR | ROR Steering Group | (community-allocated) |
|
|
||||||
|
|
||||||
**ISIL Registration Authority History:**
|
|
||||||
|
|
||||||
The ISIL global registry has been maintained by:
|
|
||||||
1. **Before 2019**: Danish Agency for Library and Media (DALM)
|
|
||||||
2. **2019-present**: Danish Agency for Culture and Palaces (Slots- og Kulturstyrelsen)
|
|
||||||
|
|
||||||
The registry is published at: https://sigel.info/
|
|
||||||
|
|
||||||
**Ontology Alignment:**
|
|
||||||
|
|
||||||
- gleif_base:RegistrationAuthority - GLEIF Legal Entity Identifier ontology
|
|
||||||
- org:FormalOrganization - W3C Organization Ontology
|
|
||||||
- schema:Organization - Schema.org
|
|
||||||
exact_mappings:
|
exact_mappings:
|
||||||
- gleif_base:RegistrationAuthority
|
- gleif_base:RegistrationAuthority
|
||||||
close_mappings:
|
close_mappings:
|
||||||
|
|
@ -66,151 +43,212 @@ classes:
|
||||||
id:
|
id:
|
||||||
identifier: true
|
identifier: true
|
||||||
slot_uri: schema:identifier
|
slot_uri: schema:identifier
|
||||||
description: |
|
description: 'Unique identifier for this registration authority.
|
||||||
Unique identifier for this registration authority.
|
|
||||||
|
|
||||||
Recommended format: lowercase abbreviation.
|
Recommended format: lowercase abbreviation.
|
||||||
|
|
||||||
|
|
||||||
Examples: "dacp", "isni-ia", "oclc", "wikimedia"
|
Examples: "dacp", "isni-ia", "oclc", "wikimedia"
|
||||||
|
|
||||||
|
'
|
||||||
range: uriorcurie
|
range: uriorcurie
|
||||||
required: true
|
required: true
|
||||||
name:
|
name:
|
||||||
slot_uri: schema:name
|
slot_uri: schema:name
|
||||||
description: |
|
description: 'Official full name of the registration authority.
|
||||||
Official full name of the registration authority.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "Danish Agency for Culture and Palaces"
|
- "Danish Agency for Culture and Palaces"
|
||||||
|
|
||||||
- "ISNI International Agency"
|
- "ISNI International Agency"
|
||||||
|
|
||||||
- "OCLC"
|
- "OCLC"
|
||||||
|
|
||||||
- "Wikimedia Foundation"
|
- "Wikimedia Foundation"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
name_local:
|
name_local:
|
||||||
slot_uri: schema:alternateName
|
slot_uri: schema:alternateName
|
||||||
description: |
|
description: 'Name in local language (if different from English name).
|
||||||
Name in local language (if different from English name).
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "Slots- og Kulturstyrelsen" (Danish)
|
- "Slots- og Kulturstyrelsen" (Danish)
|
||||||
|
|
||||||
- "Online Computer Library Center" (full form of OCLC)
|
- "Online Computer Library Center" (full form of OCLC)
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
has_or_had_abbreviation:
|
has_or_had_abbreviation:
|
||||||
slot_uri: schema:alternateName
|
slot_uri: schema:alternateName
|
||||||
description: |
|
description: 'Common abbreviation.
|
||||||
Common abbreviation.
|
|
||||||
|
|
||||||
Examples: "DACP", "ISNI-IA", "OCLC", "WMF"
|
Examples: "DACP", "ISNI-IA", "OCLC", "WMF"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
country:
|
country:
|
||||||
slot_uri: schema:location
|
slot_uri: schema:location
|
||||||
description: |
|
description: 'Country where the registration authority is based (ISO 3166-1 alpha-2).
|
||||||
Country where the registration authority is based (ISO 3166-1 alpha-2).
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "DK" (Danish Agency for Culture and Palaces)
|
- "DK" (Danish Agency for Culture and Palaces)
|
||||||
|
|
||||||
- "CH" (WIPO/ISNI-IA in Geneva)
|
- "CH" (WIPO/ISNI-IA in Geneva)
|
||||||
|
|
||||||
- "US" (OCLC, Wikimedia Foundation)
|
- "US" (OCLC, Wikimedia Foundation)
|
||||||
|
|
||||||
|
'
|
||||||
range: Country
|
range: Country
|
||||||
required: true
|
required: true
|
||||||
inlined: false
|
inlined: false
|
||||||
registry_url:
|
registry_url:
|
||||||
slot_uri: schema:url
|
slot_uri: schema:url
|
||||||
description: |
|
description: 'URL to the official registry or lookup service.
|
||||||
URL to the official registry or lookup service.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- ISIL: https://sigel.info/
|
- ISIL: https://sigel.info/
|
||||||
|
|
||||||
- ISNI: https://isni.org/
|
- ISNI: https://isni.org/
|
||||||
|
|
||||||
- VIAF: https://viaf.org/
|
- VIAF: https://viaf.org/
|
||||||
|
|
||||||
- Wikidata: https://www.wikidata.org/
|
- Wikidata: https://www.wikidata.org/
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
required: true
|
required: true
|
||||||
api_url:
|
api_url:
|
||||||
slot_uri: schema:url
|
slot_uri: schema:url
|
||||||
description: |
|
description: 'URL to the API or data service (if available).
|
||||||
URL to the API or data service (if available).
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- VIAF: https://viaf.org/viaf/search
|
- VIAF: https://viaf.org/viaf/search
|
||||||
|
|
||||||
- Wikidata: https://www.wikidata.org/w/api.php
|
- Wikidata: https://www.wikidata.org/w/api.php
|
||||||
|
|
||||||
- ISNI: https://isni.org/isni/
|
- ISNI: https://isni.org/isni/
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
sparql_endpoint:
|
sparql_endpoint:
|
||||||
slot_uri: schema:url
|
slot_uri: schema:url
|
||||||
description: |
|
description: 'SPARQL endpoint URL (if available for Linked Data).
|
||||||
SPARQL endpoint URL (if available for Linked Data).
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- Wikidata: https://query.wikidata.org/sparql
|
- Wikidata: https://query.wikidata.org/sparql
|
||||||
|
|
||||||
- VIAF: (via OCLC Research)
|
- VIAF: (via OCLC Research)
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
data_license:
|
data_license:
|
||||||
slot_uri: schema:license
|
slot_uri: schema:license
|
||||||
description: |
|
description: 'License for data from this registry.
|
||||||
License for data from this registry.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- VIAF: ODC-BY
|
- VIAF: ODC-BY
|
||||||
|
|
||||||
- Wikidata: CC0
|
- Wikidata: CC0
|
||||||
|
|
||||||
- ISNI: varies
|
- ISNI: varies
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
governance_type:
|
governance_type:
|
||||||
slot_uri: schema:additionalType
|
slot_uri: schema:additionalType
|
||||||
description: |
|
description: 'Type of governance for the registry.
|
||||||
Type of governance for the registry.
|
|
||||||
|
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
- GOVERNMENT: Government agency (DACP for ISIL)
|
- GOVERNMENT: Government agency (DACP for ISIL)
|
||||||
|
|
||||||
- INTERGOVERNMENTAL: UN agency or similar (WIPO for ISNI)
|
- INTERGOVERNMENTAL: UN agency or similar (WIPO for ISNI)
|
||||||
|
|
||||||
- NONPROFIT: Non-profit organization (OCLC, Wikimedia)
|
- NONPROFIT: Non-profit organization (OCLC, Wikimedia)
|
||||||
|
|
||||||
- CONSORTIUM: Multi-stakeholder consortium (ROR)
|
- CONSORTIUM: Multi-stakeholder consortium (ROR)
|
||||||
|
|
||||||
|
'
|
||||||
range: RegistrationAuthorityGovernanceEnum
|
range: RegistrationAuthorityGovernanceEnum
|
||||||
required: true
|
required: true
|
||||||
established_year:
|
established_year:
|
||||||
slot_uri: schema:foundingDate
|
slot_uri: schema:foundingDate
|
||||||
description: |
|
description: 'Year the registration authority was established or took over the registry.
|
||||||
Year the registration authority was established or took over the registry.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- ISNI-IA: 2010
|
- ISNI-IA: 2010
|
||||||
|
|
||||||
- VIAF (OCLC): 2012 (transferred from LOC partnership)
|
- VIAF (OCLC): 2012 (transferred from LOC partnership)
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
predecessor:
|
predecessor:
|
||||||
slot_uri: schema:predecessorOrganization
|
slot_uri: schema:predecessorOrganization
|
||||||
description: |
|
description: 'Previous registration authority (if registry was transferred).
|
||||||
Previous registration authority (if registry was transferred).
|
|
||||||
|
|
||||||
Example: Danish Agency for Library and Media → Danish Agency for Culture and Palaces
|
Example: Danish Agency for Library and Media → Danish Agency for Culture and Palaces
|
||||||
|
|
||||||
|
'
|
||||||
range: RegistrationAuthority
|
range: RegistrationAuthority
|
||||||
inlined: false
|
inlined: false
|
||||||
standards_maintained:
|
standards_maintained:
|
||||||
slot_uri: schema:hasPart
|
slot_uri: schema:hasPart
|
||||||
description: |
|
description: 'Standards for which this authority maintains the global registry.
|
||||||
Standards for which this authority maintains the global registry.
|
|
||||||
|
|
||||||
Most authorities maintain a single standard, but some handle multiple.
|
Most authorities maintain a single standard, but some handle multiple.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- OCLC: [VIAF, WorldCat, FAST]
|
- OCLC: [VIAF, WorldCat, FAST]
|
||||||
|
|
||||||
- DACP: [ISIL]
|
- DACP: [ISIL]
|
||||||
|
|
||||||
|
'
|
||||||
range: Standard
|
range: Standard
|
||||||
multivalued: true
|
multivalued: true
|
||||||
inlined: false
|
inlined: false
|
||||||
allocation_agencies:
|
allocation_agencies:
|
||||||
slot_uri: schema:hasOfferCatalog
|
slot_uri: schema:hasOfferCatalog
|
||||||
description: |
|
description: 'Allocation agencies that report to this registration authority.
|
||||||
Allocation agencies that report to this registration authority.
|
|
||||||
|
|
||||||
For standards with distributed allocation (like ISIL),
|
For standards with distributed allocation (like ISIL),
|
||||||
|
|
||||||
this lists all national/domain agencies.
|
this lists all national/domain agencies.
|
||||||
|
|
||||||
|
'
|
||||||
range: AllocationAgency
|
range: AllocationAgency
|
||||||
multivalued: true
|
multivalued: true
|
||||||
inlined: false
|
inlined: false
|
||||||
website:
|
website:
|
||||||
slot_uri: schema:url
|
slot_uri: schema:url
|
||||||
description: |
|
description: 'Official website of the organization (may differ from registry URL).
|
||||||
Official website of the organization (may differ from registry URL).
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
authority_description:
|
authority_description:
|
||||||
slot_uri: schema:description
|
slot_uri: schema:description
|
||||||
|
|
@ -218,13 +256,18 @@ classes:
|
||||||
range: string
|
range: string
|
||||||
wikidata_id:
|
wikidata_id:
|
||||||
slot_uri: schema:sameAs
|
slot_uri: schema:sameAs
|
||||||
description: |
|
description: 'Wikidata Q-ID for this registration authority.
|
||||||
Wikidata Q-ID for this registration authority.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- OCLC: Q190593
|
- OCLC: Q190593
|
||||||
|
|
||||||
- Wikimedia Foundation: Q180
|
- Wikimedia Foundation: Q180
|
||||||
|
|
||||||
- Danish Agency for Culture and Palaces: Q12324270
|
- Danish Agency for Culture and Palaces: Q12324270
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
pattern: ^Q[0-9]+$
|
pattern: ^Q[0-9]+$
|
||||||
slots:
|
slots:
|
||||||
|
|
@ -237,44 +280,3 @@ classes:
|
||||||
template_specificity:
|
template_specificity:
|
||||||
range: TemplateSpecificityScores
|
range: TemplateSpecificityScores
|
||||||
inlined: true
|
inlined: true
|
||||||
enums:
|
|
||||||
RegistrationAuthorityGovernanceEnum:
|
|
||||||
description: Type of governance for a registration authority
|
|
||||||
permissible_values:
|
|
||||||
GOVERNMENT:
|
|
||||||
description: |
|
|
||||||
Government agency maintaining the registry.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- Danish Agency for Culture and Palaces (ISIL)
|
|
||||||
- Library of Congress (LCNAF)
|
|
||||||
- National Diet Library (NDL)
|
|
||||||
INTERGOVERNMENTAL:
|
|
||||||
description: |
|
|
||||||
Intergovernmental organization (UN agency, etc.).
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- WIPO (ISNI International Agency)
|
|
||||||
- UNESCO
|
|
||||||
NONPROFIT:
|
|
||||||
description: |
|
|
||||||
Non-profit organization.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- OCLC (VIAF)
|
|
||||||
- Wikimedia Foundation (Wikidata)
|
|
||||||
- Getty Research Institute (ULAN, AAT, TGN)
|
|
||||||
CONSORTIUM:
|
|
||||||
description: |
|
|
||||||
Multi-stakeholder consortium.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- ROR Steering Group
|
|
||||||
- ORCID
|
|
||||||
- Crossref/DataCite
|
|
||||||
COMMERCIAL:
|
|
||||||
description: |
|
|
||||||
Commercial organization operating a registry.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- Ringgold (organizational identifiers for publishing)
|
|
||||||
|
|
|
||||||
|
|
@ -19,239 +19,236 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/PaginationMethodEnum
|
||||||
|
- ../enums/HTTPMethodEnum
|
||||||
|
- ../enums/SearchResponseFormatEnum
|
||||||
classes:
|
classes:
|
||||||
SearchAPI:
|
SearchAPI:
|
||||||
is_a: DataServiceEndpoint
|
is_a: DataServiceEndpoint
|
||||||
class_uri: hc:SearchAPI
|
class_uri: hc:SearchAPI
|
||||||
description: |
|
description: "REST/JSON search API endpoint for heritage collection discovery.\n\n**Purpose:**\n\nModels search APIs that\
|
||||||
REST/JSON search API endpoint for heritage collection discovery.
|
\ provide programmatic access to collection search\nfunctionality. These APIs enable:\n- Custom search interface development\n\
|
||||||
|
- Integration with aggregation platforms\n- Automated data discovery\n- Faceted search and filtering\n\n**Common Patterns:**\n\
|
||||||
**Purpose:**
|
\nHeritage search APIs typically support:\n- **Full-text search**: Query across all fields\n- **Field-specific search**:\
|
||||||
|
\ Query specific metadata fields\n- **Faceted search**: Filter by category, date, type, etc.\n- **Pagination**: Navigate\
|
||||||
Models search APIs that provide programmatic access to collection search
|
\ large result sets\n- **Sorting**: Order results by relevance, date, etc.\n\n**Example - Nationaal Archief Search API:**\n\
|
||||||
functionality. These APIs enable:
|
\n```yaml\nsearch_api:\n endpoint_name: \"Nationaal Archief Search API\"\n endpoint_url: \"https://www.nationaalarchief.nl/onderzoeken/api/zoeken\"\
|
||||||
- Custom search interface development
|
\n protocol: REST\n query_parameters:\n - name: \"q\"\n type: \"string\"\n description: \"Full-text search\
|
||||||
- Integration with aggregation platforms
|
\ query\"\n - name: \"from\"\n type: \"integer\"\n description: \"Pagination offset\"\n - name: \"size\"\
|
||||||
- Automated data discovery
|
\n type: \"integer\"\n description: \"Results per page\"\n pagination_method: OFFSET_LIMIT\n max_results_per_page:\
|
||||||
- Faceted search and filtering
|
\ 100\n response_format: JSON\n supports_facets: true\n facet_fields: [\"type\", \"periode\", \"archief\"]\n```\n\
|
||||||
|
\n**Response Structure:**\n\nMost heritage search APIs return JSON with:\n- `total`: Total number of matching records\n\
|
||||||
**Common Patterns:**
|
- `results`/`items`/`records`: Array of result objects\n- `facets`: Aggregation counts for filtering\n- `pagination`:\
|
||||||
|
\ Links or cursors for paging\n\n**See Also:**\n\n- OpenSearch: https://opensearch.org/\n- Hydra API vocabulary: https://www.hydra-cg.com/\n"
|
||||||
Heritage search APIs typically support:
|
|
||||||
- **Full-text search**: Query across all fields
|
|
||||||
- **Field-specific search**: Query specific metadata fields
|
|
||||||
- **Faceted search**: Filter by category, date, type, etc.
|
|
||||||
- **Pagination**: Navigate large result sets
|
|
||||||
- **Sorting**: Order results by relevance, date, etc.
|
|
||||||
|
|
||||||
**Example - Nationaal Archief Search API:**
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
search_api:
|
|
||||||
endpoint_name: "Nationaal Archief Search API"
|
|
||||||
endpoint_url: "https://www.nationaalarchief.nl/onderzoeken/api/zoeken"
|
|
||||||
protocol: REST
|
|
||||||
query_parameters:
|
|
||||||
- name: "q"
|
|
||||||
type: "string"
|
|
||||||
description: "Full-text search query"
|
|
||||||
- name: "from"
|
|
||||||
type: "integer"
|
|
||||||
description: "Pagination offset"
|
|
||||||
- name: "size"
|
|
||||||
type: "integer"
|
|
||||||
description: "Results per page"
|
|
||||||
pagination_method: OFFSET_LIMIT
|
|
||||||
max_results_per_page: 100
|
|
||||||
response_format: JSON
|
|
||||||
supports_facets: true
|
|
||||||
facet_fields: ["type", "periode", "archief"]
|
|
||||||
```
|
|
||||||
|
|
||||||
**Response Structure:**
|
|
||||||
|
|
||||||
Most heritage search APIs return JSON with:
|
|
||||||
- `total`: Total number of matching records
|
|
||||||
- `results`/`items`/`records`: Array of result objects
|
|
||||||
- `facets`: Aggregation counts for filtering
|
|
||||||
- `pagination`: Links or cursors for paging
|
|
||||||
|
|
||||||
**See Also:**
|
|
||||||
|
|
||||||
- OpenSearch: https://opensearch.org/
|
|
||||||
- Hydra API vocabulary: https://www.hydra-cg.com/
|
|
||||||
attributes:
|
attributes:
|
||||||
search_url:
|
search_url:
|
||||||
slot_uri: dcat:endpointURL
|
slot_uri: dcat:endpointURL
|
||||||
description: |
|
description: 'Search endpoint URL.
|
||||||
Search endpoint URL.
|
|
||||||
|
|
||||||
The base URL for search requests. Query parameters are appended.
|
The base URL for search requests. Query parameters are appended.
|
||||||
|
|
||||||
|
|
||||||
Example: "https://www.nationaalarchief.nl/onderzoeken/api/zoeken"
|
Example: "https://www.nationaalarchief.nl/onderzoeken/api/zoeken"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
required: true
|
required: true
|
||||||
query_parameters:
|
query_parameters:
|
||||||
slot_uri: hydra:mapping
|
slot_uri: hydra:mapping
|
||||||
description: |
|
description: "Query parameters supported by this search API.\n\nDocuments the available search parameters, their types,\
|
||||||
Query parameters supported by this search API.
|
\ and usage.\n\nExample:\n```yaml\nquery_parameters:\n - name: \"q\"\n type: \"string\"\n required: true\n\
|
||||||
|
\ description: \"Full-text query\"\n - name: \"type\"\n type: \"string\"\n description: \"Filter by record\
|
||||||
Documents the available search parameters, their types, and usage.
|
\ type\"\n```\n"
|
||||||
|
|
||||||
Example:
|
|
||||||
```yaml
|
|
||||||
query_parameters:
|
|
||||||
- name: "q"
|
|
||||||
type: "string"
|
|
||||||
required: true
|
|
||||||
description: "Full-text query"
|
|
||||||
- name: "type"
|
|
||||||
type: "string"
|
|
||||||
description: "Filter by record type"
|
|
||||||
```
|
|
||||||
range: SearchQueryParameter
|
range: SearchQueryParameter
|
||||||
multivalued: true
|
multivalued: true
|
||||||
inlined_as_list: true
|
inlined_as_list: true
|
||||||
http_method:
|
http_method:
|
||||||
slot_uri: hydra:method
|
slot_uri: hydra:method
|
||||||
description: |
|
description: 'HTTP method(s) supported for search requests.
|
||||||
HTTP method(s) supported for search requests.
|
|
||||||
|
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
- GET: Query parameters in URL (most common)
|
- GET: Query parameters in URL (most common)
|
||||||
|
|
||||||
- POST: Query in request body (for complex queries)
|
- POST: Query in request body (for complex queries)
|
||||||
|
|
||||||
- BOTH: Supports both methods
|
- BOTH: Supports both methods
|
||||||
|
|
||||||
|
'
|
||||||
range: HTTPMethodEnum
|
range: HTTPMethodEnum
|
||||||
pagination_method:
|
pagination_method:
|
||||||
slot_uri: hydra:pageIndex
|
slot_uri: hydra:pageIndex
|
||||||
description: |
|
description: 'Pagination method used by this API.
|
||||||
Pagination method used by this API.
|
|
||||||
|
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
- OFFSET_LIMIT: Uses offset/start and limit/size parameters
|
- OFFSET_LIMIT: Uses offset/start and limit/size parameters
|
||||||
|
|
||||||
- PAGE_NUMBER: Uses page number and page size
|
- PAGE_NUMBER: Uses page number and page size
|
||||||
|
|
||||||
- CURSOR: Uses cursor/token for stateful pagination
|
- CURSOR: Uses cursor/token for stateful pagination
|
||||||
|
|
||||||
- LINK_HEADER: Uses HTTP Link headers (RFC 5988)
|
- LINK_HEADER: Uses HTTP Link headers (RFC 5988)
|
||||||
|
|
||||||
- NONE: No pagination (returns all results)
|
- NONE: No pagination (returns all results)
|
||||||
|
|
||||||
|
'
|
||||||
range: PaginationMethodEnum
|
range: PaginationMethodEnum
|
||||||
max_results_per_page:
|
max_results_per_page:
|
||||||
slot_uri: schema:maxValue
|
slot_uri: schema:maxValue
|
||||||
description: |
|
description: 'Maximum number of results per page.
|
||||||
Maximum number of results per page.
|
|
||||||
|
|
||||||
The API may return fewer results, but never more.
|
The API may return fewer results, but never more.
|
||||||
|
|
||||||
|
|
||||||
Example: 100
|
Example: 100
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
default_results_per_page:
|
default_results_per_page:
|
||||||
slot_uri: schema:defaultValue
|
slot_uri: schema:defaultValue
|
||||||
description: |
|
description: 'Default number of results returned per page if not specified.
|
||||||
Default number of results returned per page if not specified.
|
|
||||||
|
|
||||||
Example: 20
|
Example: 20
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
total_records:
|
total_records:
|
||||||
slot_uri: schema:numberOfItems
|
slot_uri: schema:numberOfItems
|
||||||
description: |
|
description: 'Total number of searchable records (approximate).
|
||||||
Total number of searchable records (approximate).
|
|
||||||
|
|
||||||
Example: 15000000
|
Example: 15000000
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
response_format:
|
response_format:
|
||||||
slot_uri: dcterms:format
|
slot_uri: dcterms:format
|
||||||
description: |
|
description: 'Primary response format.
|
||||||
Primary response format.
|
|
||||||
|
|
||||||
Most modern APIs use JSON.
|
Most modern APIs use JSON.
|
||||||
|
|
||||||
|
|
||||||
Values: JSON, XML, JSON_LD, HTML, CSV
|
Values: JSON, XML, JSON_LD, HTML, CSV
|
||||||
|
|
||||||
|
'
|
||||||
range: SearchResponseFormatEnum
|
range: SearchResponseFormatEnum
|
||||||
supports_facets:
|
supports_facets:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether the API supports faceted search.
|
||||||
Whether the API supports faceted search.
|
|
||||||
|
|
||||||
Faceted search allows filtering by categories (type, date, location, etc.)
|
Faceted search allows filtering by categories (type, date, location, etc.)
|
||||||
|
|
||||||
with counts for each facet value.
|
with counts for each facet value.
|
||||||
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
facet_fields:
|
facet_fields:
|
||||||
slot_uri: hydra:variable
|
slot_uri: hydra:variable
|
||||||
description: |
|
description: 'Fields available for faceted filtering.
|
||||||
Fields available for faceted filtering.
|
|
||||||
|
|
||||||
Example: ["type", "periode", "archief", "toegang"]
|
Example: ["type", "periode", "archief", "toegang"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
supports_sorting:
|
supports_sorting:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether the API supports custom sorting of results.
|
||||||
Whether the API supports custom sorting of results.
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
sort_fields:
|
sort_fields:
|
||||||
slot_uri: hydra:variable
|
slot_uri: hydra:variable
|
||||||
description: |
|
description: 'Fields available for sorting.
|
||||||
Fields available for sorting.
|
|
||||||
|
|
||||||
Example: ["relevance", "date", "title", "created"]
|
Example: ["relevance", "date", "title", "created"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
supports_boolean_operators:
|
supports_boolean_operators:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether the API supports boolean operators (AND, OR, NOT) in queries.
|
||||||
Whether the API supports boolean operators (AND, OR, NOT) in queries.
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
supports_phrase_search:
|
supports_phrase_search:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether the API supports phrase search (exact match using quotes).
|
||||||
Whether the API supports phrase search (exact match using quotes).
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
supports_wildcards:
|
supports_wildcards:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether the API supports wildcard characters (* or ?).
|
||||||
Whether the API supports wildcard characters (* or ?).
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
supports_field_search:
|
supports_field_search:
|
||||||
slot_uri: schema:additionalProperty
|
slot_uri: schema:additionalProperty
|
||||||
description: |
|
description: 'Whether the API supports field-specific search (e.g., title:painting).
|
||||||
Whether the API supports field-specific search (e.g., title:painting).
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
date_filter_format:
|
date_filter_format:
|
||||||
slot_uri: dcterms:temporal
|
slot_uri: dcterms:temporal
|
||||||
description: |
|
description: 'Expected format for date filters.
|
||||||
Expected format for date filters.
|
|
||||||
|
|
||||||
Example: "YYYY-MM-DD", "ISO8601", "Unix timestamp"
|
Example: "YYYY-MM-DD", "ISO8601", "Unix timestamp"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
result_schema_url:
|
result_schema_url:
|
||||||
slot_uri: schema:encodingFormat
|
slot_uri: schema:encodingFormat
|
||||||
description: |
|
description: 'URL to JSON Schema or documentation describing the result format.
|
||||||
URL to JSON Schema or documentation describing the result format.
|
|
||||||
|
|
||||||
Example: "https://api.example.org/schema/search-result.json"
|
Example: "https://api.example.org/schema/search-result.json"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
opensearch_description_url:
|
opensearch_description_url:
|
||||||
slot_uri: schema:potentialAction
|
slot_uri: schema:potentialAction
|
||||||
description: |
|
description: 'URL to OpenSearch description document (if applicable).
|
||||||
URL to OpenSearch description document (if applicable).
|
|
||||||
|
|
||||||
Example: "https://example.org/opensearch.xml"
|
Example: "https://example.org/opensearch.xml"
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
example_query:
|
example_query:
|
||||||
slot_uri: schema:workExample
|
slot_uri: schema:workExample
|
||||||
description: |
|
description: 'Example search query demonstrating API usage.
|
||||||
Example search query demonstrating API usage.
|
|
||||||
|
|
||||||
Example: "/api/zoeken?q=foto&type=image&size=10"
|
Example: "/api/zoeken?q=foto&type=image&size=10"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
slot_usage:
|
slot_usage:
|
||||||
protocol:
|
protocol:
|
||||||
description: |
|
description: 'Protocol for search APIs.
|
||||||
Protocol for search APIs.
|
|
||||||
Typically REST, but may be GRAPHQL or OPENSEARCH.
|
Typically REST, but may be GRAPHQL or OPENSEARCH.
|
||||||
|
|
||||||
|
'
|
||||||
response_format:
|
response_format:
|
||||||
description: |
|
description: 'Response formats supported.
|
||||||
Response formats supported.
|
|
||||||
Common: ["application/json"]
|
Common: ["application/json"]
|
||||||
|
|
||||||
|
'
|
||||||
specificity_annotation:
|
specificity_annotation:
|
||||||
range: SpecificityAnnotation
|
range: SpecificityAnnotation
|
||||||
inlined: true
|
inlined: true
|
||||||
|
|
@ -270,60 +267,76 @@ classes:
|
||||||
- template_specificity
|
- template_specificity
|
||||||
SearchQueryParameter:
|
SearchQueryParameter:
|
||||||
class_uri: hydra:IriTemplateMapping
|
class_uri: hydra:IriTemplateMapping
|
||||||
description: |
|
description: 'Describes a query parameter supported by a search API.
|
||||||
Describes a query parameter supported by a search API.
|
|
||||||
|
|
||||||
|
Documents the parameter name, type, whether it''s required,
|
||||||
|
|
||||||
Documents the parameter name, type, whether it's required,
|
|
||||||
and its purpose.
|
and its purpose.
|
||||||
|
|
||||||
|
'
|
||||||
attributes:
|
attributes:
|
||||||
name:
|
name:
|
||||||
slot_uri: hydra:variable
|
slot_uri: hydra:variable
|
||||||
description: |
|
description: 'Parameter name as used in the query string.
|
||||||
Parameter name as used in the query string.
|
|
||||||
|
|
||||||
Example: "q", "type", "from", "size"
|
Example: "q", "type", "from", "size"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
type:
|
type:
|
||||||
slot_uri: hydra:property
|
slot_uri: hydra:property
|
||||||
description: |
|
description: 'Data type of the parameter value.
|
||||||
Data type of the parameter value.
|
|
||||||
|
|
||||||
Values: string, integer, boolean, date, array
|
Values: string, integer, boolean, date, array
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required:
|
required:
|
||||||
slot_uri: hydra:required
|
slot_uri: hydra:required
|
||||||
description: |
|
description: 'Whether this parameter is required.
|
||||||
Whether this parameter is required.
|
|
||||||
|
'
|
||||||
range: boolean
|
range: boolean
|
||||||
parameter_description:
|
parameter_description:
|
||||||
slot_uri: dcterms:description
|
slot_uri: dcterms:description
|
||||||
description: |
|
description: 'Human-readable description of the parameter.
|
||||||
Human-readable description of the parameter.
|
|
||||||
|
|
||||||
Example: "Full-text search query"
|
Example: "Full-text search query"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
default_value:
|
default_value:
|
||||||
slot_uri: schema:defaultValue
|
slot_uri: schema:defaultValue
|
||||||
description: |
|
description: 'Default value if not specified.
|
||||||
Default value if not specified.
|
|
||||||
|
|
||||||
Example: "10" for a size parameter
|
Example: "10" for a size parameter
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
allowed_values:
|
allowed_values:
|
||||||
slot_uri: schema:valueReference
|
slot_uri: schema:valueReference
|
||||||
description: |
|
description: 'List of allowed values (for enumerated parameters).
|
||||||
List of allowed values (for enumerated parameters).
|
|
||||||
|
|
||||||
Example: ["image", "document", "audio", "video"]
|
Example: ["image", "document", "audio", "video"]
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
example_value:
|
example_value:
|
||||||
slot_uri: schema:workExample
|
slot_uri: schema:workExample
|
||||||
description: |
|
description: 'Example value for this parameter.
|
||||||
Example value for this parameter.
|
|
||||||
|
|
||||||
Example: "amsterdam museum"
|
Example: "amsterdam museum"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
slots:
|
slots:
|
||||||
- specificity_annotation
|
- specificity_annotation
|
||||||
|
|
@ -335,100 +348,3 @@ classes:
|
||||||
template_specificity:
|
template_specificity:
|
||||||
range: TemplateSpecificityScores
|
range: TemplateSpecificityScores
|
||||||
inlined: true
|
inlined: true
|
||||||
enums:
|
|
||||||
PaginationMethodEnum:
|
|
||||||
description: |
|
|
||||||
Methods for paginating large result sets.
|
|
||||||
permissible_values:
|
|
||||||
OFFSET_LIMIT:
|
|
||||||
description: |
|
|
||||||
Uses offset (or start/from) and limit (or size/count) parameters.
|
|
||||||
|
|
||||||
Example: ?offset=100&limit=20
|
|
||||||
|
|
||||||
Pros: Simple, allows jumping to any page
|
|
||||||
Cons: Inconsistent results if data changes between requests
|
|
||||||
PAGE_NUMBER:
|
|
||||||
description: |
|
|
||||||
Uses page number and page size parameters.
|
|
||||||
|
|
||||||
Example: ?page=5&per_page=20
|
|
||||||
|
|
||||||
Similar to OFFSET_LIMIT but uses page numbers.
|
|
||||||
CURSOR:
|
|
||||||
description: |
|
|
||||||
Uses opaque cursor/token for stateful pagination.
|
|
||||||
|
|
||||||
Example: ?cursor=eyJsYXN0X2lkIjogMTIzfQ==
|
|
||||||
|
|
||||||
Pros: Consistent results, efficient for large datasets
|
|
||||||
Cons: Cannot jump to arbitrary page
|
|
||||||
LINK_HEADER:
|
|
||||||
description: |
|
|
||||||
Uses HTTP Link headers for pagination (RFC 5988).
|
|
||||||
|
|
||||||
Response includes: Link: <url>; rel="next", <url>; rel="prev"
|
|
||||||
|
|
||||||
RESTful approach following HATEOAS principles.
|
|
||||||
SCROLL:
|
|
||||||
description: |
|
|
||||||
Uses scroll/scan API for deep pagination.
|
|
||||||
|
|
||||||
Common in Elasticsearch-based APIs.
|
|
||||||
Maintains search context for consistent results.
|
|
||||||
NONE:
|
|
||||||
description: |
|
|
||||||
No pagination - returns all results at once.
|
|
||||||
|
|
||||||
Only suitable for small result sets.
|
|
||||||
HTTPMethodEnum:
|
|
||||||
description: |
|
|
||||||
HTTP methods supported for API requests.
|
|
||||||
permissible_values:
|
|
||||||
GET:
|
|
||||||
description: |
|
|
||||||
HTTP GET method.
|
|
||||||
|
|
||||||
Query parameters in URL. Most common for search APIs.
|
|
||||||
POST:
|
|
||||||
description: |
|
|
||||||
HTTP POST method.
|
|
||||||
|
|
||||||
Query in request body. Used for complex queries.
|
|
||||||
BOTH:
|
|
||||||
description: |
|
|
||||||
Supports both GET and POST methods.
|
|
||||||
SearchResponseFormatEnum:
|
|
||||||
description: |
|
|
||||||
Response formats for search API results.
|
|
||||||
permissible_values:
|
|
||||||
JSON:
|
|
||||||
description: |
|
|
||||||
JSON (application/json).
|
|
||||||
|
|
||||||
Most common format for modern APIs.
|
|
||||||
XML:
|
|
||||||
description: |
|
|
||||||
XML (application/xml or text/xml).
|
|
||||||
|
|
||||||
Legacy format, still used in some heritage APIs.
|
|
||||||
JSON_LD:
|
|
||||||
description: |
|
|
||||||
JSON-LD (application/ld+json).
|
|
||||||
|
|
||||||
JSON with linked data semantics.
|
|
||||||
HTML:
|
|
||||||
description: |
|
|
||||||
HTML (text/html).
|
|
||||||
|
|
||||||
Human-readable results page (not ideal for API use).
|
|
||||||
CSV:
|
|
||||||
description: |
|
|
||||||
CSV (text/csv).
|
|
||||||
|
|
||||||
Tabular export format.
|
|
||||||
ATOM:
|
|
||||||
description: |
|
|
||||||
Atom feed (application/atom+xml).
|
|
||||||
|
|
||||||
Syndication format.
|
|
||||||
|
|
|
||||||
|
|
@ -1,85 +0,0 @@
|
||||||
id: https://nde.nl/ontology/hc/class/SearchQueryParameter
|
|
||||||
name: search_query_parameter
|
|
||||||
title: Search Query Parameter Class
|
|
||||||
prefixes:
|
|
||||||
linkml: https://w3id.org/linkml/
|
|
||||||
hc: https://nde.nl/ontology/hc/
|
|
||||||
dcterms: http://purl.org/dc/terms/
|
|
||||||
schema: http://schema.org/
|
|
||||||
hydra: http://www.w3.org/ns/hydra/core#
|
|
||||||
imports:
|
|
||||||
- linkml:types
|
|
||||||
- ../slots/specificity_annotation
|
|
||||||
- ./SpecificityAnnotation
|
|
||||||
- ../slots/template_specificity
|
|
||||||
- ./TemplateSpecificityScores
|
|
||||||
default_prefix: hc
|
|
||||||
|
|
||||||
classes:
|
|
||||||
SearchQueryParameter:
|
|
||||||
class_uri: hydra:IriTemplateMapping
|
|
||||||
description: |
|
|
||||||
Describes a query parameter supported by a search API.
|
|
||||||
|
|
||||||
Documents the parameter name, type, whether it's required,
|
|
||||||
and its purpose.
|
|
||||||
attributes:
|
|
||||||
name:
|
|
||||||
slot_uri: hydra:variable
|
|
||||||
description: |
|
|
||||||
Parameter name as used in the query string.
|
|
||||||
|
|
||||||
Example: "q", "type", "from", "size"
|
|
||||||
range: string
|
|
||||||
required: true
|
|
||||||
type:
|
|
||||||
slot_uri: hydra:property
|
|
||||||
description: |
|
|
||||||
Data type of the parameter value.
|
|
||||||
|
|
||||||
Values: string, integer, boolean, date, array
|
|
||||||
range: string
|
|
||||||
required:
|
|
||||||
slot_uri: hydra:required
|
|
||||||
description: |
|
|
||||||
Whether this parameter is required.
|
|
||||||
range: boolean
|
|
||||||
parameter_description:
|
|
||||||
slot_uri: dcterms:description
|
|
||||||
description: |
|
|
||||||
Human-readable description of the parameter.
|
|
||||||
|
|
||||||
Example: "Full-text search query"
|
|
||||||
range: string
|
|
||||||
default_value:
|
|
||||||
slot_uri: schema:defaultValue
|
|
||||||
description: |
|
|
||||||
Default value if not specified.
|
|
||||||
|
|
||||||
Example: "10" for a size parameter
|
|
||||||
range: string
|
|
||||||
allowed_values:
|
|
||||||
slot_uri: schema:valueReference
|
|
||||||
description: |
|
|
||||||
List of allowed values (for enumerated parameters).
|
|
||||||
|
|
||||||
Example: ["image", "document", "audio", "video"]
|
|
||||||
range: string
|
|
||||||
multivalued: true
|
|
||||||
example_value:
|
|
||||||
slot_uri: schema:workExample
|
|
||||||
description: |
|
|
||||||
Example value for this parameter.
|
|
||||||
|
|
||||||
Example: "amsterdam museum"
|
|
||||||
range: string
|
|
||||||
slots:
|
|
||||||
- specificity_annotation
|
|
||||||
- template_specificity
|
|
||||||
slot_usage:
|
|
||||||
specificity_annotation:
|
|
||||||
range: SpecificityAnnotation
|
|
||||||
inlined: true
|
|
||||||
template_specificity:
|
|
||||||
range: TemplateSpecificityScores
|
|
||||||
inlined: true
|
|
||||||
|
|
@ -24,6 +24,7 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/PlatformCategoryEnum
|
||||||
classes:
|
classes:
|
||||||
SocialMediaPlatformType:
|
SocialMediaPlatformType:
|
||||||
class_uri: skos:Concept
|
class_uri: skos:Concept
|
||||||
|
|
@ -109,27 +110,3 @@ classes:
|
||||||
- http://xmlns.com/foaf/0.1/OnlineAccount
|
- http://xmlns.com/foaf/0.1/OnlineAccount
|
||||||
- https://schema.org/ContactPoint
|
- https://schema.org/ContactPoint
|
||||||
- https://www.wikidata.org/wiki/Q12538
|
- https://www.wikidata.org/wiki/Q12538
|
||||||
enums:
|
|
||||||
PlatformCategoryEnum:
|
|
||||||
description: High-level categories for social media platform classification
|
|
||||||
permissible_values:
|
|
||||||
GENERAL_SOCIAL:
|
|
||||||
description: General-purpose social networking platforms (Facebook, VKontakte)
|
|
||||||
MICROBLOGGING:
|
|
||||||
description: Short-form text and discussion platforms (X/Twitter, Bluesky, Mastodon)
|
|
||||||
IMAGE_FOCUSED:
|
|
||||||
description: Photo and image sharing platforms (Instagram, Pinterest, Flickr)
|
|
||||||
VIDEO_FOCUSED:
|
|
||||||
description: Video hosting and streaming platforms (YouTube, TikTok, Vimeo)
|
|
||||||
PROFESSIONAL:
|
|
||||||
description: Business and professional networking platforms (LinkedIn)
|
|
||||||
MESSAGING:
|
|
||||||
description: Messaging and communication platforms (WhatsApp, Telegram, WeChat)
|
|
||||||
AUDIO:
|
|
||||||
description: Audio, podcast, and music platforms (Spotify, SoundCloud)
|
|
||||||
PUBLISHING:
|
|
||||||
description: Long-form content and newsletter platforms (Medium, Substack)
|
|
||||||
MEMBERSHIP:
|
|
||||||
description: Patronage and membership platforms (Patreon)
|
|
||||||
OTHER:
|
|
||||||
description: Emerging or uncategorized platforms
|
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/PostTypeCategoryEnum
|
||||||
classes:
|
classes:
|
||||||
SocialMediaPostType:
|
SocialMediaPostType:
|
||||||
class_uri: skos:Concept
|
class_uri: skos:Concept
|
||||||
|
|
@ -136,103 +137,3 @@ classes:
|
||||||
- https://www.w3.org/ns/activitystreams#Object
|
- https://www.w3.org/ns/activitystreams#Object
|
||||||
- https://schema.org/MediaObject
|
- https://schema.org/MediaObject
|
||||||
- https://www.w3.org/TR/activitystreams-vocabulary/
|
- https://www.w3.org/TR/activitystreams-vocabulary/
|
||||||
enums:
|
|
||||||
PostTypeCategoryEnum:
|
|
||||||
description: High-level categories for social media post type classification
|
|
||||||
permissible_values:
|
|
||||||
VIDEO:
|
|
||||||
description: 'Standard video content with no strict duration limit.
|
|
||||||
|
|
||||||
Platforms: YouTube, Vimeo, Facebook Video, LinkedIn Video
|
|
||||||
|
|
||||||
Activity Streams: as:Video
|
|
||||||
|
|
||||||
Schema.org: schema:VideoObject
|
|
||||||
|
|
||||||
'
|
|
||||||
SHORT_VIDEO:
|
|
||||||
description: 'Short-form video content, typically under 60-90 seconds.
|
|
||||||
|
|
||||||
Platforms: TikTok, Instagram Reels, YouTube Shorts
|
|
||||||
|
|
||||||
Optimized for mobile viewing and algorithmic discovery.
|
|
||||||
|
|
||||||
'
|
|
||||||
IMAGE:
|
|
||||||
description: 'Static image content including photos and graphics.
|
|
||||||
|
|
||||||
Platforms: Instagram, Pinterest, Flickr, Facebook, X/Twitter
|
|
||||||
|
|
||||||
Activity Streams: as:Image
|
|
||||||
|
|
||||||
Schema.org: schema:ImageObject
|
|
||||||
|
|
||||||
'
|
|
||||||
TEXT:
|
|
||||||
description: 'Text-based posts, typically short-form.
|
|
||||||
|
|
||||||
Platforms: X/Twitter, Mastodon, Bluesky, LinkedIn
|
|
||||||
|
|
||||||
Activity Streams: as:Note
|
|
||||||
|
|
||||||
May include attached media as supplements.
|
|
||||||
|
|
||||||
'
|
|
||||||
STORY:
|
|
||||||
description: 'Ephemeral content that auto-deletes (typically 24 hours).
|
|
||||||
|
|
||||||
Platforms: Instagram Stories, Facebook Stories, LinkedIn Stories
|
|
||||||
|
|
||||||
Often vertical format, designed for mobile.
|
|
||||||
|
|
||||||
'
|
|
||||||
LIVE_STREAM:
|
|
||||||
description: 'Real-time video broadcasting.
|
|
||||||
|
|
||||||
Platforms: YouTube Live, Instagram Live, Twitch, LinkedIn Live
|
|
||||||
|
|
||||||
May be archived as standard video after broadcast.
|
|
||||||
|
|
||||||
'
|
|
||||||
AUDIO:
|
|
||||||
description: 'Audio-only content including podcasts and music.
|
|
||||||
|
|
||||||
Platforms: Spotify, Apple Podcasts, SoundCloud
|
|
||||||
|
|
||||||
Activity Streams: as:Audio
|
|
||||||
|
|
||||||
Schema.org: schema:AudioObject
|
|
||||||
|
|
||||||
'
|
|
||||||
ARTICLE:
|
|
||||||
description: 'Long-form written content.
|
|
||||||
|
|
||||||
Platforms: Medium, Substack, LinkedIn Articles, blogs
|
|
||||||
|
|
||||||
Activity Streams: as:Article
|
|
||||||
|
|
||||||
Schema.org: schema:Article
|
|
||||||
|
|
||||||
'
|
|
||||||
THREAD:
|
|
||||||
description: 'Multi-post sequences forming a narrative.
|
|
||||||
|
|
||||||
Platforms: X/Twitter threads, Mastodon threads
|
|
||||||
|
|
||||||
Connected series of posts, often numbered.
|
|
||||||
|
|
||||||
'
|
|
||||||
CAROUSEL:
|
|
||||||
description: 'Multi-media post with multiple images or videos.
|
|
||||||
|
|
||||||
Platforms: Instagram carousels, LinkedIn carousels
|
|
||||||
|
|
||||||
Swipeable content collections, up to 10-20 items.
|
|
||||||
|
|
||||||
'
|
|
||||||
OTHER:
|
|
||||||
description: 'Emerging or uncategorized content formats.
|
|
||||||
|
|
||||||
Use for new platform features not yet classified.
|
|
||||||
|
|
||||||
'
|
|
||||||
|
|
|
||||||
|
|
@ -31,6 +31,7 @@ imports:
|
||||||
- ../slots/typical_responsibility
|
- ../slots/typical_responsibility
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/RoleCategoryEnum
|
||||||
classes:
|
classes:
|
||||||
StaffRole:
|
StaffRole:
|
||||||
class_uri: org:Role
|
class_uri: org:Role
|
||||||
|
|
@ -251,33 +252,3 @@ classes:
|
||||||
- https://www.w3.org/TR/vocab-org/#class-role
|
- https://www.w3.org/TR/vocab-org/#class-role
|
||||||
- https://schema.org/Role
|
- https://schema.org/Role
|
||||||
- https://github.com/FICLIT/PiCo
|
- https://github.com/FICLIT/PiCo
|
||||||
enums:
|
|
||||||
RoleCategoryEnum:
|
|
||||||
description: High-level categories for staff role classification
|
|
||||||
permissible_values:
|
|
||||||
CURATORIAL:
|
|
||||||
description: Roles focused on collections, exhibitions, and scholarly interpretation
|
|
||||||
CONSERVATION:
|
|
||||||
description: Roles focused on preservation and restoration of heritage objects
|
|
||||||
ARCHIVAL:
|
|
||||||
description: Roles focused on archival management, appraisal, and description
|
|
||||||
LIBRARY:
|
|
||||||
description: Roles focused on library services, cataloging, and reference
|
|
||||||
DIGITAL:
|
|
||||||
description: Roles focused on digitization, digital preservation, data management
|
|
||||||
EDUCATION:
|
|
||||||
description: Roles focused on public education, outreach, and engagement
|
|
||||||
GOVERNANCE:
|
|
||||||
description: Board and committee roles in associations, cooperatives, and societies
|
|
||||||
LEADERSHIP:
|
|
||||||
description: Executive and management roles
|
|
||||||
RESEARCH:
|
|
||||||
description: Roles focused on scholarly research and fellowship programs
|
|
||||||
TECHNICAL:
|
|
||||||
description: Roles focused on IT, facilities, and technical operations
|
|
||||||
SUPPORT:
|
|
||||||
description: Roles supporting daily operations (security, cleaning, reception)
|
|
||||||
CREATIVE:
|
|
||||||
description: Roles for creative practitioners (artists, designers)
|
|
||||||
EXTERNAL:
|
|
||||||
description: External roles (consultants, volunteers, legal advisors)
|
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -16,60 +16,25 @@ imports:
|
||||||
- ../slots/template_specificity
|
- ../slots/template_specificity
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/StandardsOrganizationTypeEnum
|
||||||
classes:
|
classes:
|
||||||
StandardsOrganization:
|
StandardsOrganization:
|
||||||
class_uri: org:FormalOrganization
|
class_uri: org:FormalOrganization
|
||||||
description: |
|
description: "An organization that defines and maintains identifier standards.\n\n**Key Distinction from RegistrationAuthority:**\n\
|
||||||
An organization that defines and maintains identifier standards.
|
\n- StandardsOrganization: DEFINES the standard (rules, format, governance)\n- RegistrationAuthority: MAINTAINS a registry\
|
||||||
|
\ of identifiers following the standard\n\n**Examples:**\n\n- **ISO** (International Organization for Standardization)\n\
|
||||||
**Key Distinction from RegistrationAuthority:**
|
\ - Defines: ISIL (ISO 15511), ISNI (ISO 27729), VIAF structure\n - Does NOT directly maintain registries\n\n- **ANSI**\
|
||||||
|
\ (American National Standards Institute)\n - US national standards body\n - Defines standards in collaboration with\
|
||||||
- StandardsOrganization: DEFINES the standard (rules, format, governance)
|
\ ISO\n\n- **W3C** (World Wide Web Consortium)\n - Defines: URI/URL format, SKOS, RDF\n - Web-focused standards\n\n\
|
||||||
- RegistrationAuthority: MAINTAINS a registry of identifiers following the standard
|
- **IETF** (Internet Engineering Task Force)\n - Defines: UUID format (RFC 4122), URN (RFC 8141)\n - Internet protocol\
|
||||||
|
\ standards\n\n- **OCLC** (Online Computer Library Center)\n - Defines: WorldCat identifiers\n - Also acts as RegistrationAuthority\
|
||||||
**Examples:**
|
\ for some identifiers\n\n- **Museumvereniging** (Netherlands Museums Association)\n - Defines: Museumnorm (Netherlands\
|
||||||
|
\ museum quality standard)\n - Wikidata: Q2335495\n - National association representing Dutch museums\n\n- **Stichting\
|
||||||
- **ISO** (International Organization for Standardization)
|
\ Museumregister Nederland**\n - Maintains: Museumregister Nederland (certified museum list)\n - Wikidata: Q110989623\n\
|
||||||
- Defines: ISIL (ISO 15511), ISNI (ISO 27729), VIAF structure
|
\ - Grants official museum status in Netherlands based on Museumnorm\n\n**Relationship to Standards:**\n\nA StandardsOrganization\
|
||||||
- Does NOT directly maintain registries
|
\ defines one or more Standard classes via the\ndefined_by inverse relationship:\n- Standard.defined_by → StandardsOrganization\n\
|
||||||
|
\n**Ontology Alignment:**\n\n- org:FormalOrganization - W3C Organization Ontology\n- schema:Organization - Schema.org\n\
|
||||||
- **ANSI** (American National Standards Institute)
|
- foaf:Organization - FOAF\n"
|
||||||
- US national standards body
|
|
||||||
- Defines standards in collaboration with ISO
|
|
||||||
|
|
||||||
- **W3C** (World Wide Web Consortium)
|
|
||||||
- Defines: URI/URL format, SKOS, RDF
|
|
||||||
- Web-focused standards
|
|
||||||
|
|
||||||
- **IETF** (Internet Engineering Task Force)
|
|
||||||
- Defines: UUID format (RFC 4122), URN (RFC 8141)
|
|
||||||
- Internet protocol standards
|
|
||||||
|
|
||||||
- **OCLC** (Online Computer Library Center)
|
|
||||||
- Defines: WorldCat identifiers
|
|
||||||
- Also acts as RegistrationAuthority for some identifiers
|
|
||||||
|
|
||||||
- **Museumvereniging** (Netherlands Museums Association)
|
|
||||||
- Defines: Museumnorm (Netherlands museum quality standard)
|
|
||||||
- Wikidata: Q2335495
|
|
||||||
- National association representing Dutch museums
|
|
||||||
|
|
||||||
- **Stichting Museumregister Nederland**
|
|
||||||
- Maintains: Museumregister Nederland (certified museum list)
|
|
||||||
- Wikidata: Q110989623
|
|
||||||
- Grants official museum status in Netherlands based on Museumnorm
|
|
||||||
|
|
||||||
**Relationship to Standards:**
|
|
||||||
|
|
||||||
A StandardsOrganization defines one or more Standard classes via the
|
|
||||||
defined_by inverse relationship:
|
|
||||||
- Standard.defined_by → StandardsOrganization
|
|
||||||
|
|
||||||
**Ontology Alignment:**
|
|
||||||
|
|
||||||
- org:FormalOrganization - W3C Organization Ontology
|
|
||||||
- schema:Organization - Schema.org
|
|
||||||
- foaf:Organization - FOAF
|
|
||||||
exact_mappings:
|
exact_mappings:
|
||||||
- org:FormalOrganization
|
- org:FormalOrganization
|
||||||
close_mappings:
|
close_mappings:
|
||||||
|
|
@ -81,87 +46,123 @@ classes:
|
||||||
id:
|
id:
|
||||||
identifier: true
|
identifier: true
|
||||||
slot_uri: schema:identifier
|
slot_uri: schema:identifier
|
||||||
description: |
|
description: 'Unique identifier for this standards organization.
|
||||||
Unique identifier for this standards organization.
|
|
||||||
|
|
||||||
Recommended format: lowercase acronym or short name.
|
Recommended format: lowercase acronym or short name.
|
||||||
|
|
||||||
|
|
||||||
Examples: "iso", "ansi", "w3c", "ietf", "oclc"
|
Examples: "iso", "ansi", "w3c", "ietf", "oclc"
|
||||||
|
|
||||||
|
'
|
||||||
range: uriorcurie
|
range: uriorcurie
|
||||||
required: true
|
required: true
|
||||||
name:
|
name:
|
||||||
slot_uri: schema:name
|
slot_uri: schema:name
|
||||||
description: |
|
description: 'Official full name of the standards organization.
|
||||||
Official full name of the standards organization.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- "International Organization for Standardization"
|
- "International Organization for Standardization"
|
||||||
|
|
||||||
- "American National Standards Institute"
|
- "American National Standards Institute"
|
||||||
|
|
||||||
- "World Wide Web Consortium"
|
- "World Wide Web Consortium"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
has_or_had_abbreviation:
|
has_or_had_abbreviation:
|
||||||
slot_uri: schema:alternateName
|
slot_uri: schema:alternateName
|
||||||
description: |
|
description: 'Common abbreviation/acronym.
|
||||||
Common abbreviation/acronym.
|
|
||||||
|
|
||||||
Examples: "ISO", "ANSI", "W3C", "IETF", "OCLC"
|
Examples: "ISO", "ANSI", "W3C", "IETF", "OCLC"
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
required: true
|
required: true
|
||||||
organization_type:
|
organization_type:
|
||||||
slot_uri: schema:additionalType
|
slot_uri: schema:additionalType
|
||||||
description: |
|
description: 'Type of standards organization.
|
||||||
Type of standards organization.
|
|
||||||
|
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
- INTERGOVERNMENTAL: International government collaboration (ISO, UN)
|
- INTERGOVERNMENTAL: International government collaboration (ISO, UN)
|
||||||
|
|
||||||
- NATIONAL: National standards body (ANSI, DIN, BSI, NEN)
|
- NATIONAL: National standards body (ANSI, DIN, BSI, NEN)
|
||||||
|
|
||||||
- INDUSTRY_CONSORTIUM: Industry-led organization (W3C, IETF)
|
- INDUSTRY_CONSORTIUM: Industry-led organization (W3C, IETF)
|
||||||
|
|
||||||
- LIBRARY_COOPERATIVE: Library/cultural heritage focus (OCLC, IFLA)
|
- LIBRARY_COOPERATIVE: Library/cultural heritage focus (OCLC, IFLA)
|
||||||
|
|
||||||
- PROFESSIONAL_ASSOCIATION: Professional body (SAA, ALA)
|
- PROFESSIONAL_ASSOCIATION: Professional body (SAA, ALA)
|
||||||
|
|
||||||
|
'
|
||||||
range: StandardsOrganizationTypeEnum
|
range: StandardsOrganizationTypeEnum
|
||||||
required: true
|
required: true
|
||||||
member_countries:
|
member_countries:
|
||||||
slot_uri: schema:member
|
slot_uri: schema:member
|
||||||
description: |
|
description: 'Countries that are members of this organization (for intergovernmental orgs).
|
||||||
Countries that are members of this organization (for intergovernmental orgs).
|
|
||||||
|
|
||||||
List of ISO 3166-1 alpha-2 country codes.
|
List of ISO 3166-1 alpha-2 country codes.
|
||||||
|
|
||||||
|
|
||||||
Example for ISO: ["NL", "US", "JP", "DE", ...] (167 member countries)
|
Example for ISO: ["NL", "US", "JP", "DE", ...] (167 member countries)
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
multivalued: true
|
multivalued: true
|
||||||
founded_year:
|
founded_year:
|
||||||
slot_uri: schema:foundingDate
|
slot_uri: schema:foundingDate
|
||||||
description: |
|
description: 'Year the organization was founded.
|
||||||
Year the organization was founded.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- ISO: 1947
|
- ISO: 1947
|
||||||
|
|
||||||
- ANSI: 1918
|
- ANSI: 1918
|
||||||
|
|
||||||
- W3C: 1994
|
- W3C: 1994
|
||||||
|
|
||||||
- IETF: 1986
|
- IETF: 1986
|
||||||
|
|
||||||
|
'
|
||||||
range: integer
|
range: integer
|
||||||
headquarters_country:
|
headquarters_country:
|
||||||
slot_uri: schema:location
|
slot_uri: schema:location
|
||||||
description: |
|
description: 'Country where headquarters is located (ISO 3166-1 alpha-2).
|
||||||
Country where headquarters is located (ISO 3166-1 alpha-2).
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- ISO: "CH" (Geneva, Switzerland)
|
- ISO: "CH" (Geneva, Switzerland)
|
||||||
|
|
||||||
- ANSI: "US" (Washington DC)
|
- ANSI: "US" (Washington DC)
|
||||||
|
|
||||||
- W3C: "US" (MIT) + "FR" (ERCIM) + "JP" (Keio)
|
- W3C: "US" (MIT) + "FR" (ERCIM) + "JP" (Keio)
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
pattern: ^[A-Z]{2}$
|
pattern: ^[A-Z]{2}$
|
||||||
website:
|
website:
|
||||||
slot_uri: schema:url
|
slot_uri: schema:url
|
||||||
description: |
|
description: 'Official website URL.
|
||||||
Official website URL.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- https://www.iso.org/
|
- https://www.iso.org/
|
||||||
|
|
||||||
- https://www.ansi.org/
|
- https://www.ansi.org/
|
||||||
|
|
||||||
- https://www.w3.org/
|
- https://www.w3.org/
|
||||||
|
|
||||||
|
'
|
||||||
range: uri
|
range: uri
|
||||||
organization_description:
|
organization_description:
|
||||||
slot_uri: schema:description
|
slot_uri: schema:description
|
||||||
|
|
@ -169,38 +170,53 @@ classes:
|
||||||
range: string
|
range: string
|
||||||
standards_maintained:
|
standards_maintained:
|
||||||
slot_uri: schema:hasPart
|
slot_uri: schema:hasPart
|
||||||
description: |
|
description: 'Standards defined by this organization.
|
||||||
Standards defined by this organization.
|
|
||||||
|
|
||||||
Inverse relationship: Standard.defined_by → StandardsOrganization
|
Inverse relationship: Standard.defined_by → StandardsOrganization
|
||||||
|
|
||||||
|
|
||||||
Note: This is the inverse side; the forward relationship is on Standard.
|
Note: This is the inverse side; the forward relationship is on Standard.
|
||||||
|
|
||||||
|
'
|
||||||
range: Standard
|
range: Standard
|
||||||
multivalued: true
|
multivalued: true
|
||||||
inlined: false
|
inlined: false
|
||||||
wikidata_id:
|
wikidata_id:
|
||||||
slot_uri: schema:sameAs
|
slot_uri: schema:sameAs
|
||||||
description: |
|
description: 'Wikidata Q-ID for this standards organization.
|
||||||
Wikidata Q-ID for this standards organization.
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- ISO: Q15028
|
- ISO: Q15028
|
||||||
|
|
||||||
- OCLC: Q190593
|
- OCLC: Q190593
|
||||||
|
|
||||||
- Museumvereniging: Q2335495
|
- Museumvereniging: Q2335495
|
||||||
|
|
||||||
- Stichting Museumregister Nederland: Q110989623
|
- Stichting Museumregister Nederland: Q110989623
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
pattern: ^Q[0-9]+$
|
pattern: ^Q[0-9]+$
|
||||||
headquarters_country_code:
|
headquarters_country_code:
|
||||||
slot_uri: schema:location
|
slot_uri: schema:location
|
||||||
description: |
|
description: 'Country where the organization is headquartered (ISO 3166-1 alpha-2 code).
|
||||||
Country where the organization is headquartered (ISO 3166-1 alpha-2 code).
|
|
||||||
|
|
||||||
For intergovernmental organizations, use primary headquarters location.
|
For intergovernmental organizations, use primary headquarters location.
|
||||||
|
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
- ISO: CH (Geneva)
|
- ISO: CH (Geneva)
|
||||||
|
|
||||||
- OCLC: US (Dublin, Ohio)
|
- OCLC: US (Dublin, Ohio)
|
||||||
|
|
||||||
- Museumvereniging: NL
|
- Museumvereniging: NL
|
||||||
|
|
||||||
|
'
|
||||||
range: string
|
range: string
|
||||||
pattern: ^[A-Z]{2}$
|
pattern: ^[A-Z]{2}$
|
||||||
slots:
|
slots:
|
||||||
|
|
@ -213,85 +229,3 @@ classes:
|
||||||
template_specificity:
|
template_specificity:
|
||||||
range: TemplateSpecificityScores
|
range: TemplateSpecificityScores
|
||||||
inlined: true
|
inlined: true
|
||||||
enums:
|
|
||||||
StandardsOrganizationTypeEnum:
|
|
||||||
description: Classification of standards organization types
|
|
||||||
permissible_values:
|
|
||||||
INTERGOVERNMENTAL:
|
|
||||||
description: |
|
|
||||||
International organization with government membership.
|
|
||||||
Examples: ISO, United Nations, UNESCO
|
|
||||||
NATIONAL:
|
|
||||||
description: |
|
|
||||||
National standards body for a single country.
|
|
||||||
Examples: ANSI (US), DIN (DE), BSI (UK), NEN (NL), AFNOR (FR)
|
|
||||||
INDUSTRY_CONSORTIUM:
|
|
||||||
description: |
|
|
||||||
Industry-led standards organization.
|
|
||||||
Examples: W3C, IETF, OASIS, OMG
|
|
||||||
LIBRARY_COOPERATIVE:
|
|
||||||
description: |
|
|
||||||
Library or cultural heritage cooperative.
|
|
||||||
Examples: OCLC, IFLA, CENL, LIBER
|
|
||||||
PROFESSIONAL_ASSOCIATION:
|
|
||||||
description: |
|
|
||||||
Professional association setting domain standards.
|
|
||||||
Examples: SAA (archivists), ALA (librarians), ICOM (museums)
|
|
||||||
NATIONAL_MUSEUM_ASSOCIATION:
|
|
||||||
description: |
|
|
||||||
National museum association that defines quality standards.
|
|
||||||
|
|
||||||
These organizations represent museums at the national level and
|
|
||||||
often define quality standards, accreditation criteria, and
|
|
||||||
professional guidelines.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- Museumvereniging (Netherlands Museums Association) - Q2335495
|
|
||||||
- Defines: Museumnorm (museum quality standard)
|
|
||||||
- Works with Stichting Museumregister Nederland
|
|
||||||
- Museums Association (UK)
|
|
||||||
- American Alliance of Museums (AAM, US)
|
|
||||||
- Deutscher Museumsbund (DE)
|
|
||||||
- ICOM National Committees
|
|
||||||
|
|
||||||
Characteristics:
|
|
||||||
- Membership-based (museums as members)
|
|
||||||
- Advocacy and representation
|
|
||||||
- Professional development
|
|
||||||
- Quality standards and accreditation
|
|
||||||
CERTIFICATION_BODY:
|
|
||||||
description: |
|
|
||||||
Organization that certifies compliance with standards.
|
|
||||||
|
|
||||||
These bodies assess institutions against standards and grant
|
|
||||||
certification or accreditation status.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- Stichting Museumregister Nederland (Q110989623)
|
|
||||||
- Certifies: Museums meeting Museumnorm
|
|
||||||
- Maintains: Official museum register
|
|
||||||
- Museum Accreditation Scheme (Arts Council England)
|
|
||||||
- AAM Accreditation Commission (US)
|
|
||||||
|
|
||||||
Characteristics:
|
|
||||||
- Assessment and audit function
|
|
||||||
- Grants/revokes certification
|
|
||||||
- Maintains certified institution list
|
|
||||||
- Independent from membership organization
|
|
||||||
GOVERNANCE_COUNCIL:
|
|
||||||
description: |
|
|
||||||
Governance body for a consortium-type identifier service.
|
|
||||||
|
|
||||||
These councils have representatives from contributing agencies and
|
|
||||||
make decisions about the service's development, policies, and direction.
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
- VIAF Council (representatives from 37 contributing agencies)
|
|
||||||
- ORCID Board of Directors
|
|
||||||
- ROR Steering Group
|
|
||||||
|
|
||||||
Characteristics:
|
|
||||||
- Voting members from data contributors
|
|
||||||
- Meets regularly (annually, quarterly)
|
|
||||||
- Advises on technical and policy decisions
|
|
||||||
- May have working groups for specific topics
|
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,7 @@ imports:
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
- ../slots/has_actual_start_date
|
- ../slots/has_actual_start_date
|
||||||
- ../slots/has_actual_end_date
|
- ../slots/has_actual_end_date
|
||||||
|
- ../enums/TemporaryLocationReasonEnum
|
||||||
prefixes:
|
prefixes:
|
||||||
linkml: https://w3id.org/linkml/
|
linkml: https://w3id.org/linkml/
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
@ -422,21 +423,3 @@ classes:
|
||||||
serves_function_of:
|
serves_function_of:
|
||||||
- Collection storage
|
- Collection storage
|
||||||
description: Emergency storage (active, end date unknown)
|
description: Emergency storage (active, end date unknown)
|
||||||
enums:
|
|
||||||
TemporaryLocationReasonEnum:
|
|
||||||
description: Reasons for establishing a temporary location
|
|
||||||
permissible_values:
|
|
||||||
RENOVATION:
|
|
||||||
description: Building renovation or refurbishment work
|
|
||||||
CONSTRUCTION:
|
|
||||||
description: New building construction
|
|
||||||
EMERGENCY:
|
|
||||||
description: Disaster or emergency response
|
|
||||||
POP_UP_PROGRAM:
|
|
||||||
description: Planned temporary outreach or exhibition
|
|
||||||
PILOT_PROJECT:
|
|
||||||
description: Testing new service model or location
|
|
||||||
EVENT_PRESENCE:
|
|
||||||
description: Temporary presence at festival or conference
|
|
||||||
INTERIM_RELOCATION:
|
|
||||||
description: Planned temporary move between permanent facilities
|
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@ imports:
|
||||||
- ../slots/total_frames_analyzed
|
- ../slots/total_frames_analyzed
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/AnnotationTypeEnum
|
||||||
prefixes:
|
prefixes:
|
||||||
linkml: https://w3id.org/linkml/
|
linkml: https://w3id.org/linkml/
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
@ -420,29 +421,3 @@ classes:
|
||||||
- https://www.w3.org/TR/annotation-model/
|
- https://www.w3.org/TR/annotation-model/
|
||||||
- http://www.cidoc-crm.org/cidoc-crm/E13_Attribute_Assignment
|
- http://www.cidoc-crm.org/cidoc-crm/E13_Attribute_Assignment
|
||||||
- https://iiif.io/api/presentation/3.0/
|
- https://iiif.io/api/presentation/3.0/
|
||||||
enums:
|
|
||||||
AnnotationTypeEnum:
|
|
||||||
description: 'Types of video annotation based on analysis method.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
SCENE_DETECTION:
|
|
||||||
description: Shot and scene boundary detection
|
|
||||||
OBJECT_DETECTION:
|
|
||||||
description: Object, face, and logo detection
|
|
||||||
OCR:
|
|
||||||
description: Optical character recognition (text-in-video)
|
|
||||||
ACTION_RECOGNITION:
|
|
||||||
description: Human action and activity detection
|
|
||||||
SEMANTIC_SEGMENTATION:
|
|
||||||
description: Pixel-level semantic classification
|
|
||||||
POSE_ESTIMATION:
|
|
||||||
description: Human body pose detection
|
|
||||||
EMOTION_RECOGNITION:
|
|
||||||
description: Facial emotion/expression analysis
|
|
||||||
MULTIMODAL:
|
|
||||||
description: Combined audio-visual analysis
|
|
||||||
CAPTIONING:
|
|
||||||
description: Automated video captioning/description
|
|
||||||
CUSTOM:
|
|
||||||
description: Custom annotation type
|
|
||||||
|
|
|
||||||
|
|
@ -64,6 +64,10 @@ imports:
|
||||||
- ../slots/unique_object_count
|
- ../slots/unique_object_count
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/DetectionLevelEnum
|
||||||
|
- ../enums/SceneTypeEnum
|
||||||
|
- ../enums/TransitionTypeEnum
|
||||||
|
- ../enums/TextTypeEnum
|
||||||
prefixes:
|
prefixes:
|
||||||
linkml: https://w3id.org/linkml/
|
linkml: https://w3id.org/linkml/
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
@ -1180,84 +1184,3 @@ classes:
|
||||||
template_specificity:
|
template_specificity:
|
||||||
range: TemplateSpecificityScores
|
range: TemplateSpecificityScores
|
||||||
inlined: true
|
inlined: true
|
||||||
enums:
|
|
||||||
DetectionLevelEnum:
|
|
||||||
description: Granularity of scene/shot detection
|
|
||||||
permissible_values:
|
|
||||||
SHOT:
|
|
||||||
description: Technical camera edit boundaries
|
|
||||||
SCENE:
|
|
||||||
description: Semantic content/location boundaries
|
|
||||||
BOTH:
|
|
||||||
description: Both shot and scene detection
|
|
||||||
SceneTypeEnum:
|
|
||||||
description: Types of scenes in heritage videos
|
|
||||||
permissible_values:
|
|
||||||
INTERIOR:
|
|
||||||
description: Indoor/interior shots
|
|
||||||
EXTERIOR:
|
|
||||||
description: Outdoor/exterior shots
|
|
||||||
CLOSEUP:
|
|
||||||
description: Detail shots of objects/artworks
|
|
||||||
WIDE_SHOT:
|
|
||||||
description: Establishing or wide-angle shots
|
|
||||||
INTERVIEW:
|
|
||||||
description: Talking head / interview format
|
|
||||||
ARCHIVAL:
|
|
||||||
description: Historical footage or photographs
|
|
||||||
ANIMATION:
|
|
||||||
description: Animated or graphics sequence
|
|
||||||
TITLE_CARD:
|
|
||||||
description: Text overlay or title sequence
|
|
||||||
B_ROLL:
|
|
||||||
description: Supplementary/cutaway footage
|
|
||||||
DEMONSTRATION:
|
|
||||||
description: Process or technique demonstration
|
|
||||||
TOUR:
|
|
||||||
description: Walking tour or navigation sequence
|
|
||||||
TransitionTypeEnum:
|
|
||||||
description: Types of video transitions
|
|
||||||
permissible_values:
|
|
||||||
CUT:
|
|
||||||
description: Instantaneous transition (hard cut)
|
|
||||||
FADE_IN:
|
|
||||||
description: Gradual appearance from black
|
|
||||||
FADE_OUT:
|
|
||||||
description: Gradual disappearance to black
|
|
||||||
DISSOLVE:
|
|
||||||
description: Cross-fade between shots
|
|
||||||
WIPE:
|
|
||||||
description: Geometric wipe transition
|
|
||||||
MORPH:
|
|
||||||
description: Morphing transition effect
|
|
||||||
FLASH:
|
|
||||||
description: Flash or strobe transition
|
|
||||||
OTHER:
|
|
||||||
description: Other transition type
|
|
||||||
TextTypeEnum:
|
|
||||||
description: Types of on-screen text regions
|
|
||||||
permissible_values:
|
|
||||||
TITLE_CARD:
|
|
||||||
description: Opening/closing titles
|
|
||||||
LOWER_THIRD:
|
|
||||||
description: Name/title overlay at bottom
|
|
||||||
SUBTITLE:
|
|
||||||
description: Burned-in subtitles/captions
|
|
||||||
SIGN:
|
|
||||||
description: Physical signs in scene
|
|
||||||
LABEL:
|
|
||||||
description: Museum/exhibition labels
|
|
||||||
DOCUMENT:
|
|
||||||
description: Text from documents/books
|
|
||||||
HANDWRITTEN:
|
|
||||||
description: Handwritten text
|
|
||||||
GRAPHIC:
|
|
||||||
description: Infographic or chart text
|
|
||||||
WATERMARK:
|
|
||||||
description: Video watermark or logo
|
|
||||||
URL:
|
|
||||||
description: Website URL display
|
|
||||||
CREDITS:
|
|
||||||
description: Credits or attribution text
|
|
||||||
OTHER:
|
|
||||||
description: Other text type
|
|
||||||
|
|
|
||||||
|
|
@ -52,6 +52,9 @@ imports:
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
- ../slots/has_audio_event_segment
|
- ../slots/has_audio_event_segment
|
||||||
|
- ../enums/AudioEventTypeEnum
|
||||||
|
- ../enums/SoundEventTypeEnum
|
||||||
|
- ../enums/MusicTypeEnum
|
||||||
prefixes:
|
prefixes:
|
||||||
linkml: https://w3id.org/linkml/
|
linkml: https://w3id.org/linkml/
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
@ -864,75 +867,3 @@ classes:
|
||||||
template_specificity:
|
template_specificity:
|
||||||
range: TemplateSpecificityScores
|
range: TemplateSpecificityScores
|
||||||
inlined: true
|
inlined: true
|
||||||
enums:
|
|
||||||
AudioEventTypeEnum:
|
|
||||||
description: 'Types of audio events detected in video.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
SPEECH:
|
|
||||||
description: Speech/voice detection and analysis
|
|
||||||
MUSIC:
|
|
||||||
description: Music detection and classification
|
|
||||||
SILENCE:
|
|
||||||
description: Silence or very low audio
|
|
||||||
SOUND_EVENT:
|
|
||||||
description: Non-speech, non-music sound events
|
|
||||||
NOISE:
|
|
||||||
description: Noise detection (for quality assessment)
|
|
||||||
MIXED:
|
|
||||||
description: Multiple audio event types analyzed
|
|
||||||
SoundEventTypeEnum:
|
|
||||||
description: 'Types of non-speech, non-music sound events.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
APPLAUSE:
|
|
||||||
description: Clapping, applause
|
|
||||||
LAUGHTER:
|
|
||||||
description: Laughter from audience or speakers
|
|
||||||
CROWD_NOISE:
|
|
||||||
description: General crowd/audience noise
|
|
||||||
FOOTSTEPS:
|
|
||||||
description: Walking, footsteps
|
|
||||||
DOOR:
|
|
||||||
description: Door opening/closing sounds
|
|
||||||
NATURE_SOUNDS:
|
|
||||||
description: Birds, wind, water, etc.
|
|
||||||
TRAFFIC:
|
|
||||||
description: Vehicles, urban sounds
|
|
||||||
BELLS:
|
|
||||||
description: Church bells, temple bells, etc.
|
|
||||||
MACHINERY:
|
|
||||||
description: Industrial, mechanical sounds
|
|
||||||
COUGHING:
|
|
||||||
description: Coughing, clearing throat
|
|
||||||
PAPER:
|
|
||||||
description: Paper rustling
|
|
||||||
TYPING:
|
|
||||||
description: Keyboard typing
|
|
||||||
PHONE:
|
|
||||||
description: Phone ringing or notification
|
|
||||||
MUSIC_INSTRUMENT:
|
|
||||||
description: Individual instrument sounds
|
|
||||||
OTHER:
|
|
||||||
description: Other sound event type
|
|
||||||
MusicTypeEnum:
|
|
||||||
description: 'Types of music presence in audio.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
BACKGROUND:
|
|
||||||
description: Background/ambient music under other content
|
|
||||||
FEATURED:
|
|
||||||
description: Primary audio is music (performance, recording)
|
|
||||||
ARCHIVAL:
|
|
||||||
description: Historical/archival music recording
|
|
||||||
INTRO_OUTRO:
|
|
||||||
description: Opening or closing music/jingle
|
|
||||||
TRANSITION:
|
|
||||||
description: Music used for scene transitions
|
|
||||||
DIEGETIC:
|
|
||||||
description: Music from within the scene (radio, live performance)
|
|
||||||
NON_DIEGETIC:
|
|
||||||
description: Music added in post-production
|
|
||||||
|
|
|
||||||
|
|
@ -41,6 +41,8 @@ imports:
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
- ../slots/definition
|
- ../slots/definition
|
||||||
- ../slots/has_available_caption_language
|
- ../slots/has_available_caption_language
|
||||||
|
- ../enums/VideoDefinitionEnum
|
||||||
|
- ../enums/LiveBroadcastStatusEnum
|
||||||
prefixes:
|
prefixes:
|
||||||
linkml: https://w3id.org/linkml/
|
linkml: https://w3id.org/linkml/
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
@ -702,36 +704,3 @@ classes:
|
||||||
template_specificity:
|
template_specificity:
|
||||||
range: TemplateSpecificityScores
|
range: TemplateSpecificityScores
|
||||||
inlined: true
|
inlined: true
|
||||||
enums:
|
|
||||||
VideoDefinitionEnum:
|
|
||||||
description: 'Video resolution/definition quality categories.
|
|
||||||
|
|
||||||
|
|
||||||
Based on common platform standards.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
sd:
|
|
||||||
description: Standard definition (480p or lower)
|
|
||||||
hd:
|
|
||||||
description: High definition (720p, 1080p)
|
|
||||||
uhd:
|
|
||||||
description: Ultra HD (2160p/4K)
|
|
||||||
4k:
|
|
||||||
description: 4K resolution (2160p) - alias for uhd
|
|
||||||
8k:
|
|
||||||
description: Full Ultra HD (4320p)
|
|
||||||
LiveBroadcastStatusEnum:
|
|
||||||
description: 'Live broadcast status values for video content.
|
|
||||||
|
|
||||||
|
|
||||||
Based on YouTube API liveBroadcastContent values.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
none:
|
|
||||||
description: Not a live broadcast (standard uploaded video)
|
|
||||||
live:
|
|
||||||
description: Currently broadcasting live
|
|
||||||
upcoming:
|
|
||||||
description: Scheduled live stream that hasn't started yet
|
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,8 @@ imports:
|
||||||
- ../slots/track_name
|
- ../slots/track_name
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/SubtitlePositionEnum
|
||||||
|
- ../enums/SubtitleFormatEnum
|
||||||
prefixes:
|
prefixes:
|
||||||
linkml: https://w3id.org/linkml/
|
linkml: https://w3id.org/linkml/
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
@ -579,152 +581,3 @@ classes:
|
||||||
- https://www.w3.org/TR/webvtt1/
|
- https://www.w3.org/TR/webvtt1/
|
||||||
- https://developer.mozilla.org/en-US/docs/Web/API/WebVTT_API
|
- https://developer.mozilla.org/en-US/docs/Web/API/WebVTT_API
|
||||||
- https://www.3playmedia.com/learn/popular-topics/closed-captioning/
|
- https://www.3playmedia.com/learn/popular-topics/closed-captioning/
|
||||||
enums:
|
|
||||||
SubtitleFormatEnum:
|
|
||||||
description: 'Subtitle/caption file formats.
|
|
||||||
|
|
||||||
|
|
||||||
Each format has different capabilities for timing precision,
|
|
||||||
|
|
||||||
styling, positioning, and metadata.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
SRT:
|
|
||||||
description: 'SubRip subtitle format (.srt).
|
|
||||||
|
|
||||||
Most widely supported format.
|
|
||||||
|
|
||||||
Simple: sequence number, timecode, text.
|
|
||||||
|
|
||||||
No styling or positioning support.
|
|
||||||
|
|
||||||
'
|
|
||||||
VTT:
|
|
||||||
description: 'WebVTT format (.vtt).
|
|
||||||
|
|
||||||
W3C standard for HTML5 video.
|
|
||||||
|
|
||||||
Supports styling (CSS), positioning, cue settings.
|
|
||||||
|
|
||||||
Recommended for web delivery.
|
|
||||||
|
|
||||||
'
|
|
||||||
TTML:
|
|
||||||
description: 'Timed Text Markup Language (.ttml/.dfxp/.xml).
|
|
||||||
|
|
||||||
W3C XML-based standard.
|
|
||||||
|
|
||||||
Rich styling, regions, timing.
|
|
||||||
|
|
||||||
Used in broadcast and streaming (Netflix, Amazon).
|
|
||||||
|
|
||||||
'
|
|
||||||
SBV:
|
|
||||||
description: 'YouTube SubViewer format (.sbv).
|
|
||||||
|
|
||||||
Simple format similar to SRT.
|
|
||||||
|
|
||||||
Native YouTube caption format.
|
|
||||||
|
|
||||||
'
|
|
||||||
ASS:
|
|
||||||
description: 'Advanced SubStation Alpha (.ass).
|
|
||||||
|
|
||||||
Advanced styling, positioning, effects.
|
|
||||||
|
|
||||||
Popular for anime subtitles.
|
|
||||||
|
|
||||||
Includes SSA (.ssa) as predecessor.
|
|
||||||
|
|
||||||
'
|
|
||||||
STL:
|
|
||||||
description: 'EBU STL format (.stl).
|
|
||||||
|
|
||||||
European Broadcasting Union standard.
|
|
||||||
|
|
||||||
Used in broadcast television.
|
|
||||||
|
|
||||||
Binary format with teletext compatibility.
|
|
||||||
|
|
||||||
'
|
|
||||||
CAP:
|
|
||||||
description: 'Scenarist Closed Caption (.scc/.cap).
|
|
||||||
|
|
||||||
Used for broadcast closed captioning.
|
|
||||||
|
|
||||||
CEA-608/CEA-708 compliant.
|
|
||||||
|
|
||||||
'
|
|
||||||
SAMI:
|
|
||||||
description: 'Synchronized Accessible Media Interchange (.smi/.sami).
|
|
||||||
|
|
||||||
Microsoft format for Windows Media.
|
|
||||||
|
|
||||||
HTML-like markup with timing.
|
|
||||||
|
|
||||||
'
|
|
||||||
LRC:
|
|
||||||
description: 'LRC lyrics format (.lrc).
|
|
||||||
|
|
||||||
Simple format for song lyrics.
|
|
||||||
|
|
||||||
Line-by-line timing, no duration.
|
|
||||||
|
|
||||||
'
|
|
||||||
JSON:
|
|
||||||
description: 'JSON-based subtitle format.
|
|
||||||
|
|
||||||
Used by some APIs (YouTube transcript API).
|
|
||||||
|
|
||||||
Structure varies by source.
|
|
||||||
|
|
||||||
'
|
|
||||||
UNKNOWN:
|
|
||||||
description: 'Unknown or unrecognized format.
|
|
||||||
|
|
||||||
May require manual parsing or conversion.
|
|
||||||
|
|
||||||
'
|
|
||||||
SubtitlePositionEnum:
|
|
||||||
description: 'Default caption display position on video.
|
|
||||||
|
|
||||||
|
|
||||||
May be overridden by format-specific positioning (VTT, TTML, ASS).
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
BOTTOM:
|
|
||||||
description: 'Bottom of video frame (standard position).
|
|
||||||
|
|
||||||
Most common for subtitles and captions.
|
|
||||||
|
|
||||||
Typically in lower 10-15% of frame.
|
|
||||||
|
|
||||||
'
|
|
||||||
TOP:
|
|
||||||
description: 'Top of video frame.
|
|
||||||
|
|
||||||
Used when bottom is occluded.
|
|
||||||
|
|
||||||
Common for some broadcast formats.
|
|
||||||
|
|
||||||
'
|
|
||||||
MIDDLE:
|
|
||||||
description: 'Center of video frame.
|
|
||||||
|
|
||||||
Rarely used except for specific effects.
|
|
||||||
|
|
||||||
'
|
|
||||||
LEFT:
|
|
||||||
description: 'Left side of frame (vertical text).
|
|
||||||
|
|
||||||
Rare, used for specific languages/effects.
|
|
||||||
|
|
||||||
'
|
|
||||||
RIGHT:
|
|
||||||
description: 'Right side of frame (vertical text).
|
|
||||||
|
|
||||||
Rare, used for specific languages/effects.
|
|
||||||
|
|
||||||
'
|
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,7 @@ imports:
|
||||||
- ../slots/word_count
|
- ../slots/word_count
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/GenerationMethodEnum
|
||||||
prefixes:
|
prefixes:
|
||||||
linkml: https://w3id.org/linkml/
|
linkml: https://w3id.org/linkml/
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
@ -386,34 +387,3 @@ classes:
|
||||||
see_also:
|
see_also:
|
||||||
- https://www.w3.org/TR/prov-o/
|
- https://www.w3.org/TR/prov-o/
|
||||||
- http://www.cidoc-crm.org/cidoc-crm/E73_Information_Object
|
- http://www.cidoc-crm.org/cidoc-crm/E73_Information_Object
|
||||||
enums:
|
|
||||||
GenerationMethodEnum:
|
|
||||||
description: 'Methods for generating video-derived text content.
|
|
||||||
|
|
||||||
|
|
||||||
Standardized values for provenance tracking.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
ASR_AUTOMATIC:
|
|
||||||
description: Automatic speech recognition (raw output)
|
|
||||||
ASR_ENHANCED:
|
|
||||||
description: ASR with post-processing (punctuation, normalization)
|
|
||||||
MANUAL_TRANSCRIPTION:
|
|
||||||
description: Fully human-transcribed content
|
|
||||||
MANUAL_CORRECTION:
|
|
||||||
description: Human-corrected ASR output
|
|
||||||
CV_AUTOMATIC:
|
|
||||||
description: Computer vision detection (raw output)
|
|
||||||
CV_ENHANCED:
|
|
||||||
description: CV with post-processing or filtering
|
|
||||||
MULTIMODAL:
|
|
||||||
description: Combined audio+visual AI processing
|
|
||||||
OCR:
|
|
||||||
description: Optical character recognition from video frames
|
|
||||||
PLATFORM_PROVIDED:
|
|
||||||
description: Content from platform API (YouTube, Vimeo captions)
|
|
||||||
HYBRID:
|
|
||||||
description: Combination of automated and manual methods
|
|
||||||
UNKNOWN:
|
|
||||||
description: Generation method not recorded
|
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@ imports:
|
||||||
- ../slots/transcript_format
|
- ../slots/transcript_format
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/TranscriptFormatEnum
|
||||||
prefixes:
|
prefixes:
|
||||||
linkml: https://w3id.org/linkml/
|
linkml: https://w3id.org/linkml/
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
@ -337,60 +338,3 @@ classes:
|
||||||
see_also:
|
see_also:
|
||||||
- https://schema.org/transcript
|
- https://schema.org/transcript
|
||||||
- http://www.cidoc-crm.org/cidoc-crm/E33_Linguistic_Object
|
- http://www.cidoc-crm.org/cidoc-crm/E33_Linguistic_Object
|
||||||
enums:
|
|
||||||
TranscriptFormatEnum:
|
|
||||||
description: 'Format/structure of transcript text content.
|
|
||||||
|
|
||||||
|
|
||||||
Indicates how the full_text is organized.
|
|
||||||
|
|
||||||
'
|
|
||||||
permissible_values:
|
|
||||||
PLAIN_TEXT:
|
|
||||||
description: 'Continuous text without structural markers.
|
|
||||||
|
|
||||||
No speaker labels, no timestamps, no paragraph breaks.
|
|
||||||
|
|
||||||
Suitable for simple full-text search indexing.
|
|
||||||
|
|
||||||
'
|
|
||||||
PARAGRAPHED:
|
|
||||||
description: 'Text broken into paragraphs.
|
|
||||||
|
|
||||||
May be based on topic changes, speaker pauses, or semantic units.
|
|
||||||
|
|
||||||
Improves human readability.
|
|
||||||
|
|
||||||
'
|
|
||||||
STRUCTURED:
|
|
||||||
description: 'Text with speaker labels and/or section markers.
|
|
||||||
|
|
||||||
Format: "[Speaker] Text content" or similar.
|
|
||||||
|
|
||||||
Enables speaker-specific analysis.
|
|
||||||
|
|
||||||
'
|
|
||||||
TIMESTAMPED:
|
|
||||||
description: 'Text with inline time markers.
|
|
||||||
|
|
||||||
Format: "[00:30] Text content" or similar.
|
|
||||||
|
|
||||||
Enables temporal navigation in text view.
|
|
||||||
|
|
||||||
'
|
|
||||||
VERBATIM:
|
|
||||||
description: 'Exact transcription including fillers, false starts, overlaps.
|
|
||||||
|
|
||||||
"[um]", "[pause]", "[crosstalk]" markers.
|
|
||||||
|
|
||||||
Used for linguistic analysis or legal transcripts.
|
|
||||||
|
|
||||||
'
|
|
||||||
CLEAN:
|
|
||||||
description: 'Edited for readability - fillers removed, grammar corrected.
|
|
||||||
|
|
||||||
May diverge slightly from literal spoken content.
|
|
||||||
|
|
||||||
Suitable for publication or accessibility.
|
|
||||||
|
|
||||||
'
|
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,7 @@ imports:
|
||||||
- ../slots/was_generated_by
|
- ../slots/was_generated_by
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/WarehouseTypeEnum
|
||||||
prefixes:
|
prefixes:
|
||||||
linkml: https://w3id.org/linkml/
|
linkml: https://w3id.org/linkml/
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
|
@ -345,19 +346,3 @@ classes:
|
||||||
warehouse_security_level: BASIC
|
warehouse_security_level: BASIC
|
||||||
warehouse_managed_by: Facilities Management
|
warehouse_managed_by: Facilities Management
|
||||||
description: Archive supplies warehouse
|
description: Archive supplies warehouse
|
||||||
enums:
|
|
||||||
WarehouseTypeEnum:
|
|
||||||
description: Types of warehouse facilities
|
|
||||||
permissible_values:
|
|
||||||
EXHIBITION_EQUIPMENT:
|
|
||||||
description: Display cases, lighting, pedestals, exhibition furniture
|
|
||||||
PACKING_MATERIALS:
|
|
||||||
description: Crates, boxes, foam, tissue, packing supplies
|
|
||||||
FURNITURE:
|
|
||||||
description: Office furniture, event furniture
|
|
||||||
GENERAL_SUPPLIES:
|
|
||||||
description: Mixed operational supplies
|
|
||||||
TECHNICAL_EQUIPMENT:
|
|
||||||
description: AV equipment, tools, machinery
|
|
||||||
SIGNAGE:
|
|
||||||
description: Exhibition signage, wayfinding, banners
|
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,7 @@ imports:
|
||||||
- ../slots/typical_scope
|
- ../slots/typical_scope
|
||||||
- ./SpecificityAnnotation
|
- ./SpecificityAnnotation
|
||||||
- ./TemplateSpecificityScores
|
- ./TemplateSpecificityScores
|
||||||
|
- ../enums/PortalCategoryEnum
|
||||||
classes:
|
classes:
|
||||||
WebPortalType:
|
WebPortalType:
|
||||||
class_uri: skos:Concept
|
class_uri: skos:Concept
|
||||||
|
|
@ -110,25 +111,3 @@ classes:
|
||||||
see_also:
|
see_also:
|
||||||
- https://pro.europeana.eu/page/edm-documentation
|
- https://pro.europeana.eu/page/edm-documentation
|
||||||
- https://www.w3.org/2004/02/skos/
|
- https://www.w3.org/2004/02/skos/
|
||||||
enums:
|
|
||||||
PortalCategoryEnum:
|
|
||||||
description: High-level categories for web portal type classification
|
|
||||||
permissible_values:
|
|
||||||
GEOGRAPHIC_SCOPE:
|
|
||||||
description: Portals defined by territorial coverage (national, regional)
|
|
||||||
DOMAIN_SPECIFIC:
|
|
||||||
description: Portals focused on a specific heritage domain (archives, libraries, museums)
|
|
||||||
CROSS_DOMAIN:
|
|
||||||
description: Portals spanning multiple heritage sectors (LAM integration)
|
|
||||||
THEMATIC:
|
|
||||||
description: Portals with specialized subject focus (colonial, monastic, genealogical)
|
|
||||||
TECHNICAL_INFRASTRUCTURE:
|
|
||||||
description: Portals providing technical services (SPARQL, IIIF, OAI-PMH)
|
|
||||||
ACCESS_MODEL:
|
|
||||||
description: Portals defined by access approach (open access, research data)
|
|
||||||
RESEARCH_INFRASTRUCTURE:
|
|
||||||
description: Pan-European/international research infrastructure portals
|
|
||||||
REGISTRY:
|
|
||||||
description: Dataset registries tracking published heritage data (e.g., NDE Dataset Register)
|
|
||||||
LIFECYCLE:
|
|
||||||
description: Historical status portals (legacy, deprecated)
|
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ slots:
|
||||||
- hc:ColdStorageEnvironment (-5°C, 30% RH)
|
- hc:ColdStorageEnvironment (-5°C, 30% RH)
|
||||||
- hc:PhotographicMaterialsEnvironment (15°C, 35% RH)
|
- hc:PhotographicMaterialsEnvironment (15°C, 35% RH)
|
||||||
- hc:TextileStorageEnvironment (18°C, 50% RH, 50 lux)
|
- hc:TextileStorageEnvironment (18°C, 50% RH, 50 lux)
|
||||||
range: uriorcurie
|
range: string
|
||||||
slot_uri: skos:exactMatch
|
slot_uri: skos:exactMatch
|
||||||
examples:
|
examples:
|
||||||
- value: hc:StandardArchiveEnvironment
|
- value: hc:StandardArchiveEnvironment
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ slots:
|
||||||
organizational_principle_uri:
|
organizational_principle_uri:
|
||||||
slot_uri: hc:organizationalPrincipleUri
|
slot_uri: hc:organizationalPrincipleUri
|
||||||
description: URI reference to RiC-O organizational principle vocabulary term.
|
description: URI reference to RiC-O organizational principle vocabulary term.
|
||||||
range: uriorcurie
|
range: string
|
||||||
required: false
|
required: false
|
||||||
comments:
|
comments:
|
||||||
- rico:hasOrHadOrganizationalPrinciple does not exist in RiC-O - use hc namespace
|
- rico:hasOrHadOrganizationalPrinciple does not exist in RiC-O - use hc namespace
|
||||||
|
|
@ -11,5 +11,5 @@ slots:
|
||||||
post_type_activity_streams_type:
|
post_type_activity_streams_type:
|
||||||
slot_uri: schema:additionalType
|
slot_uri: schema:additionalType
|
||||||
description: Activity Streams 2.0 type mapping for this post type.
|
description: Activity Streams 2.0 type mapping for this post type.
|
||||||
range: uriorcurie
|
range: string
|
||||||
required: false
|
required: false
|
||||||
|
|
@ -11,5 +11,5 @@ slots:
|
||||||
post_type_schema_org_type:
|
post_type_schema_org_type:
|
||||||
slot_uri: schema:additionalType
|
slot_uri: schema:additionalType
|
||||||
description: Schema.org type mapping for this post type.
|
description: Schema.org type mapping for this post type.
|
||||||
range: uriorcurie
|
range: string
|
||||||
required: false
|
required: false
|
||||||
|
|
@ -6,6 +6,7 @@ prefixes:
|
||||||
hc: https://nde.nl/ontology/hc/
|
hc: https://nde.nl/ontology/hc/
|
||||||
imports:
|
imports:
|
||||||
- linkml:types
|
- linkml:types
|
||||||
|
- ../enums/PreservationMethodEnum
|
||||||
default_prefix: hc
|
default_prefix: hc
|
||||||
slots:
|
slots:
|
||||||
preservation_method:
|
preservation_method:
|
||||||
|
|
|
||||||
24
schemas/20251121/linkml/modules/slots/protocol_name.yaml
Normal file
24
schemas/20251121/linkml/modules/slots/protocol_name.yaml
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
id: https://nde.nl/ontology/hc/slot/protocol_name
|
||||||
|
name: protocol_name_slot
|
||||||
|
title: Protocol Name Slot
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
dcterms: http://purl.org/dc/terms/
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
default_prefix: hc
|
||||||
|
slots:
|
||||||
|
protocol_name:
|
||||||
|
slot_uri: dcterms:conformsTo
|
||||||
|
description: |
|
||||||
|
Name of the protocol or standard this endpoint type implements.
|
||||||
|
|
||||||
|
Dublin Core: conformsTo for standard compliance.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
- "OAI-PMH" (Open Archives Initiative Protocol for Metadata Harvesting)
|
||||||
|
- "IIIF Image API" (International Image Interoperability Framework)
|
||||||
|
- "SPARQL" (SPARQL Protocol and RDF Query Language)
|
||||||
|
range: string
|
||||||
|
required: false
|
||||||
24
schemas/20251121/linkml/modules/slots/protocol_version.yaml
Normal file
24
schemas/20251121/linkml/modules/slots/protocol_version.yaml
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
id: https://nde.nl/ontology/hc/slot/protocol_version
|
||||||
|
name: protocol_version_slot
|
||||||
|
title: Protocol Version Slot
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
schema: http://schema.org/
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
default_prefix: hc
|
||||||
|
slots:
|
||||||
|
protocol_version:
|
||||||
|
slot_uri: schema:version
|
||||||
|
description: |
|
||||||
|
Version of the protocol this endpoint type supports.
|
||||||
|
|
||||||
|
Schema.org: version for protocol version.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
- "2.0" (OAI-PMH)
|
||||||
|
- "3.0" (IIIF Image API)
|
||||||
|
- "1.1" (SPARQL)
|
||||||
|
range: string
|
||||||
|
required: false
|
||||||
|
|
@ -11,5 +11,5 @@ slots:
|
||||||
social_media_wikidata_id:
|
social_media_wikidata_id:
|
||||||
slot_uri: schema:sameAs
|
slot_uri: schema:sameAs
|
||||||
description: Wikidata entity ID for this social media platform.
|
description: Wikidata entity ID for this social media platform.
|
||||||
range: uriorcurie
|
range: string
|
||||||
required: false
|
required: false
|
||||||
23
schemas/20251121/linkml/modules/slots/specification_url.yaml
Normal file
23
schemas/20251121/linkml/modules/slots/specification_url.yaml
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
id: https://nde.nl/ontology/hc/slot/specification_url
|
||||||
|
name: specification_url_slot
|
||||||
|
title: Specification URL Slot
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
schema: http://schema.org/
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
default_prefix: hc
|
||||||
|
slots:
|
||||||
|
specification_url:
|
||||||
|
slot_uri: schema:documentation
|
||||||
|
description: |
|
||||||
|
URL to the official specification document for this protocol.
|
||||||
|
|
||||||
|
Schema.org: documentation for specification reference.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
- "http://www.openarchives.org/OAI/openarchivesprotocol.html" (OAI-PMH)
|
||||||
|
- "https://iiif.io/api/image/3.0/" (IIIF Image API 3.0)
|
||||||
|
range: uri
|
||||||
|
required: false
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
id: https://nde.nl/ontology/hc/slot/typical_http_methods
|
||||||
|
name: typical_http_methods_slot
|
||||||
|
title: Typical HTTP Methods Slot
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
schema: http://schema.org/
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
default_prefix: hc
|
||||||
|
slots:
|
||||||
|
typical_http_methods:
|
||||||
|
slot_uri: schema:httpMethod
|
||||||
|
description: |
|
||||||
|
HTTP methods typically used by endpoints of this type.
|
||||||
|
|
||||||
|
Schema.org: httpMethod for HTTP verb.
|
||||||
|
|
||||||
|
Values: GET, POST, PUT, DELETE, HEAD, OPTIONS
|
||||||
|
range: string
|
||||||
|
multivalued: true
|
||||||
|
required: false
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
id: https://nde.nl/ontology/hc/slot/typical_response_formats
|
||||||
|
name: typical_response_formats_slot
|
||||||
|
title: Typical Response Formats Slot
|
||||||
|
prefixes:
|
||||||
|
linkml: https://w3id.org/linkml/
|
||||||
|
hc: https://nde.nl/ontology/hc/
|
||||||
|
dcterms: http://purl.org/dc/terms/
|
||||||
|
imports:
|
||||||
|
- linkml:types
|
||||||
|
default_prefix: hc
|
||||||
|
slots:
|
||||||
|
typical_response_formats:
|
||||||
|
slot_uri: dcterms:format
|
||||||
|
description: |
|
||||||
|
MIME types typically returned by endpoints of this type.
|
||||||
|
|
||||||
|
Dublin Core: format for media types.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
- ["application/xml"] (OAI-PMH - always XML)
|
||||||
|
- ["application/json", "application/ld+json"] (REST APIs)
|
||||||
|
range: string
|
||||||
|
multivalued: true
|
||||||
|
required: false
|
||||||
|
|
@ -11,5 +11,5 @@ slots:
|
||||||
wikidata_equivalent:
|
wikidata_equivalent:
|
||||||
slot_uri: skos:exactMatch
|
slot_uri: skos:exactMatch
|
||||||
description: Wikidata entity that is equivalent to this concept.
|
description: Wikidata entity that is equivalent to this concept.
|
||||||
range: uriorcurie
|
range: string
|
||||||
required: false
|
required: false
|
||||||
|
|
@ -11,5 +11,5 @@ slots:
|
||||||
wikidata_mapping:
|
wikidata_mapping:
|
||||||
slot_uri: skos:closeMatch
|
slot_uri: skos:closeMatch
|
||||||
description: Wikidata entity that closely matches this concept.
|
description: Wikidata entity that closely matches this concept.
|
||||||
range: uriorcurie
|
range: string
|
||||||
required: false
|
required: false
|
||||||
Loading…
Reference in a new issue