glam/schemas/20251121/linkml/modules/classes/WebPortal.yaml

990 lines
38 KiB
YAML

# WebPortal Class
# Represents heritage metadata aggregation/discovery portals
# Based on Europeana Data Model (EDM) Aggregation concept
id: https://nde.nl/ontology/hc/class/WebPortal
name: WebPortal
imports:
- linkml:types
# NOTE: WebPortalTypeEnum was migrated to WebPortalType class hierarchy (2025-12-06)
# See: modules/classes/WebPortalType.yaml, modules/classes/WebPortalTypes.yaml
- ./WebPortalType
- ./TimeSpan
- ./CustodianObservation
- ./ReconstructionActivity
- ./DataLicensePolicy
- ./Project
- ./DigitalPlatform
- ./AuxiliaryDigitalPlatform
- ./EncompassingBody
- ../slots/api_endpoint
- ../slots/geographic_scope
- ../slots/metadata_standards
- ../slots/sparql_endpoint
- ../slots/oai_pmh_endpoint
- ../slots/identifiers
- ../slots/portal_data_sources
- ../slots/operated_by
- ../slots/exposes_collections
- ../slots/data_license_policy
- ../slots/serves_finding_aids
- ./ReconstructedEntity
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
dcterms: http://purl.org/dc/terms/
edm: http://www.europeana.eu/schemas/edm/
prov: http://www.w3.org/ns/prov#
foaf: http://xmlns.com/foaf/0.1/
ore: http://www.openarchives.org/ore/terms/
skos: http://www.w3.org/2004/02/skos/core#
odrl: http://www.w3.org/ns/odrl/2/
org: http://www.w3.org/ns/org#
default_prefix: hc
slots:
portal_id:
identifier: true
range: uriorcurie
description: Unique identifier for this web portal
portal_name:
range: string
description: Name of the web portal
portal_type:
range: WebPortalType
description: Type/category of portal
portal_url:
range: uri
description: Primary URL of the portal
portal_description:
range: string
description: Description of the portal's purpose and scope
# NOTE: geographic_scope imported from global slot ../slots/geographic_scope.yaml
thematic_scope:
range: string
multivalued: true
description: Thematic/domain focus areas
# NOTE: portal_data_sources imported from global slot ../slots/portal_data_sources.yaml
# NOTE: exposes_collections imported from global slot ../slots/exposes_collections.yaml
# NOTE: operated_by imported from global slot ../slots/operated_by.yaml
aggregates_from:
range: uriorcurie
multivalued: true
description: Other portals this portal aggregates from
aggregated_by:
range: uriorcurie
multivalued: true
description: Portals that aggregate from this portal
# NOTE: metadata_standards imported from global slot ../slots/metadata_standards.yaml
# NOTE: api_endpoint imported from global slot ../slots/api_endpoint.yaml
# NOTE: sparql_endpoint imported from global slot ../slots/sparql_endpoint.yaml
# NOTE: oai_pmh_endpoint imported from global slot ../slots/oai_pmh_endpoint.yaml
portal_language:
range: string
multivalued: true
description: Languages supported by the portal interface
launch_date:
range: date
description: Date the portal was launched
portal_status:
range: string
description: Current status (ACTIVE, LEGACY, DEPRECATED, MERGED)
successor_portal:
range: uriorcurie
description: Successor portal if this one was deprecated/merged
record_count:
range: integer
description: Approximate number of records in the portal
participating_institutions:
range: integer
description: Number of institutions contributing to the portal
# NOTE: identifiers imported from global slot ../slots/identifiers.yaml
# NOTE: data_license_policy imported from global slot ../slots/data_license_policy.yaml
created_by_project:
range: Project
description: |
Project that created or maintains this web portal.
Links to Project class representing time-limited initiatives.
associated_encompassing_bodies:
range: uriorcurie
multivalued: true
description: |
EncompassingBody organizations associated with this portal (beyond operator).
For funding relationships, link to FundingOrganisation which then links to WebPortal.
implements_digital_platform:
range: DigitalPlatform
multivalued: true
description: |
DigitalPlatform instances that this portal aggregates from or represents.
Links portal aggregation to individual custodian digital platforms.
implements_auxiliary_platform:
range: AuxiliaryDigitalPlatform
multivalued: true
description: |
AuxiliaryDigitalPlatform instances associated with this portal.
Links to project-based or subordinate digital platforms.
classes:
WebPortal:
is_a: ReconstructedEntity
class_uri: edm:Aggregation
description: |
A web portal that aggregates or provides discovery access to heritage
metadata from multiple custodian institutions.
**DEFINITION**:
WebPortal represents AGGREGATION/DISCOVERY portals - platforms that collect
and expose metadata from multiple heritage institutions. Distinguished from:
- **DigitalPlatform**: A single custodian's website/online presence
- **CollectionManagementSystem**: Backend software managing collection data
**KEY CHARACTERISTICS**:
1. **Multi-Institution Aggregation**: Portals aggregate metadata from many institutions
2. **Discovery Focus**: Primary purpose is search/discovery across collections
3. **Standardized Metadata**: Use common standards (EDM, Dublin Core, EAD, LIDO)
4. **Technical Infrastructure**: Provide APIs, OAI-PMH endpoints, SPARQL
5. **Operated by Networks**: Typically run by EncompassingBody (Network, Consortium)
**RELATIONSHIP ARCHITECTURE**:
```
EncompassingBody (operator)
└── operates → WebPortal
├── portal_data_sources ← CollectionManagementSystem[]
│ (CMS feeds data to portal)
├── exposes_collections → CustodianCollection[]
│ (collections discoverable via portal)
└── aggregates_from → WebPortal[]
(portal-to-portal aggregation chains)
```
**AGGREGATION CHAINS**:
Some portals aggregate from other portals, forming chains:
```
CMS → Regional Archive Portal → National Archive Portal → Archives Portal Europe
CMS → Museum → Aggregator → Europeana
```
Use `aggregates_from` and `aggregated_by` to model these chains.
**PORTAL TYPES** (from WebPortalType class hierarchy):
- **NATIONAL_AGGREGATOR**: NDE Dataset Register, Deutsche Digitale Bibliothek
- **REGIONAL_AGGREGATOR**: LEO-BW, Bavarikon
- **ARCHIVAL_PORTAL**: Archieven.nl, Archives Portal Europe
- **LIBRARY_UNION_CATALOG**: WorldCat, GBV
- **MUSEUM_COLLECTION_PORTAL**: Collectie Nederland, Europeana Collections
- **CROSS_DOMAIN_AGGREGATOR**: Europeana, DPLA
- **COLONIAL_HERITAGE_PORTAL**: Colonial Collections (NL)
- **GENEALOGICAL_PORTAL**: OpenArchieven.nl, FamilySearch
- **LINKED_DATA_HUB**: NDE Termennetwerk, Wikidata
- **OAI_PMH_HARVESTER**: BASE, OpenAIRE
**EXAMPLES OF DUTCH PORTALS**:
1. **NDE Dataset Register** (datacatalogus.netwerkdigitaalerfgoed.nl)
- Type: NATIONAL_AGGREGATOR
- Operator: NDE (NetworkOrganisation)
- Scope: All Dutch heritage datasets
2. **Archieven.nl** (archieven.nl)
- Type: ARCHIVAL_PORTAL
- Operator: KVAN network
- Data sources: MAIS-Flexis deployments at regional archives
- Aggregated by: Archives Portal Europe
3. **OpenArchieven.nl** (openarchieven.nl)
- Type: GENEALOGICAL_PORTAL
- Focus: Scanned civil registration, parish records
- Open access genealogical sources
4. **Collectie Nederland** (collectienederland.nl)
- Type: MUSEUM_COLLECTION_PORTAL
- Operator: Rijksdienst voor het Cultureel Erfgoed
- Aggregates museum objects from Dutch museums
5. **Colonial Collections** (datacatalogus.../group/colonial-collections)
- Type: COLONIAL_HERITAGE_PORTAL
- Focus: Colonial history provenance research
- Part of NDE Dataset Register infrastructure
**EXAMPLES OF GERMAN PORTALS**:
1. **Archivportal-D** (archivportal-d.de)
- Type: ARCHIVAL_PORTAL
- Operator: Landesarchiv Baden-Württemberg (coordination)
- National archive finding aid aggregator
2. **Deutsche Digitale Bibliothek** (deutsche-digitale-bibliothek.de)
- Type: CROSS_DOMAIN_AGGREGATOR
- German national aggregator for Europeana
- Cross-domain (archives, libraries, museums)
3. **LEO-BW** (leo-bw.de)
- Type: REGIONAL_AGGREGATOR
- Baden-Württemberg regional portal
4. **Bavarikon** (bavarikon.de)
- Type: REGIONAL_AGGREGATOR
- Bavaria regional cultural heritage portal
**EXAMPLES OF EUROPEAN/INTERNATIONAL PORTALS**:
1. **Europeana** (europeana.eu)
- Type: CROSS_DOMAIN_AGGREGATOR
- Operator: Europeana Foundation (NetworkOrganisation)
- 50M+ objects from European cultural heritage
- Aggregates from national aggregators (DDB, Gallica, etc.)
2. **Archives Portal Europe** (archivesportaleurope.net)
- Type: ARCHIVAL_PORTAL
- Operator: APEF Foundation
- European archival finding aids
- Aggregates from national archive portals
3. **Monasterium.net** (monasterium.net)
- Type: MONASTIC_HERITAGE_PORTAL
- Operator: ICARUS (Consortium)
- Medieval charters and monastic documents
4. **WorldCat** (worldcat.org)
- Type: LIBRARY_UNION_CATALOG
- Operator: OCLC (Cooperative)
- 500M+ bibliographic records
**ONTOLOGY ALIGNMENT**:
- **EDM** (`edm:Aggregation`): Primary mapping - portal aggregates CHOs
- **ORE** (`ore:Aggregation`): Object Reuse and Exchange aggregation
- **Schema.org** (`schema:WebSite` + `schema:DataCatalog`): Web presence + data catalog
- **DCMI Type** (`dcmitype:Collection`): Collection of metadata records
**LIFECYCLE AND MIGRATION**:
Portals evolve over time:
- New portals launch
- Portals merge (use `successor_portal`)
- Portals become legacy but remain accessible
- Portal scope expands (regional → national)
Track status with `portal_status`: ACTIVE, LEGACY, DEPRECATED, MERGED
exact_mappings:
- edm:Aggregation
- ore:Aggregation
close_mappings:
- schema:WebSite
- schema:DataCatalog
- dcmitype:Collection
slots:
- portal_id
- portal_name
- portal_type
- portal_url
- portal_description
- geographic_scope
- thematic_scope
- portal_data_sources
- exposes_collections
- operated_by
- aggregates_from
- aggregated_by
- metadata_standards
- api_endpoint
- sparql_endpoint
- oai_pmh_endpoint
- portal_language
- launch_date
- portal_status
- successor_portal
- record_count
- participating_institutions
- identifiers
- temporal_extent
- was_derived_from
- was_generated_by
- data_license_policy
- created_by_project
- associated_encompassing_bodies
- implements_digital_platform
- implements_auxiliary_platform
- serves_finding_aids
slot_usage:
portal_id:
slot_uri: dcterms:identifier
identifier: true
required: true
range: uriorcurie
description: |
Unique identifier for this web portal.
Format: https://nde.nl/ontology/hc/portal/{scope}/{slug}
pattern: "^https://nde\\.nl/ontology/hc/portal/[a-z-]+/[a-z0-9-]+$"
examples:
- value: "https://nde.nl/ontology/hc/portal/nl/archieven-nl"
description: "Dutch Archieven.nl portal"
- value: "https://nde.nl/ontology/hc/portal/eu/europeana"
description: "Europeana pan-European portal"
portal_name:
slot_uri: skos:prefLabel
required: true
range: string
description: |
Official name of the web portal.
examples:
- value: "Archieven.nl"
- value: "Deutsche Digitale Bibliothek"
- value: "Europeana"
portal_type:
required: true
range: WebPortalType
description: |
Category of portal based on function and scope.
See WebPortalType class hierarchy for full list.
examples:
- value: "ARCHIVAL_PORTAL"
- value: "CROSS_DOMAIN_AGGREGATOR"
- value: "REGIONAL_AGGREGATOR"
portal_url:
slot_uri: schema:url
required: true
range: uri
description: |
Primary URL of the portal.
examples:
- value: "https://archieven.nl"
- value: "https://www.europeana.eu"
- value: "https://www.deutsche-digitale-bibliothek.de"
portal_description:
slot_uri: dcterms:description
range: string
description: |
Description of the portal's purpose, scope, and target audience.
examples:
- value: >-
Archieven.nl is the Dutch national portal for archival finding aids,
providing unified search across 80+ Dutch archives.
geographic_scope:
slot_uri: schema:areaServed
range: string
multivalued: true
inlined_as_list: true
description: |
Geographic coverage of the portal.
Use ISO 3166 codes (NL, DE, EU) or descriptive terms (GLOBAL).
examples:
- value: "NL"
description: "Netherlands national coverage"
- value: "DE-BW"
description: "Baden-Württemberg regional coverage"
- value: "EU"
description: "European Union coverage"
thematic_scope:
slot_uri: dcterms:subject
range: string
multivalued: true
inlined_as_list: true
description: |
Thematic or domain focus areas of the portal.
examples:
- value: "Archival finding aids"
- value: "Colonial heritage"
- value: "Medieval charters"
- value: "Genealogical records"
portal_data_sources:
slot_uri: edm:dataProvider
range: uriorcurie
multivalued: true
inlined_as_list: true
description: |
Collection management systems that feed data into this portal.
Links to CollectionManagementSystem instances.
**Aggregation Flow**:
CMS → portal_data_sources → WebPortal
One portal may receive data from multiple CMS deployments.
examples:
- value: "https://nde.nl/ontology/hc/cms/gelders-archief-mais"
description: "MAIS deployment feeding Archieven.nl"
exposes_collections:
slot_uri: edm:aggregatedCHO
range: uriorcurie
multivalued: true
inlined_as_list: true
description: |
Collections whose metadata is discoverable through this portal.
Links to CustodianCollection instances.
**Inverse of CustodianCollection.exposed_via_portal**
examples:
- value: "https://nde.nl/ontology/hc/collection/na/voc-archives"
description: "VOC Archives exposed via Colonial Collections portal"
operated_by:
slot_uri: schema:maintainer
required: true
range: uriorcurie
description: |
The EncompassingBody that operates and maintains this portal.
Typically a NetworkOrganisation, Consortium, or Cooperative.
examples:
- value: "https://nde.nl/ontology/hc/encompassing-body/network/nde"
description: "NDE operates the Dataset Register"
- value: "https://nde.nl/ontology/hc/encompassing-body/network/europeana-foundation"
description: "Europeana Foundation operates Europeana"
aggregates_from:
slot_uri: ore:aggregates
range: uriorcurie
multivalued: true
inlined_as_list: true
description: |
Other portals from which this portal aggregates data.
Used for portal-to-portal aggregation chains:
- Europeana aggregates from DDB, Gallica, etc.
- Archives Portal Europe aggregates from national archive portals
**Inverse of aggregated_by**
examples:
- value: "https://nde.nl/ontology/hc/portal/de/ddb"
description: "Europeana aggregates from DDB"
aggregated_by:
slot_uri: dcterms:isPartOf
range: uriorcurie
multivalued: true
inlined_as_list: true
description: |
Portals that aggregate from this portal.
Shows where this portal's data flows upstream.
**Inverse of aggregates_from**
examples:
- value: "https://nde.nl/ontology/hc/portal/eu/europeana"
description: "This portal's data is aggregated by Europeana"
metadata_standards:
slot_uri: dcterms:conformsTo
range: string
multivalued: true
inlined_as_list: true
description: |
Metadata standards used by the portal for data exchange.
examples:
- value: "EDM (Europeana Data Model)"
- value: "EAD (Encoded Archival Description)"
- value: "Dublin Core"
- value: "LIDO"
api_endpoint:
slot_uri: schema:documentation
range: uri
description: |
URL of the portal's REST/JSON API (if available).
examples:
- value: "https://api.europeana.eu/record/v2/"
sparql_endpoint:
slot_uri: schema:contentUrl
range: uri
description: |
URL of the portal's SPARQL endpoint (if available).
examples:
- value: "https://sparql.europeana.eu/"
oai_pmh_endpoint:
slot_uri: dcterms:source
range: uri
description: |
URL of the portal's OAI-PMH harvesting endpoint.
examples:
- value: "https://oai.europeana.eu/oai"
portal_language:
slot_uri: dcterms:language
range: string
multivalued: true
inlined_as_list: true
description: |
Languages supported by the portal interface.
Use ISO 639-1 codes.
examples:
- value: "nl"
- value: "en"
- value: "de"
launch_date:
slot_uri: schema:datePublished
range: date
description: |
Date the portal was originally launched.
examples:
- value: "2008-11-20"
description: "Europeana launch date"
portal_status:
range: string
description: |
Current operational status of the portal.
Values: ACTIVE, LEGACY, DEPRECATED, MERGED
- ACTIVE: Currently operational and maintained
- LEGACY: Still accessible but no longer actively developed
- DEPRECATED: Scheduled for shutdown
- MERGED: Merged into another portal (see successor_portal)
examples:
- value: "ACTIVE"
- value: "LEGACY"
successor_portal:
slot_uri: dcterms:isReplacedBy
range: uriorcurie
description: |
Portal that replaced this one (if deprecated or merged).
examples:
- value: "https://nde.nl/ontology/hc/portal/nl/new-archieven-portal"
description: "Hypothetical successor portal"
record_count:
slot_uri: schema:size
range: integer
description: |
Approximate number of records/objects in the portal.
Use most recent available count.
examples:
- value: 50000000
description: "Europeana: 50M+ objects"
- value: 15000000
description: "DDB: 15M+ objects"
participating_institutions:
slot_uri: schema:numberOfItems
range: integer
description: |
Number of institutions contributing data to the portal.
examples:
- value: 80
description: "Archieven.nl: 80+ archives"
- value: 4000
description: "Europeana: 4000+ institutions"
identifiers:
slot_uri: dcterms:identifier
range: uriorcurie
multivalued: true
inlined_as_list: true
description: |
External identifiers for this portal (Wikidata, VIAF, etc.).
examples:
- value: "http://www.wikidata.org/entity/Q209441"
description: "Europeana Wikidata ID"
temporal_extent:
slot_uri: dcterms:temporal
range: TimeSpan
description: |
Temporal period of portal operation.
Use begin_of_the_begin for launch, leave end open if active.
was_derived_from:
slot_uri: prov:wasDerivedFrom
range: CustodianObservation
multivalued: true
description: |
Observations documenting this portal (website scrapes, documentation).
was_generated_by:
slot_uri: prov:wasGeneratedBy
range: ReconstructionActivity
description: |
Activity that created this portal record.
data_license_policy:
slot_uri: odrl:hasPolicy
range: DataLicensePolicy
description: |
The portal's data licensing and openness policy.
Links to DataLicensePolicy which defines:
- Default license for portal data (CC0, CC-BY, proprietary, etc.)
- Service-specific licenses (if different services have different licenses)
- Openness stance (STRONG_OPEN_ADVOCATE, MIXED_POLICY, etc.)
**IMPORTANT**: This is the portal's own policy, not the policies of
contributing institutions. For aggregation portals like Europeana,
this represents the portal's metadata licensing policy, not the
individual licenses of aggregated objects.
examples:
- value: "https://nde.nl/ontology/hc/policy/europeana"
description: "Europeana's CC0 metadata policy"
- value: "https://nde.nl/ontology/hc/policy/archieven-nl"
description: "Archieven.nl data policy"
created_by_project:
slot_uri: prov:wasGeneratedBy
range: Project
description: |
The Project that created or maintains this web portal.
Links to Project class representing time-limited initiatives run by
EncompassingBody organizations.
**Relationship Architecture**:
```
EncompassingBody (e.g., NDE)
├── projects ──→ Project (e.g., "Portal Development 2024")
│ │
│ └── creates ──→ WebPortal (this portal)
└── operates ──→ WebPortal (operational responsibility)
```
**DISTINCTION from operated_by**:
- `operated_by`: The EncompassingBody with ongoing operational responsibility
- `created_by_project`: The specific time-limited Project that built the portal
A portal may be created by one project and then operated by the
parent organization or a different entity.
examples:
- value: "https://nde.nl/ontology/hc/project/nde/nde-portal-development-2023"
description: "NDE Portal Development project that created this portal"
associated_encompassing_bodies:
slot_uri: org:linkedTo
range: uriorcurie
multivalued: true
inlined_as_list: true
description: |
EncompassingBody organizations associated with this portal beyond the operator.
**USE CASES**:
1. **Consortium Members**: Multiple organizations collaboratively maintain portal
2. **Advisory Bodies**: Organizations with advisory/governance role
3. **Network Partners**: Organizations participating in portal network
**NOTE ON FUNDING RELATIONSHIPS**:
For funding relationships, do NOT link directly from WebPortal to funder.
Instead, follow the proper chain:
```
FundingOrganisation (e.g., European Commission)
└── funds ──→ Project (e.g., "Europeana DSI-4")
└── creates ──→ WebPortal
```
This maintains proper provenance and allows tracking funding over time.
W3C Org Ontology: org:linkedTo for organizational relationships.
examples:
- value: "https://nde.nl/ontology/hc/encompassing-body/consortium/dans"
description: "DANS consortium as advisory partner"
- value: "https://nde.nl/ontology/hc/encompassing-body/network/europeana-aggregators"
description: "Europeana Aggregators Network"
implements_digital_platform:
slot_uri: ore:aggregates
range: DigitalPlatform
multivalued: true
inlined_as_list: true
description: |
DigitalPlatform instances that this WebPortal aggregates from or represents.
Links portal aggregation to individual heritage custodian digital platforms.
**Aggregation Pattern**:
```
WebPortal (e.g., Europeana)
└── implements_digital_platform ──→ DigitalPlatform[] (custodian websites)
└── refers_to_custodian ──→ Custodian
```
**DISTINCTION from portal_data_sources**:
- `portal_data_sources`: Links to CollectionManagementSystem instances (technical data flow)
- `implements_digital_platform`: Links to DigitalPlatform instances (organizational representation)
ORE (Object Reuse and Exchange): ore:aggregates for aggregation relationship.
examples:
- value: "https://nde.nl/ontology/hc/platform/rijksmuseum-website"
description: "Rijksmuseum digital platform aggregated by Europeana"
implements_auxiliary_platform:
slot_uri: dcterms:hasPart
range: AuxiliaryDigitalPlatform
multivalued: true
inlined_as_list: true
description: |
AuxiliaryDigitalPlatform instances associated with this WebPortal.
Links to project-based or subordinate digital platforms that support
or extend the main portal functionality.
**USE CASES**:
1. **Thematic Sub-Portals**: Specialized views/interfaces (e.g., Colonial Collections on NDE)
2. **API Services**: Developer API endpoints for the portal
3. **Project Microsites**: Grant-funded project websites
4. **Educational Extensions**: Learning management components
Dublin Core: dcterms:hasPart for part-whole relationship.
examples:
- value: "https://nde.nl/ontology/hc/aux-platform/nde-colonial-collections"
description: "Colonial Collections thematic sub-portal"
- value: "https://nde.nl/ontology/hc/aux-platform/europeana-api-v3"
description: "Europeana REST API v3"
serves_finding_aids:
slot_uri: rico:isOrWasProviderOf
range: uriorcurie
multivalued: true
inlined_as_list: true
required: false
description: |
Finding aids hosted/served by this web portal.
**INVERSE RELATIONSHIP**:
- Forward: FindingAid.served_by → WebPortal (finding aid served by portal)
- Inverse: WebPortal.serves_finding_aids → FindingAid[] (portal serves finding aids)
**RiC-O ALIGNMENT**:
`rico:isOrWasProviderOf` - The agent (portal) provides the finding aid.
**USE CASES**:
1. "What finding aids are available on Archieven.nl?" → Query serves_finding_aids
2. "Which portals serve EAD finding aids?" → Query portals by finding aid format
3. Aggregation: Track which finding aids are exposed via which aggregator portals
**EXAMPLES**:
- Archieven.nl serves 1000+ EAD finding aids from Dutch archives
- Archives Portal Europe serves finding aids from 30+ European countries
- NDE Dataset Register catalogs finding aids as datasets
examples:
- value: "https://nde.nl/ontology/hc/finding-aid/gelders-archief/ead-main"
description: "Gelders Archief EAD inventory"
- value: "https://nde.nl/ontology/hc/finding-aid/na/collection-guide"
description: "National Archives collection guide"
comments:
- "WebPortal is DISTINCT from DigitalPlatform (single custodian website)"
- "WebPortal AGGREGATES metadata from multiple institutions"
- "Portals form aggregation chains: regional → national → European"
- "Typically operated by EncompassingBody (Network, Consortium)"
- "Track lifecycle with portal_status and successor_portal"
- "NEW: data_license_policy links to portal's licensing stance (CC0, CC-BY, etc.)"
- "NEW: created_by_project links to Project that built the portal"
- "NEW: associated_encompassing_bodies for organizational relationships beyond operator"
- "NEW: implements_digital_platform links to aggregated DigitalPlatform instances"
- "NEW: implements_auxiliary_platform links to subordinate AuxiliaryDigitalPlatform instances"
- "FUNDING: For funding relationships, link FundingOrganisation → Project → WebPortal (not direct)"
see_also:
- "https://pro.europeana.eu/page/edm-documentation"
- "https://www.openarchives.org/ore/"
- "https://www.openarchives.org/pmh/"
examples:
- value:
portal_id: "https://nde.nl/ontology/hc/portal/nl/archieven-nl"
portal_name: "Archieven.nl"
portal_type: "ARCHIVAL_PORTAL"
portal_url: "https://archieven.nl"
portal_description: |
Archieven.nl is the Dutch national portal for archival finding aids,
providing unified search across 80+ Dutch archives. Users can search
EAD-encoded finding aids and access scanned documents.
geographic_scope:
- "NL"
thematic_scope:
- "Archival finding aids"
- "Government records"
- "Genealogical sources"
operated_by: "https://nde.nl/ontology/hc/encompassing-body/network/kvan"
aggregated_by:
- "https://nde.nl/ontology/hc/portal/eu/archives-portal-europe"
metadata_standards:
- "EAD (Encoded Archival Description)"
- "EAC-CPF"
oai_pmh_endpoint: "https://oai.archieven.nl/"
portal_language:
- "nl"
- "en"
portal_status: "ACTIVE"
participating_institutions: 80
description: "Archieven.nl - Dutch national archival portal"
- value:
portal_id: "https://nde.nl/ontology/hc/portal/eu/europeana"
portal_name: "Europeana"
portal_type: "CROSS_DOMAIN_AGGREGATOR"
portal_url: "https://www.europeana.eu"
portal_description: |
Europeana provides access to over 50 million digitised items from
European museums, galleries, libraries, and archives. It is the
European Union's digital platform for cultural heritage.
geographic_scope:
- "EU"
- "EEA"
thematic_scope:
- "Art and cultural heritage"
- "Libraries"
- "Archives"
- "Museums"
operated_by: "https://nde.nl/ontology/hc/encompassing-body/network/europeana-foundation"
aggregates_from:
- "https://nde.nl/ontology/hc/portal/de/ddb"
- "https://nde.nl/ontology/hc/portal/fr/gallica"
- "https://nde.nl/ontology/hc/portal/nl/collectie-nederland"
metadata_standards:
- "EDM (Europeana Data Model)"
- "Dublin Core"
api_endpoint: "https://api.europeana.eu/record/v2/"
sparql_endpoint: "https://sparql.europeana.eu/"
oai_pmh_endpoint: "https://oai.europeana.eu/oai"
portal_language:
- "en"
- "de"
- "fr"
- "nl"
launch_date: "2008-11-20"
portal_status: "ACTIVE"
record_count: 50000000
participating_institutions: 4000
identifiers:
- "http://www.wikidata.org/entity/Q209441"
# NEW RELATIONSHIP SLOTS (added 2025-12-01)
data_license_policy:
- policy_id: "https://nde.nl/ontology/hc/policy/europeana-data-exchange"
policy_name: "Europeana Data Exchange Agreement"
data_licenses:
- license_id: "https://creativecommons.org/publicdomain/zero/1.0/"
license_name: "CC0 1.0 Universal (Public Domain)"
license_scope: "Metadata provided to Europeana"
temporal_extent:
begin_of_the_begin: "2011-09-01"
end_of_the_end: null # Ongoing
created_by_project:
project_id: "https://nde.nl/ontology/hc/project/europeana-dsi"
project_name: "Europeana DSI (Digital Service Infrastructure)"
project_description: |
EU-funded project under CEF Telecom to develop and maintain the
Europeana digital platform as core European cultural heritage infrastructure.
funding_sources:
- "https://nde.nl/ontology/hc/funding-org/eu/cef-telecom"
project_period:
begin_of_the_begin: "2015-01-01"
end_of_the_end: "2025-12-31"
associated_encompassing_bodies:
# Funding governance (indirect via FundingOrganisation → Project → WebPortal)
- "https://nde.nl/ontology/hc/encompassing-body/government/european-commission"
# Operating foundation
- "https://nde.nl/ontology/hc/encompassing-body/network/europeana-foundation"
# Member state cultural ministries
- "https://nde.nl/ontology/hc/encompassing-body/consortium/europeana-network-association"
implements_digital_platform:
- platform_id: "https://nde.nl/ontology/hc/platform/europeana-collections"
platform_name: "Europeana Collections"
platform_url: "https://www.europeana.eu/collections"
temporal_extent:
begin_of_the_begin: "2008-11-20"
- platform_id: "https://nde.nl/ontology/hc/platform/europeana-pro"
platform_name: "Europeana Pro"
platform_url: "https://pro.europeana.eu"
temporal_extent:
begin_of_the_begin: "2014-01-01"
implements_auxiliary_platform:
- auxiliary_id: "https://nde.nl/ontology/hc/auxiliary/europeana-iiif"
auxiliary_name: "Europeana IIIF APIs"
auxiliary_url: "https://iiif.europeana.eu"
auxiliary_type: "IIIF_SERVER"
temporal_extent:
begin_of_the_begin: "2018-01-01"
- auxiliary_id: "https://nde.nl/ontology/hc/auxiliary/europeana-entity-api"
auxiliary_name: "Europeana Entity API"
auxiliary_url: "https://api.europeana.eu/entity"
auxiliary_type: "REST_API"
temporal_extent:
begin_of_the_begin: "2017-01-01"
description: "Europeana - pan-European cultural heritage portal (comprehensive example with all relationship slots)"
- value:
portal_id: "https://nde.nl/ontology/hc/portal/de/archivportal-d"
portal_name: "Archivportal-D"
portal_type: "ARCHIVAL_PORTAL"
portal_url: "https://www.archivportal-d.de"
portal_description: |
Archivportal-D is the German national portal for archival finding aids,
aggregating EAD descriptions from German archives and providing unified
search and access.
geographic_scope:
- "DE"
thematic_scope:
- "Archival finding aids"
operated_by: "https://nde.nl/ontology/hc/encompassing-body/network/archivportal-d-koordination"
aggregated_by:
- "https://nde.nl/ontology/hc/portal/eu/archives-portal-europe"
- "https://nde.nl/ontology/hc/portal/de/ddb"
metadata_standards:
- "EAD"
- "EAC-CPF"
portal_language:
- "de"
- "en"
portal_status: "ACTIVE"
description: "Archivportal-D - German national archival portal"