像XML模式一樣,JSON數(shù)據(jù)格式也有Schema,這是一個(gè)基于JSON格式的規(guī)范。
JSON模式也以JSON格式編寫(xiě)。它用于驗(yàn)證JSON數(shù)據(jù)。
以下代碼顯示了基本的JSON模式。
{ "$schema": "http://json-schema.org/draft-04/schema#", "title": "Book", "description": "A book from Java2s.com", "type": "object", "properties": { "id": { "description": "ID for JSON", "type": "integer" }, "name": { "description": "Name for JSON", "type": "string" }, "price": { "type": "number", "minimum": 0, "exclusiveMinimum": true } }, "required": ["id", "name", "price"] }
$schema
聲明該模式是根據(jù)草案v4規(guī)范編寫(xiě)的。
title
關(guān)鍵字將標(biāo)題設(shè)置為模式。
description
字段用于描述模式。
type
關(guān)鍵字定義了我們的JSON數(shù)據(jù)的第一個(gè)約束。
properties
定義各種鍵及其值類(lèi)型,要在JSON文件中使用的最小值和最大值。
必需標(biāo)記所需的屬性。
minimum
是對(duì)值的約束,表示最小可接受值。
exclusiveMinimum
true表示該值應(yīng)大于“minimum"的值。
maximum
是對(duì)值的約束,表示最大可接受值。
exclusiveMaximum
true表示該值應(yīng)大于'minimum'的值。
multipleOf
指定如果實(shí)例由此關(guān)鍵字的值除法的結(jié)果是整數(shù),則數(shù)字實(shí)例是有效的。
maxLength
設(shè)置字符串的最大長(zhǎng)度。
minLength
設(shè)置字符串的最小長(zhǎng)度。
pattern
字段指定與值匹配的正則表達(dá)式。
http://json-schema.org有可用于定義JSON模式的完整關(guān)鍵字列表。
更多建議: