# status
Normative. These are the codes carried in a unitCode field where unitSystem is bus, which is the default. A unit not in this list MAY be expressed in an external unit system by setting unitSystem; see BUS-1 7.4.

# rationale
Codes are chosen to be readable by the engineers who operate buildings. A controls engineer must be able to read a package without consulting an external unit registry, and must not encounter a form of their own working units that looks unfamiliar.

# conventions.case
Case-sensitive. Prefixes follow SI capitalization: kW not KW, ms not MS.

# conventions.composition
Codes in this list are atomic tokens, not a grammar. Compound units that appear here (kWh, Btu/h, m3/s) are single tokens.

# conventions.extension
A unit not in this list is expressed by setting unitSystem to an external system and carrying that system's code. It is not invented as a new bus code.

# conventions.delta
Temperature differences use the delta forms. A 2 degree rise is deltaDegF, not degF.

# externalSystems.ucum
The Unified Code for Units of Measure, version 2.2. Rigorous and compositional. Its US-customary forms are awkward to read.

# externalSystems.haystack
Project Haystack unit database, version 4.0.0.

# externalSystems.bacnet
ANSI/ASHRAE 135 Clause 21 enumerated engineering units, carried as the integer enumeration value.

# externalSystems.qudt
QUDT unit vocabulary, as used by Brick 1.4 and later.

# units[].note
No equivalent exists in any external registry surveyed. One ton of refrigeration is 12000 Btu/h exactly.