Validateur de schéma JSON
Validez des données JSON par rapport à des définitions de schéma JSON. Obtenez des rapports d'erreurs détaillés avec chemins d'accès. Tout le traitement est effectué dans votre navigateur.
Les données JSON sont valides par rapport au schéma fourni !
| Chemin | Erreur |
|---|
Comment utiliser le validateur de schéma JSON
Entrez le schéma
Définissez votre schéma JSON qui décrit la structure attendue.
Entrez les données
Collez les données JSON que vous souhaitez valider par rapport au schéma.
Validez
Cliquez sur Valider et consultez les résultats pour détecter d'éventuelles erreurs.
Qu'est-ce qu'un schéma JSON ?
Un schéma JSON est un vocabulaire qui permet d'annoter et de valider des documents JSON. Il fournit un contrat décrivant quelles données JSON sont requises pour une application donnée et comment interagir avec elles. Le schéma JSON est utilisé pour la validation, la documentation et la génération de données de test.
Caractéristiques principales
Validation de type
Validez les types : chaîne, nombre, entier, booléen, tableau, objet, null
Contraintes
Longueur min/max, plage, motif, champs obligatoires et plus encore
Définition de structure
Définissez des objets imbriqués, des tableaux et des structures de données complexes
Questions fréquentes
Cet outil prend en charge JSON Schema Draft-07, Draft 2019-09 et Draft 2020-12 via la bibliothèque Ajv. La plupart des fonctionnalités de schéma courantes sont prises en charge.
Oui ! Le schéma JSON prend en charge les objets et tableaux profondément imbriqués. Vous pouvez définir des propriétés et des éléments à n'importe quel niveau d'imbrication, avec des règles de validation individuelles pour chaque champ.
L'outil vérifie d'abord que votre schéma est lui-même un schéma JSON valide. Si le schéma contient des erreurs, celles-ci seront signalées avant de tenter de valider les données.
type (string, number, object, array, boolean, null), properties avec des schémas imbriqués, required qui liste les clés obligatoires, enum pour des ensembles de valeurs fixes, pattern pour les chaînes contraintes par des regex, et les contrôles de plage minimum/maximum et minLength/maxLength. additionalProperties: false resserre les objets en interdisant les clés supplémentaires. Ensemble, ils couvrent l'essentiel des règles de validation d'API.
Dans JSON Schema moderne, format est une annotation par défaut, et non une assertion automatique - les validateurs ne l'appliquent que s'ils sont configurés en ce sens, ce que la spécification 2020-12 a rendu explicite avec un vocabulaire format-assertion distinct. Utilisez pattern ou un mot-clé personnalisé lorsque l'application de la règle doit être garantie, et traitez sinon format comme une métadonnée d'interopérabilité.
Un $ref pointant vers #/$defs/address référence un fragment de schéma sous $defs et valide par rapport à celui-ci partout où il est utilisé - c'est le mécanisme de déduplication. Le draft 2020-12 a renommé l'ancien definitions en $defs et a formalisé $dynamicRef pour les structures récursives comme les arbres de commentaires. Les références peuvent aussi pointer vers des documents externes, mais le bundling en local est plus courant.
allOf exige que chaque sous-schéma valide - une intersection, utilisée pour composer un schéma de base avec des contraintes supplémentaires. anyOf en exige au moins un - une union, utilisée pour des payloads polymorphes. oneOf en exige exactement un ; la validation de deux sous-schémas ou d'aucun échoue, ce qui est plus strict qu'on ne le pense généralement et constitue la cause habituelle d'erreurs surprenantes avec des schémas qui se chevauchent.
2020-12 a scindé la spécification en vocabulaires négociables séparément (validation, annotation, format-assertion), a renommé definitions en $defs, a simplifié exclusiveMinimum en un simple nombre, et a remplacé l'ancien mot-clé items par prefixItems combiné à items. La plupart des outils prennent en charge les deux ; draft-07 reste le plus largement déployé, mais 2020-12 est la norme publiée actuelle.
Outils connexes
Testeur d'expressions régulières
Testez les expressions régulières avec surlignage des correspondances en temps réel, explications des jetons et génération de chaînes exemples
Analyseur Cron
Convertissez les expressions Cron en planifications lisibles et prévisualisez les prochaines dates d'exécution
Références faisant autorité
Les sources primaires à l'origine de cet outil - normes et spécifications officielles, et non des résumés de seconde main.
JSON Schema - 2020-12 Validation Specification
La spécification de validation JSON Schema 2020-12 — la norme actuellement publiée.
JSON Schema - Learn
Le site d'apprentissage officiel de JSON Schema, des bases à $ref et $defs.
JSON Schema - Wikipedia
Ce que valide JSON Schema, et son rôle dans les contrats d'API et la validation de configuration.