Repeating groups

Setup for repeating groups

Groups in the data model contain one or more fields. Groups are defined as repeating if they have maxCount > 1 in the layout configuration. A group that is repeating in the data model must also be set up as repeating in the form, if not, data saving will fail. In JSON, a repeating group is defined as an array of objects, where each object is a group. In XML, a repeating group is defined as a list of elements, where each element is a group/object with properties.


Below is a form with a repeating group that:

  • Contains two components (checkbox and address)
  • Can be repeated up to three times
  • Is bound to the data model group/array GruppeListe
Form with repeating group
Form with repeating group
 2  {
 3    "id": "gruppe",
 4    "type": "Group",
 5    "children": [
 6      "avkrysningsboks",
 7      "adresse"
 8    ],
 9    "maxCount": 3,
10    "dataModelBindings": {
11      "group": "GruppeListe"
12    }
13  },
14  {
15    "id": "avkrysningsboks",
16    "type": "Checkboxes",
17    "textResourceBindings": {
18      "title": "Avkrysningsboks"
19    },
20    "dataModelBindings": {
21      "simpleBinding": "GruppeListe.Avkrysning"
22    },
23    "options": [
24      {
25        "label": "Navn",
26        "value": "Verdi1"
27      },
28      {
29        "label": "Adresse",
30        "value": "Verdi2"
31      }
32    ],
33    "required": true
34  },
35  {
36    "id": "addresse",
37    "type": "AddressComponent",
38    "textResourceBindings": {
39      "title": "Adresse" 
40    },
41    "dataModelBindings": {
42      "address": "GruppeListe.Adresse",
43      "zipCode": "GruppeListe.Postnr",
44      "postPlace": "GruppeListe.Poststed"
45    },
46    "simplified": true,
47    "readOnly": false,
48    "required": true
49  }


idYesUnique ID, same as ID on other components. Must be unique in the layout file, and should be unique across pages.
typeYesMust be ‘Group’
dataModelBindingsNoMust be set for repeating groups with form components inside. Should point to the repeating group in the data model.
textResourceBindingsNoCan be set for repeating groups, see description.
maxCountYesThe number of times a group can repeat. Must be set to 1 or more for the group component to work as a repeating group.
minCountNoValidation. The minimum number of times a group must repeat before the user can submit the form.
childrenYesList of the component IDs that are to be included in the repeating group.
editNoOptions for how to display the group when editing a row.
tableHeadersNoList of components that are to be included as part of the table header fields. If not specified, all components are displayed.
tableColumnsNoObject containing column options for specified headers. If not specified, all columns will use default display settings.


It is possible to add different keys in textResourceBindings to overrule default texts.

  • title - title to show above the group row in a Summary component.
  • add_button - is added at the end of the “Add new” text on the button, and can be used to e.g. get text that says “Add new person”.
  • add_button_full - is used as custom text on the “Add new” button. Overrides add_button if both are set.
  • save_button - is used as text on the “Save” button when the user is filling out data.
  • save_and_next_button - is used as text on the “Save and open next” button if enabled.
  • edit_button_open - is used as text on the “Edit” button on the table when the user is opening an element.
  • edit_button_close - is used as text on the “Edit” button on the table when the user is closing an element.