Data Structures; Measurement units - uktrade/tariff-data-manual GitHub Wiki

Measurement units

What are measurement units?

Duty rates and measure conditions often vary based on a measurement of a commodity (e.g. a duty rate of 33 GBP per 100kg).

Measurement units define the units of measurement used in such circumstances, as well as setting the appropriate units of measurement to be used in goods declarations.

For example, when a trader declares goods for import, they usually have to declare the weight of their goods in kilograms (KGM), but goods may also be measured in other units including (but not limited to):

  • number of items for livestock
  • volume in litres for liquid items
  • number of pairs for socks

Measurement units are similarly used in quota definitions.

Measurement unit codes and abbreviations

Measurements are defined by a three letter code, as detailed in the table below. These codes are consistent across government services. Human readable abbreviations are often also used, these are also shown in the table, although they may differ across government services.

SELECT code AS "Code",
	description AS "Unit",
	abbreviation AS "Abbreviation"
FROM measure_measurements_units
    INNER JOIN common_version_groups
        ON measure_measurements_units.trackedmodel_ptr_id = common_version_groups.current_version_id

Measurement unit qualifiers

Measurement unit qualifiers can only be applied to some measurement units.

The measurement units that are commonly used are Number of Articles (NAR), which are also referred to as:

  • 'p/s' for items in French or German, or
  • 'heads' in reference to livestock

The following table is used to identify which qualifiers can be used alongside which measurement codes. Combinations of unit and qualifier not specified in the measurements table are not permitted. What combinations are permitted is defined in the "Measurements" table in the data

SELECT measure_measurements_units.code AS "Unit Code",
	measure_measurements_units.description AS "Unit Description",
	measure_measurement_qualifiers.code AS "Unit Qualifier Code",
	measure_measurement_qualifiers.description AS "Unit Qualifier Description"
FROM measure_measurements
    INNER JOIN common_tracked_models AS ctm1
        ON measure_measurements.measurement_unit_id = ctm1.id
    INNER JOIN common_version_groups AS cvg1
        ON ctm1.version_group_id = cvg1.id
    INNER JOIN measure_measurements_units
        ON cvg1.current_version_id = measure_measurements_units.trackedmodel_ptr_id
    INNER JOIN common_tracked_models AS ctm2
        ON measure_measurements.measurement_unit_qualifier_id= ctm2.id
    INNER JOIN common_version_groups AS cvg2
        ON ctm2.version_group_id = cvg2.id
    INNER JOIN measure_measurement_qualifiers 
        ON cvg2.current_version_id = measure_measurement_qualifiers .trackedmodel_ptr_id
ORDER BY measure_measurements_units.code, measure_measurement_qualifiers.code

Entity-relationship diagram for measurement units

Table "Measurement Units" {
	"Unit Code" char(3) [pk]
	"Description" varchar(225)
	"Abbreviation" varchar(20)
	"Validity Start" date [not null]
	"Validity End" date
}

Table "Measurement Qualifiers" {
	"Qualifier Code" char(1) [pk]
	"Description" varchar(255) [not null]
	"Abbreviation" varchar(30)
	"Validity Start" date [not null]
	"Validity End" date
}

Table "Measurements" {
	"Measurement Id" int [pk]
	"Unit Code" char(3) [pk]
	"Qualifier Code" char(1) [pk]
	"Validity Start" date [not null]
	"Validity End" date
}

Table "Measure Components" {
	"Component Measure Id" int [pk]
	"Component Measurement Id" int [pk]
	"..." "..."
}

Table "Measure Condition Components" {
  "Condition Id" int [pk]
  "Component Measurement Id" int [pk]
  "..." "..."
}

Table "Quota Definitions" {
  "Quota Definition Id" int [pk]
  "Measurement Unit Id" char(3) [pk]
  "Measurement Unit Qualifier Id" char(1) [pk]
  "..." "..."
}

Ref: "Measurements"."Unit Code" > "Measurement Units"."Unit Code"
Ref: "Measurements"."Qualifier Code" > "Measurement Qualifiers"."Qualifier Code"
Ref: "Measure Components"."Component Measurement Id" > "Measurements"."Measurement Id"
Ref: "Measure Condition Components"."Component Measurement Id" > "Measurements"."Measurement Id"  
Ref: "Quota Definitions"."Measurement Unit Id" > "Measurement Units"."Unit Code"
Ref: "Quota Definitions"."Measurement Unit Qualifier Id" > "Measurement Qualifiers"."Qualifier Code"

A note on monetary units

Many measures, quotas and duty expressions include monetary units (e.g. in a duty rate of 33 GBP per 100kg, the monetary unit is GBP). Post-2021 all monetary units (where used) in the UK tariff are in Great British Pounds (GBP). However, there is historic data that uses Euros (and variations thereof), and these currencies are listed in the monetary units entity. As these only relate to historical data we do not go into them in detail here.

Validation rules

There are no validity rules that apply to measurement units independently of measures, however the following are applicable when measurement units are used within measures.

Measurement Units in Measure Components

Code Description
ME46 If the flag “monetary unit” on duty expression is “mandatory” then a monetary unit must be specified. If the flag is set “not permitted” then no monetary unit may be entered.
ME47 If the flag “measurement unit” on duty expression is “mandatory” then a measurement unit must be specified. If the flag is set “not permitted” then no measurement unit may be entered.
ME48 Mandatory subrecord rule that a referenced monetary unit must exist.
ME49 Validity contained that the validity period of a referenced monetary unit must span the validity period of the measure.
ME50 Mandatory subrecord rule that the combination of measurement unit and measurement unit qualifier referenced in a measure must exist.
ME51 Validity contained rule requiring measurement unit validity to encompass the validity of measures they are referenced in.
ME52 Validity contained rule requiring measurement unit qualifier validity to encompass the validity of measures they are referenced in.

Measurement Units in Measure Conditions

Code Description
ME60 Mandatory subrecord rule that a referenced monetary unit must exist.
ME61 Validity contained that the validity period of a referenced monetary unit must span the validity period of the measure.
ME62 Mandatory subrecord rule that the combination of measurement unit and measurement unit qualifier referenced in a measure must exist.
ME63 Validity contained rule requiring measurement unit validity to encompass the validity of measures they are referenced in.
ME64 Validity contained rule requiring measurement unit qualifier validity to encompass the validity of measures they are referenced in.
ME110 If the flag 'monetary unit' on duty expression is 'mandatory' then a monetary unit must be specified. If the flag is set 'not permitted' then no monetary unit may be entered.
ME111 If the flag ‘measurement unit’ on duty expression is ‘mandatory’ then a measurement unit must be specified. If the flag is set to ‘not permitted’ then no measurement unit may be entered.