The Unified Code for Units of Measure

Gunther Schadow
Regenstrief Institute and Indiana University School of Informatics
Clement J. McDonald
National Library of Medicine, Lister Hill

Version: 1.7

Revision: $Revision: 15635 $


Table of contents

1 Introduction
2 Grammar of Units and Unit Terms
    2.1 Character Set and Lexical Rules
    2.2 Syntax Rules
    2.3 The Predicate “Metric”
    2.4 Style
3 Semantics
    3.1 Special Units on non-ratio Scales
    3.2 Arbitrary Units
4 Tables of Terminal Symbols
    4.1 Prefixes
    4.2 Base Units
    4.3 Derived Unit Atoms
    4.4 Customary Unit Atoms
    4.5 Other Legacy Units
    4.6 Prefixes and Units Used in Information Technology

Appendices

A Examples for some Non-Units.
B Summary of Conflicts
C Alphabetic Index
    C.1 Alphabetic Index By Name
    C.2 Alphabetic Index By Symbol
    C.3 Alphabetic Index By Kind Of Quantity
D Example Unit Terms

CHANGE NOTE

The major change of this release is the establishment of a class of "arbitrary units" which are no longer simply dimensionless. This is to protect the misassumption as if one could convert measurement values expressed in some arbitrary units into other arbitrary or dimensionless units.

1

Introduction

The Unified Code for Units of Measure is a code system intended to include all units of measures being contemporarily used in international science, engineering, and business. The purpose is to facilitate unambiguous electronic communication of quantities together with their units. The focus is on electronic communication, as opposed to communication between humans. A typical application of The Unified Code for Units of Measure are electronic data interchange (EDI) protocols, but there is nothing that prevents it from being used in other types of machine communication.

The Unified Code for Units of Measure is inspired by and heavily based on ISO 2955-1983, ANSI X3.50-1986, and HL7's extensions called “ISO+”. The respective ISO and ANSI standards are both entitled “Representation of [...] units in systems with limited character sets” where ISO 2955 refers to SI and other units provided by ISO 1000-1981, while ANSI X3.50 extends ISO 2955 to include U.S. customary units. Because these standards carry the restriction of “limited character sets” in their names they seem to be of less value today, when graphical user interfaces and laser printers are in wide-spread use. For this reason, the european standard ENV 12435 in its clause 7.3 declares ISO 2955 obsolete.

ENV 12435 is dedicated exclusively to the communication of measurements between humans in display and print, and does not provide codes that can be used in communication between systems. It does not even provide a specification that would allow communication of units from one system to the screen or printer of another system. The issue about displaying units in the common style defined by the 9th Conférence Générale des Poids et Mesures (CGPM) in 1947 is not just the character set. Although the Unicode standard and its predecessor ISO/IEC 10646 is the richest character set ever, it is still not enough to specify the presentation of units, because there are important typographical details such as superscripts, subscripts, roman and italics.1

The real value of the restriction on the character set and typographical details, however, is not to cope with legacy systems and less powerful technology, but to facilitate unambiguous communication and interpretation of the meaning of units from one computer system to another. In this respect, ISO 2955 and ANSI X3.50 are not obsolete because there is no other standard that would fill in for inter-systems communication of units. However, ISO 2599 and ANSI X3.50 currently have severe defects:

  1. ISO 2955 and ANSI X3.50 contain numerous name conflicts, both direct conflicts (e.g., “a” being used for both “year” and “are”) and conflicts that are generated through combination of unit symbols with prefixes (e.g., “cd” means candela and centi-day and “PEV” means peta-volt and pico-electronvolt.)


  2. Neither ISO 2955 nor ANSI X3.50 cover all units that are currently used in practice. There are many more units in use than what is allowed by the Système International d'Unités (SI) and accompanying standards. For example, the older CGM-units dyne and erg are still used in the science of physiology. Although ANSI X3.50 extends ISO 2955 with some U.S. customary units, it is still not complete in this respect. For example it does not define the degree Fahrenheit.


  3. ANSI X3.50 is semantically ambiguous with respect to customary units, even if we do not consider the history and international aspects of customary units. Three systems of mass units are used in the U.S., avoirdupois used generally, apothecaries' used by pharmacists, and troy used in trade with Gold and other precious metals. ANSI X3.50 has no way to select any one of those specifically, which is bad in medicine, where both apothecaries' and avoirdupois weights are being used frequently.


ISO 2955 and all standards that do only look for the resolutions and recommendations of the CGPM and the Comité International des Poids et Mesures (CIPM) as published by the Bureau International des Poids et Mesures (BIPM) and various ISO standards (ISO 1000 and ISO 31) fail to recognize that the needs in practice are often different from the ideal propositions of the CGPM. Although not allowed by the CGPM and related ISO standards, many other units are used in international sciences, healthcare, engineering, and business, both meaningfully and some units of questionable meaning. A coding system that is to be useful in practice must cover the requirements and habits of the practice—even some of the bad habits.

None of the current standards attempt to specify a semantics of units that can be deployed in information systems with moderate requirements. Metrological standards such as those published by the BIPM are dedicated to maximal scientific correctness of reproducible definitions of units. These definitions make sense only to human specialists and can hardly be deployed to their full extent by any information system that is not dedicated to metrology. On the other hand, ISO 2955 and ANSI X3.50 provide no semantics at all for the codes they define.

The Unified Code for Units of Measure provides a single coding system for units that is complete, free of all ambiguities, and that assigns to each defined unit a concise semantics. In communication it is not only important that all communicating parties have the same repertoir of symbols, but also that all attach the same meaning to the symbols they exchange. The common meaning must be computationally verifiable. The Unified Code for Units of Measure assumes a semantics for units based on dimensional analysis.2

In short, each unit is defined relative to a system of base units by a numeric factor and a vector of exponents by which the base units contribute to the unit to be defined. Although we can reflect all the meaning of units covered by dimensional analysis with this vector notation, the following tables do not show these vectors. One reason is that the vectors depend on the base system chosen and even on the ordering of the base units. The other reason is that these vectors are hard to understand to human readers while they can be easily derived computationally. Therefore we define new unit symbols using algebraic terms of other units. Those algebraic terms are also valid codes of The Unified Code for Units of Measure.

2

Grammar of Units and Unit Terms

