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

JSON Schema数值比较:如何判断number类型属性years是否小于3

JSON Schema数值范围判断实现方案

先修正已有无效配置

你当前给number类型的years字段配置pattern是无效约束:pattern关键字仅对string类型生效,数值类型不会识别该规则。如果你要限定years只能取0~10的整数,建议调整为如下标准写法,比正则校验更可靠:

"years": {
  "type": "integer",
  "minimum": 0,
  "maximum": 10
}

小于3的条件校验正确实现

你尝试的枚举写法仅对整数值场景生效,且扩展性差,JSON Schema提供了专门的数值边界校验关键字,通用实现如下:

"if": {
  "properties": {
    "years": {
      "exclusiveMaximum": 3
    }
  },
  // 补充required约束,避免years字段不存在时也误触发条件
  "required": ["years"]
}

如果你的业务确实只允许years取0、1、2三个值,也可以用enum关键字实现,比你写的anyOf语法更规范:

"if": {
  "properties": {
    "years": {
      "enum": [0, 1, 2]
    }
  },
  "required": ["years"]
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 04:24:01