Skip to main content
Version: v0.0.2

Function: validateUcum()

validateUcum(unit): UcumValidation

Validate a UCUM unit expression and, when valid, return its canonical descriptor.

Validation is parsing against the UCUM grammar over the known atom table: an expression is valid iff it parses completely. An invalid expression returns a typed TERM_UCUM_INVALID with a value-free reason - never a coerced or guessed unit.

Parameters

unit

string

The UCUM unit expression (e.g. "mmol/L", "kg.m/s2", "Cel").

Returns

UcumValidation

{ valid: true, canonical } or { valid: false, code: "TERM_UCUM_INVALID", reason }.

Example

import { validateUcum } from "@cosyte/terminology";

validateUcum("mmol/L").valid; // => true
const bad = validateUcum("mg/dl/"); // trailing operator
bad.valid; // => false