Fields: Core Structure¶
A field collects one value, or a list of values. In YAML its type names its
field type. The type-specific keys differ, but every field shares the
same frame: the core keys each artifact carries, plus a
configuration block when the field sits inside a parent.
Field Configuration¶
As with elements, a field inside a template or element carries a configuration block.
These settings depend on where the field sits rather than on the field itself. They govern
whether it is required or recommended, how it binds to a property, how it is labelled and
laid out, and whether it repeats.
- key: study-name
type: text-field
name: Study Name
configuration:
required: true
| Key | Value | Presence | Meaning |
|---|---|---|---|
required |
boolean | optional | A value must be supplied. Default false. |
recommended |
boolean | optional | A value is recommended but not required. |
hidden |
boolean | optional | The field is hidden in the form. |
multiple |
boolean | optional | The field accepts a list of values. |
minItems |
integer | optional | Minimum number of values when multiple. |
maxItems |
integer | optional | Maximum number of values when multiple. |
propertyIri |
IRI | optional | The property the field binds to in an instance. |
overrideLabel |
string | optional | A display label for this field in this parent, replacing its name. |
overrideDescription |
string | optional | A display description for this field in this parent. |
continuePreviousLine |
boolean | optional | Lay the field out on the same line as the previous one. |
valueRecommendation |
boolean | optional | Enable value recommendation for the field. |
width |
integer | optional | Display width, for static fields. |
height |
integer | optional | Display height, for static fields. |
Nested and standalone fields¶
A field written as a child of a template or element carries its parent-relative settings in
configuration. A field written as a top-level definition has no parent, so the
field-level settings that do not depend on a parent — hidden, continuePreviousLine,
valueRecommendation, and the static-field width and height — appear directly among
the field's keys instead. The parent-only settings (propertyIri, overrideLabel,
overrideDescription, and the required/recommended/multiple bindings) do not apply to a
standalone field.
Semantic labels¶
Any field may carry semantic labels, independent of its type:
| Key | Value | Presence | Meaning |
|---|---|---|---|
prefLabel |
string | optional | A preferred label for the field's meaning. |
altLabels |
sequence of strings | optional | Alternate labels. |
Single and multiple values¶
By default a field collects one value. Marking it multiple makes it collect a list, with
minItems and maxItems bounding the length. Checkbox, multi-select list, and
attribute-value fields are inherently multi-valued and do not use multiple; see their
entries in Field Types.