我有一个用于指定将唯一字符串名称映射到唯一数字的枚举的杨森模式.
这是模式,是的,我知道它并不能保证上述要求,但我目前并不为此烦恼.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Module",
"description": "Schema for module definitions",
"type": "object",
"properties": {
"enums": {
"type": "object",
"patternProperties": {
"^.[^.\"]*$": {
"$ref": "#/$defs/enum"
}
},
"additionalProperties": false
}
},
"additionalProperties": false,
"$defs": {
"enum": {
"type": "array",
"items": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "integer"
}
],
"minItems": 2,
"maxItems": 2
}
}
}
}
我正在从Json.net转换到System.Text.Json Jsonschema.net. 以下是通过json.net验证的示例SON对象,但没有通过Jsonschema.net验证,大概是因为后者更重视"$schema": "https://json-schema.org/draft/2020-12/schema".
{
"enums": {
"Drive Types": [
[
"DOL", 1
],
[
"VSD", 2
],
[
"Servo", 3
]
],
"Conveyor State": [
[
"Off", 0
],
[
"Faulted", 1
],
[
"Idle", 2
]
]
}
}
我想做的是修改我的模式(和SON对象),以便它能够根据Draft 2020-12进行严格验证. 我怎么能做到呢?