验证JSON架构中的强制字符串值 [英] Validating Mandatory String values in JSON Schema

查看:11
本文介绍了验证JSON架构中的强制字符串值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下示例模式。我需要确保在json文件中至少出现一次"name":"这是必需的"

有可能做到这一点吗?请帮忙。

   "SchemaList": {
      "type": "array",      
      "additionalItems": false,
      "items": { "$ref": "#/definitions/Schema1" }          
        },
   "Schema1": {
      "type": "object",         
      "properties": {
        "description": { "type": "string" },
        "name": { "type": "string" }        
            }
        }

推荐答案

最新的草稿(草案6)引入了一个新的关键字"contains",您可以用它来表示给定的模式应该至少与数组中的一个元素匹配。您可以这样使用它:

{
    "SchemaList": {
        "additionalItems": false,
        "contains": {
            "properties": {
                "name": {
                    "const": "This is Mandatory"
                }
            },
            "required": [
                "name"
            ]
        },
        "items": {
            "$ref": "#/definitions/Schema1"
        },
        "type": "array"
    }
}

但请记住the latest draft version of json-schema has only a very few implementations,因此根据您使用的库,"contains"关键字可能不起作用。

这篇关于验证JSON架构中的强制字符串值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