Фактическое требование - выборка родительского идентификатора в каждом объекте json, как описано в выходных данных. Вход содержит массив дочерних элементов в иерархии. Соответствующий родительский идентификатор т.е. если id = A_B, то его parent_id должен быть A.
Пробовал Джолт Спек:
[{
"operation": "shift",
"spec": {
"children": {
"*": {
"id2": "&",
"name": "&",
"path": "&",
"@": "[&1]",
"@(2,id)": "[&1].parent_id",
"children": {
"*": {
"@": "[&1]",
"@(3,id2)": "[&1].parent_id2"
}
}
}
}
}
}]
#
ВХОД
#
{
"categories": [
{
"id": "A",
"name": "firstName",
"path": "firstPath",
"children": [
{
"id": "A_B",
"name": "secondName",
"path": "secondPath",
"children": [
{
"id": "A_B_C",
"name": "thirdName",
"path": "thirdPath"
}
]
}
]
}
]
}
#
Требуется это ВЫХОД
#
[{
"id": "A",
"name": "firstName",
"path": "firstPath",
"parentId": "0"
},
{
"id": "A_B",
"name": "secondName",
"path": "secondPath",
"parentId": "A"
},
{
"id": "A_B_C",
"name": "thirdName",
"path": "thirdPath",
"parentId": "A_B"
}]