significantly simplified the validator and work continues on query

This commit is contained in:
2026-03-03 17:58:31 -05:00
parent 3898c43742
commit e7f20e2cb6
58 changed files with 5446 additions and 5693 deletions

View File

@ -4,9 +4,9 @@
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"minContains": 1,
"extensible": true
"extensible": true,
"$id": "minContains_0_0"
}
]
},
@ -16,12 +16,14 @@
"data": [
1
],
"valid": true
"valid": true,
"schema_id": "minContains_0_0"
},
{
"description": "zero items still valid against lone minContains",
"data": [],
"valid": true
"valid": true,
"schema_id": "minContains_0_0"
}
]
},
@ -30,12 +32,12 @@
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"contains": {
"const": 1
},
"minContains": 1,
"extensible": true
"extensible": true,
"$id": "minContains_1_0"
}
]
},
@ -43,21 +45,24 @@
{
"description": "empty data",
"data": [],
"valid": false
"valid": false,
"schema_id": "minContains_1_0"
},
{
"description": "no elements match",
"data": [
2
],
"valid": false
"valid": false,
"schema_id": "minContains_1_0"
},
{
"description": "single element matches, valid minContains",
"data": [
1
],
"valid": true
"valid": true,
"schema_id": "minContains_1_0"
},
{
"description": "some elements match, valid minContains",
@ -65,7 +70,8 @@
1,
2
],
"valid": true
"valid": true,
"schema_id": "minContains_1_0"
},
{
"description": "all elements match, valid minContains",
@ -73,7 +79,8 @@
1,
1
],
"valid": true
"valid": true,
"schema_id": "minContains_1_0"
}
]
},
@ -82,12 +89,12 @@
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"contains": {
"const": 1
},
"minContains": 2,
"extensible": true
"extensible": true,
"$id": "minContains_2_0"
}
]
},
@ -95,14 +102,16 @@
{
"description": "empty data",
"data": [],
"valid": false
"valid": false,
"schema_id": "minContains_2_0"
},
{
"description": "all elements match, invalid minContains",
"data": [
1
],
"valid": false
"valid": false,
"schema_id": "minContains_2_0"
},
{
"description": "some elements match, invalid minContains",
@ -110,7 +119,8 @@
1,
2
],
"valid": false
"valid": false,
"schema_id": "minContains_2_0"
},
{
"description": "all elements match, valid minContains (exactly as needed)",
@ -118,7 +128,8 @@
1,
1
],
"valid": true
"valid": true,
"schema_id": "minContains_2_0"
},
{
"description": "all elements match, valid minContains (more than needed)",
@ -127,7 +138,8 @@
1,
1
],
"valid": true
"valid": true,
"schema_id": "minContains_2_0"
},
{
"description": "some elements match, valid minContains",
@ -136,7 +148,8 @@
2,
1
],
"valid": true
"valid": true,
"schema_id": "minContains_2_0"
}
]
},
@ -145,12 +158,12 @@
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"contains": {
"const": 1
},
"minContains": 2.0,
"extensible": true
"minContains": 2,
"extensible": true,
"$id": "minContains_3_0"
}
]
},
@ -160,7 +173,8 @@
"data": [
1
],
"valid": false
"valid": false,
"schema_id": "minContains_3_0"
},
{
"description": "both elements match, valid minContains",
@ -168,7 +182,8 @@
1,
1
],
"valid": true
"valid": true,
"schema_id": "minContains_3_0"
}
]
},
@ -177,13 +192,13 @@
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"contains": {
"const": 1
},
"maxContains": 2,
"minContains": 2,
"extensible": true
"extensible": true,
"$id": "minContains_4_0"
}
]
},
@ -191,14 +206,16 @@
{
"description": "empty data",
"data": [],
"valid": false
"valid": false,
"schema_id": "minContains_4_0"
},
{
"description": "all elements match, invalid minContains",
"data": [
1
],
"valid": false
"valid": false,
"schema_id": "minContains_4_0"
},
{
"description": "all elements match, invalid maxContains",
@ -207,7 +224,8 @@
1,
1
],
"valid": false
"valid": false,
"schema_id": "minContains_4_0"
},
{
"description": "all elements match, valid maxContains and minContains",
@ -215,7 +233,8 @@
1,
1
],
"valid": true
"valid": true,
"schema_id": "minContains_4_0"
}
]
},
@ -224,13 +243,13 @@
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"contains": {
"const": 1
},
"maxContains": 1,
"minContains": 3,
"extensible": true
"extensible": true,
"$id": "minContains_5_0"
}
]
},
@ -238,14 +257,16 @@
{
"description": "empty data",
"data": [],
"valid": false
"valid": false,
"schema_id": "minContains_5_0"
},
{
"description": "invalid minContains",
"data": [
1
],
"valid": false
"valid": false,
"schema_id": "minContains_5_0"
},
{
"description": "invalid maxContains",
@ -254,7 +275,8 @@
1,
1
],
"valid": false
"valid": false,
"schema_id": "minContains_5_0"
},
{
"description": "invalid maxContains and minContains",
@ -262,7 +284,8 @@
1,
1
],
"valid": false
"valid": false,
"schema_id": "minContains_5_0"
}
]
},
@ -271,12 +294,12 @@
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"contains": {
"const": 1
},
"minContains": 0,
"extensible": true
"extensible": true,
"$id": "minContains_6_0"
}
]
},
@ -284,14 +307,16 @@
{
"description": "empty data",
"data": [],
"valid": true
"valid": true,
"schema_id": "minContains_6_0"
},
{
"description": "minContains = 0 makes contains always pass",
"data": [
2
],
"valid": true
"valid": true,
"schema_id": "minContains_6_0"
}
]
},
@ -300,13 +325,13 @@
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"contains": {
"const": 1
},
"minContains": 0,
"maxContains": 1,
"extensible": true
"extensible": true,
"$id": "minContains_7_0"
}
]
},
@ -314,14 +339,16 @@
{
"description": "empty data",
"data": [],
"valid": true
"valid": true,
"schema_id": "minContains_7_0"
},
{
"description": "not more than maxContains",
"data": [
1
],
"valid": true
"valid": true,
"schema_id": "minContains_7_0"
},
{
"description": "too many",
@ -329,7 +356,8 @@
1,
1
],
"valid": false
"valid": false,
"schema_id": "minContains_7_0"
}
]
},
@ -338,12 +366,12 @@
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"contains": {
"const": 1
},
"minContains": 1,
"extensible": true
"extensible": true,
"$id": "minContains_8_0"
}
]
},
@ -354,7 +382,8 @@
1,
2
],
"valid": true
"valid": true,
"schema_id": "minContains_8_0"
}
]
}