Преобразование JSON так же просто, как xslt / saxon - PullRequest
0 голосов
/ 28 августа 2018

Я работаю над проектом «Извлечение трансформационной нагрузки».

В моих предыдущих проектах ETL загрузка данных была структурирована в XML, и я использовал xslt для части Transformation.

Для этого проекта данные представлены в формате JSON.

Есть ли удобный способ конвертировать один файл json в другой файл json, используя jsonpath внутри json, как это делает саксон в одной командной строке?

как, например: theProgram -i input.json -t transfo.json -o output.json

input.json
{
    "creationDate": "2018-05-29T12:41:08,306+02:00",
    "id": "7edb06eb-2298-34b9-a9f5-cf47f645a6b6", 
    "smartdata":
    {
        "producer": "r2d2"
    }
    "versionSchema": "null"
}
transfo.json
{
    "data": 
        {
            "uuid": "$.id",
            "producer": "$.smartData.producer"
        }
}
output.json
{
    "data": 
        {
            "uuid": "7edb06eb-2298-34b9-a9f5-cf47f645a6b6", 
            "producer": "r2d2"
        }
}

Спасибо

1 Ответ

0 голосов
/ 28 марта 2019

Вы можете обернуть json в xml и использовать для этого саксон. Вроде хак, но довольно простой и должен работать.

...