【发布时间】:2014-11-19 05:31:27
【问题描述】:
我有一个以 JSON 形式传入的事件流。 JSON 的模式定义明确,但产生它们的源在类型方面并不总是表现良好。
示例架构:
{
"type":"object",
"$schema": "http://json-schema.org/draft-03/schema",
"properties":{
"FirstName": {
"type":"string",
"id": "http://jsonschema.net/FirstName",
"required":false
},
"MiddleName": {
"type":"string",
"id": "http://jsonschema.net/MiddleName",
"required":false
},
"LastName": {
"type":"string",
"id": "http://jsonschema.net/LastName",
"required":false
},
"Age": {
"type":"number",
"id": "http://jsonschema.net/Age",
"required":false
}
}
在某些情况下,Age 显示为“-”字符,这意味着在创建记录时它是空白的。显然这不是一个数字,因此是我的问题。
我没有使用任何正式的 JSON 验证库,但我正在考虑遍历事件的每个元素并处理任何需要的类型对话。在上面的例子中,我只是将年龄设为0。
有没有办法验证每个元素,然后应用某种类型的对话功能是否验证失败?
【问题讨论】:
标签: python json validation etl jsonschema