json模式获取js中给定属性的模式

json-schema get the schema for given property in js

本文关键字:模式 属性 获取 js json      更新时间:2023-09-26

我想知道哪种方法可以很好地检索模式的给定属性的模式
如果给定的属性名称存在于模式的CCD_ 1中并且它是声明的或CCD_,当anyOfallOfoneOfdependencies发挥作用时,情况会变得复杂。。我想知道是否有一种方法以某种方式(tv4或z-schema)将挂接到验证库中,以检索类似getPossibleSchemaForProperty(propname)的内容。对浏览器javascript有什么建议吗?

免责声明:我是tv4的主要维护人员

您是希望获得该属性的所有可能模式,还是仅获得适用于特定数据实例的模式(例如,仅获得匹配的oneOf子句)?假设是后者(我通常称之为"模式分配"):

tv4上有一个悬而未决的问题,但直到现在我还没有听到其他人对此感兴趣,所以我没有优先考虑它。如果人们想要,我可以添加它。

另一个包(也是我的,速度更快但功能更少)返回从JSON指针到模式URL的映射:

// Creates a validator for that schema
var validator = JsonModel.validator('https://example.com/schema1');
// Runs the validator on the data
var result = validator({
    "foo": {
        "bar": [1, 2, 3]
    }
});
// pass or fail
console.log(result.valid);
// list of schemas describing that sub-sub-property
var subSubSchemas = result.schemas['/foo/bar']);