我有一个yml文件,如下所示:
mysql:
db_pswd: "abcd"
db_name: "pqrs"
我正尝试使用python中的jsonschema库针对以下架构验证此配置:
mysql:
type: object
properties:
db_pswd:
type: string
db_name:
type: string
required: ["db_pswd", "db_name"]
必填:[“ db_pswd”] *
出于测试目的,当我从配置文件中删除所需的属性时,验证未显示错误。
答案 0 :(得分:1)
您已定义(在YAML中)的JSON模式在根级别具有密钥mysql
。
您需要定义一个对象,该对象的属性为mysql
。您的“ JSON实例”(或yaml实例/文件)中有两层属性。
要实现这一目标,您需要一个类似于以下内容的架构...
type: object
properties:
mysql:
type: object
properties:
db_pswd:
type: string
db_name:
type: string
required:
- "db_pswd"
- "db_name"
required:
- "mysql"