As companies tag the detailed footnotes, the need to define additional units of measure is increasing. A number of filers have questioned which units can and should be used with different datatypes. The requirement to use the Units registry adds further complexity to this issue. This guidance is intended to clarify the use of units and the associated datatypes.
Best practice guidance issued on fractions (See item 2.5 in the Resolutions Summary) recommended that companies use pure item type or per Unit item type as the datatype for an extension element. This guidance on fractions contradicted with EFM6.8.15. Per discussion with the SEC, the use of the pure item type or per unit item type as the datatype on a fraction is a valid exception to this EFM rule. In version 20 of the EFM, this guidance was changed to remove reference to Revenue Per Passenger Mile, but the rule has not yet been updated. However, the revised wording is still causing some concern. The intention of the EFM rule is it to make it explicit that items like exchange rates that have different currencies on the denominator and the numerator should be expressed using the pure item type. The rule is not intended to exclude the use of the per unit item type. In fact, the US GAAP taxonomies have numerous cases of such elements.
The figure below shows the different types of units that can be used with different data types (this is not an exhaustive list). At the top of the diagram is the decimal item type from which other types are derived. Also included is the integer item type, float item type and double item type which also can be used as an alternative to decimals when defining an element with a numeric value. In the middle of the diagram are the more specific datatypes that are derived from the decimal item type. At the bottom of the diagram in a box are the units that can be associated with the various datatypes. The decimal item type could be used with any of the units described at the bottom of the figure as long as it has a flow to that unit through another datatype.
The dashed lines indicate that it is possible for a decimal item type to use a specific unit under the XBRL specification; however, this guidance recommends that the more specific data type should be used in SEC filings. For example, the miles unit could be used with the decimal item type, but it is preferable that the miles unit is used with concepts with a datatype of length item type. For example, if a filer is creating an extension element to capture a concept like airline seat miles, it should be defined with the datatype length item type as opposed to the decimal item type. When the value is tagged, the miles unit should then be used.
Figure 21. Data Types and Units for Numeric Values
For data types defined in the units registry such as length item type and area item type, the unit associated with concepts that have this datatype must be defined in the units registry.
Any concept defined with the shares item type must have a unit of shares associated with the fact in the instance.
Any concept defined with a monetary type must use a unit from ISO4217 that is defined in the units registry.
Any concept defined with a per Unit item type must use a numerator that is an ISO currency code and a unit defined in the units registry that is not shares, a currency or pure unit. To define an item that does not have a numerator as a currency, then the decimal item type should be used.
Any concept defined with a per share item type must use a numerator unit that is a currency code and a denominator unit of shares.
Any concept defined with a pure item type can have two possible unit combinations associated with it.
- A numerator and denominator of currencies
- Pure unit
A ratio of values that would have the same unitRef attribute must be defined as a percent item type. The unit associated with the percent item type must be pure.
Filers can define custom units when the unit is not defined in the units registry and the concept is a numeric item with a data type that is not defined in the units registry such as decimal, integer, floating or double.
 GB/s used in the example is Gigabytes per second.