Simple tool to infer and/or merge JSON schemas
Project description
Simple tool to infer and/or merge JSON schemas
Free software: BSD license
Documentation: https://skinfer.readthedocs.org.
Features
Use schema_inferer to generate a schema from a list of samples:
$ cat samples.json {"name": "Claudio", "age": 29} {"name": "Roberto", "surname": "Gomez", "age": 72} $ ./bin/schema_inferer --jsonlines samples.json { "$schema": "http://json-schema.org/draft-04/schema", "required": [ "age", "name" ], "type": "object", "properties": { "age": { "type": "number" }, "surname": { "type": "string" }, "name": { "type": "string" } } }
Use json_schema_merger to merge a list of JSON schemas into one JSON schema that represents the common properties:
$ cat schema1.json # schema requiring name and age properties { "$schema": "http://json-schema.org/draft-04/schema", "required": [ "age", "name" ], "type": "object", "properties": { "age": { "type": "number" }, "name": { "type": "string" } } } $ cat schema2.json # schema with no age, but requiring name { "$schema": "http://json-schema.org/draft-04/schema", "required": [ "name" ], "type": "object", "properties": { "name": { "type": "string" } } } $ ./bin/json_schema_merger schema1.json schema2.json { "$schema": "http://json-schema.org/draft-04/schema", "required": [ "name" ], "type": "object", "properties": { "age": { "type": "number" }, "name": { "type": "string" } } }
History
0.1.0 (2015-03-03)
First release on PyPI.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
skinfer-0.1.0.tar.gz
(19.4 kB
view hashes)
Built Distribution
Close
Hashes for skinfer-0.1.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 50320822ad7af704712d3f58ba7e464c41bf1569d9f51e35f606f15bfbd62ef2 |
|
MD5 | 8f77c1f3562d84e3d38067f6f3afb678 |
|
BLAKE2b-256 | 4516154d269ca108c5baa7b231d0897dfd4e2a5a8f85f4721a21a5e3e14de823 |