in

JSON: esquema


JSON Schema es una especificación para el formato basado en JSON para definir la estructura de datos JSON. Fue escrito bajo el borrador de IETF que expiró en 2011. Esquema JSON –

  • Describe su formato de datos existente.
  • Documentación clara, legible por humanos y máquinas.
  • Validación estructural completa, útil para pruebas automatizadas.
  • Validación estructural completa, validando los datos enviados por el cliente.

Bibliotecas de validación de esquemas JSON

Actualmente hay varios validadores disponibles para diferentes lenguajes de programación. Actualmente, el validador de esquemas JSON más completo y compatible disponible es JSV.

Idiomas Bibliotecas
C WJElement (LGPLv3)
Java json-schema-validator (LGPLv3)
.NETO Json.NET (MIT)
ActionScript 3 Frigga (MIT)
Haskell esquema-aeson (MIT)
Pitón Jsonschema
Rubí autoparse (ASL 2.0); ruby-jsonschema (MIT)
PHP php-json-schema (MIT). json-esquema (Berkeley)
JavaScript Ordenado (BSD); JSV; json-schema; Matic (MIT); Dojo; Persevere (BSD modificado o AFL 2.0); schema.js.

Ejemplo de esquema JSON

A continuación se muestra un esquema JSON básico, que cubre una descripción clásica del catálogo de productos:

{
   "$schema": "http://json-schema.org/draft-04/schema#",
   "title": "Product",
   "description": "A product from Acme's catalog",
   "type": "object",
	
   "properties": {
	
      "id": {
         "description": "The unique identifier for a product",
         "type": "integer"
      },
		
      "name": {
         "description": "Name of the product",
         "type": "string"
      },
		
      "price": {
         "type": "number",
         "minimum": 0,
         "exclusiveMinimum": true
      }
   },
	
   "required": ["id", "name", "price"]
}

Comprobemos varias palabras clave importantes que se pueden utilizar en este esquema:

No Señor. Palabra clave y descripción
1

$ esquema

La palabra clave $ schema indica que este esquema está escrito de acuerdo con el borrador de la especificación v4.

2

título

Utilizará esto para dar un título a su esquema.

3

descripción

Una pequeña descripción del esquema.

4

escribe

La palabra clave type define la primera restricción en nuestros datos JSON: tiene que ser un objeto JSON.

5

propiedades

Define varias claves y sus tipos de valor, valores mínimos y máximos que se utilizarán en el archivo JSON.

6

requerido

Esto mantiene una lista de propiedades requeridas.

7

mínimo

Esta es la restricción que se aplicará al valor y representa el valor mínimo aceptable.

8

exclusivoMínimo

Si «exclusivoMínimo» está presente y tiene un valor booleano verdadero, la instancia es válida si es estrictamente mayor que el valor de «mínimo».

9

máximo

Ésta es la restricción que se aplicará al valor y representa el valor máximo aceptable.

10

exclusivoMáximo

Si «exclusiveMaximum» está presente y tiene un valor booleano verdadero, la instancia es válida si es estrictamente menor que el valor de «maximum».

11

multipleOf

Una instancia numérica es válida contra «multipleOf» si el resultado de la división de la instancia por el valor de esta palabra clave es un número entero.

12

longitud máxima

La longitud de una instancia de cadena se define como el número máximo de sus caracteres.

13

longitud mínima

La longitud de una instancia de cadena se define como el número mínimo de sus caracteres.

14

patrón

Una instancia de cadena se considera válida si la expresión regular coincide con la instancia correctamente.

Puede comprobar un http://json-schema.org para obtener la lista completa de palabras clave que se pueden utilizar para definir un esquema JSON. El esquema anterior se puede utilizar para probar la validez del siguiente código JSON:

[
   {
      "id": 2,
      "name": "An ice sculpture",
      "price": 12.50,
   },
	
   {
      "id": 3,
      "name": "A blue mouse",
      "price": 25.50,
   }
]

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

movil foto

¿Dónde se almacenan las fotos que me envían a través de Hangouts?

apple touch icon@2

regex – ¿Qué es un grupo que no captura en expresiones regulares?