Skip to content

Add ranges to the 10 object properties with an obvious existing type

Steve CAPELL requested to merge vocab-dmrs into main

Summary

Two related pieces of work. First, the ontology's typing is now complete and enforced: every object property declares a range, backed by a new CI gate. Second, the code lists get proper visibility through a scope classification and grouped catalogues. Also adds a per-item Data Maintenance Request link. All 9 validation gates pass; the docs site and the resolvable vocabulary both rebuild cleanly.

Object-property ranges (every property is typed)

  • Added schema:rangeIncludes to the 10 object properties that had an obvious existing class or code list (product / facility / regulation / standard links, and two country-id links).
  • Modelled the two n-ary join nodes as identity-less value objects: added unece:PartyRole (skos:closeMatch schema:Role) and unece:MaterialUsage, so relatedParty and facilityMaterialUsage carry a declared type without gaining identity.
  • Introduced unece:any-code, an abstract open code list, as the range for the 7 code-carriers whose concrete list is a sector-specific implementation choice (product category, industry sector, material type, and so on), each with a guidance comment naming the usual concrete list. The pattern is documented in code-list-strategy.md.
  • Added validate gate 9 (range completeness): every owl:ObjectProperty must declare a range. Zero untyped object properties remain.

Code-list visibility

  • Added unece:codeListScope (shared / domain / governance), seeded on all code lists by derivation. It drives presentation only, with no URI or semantic change.
  • Regrouped the resolvable vocab /code-lists index and added a generated Code Lists page to the Ontology docs section (shared lists first, then per-domain, then governance, with the unused tail folded away), plus a Code Lists panel on the home page.
  • Promoted Incoterms and dangerous-goods-class to shared.
  • Removed the confusing "(generated)" suffix from every code-list description.

Performance / metrics reconciliation

  • Folded the redundant PerformanceMetric class into the UNTP performance-metrics taxonomy (it was really a code list). metric now names a taxonomy code, so the taxonomy is bound and shows under Conformity.
  • Unified the taxonomy's imported untp: metadata literals into proper unece: properties pointing at concept URIs, completing the aggregation-type and improvement-indicator schemes. Fixed two latent bugs in build-untp-taxonomies.py (production-namespace leak, and a dropped scope tag).

Other

  • A Data Maintenance Request link on every resolvable item page, opening a pre-filled GitLab new-issue form (title plus a body that links back to the item).
  • Removed the obsolete ontology/code-lists.md (stale early-import notes, superseded by code-list-strategy.md).

Merge request reports

Loading