Qué hace la validación de esquema JSON
JSON Schema es un vocabulario para describir la estructura y restricciones de los documentos JSON. Un esquema define los tipos esperados, propiedades requeridas, patrones de cadena, rangos numéricos, longitudes de array y valores permitidos para cada parte de un documento JSON. La validación verifica el documento contra estas reglas e informa cada violación con una ruta JSON Pointer precisa.
El validador soporta todas las palabras clave principales de JSON Schema: type, properties, required, additionalProperties, items, minItems, maxItems, minimum, maximum, minLength, maxLength, pattern, enum, const, oneOf, anyOf, allOf, not, if/then/else y $ref para composición de esquemas.
Los errores de validación incluyen la palabra clave que falla, la ruta del esquema, la ruta de la instancia y un mensaje legible. Múltiples errores se recopilan y muestran juntos para que puedas corregir todos los problemas en una sola pasada.
Escritura y prueba de esquemas JSON
Un esquema JSON mínimo para un objeto de usuario de API podría requerir un entero "id", una cadena "name" y una cadena "email" que coincida con un patrón. Al refinar el esquema puedes pegar documentos de prueba para verificar que pasan o fallan como se espera.
La palabra clave $ref permite componer esquemas complejos a partir de definiciones reutilizables. Los esquemas escritos con $defs (Draft 2020-12) o definitions (Draft-07) se resuelven completamente antes de la validación para que los esquemas circulares y de referencia cruzada funcionen correctamente.
Al desarrollar contratos de API, los equipos usan JSON Schema para documentar la forma de los cuerpos de solicitud y respuesta. El validador te permite pegar una respuesta real de API junto con el esquema para confirmar que la API se comporta como se documenta.
Integración y herramientas
JSON Schema es usado por herramientas importantes incluyendo OpenAPI/Swagger, AsyncAPI, JSON Forms y el IntelliSense del Editor Monaco. Validar tus esquemas aquí antes de integrarlos asegura que son sintácticamente correctos y lógicamente consistentes.
Los pipelines CI/CD pueden usar validación de JSON Schema para condicionar despliegues: validar archivos de configuración, contratos de API y archivos de migración de datos. Los validadores populares como Ajv (JavaScript), jsonschema (Python) y networknt/json-schema-validator (Java) son todos compatibles.
Los equipos de calidad de datos usan JSON Schema para validar registros entrantes de socios externos, pipelines ETL y trabajos de ingesta de data warehouse. Detectar violaciones de esquema en la ingesta evita que los datos corruptos se propaguen a sistemas posteriores.