concat

Last updated: Feb 24, 2026
DEVELOPER
IMPLEMENTATION
HEALTH TECH VENDOR

Definition

In a config modifier schema, use concat to create an array by linking defined elements together. Each element under the concat keyword can be composed of any other valid config modifier keywords. Essentially, this creates an array list for a property in the output or a list to be checked during processing.

Order of execution

This keyword executes in the following order:

  1. omit
  2. constant
  3. references
  4. use
  5. get
  6. Mutually exclusive keywords at this level:
    • properties
    • if
    • concat
    • switch
    • pipe
    • merge
    • prefer
    • items
  7. default
  8. plugin

Example 1: Join items in one list

You can use concat and - to check for items in an array then joining them in one list rather than checking each item individually.

Example: Observations input from initial payload
json
1
"Observations": [
2
{
3
"AbnormalFlag": null,
4
"Code": "93246-7",
5
...
6
"Status": "Final",
7
"Units": null,
8
"Value": "1",
9
"ValueType": "Coded Entry"
10
},
11
{
12
"AbnormalFlag": null,
13
"Code": "93247-5",
14
...
15
"Status": "Final",
16
"Units": null,
17
"Value": "1",
18
"ValueType": "Coded Entry"
19
},
20
{
21
"AbnormalFlag": null,
22
"Code": "NF1570400181",
23
...
24
"Status": "Final",
25
"Units": null,
26
"Value": "High Risk",
27
"ValueType": "String"
28
},
29
{
30
"AbnormalFlag": null,
31
"Code": "93267-3",
32
...
33
"Status": "Final",
34
"Units": null,
35
"Value": "1",
36
"ValueType": "Coded Entry"
37
},
38
{
39
"AbnormalFlag": null,
40
"Code": "93269-9",
41
...
42
"Status": "Final",
43
"Units": null,
44
"Value": "0",
45
"ValueType": "Coded Entry"
46
},
47
{
48
"AbnormalFlag": null,
49
"Code": "NF1570400504",
50
...
51
"Status": "Final",
52
"Units": null,
53
"Value": "Putting my notes here",
54
"ValueType": "String"
55
}
56
]
Example: Observations selector
json
1
$.Observations
Example: Config modifier with concat and include keywords
yaml
1
items:
2
if:
3
operator: includes
4
terms:
5
- concat:
6
- constant: NF1570400504
7
- constant: NF1570400181
8
- constant: 93374-7
9
- get: Code
10
then:
11
omit: true
12
else:
13
comment: pass observation through
Example: Observations output
json
1
"Observations": [
2
{
3
"AbnormalFlag": null,
4
"Code": "93246-7",
5
...
6
"Status": "Final",
7
"Units": null,
8
"Value": "1",
9
"ValueType": "Coded Entry"
10
},
11
{
12
"AbnormalFlag": null,
13
"Code": "93247-5",
14
...
15
"Status": "Final",
16
"Units": null,
17
"Value": "1",
18
"ValueType": "Coded Entry"
19
},
20
{
21
"AbnormalFlag": null,
22
"Code": "93267-3",
23
...
24
"Status": "Final",
25
"Units": null,
26
"Value": "1",
27
"ValueType": "Coded Entry"
28
},
29
{
30
"AbnormalFlag": null,
31
"Code": "93269-9",
32
...
33
"Status": "Final",
34
"Units": null,
35
"Value": "0",
36
"ValueType": "Coded Entry"
37
}
38
],

Example 2: Add a new item in an array

You can use concat and {} to add a new item to an array that already exists in the payload, rather than replacing it entirely.

Example 2: Concat input
json
1
{
2
"Patient": {
3
"Roles": ["PC"]
4
}
5
}
Example 2: Concat selector
json
1
$.Patient.Roles
Example 2: Config modifier with concat keyword and {}
yaml
1
concat:
2
- {}
3
- constant: SC
Example 2: Concat output
json
1
{
2
"Patient": {
3
"Roles": ["PC", "SC"]
4
}
5
}