Guide

Comment générer un schéma JSON à partir d’un exemple

Collez un exemple JSON valide, ajoutez éventuellement un titre, puis lancez la génération pour obtenir une représentation JSON Schema inférée à partir de cette valeur. Un contenu vide inexploitable ou un JSON mal formé ne produit pas de schéma.

Outil Générateur JSON Schema

À quoi sert le générateur de schéma JSON ?

Schema Generator sert à transformer un exemple JSON en représentation JSON Schema. Cette approche convient lorsque vous disposez déjà d’une structure de données et souhaitez obtenir une base décrivant ses types, ses propriétés ou ses éléments de tableau. Vous pouvez aussi fournir un titre pour identifier le schéma produit.

Générer le schéma à partir d’un exemple JSON

  1. Préparez un exemple JSON valide dans un éditeur de texte. Il peut s’agir d’un objet, d’un tableau ou d’une valeur primitive. L’exemple doit représenter la structure que vous voulez décrire : les propriétés présentes dans un objet et les formes rencontrées dans un tableau influencent le schéma généré.

  2. Collez l’exemple dans le champ prévu pour les données JSON. Si vous laissez ce champ vide, l’outil peut rechercher une valeur utilisable dans les champs alternatifs prévus à cet effet. Si aucune donnée exploitable n’est fournie, l’opération échoue.

  3. Vérifiez la syntaxe avant de lancer la génération. Un JSON mal formé est refusé et n’est pas converti en schéma. L’entrée sélectionnée ne doit pas dépasser 1 000 000 octets une fois encodée en UTF-8.

  4. Saisissez un titre si vous souhaitez remplacer le titre par défaut. Le champ est facultatif : s’il est omis ou vide, le titre utilisé est « Generated Schema ». Lancez ensuite la génération.

  5. Consultez la représentation JSON Schema produite et copiez-la pour l’utiliser dans votre documentation ou votre flux de travail. L’outil génère cette représentation à partir de la valeur JSON analysée, plutôt que de réparer ou d’interpréter un contenu invalide.

Lire et utiliser le résultat

Pour un objet JSON, le résultat décrit l’objet et ajoute une définition de propriété pour chaque membre observé. Les noms observés sont indiqués comme requis et les propriétés supplémentaires sont interdites dans le schéma inféré. Cela reflète l’exemple fourni, sans exprimer les règles métier que l’exemple ne contient pas.

Pour un tableau, le résultat indique un tableau. Un tableau vide reçoit un schéma d’élément sans contrainte particulière ; lorsque des éléments présentent des schémas différents, ceux-ci sont réunis avec anyOf, après suppression des doublons.

Les valeurs nulles, booléennes, entières et décimales sont reconnues comme null, boolean, integer et number. Les chaînes sont reconnues comme chaînes et peuvent recevoir le format email, uuid, uri, ipv4, date-time, date ou time lorsque leur valeur correspond aux motifs prévus. Le schéma généré comprend aussi l’identifiant JSON Schema draft-07.

Exemple. Vous disposez de l’objet {"nom":"Lina","age":31} et le collez comme donnée d’entrée, puis vous lancez la génération sans modifier le titre. Le résultat attendu a la forme d’un schéma d’objet contenant des propriétés pour nom et age, une liste de membres requis et une règle concernant les propriétés supplémentaires, avec le titre par défaut.

Le résultat reste une inférence fondée sur l’échantillon. Pour obtenir une description plus riche, préparez des exemples qui couvrent les variantes importantes de vos données, puis relisez le schéma avant de l’adopter.

Exemple pratique

Vous préparez la description JSON Schema d’un petit profil contenant un nom et un âge.

Collez l’objet JSON {"nom":"Lina","age":31} dans le champ de données, laissez le titre vide, puis lancez la génération.

Une représentation JSON Schema d’un objet, avec des propriétés pour « nom » et « age », les membres observés indiqués comme requis et le titre par défaut.

Limites

  • Le résultat décrit les éléments observés dans l’exemple : il ne garantit pas la représentation de contraintes métier ou de variantes absentes. Un tableau vide ne fournit pas de contrainte pour son contenu.

Erreurs fréquentes

  • Erreur fréquente : coller des guillemets incorrects, une virgule finale ou une accolade manquante. Corrigez la syntaxe pour fournir un JSON bien formé avant de relancer la génération.

Questions fréquentes

Le titre est-il obligatoire ?

Non, si vous fournissez un titre, il est utilisé ; si le champ est omis ou vide, « Generated Schema » est utilisé comme titre par défaut.

Que se passe-t-il avec un tableau JSON ?

Oui, à condition que le tableau contienne des éléments compatibles avec l’inférence ; un tableau vide reçoit toutefois un schéma d’élément sans contrainte particulière.

L’outil peut-il réparer un JSON invalide ?

Non. Un JSON mal formé est refusé. Corrigez d’abord sa syntaxe, puis soumettez à nouveau l’exemple.

Les chaînes reçoivent-elles automatiquement un format ?

Les formats peuvent être ajoutés lorsque la chaîne correspond aux motifs prévus, notamment pour une adresse e-mail, un UUID, une URI, une adresse IPv4 ou une date.

Outil

Générateur JSON Schema