JSON 架构允许日期或空字符串

2024-03-15

我需要定义一个 JSON 模式,其中输入可以是日期或空字符串。

我当前的 JSON 架构是

{
    "type": "object",    
    "required": [        
        "FirstName",        
        "DateOfBirth"
    ],
    "properties": {
        "FirstName": {
            "type": "string"
        },        
        "DateOfBirth": {            
            "type": "string", 
            "format": "date"
        }
    }
}

这允许

{    
    "FirstName": "Alex",
    "DateOfBirth": "1980-10-31"
}

but not

{    
    "FirstName": "Alex",
    "DateOfBirth": ""
}

如何定义 JSON 架构,以便 DateOfBirth 允许日期和空字符串。


Use anyOf允许空字符串:

{
  "type": "object",
  "required": [
    "FirstName",
    "DateOfBirth"
  ],
  "properties": {
    "FirstName": {
      "type": "string"
    },
    "DateOfBirth": {
      "anyOf": [
        {
          "type": "string",
          "format": "date"
        },
        {
          "type": "string",
          "maxLength": 0
        }
      ]
    }
  }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JSON 架构允许日期或空字符串 的相关文章

随机推荐