Skip to content

Slot: Units (UCUM) (units_ucum)

The unit expressed in UCUM syntax, e.g. Cel for degrees Celsius, K for Kelvin, ug/m3 for PM2.5 mass concentration.

Tier: core

Why this slot matters

A number without units is uninterpretable — a value of 35 could be °C or °F, a factor-of-1.8 error in an exposure analysis. UCUM is the machine-readable form that health-data layers (e.g. OMOP's unit_concept_id) align to, so omitting it also blocks automated unit conversion and downstream integration.

In plain terms

UCUM is a compact, machine-readable spelling of the unit — Cel for degrees Celsius, ug/m3 for micrograms per cubic metre — so software can convert °C to °F or check units automatically without guessing what a human-written unit string means.

URI: envar:slot/units_ucum

Applicable Classes

Name Description Modifies Slot
VariableIdentity The identity and semantics of an environmental exposure variable — what physi... yes

Properties

Type and Range

Property Value
Range String
Domain Of VariableIdentity

Cardinality and Requirements

Property Value

Examples

Value
Cel
ug/m3

See Also

Identifier and Mapping Information

Annotations

property value
tier core
justification A number without units is uninterpretable — a value of 35 could be °C or °F, a factor-of-1.8 error in an exposure analysis. UCUM is the machine-readable form that health-data layers (e.g. OMOP's unit_concept_id) align to, so omitting it also blocks automated unit conversion and downstream integration.
explanation UCUM is a compact, machine-readable spelling of the unit — Cel for degrees Celsius, ug/m3 for micrograms per cubic metre — so software can convert °C to °F or check units automatically without guessing what a human-written unit string means.
covered_by None

Schema Source

Mappings

Mapping Type Mapped Value
self envar:units_ucum
native envar:units_ucum

LinkML Source

name: units_ucum
annotations:
  tier:
    tag: tier
    value: core
  justification:
    tag: justification
    value: A number without units is uninterpretable — a value of 35 could be °C or
      °F, a factor-of-1.8 error in an exposure analysis. UCUM is the machine-readable
      form that health-data layers (e.g. OMOP's unit_concept_id) align to, so omitting
      it also blocks automated unit conversion and downstream integration.
  explanation:
    tag: explanation
    value: UCUM is a compact, machine-readable spelling of the unit — `Cel` for degrees
      Celsius, `ug/m3` for micrograms per cubic metre — so software can convert °C
      to °F or check units automatically without guessing what a human-written unit
      string means.
  covered_by:
    tag: covered_by
    annotations:
      omop_gaia:
        tag: omop_gaia
        annotations:
          extent:
            tag: extent
            value: full
          status:
            tag: status
            value: verified
          where:
            tag: where
            value: gaia_db/variable_source.unit_code (UCUM `CEL`) + unit_text; JSON-LD
              variableMeasured.unitCode; external_exposure.unit_concept_id 8653
          evidence:
            tag: evidence
            value: EnVar/examples/heat/COMPARISON.md §E (Native unit declared — ✅
              for GAIA)
          note:
            tag: note
            value: GAIA carries the unit as a first-class UCUM code (CEL) plus the
              OMOP unit_concept_id.
      amadeus:
        tag: amadeus
        annotations:
          extent:
            tag: extent
            value: full
          status:
            tag: status
            value: verified
          where:
            tag: where
            value: thredds_dataset.xml units = "K"; gridmet_tmmx.cf_metadata.json
              mirrors it
          evidence:
            tag: evidence
            value: EnVar/examples/heat/COMPARISON.md §E (Native unit declared — ✅
              for Amadeus)
          note:
            tag: note
            value: Amadeus declares the native unit K in a machine-readable CF metadata
              slot (though not in UCUM syntax).
      degauss:
        tag: degauss
        annotations:
          extent:
            tag: extent
            value: absent
          status:
            tag: status
            value: asserted
          where:
            tag: where
            value: no column
          note:
            tag: note
            value: DeGAUSS's `tmax` column has no unit annotation; °C is only a container
              convention.
      cher:
        tag: cher
        annotations:
          extent:
            tag: extent
            value: partial
          status:
            tag: status
            value: asserted
          where:
            tag: where
            value: table_column_dictionary.column_unit_id (required for Value-tagged
              columns)
          note:
            tag: note
            value: 'C-HER requires column_unit on Value-tagged columns, but the unit
              vocabulary is not asserted to be UCUM. Conservative: partial.'
      codata:
        tag: codata
        annotations:
          extent:
            tag: extent
            value: partial
          status:
            tag: status
            value: asserted
          where:
            tag: where
            value: DDI-CDI RepresentedVariable (value domain + units); I-ADOPT decomposition
          note:
            tag: note
            value: Units live at CODATA's RepresentedVariable layer — canonical unit
              semantics — but not the specific UCUM string of this run's file.
description: The unit expressed in UCUM syntax, e.g. `Cel` for degrees Celsius, `K`
  for Kelvin, `ug/m3` for PM2.5 mass concentration.
title: Units (UCUM)
examples:
- value: Cel
  description: degrees Celsius (Daymet Tmax)
- value: ug/m3
  description: micrograms per cubic metre (PM2.5 mass concentration)
from_schema: https://w3id.org/linkml/microschemas/envar
see_also:
- https://ucum.org/
rank: 1000
domain_of:
- VariableIdentity
range: string