JSON 데이터에서 JSON 스키마를 생성하는 도구
이 json 스키마 초안이 있습니다.JSON 데이터의 샘플을 입수해, JSON 스키마의 골격을 생성하고 싶다.수동으로 재작업할 수 있고, 구체적인 예에서는 얻을 수 없는 description, required 등을 추가하고 싶다.
를 들어, 제 를를 my my my for for for 。example.json:
{
"foo": "lorem",
"bar": "ipsum"
}
json_schema_generator 툴을 실행하면 다음과 같이 됩니다.
{ "foo": {
"type" : "string",
"required" : true,
"description" : "unknown"
},
"bar": {
"type" : "string",
"required" : true,
"description" : "unknown"
}
}
이 예는 수동으로 코딩되었기 때문에 오류가 있을 수 있습니다.JSON -> JSON 스키마 변환에 도움이 되는 툴이 있습니까?
기타 답변을 요약하면 지금까지 제안된 JSON 스키마 생성기는 다음과 같습니다.
온라인:
- https://www.liquid-technologies.com/online-json-to-schema-converter (1 입력)
- http://www.jsonschema.net (1 입력)
- https://easy-json-schema.github.io (1 입력)
Python:
- https://github.com/gonvaled/jskemator (1개의 입력이지만 반복 가능)
- https://github.com/perenecabuto/json_schema_generator (1 입력)
- https://github.com/rnd0101/json_schema_inferencer (1개 입력)
- https://pypi.python.org/pypi/genson/ (입력 정보 표시)
- https://pypi.python.org/pypi/skinfer (입력 정보 표시)
노드 J:
- https://github.com/Nijikokun/generate-schema (오브젝트 어레이 전달)
- https://github.com/easy-json-schema/easy-json-schema (1 입력)
- https://github.com/aspecto-io/genson-js (입력 정보 표시)
루비:
다음과 같은 경우가 있습니다.
JSON 문자열에서 JSON 스키마를 자동으로 생성할 수 있는 온라인 도구입니다.스키마를 쉽게 편집할 수 있습니다.
GenSON(PyPI | Github)은 여러 개체에서 단일 스키마를 생성할 수 있는 JSON 스키마 생성기입니다.스키마를 병합할 수도 있습니다.Python으로 작성되어 있으며 CLI 툴이 포함되어 있습니다.
(완전 공개:제가 작가입니다.)
이 질문의 유효성이 높아졌기 때문에 새로운 정보를 추가합니다(신규인지 모르겠지만 당시에는 찾을 수 없었습니다).
- JSON 스키마의 홈
- Python용 JSON Schema 검증 구현
- 관련 해커 뉴스 토론
- python의 json 스키마 생성기, 그게 내가 찾고 있던 거야.
몇 달 후, 가장 좋은 답은 간단한 도구입니다.생으로 되어 있지만 기능적입니다.
내가 원하는 것은 이것과 비슷한 것이다.JSON 데이터는 JSON 스키마의 골격을 제공할 수 있습니다.아직 구현하지 않았지만 기존 JSON 스키마와 JSON 데이터로 업데이트된 JSON 스키마를 생성할 수 있도록 기존 JSON 스키마를 기본으로 제공할 수 있어야 합니다.이러한 스키마가 입력으로 지정되지 않은 경우 완전히 기본값이 사용됩니다.
이것은 반복적인 개발에서 매우 유용합니다. 도구를 처음 실행할 때 JSON 스키마는 더미이지만 데이터의 진화에 따라 자동으로 개선될 수 있습니다.
특정 JSON의 JSON Schema를 생성하는 python 툴이 있습니다.https://github.com/perenecabuto/json_schema_generator
generate-schema(NPM | Github)는 JSON 오브젝트가 스키마를 생성하며, 1개의 출력은 JSON 스키마이며, Node.js로 작성되며, 파일을 파이프하기 위한 REP 및 CLI 툴이 포함되어 있습니다.
완전 공개:저는 저자입니다:)
https://github.com/krg7880/json-schema-generator에서 json 스키마 v4를 지원하는 nodejs 툴이 있습니다.
명령줄 도구 또는 nodejs 라이브러리로 작동합니다.
var jsonSchemaGenerator = require('json-schema-generator'),
obj = { some: { object: true } },
schemaObj;
schemaObj = jsonSchemaGenerator(json);
json-schema-generator는 깔끔한 Ruby 기반의 JSON 스키마 생성기입니다.JSON 스키마의 드래프트3과 4를 모두 지원합니다.독립 실행형 실행 파일로 실행하거나 Ruby 스크립트에 포함시킬 수 있습니다.
그런 다음 필요에 따라 json-schema를 사용하여 새로 생성된 스키마에 대해 JSON 샘플을 검증할 수 있습니다.
여러 입력을 지원하는 오프라인 툴의 경우 지금까지 본 것 중 가장 좋은 것은 https://github.com/wolverdude/GenSON/입니다. 수천 개의 파일이 있기 때문에 표준 입력에 파일 이름을 사용하는 툴을 보고 싶습니다.다만, 열려 있는 파일의 기술자가 부족하기 때문에, 파일이 닫혀 있는 것을 확인해 주세요.재귀를 처리하는 JSON Schema 생성기도 보고 싶습니다.JSON 오브젝트에서 Java 클래스를 생성하는 작업을 하고 있으며, Java 클래스에서 JSON Schema로 가고 싶습니다.궁금하신 점이나 버그를 특정하고 싶은 점 등이 있는 GenSON 스크립트입니다.
#!/bin/sh
ulimit -n 4096
rm x3d*json
cat /dev/null > x3d.json
find ~/Downloads/www.web3d.org/x3d/content/examples -name '*json' - print| xargs node goodJSON.js | xargs python bin/genson.py -i 2 -s x3d.json >> x3d.json
split -p '^{' x3d.json x3d.json
python bin/genson.py -i 2 -s x3d.jsonaa -s x3d.jsonab /Users/johncarlson/Downloads/www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter02-GeometryPrimitives/Box.json > x3dmerge.json
많은 툴이 언급되어 있습니다만, 레코드의 JSON Schema inferencer라고 불리는 툴이 하나 더 있습니다.
https://github.com/rnd0101/json_schema_inferencer
(라이브러리나 제품이 아니라 Python 스크립트)
통상적인 완전 공개:나는 작가다.
node.js > 6.0.0에는 json-schema-by-example 모듈도 있습니다.
언급URL : https://stackoverflow.com/questions/7341537/tool-to-generate-json-schema-from-json-data
'programing' 카테고리의 다른 글
| XmlHttpRequest.responseJ로부터의 JSON 해석아들. (0) | 2023.04.01 |
|---|---|
| 1개의 MongoDB 문서의 _id를 갱신하는 방법 (0) | 2023.04.01 |
| @pathparam 및 @requestmapping을 사용하여 null을 가져오는 중 (0) | 2023.04.01 |
| Wordpress REST API V2가 모든 게시물을 반환합니다. (0) | 2023.04.01 |
| Linux용 JSON 명령줄 포맷 도구 (0) | 2023.04.01 |