json模式根据一个属性的值验证另一个属性的值

sr4lhrrt  于 2023-01-27  发布在  其他
关注(0)|答案(2)|浏览(147)

假设我有以下Json模式

{
    'type': 'object',
    'properties': {
        'MinimumNumber': {'type':'number'},
        'MaximumNumber': {'type':'number'}
     },
     'required': ['MinimumNumber', 'MaximumNumber'],
     'additionalProperties': false
}

如何验证MaximumNumber的值是否大于MinimumNumber的值?

无效对象

{
    MinimumNumber: 10,
    MaximumNumber: 5
}

有效对象

{
    MinimumNumber: 5,
    MaximumNumber: 10
}
wz3gfoph

wz3gfoph1#

这是一个常见问题,但在JSON架构中无法将数据的一个部分与另一个部分进行比较。您可以通过编辑架构以包含数据的一部分(例如通过模板)来手动进行比较。

dauxcl2d

dauxcl2d2#

@Ether说得对,纯JSON模式无法解决这个问题。但是,现在有了词汇表。我已经编写了一个词汇表,可以让您做到这一点。
目前只有我的.Net实现,但随着草案2020-12的通过,这可能会在其他框架的实现中看到更多的使用。

相关问题