Height
identity.person.heightPerson height in cm, inches, or feet.inches format (e.g., 180cm, 5'10", 180). Transforms to DOUBLE (centimeters). Decompose extracts value and unit.
Worked samples
DuckDB 1.5.5 · finetype 0.6.64
| Value | As DOUBLE | unit | value |
|---|---|---|---|
| 180 cm | 180.0 | CM | 180.0 |
| 5'10" | 177.8 | FT | 5.0 |
| 70 inches | 177.8 | INCHES | 70.0 |
| 6 ft | 182.88 | FT | 6.0 |
Shape
^[0-9]+(\.[0-9]+)?\s*(cm|in|ft|inches|feet)?$|^[0-9]+'[0-9]+"$| Value | Length | Shape |
|---|---|---|
| 180 cm | 6 | matches |
| 5'10" | 5 | matches |
| 70 inches | 9 | matches |
| 6 ft | 4 | matches |
| 180 c | 5 | rejected: one character short |
Told apart
Going the other way, this type's own rule accepts 1 of 4 samples of Gender Code.
Background
Origin
FineType defines this type itself, as identity.person.height in its identity label definitions.[1] FineType's definition covers a person's height written in centimetres, in inches, or in feet and inches, such as 180cm or 5'10".[1]
The units themselves are fixed by international agreement: since 1959 the foot has been exactly 0.3048 metres by definition.[2] The inch has been defined as exactly 25.4 mm since the adoption of the international yard.[3] One foot is twelve inches.[3] The prime symbol, ′, is commonly used for the foot, and it is often approximated by an apostrophe.[2] The inch is traditionally written with a double prime, ″, which is often approximated by a double quotation mark.[3]
Use
North American driving licences show how one record can carry height in more than one shape. (Meridian's view) The 2020 AAMVA DL/ID Card Design Standard prints height on US cards in feet and inches, with the example 6’-01” for 6 foot 1 inch.[4] The same standard prints height on Canadian cards in centimetres, with the example 181 cm.[4] The standard's barcode example writes 6'1'' as 073 in, padded with a leading zero.[4]
Among the British public, the foot is widely used as a measurement of height.[2]
Where you'll meet it
The US National Health and Nutrition Examination Survey records standing height in its 2017-2018 body measures file as the variable BMXHT, labelled Standing Height (cm).[5] That file's codebook gives an observed range for BMXHT of 78.3 to 197.7.[5]
Sources
- [1]finetype/labels/definitions_identity.yamlFineType
- [2]Foot (unit)secondary source
- [3]Inchsecondary source
- [4]2020 AAMVA DL/ID Card Design Standardstandard
- [5]Body Measures (BMX_J)dataset
Detection notes
v1 migration: Was person.height. Transform converts to centimeters. Handles ft'in" notation, inches, cm, feet. Decompose extracts value and unit.
Use it
$ finetype infer -i "180 cm" --mode column
→ identity.person.height
SELECT ft_infer('180 cm');
-- → 'identity.person.height'CASE
WHEN UPPER({col}) LIKE '%FT%' OR {col} LIKE '%''%' THEN
(CAST(REGEXP_EXTRACT({col}, '^([0-9]+)', 1) AS DOUBLE) * 30.48) +
(CAST(COALESCE(NULLIF(REGEXP_EXTRACT({col}, '''([0-9]+)', 1), ''), '0') AS DOUBLE) * 2.54)
WHEN UPPER({col}) LIKE '%IN%' THEN CAST(REGEXP_EXTRACT({col}, '^([0-9.]+)', 1) AS DOUBLE) * 2.54
ELSE CAST(REGEXP_EXTRACT({col}, '^([0-9.]+)', 1) AS DOUBLE)
END
Schema
https://meridian.online/schemas/identity.person.height · Frictionless type number
finetype taxonomy identity.person.height -o json-schema