JSON 架构使用架构中文档的值
JSON Schema use values from document in schema
假设我们有一个 json 文档
{
ips: ['192.168.1.1','192.168.1.2', '192.168.1.3'],
active: '192.168.1.1'
}
我可以编写一个模式来断言 active
必须在 ips
中吗?因此以下将无法通过验证。
{
ips: ['192.168.1.1','192.168.1.2', '192.168.1.3'],
active: '192.168.1.4'
}
如果 ips 集已知,这只有使用纯 JSON 架构标准才有可能。在这种情况下,您可以定义一个 enum
的 IP 值并使用它来验证 active
属性。另见:http://json-schema.org/understanding-json-schema/reference/generic.html#id4
如果 IP 集发生变化,您可以使用 JSON补丁更新您的架构。然后,应用验证。
假设我们有一个 json 文档
{
ips: ['192.168.1.1','192.168.1.2', '192.168.1.3'],
active: '192.168.1.1'
}
我可以编写一个模式来断言 active
必须在 ips
中吗?因此以下将无法通过验证。
{
ips: ['192.168.1.1','192.168.1.2', '192.168.1.3'],
active: '192.168.1.4'
}
如果 ips 集已知,这只有使用纯 JSON 架构标准才有可能。在这种情况下,您可以定义一个 enum
的 IP 值并使用它来验证 active
属性。另见:http://json-schema.org/understanding-json-schema/reference/generic.html#id4
如果 IP 集发生变化,您可以使用 JSON补丁更新您的架构。然后,应用验证。