2017-04-17 5 views
0

I json in folgendem Format (nicht beschränkt auf nur zwei Dokumente, wie in diesem Beispiel, könnte es möglicherweise viele, viele mehr):Jolt Spec für JSON-Normalisierungs benötigt

[{ 
    "ownerId": "XTV7I728", 
    "vehicleId": "999", 
    "engineId": "1", 
    "engineName": "Standard Engine", 
    "engineHp": 300 
}, 
{ 
    "ownerId": "XTV7I728", 
    "vehicleId": "999", 
    "engineId": "2", 
    "engineName": "Custom Engine", 
    "engineHp": 450 
}] 

Ich mag würde zu wesentlichen „denormalize“ mehrere diese Art von json Dokumenten in ein json Dokument, wie folgt aus:

[{ 
    "ownerId": "XTV7I728", 
    "vehicleId": "999", 
    "engines": [ 
    { 
     "engineId": "1", 
     "engineName": "Standard Engine", 
     "engineHp": 300 
    }, 
    { 
     "engineId": "2", 
     "engineName": "Custom Engine", 
     "engineHp": 450 
    } 
    ] 
}] 

wollten auch, dass etwas hinzufügen wie

[{ 
    "ownerId": "XTV7I728", 
    "vehicleId": "999", 
    "engineId": "1", 
    "engineName": "Standard Engine", 
    "engineHp": 300 
}, 
{ 
    "ownerId": "XTV7I728", 
    "vehicleId": "999", 
    "engineId": "2", 
    "engineName": "Custom Engine", 
    "engineHp": 450 
}, 
{ 
    "ownerId": "TY789021", 
    "vehicleId": "999", 
    "engineId": "1", 
    "engineName": "Standard Engine", 
    "engineHp": 300 
}] 

Sollte umgewandelt:

[{ 
    "ownerId": "XTV7I728", 
    "vehicleId": "999", 
    "engines": [ 
    { 
     "engineId": "1", 
     "engineName": "Standard Engine", 
     "engineHp": 300 
    }, 
    { 
     "engineId": "2", 
     "engineName": "Custom Engine", 
     "engineHp": 450 
    } 
    ] 
}, 
{ 
    "ownerId": "TY789021", 
    "vehicleId": "999", 
    "engines": [ 
    { 
     "engineId": "1", 
     "engineName": "Standard Engine", 
     "engineHp": 300 
    } 
    ] 
}] 

Mein begrenztes Verständnis von Jolt so weit führt mich diese Art der Transformation zu glauben, möglich ist, aber es ist nicht sofort klar, wie etwa das von der mitgelieferten Dokumentation zu gehen. Jede Hilfe mit der Jolt-Spezifikation würde sehr geschätzt werden !!

Antwort