gpt4 book ai didi

json - JSON 模式中的变量属性

转载 作者:行者123 更新时间:2023-12-02 03:33:14 24 4
gpt4 key购买 nike

我有以下示例 JSON,我想为其编写一个 JSON 架构。约束是 property2 包含一个字符串列表,该列表是动态的,具体取决于数据集。在 property3 对象中,一些属性以这些字符串命名。

 {
"property1": "value",
"property2": ["value1","value2","value2"],
"property3": {
"title": "test",
"value1": "hello",
"value2": "world"
}
}

JSON-Schema 可能看起来像这样,但我不知道如何描述动态属性。那可能吗?
 {
"title": "Test Object",
"type": "object",
"properties": {
"property1": {
"type": "string"
}
"property1": {
"type": "array"
}
"property3": {
"type": "object",
"properties": {
"title": {
"type": "string"
}
[ Something is missing here ]
}
}
}
}

最佳答案

您不能使用 Json-Schema(从 Draft v4 开始)将属性值与属性键相关联。

你可以:

  • 将 property2 定义为架构并从 property3 (dependencies,allOf, anyOf, additionalProperties...) 中引用它 (#ref)。如果这些属性名称在您的情况下非常动态,您可以即时构建此架构。
  • 使用 patternProperties 将 property3 中的有效属性名称限制为某些固定的正则表达式。
  • 关于json - JSON 模式中的变量属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25420840/

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