The VOUnits document says 'An empty unit string positively indicates that the corresponding quantity is dimensionless. Since an empty string does not conform to the grammars below, this also must be checked for before unit-parsing starts.'
Options would be:
- The grammar does not cover unitless quantities: such cases mush be marked with a separate contextual notation (this is the current situation).
- The grammar includes an empty string as a special case, to denote unitless quantities: straightforward, but it means that this is confusable with the case where the units have been omitted, and thus implicitly forces ‘units unknown’ to have a separate contextual notation.
- The grammar includes a non-empty string to denote ‘unitless’, such as ‘
-’ or ‘
.’: this immediately distinguishes the unitless case from ‘units unknown’, at the cost of another thing to document.
ISO-80000-1_2009 para 3.8, note 3, says ‘Some quantities of dimension one are defined as the ratios of two quantities of the same kind. The coherent derived unit is the number one, symbol 1.’
http://qudt.org/vocab/dimension#namespace seems to (implicitly) use
Uto indicate a dimensionless quantity, but I think that's a rather local use (it's part of a rather odd-to-me scheme to indicate decimal prefixes).
See the December 2021 discussion on the semantics mailing list, and issue #9 on the VOUnits document.
In revision d01c83ddcd62 (with some extra test cases in 3e5917e04819) the VOUnits syntax supports "1" as a positive indicator of ‘unitless’. I'll leave this issue open until the corresponding textual change is made in the VOUnits document, and that document's issue 9 is closed.