JSONata 递归映射



我正在尝试执行递归映射。

这是我的例子:https://try.jsonata.org/jN2b0Pt2t

在这个简单的复制器中,我试图将带有"姓名"、"年龄"和"父母"的原始"人"重新映射到仅"n"和"p"(代表映射的"姓名"和"父母"(。

我不知道为什么这不起作用。

如果我在$map(..)函数中使用$person($v),我会收到堆栈溢出错误,所以我知道正在发生递归!

任何帮助表示赞赏。

谢谢,

话筒

问题都是我的; 以下映射工作正常:

(
$person := function($node) {
$node ~> $map(function($v, $i) {
{"n":$v.Name, "p":$person($v.Parent.Person)}
})
};
{
"Person": Person ~> $person($)
}
)

最新更新