All dimensions and units

Use this page to find the exact unit name accepted after @ and its conversion factor. If you are learning how units work, start with Units and measures . For annotation syntax, see Types .

Quick rules

  • Write a catalog name after a numeric type: DOUBLE@LENGTH.METER.
  • Wrap compound units in parentheses: DOUBLE@(LENGTH.METER / DURATION.SECOND).
  • Write square and cubic metres as powers: @(LENGTH.METER ^ 2) and @(LENGTH.METER ^ 3).
  • Use CONVERT_UNIT() to change scale. FeatureQL never converts silently.
  • Choose the complete name when systems differ. For example, use VOLUME.US_LIQUID_GALLON or VOLUME.IMPERIAL_GALLON, not VOLUME.GALLON.

There are no exact aliases such as AREA.SQUARE_METER, VOLUME.CUBIC_METER, or SQM. AREA and VOLUME contain only names that add a scale, such as AREA.HECTARE, AREA.ACRE, and VOLUME.LITER.

In the tables below, “one unit is” gives the exact conversion used by CONVERT_UNIT(). External UCUM and ISO codes are metadata.

The catalog grows with FeatureMesh releases. Existing names are never redefined or removed, and projects cannot add their own unit names.

Metric reference

Metric units are the common conversion reference.

WriteOne unit isExternal code
LENGTH.METERreference lengthUCUM m
LENGTH.KILOMETER1000 LENGTH.METERUCUM km
LENGTH.DECIMETER1/10 LENGTH.METERUCUM dm
LENGTH.CENTIMETER1/100 LENGTH.METERUCUM cm
LENGTH.MILLIMETER1/1000 LENGTH.METERUCUM mm
MASS.KILOGRAMreference massUCUM kg
MASS.GRAM1/1000 MASS.KILOGRAMUCUM g
MASS.MILLIGRAM1/1000000 MASS.KILOGRAMUCUM mg
MASS.TONNE1000 MASS.KILOGRAMUCUM t
AREA.HECTARE10000 LENGTH.METER ^ 2UCUM har
VOLUME.LITER1/1000 LENGTH.METER ^ 3UCUM L
VOLUME.MILLILITER1/1000 VOLUME.LITERUCUM mL

VOLUME.LITER and LENGTH.METER ^ 3 are different labels. Convert explicitly when you move between them.

Shared international

Modern US customary and Imperial systems use the same international inch, foot, yard, mile, avoirdupois ounce, pound, and acre. Use these shared names in both systems.

WriteOne unit isExternal code
LENGTH.INCH0.0254 LENGTH.METERUCUM [in_i]
LENGTH.FOOT0.3048 LENGTH.METERUCUM [ft_i]
LENGTH.YARD0.9144 LENGTH.METERUCUM [yd_i]
LENGTH.MILE1609.344 LENGTH.METERUCUM [mi_i]
MASS.OUNCE1/16 MASS.POUNDUCUM [oz_av]
MASS.POUND0.45359237 MASS.KILOGRAMUCUM [lb_av]
AREA.ACRE43560 LENGTH.FOOT ^ 2NIST international acre

US customary

US liquid and US dry volumes are different. Choose the name that matches the source data.

WriteOne unit isExternal code
MASS.SHORT_TON2000 MASS.POUNDUCUM [ston_av]
VOLUME.US_LIQUID_GALLON3.785411784 VOLUME.LITERUCUM [gal_us]
VOLUME.US_QUART1/4 VOLUME.US_LIQUID_GALLONUCUM [qt_us]
VOLUME.US_PINT1/8 VOLUME.US_LIQUID_GALLONUCUM [pt_us]
VOLUME.US_FLUID_OUNCE1/128 VOLUME.US_LIQUID_GALLONUCUM [foz_us]
VOLUME.US_DRY_GALLON4.40488377086 VOLUME.LITERUCUM [gal_wi]
VOLUME.US_DRY_QUART1/4 VOLUME.US_DRY_GALLONUCUM [dqt_us]
VOLUME.US_DRY_PINT1/8 VOLUME.US_DRY_GALLONUCUM [dpt_us]

