问题标签 [json-schema-defaults]

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 投票
0 回答
151 浏览

json - 从分离的 json 模式文件创建对象

现在我正在构建 node.js 应用程序,我的需求是:

1.验证和删除路由前不需要的道具

2.在响应之前从 json 模式创建对象

我想像这样创建单独的 json 模式文件:

这样,我计划制作每个对象映射,并且当我想要更改某些内容时,我必须首先更改架构。

0 投票
0 回答
1093 浏览

javascript - 如何从 json 对象创建 json 模式

给定一个 root.value 的浏览器调试器输出,在 javascript 中有两个属性

我想将其解析为 JSON 字符串,包括如下类型。或者从字面上将上面的 json 对象转换为下面的格式。

有谁知道如何在javascript或我可以用来实现这一目标的任何框架中做到这一点?

注意:我自己没有创建 JSON,它是另一个框架的输出。所以字段的类型在运行之前是未知的。

我主要关心的是嵌入 json 对象值

只会返回

0 投票
2 回答
5033 浏览

jsonschema - 用于验证日期时间的 json 模式是否在 unix 纪元之后

我是 json 新手,我想编写一个 json 模式,它接受 ISO8061 标准中的时间戳数组,并确保时间在 unix 纪元之后,即1970 年 1 月 1 日 00:00:00

json-schema 中的日期时间确保时间是 ISO8061 标准,但我无法添加时间应该在 unix 纪元之后的约束,即1970 年 1 月 1 日 00:00:00

我的 json shema:

json数据

您能否让我们知道我们是否可以限制在模式级别提交的时间,即提供的日期时间应该在 unix 纪元之后,即1970 年 1 月 1 日 00:00:00

0 投票
1 回答
6639 浏览

jsonschema - 从外部 JSON 模式导入所有定义

我一直在尝试使用JSON 指针来引用和重用JSON 模式

按照示例,我能够引用在另一个 JSON 模式中声明的特定属性,并且一切都按预期进行,但是我还没有找到一种方法来扩展基本 JSON 模式与另一个基本模式的定义,而无需显式引用每一个属性。

似乎这将是有用的,但我还没有发现迹象表明它可能与否。

想象一下基本模式things

如果我想要一个更具体的person模式来重用thing我可以做的两个属性:

但是,我发现这种方法存在两个问题:

  1. 一旦更新了超定义,依赖的模式也必须更新
  2. 手动维护所有这些引用变得繁琐/冗长
  3. 规则(如required: name)不是引用定义的一部分

有没有办法通过使用单个全局引用来获得以下有效的 JSON 模式?

我尝试$ref在架构的根目录中包含,如下所示:

这具有继承thing属性但忽略所有其他属性的效果:

0 投票
1 回答
2094 浏览

c# - 如何在 C# 中从 json 模式创建默认 json 对象

我不能在json.net api 参考或任何地方搜索那个东西。我想从填充了默认值的 json 模式创建对象。基本上是这样的:

您可能在json-schema-defaults包中看到的示例。

例子

更新

我希望 json.net 中的 lib 或 api 在运行时从任何给定的有效 json 模式创建具有默认值的对象。

0 投票
1 回答
108 浏览

json - 基于 json 对象创建 JSON 模式

给定以下 JSON 对象,我该如何构建 json 模式?Product1、Product2 和 Product3 是动态“键”,我可以有更多类似的,但它们中的每一个都将具有相同的“值”对象,所需的键为 packageId1、packageId2、packageId3,它们对应的值为字符串。

0 投票
2 回答
1705 浏览

json - 如何在 JSON 模式验证中处理子对象的默认值?

JSON 模式验证器应如何处理对象的子对象具有默认值但父对象没有默认值的情况?

想象一下以下架构

针对以下 JSON 进行验证:{}结果为{}.

但它不应该导致

.

我们如何解释default-keyword?我阅读了标准中的相应行,但它们并没有进一步帮助我。

0 投票
2 回答
189 浏览

json - Json Schema Validation 和 Json Validation 的分离

我有一个用例,我将 json-schema 作为输入,验证它,然后保留在我的系统中。稍后我将获得需要使用上述 json-schema 验证的 json 数据。鉴于这种情况,我需要进行两个级别的验证:

我正在使用 json-schema-validator jar,只能找到第二级验证,在文档中找不到 json-schema 验证。例如:假设我们有以下示例 json-schema:

那么如何验证这个 json-schema 本身是否有效?

0 投票
1 回答
664 浏览

jsonschema - json-schema - 允许在所需属性中进行逻辑或

这个问题的另一个标题是“必需的属性组合”。

假设我正在使用这样的 json 模式:

我想做的是使“列表”、“包”、“deps”之一成为必需的。那是一个,但不超过一个,应该存在。

所以它可能是这样的:

或者

这可能吗?

0 投票
1 回答
10762 浏览

jsonschema - 如何使用 JSON Schema 有条件地指定默认值

我有一个字段状态

如果用户将作业设置为草稿状态,我不想要求描述字段 - 但我希望有一个默认的空字符串。

如果用户发布的工作比我想要的描述是必需的。

我无法弄清楚的是如何在“oneOf - 草稿”数组中设置描述的默认值。

这是我的架构