ui-data contract:客户端扩展了json数据的验证

时间:2013-04-09 18:54:09

标签: javascript ajax json jsonschema

我在一些情况下,我从服务和数据库调用获得的json,由另一个组创建,给我无效的数据组合,并导致下游的许多意外错误。

在下面的小例子中给出,如果“rowContent”字段等于“1”,则它对应的“行”需要是一个填充的javascript对象。 “rowContent1”和“row1”,“rowContent2”和“row2”是正确的。 “rowContent3”和“row3”不是。

我承认这个json的结构并不是很棒。好吧,这有点古怪。它与我在制作中处理的内容非常接近。我无法控制它。

在我开始尝试在“row3”中使用不存在的数据之前,是否有数据驱动的方式来描述这样的json数据关系?

或者,你建议我在这种情况下做什么?

非常感谢,

-Larry

{ "table" : [
        { 
            "aRowContent" : {
                "rowContent1" : "1",
                "rowContent2" : "0",
                "rowContent3" : "1",
            },
            "row1" : {
                "myRowValue" : "red"
            },
            "row2" : null,
            "row3" : null
        }
    ]
}

1 个答案:

答案 0 :(得分:1)

当然不是JSON Schema。 JSON Schema验证JSON数据的结构,而无需交叉引用其他数据位。

我认为问题可能是数据结构中的冗余问题 - 当您从/table/0/aRowContent/rowContent1的空检查中推断出相同的信息时,为什么还需要/table/0/row1