Convert your FHIR JSON -> XML and back here. The CDA Book is sometimes listed for Kindle here and it is also SHIPPING from Amazon! See here for Errata.

Wednesday, November 18, 2009

ISO+ to UCUM Mapping Table


Several years ago I was the editor of the HL7 Claims attachments specifications.  As a result of that effort, I created a mapping table from ISO+ Units to UCUM units.  ISO+ units are commonly used in HL7 Version 2 lab messages, while UCUM is a newer standard developed by the Regenstrief Institute that is required for use in CDA Release 2 and in other HL7 Version 3 standards, and was selected by ANSI/HITSP for the communication of unit information.  A much shorter list was eventually used in the claims attachment guides, but I ran across the data I generated the other day and thought I would share it here.

Please note the disclaimer:  I am not an expert on ISO+, UCUM or laboratory units in general.  Therefore, you should validate this data before using it in any clinical applications.

ISO+ Units needing a Mapping
ISO+UCUMISO+UCUMISO+UCUMISO+UCUM
(arb_u)[arb'U]10.un.s/(cm5.m2)dyn.s/(cm5.m2)iu/mL[iU]/mLmL/hrmL/h
(bdsk_u)[bdsk'U]10.un.s/cm5dyn.s/cm5k/wattK/Wmm(hg)mm[Hg]
(bsa){bsa}cm_h20cm[H20]kg(body_wt)kg{body_wt}mm/hrmm/h
(cal)calcm_h20.s/Lcm[H20].s/Lkg/mskg/m2mmol/(8.hr.kg)mmol/(8.h.kg)
(cfu){cfu}cm_h20/(s.m)cm[H20]/(s.m)kh/hkg/hmmol/(8hr)mmol/(8.h)
(drop)[drp]dbadB[SPL]L/(8.hr)L/(8.h)mmol/(kg.hr)mmol/(kg.h)
(ka_u)[ka'U]dm2/s2REML/hrL/hmmol/hrmmol/h
(kcal)kcalg(creat)g{creat}lb[lb_av]ng/(8.hr)ng/(8.h)
(kcal)/(8.hr)kcal/(8.h)g(hgb)g{hgb}

ng/(8.hr.kg)ng/(8.h.kg)
(kcal)/dkcal/dg(tot_nit)g{tit_nit}m/sms/sng/(kg.hr)ng/(kg.h)
(kcal)/hrkcal/hg(tot_prot)g{tot_prot}masMsng/hrng/h
(knk_u)[knk'U]g(wet_tis)g{wet_tis}meq/(8.hr)meq/(8.h)osmolosm
(mclg_u)[mclg'U]g.m/((hb).m2)g.m/{hb}m2meq/(8.hr.kg)meq/(8.h.kg)osmol/kgosm/kg
(od){od}g.m/(hb)g.m/{hb}meq/(kg.hr)meq/(kg.h)osmol/Losm/L
(ph)pHg/(8.hr)g/(8.h)meq/hrmeq/hpapA
(ppb)[ppb]g/(8.kg.hr)g/(8.kg.h)mg/(8.hr)mg/(8.h)palPa
(ppm)[ppm]g/(kg.hr)g/(kg.h)mg/(8.hr.kg)mg/(8.h.kg)sec''
(ppt)[pptr]g/hrg/hmg/(kg.hr)mg/(kg.h)sieS
(ppth)[ppth]in[in_us]mg/hrmg/hug(8hr)ug(8.h)
(th_u)[todd'U]in_hg[in_i'Hg]miu/mLm[iU]/mLug/(8.hr.kg)ug/(8.h.kg)
/(arb_u)/[arb'U]iu[iU]mL/((hb).m2)mL/{hb}.m2ug/(kg.hr)ug/(kg.h)
/(hpf)[HPF]iu/d[iU]/dmL/(8.hr)mL/(8.h)ug/hrug/h
/(tot)/{tot}iu/hr[iU]/hmL/(8.hr.kg)mL/(8.h.kg)uiuu[iU]
/iu/[iU]iu/kg[iU]/kgmL/(hb)mL/{hb}
10*3(rbc)10*3{rbc}iu/L[iU]/LmL/(kg.hr)mL/(kg.h)
10.L10.L/(min.m2)iu/min[iU]/minmL/cm_h20mL/cm[H20]


Units that are the same in ISO+ and UCUM
%barg/LL.smgmmol/(kg.d)ng/Lueq
/kgBqg/m2L/(min.m2)mg/(kg.d)mmol/(kg.min)ng/m2ug
/Lcelg/minL/dmg/(kg.min)mmol/kgng/minug/(kg.d)
/m3CmGyL/kgmg/dmmol/Lng/mLug/(kg.min)
/mincm2/shL/minmg/dLmmol/m2ng/sug/d
/m3dhLL/smg/kgmmol/minnkatug/dL
/mindBJ/Llmmg/Lmol/(kg.s)nmug/g
/mLdegkatmmg/m2mol/kgnmol/sug/kg
1/mLeqkat/kgm/s2mg/m3mol/Lnsug/L
10*12/LeVkat/Lm2mg/minmol/m3Ohmug/m2
10*3/L
kgm2/smLmol/sOhm.mug/min
10*3/mLfgkg.m/sm3/smL/(kg.d)mosm/Lpgukat
10*3/mm3fLkg/(s.m2)mbarmL/(kg.min)mspg/Lum
10*6/Lfmolkg/Lmbar.s/LmL/(min.m2)mVpg/mLumol
10*6/mLgkg/m3meqmL/d
pkatumol/d
10*6/mm3g.mkg/minmeq/(kg.d)mL/kg
pmumol/L
10*9/Lg/(kg.d)kg/molmeq/(kg.min)mL/m2ngpmolumol/min
10*9/mLg/(kg.min)kg/smeq/dmL/mbarng/(kg.d)psus
10*9/mm3g/dkPameq/kgmL/minng/(kg.min)ptuV
10.L/ming/dLksmeq/LmL/sng/dSvV
a/mg/kgLmeq/minmmng/kgtWb

If you have corrections or comments, please post a response below.  I will make every attempt to keep these tables up to date and accurate.


Updated November 19, 2009:
Deleted mapping from ISO+ mm to UCUM to (transformation error)
Corrected mapping from ISO+ sec to UCUM '' (was ')
Updated October 20, 2010
Corrected mm(hg) to mm[Hg]
Changed oms/kg to osm/kg
verified mapping for mas (Megasecond according to HL7 V2) to Ms
deleted mapping from lm/m2 to lm
Still trying to resolve issues around (hb)
verified dm2/s2 = REM
Updated October 23, 2020
Fixed a number of problems with capitalization: Changed wb to Wb, v to V, uv to uV, sv to Sv, pAmp to pA, ohm to Ohm, mv to mV, kpa to kPa, gy to Gy, cel to Cel, bq to Bq and 8h to 8.h
Removed f, n because while these prefixes are the same, they aren't units by themselves
Removed n.s because the proper form is ns