问题描述
我的 Jolt 转换有问题,但不知道如何解决。 我在生成的数组中得到“空”元素:
{
"Verkaufsprodukt": [
{
"Produkt": [
{
"Elementarprodukt": [
{
"ArtID": {
"bezeichnung": "b","value": "0302"
},"VersichertePerson": {
"PartnerID": "1"
}
},{
"ArtID": {
"bezeichnung": "f"
},{
"ArtID": {
"bezeichnung": "c"
},{
"ArtID": {
"bezeichnung": "a","value": "0301"
},"VersichertePerson": {
"PartnerID": "1"
}
}
]
}
]
}
],"Partner": [
{
"Name": "Holgerson","PartnerID": "1","Vorname": "Nils"
}
]
}
我的结果:
{
"vertragsdetails" : {
"versichertePersonen" : {
"versicherungssummenOderLeistungen" : [ null,{
"kennung" : "0302"
},null,{
"kennung" : "0301"
} ]
}
}
}
这是我的规格:
[
{
"operation": "shift","spec": {
"Verkaufsprodukt": {
"*": {
"Produkt": {
"*": {
"Elementarprodukt": {
"*": {
"VersichertePerson": {
"PartnerID": {
"1": {
"@(3)": {
"ArtID": {
"value": "vertragsdetails.versichertePersonen.versicherungssummenOderLeistungen[&6].kennung"
}
}
}
}
}
}
}
}
}
}
}
}
}
]
我明白了,空元素来自没有“vaules”的“ArtID”元素,但我怎样才能摆脱它们?
我尝试了一个“操作”:“移位”,但它也删除了我想要的其他元素。
有人可以帮忙吗?谢谢!
解决方法
我发现了一个灵魂。我将此添加到我的规范中:
{
"operation": "shift","spec": {
"vertragsdetails": {
"versichertePersonen": {
"versicherungssummenOderLeistungen": {
"*": {
"kennung": {
"@1": "vertragsdetails.versichertePersonen.versicherungssummenOderLeistungen[]"
}
}
}
"dataToKeep": "vertragsdetails.versichertePersonen.dataToKeep"
}
}
}
}