当前位置: 首页 > 知识库问答 >
问题:

允许JSON模式(不同文件)之间的循环引用吗?

司英彦
2023-03-14

我有两个相互链接的JSON模式:schema.task.JSON和schema.dependency.JSON:

//file: schema.task.json
{
    "$schema": "http://json-schema.org/draft-04/schema",
    "type": "object",
    "properties": {
        "Dependencies": { "type": "array", "items": { "$ref": "schema.dependency.json#" } },
        "TaskName": { "type": "string" }
    }
}

//file: schema.dependency.json
{
    "$schema": "http://json-schema.org/draft-04/schema",
    "type": "object",
    "properties": {
        "StartAfterTask": { "$ref": "schema.task.json" },
        "DependencyName": {"type": "string"}
    }

}

我使用的是Visual Studio 2013,Update 5,模式http://json-schema.org/draft-04/schema

有人知道创建具有跨文件循环依赖关系的JSON模式的正确方法吗?

共有1个答案

家志学
2023-03-14

是的,这是允许的--两个不同文件之间的引用与文件内的引用没有什么不同。

您发布的语法看起来是正确的--您是否试图对您正在使用的库提出问题?

 类似资料:
  • 问题内容: 这是模块的模块声明: 因此,和之间存在循环依赖关系,对吗?平台模块之间是否允许循环? 问题答案: 模块系统禁止使用子句静态声明循环。对于平台和应用程序模块,这是正确的,并且您给出的示例不违反该规则。 不过,Requires子句只是模块图中可读性优势的一种来源。其他是命令行标志,反射,,我敢肯定还有更多。添加所有这些可能会导致模块图中的循环,并且这是不被禁止的。 在您的具体示例中,仅当

  • 我正在寻找一个,它可以防止特殊字符,并且只允许字母、数字、破折号(-)、下划线(_)和空格。 这个正则表达式工作得很好,但是它不允许单词之间有空格。 例如,如果输入,我得到我定义的自定义错误。我如何调整这个注册,除了字母,数字,破折号和下划线之外,还允许单词之间的空间。

  • 我有一个正则表达式,允许一个大小写,一个小写,8-16个字符和大多数特殊字符,包括空间。我想在正则表达式中添加允许空间。 我曾经尝试过: > 正则表达式中的空格 Regex允许字母数字、空格和一些特殊字符 Java空间和换行正则表达式 我的正则表达式如下: 我只想在这里加一点空间。我试过和

  • 我在Java中发现了编译器允许的一些奇怪的构造,但我不确定它的实际用途是什么。 1) if语句: 而例如:不是 2)for循环: 是否存在使用上述代码的实际有效情况?

  • 我有圆形参考的问题。 我有Rest Webservices,它会将对象返回到前端,问题是当我试图返回具有多个引用的对象时,结果会得到无限的响应,从而生成 这些对象是由Hibernate代码生成自动生成的,我需要在后端有循环引用,我只需要在使用Jackson将信息发送到前端之前删除它。 控制器方法标头为: 我没有做任何明确的事情来转换为杰克逊,我是一个新手,我认为杰克逊自动解决了这个问题。

  • 我是Flink CEP的新手,一直在玩弄这些模式,以便更好地理解它们。我有一个简单的“开始”的例子 Pattern match\u win=模式。开始(“第一”)。其中(new SimpleCondition(){ 我正在通过4,4,6 并行度设置为1。 StreamExecutionEnvironment env=StreamExecutionEnvironment。getExecutionEn