Толчок для комплексного JSON преобразования - PullRequest
0 голосов
/ 01 мая 2020

Извлечение значений из первого элемента массива и второго элемента и объединение обоих. Строка ввода:

[
  {
    "creationDate": "2020-04-01T14:14:32.685+0000",
    "factValues": [
      {
        "Factname": "Medicine",
        "factvalue": "1234556",
        "sourcePguid": "1"
      },
      {
        "Factname": "Journal",
        "factvalue": "123455",
        "sourcePguid": "1"
      }
    ]
  },
  {
    "creationDate": "2020-04-01T14:14:32.685+0000",
    "factValues": [
      {
        "Factname": "chemical",
        "factvalue": "123455567",
        "sourcePguid": "2"
      },
      {
        "Factname": "Rubber",
        "factvalue": "123455435",
        "sourcePguid": "3"
      }
    ]
  }
]

Выходные данные исключены:

{
   {
    "sourcePguid" : "1",
    "Medicine":"1234556",
    "Journal":"123455"
  }, {
    "sourcePguid" : "2",
    "chemical":"123455567",
    "Rubber":"123455435"
  } 
}

Пожалуйста, помогите мне достичь ожидаемого результата. json в spe c. json. Spe c не трансформируется как ожидаемый результат. Я хочу узнать, как использовать атрибуты внутри парсера строк. Это было бы здорово.

1 Ответ

0 голосов
/ 02 мая 2020

Надеюсь, это поможет,

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "factValues": {
          "*": {
            "sourcePguid": "&3.sourcePguid",
            "@(0,factvalue)": "&3.@Factname"
          }
        }
      }
    }
  }, {
    "operation": "modify-overwrite-beta",
    "spec": {
      "*": {
        "sourcePguid": "=firstElement(@(1,sourcePguid))"
      }
    }
}
]
...