glam/schemas/20251121/linkml/examples/standards_ecosystem_examples.yaml
2025-12-03 17:38:46 +01:00

438 lines
16 KiB
YAML

# Standards Ecosystem Examples
# Demonstrates the full identifier standards modeling pattern
#
# Examples:
# 1. ISIL (ISO 15511) - Library/Archive identifier
# 2. ISNI (ISO 27729) - Name identifier (dual-purpose)
# 3. Wikidata - Non-ISO standard
#
# Shows relationships between:
# - StandardsOrganization (defines standards)
# - Standard (defines identifier formats)
# - RegistrationAuthority (maintains global registry)
# - AllocationAgency (allocates locally)
# - IdentifierFormat (format variants)
# - CustodianIdentifier (actual identifier values)
# ==============================================================================
# STANDARDS ORGANIZATIONS
# ==============================================================================
standards_organizations:
- id: iso
name: International Organization for Standardization
abbreviation: ISO
organization_type: INTERGOVERNMENTAL
founded_year: 1947
headquarters_country: CH
website: https://www.iso.org/
description: |
ISO is an independent, non-governmental international organization with a
membership of 167 national standards bodies. Through its members, it brings
together experts to share knowledge and develop voluntary, consensus-based,
market-relevant International Standards.
member_countries:
- NL
- DE
- GB
- FR
- US
- JP
# ... 167 member countries
- id: oclc
name: Online Computer Library Center
abbreviation: OCLC
organization_type: LIBRARY_COOPERATIVE
founded_year: 1967
headquarters_country: US
website: https://www.oclc.org/
description: |
OCLC is a global library cooperative that provides shared technology services,
original research, and community programs for its membership and the library
community at large. OCLC manages WorldCat and VIAF.
- id: wikimedia
name: Wikimedia Foundation
abbreviation: WMF
organization_type: INDUSTRY_CONSORTIUM
founded_year: 2003
headquarters_country: US
website: https://wikimediafoundation.org/
description: |
The Wikimedia Foundation operates Wikipedia and Wikidata. Wikidata provides
structured data identifiers (Q-numbers) for entities including heritage institutions.
# ==============================================================================
# STANDARDS
# ==============================================================================
standards:
- id: isil
name: International Standard Identifier for Libraries and Related Organizations
abbreviation: ISIL
iso_standard_number: ISO 15511
defined_by: iso
registration_authority: danish-culture-agency # RegistrationAuthority reference
scope_type: GLOBAL
identifier_domain: ORGANIZATION
first_published_year: 2003
current_version: "ISO 15511:2019"
website: https://www.iso.org/standard/77849.html
lookup_url_template: "https://ld.zdb-services.de/resource/organisations/{id}"
description: |
ISIL (ISO 15511) provides a unique identifier for libraries and related
organizations such as archives, museums, and consortia. The identifier
consists of a country prefix and a locally-assigned code.
formats:
- id: isil-full
format_name: Full ISIL (with country prefix)
pattern: "^[A-Z]{2}-[A-Za-z0-9-]+$"
example: NL-AmRMA
is_canonical: true
is_uri_format: false
- id: isil-local
format_name: Local part only
pattern: "^[A-Za-z0-9-]+$"
example: AmRMA
is_canonical: false
is_uri_format: false
transformation_to_canonical: "Prepend country code prefix with hyphen"
- id: isil-uri
format_name: ZDB URI format
pattern: "^https://ld\\.zdb-services\\.de/resource/organisations/[A-Z]{2}-[A-Za-z0-9-]+$"
example: https://ld.zdb-services.de/resource/organisations/NL-AmRMA
is_canonical: false
is_uri_format: true
transformation_to_canonical: "Extract ISIL code from URI path"
canonical_format: isil-full
- id: isni
name: International Standard Name Identifier
abbreviation: ISNI
iso_standard_number: ISO 27729
defined_by: iso
registration_authority: isni-international # RegistrationAuthority reference
scope_type: GLOBAL
identifier_domain: NAME_AUTHORITY # Note: NAME_AUTHORITY, not just ORGANIZATION
first_published_year: 2012
current_version: "ISO 27729:2012"
website: https://isni.org/
lookup_url_template: "https://isni.org/isni/{id}"
description: |
ISNI (ISO 27729) is an identifier for the public identities of contributors
to creative works. It identifies names, not just organizations. This means
an ISNI identifies BOTH the entity AND its authoritative name record.
formats:
- id: isni-display
format_name: Display format with spaces
pattern: "^[0-9]{4} [0-9]{4} [0-9]{4} [0-9]{3}[0-9X]$"
example: "0000 0001 2146 5765"
is_canonical: false
is_uri_format: false
transformation_to_canonical: "Remove all spaces"
- id: isni-compact
format_name: Compact format (canonical)
pattern: "^[0-9]{15}[0-9X]$"
example: "0000000121465765"
is_canonical: true
is_uri_format: false
- id: isni-uri
format_name: ISNI URI format
pattern: "^https://isni\\.org/isni/[0-9]{15}[0-9X]$"
example: https://isni.org/isni/0000000121465765
is_canonical: false
is_uri_format: true
transformation_to_canonical: "Extract 16-digit code from URI path"
canonical_format: isni-compact
- id: wikidata
name: Wikidata Entity Identifier
abbreviation: Q-ID
iso_standard_number: null # Not an ISO standard
defined_by: wikimedia
registration_authority: wikimedia-foundation # RegistrationAuthority reference
scope_type: GLOBAL
identifier_domain: ORGANIZATION # Can be any entity type
first_published_year: 2012
current_version: null
website: https://www.wikidata.org/
lookup_url_template: "https://www.wikidata.org/wiki/{id}"
description: |
Wikidata Q-IDs are unique identifiers for entities in the Wikidata knowledge base.
They can identify any type of entity including organizations, people, places, and concepts.
formats:
- id: wikidata-qid
format_name: Q-ID format
pattern: "^Q[0-9]+$"
example: Q190804
is_canonical: true
is_uri_format: false
- id: wikidata-uri
format_name: Wikidata entity URI
pattern: "^https?://www\\.wikidata\\.org/(?:wiki|entity)/Q[0-9]+$"
example: https://www.wikidata.org/entity/Q190804
is_canonical: false
is_uri_format: true
transformation_to_canonical: "Extract Q-number from URI path"
canonical_format: wikidata-qid
- id: viaf
name: Virtual International Authority File
abbreviation: VIAF
iso_standard_number: null # Not an ISO standard (OCLC/national libraries collaboration)
defined_by: oclc
registration_authority: oclc-viaf # RegistrationAuthority reference
scope_type: GLOBAL
identifier_domain: NAME_AUTHORITY
first_published_year: 2003
current_version: null
website: https://viaf.org/
lookup_url_template: "https://viaf.org/viaf/{id}"
description: |
VIAF is an international authority file that combines authority records from
national libraries and other contributors into clusters. Each cluster has a
VIAF ID that links to the contributing authority records.
formats:
- id: viaf-numeric
format_name: Numeric VIAF ID
pattern: "^[0-9]+$"
example: "148691498"
is_canonical: true
is_uri_format: false
- id: viaf-uri
format_name: VIAF URI format
pattern: "^https://viaf\\.org/viaf/[0-9]+$"
example: https://viaf.org/viaf/148691498
is_canonical: false
is_uri_format: true
transformation_to_canonical: "Extract numeric ID from URI path"
canonical_format: viaf-numeric
# ==============================================================================
# ALLOCATION AGENCIES
# ==============================================================================
allocation_agencies:
# Dutch ISIL allocation (multiple agencies by domain)
- id: nl-kb-isil
name: Koninklijke Bibliotheek
name_local: Koninklijke Bibliotheek
abbreviation: KB
geographic_scope:
- alpha_2: NL
alpha_3: NLD
allocation_domain:
- LIBRARY_PUBLIC
- LIBRARY_NATIONAL
allocates_for:
- isil
allocation_prefix: "NL-"
parent_registration_authority: danish-culture-agency
is_active: true
website: https://www.kb.nl/
contact_email: isil@kb.nl
allocation_policy_url: https://www.kb.nl/isil
description: |
The Koninklijke Bibliotheek (Royal Library) is the national library of the
Netherlands and allocates ISIL codes for Dutch public and national libraries.
- id: nl-oclc-isil
name: OCLC Netherlands
abbreviation: OCLC
geographic_scope:
- alpha_2: NL
alpha_3: NLD
allocation_domain:
- LIBRARY_ACADEMIC
- LIBRARY_RESEARCH
allocates_for:
- isil
allocation_prefix: "NL-"
parent_registration_authority: danish-culture-agency
is_active: true
website: https://www.oclc.org/nl/
description: |
OCLC allocates ISIL codes for Dutch academic and research libraries,
particularly those participating in the WorldShare platform.
- id: nl-na-isil
name: Nationaal Archief
name_local: Nationaal Archief
abbreviation: NA
geographic_scope:
- alpha_2: NL
alpha_3: NLD
allocation_domain:
- ARCHIVE
allocates_for:
- isil
allocation_prefix: "NL-"
parent_registration_authority: danish-culture-agency
is_active: true
website: https://www.nationaalarchief.nl/
description: |
The Nationaal Archief allocates ISIL codes for Dutch archives,
coordinating with regional and municipal archives.
# Dutch ISNI allocation
- id: nl-kb-isni
name: Koninklijke Bibliotheek
abbreviation: KB
geographic_scope:
- alpha_2: NL
alpha_3: NLD
allocation_domain:
- ALL # ISNI is for all types
allocates_for:
- isni
parent_registration_authority: isni-international
is_active: true
website: https://www.kb.nl/
description: |
The KB allocates ISNI codes for Dutch entities as the national
ISNI allocation agency for the Netherlands.
# German ISNI allocation
- id: de-dnb-isni
name: Deutsche Nationalbibliothek
abbreviation: DNB
geographic_scope:
- alpha_2: DE
alpha_3: DEU
allocation_domain:
- ALL
allocates_for:
- isni
parent_registration_authority: isni-international
is_active: true
website: https://www.dnb.de/
description: |
The Deutsche Nationalbibliothek allocates ISNI codes for German entities.
# UK ISIL allocation (single agency for all types)
- id: gb-bl-isil
name: British Library
abbreviation: BL
geographic_scope:
- alpha_2: GB
alpha_3: GBR
allocation_domain:
- ALL # British Library handles all types
allocates_for:
- isil
allocation_prefix: "GB-"
parent_registration_authority: danish-culture-agency
is_active: true
website: https://www.bl.uk/
description: |
The British Library is the national ISIL allocation agency for the
United Kingdom, handling all institution types.
# ==============================================================================
# CUSTODIAN IDENTIFIERS (Examples with full provenance)
# ==============================================================================
# Example identifiers for Rijksmuseum Amsterdam
custodian_identifiers:
# ISIL identifier
- identifier_scheme: ISIL
identifier_value: NL-AmRMA
canonical_value: NL-AmRMA
defined_by_standard: isil
allocated_by: nl-kb-isil # Allocated by KB
identifier_format_used: isil-full
allocation_date: "2005-03-15T00:00:00Z"
# identifies_custodian: rijksmuseum-hub # Reference (not inlined in example)
# ISNI identifier (dual-purpose: identifies entity AND name)
- identifier_scheme: ISNI
identifier_value: "0000 0001 2146 5765"
canonical_value: "0000000121465765"
defined_by_standard: isni
allocated_by: nl-kb-isni # Allocated by KB (ISNI)
identifier_format_used: isni-display
allocation_date: "2013-06-01T00:00:00Z"
# identifies_custodian: rijksmuseum-hub
# also_identifies_name: rijksmuseum-official-name # Dual-purpose! (reference)
# Wikidata identifier
- identifier_scheme: Wikidata
identifier_value: Q190804
canonical_value: Q190804
defined_by_standard: wikidata
identifier_format_used: wikidata-qid
# identifies_custodian: rijksmuseum-hub
# No allocated_by - Wikidata is self-service
# VIAF identifier (also dual-purpose for name authority)
- identifier_scheme: VIAF
identifier_value: "148691498"
canonical_value: "148691498"
defined_by_standard: viaf
identifier_format_used: viaf-numeric
# identifies_custodian: rijksmuseum-hub
# also_identifies_name: rijksmuseum-official-name # Dual-purpose! (reference)
# Example identifier for a Dutch public library (different allocator)
- identifier_scheme: ISIL
identifier_value: NL-AmOBA
canonical_value: NL-AmOBA
defined_by_standard: isil
allocated_by: nl-kb-isil # Public library → allocated by KB
identifier_format_used: isil-full
allocation_date: "2010-01-15T00:00:00Z"
# identifies_custodian: oba-hub
# Example identifier for a Dutch university library (different allocator!)
- identifier_scheme: ISIL
identifier_value: NL-AmUvA
canonical_value: NL-AmUvA
defined_by_standard: isil
allocated_by: nl-oclc-isil # Academic library → allocated by OCLC!
identifier_format_used: isil-full
allocation_date: "2008-09-01T00:00:00Z"
# identifies_custodian: uva-library-hub
# Example identifier for a Dutch archive (different allocator!)
- identifier_scheme: ISIL
identifier_value: NL-AsdSAA
canonical_value: NL-AsdSAA
defined_by_standard: isil
allocated_by: nl-na-isil # Archive → allocated by Nationaal Archief!
identifier_format_used: isil-full
allocation_date: "2006-04-20T00:00:00Z"
# identifies_custodian: stadsarchief-amsterdam-hub
# ==============================================================================
# NOTES ON THE MODEL
# ==============================================================================
# Key relationships demonstrated:
#
# 1. StandardsOrganization → Standard (one-to-many)
# ISO defines ISIL and ISNI
# OCLC defines VIAF
# Wikimedia defines Wikidata
#
# 2. Standard → RegistrationAuthority (one-to-one global)
# ISIL → Danish Agency for Culture and Palaces
# ISNI → ISNI International Agency
# VIAF → OCLC
#
# 3. Standard → AllocationAgency (one-to-many by country/domain)
# ISIL (NL) → KB (public libraries)
# ISIL (NL) → OCLC (academic libraries)
# ISIL (NL) → Nationaal Archief (archives)
# ISIL (GB) → British Library (all types)
#
# 4. Standard → IdentifierFormat (one-to-many variants)
# ISNI → display (with spaces), compact, URI
# ISIL → full (with prefix), local, URI
#
# 5. CustodianIdentifier → Standard + AllocationAgency + IdentifierFormat
# Full provenance for each identifier
#
# 6. CustodianIdentifier → CustodianName (via also_identifies_name)
# ISNI and VIAF are NAME identifiers, not just ORGANIZATION identifiers
# They link to BOTH the Custodian hub AND the CustodianName aspect