glam/schemas/20251121/QUICK_STATUS_ENUM_MAPPINGS_20251121.md
2025-11-21 22:12:33 +01:00

4.8 KiB

Quick Reference: Enum Value Ontology Mappings

Date: 2025-11-21
Schema: 01_custodian_name.yaml v0.2.3-custodian
Session: 7


Status: COMPLETE

All enum values mapped to ontology concepts from /data/ontology/


LegalStatusEnum → GLEIF EntityStatus

Ontology: GLEIF Base (/data/ontology/gleif_base.ttl)

Enum Value Ontology Concept GLEIF Tag Notes
ACTIVE gleif-base:EntityStatusActive ACTIVE Currently operational
DISSOLVED gleif-base:EntityExpirationReasonDissolved DISSOLVED Legally dissolved
MERGED gleif-base:EntityExpirationReasonCorporateAction CORPORATE_ACTION Merged/acquired
SUSPENDED gleif-base:EntityStatusInactive INACTIVE Temporarily suspended
BANKRUPTCY wikidata:Q152074 Not in GLEIF taxonomy
LIQUIDATION wikidata:Q1888958 Not in GLEIF taxonomy
UNKNOWN (none) Status cannot be determined

RDF Example:

<https://w3id.org/heritage/org/rijksmuseum>
  gleif-base:hasEntityStatus gleif-base:EntityStatusActive .

ReconstructionActivityTypeEnum → PROV-O Activity

Ontology: PROV-O (/data/ontology/prov.ttl)

Enum Value Ontology Concept Automation Level Method Class
MANUAL_CURATION prov:Activity 0.0 manual
ALGORITHMIC_MATCHING prov:Activity 1.0 algorithmic
HYBRID prov:Activity 0.5 semi-automated
EXPERT_REVIEW prov:Activity 0.0 validation

RDF Example:

<https://w3id.org/heritage/activity/resolution-001>
  a prov:Activity ;
  heritage:activity_type "MANUAL_CURATION" .

AgentTypeEnum → FOAF/PROV-O

Ontology: FOAF (/data/ontology/foaf.ttl), PROV-O

Enum Value Ontology Concept Use Case
PERSON foaf:Person Human curator
ORGANIZATION foaf:Organization Institution
SOFTWARE prov:SoftwareAgent Automated tool

Ontology: GLEIF Entity Legal Form (/data/ontology/gleif_legal_form.ttl)
Source: /data/ontology/2023-09-28-elf-code-list-v1.5.csv (2,200+ codes)

Slot: legal_form (4-character alphanumeric code)

Example Mappings:

ELF Code Legal Form Name Country Ontology URI
V44D Stichting NL gleif-elf:ELF-V44D
A0W7 Publiekrechtelijke rechtspersoon NL gleif-elf:ELF-A0W7
F0A6 Sociedad Anonima AR gleif-elf:ELF-F0A6
5RDO Établissement public FR gleif-elf:ELF-5RDO
9HLU Charity GB gleif-elf:ELF-9HLU

Validation:

  • Must exist in CSV with ELF Status = 'ACTV'
  • Must match pattern ^[A-Z0-9]{4}$

RDF Example:

<https://w3id.org/heritage/org/rijksmuseum>
  org:classification gleif-elf:ELF-V44D ;
  cpov:legalName "Stichting Rijksmuseum"@nl .

Slot Usage Constraints

Constraint: Must be valid ISO 20275 code

slot_usage:
  legal_form:
    todos:
      - "Validate against /data/ontology/2023-09-28-elf-code-list-v1.5.csv"
      - "Check ELF Status = 'ACTV'"

Constraint: Maps to GLEIF EntityStatus concepts

slot_usage:
  legal_status:
    slot_uri: gleif-base:hasEntityStatus
    reachable_from:
      source_ontology: gleif-base
      source_nodes:
        - gleif-base:EntityStatus

Coverage Summary

Component Mapped Status
LegalStatusEnum values 7/7 Complete
ReconstructionActivityTypeEnum values 4/4 Complete
AgentTypeEnum values 3/3 Complete
ISO 20275 codes 2,200+ Validated against CSV
Slot constraints 2/2 Complete

Total Enum/Value Mappings: 16


Validation

# Validate YAML syntax
python3 -c "import yaml; yaml.safe_load(open('schemas/20251121/linkml/01_custodian_name.yaml'))"
# ✅ YAML is valid

# Count enum meaning declarations
grep -c "meaning:" schemas/20251121/linkml/01_custodian_name.yaml
# 14

Next Steps

  1. Generate SKOS ConceptScheme RDF from ISO 20275 CSV
  2. Implement ELF code validator against CSV
  3. Add Wikidata mappings for legal forms
  4. Test SPARQL queries with enum ontology concepts

References

  • Schema: schemas/20251121/linkml/01_custodian_name.yaml (1,006 lines)
  • Session Summary: SESSION_SUMMARY_20251121_ENUM_SLOT_USAGE_MAPPINGS.md
  • GLEIF ELF Codes: /data/ontology/2023-09-28-elf-code-list-v1.5.csv
  • GLEIF Ontologies: /data/ontology/gleif_*.ttl

Status: Enum value ontology mappings complete - Ready for RDF generation