217 votes

Outil pour générer un schéma JSON à partir de données JSON

Nous avons json schema projet. Je voudrais obtenir un échantillon de mes données JSON et de générer un squelette pour le JSON schema, que je peux retravailler manuellement, en ajoutant des choses comme la description, le lieu, etc, qui ne peut pas inférer à partir d'exemples concrets.

Par exemple, à partir de mon entrée example.json:

{
    "foo": "lorem", 
    "bar": "ipsum"
}

Je voudrais lancer mon json_schema_generator outil et devrait obtenir:

{ "foo": {
    "type" : "string",
    "required" : true,
    "description" : "unknown"
  },
  "bar": {
    "type" : "string",
    "required" : true,
    "description" : "unknown"
  }
}

Cet exemple a été codé manuellement, donc il a peut-être des erreurs. Est-il un outil qui pourrait m'aider pour la conversion JSON -> JSON schema?

95voto

Green Su Points 870

Vous recherchez peut-être ceci:

http://www.jsonschema.net

C'est un outil en ligne qui peut générer automatiquement un schéma JSON à partir d'une chaîne JSON. Et vous pouvez facilement modifier le schéma.

23voto

jeckyll2hide Points 4560

Voyant que cette question commence à y avoir quelques upvotes, j'ai ajouter de nouvelles informations (je ne sais pas si c'est nouveau, mais je ne pouvais pas le trouver à l'époque)

6voto

jeckyll2hide Points 4560

Après plusieurs mois, la meilleure réponse que j'ai est mon outil simple. C'est brut, mais fonctionnelle.

Ce que je veux, c'est quelque chose de semblable à cela. Les données JSON peuvent fournir un squelette pour le JSON schema. Je ne l'ai pas encore mise en oeuvre, mais il devrait être possible de donner un existant JSON schema de la base, de sorte que le JSON schema plus de données JSON peut générer une mise à jour du schéma JSON. Si un tel schéma est donné en entrée, complètement valeurs par défaut sont prises.

Cela pourrait être très utile dans le développement itératif: la première fois que l'outil est exécuté, le JSON schema est factice, mais il peut être raffiné automatiquement en fonction de l'évolution des données.

5voto

Il existe un outil python pour générer un schéma JSON pour un JSON donné: https://github.com/perenecabuto/json_schema_generator

3voto

HappyCoder86 Points 465

json-schema-generator est un générateur de schéma JSON basé sur Ruby. Il prend en charge les brouillons 3 et 4 du schéma JSON. Il peut être exécuté en tant qu'exécutable autonome ou intégré dans un script Ruby.

Ensuite, vous pouvez utiliser json-schema pour valider des exemples JSON par rapport à votre schéma nouvellement généré, si vous le souhaitez.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X