첨부 된 JSON 데이터 및 스키마의 유효성 검사에 validictory를 사용하고 있습니다. 지금까지 작업 중입니다.임의의 키를 사용하는 JSON 스키마 유효성 확인
그러나 데이터 사전에는 'bp'이외의 다른 임의의 문자열 키가있을 수 있습니다. 여기의 스키마에서 키 'bp'는 하드 코드 된 것입니다 ... 주어진 목록 (문자열 열거 형)의 문자열 일 수 있습니다. 어떻게하면 dict의 "첫 번째 단계"에 대한 열거 형 정의를 추가 할 수 있습니까?
import json
import validictory
data = {'bp': [{'category': 'bp',
'created': '2013-03-08T09:14:48.148000',
'day': '2013-03-11T00:00:00',
'id': 'dc049c0e-d19a-4e3e-93ea-66438a239712',
'unit': 'mmHg',
'value': 147.0,
'value2': 43.0}]}
schema = {
"type":"object",
"properties":{
"bp": {
"type":"array",
"required":False,
"items":
{
"type":"object",
"required":False,
"properties":{
"category": {
"type":"string",
"default": "bp",
"required":False
},
"created": {
"type":"string",
"default": "2013-03-08T09:14:48.148000",
"required":False
},
"day": {
"type":"string",
"default": "2013-03-11T00:00:00",
"required":False
},
"id": {
"type":"string",
"default": "dc049c0e-d19a-4e3e-93ea-66438a239712",
"required":False
},
"unit": {
"type":"string",
"default": "mmHg",
"required":False
},
"value2": {
"type":"number",
"default":43,
"required":False
},
"value": {
"type":"number",
"default":147,
"required":False
}
}
}
}
}
}
validictory.validate(data,schema)
문제를 재현하는 방법을 보여줄 수 있습니까? 나는 지금 당장 보지 못했다. – jsalonen
@jsalonen : 문제는 최상위 키가 'bp'와 다른 경우 OP가 입력의 유효성을 검사하려고한다는 것입니다. 문제점 설명이 명확하고 JSON 스키마 경험을 가진 사람이 도움을 줄 수 있어야한다고 생각합니다. –
아 맞아요. 감사. – jsalonen