Los conceptos en programación tienden a repetirse por mucho que cambiemos el lenguaje. Hoy se utiliza JSON como formato de intercambio de datos y XML parece más relegado a una segunda posición. Una de las funcionalidades que más se demandan a la hora de intercambiar datos es validar las estructuras de estos. XML dispone de sus XML Schemas y JSON dispone de los JSON Schemas que son relativamente modernos. Vamos a ver un ejemplo de estos.
JSON Schemas
La sintaxis de un JSON Schema define los diferentes campos que una estructura concreta posee :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | { "properties" : { "nombre" : { "type" : "string" , "minLength" : 3, "maxLength" : 20 }, "apellidos" : { "type" : "string" , "minLength" : 3, "maxLength" : 20 } "edad" : { "type" : "number" , "description" : "edad de la persona" , "minimum" : 0 }, }, "required" : [ "nombre" , "apellidos" , "edad" , ] } |
En este caso se definen tres propiedades (nombre,apellidos,edad) con su diferente tipología. Ademas se obliga a que todas ellas sean obligatorias. Eso implica que una estructura JSON como la siguiente será válida:
1 2 3 4 5 | { nombre: "juan" , apellidos: "fernandez" , edad:20 } |
En cambio las siguientes estructuras no lo serán:
1 2 3 4 5 | { nombre:20, apellidos: "fernandez" , edad:20 } |
1 2 3 4 5 | { nombre: "juan" , apellidos: "fernandez" , } |
Para validar de forma rápida las estructuras JSON contra sus Schemas podemos usar como herramienta online jsonschemavalidator.

Si necesitamos usar las validaciones a nivel de programación muchas plataformas ya disponen de sus propias librerías (.NET, Java, Javascript).