如何根据运行时 JSON 对象引用进行验证?
How to validate against runtime JSON object reference?
示例 JSON 数据如下所示 -
{
"children":{
"Alice":{...},
"Jamie":{...},
"Bob":{...}
// Any new child with a given unique name will be added to this object
},
childrenOrder:["Alice", "Bob", "Jamie"]
}
在相应的 JSON 架构中,我试图将 "childrenOrder" 数组中的有效值限制为来自 运行 时间子键。
我没有在官方 JSON 模式文档 (http://json-schema.org/documentation.html) 中看到任何引用 运行 时间动态值的方法。
目前这甚至可能吗?
为了简洁起见,我省略了 JSON 模式代码。如果人们认为需要解决这个问题,我可以添加它。
提前致谢。
不,不可能使用当前的 JSON 架构规范。但是,有一个关于 JSON 架构的下一版本的提议可能会改变这一点。
https://github.com/json-schema/json-schema/wiki/%24data-(v5-proposal)
示例 JSON 数据如下所示 -
{
"children":{
"Alice":{...},
"Jamie":{...},
"Bob":{...}
// Any new child with a given unique name will be added to this object
},
childrenOrder:["Alice", "Bob", "Jamie"]
}
在相应的 JSON 架构中,我试图将 "childrenOrder" 数组中的有效值限制为来自 运行 时间子键。 我没有在官方 JSON 模式文档 (http://json-schema.org/documentation.html) 中看到任何引用 运行 时间动态值的方法。
目前这甚至可能吗? 为了简洁起见,我省略了 JSON 模式代码。如果人们认为需要解决这个问题,我可以添加它。
提前致谢。
不,不可能使用当前的 JSON 架构规范。但是,有一个关于 JSON 架构的下一版本的提议可能会改变这一点。
https://github.com/json-schema/json-schema/wiki/%24data-(v5-proposal)