You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JSON Schema定义中如何同时设置minLength并允许字段为null

JSON Schema 社会安全号码字段兼容null值解决方案

修改后的配置如下,无需删除minLength约束即可同时支持合法SSN字符串和null值:

"socialSecurityField":{
  "type": ["string", "null"],
  "minLength": 9,
  "maxLength": 11,
  "pattern": "^\\d{3}([ -]?)\\d{2}\\1?\\d{4}$"
}

实现原理

  • JSON Schema 的类型校验支持传入数组,设置"type": ["string", "null"]即表示该字段允许取值为字符串或null两种类型。
  • 针对字符串的专属校验规则(minLength/maxLength/pattern)仅会在字段值为字符串类型时触发校验,当值为null时会自动跳过上述规则,不会触发校验失败,因此原有字符串校验逻辑完全保留。

补充说明

原配置中的正则表达式存在多余闭合括号的语法问题,修正后的正则额外增加了分隔符一致性校验:仅允许无分隔符、统一短横线分隔、统一空格分隔三种合法SSN格式,避免出现前后分隔符不一致的非法值。

内容的提问来源于stack exchange,提问作者TheWizardOfTN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 08:24:01