当前位置: 首页 > 面试题库 >

JSON模式-递归模式定义

彭允晨
2023-03-14
问题内容

我有一个JSON模式

{
    'description': 'TPNode',
    'type': 'object',
    'id': 'tp_node',
    'properties': {
        'selector': {
            'type': 'string',
            'required': true
        }, 
        'attributes': {
            'type': 'array',
            'items': {
                'name': 'string',
                'value': 'string'
            }
        },
        'children': {
            'type': 'array',
            'items': {
                'type': 'object',
                '$ref': '#'
            }
        },
        'events': {
            'type': 'array',
            'items': { 
                'type': 'object',
                'properties': {
                    'type': {
                        'type': 'string'
                    },
                    'handler': {
                        'type': 'object'
                    },
                    'dependencies': {
                        'type': 'array',
                        'items': {
                            'type': 'string'
                        }
                     }
                 }
            }
        }
    }
}

我要在children属性中表示的是,它是具有相同精确模式的对象数组。这是描述它的正确方法吗?


问题答案:

使用id您需要参考的架构

'$ref': 'tp_node'

参见此处:http :
//json-schema.org/latest/json-schema-core.html#anchor30



 类似资料:
  • 我希望有一个regex来匹配以开头的所有行,后面跟着以开头的任意数量的行。理想情况下,我希望将带有的每一行放在一个组中。 以下是我希望得到的结果: (为了缩短起见,我用了[...]。) 它实际上给了我这个: 我希望我已经说得够清楚了,你能帮我解决这个问题。请不要犹豫,询问更多的细节。

  • 本文向大家介绍Regular Expressions 递归到子模式,包括了Regular Expressions 递归到子模式的使用技巧和注意事项,需要的朋友参考一下 示例 您可以使用以下构造(取决于风味)将其递归到子模式中,假设n是捕获组号和捕获组name的名称。 (?n) \g<n> \g'0' (?&name) \g<name> \g'name' (?P>name) 以下模式: 将匹配以下文

  • 本文向大家介绍Regular Expressions 递归整个模式,包括了Regular Expressions 递归整个模式的使用技巧和注意事项,需要的朋友参考一下 示例 该构造(?R)等效于(?0)(或\g<0>)-它使您可以递归整个模式: 这将使适当平衡的尖括号与括号之间的任何文本匹配,例如<a<b>c<d>e>。

  • 问题内容: 这与正则表达式匹配外括号非常相关,但是,我特别想知道该 正则表达式的递归模式 如何或是否可行? 我尚未找到使用此策略的python示例,因此认为这应该是一个有用的问题! 我已经看到 了一些 索赔 是递归的模式可以用来匹配平衡括号,但使用Python的没有例子正则表达式包(注:重 不 支持递归模式,你需要使用正则表达式)。 一种说法是语法位于: 是开始构造的东西,是可能在构造中间发生的东

  • 所需输出: 我如何使用递归来完成这件事呢?我的代码思想是: 我对在if语句和system.out.println()中返回什么感到困惑,因为数字5不会随着它的停留而减少/增加例如,它将垂直停留5,我该如何处理这个问题呢?我的代码更多的是一个说明,只是为了证明我在做这件事。

  • 问题内容: 知道如何在Mongoose模式中为Tree文档建模吗? 一个人怎么能这样呢?整个树是一个文档(理想情况下)。 问题答案: 来自https://groups.google.com/forum/#!topic/mongoose- orm/0yUVXNyprx8 : 通过设计,它可能会起作用。没有测试。为此,我在那里产生了递归引用: 因此,您需要逐步构造递归。