2 个不稳定版本

0.2.0 2022年5月23日
0.1.0 2020年9月26日

#2554 in 命令行工具

Apache-2.0

61KB
1.5K SLoC

JSON Schema 破解工具集

License: Apache-2.0 Crates.io Package Docs.rs API Docs Rust

这是 JSON Schema 的一站式工具集。

用例

此工具允许您

  • schemastore.org 上通过模式搜索模式
  • schemastore 中检索找到的模式
  • 从数据样本推断模式以帮助开始破解它(感谢 infers-jsonschema
  • [待办] 优化现有模式(感谢 jsonschema-equivalent
  • 使用支持的验证器之一,使用文件或从 schemastore 使用模式验证现有数据

配置

丰富的功能集允许在构建前自定义此工具。

  • 支持多个 JSON Schema 验证器(feature = "all-validators" 启用所有)
    • valico(仅限 draft-6,feature = "valico"
    • jsonschema(draft-4/6/7,feature = "jsonschema"
    • jsonschema-valid(draft-4/6/7,feature = "jsonschema-valid"
  • 支持许多输入数据格式(feature = "all-parsers" 启用所有)
    • 文本格式(feature = "txt-parsers" 启用所有)
      • json(默认)
      • json5(feature = "json5"
      • yaml(feature = "yaml"
      • toml(feature = "toml"
      • ron(feature = "ron"
    • 二进制格式(feature = "bin-parsers" 全部启用)
      • bson(feature = "bson"
      • cbor(feature = "cbor"
      • pickle(feature = "pickle"
  • schemastore.org 集成(feature = "schemastore"
    • 添加 search 命令,允许通过模式查找模式
    • 添加 retrieve 命令,从存储中下载模式
  • 一个 infer 命令,可以帮助从数据中推断 JSON Schema(feature = "infers"

验证器比较

验证器 优点 缺点
valico 有意义的错误报告 验证速度慢
jsonschema 验证速度快 模糊的错误报告

依赖关系

~6–24MB
~396K SLoC