Ce que fait la validation de schéma JSON
JSON Schema est un vocabulaire pour décrire la structure et les contraintes des documents JSON. Un schéma définit les types attendus, les propriétés requises, les patterns de chaînes, les plages numériques, les longueurs de tableaux et les valeurs autorisées pour chaque partie d'un document JSON. La validation vérifie le document par rapport à ces règles et signale chaque violation avec un chemin JSON Pointer précis.
Le validateur supporte tous les mots-clés JSON Schema principaux : type, properties, required, additionalProperties, items, minItems, maxItems, minimum, maximum, minLength, maxLength, pattern, enum, const, oneOf, anyOf, allOf, not, if/then/else, et $ref pour la composition de schémas.
Les erreurs de validation incluent le mot-clé défaillant, le chemin du schéma, le chemin de l'instance et un message lisible par l'humain. Plusieurs erreurs sont collectées et affichées ensemble pour que vous puissiez corriger tous les problèmes en une seule passe.
Écriture et test des schémas JSON
Un schéma JSON minimal pour un objet utilisateur d'API pourrait exiger un entier "id", une chaîne "name", et une chaîne "email" correspondant à un pattern. En affinant le schéma, vous pouvez coller des documents de test pour vérifier qu'ils passent ou échouent comme prévu.
Le mot-clé $ref permet de composer des schémas complexes à partir de définitions réutilisables. Les schémas écrits avec $defs (Draft 2020-12) ou definitions (Draft-07) sont entièrement résolus avant la validation pour que les schémas circulaires et à référence croisée fonctionnent correctement.
Lors du développement de contrats API, les équipes utilisent JSON Schema pour documenter la forme des corps de requêtes et de réponses. Le validateur vous permet de coller une vraie réponse API à côté du schéma pour confirmer que l'API se comporte comme documenté.
Intégration et outillage
JSON Schema est utilisé par des outils majeurs dont OpenAPI/Swagger, AsyncAPI, JSON Forms et l'IntelliSense de Monaco Editor. Valider vos schémas ici avant de les intégrer assure qu'ils sont syntaxiquement corrects et logiquement cohérents.
Les pipelines CI/CD peuvent utiliser la validation JSON Schema pour conditionner les déploiements : valider les fichiers de configuration, les contrats API et les fichiers de migration de données. Les validateurs populaires comme Ajv (JavaScript), jsonschema (Python) et networknt/json-schema-validator (Java) sont tous compatibles.
Les équipes de qualité des données utilisent JSON Schema pour valider les enregistrements entrants des partenaires externes, des pipelines ETL et des jobs d'ingestion de data warehouse. Détecter les violations de schéma à l'ingestion empêche les données corrompues de se propager dans les systèmes en aval.