§1 preliminaries       ■1The Unified Code for Units of Measure consists of a basic set of terminal symbols for units, called atomic unit symbols or unit atoms, and multiplier prefixes. It also consists of an expression syntax by which these symbols can be combined to yield valid units.   ■2 The tables of terminal symbols are fixed as of every revision of The Unified Code for Units of Measure, additions, deletions or changes are not allowed.   ■3 All expression that can be derived from these terminal symbols and the expression syntax are valid codes. Any expression of The Unified Code for Units of Measure has a precisely defined semantics.

The expression syntax of The Unified Code for Units of Measure generates an infinite number of codes with the consequence that it is impossible to compile a table of all valid units.

That the tables of terminal symbols may not be extended does not mean that missing symbols will never be available in The Unified Code for Units of Measure. Suggestions for additions of new symbols are welcome and revisions of The Unified Code for Units of Measure will be released as soon as a change request has been approved.

§2 full and limited conformance       ■1 The semantics of The Unified Code for Units of Measure implies equivalence classes such that different expressions may have the same meaning.   ■2 Programs that declare full conformance with The Unified Code for Units of Measure must compare unit expressions by their semantics, i.e. they must detect equivalence for different expressions with the same meaning.   ■3 Programs with limited conformance may compare unit expressions literally and thus may not detect equivalence of unit expressions.

The option for “limited conformace” allows The Unified Code for Units of Measure to be adopted even by less powerful systems that can not or do not want to deal with the full semantics of units. Those systems typically have a table of fixed unit expression literals that may be related to other literals with fixed conversion factors. Although these systems will have difficulties to receive unit expressions from various sources, they will at least send out valid expressions of The Unified Code for Units of Measure, which is an important step towards a commonly used coding scheme for units.

2.1

Character Set and Lexical Rules

