json schema是描述你的JSON数据格式;JSON模式(应用程序/模式+ JSON)有多种用途,其中之一就是实例验证。验证过程可以是交互式或非交互式的。例如,应用程序可以使用JSON模式来构建用户界面使互动的内容生成除了用户输入检查或验证各种来源获取的数据。
类型名称 | 描述 |
object | 表示一个对象 |
array | 表示是一个数组 |
integer | 表示整数类型 |
number | 表示数值类型,既可以表示整数也可以表示浮点数 |
boolean | 布尔类型 |
string | 字符串 |
$schema | string | 该关键字用于指定JSON Schema版本信息,可以省略 |
title | string | 用于描述字段信息 |
description | string | 用于描述字段信息 |
type | string | 用于描述字段类型 |
properties | object | 用于描述json元素的字段,递归 |
required | array | 是否必须,用于描述字段是否必须 |
minProperties | integer | 用于描述该层级的字段最小个数 |
maxProperties | integer | 用于描述该层级的字段最大个数 |
patternProperties | object | 和properties一样,字段名可以是正则 |
additionalProperties | object | 如果待校验JSON对象中存在,既没有在properties中被定义,又没有在patternProperties中被定义,那么这些一级key必须通过additionalProperties的校验 |
json schema是无限递归,为不同类型时有不同的描述关键字,顶级必须的type必须是object类型,且代表根目录
当type取值为array时,涉及的关键字:items、additionalItems、minItems、maxItems、uniqueItems、contains
当type取值为integer或number时涉及的关键字:multipleOf、maximum、exclusiveMaximum、minimum、exclusiveMinimum
全类型可用,即不局限于某个type,涉及的关键字:enum、const、allOf、anyOf、oneOf、not、default
该关键字的值是一个数组,该数组至少要有一个元素,且数组内的每一个元素都是唯一的。
如果待校验的JSON元素和数组中的某一个元素相同,则通过校验。否则,无法通过校验。
注意,该数组中的元素值可以是任何值,包括null。
该关键字的值可以是任何值,包括null。
如果待校验的JSON元素的值和该关键字指定的值相同,则通过校验。否则,无法通过校验。
该关键字的值是一个非空数组,数组里面的每个元素都必须是一个有效的JSON Schema。只有待校验JSON元素通过数组中所有的JSON Schema校验,才算真正通过校验。
该关键字的值是一个非空数组,数组里面的每个元素都必须是一个有效的JSON Schema。如果待校验JSON元素能够通过数组中的任何一个JSON Schema校验,就算通过校验。
该关键字的值是一个非空数组,数组里面的每个元素都必须是一个有效的JSON Schema。
如果待校验JSON元素能且只能通过数组中的某一个JSON Schema校验,才算真正通过校验。不能通过任何一个校验和能通过两个及以上的校验,都不算真正通过校验。
该关键字的值是一个JSON Schema。
只有待校验JSON元素不能通过该关键字指定的JSON Schema校验的时候,待校验元素才算通过校验。
该关键字的值是没有任何要求的。
https://blog.csdn.net/qiumengchen12/article/details/77067613
参考资料:
http://json-schema.org/
https://blog.csdn.net/qiumengchen12/article/details/77067613
https://hellosean1025.github.io/json-schema-visual-editor/
页面更新:2024-04-13
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号