Print this page

Working with UCUM

 UCUM stands for Unified Code for Units of Measure.  It is intended to be a precise specification for all units of measure used in healthcare, other sciences, engineering, and businesses.  As such, it is mainly focused on facilitating unambiguous electronic exchange of information, as opposed to providing pretty displays for people to read.  LettersNumsCutouts2017

 UCUM’s technical specifics and unfamiliar acronyms can be overwhelming if you’re new to converting your units of measure to what is termed UCUM conformant expressions.  There are lots of rules of grammar and expression syntax to follow.  The following tips may help:


  • UCUM uses a restricted character set.  A finite set of base units are used to define all unit atoms and are exclusively metric (e.g., meter for length).  The metric prefixes may be used with the base units and range from yotta (1 x 10^24) down through common ones we see like kilo, milli, micro, etc., ending with yocto (1 x 10^-24).

  • UCUM compliant representations are assembled with the algebraic operations of multiplication, division and exponentiation of all the units.  A period (.) is used for multiplication, a slash (/) for division.  You can nest unit terms and operators within parenthesis to force operations to be performed first.  If there are no parenthesis the operations are performed in written order, left to right.

  • Positive integers may be used as simple unit symbols and a string of purely digits (0-9) would be interpreted as the value.  However, numbers in combination with letters are literally taken as a unit.  An example: mEq/10mL is expressed as meq/10.mL in UCUM. 

  • Square brackets [ ] are always used in pairs and can be used anywhere in a unit atom to represent lexical elements.  They cannot be nested.  Consider this example: mg/inch  inch poses a challenge as there are multiple approved UCUM units available: [in_us], [in_br], and [in_i] (United States, British, and International respectively).   Choosing the international representation, the UCUM expression would be : mg/[in_i] for this example

  • Curly braces { } are used to enclose an annotation.  Annotations are used to indicate the end of a unit symbol.  They are essentially meaningless to the computation of the whole unit.  When the entire base unit starts and ends with the curly braces, its computational value is 1 (this is considered a non-unit).   Like the square brackets, curly braces cannot be nested.  As an example, mg/ampule would be expressed as mg/{ampule} in UCUM.


There are lots of things to learn and remember regarding producing UCUM compliant expressions.  Forget trying to consume all the details at once.  Instead, tackle and test one expression at a time so you learn incrementally – there are websites that would test your units to see if they are UCUM compliant. If you have questions or would like help working with UCUM, please contact us!