§3 character set       ■1 All expressions of The Unified Code for Units of Measure shall be built from characters of the 7-bit US-ASCII character set exclusively.   ■2 Terminal unit symbols can consist of all ASCII characters in the range of 33–126 (0x21–0x7E) excluding double quotes (‘"’), parentheses (‘(’ and ‘)’), plus sign (‘+’'), minus sign (‘-’'), period (‘.’'), solidus (‘/’'), equal sign (‘=’'), square brackets (‘[’ and ‘]’), and curly braces (‘{’ and ‘}’), which have special meaning.   ■3 A terminal unit symbol can not consist of only digits (‘0’–‘9’) because those digit strings are interpreted as positive integer numbers. However, a symbol “10*” is allowed because it ends with a non-digit allowed to be part of a symbol.   ■4 For every terminal symbol there is a case insensitive variant defined, to be used when there is a risk of upper and lower case to be confused. Although upper and lower case can be mixed in case insensitive symbols there is no meaning to the case. Case insensitive symbols are incompatible to the case senitive symbols.

The 7-bit US-ASCII character code is the greatest common denominator that can be expected to be available in any communication environment. Only very few units normally require symbols from the greek alphabet and thus the cost of requiring Unicode does not outweigh the benefit. As explained above, the real issue about writing unit terms naturally is not the character set but the ability to write subscripts and superscripts and distinguish roman letters from italics.

Some computer systems or programming languages still have the requirement of case insensitivity and some humans who are not familiar with SI units tend to confuse upper and lower case or can not interpret the difference in upper and lower case correctly. For this reason the case insensitive symbols are defined. Although The Unified Code for Units of Measure does not encourage use of case insensitive symbols where not absolutely necessary, in some circumstances the case insensitive representation may be the greatest common denominator. Thus some systems that can handle case sensitivity may end up using case insensitive symbols in order to communicate with less powerful systems.

ISO 2955 and ANSI X3.50 call case sensitive symbols “mixed case” and case insensitive symbols “single case” and list two columns for “single case” symbols, one for upper case and one for lower case. In The Unified Code for Units of Measure all units can be written in mixed upper and lower case, but in the case insensitive variant the mixing of case does not matter.

§4 prefixes       ■1Metric units (cf. §11) may be combinations of a unit symbol with a prefix symbol.   ■2The unit symbol to be combined with the prefix must not itself contain a prefix. Such a prefix-less unit symbol is called unit atom.   ■3Prefix and atom are connected immediately without any delimiter. Separation of an optional prefix from the atom occurs on the lexical level by finding a matching combination of an optional prefix and a unit atom.   ■4 The prefix is the longest leading substring that matches a valid prefix where the remainder is a valid metric unit atom. If no such prefix can be matched, the unit atom is without prefix and may be both metric or non-metric.[1–3: ISO 1000, 3; ISO 2955-1983, 3.7; ANSI X3.50-1986, 3.7 (Rule No. 6).]

§5 square brackets       ■1 Square brackets (‘[’ and ‘]’) may be part of a unit atom at any place but only as matched pairs. Square brackets are lexical elements and not separate syntactical tokens.   ■2 Within a matching pair of square brackets the full range of characters 33–126 can be used.3  ■3 Square brackets do not determine the boundary between prefix and unit atom, but they never span the boundary of unit atoms.   ■4 Square brackets must not be nested.

For example % “[abc+ef]”, “ab[c+ef]”, “[abc+]ef”, and “ab[c+ef]” % could all be valid symbols if defined in the tables. In “ab[c+ef]” either “a” or “ab” could be defined as a prefix, but not “ab[c”.

Square brackets take on one task of round parentheses in HL7's “ISO+” code, where one use of parentheses is to augment unit symbols with suffixes, as in “mm(Hg)”. Another use is to enclose one full unit symbol into parentheses, as “(ka_u)” (for the King-Armstrong unit of catalytic amount of phosphatase). Apparently, in a unit symbol such enclosed one is supposed not to expect a prefix. Thus, even if “a_u” would have been defined, “(ka_u)” should not be matched against kilo-a_u.

Parentheses, however, were also used for the nesting of terms since HL7 version 2.3. At this point it became ambiguous whether parentheses are part of the unit symbol or whether they are syntactic tokens. For instance, “(ka_u)” could mean a nested “ka_u” (where “k” could possibly be a prefix), but also the proper symbol “(ka_u)” that happens to have parentheses as part of the symbol. The Unified Code for Units of Measure uses parentheses for the usual meaning of term nesting and uses square brackets where HL7's “ISO+” assumes parentheses to be part of the unit symbol.

§6 curly braces       ■1 The full range of characters 33–126 can be used within a pair of curly braces (‘{’ and ‘}’). The material enclosed in curly braces is called annotation.   ■2 Annotations do not contribute to the semantics of the unit but are meaningless by definition. Therefore, any fully conformant parser must discard all annotations. Parsers of limited conformace should not value annotations in comparison of units.   ■3 Annotations do, however, signify the end of a unit symbol.   ■4 An annotation without a leading symbol implies the default unit 1 (the unity).   ■5 Curly braces must not be nested.

Curly braces are here because people want annotations and deeply believe that they need annotations. Especially in chemistry and biomedical sciences, there are traditional habits to write annotations at units or instead of units, such as “%vol.”, “RBC”, “CFU”, “kg(wet tis.)”, or “mL(total)”. These habits are hard to overcome. Any attempt of a coding scheme to restrict this percieved expressiveness will ultimately result in the coding scheme not being adopted, or just “half-way” adopted (which is as bad as not adopted).

Two alternative responses to this reality exist: either give in to the bad habits and blow up of the code with dimension- and meaningless unit atoms, or canalize this habit so that it does no harm. The Unified Code for Units of Measure canalizes this habit using curly braces. Nevertheless we do continuing efforts to upgrade doubtful units to genuine units of The Unified Code for Units of Measure by defining and linking them to the other units as good as possible. Thus, “g%” is a valid metric unit atom (so that “mg%” is a valid unit too.) A drops, although quite imprecise, is a valid unit of volume “[drp]”. Even HPF and LPF (the so called “high-” and “low power field” in the microscope) have been defined so that at least they relate to each other.

2.2

Syntax Rules

§7 algebraic unit terms       ■1 All units can be combined in an algebraic term using the operators for multiplication (period ‘.‘) and division (solidus ‘/’).   ■2 The multiplication operator is mandatory it must not be omitted or replaced by a space. The multiplication operator is a strict binary operator that may occur only between two unit terms.   ■3 The division operator can be used as a binary and unary operator, i.e. a leading solidus will invert the unit that directly follows it.   ■4 Terms are evaluated from left to right with the period and the solidus having the same operator precedence. Multiple division operators are allowed within one term. [ISO 1000, 4.5.2; ISO 2955-1983, 3.3f; ANSI X3.50-1986, 3.3f (Rule No. 2f).]

The use of the period instead of the asterisk (‘*’) as a multiplication operator continues a tradition codified in ISO 1000 and maintained in ISO 2955. Because floating point numbers may not occur in unit terms the period is not ambiguous. A period in a unit term has no other meaning than to be the multiplication operator.

Since Resolution 7 of the 9th CGPM in 1948 the myth of ambiguity being introduced by more than one solidus lives on and is quoted in all standards concerning the writing of SI units. However, when the strict left to right rule is followed there is no ambiguity, neither with one solidus nor with more than one solidus. However, in human practice we find the tendency to assign a lower precedence to the solidus which misleads people to write a/b·c when they really mean a/(b·c). When this is rewritten as a/b/c there is actually less ambiguity that in a/b·c. So the real source of ambiguity is when a multiplication operator follows a solidus, not when there is more than one solidus in a term. Hence, we remove the restriction for only one solidus and introduce parentheses which may be used to remove any perceived ambiguity.

§8 integer numbers       ■1 A positive integer number may appear in place of a simple unit symbol.   ■2 Only a pure string of decimal digits (‘0’–‘9’) is interpreted as a number. If after one or more digits there is any non-digit character found that is valid for unit atoms, all the characters (including the digits) will be interpreted as a simple unit symbol.

For example, the string “123” is a positive integer number while “12a” is a symbol.

Note that the period is only used as a multiplication operator, thus “2.5” means 2 × 5 and is not equal to 5/2.

§9 exponents       ■1 Simple units may be raised to a power. The exponent is an integer number and is written immediately behind the unit term. Negative exponents must be preceded by a minus sign (‘-’ positive exponents may be preceded by an optional plus sign (‘+’).   ■2 If the simple unit raised to a power is a combination of a prefix and a unit atom, both are raised to the power, e.g. “1 cm3” equals “10-6m3” not “10-2m3”. [ISO 2955-1983, 3.5f; ANSI X3.50-1986, 3.5f (Rule No. 4f).]

ISO 2955 and ANSI X3.50 actually do not allow a plus sign leading a positive exponent. However, if there can be any perceived ambiguities, an explicit leading plus sign may be of help sometimes. The Unified Code for Units of Measures therefore allows such plus signs at exponents. The plus sign on positive exponents can be used to delimit exponents from integer numbers used as simple units. Thus, 2+10 means 210 = 1024.

§10 nested terms       ■1 Unit terms with operators may be enclosed in parentheses (‘(’ and ‘)’) and used in place of simple units. Normal left-to-right evaluation can be overridden with parentheses.   ■2 Parenthesized terms are not considered unit atoms and hence must not be preceded by a prefix.   ■3 Since a unit term in parenthesis can be used in place of a simple unit, an exponent may follow on a closing parenthesis which raises the whole term within the parentheses to the power.

Exhibit 1: The complete syntax in the Backus-Naur Form: The term of units takes care of multiplication and division. A power can be a simple unit with or without exponent (the default exponent is 1). A simple unit is a symbol like “cm” “cd” that may have a prefix (“cm”) or not (“cd”). A whole unit term in parentheses can also be in place of a simple unit. A positive integer number may also be used as a simple unit. The terminal symbols for prefixes and unit atoms are entirely defined in their respective table. Unit atoms may be followed by any annotation inside a matching pair of curly braces, when such an annotation occurs without a leading symbol, the default unit 1 is assumed
<sign> ::= +” | “-
<digit> ::= 0” | “1” | “2” | “3” | “4” | “5” | “6” | “7” | “8” | “9
<digits> ::= <digit><digits> | <digit>
<factor> ::= <digits>
<exponent> ::= <sign><digits> | <digits>
<simple-unit> ::= <ATOM-SYMBOL>
| <PREFIX-SYMBOL><ATOM-SYMBOL>
<annotatable> ::= <simple-unit><exponent>
| <simple-unit>
<component> ::= <annotatable><annotation>
| <annotatable>
| <annotation>
| <factor>
| “(”<term>“)
<term> ::= /”<component>
| <component>“.”<term>
| <component>“/”<term>
| <component>
<annotation> ::= {”<ANNOTATION-STRING>“}
Pushdown-state automaton describing the syntax.

Figure 1: Pushdown-state automaton describing the syntax.

2.3

The Predicate “Metric”

§11 metric and non-metric unit atoms       ■1 Only metric unit atoms may be combined with a prefix.   ■2 To be metric or not to be metric is a predicate assigned to each unit atom where that unit atom is defined.   ■3 All base units are metric. No non-metric unit can be part of the basis.   ■4 A unit must be a quantity on a ratio scale in order to be metric.

The metric predicate accounts for the fact that there are units that are prefixed and others that are not. This helps to disambiguate the parsing of simple units into prefix and atom.

To determine whether a given unit atom is metric or not is not trivial. It is a cultural phenomenon, subject to change, just like language, the meaning of words and how words can be used. At one time we can clearly tell right or wrong useage of words, but these decisions may need to be revised with the passage of time.

Generally, metric units are those defined “in the spirit” of the metric system, that emerged in France of the 18th century and was rapidly adopted by scientists. Metric units are usually based on reproducible natural phenomena and are usually not part of a system of compareable units with different magintudes, especially not if the ratios of these units are not powers of 10. Instead, metric units use multiplier prefixes that magnify or diminish the value of the unit by powers of ten.

Conversely, customary units are in the spirit of the middle age as most of them can be traced back into a time around the 10th century, some are even older from the Roman and Babylonian empires. Most customary units are based on the average size of human anatomical or botanic structures (e.g., foot, ell, fathom, grain, rod) and come in series of comparable units with ratios 1/2, 1/4, 1/12, 1/16, and others. Thus all customary units are non-metric

Not all units from ISO 1000 are metric as degree, minute and second of plane angle are non-metric as well as minute, hour, day, month, and year. The second is a metric unit because it is a part of the SI basis, although it used to be part of a series of customary units (originating in the Babylonian era).

Furthermore, for a unit to be metric it must be a quantity on a ratio scale where multiplication and division with scalars are defined. The Comité Consultatif d'Unités (CCU) decided in February 1995 that SI prefixes may be used with the degree Celsius. This statement has not been made explicitely before. This is an unfortunate decision because difference-scale units like the degree Celsius have no multiplication operation, so that the prefix value could be multiplied with the unit. Instead the prefix at non-ratio units scales the measurement value. One dekameter is 10 times of a meter, but there is no meaning to 10 times of 1 °C in the same way as 30 °C are not 3 times as much as 10 °C. See §§21ff on how The Unified Code for Units of Measure finds a way to accomodate this different use of prefixes at units such as the degree Celsius, bel or neper.

2.4

Style

Except for the rule on curly braces (§12), the rules on style govern the creation of the tables of unit atoms not their individual use. Users of The Unified Code for Units of Measure need not care about style rules (§§13–15) because users just use the symbols defined in the tables. Hence, style rules do not affect conformance to The Unified Code for Units of Measure. New submissions of unit atoms, however, must conform to the style rules.

§12 curly braces       ■1 Curly braces may be used to enclose annotations that are often written in place of units or behind units but that do not have a proper meaning of a unit and do not change the meaning of a unit.   ■2 Annotations have no semantic value.

For example one can write “%{vol}”, “kg{total}”, or “{RBC}” (for “red blood cells”) as pseudo-units. However, these annotations do not have any effect on the semantics, which is why these example expressions are equivalent to “%”, “kg”, and “1” respectively.

§13 underscore       ■1 When in print a unit would have a subscript, an underscore (‘_’) is used to separate the subscript from the stem of the unit symbol.   ■2 The subscript is part of the unit atom.   ■3 subscripts are used to disambiguate the two units with the same name but different meanings.

For example when distinguishing the International Table calorie from the thermochemical calorie, we would use 1 calIT or 1 calth in print. The Unified Code for Units of Measure defines the symbols “cal_IT” and “cal_th” with the underscore signifying that “IT” and “th” are subscripts. Other examples are the distinctions between the Julian and Gregorian calendar year from the tropical year or the british imperial gallon from the U.S. gallon (see §31 and §§37ff).

§14 square brackets       ■1 Square brackets enclose suffixes of unit symbols that change the meaning of a unit stem.   ■2 All customary units shall be enclosed completely by square brackets.   ■3 Other unit atoms shall be enclosed in square brackets if they are very rare, if they will conflict with other units, or if they are normally not used as a unit symbol but do have a proper meaning as a unit in The Unified Code for Units of Measure.   ■4 Square brackets are part of the unit atom.

For example 1 m H2O is written as “m[H2O]” in The Unified Code for Units of Measure because the suffix H2O changes the meaning of the unit atom for meter (length) to a unit of pressure.

Customary units are defined in The Unified Code for Units of Measure in order to accomodate practical needs. However metric units are still prefered and the customary symbols should not interfere with metric symbols in any way. Thus, customary units are “stigmatized” by enclosing them into square brackets.

If unit symbols for the purpose of display and print are derived from The Unified Code for Units of Measure units, the square brackets can be removed. However, display units are out of scope of The Unified Code for Units of Measure.

§15 apostrophe       ■1 The apostrophe (‘'’) is used to separate words or abbreviated words in a multi-word unit symbol.   ■2 Since units are mathematically defined symbols and not abbreviations of words, multi-word unit symbols should be defined only to reflect existing habits, not in order to create new ones.   ■3 Multi-word units should always be enclosed in square brackets.

For example, such legacy units called “Bodansky unit” or “Todd unit” have the unit symbols “[bdsk'U]”, and “[todd'U]” respectively.

3

Semantics

§16 preliminaries       ■1 The semantics of The Unified Code for Units of Measure is defined by the algebraic operations of multiplication, division and exponentiation between units, by the equivalence relations of equality and commensurability of units, and by the multiplication of a unit with a scalar.   ■2 Every expression in The Unified Code for Units of Measure is mapped to one and only one semantic element. But every semantic element may have more than one valid representant in The Unified Code for Units of Measure.   ■3 The set of expressions in The Unified Code for Units of Measure is infinite.

§17 equality and commensurability       ■1 The set of expressions in The Unified Code for Units of Measure has two binary, symmetric, reflexive, and transitive relations (equivalence relations) “equals” = and “is commensurable with” ~. All expressions that are equal are also commensurable but not all commensurable expressions are equal.

§18 algebra of units       ■1 The equivalence classes generated by the equality relation = are called units.   ■2 The set of units U has a binay multiplication operator · that is associative and commutative and has the neutral element 1 (so called the unity). For each unit uU there is an inverse unit u-1 such that u · u-1 = 1. Thus, (U, ·) is an Abelian group.   ■3 The division operation u / v is defined as u · v-1.   ■4 The exponentiation operation with integer exponents n is defined as un = u.   ■5 The product u' = ru of a real number scalar with the unit u is also a unit, where u' ~ u.

§19 dimension and magnitude       ■1 The equivalence classes generated by the commensurability relation ~ are called dimensions. The set D of dimensions is infinite in principle, but only a finite subset of dimensions are used in practice. Thus, implementations of The Unified Code for Units of Measure need not be able to represent the inifinite set of dimensions.   ■2 Two commmensurable units that are not equal differ only by their magnitude.   ■3 The quotient u / v of any two commensurable units u ~ v is of the same dimension as the unity (u / v ~ 1). This quotient is also equal to the unity multiplied with a scalar r: u / v = r1, where r is called the relative magnitude of u regarding v.

§20 base units       ■1 Any system of units is constructed from a finite set B of mutually independent base units B = { b1, b2, ..., bn }, on which any other unit uU is defined as u = r1b1u1 · r2b2u2 · ... · rnbnun, where r = r1 · r2 ·· · rn is called the magnitude of the unit u regarding B.   ■2 With respect to a basis B every unit can thus be represented as a pair (r, û) of magnitude r and dimension û = (u1, u2, ..., un).   ■3 Two sets of base units are equivalent if there is an isomorphism between the sets of units that they generate.

§19.1 allows to limit the set of supported dimensions. Most practically used units contain exponents of -4 to +4. Thus if memory is limited, 4 bit per component of the dimension vector could be sufficient.

3.1

Special Units on non-ratio Scales

§21 special units       ■1 Those symbols that are used as units that imply a measurement on a scale other than a ratio scale (e.g., interval scale, logarithmic scale) are defined differently. These do not represent proper units as elements of the group (U,·). Therefore those special semantic entities are called special units, as oposed to proper units. The set of special units is denoted S, where SU = {}.   ■2 A special unit sS is defined as the triple (u, fs, fs-1) where uU is the “corresponding” proper unit of s and where fs and fs-1 are mutually inverse real functions converting the measurement value to and from the special unit.   ■3 Although not elements of U, special units are said to be “of the same dimension” or “commensurable with” their corresponding proper unit u and the class of units commensurable with u. This can be expressed by means of a binary, symmetric, transitive and reflexive relation ≈ on US.

The functions fs and fs-1 are applied as follows: let rs be the numeric measurement value expressed in the special unit s and let m be the corresponding dimensioned quantity, i.e., the measurement with proper unit u. Now, rs = fs(m/u) converts the proper measurement to the special unit and m = fs-1(rs) × u does the inverse.

§22 operations on special units       ■1 In theory, special units cannot take part in any algebraic operations, neither involving other units, nor themselves (exponentiation) nor involving scalars.   ■2 Special units are therefore non-metric units.   ■3 However, due to the requirement of the SI that does allow prefixes on the degree Celsius, special units may be scaled trough a prefix or an arbitrary numeric factor.   ■4 The scale factor α is an additional component of the special unit, which in turn is defined by a quadruple s = (u, fs, fs-1, α). When the functions fs and fs-1 are applied to a measurement value x to convert to and from the special unit the scale factor is applied as follows: x' = fs(x) / α converts from x expressed in the corresponding proper unit to x' in terms of the special unit and x = fs-1(αx') does the reverse.   ■5 Multiplication of a special unit s = (u, fs, fs-1, α) with a scalar β is defined as βs = (u, fs, fs-1, βα). Multiplication of a special unit s with a dimensionless unit r1 is defined as rs.

Since prefixes have a scalar value that multiplies the unit atom, a unit must at least have a defined multiplication operation with a scalar in order to be a candidate for the metric predicate. All proper units are candidates for the metric property, special units are no such candidates.

The Comité Consultatif d'Unités (CCU) decided in February 1995 that any SI prefix may be used with degree Celsius. This statement has not been made explicitely before. This is an unfortunate decision because difference-scale units like the degree Celsius have no multiplication operation, so that the prefix value could be multiplied with the unit. Instead the prefix at non-ratio units scales the measurement value. One wonders why the CGPM keeps the celsius temperature in the SI as it is superflous and in a unique way incoherent with the SI.

The scale factor α is applied with the functions fs and fs-1 as follows: let rs be the numeric measurement value expressed in the special unit s and let m be the corresponding dimensioned quantity, i.e., the measurement with proper unit u. Now, rs = fs(m/u) / α converts the proper measurement to the special unit and m = fs-1(αrs) × u does the reverse.

§23 definition of special units       ■1 Special units are marked in the definition tables for unit atoms by a bullet (‘•’) in the column titled “value” and a special expression in the column titled “definition”. The BNF for the special expression is <special-unit> ::= <function-symbol>“(”<floating-point-number>“ ”<term>“)” The function symbols are defined as needed.   ■2 Special expressions are not valid expressions in The Unified Code for Units of Measure, they are only used for defining special units.

3.2

Arbitrary Units

§24 arbitrary units       ■1 Arbitrary or procedure defined units are units whose meaning entirely depends on the measurement procedure (assay). These units have no general meaning in relation with any other unit in the SI. Therefore those arbitrary semantic entities are called arbitrary units, as oposed to proper units. The set of arbitrary units is denoted A, where AU = {}.   ■2 An arbitrary unit has no further definition in the semantic framework of The Unified Code for Units of Measure  ■3 Arbitrary units are not “of any specific dimension” and are not “commensurable with” any other unit.

Until version 1.6 The Unified Code for Units of Measure has dealth with arbitrary units as dimensionless, but as an effect the semantics of The Unified Code for Units of Measure made all arbitrary units commensurable. Since version 1.7 of The Unified Code for Units of Measure it is no longer possible to convert or compare arbitrary units with any other arbitrary unit.

§25 operations on arbitrary units       ■1 Any term involving arbitrary units, is itself an arbitrary unit and is not comparable with any other arbitrary unit or term.

§26 definition of arbitrary units       ■1 Arbitrary units are marked in the definition tables for unit atoms by a bullet (‘•’) in the column titled “value” and a bullet in the column titled “definition”.

4

Tables of Terminal Symbols

4.1

Prefixes

§27 prefixes       ■1 Prefix symbols are those defined in Table 1.   ■2 There are five columns titled “name,” “print,” “c/s,” “c/i,” and “value” The name is the full (official) name of the unit. The official symbol used in print this is listed in the column “print” “C/s,” and “c/i” list the symbol in the case sensitive and the case insensitive variants respectively. “Value” is the scalar value by which the unit atom is multiplied if combined with the prefix.   ■3 Only the columns titled “c/s,” “c/i,” and “value,” are normative. Full name and print symbol are defined by the CGPM and are out of scope of The Unified Code for Units of Measure.

The case insensitive prefix symbols are slightly different from those defined by ISO 2955 and ANSI X3.50, where “giga-,” “tera-,” and “peta-” have been “G,” “T,” and “PE.” The Unified Code for Units of Measure has a larger set of unit atoms and needs to prevent more name conflicts. Tera and giga have a second letter to be safe in the future. The change of “PE” to “PT” would be the way to go for ISO 2955 which currently has a name conflict (among others) with peta-volt and pico-electronvolt.

The new prefixes “yotta-,” “zetta-,” “yocto-,” and “zepto-” that were adopted by the 19th CGPM (1990) have a second letter ‘A’ and ‘O’ resp. to avoid current and future conflicts and to disambiguate among themselves. The other submultiples “micro-” to “atto-” are represented by a single letter to keep with the tradition.

name print c/s c/i value
Table 1: The prefix symbols
yotta  Y YA 1 × 1024 
zetta  Z ZA 1 × 1021 
exa  E EX 1 × 1018 
peta  P PT 1 × 1015 
tera  T TR 1 × 1012 
giga  G GA 1 × 109 
mega  M MA 1 × 106 
kilo  k K 1 × 103 
hecto  h H 1 × 102 
deka  da  da DA 1 × 101 
deci  d D 1 × 10-1 
centi  c C 1 × 10-2 
milli  m M 1 × 10-3 
micro  μ  u U 1 × 10-6 
nano  n N 1 × 10-9 
pico  p P 1 × 10-12 
femto  f F 1 × 10-15 
atto  a A 1 × 10-18 
zepto  z ZO 1 × 10-21 
yocto  y YO 1 × 10-24 

4.2

Base Units

§28 base units       ■1 The base units shown in Table 2 are used to define all the unit atoms of The Unified Code for Units of Measure according to its grammar and semantics.   ■2 There are five columns titled “name,” “kind of quantity,” “print,” “c/s,” and “c/i.” The name is the full (official) name of the unit. The official symbol used in print this is listed in the column “print” “C/s,” and “c/i” list the symbol in the case sensitive and the case insensitive variants respectively.   ■3 Only the columns titled “c/s,” and “c/i,” are normative. Full name and print symbol are defined by other bodies and are out of scope of The Unified Code for Units of Measure.   ■4 The selection of base units and the particular order are not normative. Any other basis B' that generates an isomorphic group of units is conformant with The Unified Code for Units of Measure.   ■5 If the other base B' generates a different system of units U' it conforms to The Unified Code for Units of Measure only if there is an homomorphism that maps U' onto U.   ■6 Base units must be metric units only. Special units can not be base units.

As can be seen the base system used to define The Unified Code for Units of Measure is different from the system used by the Système International d'Unités (SI) The SI base unit kilogram has been replaced by gram and the mole has been replaced by the radian that is defined dimensionless in the SI. Because of the latter change The Unified Code for Units of Measure is not isomorphic with the SI.

The replacement of the kilogram is trivial. In order to bring syntax and semantics in line we can not have a unit with prefix in the base. We need a valid unit of mass before we can combine it with the prefix “kilo-” This change does not have any effect on the semantics whatsoever. The base unit kilogram is one of the oddities of the SI: if the gram would have been chosen as a base units the CGPM could have saved the rather annoying exception of the prefixing rules with the kilogram. At times where we have to multiply the wavelength of excited krypton-86 atoms by 1650763.73 to yield one meter, it seems trivial to divide the prototype of the kilogram by thousand to yield a base unit gram.

The rationale for removing the mole from the base is that the mole is essentially a count of particles expressed in a unit of very high magnitude (Avogadro's number). There is no fundamental difference between the count of particles and the count other things.

The radian has been adopted as the base unit of plane angle α to facilitate the distinction from the solid angle Ω by the relation Ω = α2 and to distinguish rotational frequency f from angular velocity ω = 2 π · rad · f.

name kind of quantity print c/s c/i
Table 2: The base units upon which the semantics of all the unit atoms in The Unified Code for Units of Measure are defined. The selection of the base and the order of the units in the base are not normative. Any other base is acceptable as long as there is an isomorphism between the group of units generated by the other base system and this one. All base units are metric.
meter  length  m M
second  time  s S
gram  mass  g G
radian  plane angle  rad  rad RAD
Kelvin  temperature  K K
Coulomb  electric charge  C C
candela  luminous intensity  cd  cd CD

4.3

Derived Unit Atoms

§29 dimensionless units       ■1 Dimensionless unit atoms are defined in Table 3.   ■2 There are seven columns titled “name,” “print,” “c/s,” “c/i,” “M,” “value,” and “definition.” The name is the full (official) name of the unit. The symbol recommended for use in print this is listed in the column “print.” “C/s,” and “c/i” list the symbol in the case sensitive and the case insensitive variants respectively. The column “M” specifies whether this is a metric unit. The definition is a valid case sensitive expression of The Unified Code for Units of Measure that defines the unit atom.   ■3 Only the columns titled “c/s,” “c/i,” “M,” “value,” and “definition” are normative. Full name and print symbol are out of scope of The Unified Code for Units of Measure.   ■4 The units named “parts per N” are provided to be used where absolutely nessecary but are not endorsed. Especially “ppb” and “pptr” are deprecated since “billion” and “trillion” are ambiguous names internationally. The explicit powers of ten should be given instead.

name print c/s c/i M definition value definition unit
Table 3: Dimensionless units. The units ppb and ppt are deprecated because the names “billion” and “trillion” are ambiguous. The expression “10*-9” or “10*-12” should be used instead. When the units percent or “parts per N” are used for concentrations specific units are prefered, e.g., “ug/l” for mass concentration. The expression “ug/kg” for ppb is also valid.
the number ten for arbitrary powers  10n  10*  10*  no 10  1 
the number ten for arbitrary powers  10n  10^  10^  no 10  1 
the number pi  π  [pi]  [PI]  no π  1 
percent  %  %  no 10*-2 
parts per thousand  ppth  [ppth]  [PPTH]  no 10*-3 
parts per million  ppm  [ppm]  [PPM]  no 10*-6 
parts per billion  ppb  [ppb]  [PPB]  no 10*-9 
parts per trillion  pptr  [pptr]  [PPTR]  no 10*-12 

The notation “10*” for powers of ten originated in the HL7 “ISO+“ extension of ISO 2955. In HL7 the character carat (‘^’) was thought as reserved. Since most people would expect to see “10^3” for the “third power of ten” and might in fact confuse “10*3” to mean “ten times 3”, the symbol using the carat was later added to The Unified Code for Units of Measure.

§30 SI units       ■1 SI units are defined by the international Conférence Générale des Poids et Mesures (CGPM). The Unified Code for Units of Measure definitions for those units are given in Table 4.   ■2 There are seven columns titled “name,” “print,” “c/s,” “c/i,” “M,” “value,” and “definition.” The name is the full (official) name of the unit. The symbol recommended for use in print this is listed in the column “print.” “C/s,” and “c/i” list the symbol in the case sensitive and the case insensitive variants respectively. The column “M” specifies whether this is a metric unit. The definition is a valid case sensitive expression of The Unified Code for Units of Measure that defines the unit atom.   ■3 Only the columns titled “c/s,” “c/i,” “M,” “value,” and “definition” are normative. Full name and print symbol are defined by the CGPM and are out of scope of The Unified Code for Units of Measure.   ■4 The function pair denoted “cel(1 K)” is defined as fC(x) = x - 273.15 to convert from kelvin to degree Celsius, and fC-1(x) = x + 273.15 to convert from degree Celsius back to kelvin.

The case insensitive symbol for pascal is “PAL” which conforms to ISO 2955 and prevents the name conflict between pascal and pico-ampère.

Without reference to history, it is difficult to explain that the degree Celsius is part of the SI, because the degree Celsius is in a unique way incoherent with the SI, and is even superflous since the base unit kelvin measures the same kind of quantity.

name kind of quantity print c/s c/i M definition value definition unit
Table 4: SI units
mole  amount of substance  mol  mol  MOL  yes 6.0221367  10*23 
steradian  solid angle  sr  sr  SR  yes rad2 
Hertz  frequency  Hz  Hz  HZ  yes s-1 
Newton  force  N  N  yes kg.m/s2 
Pascal  pressure  Pa  Pa  PAL  yes N/m2 
Joule  energy  J  J  yes N.m 
Watt  power  W  W  yes J/s 
Ampère  electric current  A  A  yes C/s 
Volt  electric potential  V  V  yes J/C 
Farad  electric capacitance  F  F  yes C/V 
Ohm  electric resistance  Ω  Ohm  OHM  yes V/A 
Siemens  electric conductance  S  SIE  yes Ohm-1 
Weber  magentic flux  Wb  Wb  WB  yes V.s 
degree Celsius  temperature  °C  Cel  CEL  yes •  cel(1 K) 
Tesla  magnetic flux density  T  T  yes Wb/m2 
Henry  inductance  H  H  yes Wb/A 
lumen  luminous flux  lm  lm  LM  yes cd.sr 
lux  illuminance  lx  lx  LX  yes lm/m2 
Becquerel  radioactivity  Bq  Bq  BQ  yes s-1 
Gray  energy dose  Gy  Gy  GY  yes J/kg 
Sievert  dose equivalent  Sv  Sv  SV  yes J/kg 

§31 other units from ISO 1000, ISO 2955 and ANSI X3.50       ■1 Those unit atoms listed by ISO 2955 under the heading “other units from ISO 1000” and some units from ANSI X3.50 are defined in Table 5.   ■2 The meaning of the columns is declared in §30.2.   ■3 Only the columns titled “c/s,” “c/i,” “M,” “value,” and “definition” are normative. Full name and print symbol are defined by ISO 1000 and are out of scope of The Unified Code for Units of Measure.

name kind of quantity print c/s c/i M definition value definition unit
Table 5: Other units from ISO 1000, ISO 2955, and some from ANSI X3.50.
gon, grade  plane angle  g  gon  GON  no 0.9  deg 
degree  plane angle  °  deg  DEG  no [pi].rad/360 
minute  plane angle  '  '  no deg/60 
second  plane angle  ''  ''  ''  no '/60 
liter  volume  l  L  yes dm3 
liter  volume  L    yes l 
are  area  ar  AR  yes 100  m2 
minute  time  min  min  MIN  no 60  s 
hour  time  h  HR  no 60  min 
day  time  d  D  no 24  h 
tropical year  time  at  a_t  ANN_T  no 365.24219  d 
mean Julian year  time  aj  a_j  ANN_J  no 365.25  d 
mean Gregorian year  time  ag  a_g  ANN_G  no 365.2425  d 
year  time  a  ANN  no a_j 
week  time  wk  wk  WK  no d 
synodal month  time  mos  mo_s  MO_S  no 29.53059  d 
mean Julian month  time  moj  mo_j  MO_J  no a_j/12 
mean Gregorian month  time  mog  mo_g  MO_G  no a_g/12 
month  time  mo  mo  MO  no mo_j 
tonne  mass  t  TNE  yes 1 × 103  kg 
bar  pressure  bar  bar  BAR  yes 1 × 105  Pa 
unified atomic mass unit  mass  u  AMU  yes 1.6605402 × 10-24  g 
electronvolt  energy  eV  eV  EV  yes [e].V 
astronomic unit  length  AU  AU  ASU  no 149597.870  Mm 
parsec  length  pc  pc  PRS  yes 3.085678 × 1016  m 

In the case sensitive variant the liter is defined both with an upper case ‘L” and a lower case ‘l’. NIST [63 FR 40338] declares the upper case ‘L’ as the prefered symbol for the U.S., while in many other countries the lower case ‘l’ is used. In fact the lower case ‘l’ was in effect since 1879. A hundred years later in 1979 the 16th CGPM decided to adopt the upper case ‘L’ as a second symbol for the liter. In the case insensitive variant there is only one symbol defined since there is no difference between upper case ‘L’ and lower case ‘l’.

The unit “are” competes with year for the symbol “a” not only in ISO 2955, and ANSI X3.50, but also in ISO 1000 as stating the official CGPM approved symbols. This is why the symbol for are is “ar” in The Unified Code for Units of Measure. ISO 2955 explicitely adds the unit atom “ha” for hectare, while “hectare” is just the correct spelling of the compositum of “hecto” and “are” and thus would not require a separate unit atom. Nevertheless, ISO 2955 in its case insensitive variant assigns “ARE” to the are and “har” to the hectare. This is obviously an anomality which The Unified Code for Units of Measure will not follow. As a metric unit, “ar” can be prefixed with “h” to yield “har

ANSI X3.50 had two different series of symbols for the units of time, the ones from ISO 2955 as adopted by The Unified Code for Units of Measure and the symbols “yr” “mo” “wk” “hr” and “sec” while “d” and “min” were defined twice. The Unified Code for Units of Measure does not define these synonyms of ISO 2955 symbols, but does adopt those units from ANSI X3.50 that are not part of ISO 2955, namely “mo” and “wk” Month and week are useful units mainly in business or clinical medicine.

The semantics of the units of time is difficult to capture. The difficulties start with the day: There is the sidereal and the solar day that depend on the earth's rotation. The earth's rotation is variable during one day and is continually slowing down in the long run. The usual subdivisions of the day in 24 hours of 60 minutes and 60 seconds originated in Babylonia. The earth's rotation was too inexact to measure time, which is why the 11th CGPM (1954) defined the second based on a standarized historical tropical year (see below) which was later (13th CGPM 1967-1968) replaced by frequency measurement. Thus the second came to be the base unit of time and the day is now 864000 s exactly with the Universal Coordinated Time (UTC) adding leap seconds every now and then.

For the year we have to distinguish the “tropical” (solar, sidereal) year from the calendar year. And both are difficult. The tropical year is the year defined by time the earth travels around the sun. This is difficult to measure and varies over time. Around 1900 it was 365.242196 d, currently it is 365.242190 d and around 2100 it will be 365.242184 d. In addition these durations are averages. The actual length of each year may vary by several minutes due to the gravitational influence of other planets. Thus there is quite a high uncertainty already in the fourth decimal digit.

The calendar year is also difficult because there is the Julian calendar (Sosigenes of Alexandria and Julius Caesar, 45 BC) with a slightly too long year of 365.25 d that causes the calendar to be one day ahead of the tropical year in 128 years. The Gregorian calendar (Christopher Clavius 1537-1612 and Pope Gregory XIII 1545-1563) leaves out three leap years in 400 years (let n be the year number, the leap year is dropped if n mod 100 = 0 but not n mod 400 = 0.) The Gregorian mean year is thus 365.2425 d. This leap year arithmetic seems to be too much even for astronomers, which is why the light year ends up being defined based on the Julian year [NIST Sp. Pub. 811, 1995 Edition]. For this reason The Unified Code for Units of Measure defines Tropical, Julian and Gregorian year by means of subscripts, but assigns the default year symbol to the Julian year.

The week is 7 days, this is a biblic truth we can count on (it is actually quite plausible that the week of seven days originated in Babylonia and entered Jewish tradition during the Babylonian exile.)

The difficultiy continues with the month. The lunar (so called “synodal” month is variable. Around 1900 it was 29.5305886 d currently it is 29.5305889 d and in 2100 it will be 29.5305891 d, which we fixate in the 5th decimal digit with a considerable uncertainty. The calendar month is difficult because of the uneven distribution of days in a month over the year, and because of the two different calendar years. But we will usually use the mean calendar month, which is the Julian calendar year divided by 12.

As a conclusion, great care has to be taken when the “customary units” of time are used to measure time. The SI has fixated the second which should be used whenever accuracy is required. For business purposes the Julian calendar is sufficient especially since the notion of the Work-Day (vs. Holiday) is more important than the imprecision over 128 years. [Sources: “Calendar” Britannica Online.http://www.eb.com:180/cgi-bin/g?DocF=macro/5000/98/toc.html. Claus Tondering, Frequently asked questions about calendars. Part 1. 1998. http://www.pip.dknet.dk/~c-t/calendar.faq1.txt]

§32 natural units       ■1 Fundamental constants of nature and units derived from these constants are defined in Table 6.   ■2 The meaning of the columns is declared in §30.2.   ■3 Only the columns titled “c/s,” “c/i,” “M,” “value,” and “definition” are normative. Full name and print symbol are defined by ISO 1000 and are out of scope of The Unified Code for Units of Measure.

name kind of quantity print c/s c/i M definition value definition unit
Table 6: Natural units.
velocity of light  velocity  c  [c]  [C]  yes 299792458  m/s 
Planck constant  action  h  [h]  [H]  yes 6.6260755 × 10-24  J.s 
Boltzmann constant  (unclassified)  k  [k]  [K]  yes 1.380658 × 10-23  J/K 
permittivity of vacuum  electric permittivity  ε0  [eps_0]  [eps_0]  yes 8.854187817 × 10-12  F/m 
permeability of vacuum  magnetic permeability  μ0  [mu_0]  [mu_0]  yes 4.[pi].10*-7.N/A2 
elementary charge  electric charge  e  [e]  [E]  yes 1.60217733 × 10-19  C 
electron mass  mass  me  [m_e]  [M_E]  yes 9.1093897 × 10-28  g 
proton mass  mass  mp  [m_p]  [M_P]  yes 1.6726231 × 10-24  g 
Newtonian constant of gravitation  (unclassified)  G  [G]  [GC]  yes 6.67259 × 10-11  m3.kg-1.s-2 
standard acceleration of free fall  acceleration  gn  [g]  [G]  yes 9.80665  m/s2 
standard atmosphere  pressure  atm  atm  ATM  no 101325  Pa 
light-year  length  l.y.  [ly]  [LY]  yes [c].a_j 
gram-force  force  gf  gf  GF  yes g.[g] 
pound force  force  lbf  [lbf_av]  [LBF_AV]  no [lb_av].[g] 

This list is not complete. It does not list all constants but only those that are fundamental and from which many other constants can be derived. The source of this table is The NIST Reference on Constants, Units, and Uncertainty Version 2.1, 21 May 1998. NIST Physics Laboratory. http://physics.nist.gov/cuu/Constants/index.html

In the base system of The Unified Code for Units of Measure, the general gas constant R is identical to the Boltzman constant k. In the SI both are related through R = k × NA, where NA = 6.0221367 × 1023 /mol is the Avogadro constant. Because The Unified Code for Units of Measure defines the mole to be the dimensionless Avogadro number (number of particles in 1 g of 12C itself, there is no difference anymore if the Boltzman constant is given as k = 1.380658 × 1023 J/K or R = 8.314511 J mol-1 K-1.

§33 CGS units       ■1 The units of the older Centimeter-Gram-Second (CGS) system are defined in Table 7.   ■2 The meaning of the columns is declared in §30.2.   ■3 Only the columns titled “c/s,” “c/i,” “M,” “value,” and “definition” are normative. Full name and print symbol are out of scope of The Unified Code for Units of Measure.

name kind of quantity print c/s c/i M definition value definition unit
Table 7: CGS units
Kayser  lineic number  Ky  KY  yes cm-1 
Gal  acceleration  Gal  Gal  GL  yes cm/s2 
dyne  force  dyn  dyn  DYN  yes g.cm/s2 
erg  energy  erg  erg  ERG  yes dyn.cm 
Poise  dynamic viscosity  P  P  yes dyn.s/cm2 
Biot  electric current  Bi  Bi  BI  yes 10  A