使用json模式强制实现对象非空

时间:2016-02-26 12:20:35

标签: json jsonschema json-schema-validator

我们可以按如下方式强制执行类型对象的空属性:

{
   "description": "voice mail record",
   "type": "object",
   "additionalProperties": false,
   "properties": {}
}

解释here

现在我要验证属性

  1. 属于对象类型,
  2. 没有任何预定义属性
  3. 可以具有string或numeric
  4. 类型的属性
  5. 不应为空
  6. 执行非空虚(第4点)是我无法猜测的。这与执行空虚有些相反,如上例所示。我当前的json架构摘录如下所示:

    "attribute": 
    {
        "type": "object",
        "additionalProperties": { "type": ["string","number","integer"] }
    }
    

    但上面并没有强制执行非空虚。我怎么能做到这一点?

1 个答案:

答案 0 :(得分:10)

听起来像minProperties就是你想要的。

{
    "type": "object",
    "additionalProperties": {"type": ["string", "number", "integer"]},
    "minProperties": 1
}

还有maxProperties,可用作您链接到的相反问题的替代解决方案。