【发布时间】:2014-10-23 15:51:16
【问题描述】:
我有一个 json 模式,它描述了一个相当复杂的 API 查询语法。一些属性是模式匹配的,但除了模式之外,还需要接受其他值(即其他显式字符串)。我似乎在众多 json 模式站点中的任何地方都找不到任何这样的例子。
一个例子:
{
"type": "object",
"properties": {
"$gte": {
"type": "string",
"pattern": "<some-pattern>"
}
}
}
我希望在上面的示例中能够指定$gte 可以是一组特定的约束值中的任何一个。例如,此特定实现要求将“$gte”的值限制为以下之一:
- 特定的日期格式
- 令牌
{token}在服务器端被替换为特殊值
我已经看到在这种情况下使用了oneOf 属性,但只使用了format 属性,所以我假设这是可能的,只是不确定如何实现它的语法,例如它可以是这样的:
{
"type": "object",
"properties": {
"$gte": {
"type": "string",
"oneOf": [
{"pattern": "<some-pattern>"},
"{token}",
"{another_token}"
]
}
}
}
如果我对 json 模式的规范草案 4 或在寻找任何示例方面没有太多运气,我将不胜感激。
【问题讨论】:
标签: json validation jsonschema