Validación JSON Schema

Validate JSON against a JSON Schema (type / properties / required / items / enum / numeric & length limits / additionalProperties).

JSON input
Arrastra un archivo aquí
o haz clic en el botón de abajo para elegir un archivo local
.json / .txt / .csv, hasta 10 MB, se procesa solo en el navegador
JSON Schema
Arrastra un archivo aquí
o haz clic en el botón de abajo para elegir un archivo local
.json / .txt / .csv, hasta 10 MB, se procesa solo en el navegador
Result
El resultado de la validación aparecerá aquí
Palabras clave compatibles: type / properties / required / additionalProperties / items / minItems / maxItems / minimum / maximum / minLength / maxLength / pattern / enum / const / anyOf / oneOf / allOf / not
No compatible: $ref / $defs / definitions y referencias remotas, if / then / else, dependencies / dependentRequired, forma de tupla de items (array), format, exclusiveMinimum / exclusiveMaximum, multipleOf, patternProperties, propertyNames, minProperties / maxProperties, uniqueItems, contains. Las palabras clave no compatibles se ignoran sin aviso: no dan error y no tienen efecto (esta herramienta implementa un subconjunto habitual de Draft-07).
Todo el procesamiento se realiza en tu navegador y los datos no se envían al servidor.

Comprueba si los datos JSON cumplen las reglas de un Schema

¿Qué es la validación JSON Schema?

La validación JSON Schema compara unos datos JSON con un conjunto de reglas Schema para comprobar que su estructura y contenido cumplen los requisitos definidos. Por ejemplo, puedes exigir que un campo exista, que sea una cadena o un número, que los elementos de un array tengan una estructura concreta o que determinados números y cadenas estén dentro de ciertos límites.

¿Qué son JSON y Schema?

En el lado izquierdo introduces los datos JSON que deseas comprobar y en el derecho introduces el JSON Schema. JSON contiene los datos reales, mientras que Schema describe su estructura y restricciones. La herramienta valida los datos JSON según las reglas del Schema.

Reglas JSON Schema habituales

Entre las reglas habituales se encuentran type para indicar el tipo de dato, required para definir propiedades obligatorias, properties para describir campos de objetos, items para describir elementos de arrays y restricciones como enum, const, minimum, maximum, minLength y maxLength. El alcance exacto depende de la implementación del validador disponible en la página.

¿Cómo interpretar el resultado?

Si la validación es correcta, significa que los datos JSON cumplen las reglas del Schema proporcionado. Si falla, el área de resultados muestra la ubicación y el motivo de cada incumplimiento para localizar campos ausentes, tipos incorrectos o valores que no cumplen las restricciones. Para corregir un error, revisa primero su ruta y después la regla correspondiente del Schema.

¿Cómo utilizar required?

required especifica qué propiedades deben existir en un objeto. Por ejemplo, si el Schema contiene required: ["name"], el objeto JSON debe incluir la propiedad name. Ten en cuenta que required comprueba la existencia de la propiedad y no determina por sí solo el tipo de su valor. El tipo debe definirse mediante properties y reglas como type.

¿Qué hacen properties y additionalProperties?

properties describe campos concretos de un objeto, por ejemplo, indicando que name es una cadena y age es un número. additionalProperties permite controlar si pueden aparecer propiedades que no estén definidas en el Schema. Si no se permiten campos desconocidos, puedes establecer explícitamente la regla correspondiente en el Schema del objeto.

¿Cómo validar archivos JSON locales?

Cambia a la pestaña de archivos y selecciona un archivo local tanto para los datos JSON como para el Schema. Los archivos se leen en el navegador y se utilizan para la validación. Esto resulta útil para comprobar archivos de configuración locales, datos de API y otros documentos JSON. El límite de tamaño de cada archivo se indica en la página.

¿Cómo solucionar una validación fallida?

Si el resultado indica un error de formato JSON, comprueba primero que el contenido sea JSON válido. Si el JSON puede analizarse pero falla la validación del Schema, utiliza la ruta y el mensaje del error para revisar el campo correspondiente. Los problemas habituales incluyen propiedades obligatorias ausentes, tipos incompatibles, elementos de array que no cumplen items, valores que no aparecen en enum y números o cadenas fuera de los límites definidos.

¿Para qué sirve JSON Schema?

JSON Schema se utiliza habitualmente para validar datos de API, comprobar archivos de configuración, establecer restricciones entre frontend y backend, procesar datos en lote y realizar pruebas de desarrollo. Definir primero la estructura y después validar los datos JSON permite detectar problemas de campos y estructura antes de continuar con el procesamiento.

¿Cómo validar JSON con JSON Schema?

JSON Schema utiliza reglas para describir la estructura y las restricciones de los datos JSON. Durante la validación, los datos reales se comparan con el Schema para comprobar campos, tipos, arrays y otras condiciones.

Cuando la validación falla, puedes utilizar la ruta y el motivo del error para localizar el campo concreto y modificar los datos JSON o las reglas del Schema.

  • Valida datos JSON frente a reglas JSON Schema para comprobar su estructura y restricciones de campos
  • Admite reglas habituales como type, required, properties e items
  • Puede comprobar enumeraciones, rangos numéricos, longitudes de cadenas y otras restricciones comunes
  • Cuando falla la validación, muestra la ubicación y el motivo del error para localizar el campo concreto
  • Permite introducir o cargar por separado los datos JSON y el archivo Schema
  • Todo el procesamiento se realiza localmente en el navegador y el contenido no se sube al servidor
Si necesitas generar automáticamente un Schema a partir de JSON, utiliza Generar JSON Schema; para comprobar diferencias entre dos JSON, utiliza JSON Diff.
Comentarios 0
Aún no hay comentarios. ¡Sé el primero en comentar!
avatar
El contenido del comentario no puede estar vacío
0/255