问题标签 [python-jsonschema]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
187 浏览

jsonschema - 如何在其他文件中使用 anyOf 定义来引用类型数组的 JSON 模式定义

我有一个如下jsonschema定义definition-1.json。我有一个名为inputstype的属性,array它指的anyOf definitions

然后definitions像下面一样定义的参数jsonschema definition-1.json

现在我想definitions在我的其他模式中引用这个参数,dummy-1.json如下所示

这看起来不像工作。prop1也将成功验证其他参数定义的任何属性部分,即使在dummy-1.json我明确提到#/definitions/stringParameter。我可以理解inputs接受所有参数。但是想知道如何实现 1:1 的参数定义映射。definition-1.jsonanyOfdefinitionsdummy-1.json

0 投票
0 回答
97 浏览

python-jsonschema - 如何扩展 jsonschema 验证器?

对于我的项目,我需要一个用于 json 模式的新属性。我将它命名为“isPropertyOf”,基本上我想要的是,如果我有这个:

然后 schema 将仅验证{"fav_fruit":"banana"}or之类的对象{"fav_fruit":"apple"},但不验证{"fav_fruit":"salami"} (我知道对于这个例子来说,使用枚举会更有意义,但假设“fruits”也用于其他东西,我宁愿避免冗余)

我阅读了有关此的文档,并认为我需要使用jsonschema.validators.extend. 我尝试过这样的事情:

我已经准备好看到出现问题了,但显然验证器没有发现任何问题。我尝试了一个明显错误的实例,即使是 jsonschema 的标准验证器也不会接受

但显然它看起来没问题。我想也许我添加这个属性的方式很糟糕,以至于它让验证器接受任何东西,所以我尝试了一个最小的验证器扩展案例:

这个也很高兴 0 是我最喜欢的水果。

我在这里做错了什么?我怎样才能使它工作?

0 投票
0 回答
42 浏览

json - JSON Schema - 如果另一个子模式中的属性包含固定值,则在根上验证模式

我想验证以下 json:

如果proto包含 value HTTPS_TERM,则应该存在subdomains相同的( )。这是另一个有效的例子:nameplantuml_port

有效的:

这样的事情可能吗?提前致谢!

0 投票
1 回答
134 浏览

jsonschema - JSON Schema 对象类型不适用于 $ref 定义

我正在使用JSON Schema Draft-07. 我有一个如下所示的 JSON Schema,它可以按预期工作

但是如果我refer同样type使用definitionsiblings properties\rules不会生效,例如

JSON Schema Store

$ref不知道带来这里有什么不同。验证数据:"tests": {"namer": "12", "desc": "12"}或者"tests": {}应该失败但通过了。

0 投票
1 回答
285 浏览

python - 如何从 python dict 生成 json 模式

我正在寻找一个用于从 python 字典生成 json_schema 的 python 库

例如这本词典

应该处理到下一个json_schema:

0 投票
1 回答
69 浏览

jsonschema - 您可以为 json 子模式使用单独的文件吗?

我是使用 JSON 模式的新手,我对子模式很困惑。我做了很多搜索并阅读了https://json-schema.org/understanding-json-schema/structuring.html但我觉得我没有得到一些基本概念。

我想把一个模式分解成几个文件。例如,我有一个我想嵌套在类别模式中的度量模式。子模式可以是被引用的单独文件,还是与基本模式在同一文件中的代码块?如果它们是单独的文件,您如何引用另一个文件?我已经尝试使用嵌套文件的 $id 为 $ref 使用很多不同的值,但它似乎不起作用。

我不认为我真的了解 $id 和 $schema 字段。我已经阅读了他们的文档,但仍然感到困惑。$id 是否需要是有效的 URI?文档似乎说他们没有。我刚刚从 jsonschema 站点示例中复制了 $schema 值。

任何帮助将不胜感激我做错了什么。

(在以太的回复后添加了以下内容)我得到的错误消息是:

和变化

这是 category_schema.json 中的类别模式:

这是 metric_schema.json 中的度量模式:

0 投票
1 回答
56 浏览

json - 具有最大值和最小值的 JSON Schema 枚举

我有一个这样的 JSON 对象。

test可以是 0 到 120 之间的数字或空字符串。我想使用这样的 JSON 模式来验证这个 JSON 对象。

有效的

无效的

什么是正确的 JSON 模式?请帮忙

0 投票
2 回答
45 浏览

python - 在 Python 中将 JSON 文件转换为数据框

我有一个具有 JSON 结构的文本文件,我想将其转换为数据框。

JSON 文件包括几个这样的 JSON 字符串:

{'cap': {'english': 0.1000, 'universal': 0.225}, 'display_scores': {'english': {'astroturf': 0.5, 'fake_follower': 0.8, 'financial': 0.2, 'other' :1.8,“整体”:1.8,“self_declared”:0.0,“垃圾邮件发送者”:0.2},“通用”:{“astroturf”:0.4,“fake_follower”:0.2,“财务”:0.2,“其他”:0.4 , '整体': 0.8, 'self_declared': 0.0, 'spammer': 0.0}}, 'raw_scores': {'english': {'astroturf': 0.1, 'fake_follower': 0.16, '财务': 0.05, '其他':0.35,'整体':0.35,'self_declared':0.0,'垃圾邮件发送者':0.04},'通用':{'astroturf':0.07,'fake_follower':0.03,'财务':0.05,'其他':0.09,'整体':0.16,'self_declared':0.0,'垃圾邮件发送者':0.01}},'用户':{'majority_lang':'de','user_data':{'id_str':'123456' , 'screen_name': 'beispiel01'}}}

但是,显然 json.loads 或 append 命令有问题,因为当我调用它时, tweets_data 是空的。

你有想法吗?

0 投票
1 回答
75 浏览

json - 如何根据父模式中的值验证子模式

我正在尝试使用 jsonschema lib 验证 JSON 模式。

场景:我需要确保属性中的特定值是否在父对象中发送,子(子模式)也应该在同一属性中获得相同的值。

JSON:->

示例测试用例: 正面:

消极的:

我正在使用dependentSchemas 来验证子模式:-点击这里

0 投票
1 回答
48 浏览

django - 如何根据从 Django 中的表单请求传递的 ID 使用 JSONSchemaField 创建动态表单?

如果我在forms.py 中将ID 作为静态值提供,则表单正在正确呈现,当我使用从表单调用中获得的 ID 时,它不会正确呈现

视图.py

表格.py

而不是传递id=1我想传递我在self.request中得到的值

我引用了这个链接 Django app generate forms dynamic from JSON?

提前致谢