Validation JSON Schema

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

JSON input
Glissez un fichier ici
ou cliquez sur le bouton ci-dessous pour choisir un fichier local
.json / .txt / .csv, jusqu'à 10 Mo, analysé uniquement dans le navigateur
JSON Schema
Glissez un fichier ici
ou cliquez sur le bouton ci-dessous pour choisir un fichier local
.json / .txt / .csv, jusqu'à 10 Mo, analysé uniquement dans le navigateur
Result
Le résultat de la validation apparaîtra ici
Mots-clés pris en charge : type / properties / required / additionalProperties / items / minItems / maxItems / minimum / maximum / minLength / maxLength / pattern / enum / const / anyOf / oneOf / allOf / not
Non pris en charge : $ref / $defs / definitions et références distantes, if / then / else, dependencies / dependentRequired, forme tuple de items (tableau), format, exclusiveMinimum / exclusiveMaximum, multipleOf, patternProperties, propertyNames, minProperties / maxProperties, uniqueItems, contains. Les mots-clés non pris en charge sont ignorés sans erreur et restent sans effet (cet outil implémente un sous-ensemble courant de Draft-07).
Tout le traitement se fait dans votre navigateur et les données ne sont jamais envoyées au serveur.

Vérifiez si vos données JSON respectent les règles d’un Schema

Qu’est-ce que la validation JSON Schema ?

La validation JSON Schema consiste à comparer des données JSON à un Schema afin de vérifier si leur structure et leur contenu respectent les règles définies. Il est notamment possible d’imposer la présence d’un champ, son type, la structure des éléments d’un tableau ou des limites sur les nombres et les chaînes.

Quelle est la différence entre JSON et Schema ?

À gauche, saisissez les données JSON à vérifier ; à droite, saisissez le JSON Schema. Le JSON représente les données réelles, tandis que le Schema décrit leur structure et leurs contraintes. Les deux sont fournis séparément et l’outil utilise le Schema pour valider le JSON.

Quelles règles JSON Schema sont courantes ?

Les règles courantes comprennent type pour définir le type de données, required pour les propriétés obligatoires, properties pour décrire les champs d’un objet, items pour les éléments d’un tableau, ainsi que enum, const, minimum, maximum, minLength et maxLength. La portée exacte dépend de l’implémentation du validateur utilisée par la page.

Comment lire le résultat de validation ?

Lorsque la validation réussit, les données JSON respectent le Schema fourni. Lorsqu’elle échoue, la zone de résultats indique les emplacements et les causes des erreurs afin de localiser les propriétés manquantes, les types incorrects ou les valeurs qui ne respectent pas les contraintes. Commencez par vérifier le chemin d’erreur, puis la règle correspondante dans le Schema.

Comment utiliser required dans JSON Schema ?

required sert à définir les propriétés qui doivent exister dans un objet. Par exemple, si le Schema contient required: ["name"], l’objet JSON doit posséder la propriété name. Notez que required vérifie l’existence de la propriété et ne détermine pas à lui seul son type ou si sa valeur peut être vide.

Que sont properties et additionalProperties ?

properties décrit les champs précis d’un objet, par exemple en définissant name comme une chaîne et age comme un nombre. additionalProperties permet ensuite de contrôler si les propriétés qui ne sont pas définies dans le Schema sont autorisées. Pour interdire les champs inconnus, vous pouvez définir explicitement la règle correspondante dans le Schema de l’objet.

Comment valider des fichiers JSON locaux ?

Passez à l’onglet de téléversement de fichiers et sélectionnez un fichier pour les données JSON et un autre pour le Schema. Les fichiers sont lus dans le navigateur et utilisés localement pour la validation, ce qui convient aux fichiers de configuration, données d’API et autres documents JSON locaux. La limite de taille par fichier est indiquée sur la page.

Que faire en cas d’échec de validation ?

Si le résultat indique une erreur de format JSON, vérifiez d’abord que le contenu est un JSON valide. Si le JSON est correctement analysé mais ne respecte pas le Schema, utilisez le chemin de l’erreur pour examiner le champ concerné. Les problèmes courants sont une propriété obligatoire manquante, un type incorrect, une structure de tableau incompatible avec items, une valeur absente de enum ou une valeur numérique ou textuelle hors des contraintes.

Dans quels cas utiliser JSON Schema ?

JSON Schema est couramment utilisé pour valider les données d’API, contrôler les fichiers de configuration, imposer des contraintes entre frontend et backend, traiter des données en lot et effectuer des tests de développement. Définir d’abord la structure des données puis valider les JSON réels permet de détecter les problèmes de structure et de champs avant leur traitement ultérieur.

Comment valider un JSON avec JSON Schema ?

JSON Schema décrit la structure et les contraintes d’un JSON. Lors de la validation, les données JSON réelles sont comparées au Schema afin de vérifier les champs, les types, les tableaux et les autres contraintes.

En cas d’échec, utilisez le chemin et la cause de l’erreur pour localiser le champ concerné, puis modifiez les données JSON ou les règles du Schema.

  • Valide les données JSON selon un ensemble de règles JSON Schema
  • Prend en charge notamment type, required, properties et items
  • Vérifie les énumérations, les plages numériques, la longueur des chaînes et d’autres contraintes courantes
  • Affiche l’emplacement et la cause des erreurs pour faciliter l’identification des champs concernés
  • Permet de saisir ou d’importer séparément les données JSON et le Schema
  • Traitement entièrement local dans le navigateur, sans envoi des données au serveur
Pour générer automatiquement un Schema à partir de données JSON, utilisez Génération JSON Schema. Pour comparer deux JSON, utilisez JSON Diff.
Commentaires 0
Aucun commentaire pour le moment. Soyez le premier à commenter !
avatar
Le contenu du commentaire ne peut pas être vide
0/255