gpt4 book ai didi

json - 高级 json-schema 每个属性有多个规则

转载 作者:太空宇宙 更新时间:2023-11-04 03:23:17 24 4
gpt4 key购买 nike

我想知道一个属性是否可以有多个规则。所有的例子似乎都表明你不能。

所以我想要这样的东西:

"properties": {
"track": {
"type": "string",
"pattern": "(exclusive)"
},
"track": {
"type": "string",
"pattern": "(featuring)"
}
}

我知道在这个例子中要做的显而易见的事情是让模式具有“(exclusive)|(featuring)”,但我想我想知道哪个规则失败了。同样,我稍后可能想要更复杂的模式,这可能无法通过 | 解决。

最佳答案

您可以将架构与 allOfanyOfoneOf 关键字组合起来。这些关键字中的每一个都采用一组模式并执行其所说的操作。如果所有模式都有效,则allOf有效。如果任何模式有效,anyOf 也有效。如果恰好其中一个模式有效,则 oneOf 有效。

这是解决您的问题的一种方法。

{
"type": "object",
"properties": {
"track": {
"anyOf": [
{
"type": "string",
"pattern": "(exclusive)"
},
{
"type": "string",
"pattern": "(featuring)"
}
]
}
}
}

关于json - 高级 json-schema 每个属性有多个规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47837531/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com