Work out exceptions to CoDL double-space rules
We have a general rule that on a line, after two or more spaces, a single space does not constitute a new parameter. That is, two or more spaces are required to separate subsequent parameters. For key/value-style data, this works well most of the time, but not always. In a hypothetical project definition we could have, for example,
id my-project
name My project
description The project I'm developing
keywords experimental data cli
and experimental data cli would be treated as a single parameter, which would lead to a validation failure if keywords are not allowed to contain spaces, while it should really be three separate parameters (which would be interpreted as a repeated parameter according to the schema). But we would not want the description to be split on spaces.
Offering a way to specify (in a schema) whether a field can include spaces (or not) might help here. Concretely, this would mean that the example above could be correctly interpreted without additional spaces being required between the keywords.
Currently we use the following symbols in schemata:
-
!: unique -
*: many -
+: at least one - nothing: exactly one
-
?: maybe one
We could add another symbol to indicate whether parameters can contain spaces, but this would only be useful for + and *.