glam/schemas/20251121/linkml/modules/slots/geonames_id.yaml
kempersc 73b3b21017
All checks were successful
Deploy Frontend / build-and-deploy (push) Successful in 3m53s
docs: add Rule 52 prohibiting duplicate ontology mappings
- Create .opencode/rules/no-duplicate-ontology-mappings.md with detection script
- Add Rule 52 to AGENTS.md (after Rule 51)
- Fix 29 duplicate mappings: same URI in multiple mapping categories
  - 26 slot files: remove duplicates keeping most precise mapping
  - 3 class files: ExhibitionSpace, Custodian, DigitalPlatform
- Mapping precedence: exact > close > narrow/broad > related

Each ontology URI must appear in only ONE mapping category per schema
element, following SKOS semantics where mapping properties are mutually
exclusive.
2026-01-13 15:57:26 +01:00

44 lines
1.1 KiB
YAML

id: https://nde.nl/ontology/hc/slot/geonames_id
name: geonames_id_slot
title: GeoNames ID Slot
description: 'GeoNames numeric identifier for geographic entities.
Format: Integer (e.g., 2759794 for Amsterdam, 5206379 for Pittsburgh)
Lookup: https://www.geonames.org/{geonames_id}/
Benefits:
- Resolves ambiguity (41 "Springfield"s in USA have different IDs)
- Stable identifier (persists even if location name changes)
- Links to coordinates, population, timezone via GeoNames API
'
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
gn: http://www.geonames.org/ontology#
slots:
geonames_id:
slot_uri: gn:geonamesID
range: integer
required: false
multivalued: false
description: 'GeoNames identifier for linking to external knowledge base.
Highly recommended for place disambiguation.
'
exact_mappings:
- gn:geonamesID
narrow_mappings:
- dcterms:identifier
comments:
- Used by Settlement, AuxiliaryPlace, and GeoSpatialPlace classes
- 'Lookup URL: https://www.geonames.org/{geonames_id}/'
- 'Example: 2759794 (Amsterdam), 5206379 (Pittsburgh), 3451190 (Rio de Janeiro)'