Summary: - Create 46 missing slot definition files with proper slot_uri values - Add slot imports to main schema (01_custodian_name_modular.yaml) - Fix YAML examples sections in 116+ class and slot files - Fix PersonObservation.yaml examples section (nested objects → string literals) Technical changes: - All slots now have explicit slot_uri mapping to base ontologies (RiC-O, Schema.org, SKOS) - Eliminates malformed URIs like 'custodian/:slot_name' in generated RDF - gen-owl now produces valid Turtle with 153,166 triples New slot files (46): - RiC-O slots: rico_note, rico_organizational_principle, rico_has_or_had_holder, etc. - Scope slots: scope_includes, scope_excludes, archive_scope - Organization slots: organization_type, governance_authority, area_served - Platform slots: platform_type_category, portal_type_category - Social media slots: social_media_platform_category, post_type_* - Type hierarchy slots: broader_type, narrower_types, custodian_type_broader - Wikidata slots: wikidata_equivalent, wikidata_mapping Generated output: - schemas/20251121/rdf/01_custodian_name_modular_20260107_134534_clean.owl.ttl (6.9MB) - Validated with rdflib: 153,166 triples, no malformed URIs
473 lines
17 KiB
YAML
473 lines
17 KiB
YAML
id: https://nde.nl/ontology/hc/class/AccessPolicy
|
|
name: access_policy_class
|
|
title: AccessPolicy Class
|
|
prefixes:
|
|
linkml: https://w3id.org/linkml/
|
|
hc: https://nde.nl/ontology/hc/
|
|
premis: http://www.loc.gov/premis/rdf/v3/
|
|
dcterms: http://purl.org/dc/terms/
|
|
rico: https://www.ica.org/standards/RiC/ontology#
|
|
schema: http://schema.org/
|
|
skos: http://www.w3.org/2004/02/skos/core#
|
|
wd: http://www.wikidata.org/entity/
|
|
default_prefix: hc
|
|
imports:
|
|
- linkml:types
|
|
- ../slots/valid_from
|
|
- ../slots/valid_to
|
|
- ../slots/embargo_end_date
|
|
- ../slots/contact_email
|
|
- ../slots/policy_id
|
|
- ../slots/policy_name
|
|
- ../slots/class_metadata_slots
|
|
classes:
|
|
AccessPolicy:
|
|
class_uri: premis:RightsDeclaration
|
|
description: |
|
|
Access policy defining conditions under which heritage collections can be accessed.
|
|
|
|
**PURPOSE**:
|
|
|
|
AccessPolicy captures the access conditions governing a Collection:
|
|
- WHO can access (public, researchers, staff only)
|
|
- HOW access is granted (open, by appointment, with credentials)
|
|
- WHEN access is available (opening hours, embargo periods)
|
|
- WHAT restrictions apply (fragile materials, privacy, cultural sensitivity)
|
|
|
|
1. **PREMIS**:
|
|
- `premis:RightsDeclaration` - "An assertion of one or more rights or
|
|
permissions pertaining to an object and/or its content."
|
|
- Links to Collection via premis:hasRightsDeclaration
|
|
|
|
2. **Dublin Core**:
|
|
- `dcterms:accessRights` - "Information about who may access the resource
|
|
or an indication of its security status."
|
|
|
|
3. **RiC-O**:
|
|
- `rico:hasOrHadAllMembersWithAccessConditions` - Links RecordSet to access
|
|
conditions applying to all members
|
|
|
|
4. **RightsStatements.org**:
|
|
- Standardized rights statements for cultural heritage
|
|
- E.g., "In Copyright", "No Copyright", "Unknown Copyright"
|
|
|
|
**ACCESS LEVEL TAXONOMY**:
|
|
|
|
```
|
|
AccessPolicy (root)
|
|
│
|
|
├── OpenAccess
|
|
│ ├── PUBLIC_OPEN - No restrictions, walk-in access
|
|
│ ├── PUBLIC_REGISTRATION - Free registration required
|
|
│ └── PUBLIC_ONLINE - Digital access freely available
|
|
│
|
|
├── RestrictedAccess
|
|
│ ├── RESEARCHERS_ONLY - Academic researchers with credentials
|
|
│ ├── BY_APPOINTMENT - Advance booking required
|
|
│ ├── STAFF_ONLY - Internal access only
|
|
│ └── PERMISSION_REQUIRED - Written permission needed
|
|
│
|
|
├── ClosedAccess
|
|
│ ├── TEMPORARILY_CLOSED - Renovation, conservation
|
|
│ ├── EMBARGOED - Time-limited closure
|
|
│ ├── PERMANENTLY_CLOSED - Not accessible
|
|
│ └── REPATRIATED - Returned to community of origin
|
|
│
|
|
└── ConditionalAccess
|
|
├── CULTURALLY_SENSITIVE - Indigenous/sacred materials
|
|
├── PRIVACY_RESTRICTED - Personal data protection
|
|
├── FRAGILE_HANDLING - Special handling required
|
|
└── LEGAL_RESTRICTION - Copyright, legal constraints
|
|
```
|
|
|
|
**USE CASES**:
|
|
|
|
1. **Archive Open Access**:
|
|
```yaml
|
|
AccessPolicy:
|
|
policy_id: "hc:access-policy/nationaal-archief-open"
|
|
access_level: "PUBLIC_OPEN"
|
|
access_description: "Open to all visitors during reading room hours"
|
|
conditions: "Valid ID required for registration"
|
|
```
|
|
|
|
2. **Restricted Research Materials**:
|
|
```yaml
|
|
AccessPolicy:
|
|
policy_id: "hc:access-policy/university-special-collections"
|
|
access_level: "RESEARCHERS_ONLY"
|
|
access_description: "Academic researchers with institutional affiliation"
|
|
conditions: "Letter of introduction required from supervising institution"
|
|
appointment_required: true
|
|
```
|
|
|
|
3. **Embargoed Collection**:
|
|
```yaml
|
|
AccessPolicy:
|
|
policy_id: "hc:access-policy/donor-embargo-2050"
|
|
access_level: "EMBARGOED"
|
|
access_description: "Closed until 2050 per donor agreement"
|
|
embargo_end_date: "2050-01-01"
|
|
embargo_reason: "Donor privacy restrictions"
|
|
```
|
|
|
|
4. **Culturally Sensitive**:
|
|
```yaml
|
|
AccessPolicy:
|
|
policy_id: "hc:access-policy/indigenous-protocols"
|
|
access_level: "CULTURALLY_SENSITIVE"
|
|
access_description: "Access governed by Traditional Knowledge protocols"
|
|
conditions: "Consultation with originating community required"
|
|
cultural_protocol_url: "https://localcontexts.org/tk-labels/"
|
|
```
|
|
|
|
**RELATIONSHIP TO DIM ARCHIVE**:
|
|
|
|
DimArchive (Dark archive / Preservation-only storage) uses AccessPolicy to express:
|
|
- Materials stored for preservation, not current access
|
|
- Access restricted until triggering conditions (time, event)
|
|
- "Gray literature" or un-catalogued backlogs awaiting processing
|
|
exact_mappings:
|
|
- premis:RightsDeclaration
|
|
- dcterms:accessRights
|
|
close_mappings:
|
|
- rico:Rule
|
|
- schema:ActionAccessSpecification
|
|
related_mappings:
|
|
- rico:hasOrHadAllMembersWithAccessConditions
|
|
slots:
|
|
- access_description
|
|
- access_level
|
|
- appointment_required
|
|
- conditions
|
|
- contact_email
|
|
- credentials_required
|
|
- cultural_protocol_url
|
|
- embargo_end_date
|
|
- embargo_reason
|
|
- fee_amount
|
|
- fee_required
|
|
- legal_basis
|
|
- policy_id
|
|
- policy_name
|
|
- registration_required
|
|
- review_date
|
|
- rights_statement
|
|
- rights_statement_url
|
|
- specificity_annotation
|
|
- template_specificity
|
|
- valid_from
|
|
- valid_to
|
|
slot_usage:
|
|
policy_id:
|
|
slot_uri: dcterms:identifier
|
|
description: |
|
|
Unique identifier for this access policy.
|
|
range: uriorcurie
|
|
required: true
|
|
identifier: true
|
|
examples:
|
|
- value: https://nde.nl/ontology/hc/access-policy/open-access
|
|
description: Standard open access policy
|
|
policy_name:
|
|
slot_uri: skos:prefLabel
|
|
description: |
|
|
Human-readable name for this policy.
|
|
range: string
|
|
required: true
|
|
examples:
|
|
- value: Open Access
|
|
description: Public open access
|
|
- value: Researchers Only
|
|
description: Restricted to researchers
|
|
- value: Embargoed until 2050
|
|
description: Time-limited closure
|
|
access_level:
|
|
slot_uri: dcterms:accessRights
|
|
description: |
|
|
Primary access level classification.
|
|
|
|
Values:
|
|
- PUBLIC_OPEN: No restrictions, walk-in access
|
|
- PUBLIC_REGISTRATION: Free registration required
|
|
- PUBLIC_ONLINE: Digital access freely available
|
|
- RESEARCHERS_ONLY: Academic researchers with credentials
|
|
- BY_APPOINTMENT: Advance booking required
|
|
- STAFF_ONLY: Internal access only
|
|
- PERMISSION_REQUIRED: Written permission needed
|
|
- TEMPORARILY_CLOSED: Renovation, conservation
|
|
- EMBARGOED: Time-limited closure
|
|
- PERMANENTLY_CLOSED: Not accessible
|
|
- CULTURALLY_SENSITIVE: Indigenous/sacred materials
|
|
- PRIVACY_RESTRICTED: Personal data protection
|
|
- FRAGILE_HANDLING: Special handling required
|
|
- LEGAL_RESTRICTION: Copyright, legal constraints
|
|
range: string
|
|
required: true
|
|
examples:
|
|
- value: PUBLIC_OPEN
|
|
- value: RESEARCHERS_ONLY
|
|
- value: EMBARGOED
|
|
access_description:
|
|
slot_uri: dcterms:description
|
|
description: |
|
|
Narrative description of access conditions.
|
|
range: string
|
|
examples:
|
|
- value: Open to all visitors during reading room hours (Mon-Fri 9-17)
|
|
description: Archive public access
|
|
- value: Access restricted to academic researchers with institutional affiliation
|
|
description: University special collections
|
|
conditions:
|
|
slot_uri: rico:conditionOfAccess
|
|
description: |
|
|
Specific conditions or requirements for access.
|
|
|
|
RiC-O: conditionOfAccess for access requirements.
|
|
range: string
|
|
multivalued: true
|
|
examples:
|
|
- value:
|
|
- Valid government-issued ID required
|
|
- Registration form must be completed
|
|
- Bags and coats must be stored in lockers
|
|
description: Archive access conditions
|
|
rights_statement:
|
|
slot_uri: dcterms:rights
|
|
description: |
|
|
Rights statement text (from RightsStatements.org or similar).
|
|
range: string
|
|
examples:
|
|
- value: In Copyright
|
|
description: Copyright protected
|
|
- value: No Copyright - United States
|
|
description: Public domain (US)
|
|
rights_statement_url:
|
|
slot_uri: dcterms:rights
|
|
description: |
|
|
URL to standardized rights statement (RightsStatements.org).
|
|
range: uri
|
|
examples:
|
|
- value: http://rightsstatements.org/vocab/InC/1.0/
|
|
description: In Copyright
|
|
- value: http://rightsstatements.org/vocab/NoC-US/1.0/
|
|
description: No Copyright - United States
|
|
appointment_required:
|
|
slot_uri: schema:requiresAppointment
|
|
description: |
|
|
Whether advance appointment is required.
|
|
range: boolean
|
|
examples:
|
|
- value: true
|
|
description: Appointment required
|
|
- value: false
|
|
description: Walk-in access
|
|
registration_required:
|
|
slot_uri: schema:eligibleCustomerType
|
|
description: |
|
|
Whether registration is required (even for free access).
|
|
range: boolean
|
|
examples:
|
|
- value: true
|
|
description: Must register as reader
|
|
credentials_required:
|
|
slot_uri: schema:eligibleCustomerType
|
|
description: |
|
|
Type of credentials required for access.
|
|
|
|
Values:
|
|
- NONE: No credentials needed
|
|
- INSTITUTIONAL: Affiliation with research institution
|
|
- PROFESSIONAL: Professional membership (archivist, librarian)
|
|
- ACADEMIC: Academic degree or enrollment
|
|
- GOVERNMENT: Government clearance
|
|
range: string
|
|
examples:
|
|
- value: INSTITUTIONAL
|
|
description: Must be affiliated with research institution
|
|
fee_required:
|
|
slot_uri: schema:isAccessibleForFree
|
|
description: |
|
|
Whether access requires payment.
|
|
range: boolean
|
|
examples:
|
|
- value: false
|
|
description: Free access
|
|
- value: true
|
|
description: Fee required
|
|
fee_amount:
|
|
slot_uri: schema:price
|
|
description: |
|
|
Fee amount if access requires payment.
|
|
range: string
|
|
examples:
|
|
- value: €5.00 per day
|
|
description: Daily reading room fee
|
|
- value: Free for researchers, €10 for general public
|
|
description: Tiered fee structure
|
|
embargo_end_date:
|
|
slot_uri: premis:endDate
|
|
description: |
|
|
Date when embargo ends (for EMBARGOED access level).
|
|
|
|
PREMIS: endDate for rights expiration.
|
|
range: date
|
|
examples:
|
|
- value: '2050-01-01'
|
|
description: Embargo lifts January 1, 2050
|
|
embargo_reason:
|
|
slot_uri: premis:determinationBasis
|
|
description: |
|
|
Reason for embargo (donor restriction, legal, etc.).
|
|
range: string
|
|
examples:
|
|
- value: Donor privacy restrictions per deed of gift
|
|
description: Donor-imposed embargo
|
|
- value: Contains personal data protected under GDPR
|
|
description: Privacy law embargo
|
|
cultural_protocol_url:
|
|
slot_uri: dcterms:conformsTo
|
|
description: |
|
|
URL to cultural protocol (for CULTURALLY_SENSITIVE materials).
|
|
|
|
E.g., Local Contexts Traditional Knowledge labels.
|
|
range: uri
|
|
examples:
|
|
- value: https://localcontexts.org/tk-labels/
|
|
description: Traditional Knowledge labels
|
|
legal_basis:
|
|
slot_uri: premis:statute
|
|
description: |
|
|
Legal basis for access restriction.
|
|
|
|
PREMIS: statute for legal foundation.
|
|
range: string
|
|
examples:
|
|
- value: General Data Protection Regulation (GDPR)
|
|
description: EU privacy law
|
|
- value: Freedom of Information Act exemption 6
|
|
description: US FOIA exemption
|
|
review_date:
|
|
slot_uri: dcterms:modified
|
|
description: |
|
|
Date when access policy should be reviewed.
|
|
range: date
|
|
examples:
|
|
- value: '2025-12-31'
|
|
description: Annual review date
|
|
contact_email:
|
|
slot_uri: schema:email
|
|
description: |
|
|
Email contact for access inquiries.
|
|
range: string
|
|
examples:
|
|
- value: access@nationaalarchief.nl
|
|
description: Access request contact
|
|
valid_from:
|
|
slot_uri: schema:validFrom
|
|
description: |
|
|
Date when this policy became effective.
|
|
range: date
|
|
valid_to:
|
|
slot_uri: schema:validThrough
|
|
description: |
|
|
Date when this policy expires (if applicable).
|
|
range: date
|
|
specificity_annotation:
|
|
range: SpecificityAnnotation
|
|
inlined: true
|
|
template_specificity:
|
|
range: TemplateSpecificityScores
|
|
inlined: true
|
|
comments:
|
|
- AccessPolicy defines access conditions for Collection instances
|
|
- Used by Collection.access_policy_ref to link policies to holdings
|
|
- Supports RightsStatements.org and Local Contexts protocols
|
|
- Temporal validity enables policy versioning and embargo expiration
|
|
- DimArchive (dark archive) uses AccessPolicy to express preservation-only access
|
|
see_also:
|
|
- http://www.loc.gov/premis/rdf/v3/RightsDeclaration
|
|
- https://rightsstatements.org/
|
|
- https://localcontexts.org/
|
|
- https://www.ica.org/standards/RiC/ontology#Rule
|
|
examples:
|
|
- value:
|
|
policy_id: https://nde.nl/ontology/hc/access-policy/nationaal-archief-open
|
|
policy_name: Nationaal Archief Public Access
|
|
access_level: PUBLIC_OPEN
|
|
access_description: Open to all visitors during reading room hours
|
|
conditions:
|
|
- Valid government-issued ID required
|
|
- Registration form must be completed
|
|
- Original materials handled with gloves
|
|
registration_required: true
|
|
appointment_required: false
|
|
fee_required: false
|
|
contact_email: studiezaal@nationaalarchief.nl
|
|
description: Standard archive public access policy
|
|
- value:
|
|
policy_id: https://nde.nl/ontology/hc/access-policy/donor-embargo-2050
|
|
policy_name: Embargoed until 2050
|
|
access_level: EMBARGOED
|
|
access_description: Collection closed until 2050 per donor agreement
|
|
embargo_end_date: '2050-01-01'
|
|
embargo_reason: Donor privacy restrictions per deed of gift
|
|
legal_basis: Deed of Gift clause 4.2
|
|
review_date: '2049-06-01'
|
|
description: Time-limited embargo policy
|
|
- value:
|
|
policy_id: https://nde.nl/ontology/hc/access-policy/dim-archive-preservation
|
|
policy_name: DIM Archive - Preservation Only
|
|
access_level: TEMPORARILY_CLOSED
|
|
access_description: Materials in preservation storage, not currently accessible
|
|
conditions:
|
|
- Awaiting processing and cataloging
|
|
- Access may be arranged for urgent research needs
|
|
appointment_required: true
|
|
credentials_required: PROFESSIONAL
|
|
contact_email: preservation@archive.org
|
|
description: Dark archive / DIM access policy
|
|
slots:
|
|
access_level:
|
|
description: Primary access level classification
|
|
range: string
|
|
access_description:
|
|
description: Narrative description of access
|
|
range: string
|
|
conditions:
|
|
description: Specific access conditions
|
|
range: string
|
|
multivalued: true
|
|
rights_statement:
|
|
description: Rights statement text
|
|
range: string
|
|
rights_statement_url:
|
|
description: URL to standardized rights statement
|
|
range: uri
|
|
appointment_required:
|
|
description: Whether appointment is required
|
|
range: boolean
|
|
registration_required:
|
|
description: Whether registration is required
|
|
range: boolean
|
|
credentials_required:
|
|
description: Type of credentials required
|
|
range: string
|
|
fee_required:
|
|
description: Whether fee is required
|
|
range: boolean
|
|
fee_amount:
|
|
description: Fee amount description
|
|
range: string
|
|
embargo_reason:
|
|
description: Reason for embargo
|
|
range: string
|
|
cultural_protocol_url:
|
|
description: URL to cultural protocol
|
|
range: uri
|
|
legal_basis:
|
|
description: Legal basis for restriction
|
|
range: string
|
|
review_date:
|
|
description: Policy review date
|
|
range: date
|