gpt4 book ai didi

jsonschema dependentSchema 未验证

转载 作者:行者123 更新时间:2023-12-05 03:34:46 27 4
gpt4 key购买 nike

我正在尝试学习 json 模式,但有些事情对我来说并不奏效。我正在尝试运行来自 http://json-schema.org/understanding-json-schema/reference/conditionals.html#id4 的示例对于 dependentSchemas,但它只是不验证。

我正在使用这个模式:

check_schema = {"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"name": { "type": "string" },
"credit_card": { "type": "number" }
},
"required": ["name"],
"dependentSchemas": {
"credit_card": {
"properties": {
"billing_address": { "type": "string" }
},
"required": ["billing_address"]
}
}
}

这个 json 应该会引发错误,因为它缺少 key billing_address:

check_dict={
"name": "John Doe",
"credit_card": 5555555555555555
}

但是当我使用 jsonschema.validate(dic_check, schema_check)(使用 python,jsonschema 包版本 4.2.1)时,验证顺利通过。

我在这里做错了什么?

最佳答案

如果您使用的实现至少不支持规范的 draft2019-09,则 dependentSchemas 将不会被识别为关键字。在早期版本(draft7 及之前)中,该关键字被称为 dependencies,具有相同的语法(实际上,dependencies 被拆分为两个,dependentSchemasdependentRequired)。

详细信息在您链接的页面上有描述,https://json-schema.org/understanding-json-schema/reference/conditionals.html#dependentschemas .

如果您仍然认为您所拥有的应该有效,我建议您在实现的问题队列中打开错误报告。

关于jsonschema dependentSchema 未验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70091464/

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