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¶
A field placed inside a template or element carries a configuration block. Its settings
depend on where the field sits, not on the field's own type. The most common is required.
- key: study-name
type: text-field
name: Study Name
configuration:
required: true
The settings fall into a few groups.
Requirement¶
required and recommended say how strongly a value is expected.
| Key | Value | Presence | Meaning |
|---|---|---|---|
required |
boolean | optional | A value must be supplied. Default false. |
recommended |
boolean | optional | A value is encouraged but not enforced. |
Repetition¶
By default a field collects one value. multiple makes it collect a list, and minItems
and maxItems bound the length. Checkbox, multi-select list, and attribute-value fields are
multi-valued by nature and do not use multiple.
| Key | Value | Presence | Meaning |
|---|---|---|---|
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. |
Property Binding¶
propertyIri sets the property the field maps to when its value appears in an instance,
giving the field a semantic identity beyond its name. It is the predicate the field's value
takes in the RDF reading of an instance; see Mapping to RDF.
| Key | Value | Presence | Meaning |
|---|---|---|---|
propertyIri |
IRI | optional | The property the field binds to in an instance. |
Presentation¶
These affect how the field appears in this parent, not what it means. overrideLabel and
overrideDescription replace the field's own name and description for this placement.
hidden keeps the field out of the form, and continuePreviousLine sets it beside the
previous field rather than on a new line.
| Key | Value | Presence | Meaning |
|---|---|---|---|
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. |
hidden |
boolean | optional | The field is hidden in the form. |
continuePreviousLine |
boolean | optional | Lay the field out on the same line as the previous one. |
Static fields additionally carry width and height here; see 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, 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. |