Я пишу программу на Python / Flask и использую пакет под названием flask -jsonschema-validator для проверки JSON. Когда я проверяю свою JSON, я получаю следующую ошибку:
jsonschema.exceptions.SchemaError: [{'fieldname': {'type': 'string'}, 'type': {'type': 'string'}, 'description': {'type': 'string'}, 'default-value': {'type': 'string'}, 'validation': [{'type': 'string'}]}, {'fieldname': {'type': 'string'}, 'type': {'type': 'string'}, 'description': {'type': 'string'}, 'default-value': {'type': 'string'}, 'validation': [{'valid-values': {'type': 'string'}}, {'invalid-values': {'type': 'string'}}, {'isinteger': {'type': 'string'}}, {'nullable': {'type': 'string'}}]}] is not of type 'object', 'boolean'
Вот схема JSON, которую я использую
{
"validate": {
"type": "object",
"properties": {
"_id": { "type": "string", "minLength": 2, "maxLength": 100 },
"name": { "type": "string", "minLength": 2, "maxLength": 100 },
"type": { "type": "string", "minLength": 2, "maxLength": 100 },
"subtype": { "type": "string", "minLength": 2, "maxLength": 100 },
"domain-data-version": {"type": "string"},
"description": { "type": "string", "minLength": 2, "maxLength": 100 },
"created" : {"type": "string"},
"owner-org": {"type": "string"},
"domain-data":[
{
"fieldname": {"type": "string"},
"type": {"type": "string"},
"description": {"type": "string"},
"default-value": {"type": "string"},
"validation": [{"type": "string"}]},
{"fieldname": {"type": "string"},
"type": {"type": "string"},
"description": {"type": "string"},
"default-value": {"type": "string"},
"validation": [ {"valid-values": {"type": "string"}},
{"invalid-values": {"type": "string"}},
{"isinteger": {"type": "string"}},
{"nullable": {"type": "string"}}]
}]
},
"required": []
}
}
Вот JSON, которую я бы использовал
{"name": "PHARMACY-CLAIM", "type": "Pharmacy", "subtype": "Prescription Filled", "domain-data-version": "1", "domain-data": [{"fieldname": "claim-id", "type": "string", "description": "The Insurance claim ID", "default-value": "null", "validation": [{"nullable": "false"}]}, {"fieldname": "member-gen-key", "type": "string", "description": "The unique insurance Member ID", "default-value": "null", "validation": [{"nullable": "false"}]}, {"fieldname": "ndc", "type": "string", "description": "The National Drug Code value for the medication prescription filled.", "default-value": "null", "validation": [{"nullable": "false"}]}]}
Когда я удаляю "часть данных домена в схеме, JSON будет проверять. Я думаю, что проблема заключается в том факте, что данные-домианы - это массив объектов, но я Я не уверен, что с этим делать. Спасибо за помощь.