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

如何在JSON Schema的If-else规则中指定OR条件

语法调整方案

你只需要修改if条件块的逻辑规则即可:

  1. 原有AND逻辑的写法:
{
  "if": {
    "properties": {
      "LandMark1": { "const": "USA" },
      "FlatNo": { "const": "Excalibur" }
    },
    "required": ["LandMark1", "FlatNo"]
  },
  "then": {
    "required": ["LandMark2"]
  }
}

上述写法中,properties下的2个字段校验规则默认是AND关系,只有两个条件同时满足才触发then的规则。

  1. 改为OR逻辑后的写法:
{
  "if": {
    "anyOf": [
      {
        "properties": {
          "LandMark1": { "const": "USA" }
        },
        "required": ["LandMark1"]
      },
      {
        "properties": {
          "FlatNo": { "const": "Excalibur" }
        },
        "required": ["FlatNo"]
      }
    ]
  },
  "then": {
    "required": ["LandMark2"]
  }
}

核心调整说明:

  • JSON Schema中使用anyOf关键字实现逻辑或,anyOf数组内所有规则只要任意一个匹配成功,整个if判断就会通过
  • then块的必填规则不需要做任何修改,保持原有逻辑即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 10:00:05