Imperial

WriteOne unit isExternal code
MASS.STONE14 MASS.POUNDUCUM [stone_av]
MASS.LONG_TON2240 MASS.POUNDUCUM [lton_av]
VOLUME.IMPERIAL_GALLON4.54609 VOLUME.LITERUCUM [gal_br]
VOLUME.IMPERIAL_QUART1/4 VOLUME.IMPERIAL_GALLONUCUM [qt_br]
VOLUME.IMPERIAL_PINT1/8 VOLUME.IMPERIAL_GALLONUCUM [pt_br]
VOLUME.IMPERIAL_FLUID_OUNCE1/160 VOLUME.IMPERIAL_GALLONUCUM [foz_br]

US liquid, US dry, and Imperial gallons are three different units. CONVERT_UNIT() can convert between them; FeatureQL will not guess which gallon you meant.

Legacy US survey

Use these names only for legacy data. The US survey foot was retired for most US government use at the end of 2022 and is slightly longer than the international foot.

WriteOne unit isExternal code
LENGTH.US_SURVEY_FOOT1200/3937 LENGTH.METERUCUM [ft_us]
LENGTH.US_SURVEY_MILE5280 LENGTH.US_SURVEY_FOOTUCUM [mi_us]
AREA.US_SURVEY_ACRE43560 LENGTH.US_SURVEY_FOOT ^ 2UCUM [acr_us]

Currency

Currency conversion rates are data, so the catalog converts minor units but does not convert one currency into another.

WriteOne unit isExternal code
CURRENCY.USDUS dollarISO 4217 USD
CURRENCY.USD_CENT1/100 CURRENCY.USD
CURRENCY.EUReuroISO 4217 EUR
CURRENCY.EUR_CENT1/100 CURRENCY.EUR
CURRENCY.GBPpound sterlingISO 4217 GBP
CURRENCY.GBP_PENCE1/100 CURRENCY.GBP
CURRENCY.JPYJapanese yenISO 4217 JPY
CURRENCY.CHFSwiss francISO 4217 CHF
CURRENCY.CHF_RAPPEN1/100 CURRENCY.CHF

Duration

WriteOne unit isExternal code
DURATION.SECONDreference durationUCUM s
DURATION.MINUTE60 DURATION.SECONDUCUM min
DURATION.HOUR3600 DURATION.SECONDUCUM h
DURATION.DAY86400 DURATION.SECONDUCUM d
DURATION.WEEK604800 DURATION.SECONDUCUM wk
DURATION.MONTH2592000 DURATION.SECONDUCUM mo
DURATION.YEAR31557600 DURATION.SECONDUCUM a

DURATION.MONTH means exactly 30 days. DURATION.YEAR means exactly 365.25 days. They are fixed conversion units, not calendar-aware periods.

Information

WriteOne unit isExternal code
INFORMATION.BYTEreference information unitUCUM By
INFORMATION.KIBIBYTE1024 INFORMATION.BYTE
INFORMATION.MEBIBYTE1048576 INFORMATION.BYTE

Temperature

WriteConverts toFormulaExternal code
TEMPERATURE.FAHRENHEITreference temperature—UCUM [degF]
TEMPERATURE.CELSIUSTEMPERATURE.FAHRENHEIT°F = °C × 9/5 + 32UCUM Cel

Celsius and Fahrenheit differ by an offset. You can convert one to the other, but temperature units cannot appear inside a compound unit.

Dimensionless

Use @DIMENSIONLESS for a value known to have no unit, such as a ratio, percentage, weight, or multiplier. @1 is an optional shorter spelling.

An unannotated number is different: it is unlabelled, which means FeatureQL does not know what it measures.

Entity cardinality atoms

Every feature declared with ENTITY() is also a counting unit — BIGINT@ORDERS is a count of orders. Pair it with a measured total to get a rate: @(CURRENCY.USD / ORDERS).

Reserved names

Catalog category names cannot be used as ENTITY() names: CURRENCY, LENGTH, MASS, AREA, VOLUME, DURATION, INFORMATION, and TEMPERATURE. UNDEFINED is also reserved.