glam/frontend/public/schemas/20251121/linkml/modules/classes/Currency.yaml
2026-01-19 00:09:28 +01:00

182 lines
No EOL
5.8 KiB
YAML

id: https://nde.nl/ontology/hc/class/Currency
name: Currency
title: Currency Class
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
qudt: http://qudt.org/schema/qudt/
dcterms: http://purl.org/dc/terms/
imports:
- linkml:types
- ../slots/has_or_had_identifier
- ../slots/has_or_had_label
- ../slots/has_or_had_description
- ../slots/specificity_annotation
- ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
- ./SpecificityAnnotation
- ./TemplateSpecificityScore # was: TemplateSpecificityScores - migrated per Rule 53 (2026-01-17)
- ./TemplateSpecificityType
- ./TemplateSpecificityTypes
- ../slots/currency_code
- ../slots/currency_symbol
- ../slots/has_or_had_description
- ../slots/has_or_had_identifier
- ../slots/has_or_had_label
- ../slots/specificity_annotation
- ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
- ../slots/currency_code
- ../slots/currency_symbol
- ../slots/has_or_had_description
- ../slots/has_or_had_identifier
- ../slots/has_or_had_label
- ../slots/specificity_annotation
- ../slots/has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
default_prefix: hc
classes:
Currency:
class_uri: schema:Currency
description: >-
A currency used for monetary values.
**SCHEMA.ORG ALIGNMENT**:
Maps to `schema:Currency` - "A currency as defined by ISO 4217."
**ISO 4217 STANDARD**:
ISO 4217 defines three-letter currency codes:
| Code | Currency | Symbol |
|------|----------|--------|
| EUR | Euro | € |
| USD | US Dollar | $ |
| GBP | British Pound | £ |
| JPY | Japanese Yen | ¥ |
| CHF | Swiss Franc | CHF |
**WHY NOT JUST USE STRING?**
Simple string fields like `budget_currency: "EUR"` lose important context:
- Symbol for display purposes
- Full name for accessibility
- Historical validity (currencies change over time)
- Link to authoritative ISO 4217 standard
The Currency class captures this richness while remaining simple for basic use.
**HISTORICAL CURRENCIES**:
Heritage institutions often deal with historical currencies:
- NLG (Dutch Guilder) - replaced by EUR in 2002
- DEM (German Mark) - replaced by EUR in 2002
- FRF (French Franc) - replaced by EUR in 2002
The temporal naming pattern (has_or_had_currency) accommodates this.
**EXAMPLE**:
```yaml
Currency:
currency_code: EUR
currency_name: Euro
currency_symbol: €
```
exact_mappings:
- schema:Currency
close_mappings:
- qudt:CurrencyUnit
slots:
- has_or_had_identifier
- currency_code
- has_or_had_label
- currency_symbol
- has_or_had_description
- specificity_annotation
- has_or_had_score # was: template_specificity - migrated per Rule 53 (2026-01-17)
slot_usage:
has_or_had_identifier:
range: uriorcurie
required: false
description: >-
Optional identifier for this currency.
examples:
- value: https://nde.nl/ontology/hc/currency/EUR
description: Euro currency identifier
currency_code:
range: string
required: true
pattern: "^[A-Z]{3}$"
description: >-
ISO 4217 three-letter currency code.
examples:
- value: EUR
description: Euro
- value: USD
description: US Dollar
- value: GBP
description: British Pound
- value: NLG
description: Dutch Guilder (historical)
has_or_had_label:
range: string
required: false
description: >-
Full name of the currency.
examples:
- value: Euro
- value: US Dollar
- value: Dutch Guilder
currency_symbol:
range: string
required: false
description: >-
Currency symbol for display.
examples:
- value:
description: Euro symbol
- value: $
description: Dollar symbol
- value: £
description: Pound symbol
- value: ƒ
description: Guilder symbol (historical)
has_or_had_description:
range: string
required: false
description: >-
Additional information about the currency, such as historical context.
examples:
- value: Official currency of the Eurozone since 1999
- value: Dutch national currency until replaced by Euro in 2002
comments:
- Currency models monetary unit with ISO 4217 code and metadata
- Replaces simple string currency fields with structured data
- Uses Schema.org Currency as primary ontology mapping
- Supports both current and historical currencies
see_also:
- https://schema.org/Currency
- https://www.iso.org/iso-4217-currency-codes.html
examples:
- value:
currency_code: EUR
has_or_had_label: Euro
currency_symbol:
has_or_had_description: Official currency of the Eurozone
description: Euro currency
- value:
currency_code: NLG
has_or_had_label: Dutch Guilder
currency_symbol: ƒ
has_or_had_description: Dutch national currency until replaced by Euro in 2002
description: Historical Dutch Guilder
- value:
currency_code: USD
has_or_had_label: US Dollar
currency_symbol: $
description: US Dollar currency
# REMOVED inline slots 2026-01-16 - Rule 48 violation
# Slots are imported from ../slots/ - do not define inline