From a3e117aad3b14da8e1b42c6b3ee2bfdab099884c Mon Sep 17 00:00:00 2001 From: dataunitylab <> Date: Sun, 29 Sep 2024 16:58:35 +0000 Subject: [PATCH] Update from https://github.com/dataunitylab/jsonoid-discovery/commit/2b04dc288ad7b044c8dd74d4a13fc0f9c9365d8c --- bowtie-report.html | 42862 +++++++++++++++++++++---------------------- bowtie.json | 1438 +- 2 files changed, 22150 insertions(+), 22150 deletions(-) diff --git a/bowtie-report.html b/bowtie-report.html index 4af658d..4cc1381 100644 --- a/bowtie-report.html +++ b/bowtie-report.html @@ -119,7 +119,7 @@ Ran - + @@ -230,11 +230,18 @@

@@ -256,9 +263,12 @@

- + - shorter is valid + correct types @@ -278,9 +288,12 @@

- + - exact length is valid + wrong types @@ -289,10 +302,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -300,15 +313,17 @@

- + - too long is invalid + incomplete array of items + class="text-center text-bg-danger"> -
+
- ignores non-strings + array with additional items @@ -344,9 +363,35 @@

- + - two graphemes is long enough + empty array + + + + + + + + + + + + + + + + + + + JavaScript pseudo-array is valid @@ -377,11 +422,14 @@

@@ -403,21 +451,23 @@

- + - shorter is valid + array with one item is valid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -425,9 +475,12 @@

- + - too long is invalid + array with two items is invalid @@ -436,6 +489,28 @@

class="text-center "> + + + + + + + + + + + + empty array is valid + + + + + + +

@@ -484,9 +563,13 @@

- + - remote ref valid + only the first item is validated @@ -495,28 +578,6 @@

class="text-center text-bg-danger"> - - - - - - - - - - - - remote ref invalid - - - - - - -

@@ -565,31 +630,11 @@

- - - remote fragment valid - - - - - - - - - - - - - - - - - + - remote fragment invalid + allows null elements @@ -598,10 +643,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -619,12 +664,17 @@

@@ -646,9 +696,11 @@

- + - remote anchor valid + match @@ -668,15 +720,19 @@

- + - remote anchor invalid + recursive match + class="text-center text-bg-danger"> - - - - - - -
- -

- -

- -
-
- - - - - - - - - - - - + - + @@ -779,27 +804,28 @@

-

-

-
-
+

Tests - jsonoid - scala -
- ref within ref valid + mismatch + class="text-center ">
- ref within ref invalid + recursive mismatch
@@ -814,13 +840,11 @@

- + @@ -840,13 +864,11 @@

- + @@ -874,36 +896,28 @@

-

-

-
-
+

- base URI change ref valid + match
- base URI change ref invalid + mismatch
@@ -918,13 +932,12 @@

- + @@ -944,13 +957,12 @@

- + @@ -978,40 +990,42 @@

-

-

-
-
+

- number is valid + match array
- string is invalid + mismatch array
@@ -1026,19 +1040,17 @@

- - @@ -1078,54 +1088,35 @@

-
- number is valid + slash invalid + class="text-center ">
- string is invalid + tilde invalid
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - @@ -1145,11 +1136,11 @@

- @@ -1169,19 +1160,17 @@

-
Tests - jsonoid - scala -
+ percent invalid + -
- string is valid + slash valid
- null is valid + tilde valid
- object is invalid + percent valid + class="text-center text-bg-danger">
-

-

-
-
+
@@ -1233,17 +1232,15 @@

- + - +
- invalid + nested ref valid + class="text-center text-bg-danger">
- valid + nested ref invalid + class="text-center ">
-

-

-
-
+
@@ -1318,9 +1323,11 @@

- + @@ -1340,9 +1347,39 @@

- + + + + + + + + + + + @@ -1370,26 +1407,21 @@

- integer is valid + ref valid, maxItems valid
- string is invalid + ref valid, maxItems invalid + + + + + + + +
+ ref invalid
@@ -1404,19 +1436,17 @@

- -
- number is invalid + remote ref valid + class="text-center text-bg-danger">
- string is valid + remote ref invalid + class="text-center ">
-

-

-
-
+
@@ -1493,9 +1525,11 @@

- + @@ -1504,10 +1538,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -1515,15 +1549,17 @@

- +
- number is invalid + property named $ref valid
- string is valid + property named $ref invalid + class="text-center ">
-

-

-
-
+
@@ -1574,15 +1619,17 @@

- + - +
- number is invalid + property named $ref valid + class="text-center text-bg-danger">
- string is valid + property named $ref invalid + class="text-center ">
-

-

-
-
+
@@ -1655,31 +1707,9 @@

- - - - - - - - - - - + @@ -1707,21 +1737,24 @@

-

-

-
-
+

- number is invalid - - - - - - - -
- string is valid + any value is valid
@@ -1736,37 +1769,15 @@

- + - - - - - - - - - - + @@ -2472,6 +2682,28 @@

class="text-center text-bg-danger"> + + + + + + + +

+ + + + + + + + + + + + + + + + + + @@ -2537,10 +2800,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -2558,14 +2821,19 @@

@@ -2587,21 +2855,23 @@

-

+ @@ -2609,21 +2879,23 @@

- + @@ -2641,17 +2913,23 @@

@@ -2673,31 +2951,11 @@

-

- - - - - - - - - - + @@ -2706,10 +2964,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -2717,21 +2975,23 @@

- + @@ -2749,19 +3009,23 @@

@@ -2783,45 +3047,23 @@

-

- - - - - - - - - @@ -2830,22 +3072,22 @@

@@ -2863,16 +3105,23 @@

@@ -2895,17 +3144,16 @@

+ @@ -2992,10 +3252,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -3003,21 +3263,23 @@

- + @@ -3025,53 +3287,58 @@

- - - - - -
- number is valid + any value is invalid - - - - - - -
- non-number is invalid - + class="text-center ">
-

-

-
-
+
@@ -1817,59 +1863,47 @@

- - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - -
- longer is valid - - - - - - - -
- exact length is valid - - - - - - - -
- too short is invalid + valid tree + class="text-center text-bg-danger">
- ignores non-strings + invalid tree + class="text-center ">
- one grapheme is not long enough - - - - - - - -
@@ -1935,21 +1979,30 @@

-

-

-
-
+
@@ -1964,21 +2017,23 @@

- + @@ -1986,9 +2041,11 @@

- + @@ -2016,39 +2073,31 @@

-

-

-
-
+

- longer is valid + object with numbers is valid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- too short is invalid + object with strings is invalid
@@ -2063,36 +2112,11 @@

- - - - - - - - - - - @@ -2121,28 +2145,30 @@

-

-

-
-
+

- passing case - - - - - - - - -
- failing case + referenced subschema doesn't see annotations from properties
@@ -2157,12 +2183,9 @@

- + @@ -2171,10 +2194,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -2182,12 +2205,11 @@

- + @@ -2207,23 +2229,23 @@

- + @@ -2231,19 +2253,73 @@

- +
- correct types + do not evaluate the $ref inside the enum, matching any string
- wrong types + do not evaluate the $ref inside the enum, definition exact match
- incomplete array of items + match the enum exactly + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - + - @@ -2313,24 +2395,37 @@

-

-

-
-
+

Tests + jsonoid + scala +
- array with additional items + invalid on inner field + class="text-center ">
- empty array + invalid on outer field + class="text-center ">
- JavaScript pseudo-array is valid + valid on both fields
@@ -2345,17 +2440,20 @@

- + - + @@ -2394,9 +2494,14 @@

- + @@ -2424,18 +2529,127 @@

- array with one item is valid + invalid on inner field + class="text-center ">
- array with two items is invalid + invalid on outer field
- empty array is valid + valid on both fields
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Tests + jsonoid + scala +
+ number is valid + + + + + + + +
+ non-number is invalid + + + + + + + +
+
+
+ +
+ +

- only the first item is validated + data is valid against first definition
+ data is invalid against first definition + + +

@@ -2524,11 +2767,31 @@

-

- allows null elements + data is valid against first definition + + + + + + + +
+ data is invalid against first definition
- allowed + valid under the URN IDed schema + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- disallowed + invalid under the URN IDed schema + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- valid - - - - - - - -
- mismatch + a string is valid
- other mismatch + a non-string is invalid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- match - - - - - - - -
- other match + a string is valid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- mismatch + a non-string is invalid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- property present + a string is valid + class="text-center text-bg-danger">
- property absent + a non-string is invalid + class="text-center ">

@@ -2981,9 +3239,11 @@

-

- number is invalid + a string is valid
- string is invalid + a non-string is invalid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- boolean true is invalid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + - + @@ -3080,10 +3347,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -3091,23 +3358,23 @@

- @@ -3115,33 +3382,59 @@

- - - - - -
Tests
- boolean false is invalid - + + jsonoid + scala +
- null is invalid + a string is valid
- object is invalid + a non-string is invalid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- empty object is invalid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -3150,10 +3443,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -3161,21 +3454,23 @@

- + @@ -3191,21 +3486,32 @@

Tests
+ jsonoid + scala +
- array is invalid + a string is valid
- empty array is invalid + a non-string is invalid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -3220,9 +3526,9 @@

- + @@ -3231,10 +3537,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -3242,21 +3548,21 @@

- + @@ -3264,43 +3570,63 @@

- - - - - -
- number is invalid + a string is valid
- string is invalid + a non-string is invalid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- boolean true is invalid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + - @@ -3308,21 +3634,22 @@

- + - @@ -3330,23 +3657,63 @@

- +
Tests
+ jsonoid + scala +
- boolean false is invalid + a non-integer is invalid due to the $ref + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- null is invalid + an integer is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -3354,21 +3721,22 @@

- + - @@ -3376,23 +3744,62 @@

- +
Tests + jsonoid + scala +
- object is invalid + a non-integer is invalid due to the $ref + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- empty object is invalid + an integer is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -3400,9 +3807,9 @@

- + @@ -3411,10 +3818,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -3430,21 +3837,32 @@

Tests + jsonoid + scala +
- array is invalid + a non-integer is invalid due to the $ref + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- empty array is invalid + an integer is valid
@@ -3459,21 +3877,21 @@

- + @@ -3481,9 +3899,9 @@

- + @@ -3492,10 +3910,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -3503,43 +3921,64 @@

- - - - - -
- number is valid + a string is valid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- string is valid + an integer is invalid
- boolean true is valid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -3547,9 +3986,9 @@

- + @@ -3558,10 +3997,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -3569,23 +4008,64 @@

- +
Tests
+ jsonoid + scala +
- boolean false is valid + number is valid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- null is valid + non-number is invalid
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -3593,9 +4073,9 @@

- + @@ -3604,10 +4084,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -3615,23 +4095,71 @@

- - +
Tests + jsonoid + scala +
- object is valid + number is valid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- empty object is valid + non-number is invalid
- array is valid -
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + + @@ -3639,9 +4167,9 @@

- + @@ -3650,10 +4178,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -3669,23 +4197,21 @@

-

-

-
-
+

Tests + jsonoid + scala +
+ number is valid + + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- empty array is valid + non-number is invalid
@@ -3700,9 +4226,9 @@

- + @@ -3722,59 +4248,9 @@

-
- any value is valid + same value is valid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -3783,10 +4259,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -3794,23 +4270,21 @@

- + @@ -3826,23 +4300,24 @@

-

-

-
-
+

Tests - jsonoid - scala -
- unevaluated property + another value is invalid
- annotations are still collected inside a 'not' + another type is invalid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -3857,12 +4332,12 @@

- @@ -3882,34 +4357,12 @@

- - - - - - - - - - - @@ -3929,42 +4382,17 @@

- - - - - - - - - - - + - +
- all property names valid + same object is valid
- some property names invalid - - - - - - - -
- object without properties is valid + same object with different property order is valid
- ignores arrays - - - - - - - -
- ignores strings + another object is invalid + class="text-center ">
- ignores other non-objects + another type is invalid + class="text-center ">
-

-

-
-
+
@@ -4037,11 +4472,13 @@

- + @@ -4061,9 +4498,11 @@

- + @@ -4072,10 +4511,36 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + + + + +

+ + + + + + + @@ -4091,21 +4556,21 @@

-

-

-
-
+

- object with any properties is valid + same array is valid
- empty object is valid + another array item is invalid
+ array with additional items is invalid + + + + +
@@ -4120,17 +4585,15 @@

- + - + @@ -4155,10 +4618,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -4174,25 +4637,21 @@

-

-

-
-
+

- object with any properties is invalid + null is valid + class="text-center ">
- empty object is valid + not null is invalid
@@ -4207,9 +4666,9 @@

- + @@ -4229,11 +4688,9 @@

- + @@ -4242,10 +4699,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -4253,12 +4710,9 @@

- + @@ -4267,10 +4721,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -4278,35 +4732,46 @@

- - - - - -
- neither + false is valid
- nondependant + integer zero is invalid
- with dependency + float zero is invalid
- missing dependency - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -4326,9 +4791,9 @@

- + @@ -4337,10 +4802,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -4348,9 +4813,9 @@

- + @@ -4359,10 +4824,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -4378,23 +4843,23 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- ignores arrays + true is valid
- ignores strings + integer one is invalid
- ignores other non-objects + float one is invalid
@@ -4409,9 +4874,11 @@

- + @@ -4431,11 +4898,11 @@

- + @@ -4444,10 +4911,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -4455,9 +4922,11 @@

- + @@ -4466,10 +4935,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -4485,26 +4954,23 @@

-

-

-
-
+

- empty object + [false] is valid
- object with one property + [0] is invalid
- non-object is valid + [0.0] is invalid
@@ -4519,9 +4985,11 @@

- - + @@ -4541,12 +5009,11 @@

- + @@ -4555,10 +5022,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -4566,13 +5033,11 @@

- + @@ -4581,10 +5046,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -4592,18 +5057,56 @@

- + + const with {"a": false} does not match {"a": 0} + + + + +
+
+
- neither +
+ [true] is valid
- nondependants + [1] is invalid
- with dependencies + [1.0] is invalid
+ + + + + + + + + + + - @@ -4642,23 +5144,23 @@

- @@ -4674,28 +5176,23 @@

-

-

-
-
+

Tests + jsonoid + scala +
- missing dependency + {"a": false} is valid + class="text-center ">
- missing other dependency + {"a": 0} is invalid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- missing both dependencies + {"a": 0.0} is invalid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -4710,12 +5207,11 @@

- @@ -4735,12 +5231,11 @@

- @@ -4749,35 +5244,10 @@

class="text-center "> - - - - - - - -

- - - - - - - @@ -4785,23 +5255,23 @@

- @@ -4817,21 +5287,21 @@

-

-

-
-
+

- CRLF + {"a": true} is valid
- quoted quotes + {"a": 1} is invalid
- CRLF missing dependent - - - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- quoted quotes missing dependent + {"a": 1.0} is invalid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -4846,15 +5316,15 @@

- + - + @@ -4890,9 +5360,9 @@

- + @@ -4912,15 +5382,15 @@

- + - + - + - - - - - - - - - -
- all string formats ignore integers + false is invalid + class="text-center ">
- all string formats ignore floats + integer zero is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore objects + float zero is valid
- all string formats ignore arrays + empty object is invalid + class="text-center ">
- all string formats ignore booleans + empty array is invalid + class="text-center ">
- all string formats ignore nulls + empty string is invalid + class="text-center ">
- invalid email string is only an annotation by default - - - - - - - -
@@ -5008,21 +5456,21 @@

-

-

-
-
+
@@ -5037,15 +5485,15 @@

- + - + @@ -5081,9 +5529,9 @@

- + @@ -5103,9 +5551,46 @@

- +
- all string formats ignore integers + true is invalid + class="text-center ">
- all string formats ignore floats + integer one is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore objects + float one is valid
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -5125,15 +5610,15 @@

- + - + + + + + + + + + + + - + @@ -5180,10 +5687,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -5199,21 +5706,21 @@

-

-

-
-
+

Tests + jsonoid + scala +
- all string formats ignore arrays + integer -2 is valid
- all string formats ignore booleans + integer 2 is invalid + class="text-center ">
- all string formats ignore nulls + float -2.0 is valid + class="text-center "> + + + + + + +
+ float 2.0 is invalid +
- invalid idn-email string is only an annotation by default + float -2.00001 is invalid
@@ -5228,21 +5735,21 @@

- + @@ -5250,15 +5757,15 @@

- + - + @@ -5294,15 +5801,15 @@

- + - - - - - -
- all string formats ignore integers + integer is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore floats + integer minus one is invalid + class="text-center ">
- all string formats ignore objects + float is valid
- all string formats ignore arrays + float minus one is invalid + class="text-center ">
- all string formats ignore booleans - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -5360,9 +5882,9 @@

- + @@ -5371,10 +5893,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -5390,21 +5912,21 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- all string formats ignore nulls + match string with nul + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid regex string is only an annotation by default + do not match string lacking nul
@@ -5419,43 +5941,21 @@

- - - - - - - - - - - + @@ -5463,21 +5963,21 @@

- + @@ -5485,15 +5985,15 @@

- + - + @@ -5529,9 +6029,9 @@

- + @@ -5540,32 +6040,10 @@

class="text-center text-bg-danger"> - - - - - - -

- - - - - - - @@ -5581,21 +6059,21 @@

-

-

-
-
+

- all string formats ignore integers - - - - - - - -
- all string formats ignore floats + longer is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore objects + exact length is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore arrays + too short is invalid + class="text-center ">
- all string formats ignore booleans + ignores non-strings
- all string formats ignore nulls + one grapheme is not long enough
- invalid ipv4 string is only an annotation by default - - - - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -5610,109 +6088,21 @@

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -5720,15 +6110,15 @@

- + - - - - - - - - - -
- all string formats ignore integers - - - - - - - -
- all string formats ignore floats - - - - - - - -
- all string formats ignore objects - - - - - - - -
- all string formats ignore arrays - - - - - - - -
- all string formats ignore booleans + longer is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore nulls + too short is invalid + class="text-center ">
- invalid ipv6 string is only an annotation by default - - - - - - - -
@@ -5772,21 +6140,28 @@

-

-

-
-
+
@@ -5801,21 +6176,23 @@

- + @@ -5823,15 +6200,19 @@

- + - + @@ -5867,9 +6252,9 @@

- + @@ -5889,9 +6274,9 @@

- + @@ -5911,9 +6296,12 @@

- + @@ -5933,28 +6321,6 @@

- - - - - - - - - -
- all string formats ignore integers + no additional properties is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore floats + an additional property is invalid + class="text-center ">
- all string formats ignore objects + ignores arrays
- all string formats ignore arrays + ignores strings
- all string formats ignore booleans + ignores other non-objects
- all string formats ignore nulls + patternProperties are not additional properties
- invalid idn-hostname string is only an annotation by default - - - - - - - -
@@ -5963,21 +6329,24 @@

-

-

-
-
+
@@ -5992,9 +6361,11 @@

- + @@ -6014,15 +6385,17 @@

- + - +
- all string formats ignore integers + matching the pattern is valid
- all string formats ignore floats + not matching the pattern is invalid + class="text-center ">
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -6058,21 +6477,26 @@

- + - @@ -6080,21 +6504,26 @@

- + - @@ -6102,21 +6531,63 @@

- +
Tests + jsonoid + scala +
- all string formats ignore objects + no additional properties is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- all string formats ignore arrays + an additional valid property is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- all string formats ignore booleans + an additional invalid property is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -6124,21 +6595,24 @@

- + - @@ -6154,21 +6628,24 @@

-

-

-
-
+

Tests + jsonoid + scala +
- all string formats ignore nulls + an additional valid property is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- invalid hostname string is only an annotation by default + an additional invalid property is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -6183,9 +6660,13 @@

- + @@ -6205,43 +6686,71 @@

- - - - - -
- all string formats ignore integers + additional properties are allowed
- all string formats ignore floats - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + - @@ -6249,43 +6758,63 @@

- - - - - -
Tests
+ jsonoid + scala +
- all string formats ignore objects + properties defined in allOf are not examined + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- all string formats ignore arrays - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + - @@ -6293,21 +6822,66 @@

- +
Tests
+ jsonoid + scala +
- all string formats ignore booleans + allows null values + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -6315,21 +6889,25 @@

- + - @@ -6345,21 +6923,32 @@

-

-

-
-
+

Tests + jsonoid + scala +
- all string formats ignore nulls + Valid against both keywords + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- invalid date string is only an annotation by default + Valid against propertyNames, but not additionalProperties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -6374,21 +6963,24 @@

- + - @@ -6396,21 +6988,24 @@

- + - @@ -6418,21 +7013,25 @@

- + - @@ -6440,9 +7039,46 @@

- +
- all string formats ignore integers + additionalProperties doesn't consider dependentSchemas + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- all string formats ignore floats + additionalProperties can't see bar + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- all string formats ignore objects + additionalProperties can't see bar even when foo2 is present + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -6462,15 +7098,15 @@

- + - +
Tests + jsonoid + scala +
- all string formats ignore arrays + remote ref valid
- all string formats ignore booleans + remote ref invalid + class="text-center ">
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -6506,9 +7179,9 @@

- + @@ -6517,10 +7190,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -6536,21 +7209,21 @@

Tests + jsonoid + scala +
- all string formats ignore nulls + remote fragment valid
- invalid date-time string is only an annotation by default + remote fragment invalid
@@ -6565,9 +7238,9 @@

- + @@ -6587,15 +7260,15 @@

- + - - - - - -
- all string formats ignore integers + remote anchor valid
- all string formats ignore floats + remote anchor invalid + class="text-center ">
- all string formats ignore objects - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -6653,15 +7341,15 @@

- + - +
Tests
+ jsonoid + scala +
- all string formats ignore arrays + ref within ref valid
- all string formats ignore booleans + ref within ref invalid + class="text-center ">
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -6697,9 +7432,13 @@

- + @@ -6708,10 +7447,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -6727,21 +7466,36 @@

-

-

-
-
+

Tests + jsonoid + scala +
- all string formats ignore nulls + base URI change ref valid
- invalid time string is only an annotation by default + base URI change ref invalid
@@ -6756,31 +7510,13 @@

- - - - - - - - - - - + @@ -6800,15 +7536,19 @@

- + - - - - - - - - - - - - - - - -
- all string formats ignore integers - - - - - - - -
- all string formats ignore floats + number is valid
- all string formats ignore objects + string is invalid + class="text-center ">
- all string formats ignore arrays - - - - - - - -
- all string formats ignore booleans - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -6888,9 +7644,13 @@

- + @@ -6899,10 +7659,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -6918,21 +7678,27 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- all string formats ignore nulls + number is valid
- invalid json-pointer string is only an annotation by default + string is invalid
@@ -6947,9 +7713,11 @@

- + @@ -6969,9 +7737,11 @@

- + @@ -6991,15 +7761,19 @@

- + - +
- all string formats ignore integers + string is valid
- all string formats ignore floats + null is valid
- all string formats ignore objects + object is invalid + class="text-center ">
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - + @@ -7057,9 +7873,46 @@

- +
Tests + jsonoid + scala +
- all string formats ignore arrays + invalid + class="text-center ">
- all string formats ignore booleans + valid
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -7079,9 +7932,9 @@

- + @@ -7090,10 +7943,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -7109,21 +7962,26 @@

-

-

-
-
+

Tests + jsonoid + scala +
- all string formats ignore nulls + integer is valid
- invalid relative-json-pointer string is only an annotation by default + string is invalid
@@ -7138,15 +7996,19 @@

- + - + @@ -7182,15 +8048,52 @@

- +
- all string formats ignore integers + number is invalid + class="text-center ">
- all string formats ignore floats + string is valid
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - + @@ -7226,15 +8129,52 @@

- +
Tests + jsonoid + scala +
- all string formats ignore objects + number is invalid + class="text-center ">
- all string formats ignore arrays + string is valid
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - + @@ -7270,28 +8210,6 @@

- - - - - - - - - -
Tests + jsonoid + scala +
- all string formats ignore booleans + number is invalid + class="text-center ">
- all string formats ignore nulls + string is valid
- invalid iri string is only an annotation by default - - - - - - - -
@@ -7300,21 +8218,21 @@

-

-

-
-
+
@@ -7329,15 +8247,15 @@

- + - + @@ -7373,9 +8291,46 @@

- +
- all string formats ignore integers + number is invalid + class="text-center ">
- all string formats ignore floats + string is valid
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -7395,15 +8350,15 @@

- + - +
Tests + jsonoid + scala +
- all string formats ignore objects + number is valid
- all string formats ignore arrays + non-number is invalid + class="text-center ">
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -7439,21 +8437,24 @@

- + @@ -7461,9 +8462,12 @@

- - + @@ -7472,10 +8476,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -7483,52 +8487,18 @@

-
Tests + jsonoid + scala +
- all string formats ignore booleans + a single valid match is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore nulls + multiple valid matches is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid iri-reference string is only an annotation by default +
+ a single invalid match is invalid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - + @@ -7564,9 +8536,9 @@

- + @@ -7586,9 +8558,9 @@

- + @@ -7608,21 +8580,67 @@

- +
Tests - jsonoid - scala -
- all string formats ignore integers + multiple invalid matches is invalid + class="text-center ">
- all string formats ignore floats + ignores arrays
- all string formats ignore objects + ignores strings
- all string formats ignore arrays + ignores other non-objects
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -7630,21 +8648,23 @@

- + @@ -7652,9 +8672,12 @@

- + @@ -7674,52 +8697,17 @@

-
Tests + jsonoid + scala +
- all string formats ignore booleans + a single valid match is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore nulls + a simultaneous match is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid uri string is only an annotation by default + multiple matches is valid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - + @@ -7744,10 +8734,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -7755,15 +8745,18 @@

- + - +
Tests - jsonoid - scala -
- all string formats ignore integers + an invalid due to one is invalid + class="text-center ">
- all string formats ignore floats + an invalid due to the other is invalid
- all string formats ignore objects + an invalid due to both is invalid + class="text-center ">
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -7799,15 +8838,17 @@

- + - + @@ -7843,9 +8886,11 @@

- + @@ -7854,10 +8899,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -7873,21 +8918,24 @@

-

-

-
-
+

Tests + jsonoid + scala +
- all string formats ignore arrays + non recognized members are ignored
- all string formats ignore booleans + recognized members are accounted for + class="text-center ">
- all string formats ignore nulls + regexes are case sensitive
- invalid uri-reference string is only an annotation by default + regexes are case sensitive, 2
@@ -7902,21 +8950,23 @@

- + @@ -7924,9 +8974,11 @@

- + @@ -7935,10 +8987,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -7946,9 +8998,12 @@

- + @@ -7957,10 +9012,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -7968,9 +9023,11 @@

- + @@ -7979,10 +9036,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -7990,21 +9047,21 @@

- + @@ -8012,31 +9069,52 @@

- - - - - -
- all string formats ignore integers + object with property matching schema true is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore floats + object with property matching schema false is invalid
- all string formats ignore objects + object with both properties is invalid
- all string formats ignore arrays + object with a property matching both true and false is invalid
- all string formats ignore booleans + empty object is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- all string formats ignore nulls - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -8064,21 +9142,23 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- invalid uri-template string is only an annotation by default + allows null values
@@ -8093,43 +9173,26 @@

- + - - - - - - - - - - - @@ -8137,21 +9200,26 @@

- + - @@ -8159,21 +9227,27 @@

- + - @@ -8181,21 +9255,26 @@

- + - @@ -8203,21 +9282,22 @@

- + - @@ -8225,21 +9305,22 @@

- + - @@ -8255,21 +9336,23 @@

- all string formats ignore integers + array with item matching schema (5) is valid + - - - -
- all string formats ignore floats - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
- all string formats ignore objects + array with item matching schema (6) is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- all string formats ignore arrays + array with two items matching schema (5, 6) is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- all string formats ignore booleans + array without items matching schema is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- all string formats ignore nulls + empty array is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- invalid uuid string is only an annotation by default + not array is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -8284,43 +9367,26 @@

- + - - - - - - - - - - - @@ -8328,21 +9394,27 @@

- + - @@ -8350,21 +9422,27 @@

- + - @@ -8372,43 +9450,61 @@

- - - - - -
- all string formats ignore integers + array with item 5 is valid + - - - -
- all string formats ignore floats - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
- all string formats ignore objects + array with two items 5 is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- all string formats ignore arrays + array without item 5 is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- all string formats ignore booleans - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + - @@ -8416,21 +9512,22 @@

- + - @@ -8446,31 +9543,21 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- all string formats ignore nulls + any non-empty array is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- invalid duration string is only an annotation by default + empty array is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -8485,24 +9572,24 @@

- - @@ -8510,24 +9597,45 @@

- + - + + + + + + + + + + @@ -8543,31 +9651,26 @@

-

-

-
-
+

- An array of strings is valid + any non-empty array is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- An array containing non-strings is invalid + empty array is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + + + +
+ non-arrays are valid + + + + + +
@@ -8582,24 +9685,26 @@

- - @@ -8607,24 +9712,26 @@

- - @@ -8632,71 +9739,25 @@

-
- An array of strings is valid + matches items, does not match contains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- An array containing non-strings is invalid + does not match items, matches contains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -8704,24 +9765,25 @@

- - @@ -8737,41 +9799,24 @@

Tests - jsonoid - scala -
- An array of strings is valid + matches both items and contains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- An array containing non-strings is invalid + matches neither items nor contains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -8786,24 +9831,24 @@

- - @@ -8811,24 +9856,22 @@

- + - @@ -8844,42 +9887,23 @@

- An array of strings is valid + any non-empty array is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- An array containing non-strings is invalid + empty array is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -8894,49 +9918,24 @@

- - - - - - - - - - - - @@ -8952,45 +9951,25 @@

- An array of strings is invalid + allows null items + - - - -
- An array of numbers is valid - - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -9005,24 +9984,21 @@

- + @@ -9030,12 +10006,11 @@

- + @@ -9044,10 +10019,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -9055,69 +10030,36 @@

-
- An array of strings is valid + neither + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- An array containing non-strings is invalid + nondependant
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + @@ -9126,10 +10068,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -9137,81 +10079,23 @@

-
Tests - jsonoid - scala -
+ with dependency + -
- Any array is valid + missing dependency
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - @@ -9219,82 +10103,43 @@

-
Tests - jsonoid - scala -
- Any array is valid + ignores arrays + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + @@ -9310,50 +10155,23 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ ignores strings + -
- Any array is valid + ignores other non-objects + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -9368,28 +10186,21 @@

- + @@ -9397,16 +10208,11 @@

- @@ -9415,10 +10221,32 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + + + + +

+ + + + + + + @@ -9434,50 +10262,26 @@

-

-

-
-
+

- The recursive part is valid against the root + empty object + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- The recursive part is not valid against the root + object with one property
+ non-object is valid + + + + +
@@ -9492,28 +10296,46 @@

- + + + + + + + + + + @@ -9521,118 +10343,25 @@

-
+ neither + + + + + + + +
- The recursive part doesn't need to validate against the root + nondependants + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -9640,27 +10369,24 @@

- - @@ -9668,27 +10394,24 @@

- - @@ -9696,27 +10419,23 @@

- - @@ -9732,55 +10451,28 @@

-

-

-
-
+

Tests - jsonoid - scala -
- number list with number values + with dependencies + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- number list with string values + missing dependency + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- string list with number values + missing other dependency + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- string list with string values + missing both dependencies + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -9795,22 +10487,24 @@

- + - @@ -9818,22 +10512,24 @@

- + - @@ -9841,22 +10537,48 @@

- + - + + + + + + + + + + @@ -9872,24 +10594,21 @@

-

-

-
-
+

- string matches /$defs/thingy, but the $dynamicRef does not stop here + CRLF + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- first_scope is not in dynamic scope for the $dynamicRef + quoted quotes + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- /then/$defs/thingy is the final stop for the $dynamicRef + CRLF missing dependent + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ quoted quotes missing dependent + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -9904,15 +10623,53 @@

- + + + + + + + + + + + + + + + + + + + + + @@ -9932,15 +10689,9 @@

- + @@ -9968,34 +10719,21 @@

- instance with misspelled field + below the maximum is valid + + + + + + + +
+ boundary point is valid + + + + + + + +
+ above the maximum is invalid
- instance with correct field + ignores non-numbers
@@ -10010,11 +10748,9 @@

- + @@ -10023,10 +10759,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -10034,15 +10770,9 @@

- + @@ -10051,10 +10781,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -10062,21 +10792,37 @@

- + + + + + + + + + + + + + + + + + + + + +
- incorrect parent schema + below the maximum is invalid
- incorrect extended schema + boundary point integer is valid
- correct extended schema + boundary point float is valid + class="text-center "> + + + + + + +
+ above the maximum is invalid +
-

-

-
-
+
@@ -10146,11 +10884,12 @@

- @@ -10159,10 +10898,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -10170,15 +10909,11 @@

- @@ -10187,10 +10922,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -10198,15 +10933,12 @@

- @@ -10215,10 +10947,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -10226,67 +10958,61 @@

-
- incorrect parent schema + valid
- incorrect extended schema + no dependency
- correct extended schema + wrong type
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + + + + + + + + + + @@ -10295,10 +11021,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -10306,15 +11032,9 @@

- + @@ -10323,10 +11043,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -10334,27 +11054,21 @@

- + @@ -10370,20 +11084,24 @@

Tests - jsonoid - scala -
+ wrong type other + -
- incorrect parent schema + wrong type both + + + + + + + +
+ ignores arrays
- incorrect extended schema + ignores strings
- correct extended schema + ignores other non-objects + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -10398,9 +11116,35 @@

- + + + + + + + + + + + @@ -10409,10 +11153,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -10420,9 +11164,34 @@

- + + + + + + + + + + + @@ -10431,10 +11200,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -10450,32 +11219,30 @@

-

-

-
-
+

- number is valid + object with property having schema true is valid + + + + + + + +
+ object with property having schema false is invalid
- non-number is invalid + object with both properties is invalid + + + + + + + +
+ empty object is valid
@@ -10490,11 +11257,14 @@

- @@ -10514,11 +11284,13 @@

- @@ -10538,86 +11310,12 @@

-
- follow $dynamicRef to a true schema + quoted tab
- follow $dynamicRef to a false schema + quoted quote
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - @@ -10626,10 +11324,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -10637,25 +11335,23 @@

- @@ -10671,27 +11367,31 @@

-

-

-
-
+

Tests - jsonoid - scala -
- integer property passes + quoted tab invalid under dependent schema
- string property fails + quoted quote invalid under dependent schema + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -10706,23 +11406,24 @@

- - @@ -10730,45 +11431,24 @@

- - - - - - - - - - - - @@ -10776,21 +11456,25 @@

- + - @@ -10798,21 +11482,24 @@

- + - @@ -10828,23 +11515,23 @@

-

-

-
-
+

- present required property is valid + matches root + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-present required property is invalid + matches dependency + - - - -
- ignores arrays - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
- ignores strings + matches both + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- ignores other non-objects + no dependency + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -10859,9 +11546,13 @@

- + @@ -10881,61 +11572,73 @@

-
- not required by default + valid items
-
-
- -
- -
- -

- -

- -
-
- - - - + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + - + @@ -10951,28 +11654,21 @@

-

-

-
-
+

Tests
+ wrong type of items + - - jsonoid - scala -
+ ignores non-arrays + -
- property not required + JavaScript pseudo-array is valid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -10987,16 +11683,13 @@

- + @@ -11016,12 +11709,9 @@

- + @@ -11030,10 +11720,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -11049,25 +11739,21 @@

-

-

-
-
+

- object with all properties present is valid + any array is valid
- object with some properties missing is invalid + empty array is valid
@@ -11082,15 +11768,19 @@

- + - + + + + + + + + + +
- ignores arrays + any non-empty array is invalid + class="text-center ">
- ignores other non-objects + empty array is valid + + + + + + + +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + + @@ -11126,9 +11932,42 @@

- + @@ -11148,11 +11987,37 @@

- + @@ -11172,13 +12037,29 @@

- + @@ -11198,13 +12079,32 @@

- + @@ -11224,27 +12124,32 @@

- + @@ -11260,25 +12165,33 @@

-

-

-
-
+

Tests + jsonoid + scala +
+ valid items
- none of the properties mentioned + too many items
- __proto__ present + too many sub-items
- toString present + wrong item
- constructor present + wrong sub-item
- all present + fewer items is valid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -11293,9 +12206,38 @@

- + @@ -11315,9 +12257,38 @@

- + @@ -11337,37 +12308,79 @@

-
- one of the enum is valid + valid nested array
- something else is invalid + nested array with invalid type
-
+
+ not deep enough + + + + + + + +
+
-

-

-
-
+
@@ -11382,21 +12395,21 @@

- + @@ -11404,15 +12417,17 @@

- + - + - + @@ -11474,12 +12492,14 @@

- + @@ -11507,24 +12527,32 @@

-

-

-
-
+

- one of the enum is valid + empty array + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- something else is invalid + fewer number of items present (1) + class="text-center text-bg-danger">
- objects are deep compared + fewer number of items present (2) + class="text-center text-bg-danger">
- valid object matches + equal number of items present
- extra properties in object is invalid + additional items are not permitted
@@ -11539,31 +12567,12 @@

- - - - - - - - - - - + @@ -11572,10 +12581,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -11583,15 +12592,18 @@

- +
- null is valid - - - - - - - -
- number is valid + prefixItems in allOf does not constrain items, invalid case
- something else is invalid + prefixItems in allOf does not constrain items, valid case + class="text-center text-bg-danger">
-

-

-
-
+
@@ -11657,24 +12661,26 @@

- + - @@ -11682,24 +12688,25 @@

- + - @@ -11707,12 +12714,53 @@

- +
- both properties are valid + valid items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- wrong foo value + wrong type of second item + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -11732,11 +12780,11 @@

- + @@ -11756,33 +12804,50 @@

- - - - - -
Tests + jsonoid + scala +
- wrong bar value + heterogeneous invalid instance
- missing optional property is valid + valid instance
- missing required property is invalid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -11791,10 +12856,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -11810,24 +12875,23 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- missing all properties is invalid + allows null elements
@@ -11842,9 +12906,12 @@

- + @@ -11864,15 +12931,18 @@

- + - + @@ -11897,10 +12967,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -11908,60 +12978,26 @@

-
- member 1 is valid + all property names valid
- member 2 is valid + some property names invalid + class="text-center text-bg-danger">
- another string is invalid + object without properties is valid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -11969,15 +13005,15 @@

- + - +
Tests - jsonoid - scala -
- false is valid + ignores arrays + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- integer zero is invalid + ignores strings + class="text-center text-bg-danger">
- float zero is invalid + ignores other non-objects + class="text-center text-bg-danger">
-

-

-
-
+
@@ -12054,11 +13086,11 @@

- + @@ -12078,11 +13110,9 @@

- + @@ -12091,34 +13121,10 @@

class="text-center "> - - - - - - -

- - - - - - - @@ -12134,23 +13140,21 @@

-

-

-
-
+

- [false] is valid + object with any properties is valid
- [0] is invalid + empty object is valid
- [0.0] is invalid - - - - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -12165,15 +13169,17 @@

- + - - - - - - - - - - - + @@ -12220,10 +13204,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -12239,25 +13223,21 @@

-

-

-
-
+

- true is valid + object with any properties is invalid + class="text-center text-bg-danger">
- integer one is invalid - - - - - - - -
- float one is invalid + empty object is valid
@@ -12272,11 +13252,9 @@

- + @@ -12296,11 +13274,9 @@

- + @@ -12320,17 +13296,15 @@

- + -
- [true] is valid + a matching pattern is valid
- [1] is invalid + a non-matching pattern is invalid
- [1.0] is invalid + ignores booleans + class="text-center text-bg-danger">
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - + @@ -12427,9 +13362,9 @@

- + @@ -12449,58 +13384,15 @@

-
Tests - jsonoid - scala -
- false is invalid + ignores integers + class="text-center text-bg-danger">
- integer zero is valid + ignores floats + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- float zero is valid + ignores objects
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - + @@ -12538,23 +13428,58 @@

- +
Tests - jsonoid - scala -
- [false] is invalid + ignores arrays + class="text-center text-bg-danger">
- [0] is valid + ignores null + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -12570,23 +13495,21 @@

-

-

-
-
+

Tests + jsonoid + scala +
- [0.0] is valid + matches a substring + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -12601,9 +13524,31 @@

- + + + + + + + + + + + @@ -12623,9 +13568,9 @@

- + @@ -12634,10 +13579,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -12645,9 +13590,9 @@

- + @@ -12675,25 +13620,21 @@

-

-

-
-
+

- true is invalid + below the exclusiveMaximum is valid + + + + + + + +
+ boundary point is invalid
- integer one is valid + above the exclusiveMaximum is invalid
- float one is valid + ignores non-numbers
@@ -12708,11 +13649,11 @@

- @@ -12721,10 +13662,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -12732,11 +13673,12 @@

- @@ -12756,11 +13698,35 @@

- + + + + + + + + + + @@ -12788,23 +13754,21 @@

-

-

-
-
+

- [true] is invalid + shorter is valid
- [1] is valid + exact length is valid
- [1.0] is valid + too long is invalid + + + + + + + +
+ ignores non-arrays
@@ -12819,9 +13783,11 @@

- + @@ -12841,9 +13807,13 @@

- + @@ -12871,26 +13841,42 @@

-

-

-
-
+

- match string with nul + shorter is valid
- do not match string lacking nul + too long is invalid
@@ -12905,11 +13891,36 @@

- + + + + + + + + + + @@ -12918,10 +13929,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -12929,9 +13940,11 @@

- + @@ -12940,10 +13953,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -12951,76 +13964,12 @@

-
- valid when property is specified + allOf + + + + + + + +
+ mismatch second
- still valid when the invalid default is used + mismatch first
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - - - - - - - - - - @@ -13029,10 +13978,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -13048,28 +13997,50 @@

-

-

-
-
+

Tests - jsonoid - scala -
- valid when property is specified - - - - - - - -
- still valid when the invalid default is used + wrong type
@@ -13084,23 +14055,25 @@

- @@ -13108,11 +14081,12 @@

- @@ -13132,97 +14106,12 @@

- - - - - - - - - - -
- an explicit property value is checked against maximum (passing) + valid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- an explicit property value is checked against maximum (failing) + mismatch base schema
- missing properties are not filled in with the default - - - - - - - -
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - - - - - - - - - - + @@ -13231,10 +14120,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -13242,9 +14131,12 @@

- + @@ -13264,9 +14156,11 @@

- + @@ -13294,29 +14188,28 @@

-

-

-
-
+

Tests - jsonoid - scala -
- first oneOf valid - - - - - - - -
- second oneOf valid + mismatch first allOf
- both oneOf valid + mismatch second allOf
- neither oneOf valid + mismatch both
@@ -13331,31 +14224,9 @@

- - - - - - - - - - - + @@ -13375,9 +14246,9 @@

- + @@ -13405,25 +14276,24 @@

-

-

-
-
+

- mismatch base schema - - - - - - - -
- one oneOf valid + valid
- both oneOf valid + mismatch one
@@ -13438,22 +14308,21 @@

- + - @@ -13469,25 +14338,24 @@

-

-

-
-
+

- any value is invalid + any value is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -13502,22 +14370,21 @@

- + - @@ -13533,25 +14400,24 @@

-

-

-
-
+

- any value is valid + any value is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -13566,22 +14432,21 @@

- + - @@ -13597,25 +14462,23 @@

-

-

-
-
+

any value is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -13630,22 +14493,21 @@

- + - @@ -13661,42 +14523,24 @@

-

-

-
-
+

- any value is invalid + any data is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -13711,11 +14555,9 @@

- + @@ -13735,36 +14577,51 @@

- - - - - -
- first oneOf valid (complex) + any data is valid
- second oneOf valid (complex) - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -13773,10 +14630,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -13784,12 +14641,9 @@

- + @@ -13817,26 +14671,26 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- both oneOf valid (complex) + number is valid
- neither oneOf valid (complex) + string is invalid
@@ -13851,9 +14705,9 @@

- + @@ -13873,9 +14727,9 @@

- + @@ -13903,35 +14757,29 @@

-

-

-
-
+

- one valid - valid + number is valid
- both valid - invalid + string is invalid
@@ -13946,11 +14794,31 @@

- + + + + + + + + + + + @@ -13970,18 +14838,66 @@

- +
- both invalid - invalid + null is valid + + + + + + + +
+ anything non-null is invalid
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - + - + @@ -14046,72 +14955,37 @@

-
Tests + jsonoid + scala +
- first valid - valid + allOf: false, anyOf: false, oneOf: false + class="text-center text-bg-danger">
- second valid - valid + allOf: false, anyOf: false, oneOf: true + class="text-center text-bg-danger">
- both valid - invalid + allOf: false, anyOf: true, oneOf: false + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + - + - + @@ -14174,11 +15043,9 @@

- + @@ -14187,10 +15054,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -14206,29 +15073,39 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ allOf: false, anyOf: true, oneOf: true + -
- first oneOf valid + allOf: true, anyOf: false, oneOf: false + class="text-center text-bg-danger">
- second oneOf valid + allOf: true, anyOf: false, oneOf: true + class="text-center text-bg-danger">
- both oneOf valid + allOf: true, anyOf: true, oneOf: false + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- neither oneOf valid + allOf: true, anyOf: true, oneOf: true
@@ -14243,21 +15120,24 @@

- + - @@ -14265,21 +15145,24 @@

- + - @@ -14295,18 +15178,18 @@

- null is valid + passing case + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- anything non-null is invalid + failing case + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -14321,7 +15204,7 @@

- + @@ -14343,7 +15226,7 @@

- + @@ -14365,7 +15248,7 @@

- + @@ -14387,7 +15270,7 @@

- + @@ -14409,7 +15292,7 @@

- + @@ -14431,7 +15314,7 @@

- - + @@ -14477,7 +15360,7 @@

- - + @@ -14531,18 +15414,18 @@

number is valid
string is valid
boolean true is valid
boolean false is valid
null is valid
@@ -14455,7 +15338,7 @@

empty object is valid
@@ -14501,7 +15384,7 @@

empty array is valid
@@ -14557,7 +15440,7 @@

- + @@ -14579,7 +15462,7 @@

- + @@ -14601,7 +15484,7 @@

- + @@ -14623,7 +15506,7 @@

- + @@ -14645,7 +15528,7 @@

- + @@ -14667,7 +15550,7 @@

- - + @@ -14713,7 +15596,7 @@

- - + @@ -14767,21 +15650,21 @@

-

-

-
-
+

number is invalid
string is invalid
boolean true is invalid
boolean false is invalid
null is invalid
@@ -14691,7 +15574,7 @@

empty object is invalid
@@ -14737,7 +15620,7 @@

empty array is invalid
@@ -14796,11 +15679,9 @@

- + @@ -14820,12 +15701,9 @@

- + @@ -14834,124 +15712,10 @@

class="text-center "> - - - - - - - -

- -
- one item valid against lone maxContains + above the exclusiveMinimum is valid
- two items still valid against lone maxContains + boundary point is invalid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -14959,25 +15723,21 @@

- + - @@ -14985,26 +15745,21 @@

- + - @@ -15020,24 +15775,23 @@

-

-

-
-
+

Tests - jsonoid - scala -
- empty data - - - - - - - - -
- all elements match, valid maxContains - - - - - - - - -
- all elements match, invalid maxContains - - - - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- some elements match, valid maxContains + below the exclusiveMinimum is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- some elements match, invalid maxContains + ignores non-numbers + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -15052,24 +15806,21 @@

- + - @@ -15077,25 +15828,21 @@

- + - @@ -15111,25 +15858,26 @@

-

-

-
-
+

- one element matches, valid maxContains + allowed + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- too many elements match, invalid maxContains + disallowed + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -15144,22 +15892,21 @@

- + - @@ -15167,25 +15914,21 @@

- + - @@ -15193,27 +15936,21 @@

- + - @@ -15229,21 +15966,28 @@

-

-

-
-
+

- actual < minContains < maxContains + valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- minContains < actual < maxContains + mismatch + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- minContains < maxContains < actual + other mismatch + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -15258,12 +16002,9 @@

- + @@ -15283,11 +16024,11 @@

- + @@ -15307,31 +16048,11 @@

- - - - - - - - - - - + @@ -15340,10 +16061,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -15359,21 +16080,25 @@

-

-

-
-
+

- longer is valid + match
- exact length is valid + other match
- too short is invalid - - - - - - - -
- ignores non-arrays + mismatch
@@ -15388,12 +16113,12 @@

- + @@ -15402,10 +16127,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -15413,15 +16138,18 @@

- +
- longer is valid + property present
- too short is invalid + property absent + class="text-center text-bg-danger">
-

-

-
-
+
@@ -15472,15 +16200,15 @@

- + - + - + -
- a valid JSON document + number is invalid + class="text-center text-bg-danger">
- an invalid JSON document; validates true + string is invalid + class="text-center text-bg-danger">
- ignores non-strings + boolean true is invalid + class="text-center text-bg-danger">
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + - + - + -
Tests - jsonoid - scala -
+ boolean false is invalid + -
- a valid base64 string + null is invalid + class="text-center text-bg-danger">
- an invalid base64 string (% is not a valid character); validates true + object is invalid + class="text-center text-bg-danger">
- ignores non-strings + empty object is invalid + class="text-center text-bg-danger">
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - +
Tests - jsonoid - scala -
- a valid base64-encoded JSON document - - - - - - - -
- a validly-encoded invalid JSON document; validates true - - - - - - - -
- an invalid base64 string that is valid JSON; validates true + array is invalid + class="text-center text-bg-danger">
- ignores non-strings + empty array is invalid + class="text-center text-bg-danger">
-

-

-
-
+
@@ -15816,15 +16439,15 @@

- + - + - + - + - + - + - + - + + + + + + + + + + +
- a valid base64-encoded JSON document + number is invalid + class="text-center text-bg-danger">
- another valid base64-encoded JSON document + string is invalid + class="text-center text-bg-danger">
- an invalid base64-encoded JSON document; validates true + boolean true is invalid + class="text-center text-bg-danger">
- an empty object as a base64-encoded JSON document; validates true + boolean false is invalid + class="text-center text-bg-danger">
- an empty array as a base64-encoded JSON document + null is invalid + class="text-center text-bg-danger">
- a validly-encoded invalid JSON document; validates true + object is invalid + class="text-center text-bg-danger">
- an invalid base64 string that is valid JSON; validates true + empty object is invalid + class="text-center text-bg-danger">
- ignores non-strings + array is invalid + class="text-center text-bg-danger"> + + + + + + +
+ empty array is invalid +
-

-

-
-
+
@@ -16029,27 +16678,21 @@

- + @@ -16057,15 +16700,9 @@

- + @@ -16074,10 +16711,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -16085,48 +16722,31 @@

-
- valid definition schema + number is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid definition schema + string is valid
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + @@ -16146,12 +16766,9 @@

- + @@ -16171,19 +16788,17 @@

- - + @@ -16223,21 +16834,23 @@

- + @@ -16245,21 +16858,21 @@

- + @@ -16275,21 +16888,23 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ boolean true is valid + -
- shorter is valid + boolean false is valid
- exact length is valid + null is valid
- too long is invalid + object is valid + class="text-center ">
- ignores arrays + empty object is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- ignores strings + array is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- ignores other non-objects + empty array is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -16304,11 +16919,9 @@

- + @@ -16317,32 +16930,6 @@

class="text-center "> - - - - - - - -

- - - - - - -
- shorter is valid + any value is valid
- too long is invalid - - -
-

-

-
-
+
@@ -16391,9 +16989,11 @@

- + @@ -16413,11 +17013,11 @@

- @@ -16445,21 +17045,31 @@

-

-

-
-
+

- no properties is valid + unevaluated property
- one property is invalid + annotations are still collected inside a 'not'
@@ -16474,9 +17084,12 @@

- + @@ -16496,21 +17109,24 @@

- + @@ -16518,43 +17134,71 @@

- - - - - -
- a matching pattern is valid + An array of strings is valid
- a non-matching pattern is invalid + An array containing non-strings is invalid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- ignores booleans - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -16562,9 +17206,12 @@

- + @@ -16573,10 +17220,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -16584,31 +17231,59 @@

- - - - - -
Tests
+ jsonoid + scala +
- ignores integers + An array of strings is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- ignores floats + An array containing non-strings is invalid
- ignores objects - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -16628,15 +17303,18 @@

- +
Tests
+ jsonoid + scala +
- ignores arrays + An array of strings is valid
- ignores null + An array containing non-strings is invalid + class="text-center ">
-

-

-
-
+
@@ -16687,9 +17385,37 @@

- + + + + + + + + + + + @@ -16698,10 +17424,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -16717,21 +17443,42 @@

- matches a substring + An array of strings is valid + + + + + + + +
+ An array containing non-strings is invalid
@@ -16746,12 +17493,12 @@

- + @@ -16760,10 +17507,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -16771,23 +17518,24 @@

- + @@ -16795,31 +17543,73 @@

- - - - - -
- longer is valid + An array of strings is invalid
- exact length is valid + An array of numbers is valid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- too short is invalid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -16839,15 +17629,18 @@

- + - +
Tests
+ jsonoid + scala +
- ignores arrays + An array of strings is valid
- ignores strings + An array containing non-strings is invalid + class="text-center ">
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -16891,21 +17744,41 @@

Tests + jsonoid + scala +
- ignores other non-objects + Any array is valid
@@ -16920,34 +17793,12 @@

- - - - - - - - - - - + @@ -16956,10 +17807,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -16975,23 +17826,42 @@

- longer is valid - - - - - - - -
- too short is invalid + Any array is valid
@@ -17006,26 +17876,24 @@

- - @@ -17033,54 +17901,94 @@

- - - - - - - - - +
- array with item matching schema (5) is valid + Any array is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- array with item matching schema (6) is valid - - - - - - - - -
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + - + - @@ -17088,26 +17996,28 @@

- + - @@ -17115,45 +18025,94 @@

- - - - - -
Tests + jsonoid + scala +
- array with two items matching schema (5, 6) is valid + The recursive part is valid against the root + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- array without items matching schema is invalid + The recursive part is not valid against the root + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- empty array is invalid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - - + + + + + - + - @@ -17169,23 +18128,75 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- not array is valid + The recursive part doesn't need to validate against the root + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -17200,41 +18211,14 @@

- - - - - - - - - - - + @@ -17255,14 +18239,14 @@

- + @@ -17283,48 +18267,14 @@

-
- array with item 5 is valid - - - - - - - - -
- array with two items 5 is valid + number list with number values
- array without item 5 is invalid + number list with string values
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -17345,9 +18295,14 @@

- + @@ -17376,21 +18331,55 @@

-

-

-
-
+

Tests - jsonoid - scala -
- any non-empty array is valid + string list with number values
- empty array is invalid + string list with string values
@@ -17405,11 +18394,9 @@

- + @@ -17430,9 +18417,9 @@

- + @@ -17453,9 +18440,9 @@

- + @@ -17484,26 +18471,24 @@

-

-

-
-
+

- any non-empty array is invalid + string matches /$defs/thingy, but the $dynamicRef does not stop here
- empty array is invalid + first_scope is not in dynamic scope for the $dynamicRef
- non-arrays are valid + /then/$defs/thingy is the final stop for the $dynamicRef
@@ -17518,26 +18503,27 @@

- + - @@ -17545,26 +18531,27 @@

- + - @@ -17572,25 +18559,73 @@

- +
- matches items, does not match contains + instance with misspelled field + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- does not match items, matches contains + instance with correct field + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -17598,25 +18633,55 @@

- + - + + + + + + + + + + @@ -17632,24 +18697,40 @@

-

-

-
-
+

Tests + jsonoid + scala +
- matches both items and contains + incorrect parent schema + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- matches neither items nor contains + incorrect extended schema + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ correct extended schema + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -17664,24 +18745,23 @@

- + - @@ -17689,22 +18769,27 @@

- + - @@ -17712,63 +18797,27 @@

-
- any non-empty array is valid + incorrect parent schema + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- empty array is invalid + incorrect extended schema + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -17784,23 +18833,40 @@

-

-

-
-
+

Tests - jsonoid - scala -
- allows null items + correct extended schema + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -17815,22 +18881,23 @@

- + - @@ -17838,22 +18905,55 @@

- + - + + + + + + + + + + @@ -17869,23 +18969,20 @@

- valid when valid against lone if + incorrect parent schema + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- valid when invalid against lone if + incorrect extended schema + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ correct extended schema + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -17900,22 +18997,21 @@

- + - @@ -17923,22 +19019,21 @@

- + - @@ -17954,23 +19049,32 @@

-

-

-
-
+

- valid when valid against lone then + number is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- valid when invalid against lone then + non-number is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -17985,9 +19089,11 @@

- + @@ -18007,15 +19113,17 @@

- + + + + + + + + + + + + + + + + + + + + +
- valid when valid against lone else + follow $dynamicRef to a true schema
- valid when invalid against lone else + follow $dynamicRef to a false schema + class="text-center text-bg-danger">
-

-

-
-
+
@@ -18071,22 +19210,25 @@

- + - @@ -18094,45 +19236,25 @@

- + - - - - - - - - - - - @@ -18148,26 +19270,26 @@

-

-

-
-
+

- valid through then + integer property passes + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- invalid through then + string property fails + - - - - -
- valid when if test fails - - - - - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -18182,45 +19304,23 @@

- - - - - - - - - - - + - @@ -18228,22 +19328,21 @@

- + - @@ -18259,29 +19358,27 @@

-

-

-
-
+

- valid when if test passes - - - - - - - - -
- valid through else + valid when property is specified + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid through else + still valid when the invalid default is used + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -18296,22 +19393,23 @@

- + - @@ -18319,22 +19417,21 @@

- + - @@ -18342,22 +19439,67 @@

- +
- valid through then + valid when property is specified + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid through then + still valid when the invalid default is used + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -18365,22 +19507,45 @@

- + - + + + + + + + + + + @@ -18396,37 +19561,21 @@

-

-

-
-
+

Tests + jsonoid + scala +
- valid through else + an explicit property value is checked against maximum (passing) + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid through else + an explicit property value is checked against maximum (failing) + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ missing properties are not filled in with the default + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -18441,22 +19590,21 @@

- + - @@ -18464,22 +19612,21 @@

- + - @@ -18487,65 +19634,43 @@

-
- valid, but would have been invalid through then + shorter is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- valid, but would have been invalid through else + exact length is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + - @@ -18553,22 +19678,21 @@

- + - @@ -18584,27 +19708,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ too long is invalid + -
- boolean schema true in if always chooses the then path (valid) + ignores non-strings + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- boolean schema true in if always chooses the then path (invalid) + two graphemes is long enough + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -18619,22 +19737,21 @@

- + - @@ -18642,22 +19759,21 @@

- + - @@ -18673,29 +19789,21 @@

-

-

-
-
+

- boolean schema false in if always chooses the else path (invalid) + shorter is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- boolean schema false in if always chooses the else path (valid) + too long is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -18710,45 +19818,21 @@

- - - - - - - - - - - + - @@ -18756,22 +19840,21 @@

- + - @@ -18779,22 +19862,21 @@

- + - @@ -18810,28 +19892,21 @@

-

-

-
-
+

- yes redirects to then and passes - - - - - - - - -
- other redirects to else and passes + int by int + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- no redirects to then and fails + int by int fail + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid redirects to else and fails + ignores non-numbers + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -18846,11 +19921,9 @@

- + @@ -18870,13 +19943,9 @@

- + @@ -18885,10 +19954,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -18896,13 +19965,9 @@

- + @@ -18911,10 +19976,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -18922,43 +19987,58 @@

- - - - - -
- no additional properties is valid + zero is multiple of anything
- an additional property is invalid + 4.5 is multiple of 1.5
- ignores arrays + 35 is not multiple of 1.5
- ignores strings - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -18966,12 +20046,9 @@

- + @@ -18980,10 +20057,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -18999,24 +20076,22 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- ignores other non-objects + 0.0075 is multiple of 0.0001 + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- patternProperties are not additional properties + 0.00751 is not multiple of 0.0001
@@ -19031,17 +20106,15 @@

- + - +
- matching the pattern is valid + always invalid, but naive implementations may raise an overflow error + class="text-center ">
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -19068,10 +20177,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -19087,27 +20196,23 @@

-

-

-
-
+

Tests + jsonoid + scala +
- not matching the pattern is invalid + any integer is a multiple of 1e-8
@@ -19122,38 +20227,9 @@

- - - - - - - - - - - + @@ -19174,13 +20250,9 @@

- + @@ -19209,23 +20281,23 @@

-

-

-
-
+

- no additional properties is valid - - - - - - - - -
- an additional valid property is valid + valid when valid against lone if
- an additional invalid property is invalid + valid when invalid against lone if
@@ -19240,11 +20312,9 @@

- + @@ -19265,11 +20335,9 @@

- + @@ -19298,24 +20366,23 @@

-

-

-
-
+

- an additional valid property is valid + valid when valid against lone then
- an additional invalid property is invalid + valid when invalid against lone then
@@ -19330,25 +20397,21 @@

- + @@ -19356,71 +20419,21 @@

-
- additional properties are allowed + valid when valid against lone else + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -19436,23 +20449,26 @@

-

-

-
-
+

Tests - jsonoid - scala -
- properties defined in allOf are not examined + valid when invalid against lone else + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -19467,11 +20483,9 @@

- + @@ -19492,53 +20506,9 @@

-
- allows null values + valid through then
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -19559,12 +20529,9 @@

- + @@ -19593,32 +20560,26 @@

-

-

-
-
+

Tests - jsonoid - scala -
- Valid against both keywords + invalid through then
- Valid against propertyNames, but not additionalProperties + valid when if test fails
@@ -19633,11 +20594,9 @@

- + @@ -19658,11 +20617,9 @@

- + @@ -19683,12 +20640,9 @@

- + @@ -19717,27 +20671,29 @@

-

-

-
-
+

- additionalProperties doesn't consider dependentSchemas + valid when if test passes
- additionalProperties can't see bar + valid through else
- additionalProperties can't see bar even when foo2 is present + invalid through else
@@ -19752,21 +20708,22 @@

- + - @@ -19774,21 +20731,22 @@

- + - @@ -19796,7 +20754,53 @@

-
- match + valid through then + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- mismatch + invalid through then + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+ valid through else + + + + + + + + +
+ invalid through else + + + + + + + + +
@@ -19804,28 +20808,37 @@

-

-

-
-
+
@@ -19840,21 +20853,22 @@

- + - @@ -19862,21 +20876,22 @@

- + - @@ -19892,33 +20907,27 @@

-

-

-
-
+

- match + valid, but would have been invalid through then + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- mismatch + valid, but would have been invalid through else + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -19933,21 +20942,22 @@

- + - @@ -19955,21 +20965,22 @@

- + - @@ -19985,38 +20996,27 @@

-

-

-
-
+

- match + boolean schema true in if always chooses the then path (valid) + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- mismatch + boolean schema true in if always chooses the then path (invalid) + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -20031,21 +21031,22 @@

- + - @@ -20053,21 +21054,22 @@

- + - @@ -20083,21 +21085,29 @@

-

-

-
-
+

- $ref resolves to /$defs/A/allOf/1 + boolean schema false in if always chooses the else path (invalid) + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- $ref does not resolve to /$defs/A/allOf/0 + boolean schema false in if always chooses the else path (valid) + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -20112,24 +21122,22 @@

- + - @@ -20137,24 +21145,22 @@

- + - @@ -20162,25 +21168,22 @@

- + - @@ -20188,25 +21191,22 @@

- + - @@ -20214,12 +21214,48 @@

- + + maxContains without contains is ignored + + + + +
+
+
- unique array of integers is valid + yes redirects to then and passes + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-unique array of integers is invalid + other redirects to else and passes + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-unique array of more than two integers is invalid + no redirects to then and fails + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- numbers are unique if mathematically unequal + invalid redirects to else and fails + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+ + + + + + + + + + + @@ -20239,12 +21275,12 @@

- @@ -20264,25 +21300,62 @@

- +
Tests + jsonoid + scala +
- false is not equal to zero + one item valid against lone maxContains
- true is not equal to one + two items still valid against lone maxContains
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -20290,25 +21363,24 @@

- - @@ -20316,28 +21388,25 @@

- - @@ -20345,28 +21414,25 @@

- - @@ -20374,30 +21440,26 @@

- - @@ -20405,36 +21467,64 @@

- - - + "maxContains": 1.0 +}`, "schema-code", "row-188")' data-bs-toggle="collapse" + data-bs-target="#case-188" aria-expanded="false" aria-controls="case-188"> + + maxContains with contains, value with a decimal + + + + +
+
+
Tests + jsonoid + scala +
- unique array of strings is valid + empty data + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-unique array of strings is invalid + all elements match, valid maxContains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- unique array of objects is valid + all elements match, invalid maxContains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-unique array of objects is invalid + some elements match, valid maxContains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- property order of array of objects is ignored + some elements match, invalid maxContains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- unique array of nested objects is valid -
+ + + + + + + + + + + + - @@ -20442,36 +21532,25 @@

- - @@ -20479,28 +21558,63 @@

- +
Tests + jsonoid + scala +
+ one element matches, valid maxContains + + + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-unique array of nested objects is invalid + too many elements match, invalid maxContains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -20508,28 +21622,25 @@

- - @@ -20537,31 +21648,27 @@

- - @@ -20569,12 +21676,56 @@

- +
Tests + jsonoid + scala +
- unique array of arrays is valid + actual < minContains < maxContains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-unique array of arrays is invalid + minContains < actual < maxContains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-unique array of more than two arrays is invalid + minContains < maxContains < actual + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -20594,12 +21745,12 @@

- + @@ -20608,10 +21759,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -20619,16 +21770,12 @@

- + @@ -20637,10 +21784,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -20648,28 +21795,23 @@

- + @@ -20677,34 +21819,21 @@

- + @@ -20712,34 +21841,21 @@

- + @@ -20747,30 +21863,80 @@

- +
Tests + jsonoid + scala +
- 1 and true are unique + both properties present and valid is valid
- 0 and false are unique + one property invalid is invalid
- [1] and [true] are unique + both properties invalid is invalid
- [0] and [false] are unique + doesn't invalidate other properties + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- nested [1] and [true] are unique + ignores arrays + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- nested [0] and [false] are unique + ignores other non-objects + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -20778,30 +21944,29 @@

- + - @@ -20809,30 +21974,24 @@

- + - @@ -20840,30 +21999,27 @@

- + - @@ -20871,28 +22027,24 @@

- + - @@ -20900,28 +22052,24 @@

- + - @@ -20929,69 +22077,24 @@

-
Tests + jsonoid + scala +
- unique heterogeneous types are valid + property validates property + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-unique heterogeneous types are invalid + property invalidates property + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- different objects are unique + patternProperty invalidates property + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- objects are non-unique despite key order + patternProperty validates nonproperty + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- {"a": false} and {"a": 0} are unique + patternProperty invalidates nonproperty + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- {"a": true} and {"a": 1} are unique + additionalProperty ignores property + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -20999,24 +22102,24 @@

- + - @@ -21024,37 +22127,49 @@

- - - - - -
Tests - jsonoid - scala -
- [false, true] from items array is valid + additionalProperty validates others + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- [true, false] from items array is valid + additionalProperty invalidates others + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- [false, false] from items array is not valid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -21063,10 +22178,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -21074,26 +22189,23 @@

- + @@ -21101,14 +22213,11 @@

- + @@ -21117,37 +22226,10 @@

class="text-center text-bg-danger"> - - - - - - - -

- - - - - - - @@ -21155,26 +22237,24 @@

- + @@ -21190,30 +22270,40 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- [true, true] from items array is not valid + no property present is valid
- unique array extended from [false, true] is valid + only 'true' property present is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- unique array extended from [true, false] is valid + only 'false' property present is invalid
- non-unique array extended from [false, true] is not valid - - - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- non-unique array extended from [true, false] is not valid + both properties present is invalid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -21228,37 +22318,16 @@

- - - - - - - - - - - + @@ -21278,12 +22347,16 @@

- + @@ -21303,38 +22376,52 @@

- - - - - -
- [false, true] from items array is valid - - - - - - - -
- [true, false] from items array is valid + object with all numbers is valid
- [false, false] from items array is not valid + object with strings is invalid
- [true, true] from items array is not valid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + @@ -21343,10 +22430,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -21362,21 +22449,35 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- extra items are invalid even if unique + allows null values
@@ -21391,24 +22492,21 @@

- + @@ -21416,24 +22514,21 @@

- + @@ -21441,13 +22536,9 @@

- + @@ -21467,12 +22558,11 @@

- + @@ -21481,10 +22571,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -21492,12 +22582,13 @@

- + @@ -21506,10 +22597,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -21517,16 +22608,13 @@

- +}`,"instance-info")'> @@ -21535,10 +22623,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -21546,16 +22634,15 @@

- +}`,"instance-info")'> @@ -21575,73 +22662,60 @@

- - - - - -
- unique array of integers is valid + ignores arrays + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- non-unique array of integers is valid + ignores other non-objects + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- numbers are unique if mathematically unequal + none of the properties mentioned
- false is not equal to zero + __proto__ not valid
- true is not equal to one + toString not valid
- unique array of objects is valid + constructor not valid
- non-unique array of objects is valid + all present and valid
- unique array of nested objects is valid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + - @@ -21649,28 +22723,24 @@

- + - @@ -21678,28 +22748,63 @@

- +
Tests
+ jsonoid + scala +
- non-unique array of nested objects is valid + with no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- unique array of arrays is valid + with unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -21707,24 +22812,24 @@

- + - @@ -21732,24 +22837,24 @@

- + - @@ -21757,29 +22862,60 @@

- +
Tests + jsonoid + scala +
- non-unique array of arrays is valid + with no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- 1 and true are unique + with valid unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- 0 and false are unique + with invalid unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -21787,30 +22923,24 @@

- + - @@ -21826,29 +22956,27 @@

-

-

-
-
+

Tests + jsonoid + scala +
- unique heterogeneous types are valid + with no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-unique heterogeneous types are valid + with unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -21863,24 +22991,24 @@

- + - @@ -21888,24 +23016,25 @@

- + - @@ -21913,24 +23042,67 @@

- +
- [false, true] from items array is valid + with no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- [true, false] from items array is valid + with unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -21938,24 +23110,25 @@

- + - @@ -21963,26 +23136,68 @@

- +
Tests + jsonoid + scala +
- [false, false] from items array is valid + with no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- [true, true] from items array is valid + with unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -21990,80 +23205,25 @@

- + - - - - - - - - - - - - - - - - - - - - - @@ -22079,30 +23239,36 @@

-

-

-
-
+

Tests + jsonoid + scala +
- unique array extended from [false, true] is valid + with no additional properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- unique array extended from [true, false] is valid + with additional properties + - - - -
- non-unique array extended from [false, true] is valid - - - - - - - -
- non-unique array extended from [true, false] is valid - - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -22117,24 +23283,25 @@

- + - @@ -22142,24 +23309,26 @@

- + - @@ -22167,49 +23336,77 @@

- - - - - -
- [false, true] from items array is valid + with no additional properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- [true, false] from items array is valid + with additional properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- [false, false] from items array is valid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + - @@ -22217,25 +23414,26 @@

- + - @@ -22251,21 +23449,32 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- [true, true] from items array is valid + with no additional properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- extra items are invalid even if unique + with additional properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -22280,21 +23489,24 @@

- + - @@ -22302,21 +23514,25 @@

- + - @@ -22324,21 +23540,75 @@

- +
- below the exclusiveMaximum is valid + with no additional properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- boundary point is invalid + with additional properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -22346,21 +23616,25 @@

- + - @@ -22376,26 +23650,59 @@

-

-

-
-
+

Tests + jsonoid + scala +
- above the exclusiveMaximum is invalid + with no nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- ignores non-numbers + with nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -22410,23 +23717,25 @@

- - @@ -22434,25 +23743,26 @@

- - @@ -22460,23 +23770,26 @@

- - @@ -22484,25 +23797,27 @@

- - @@ -22518,28 +23833,49 @@

-

-

-
-
+

- match + when one matches and has no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- recursive match + when one matches and has unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- mismatch + when two match and has no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- recursive mismatch + when two match and has unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -22554,23 +23890,25 @@

- - @@ -22578,23 +23916,26 @@

- - @@ -22610,28 +23951,39 @@

-

-

-
-
+

- match + with no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- mismatch + with unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -22646,49 +23998,25 @@

- + - - - - - - - - - - - @@ -22704,42 +24032,52 @@

-

-

-
-
+

- match array + with unevaluated properties + - - - -
- mismatch array - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
@@ -22754,47 +24092,25 @@

- - - - - - - - - - - - @@ -22802,47 +24118,26 @@

- - - - - - - - - - - - @@ -22850,23 +24145,24 @@

- - @@ -22874,23 +24170,25 @@

- - @@ -22906,32 +24204,42 @@

-

-

-
-
+

- slash invalid + when if is true and has no unevaluated properties + - - - -
- tilde invalid - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
- percent invalid + when if is true and has unevaluated properties + - - - -
- slash valid - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
- tilde valid + when if is false and has no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- percent valid + when if is false and has unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -22946,43 +24254,25 @@

- + - - - - - - - - - - - @@ -22990,70 +24280,26 @@

-
- nested ref valid + when if is true and has no unevaluated properties + - - - -
- nested ref invalid - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -23061,27 +24307,24 @@

- - @@ -23089,23 +24332,25 @@

- - @@ -23121,21 +24366,42 @@

Tests - jsonoid - scala -
- ref valid, maxItems valid + when if is true and has unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- ref valid, maxItems invalid + when if is false and has no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- ref invalid + when if is false and has unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -23150,23 +24416,25 @@

- - @@ -23174,23 +24442,26 @@

- - @@ -23198,64 +24469,24 @@

-
- remote ref valid + when if is true and has no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- remote ref invalid + when if is true and has unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -23263,23 +24494,25 @@

- - @@ -23295,30 +24528,39 @@

-

-

-
-
+

Tests - jsonoid - scala -
- property named $ref valid + when if is false and has no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- property named $ref invalid + when if is false and has unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -23333,23 +24575,25 @@

- - @@ -23357,23 +24601,24 @@

- - @@ -23389,24 +24634,30 @@

-

-

-
-
+

- property named $ref valid + with no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- property named $ref invalid + with unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -23421,21 +24672,49 @@

- + - + + + + + + + + + + @@ -23451,24 +24730,37 @@

-

-

-
-
+

- any value is valid + with no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + + + +
+ with unevaluated properties + + + + + +
@@ -23483,9 +24775,38 @@

- + + + + + + + + + + + @@ -23513,56 +24834,37 @@

-

-

-
-
+

- any value is invalid + with no unevaluated properties + + + + + + + +
+ with unevaluated properties
@@ -23577,41 +24879,12 @@

- @@ -23631,41 +24904,13 @@

- @@ -23693,30 +24938,50 @@

-

-

-
-
+

- valid tree + with no unevaluated properties
- invalid tree + with unevaluated properties
@@ -23731,23 +24996,25 @@

- - @@ -23755,23 +25022,26 @@

- - @@ -23787,31 +25057,30 @@

-

-

-
-
+

- object with numbers is valid + with no unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- object with strings is invalid + with unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -23826,11 +25095,11 @@

- @@ -23859,30 +25128,30 @@

-

-

-
-
+

- referenced subschema doesn't see annotations from properties + always fails
@@ -23897,69 +25166,24 @@

- - - - - - - - - - - - - - - - - - - - - - @@ -23975,37 +25199,32 @@

-

-

-
-
+

- do not evaluate the $ref inside the enum, matching any string - - - - - - - -
- do not evaluate the $ref inside the enum, definition exact match + always fails + - - - -
- match the enum exactly - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
@@ -24020,53 +25239,24 @@

- - - - - - - - - - - - @@ -24074,26 +25264,25 @@

- - @@ -24109,37 +25298,32 @@

-

-

-
-
+

- invalid on inner field + with no nested unevaluated properties + - - - -
- invalid on outer field - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
- valid on both fields + with nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -24154,53 +25338,24 @@

- - - - - - - - - - - - @@ -24208,26 +25363,25 @@

- - @@ -24243,39 +25397,32 @@

-

-

-
-
+

- invalid on inner field + with no nested unevaluated properties + - - - -
- invalid on outer field - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
- valid on both fields + with nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -24290,21 +25437,24 @@

- + - @@ -24312,21 +25462,25 @@

- + - @@ -24342,35 +25496,32 @@

-

-

-
-
+

- number is valid + with no nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-number is invalid + with nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -24385,21 +25536,24 @@

- + - @@ -24407,21 +25561,25 @@

- + - @@ -24437,36 +25595,34 @@

-

-

-
-
+

- data is valid against first definition + with no nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- data is invalid against first definition + with nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -24481,21 +25637,24 @@

- + - @@ -24503,21 +25662,25 @@

- + - @@ -24533,28 +25696,34 @@

-

-

-
-
+

- data is valid against first definition + with no nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- data is invalid against first definition + with nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -24569,23 +25738,24 @@

- - @@ -24593,23 +25763,25 @@

- - @@ -24625,32 +25797,45 @@

-

-

-
-
+

- valid under the URN IDed schema + with no nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- invalid under the URN IDed schema + with nested unevaluated properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -24665,23 +25850,26 @@

- - @@ -24689,23 +25877,27 @@

- - @@ -24721,32 +25913,36 @@

-

-

-
-
+

- a string is valid + no extra properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a non-string is invalid + uncle keyword evaluation is not significant + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -24761,23 +25957,25 @@

- - @@ -24785,23 +25983,49 @@

- - + + + + + + + + + + @@ -24817,32 +26041,36 @@

-

-

-
-
+

- a string is valid + base case: both properties present + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a non-string is invalid + in place applicator siblings, bar is missing + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + + + +
+ in place applicator siblings, foo is missing + + + + + +
@@ -24857,11 +26085,12 @@

- @@ -24870,10 +26099,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -24881,11 +26110,35 @@

- + + + + + + + + + + @@ -24894,10 +26147,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -24913,32 +26166,27 @@

-

-

-
-
+

- a string is valid + base case: both properties present
- a non-string is invalid + in place applicator siblings, bar is missing + + + + + + + +
+ in place applicator siblings, foo is missing
@@ -24953,23 +26201,22 @@

- + - @@ -24977,23 +26224,24 @@

- - @@ -25001,70 +26249,52 @@

-
- a string is valid + Empty is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a non-string is invalid + Single is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + + - - @@ -25072,23 +26302,27 @@

- - @@ -25096,71 +26330,28 @@

-
Tests - jsonoid - scala -
+ Unevaluated on 1st level is invalid + -
- a string is valid + Nested is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a non-string is invalid + Unevaluated on 2nd level is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -25168,23 +26359,29 @@

- - @@ -25200,32 +26397,61 @@

-

-

-
-
+

Tests - jsonoid - scala -
- a string is valid + Deep nested is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a non-string is invalid + Unevaluated on 3rd level is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -25240,21 +26466,22 @@

- + - @@ -25262,21 +26489,25 @@

- + - @@ -25284,50 +26515,12 @@

-
- a string is valid + Empty is invalid (no x or y) + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a non-string is invalid + a and b are invalid (no x or y) + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -25348,9 +26541,12 @@

- + @@ -25371,50 +26567,12 @@

-
Tests - jsonoid - scala -
- a non-integer is invalid due to the $ref + x and y are invalid
- an integer is valid + a and x are valid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -25435,9 +26593,13 @@

- + @@ -25458,62 +26620,26 @@

-
Tests - jsonoid - scala -
- a non-integer is invalid due to the $ref + a and y are valid
- an integer is valid + a and b and x are valid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -25521,21 +26647,27 @@

- + - @@ -25551,32 +26683,85 @@

-

-

-
-
+

Tests - jsonoid - scala -
- a non-integer is invalid due to the $ref + a and b and y are valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- an integer is valid + a and b and x and y are invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -25591,21 +26776,22 @@

- + - @@ -25613,21 +26799,24 @@

- + - @@ -25635,64 +26824,24 @@

-
- a string is valid + Empty is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- an integer is invalid + a is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -25700,21 +26849,24 @@

- + - @@ -25722,64 +26874,24 @@

-
Tests - jsonoid - scala -
- number is valid + b is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-number is invalid + c is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -25787,21 +26899,25 @@

- + - @@ -25809,71 +26925,25 @@

-
Tests - jsonoid - scala -
- number is valid + d is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-number is invalid + a + b is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -25881,21 +26951,25 @@

- + - @@ -25903,58 +26977,25 @@

-
Tests - jsonoid - scala -
- number is valid + a + c is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- non-number is invalid + a + d is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -25962,21 +27003,25 @@

- + - @@ -25984,21 +27029,25 @@

- + - @@ -26006,21 +27055,24 @@

- + - @@ -26028,21 +27080,25 @@

- + - @@ -26050,21 +27106,25 @@

- + - @@ -26072,21 +27132,25 @@

- + - @@ -26094,21 +27158,25 @@

- + - @@ -26116,21 +27184,25 @@

- + - @@ -26138,58 +27210,50 @@

-
Tests - jsonoid - scala -
- an integer is an integer + b + c is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a float with zero fractional part is an integer + b + d is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a float is not an integer + c + d is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a string is not an integer + xx is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a string is still not an integer, even if it looks like one + xx + foox is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- an object is not an integer + xx + foo is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- an array is not an integer + xx + a is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a boolean is not an integer + xx + b is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- null is not an integer + xx + c is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + + - + - @@ -26197,21 +27261,25 @@

- + - @@ -26219,21 +27287,25 @@

- + - @@ -26241,21 +27313,59 @@

- +
Tests - jsonoid - scala -
+ xx + d is invalid + -
- an integer is a number + all is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a float with zero fractional part is a number (and an integer) + all + foo is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a float is a number + all + a is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -26263,21 +27373,22 @@

- + - @@ -26285,21 +27396,22 @@

- + - @@ -26307,21 +27419,22 @@

- + - @@ -26329,21 +27442,22 @@

- + - @@ -26351,21 +27465,22 @@

- + - @@ -26381,21 +27496,23 @@

-

-

-
-
+

Tests + jsonoid + scala +
- a string is not a number + ignores booleans + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a string is still not a number, even if it looks like one + ignores integers + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- an object is not a number + ignores floats + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- an array is not a number + ignores arrays + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a boolean is not a number + ignores strings + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- null is not a number + ignores null + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -26410,21 +27527,24 @@

- + - @@ -26432,21 +27552,66 @@

- +
- 1 is not a string + allows null valued properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -26454,21 +27619,24 @@

- + - @@ -26476,43 +27644,68 @@

- - - - - -
Tests + jsonoid + scala +
- a float is not a string + allows only number properties + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a string is a string + string property is invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a string is still a string, even if it looks like a number - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + - @@ -26520,21 +27713,24 @@

- + - @@ -26542,21 +27738,72 @@

- +
Tests
+ jsonoid + scala +
- an empty string is still a string + valid in case if is evaluated + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- an object is not a string + invalid in case if is evaluated + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -26564,21 +27811,24 @@

- + - @@ -26586,21 +27836,25 @@

- + - @@ -26616,21 +27870,21 @@

-

-

-
-
+

Tests + jsonoid + scala +
- an array is not a string + unevaluatedProperties doesn't consider dependentSchemas + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- a boolean is not a string + unevaluatedProperties doesn't see bar when foo2 is absent + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- null is not a string + unevaluatedProperties sees bar when foo2 is present + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -26645,15 +27899,15 @@

- + - + - + - + @@ -26733,15 +27987,15 @@

- + - + - + @@ -26788,10 +28042,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -26807,21 +28061,21 @@

-

-

-
-
+

- an integer is not an object + all string formats ignore integers + class="text-center text-bg-danger">
- a float is not an object + all string formats ignore floats + class="text-center text-bg-danger">
- a string is not an object + all string formats ignore objects + class="text-center text-bg-danger">
- an object is an object + all string formats ignore arrays + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- an array is not an object + all string formats ignore booleans + class="text-center text-bg-danger">
- a boolean is not an object + all string formats ignore nulls + class="text-center text-bg-danger">
- null is not an object + invalid email string is only an annotation by default
@@ -26836,15 +28090,15 @@

- + - + - + - + - + @@ -26946,15 +28200,15 @@

- + - + @@ -26979,10 +28233,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -26998,21 +28252,21 @@

-

-

-
-
+

- an integer is not an array + all string formats ignore integers + class="text-center text-bg-danger">
- a float is not an array + all string formats ignore floats + class="text-center text-bg-danger">
- a string is not an array + all string formats ignore objects + class="text-center text-bg-danger">
- an object is not an array + all string formats ignore arrays + class="text-center text-bg-danger">
- an array is an array + all string formats ignore booleans + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- a boolean is not an array + all string formats ignore nulls + class="text-center text-bg-danger">
- null is not an array + invalid idn-email string is only an annotation by default
@@ -27027,37 +28281,15 @@

- - - - - - - - - - - + - + - + - + - + - + - - - - - - - - - - - + @@ -27225,28 +28435,6 @@

- - - - - - - - - -
- an integer is not a boolean - - - - - - - -
- zero is not a boolean + all string formats ignore integers + class="text-center text-bg-danger">
- a float is not a boolean + all string formats ignore floats + class="text-center text-bg-danger">
- a string is not a boolean + all string formats ignore objects + class="text-center text-bg-danger">
- an empty string is not a boolean + all string formats ignore arrays + class="text-center text-bg-danger">
- an object is not a boolean + all string formats ignore booleans + class="text-center text-bg-danger">
- an array is not a boolean + all string formats ignore nulls + class="text-center text-bg-danger">
- true is a boolean - - - - - - - -
- false is a boolean + invalid regex string is only an annotation by default
- null is not a boolean - - - - - - - -
@@ -27255,21 +28443,21 @@

-

-

-
-
+
@@ -27284,15 +28472,15 @@

- + - + - + - + - + - + - + @@ -27427,10 +28615,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -27438,15 +28626,52 @@

- +
- an integer is not null + all string formats ignore integers + class="text-center text-bg-danger">
- a float is not null + all string formats ignore floats + class="text-center text-bg-danger">
- zero is not null + all string formats ignore objects + class="text-center text-bg-danger">
- a string is not null + all string formats ignore arrays + class="text-center text-bg-danger">
- an empty string is not null + all string formats ignore booleans + class="text-center text-bg-danger">
- an object is not null + all string formats ignore nulls + class="text-center text-bg-danger">
- an array is not null + invalid ipv4 string is only an annotation by default
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - + - + @@ -27504,121 +28729,15 @@

-
Tests + jsonoid + scala +
- true is not null + all string formats ignore integers + class="text-center text-bg-danger">
- false is not null + all string formats ignore floats + class="text-center text-bg-danger">
- null is null + all string formats ignore objects + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + @@ -27687,10 +28806,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -27706,23 +28825,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
- an integer is valid - - - - - - - -
- a string is valid - - - - - - - -
- a float is invalid - - - - - - - -
- an object is invalid + all string formats ignore arrays + class="text-center text-bg-danger">
- an array is invalid + all string formats ignore booleans + class="text-center text-bg-danger">
- a boolean is invalid + all string formats ignore nulls + class="text-center text-bg-danger">
- null is invalid + invalid ipv6 string is only an annotation by default
@@ -27737,21 +28854,21 @@

- + @@ -27759,15 +28876,15 @@

- + -
- string is valid + all string formats ignore integers + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- number is invalid + all string formats ignore floats + class="text-center text-bg-danger">
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -27847,23 +28920,21 @@

- + @@ -27871,15 +28942,15 @@

- + - + - + @@ -27926,10 +28997,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -27945,25 +29016,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
- array is valid + all string formats ignore objects + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- object is valid + all string formats ignore arrays + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- number is invalid + all string formats ignore booleans + class="text-center text-bg-danger">
- string is invalid + all string formats ignore nulls + class="text-center text-bg-danger">
- null is invalid + invalid idn-hostname string is only an annotation by default
@@ -27978,25 +29045,21 @@

- + @@ -28004,23 +29067,21 @@

- + @@ -28028,21 +29089,21 @@

- + @@ -28050,15 +29111,15 @@

- + - + + + + + + + + + + + + + + + + + + + + +
- array is valid + all string formats ignore integers + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- object is valid + all string formats ignore floats + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- null is valid + all string formats ignore objects + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- number is invalid + all string formats ignore arrays + class="text-center text-bg-danger">
- string is invalid + all string formats ignore booleans + class="text-center text-bg-danger"> + + + + + + +
+ all string formats ignore nulls +
+ invalid hostname string is only an annotation by default + + + + + + + +
@@ -28102,21 +29207,21 @@

-

-

-
-
+
@@ -28131,23 +29236,21 @@

- + @@ -28155,24 +29258,21 @@

- + @@ -28180,19 +29280,15 @@

- + - + @@ -28228,60 +29324,43 @@

-
- shorter is valid + all string formats ignore integers + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- exact length is valid + all string formats ignore floats + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- too long is invalid + all string formats ignore objects + class="text-center text-bg-danger">
- ignores non-arrays + all string formats ignore arrays
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + @@ -28289,13 +29368,9 @@

- + @@ -28304,10 +29379,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -28323,25 +29398,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ all string formats ignore booleans + -
- shorter is valid + all string formats ignore nulls + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- too long is invalid + invalid date string is only an annotation by default
@@ -28356,23 +29427,21 @@

- + @@ -28380,24 +29449,21 @@

- + @@ -28405,18 +29471,15 @@

- + - + - + @@ -28479,9 +29537,9 @@

- + @@ -28501,21 +29559,21 @@

- + @@ -28531,28 +29589,21 @@

-

-

-
-
+

- a single valid match is valid + all string formats ignore integers + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- multiple valid matches is valid + all string formats ignore floats + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- a single invalid match is invalid + all string formats ignore objects + class="text-center text-bg-danger">
- multiple invalid matches is invalid + all string formats ignore arrays + class="text-center text-bg-danger">
- ignores arrays + all string formats ignore booleans
- ignores strings + all string formats ignore nulls
- ignores other non-objects + invalid date-time string is only an annotation by default + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -28567,23 +29618,21 @@

- + @@ -28591,23 +29640,21 @@

- + @@ -28615,24 +29662,21 @@

- + @@ -28640,17 +29684,15 @@

- + - + @@ -28677,10 +29717,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -28688,18 +29728,15 @@

- + + + + + + + + + + +
- a single valid match is valid + all string formats ignore integers + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- a simultaneous match is valid + all string formats ignore floats + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- multiple matches is valid + all string formats ignore objects + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- an invalid due to one is invalid + all string formats ignore arrays + class="text-center text-bg-danger">
- an invalid due to the other is invalid + all string formats ignore booleans
- an invalid due to both is invalid + all string formats ignore nulls + class="text-center text-bg-danger">
+ invalid time string is only an annotation by default + + + + + + + +
@@ -28721,28 +29780,21 @@

-

-

-
-
+
@@ -28757,11 +29809,9 @@

- + @@ -28781,17 +29831,15 @@

- + - + @@ -28829,17 +29875,59 @@

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
- non recognized members are ignored + all string formats ignore integers
- recognized members are accounted for + all string formats ignore floats + class="text-center text-bg-danger">
- regexes are case sensitive + all string formats ignore objects
- regexes are case sensitive, 2 + all string formats ignore arrays + class="text-center text-bg-danger"> + + + + + + +
+ all string formats ignore booleans + + + + + + + +
+ all string formats ignore nulls +
+ invalid json-pointer string is only an annotation by default + + + + + + + +
@@ -28861,24 +29971,21 @@

-

-

-
-
+
@@ -28893,23 +30000,21 @@

- + @@ -28917,11 +30022,9 @@

- + @@ -28930,10 +30033,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -28941,12 +30044,9 @@

- + @@ -28955,10 +30055,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -28966,11 +30066,9 @@

- + @@ -28979,10 +30077,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -28990,21 +30088,21 @@

- + @@ -29012,52 +30110,31 @@

-
- object with property matching schema true is valid + all string formats ignore integers + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- object with property matching schema false is invalid + all string formats ignore floats
- object with both properties is invalid + all string formats ignore objects
- object with a property matching both true and false is invalid + all string formats ignore arrays
- empty object is valid + all string formats ignore booleans + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + @@ -29085,21 +30162,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ all string formats ignore nulls + -
- allows null values + invalid relative-json-pointer string is only an annotation by default
@@ -29114,21 +30191,21 @@

- + @@ -29136,9 +30213,9 @@

- + @@ -29147,10 +30224,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -29158,9 +30235,9 @@

- + @@ -29180,58 +30257,43 @@

-
- int by int + all string formats ignore integers + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- int by int fail + all string formats ignore floats
- ignores non-numbers + all string formats ignore objects
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + @@ -29239,21 +30301,21 @@

- + @@ -29261,15 +30323,15 @@

- + + + + + + + + + + + + + + + + + + + +
Tests - jsonoid - scala -
+ all string formats ignore arrays + -
- zero is multiple of anything + all string formats ignore booleans + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- 4.5 is multiple of 1.5 + all string formats ignore nulls + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- 35 is not multiple of 1.5 + invalid iri string is only an annotation by default + class="text-center ">
-

-

-
-
+
@@ -29320,21 +30382,21 @@

- + @@ -29342,9 +30404,9 @@

- + @@ -29353,10 +30415,10 @@

class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -29364,53 +30426,37 @@

-
- 0.0075 is multiple of 0.0001 + all string formats ignore integers + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- 0.00751 is not multiple of 0.0001 + all string formats ignore floats
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + -
Tests - jsonoid - scala -
+ all string formats ignore objects + -
- always invalid, but naive implementations may raise an overflow error + all string formats ignore arrays + class="text-center text-bg-danger">
-
-
- -
- -
- -

- -

- -
-
- - - - + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + - + @@ -29492,28 +30544,21 @@

-

-

-
-
+

Tests
+ all string formats ignore booleans + - - jsonoid - scala -
+ all string formats ignore nulls + -
- any integer is a multiple of 1e-8 + invalid iri-reference string is only an annotation by default
@@ -29528,21 +30573,21 @@

- + @@ -29550,21 +30595,21 @@

- + @@ -29572,21 +30617,21 @@

- + @@ -29594,15 +30639,15 @@

- + -
- first anyOf valid + all string formats ignore integers + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- second anyOf valid + all string formats ignore floats + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- both anyOf valid + all string formats ignore objects + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- neither anyOf valid + all string formats ignore arrays + class="text-center text-bg-danger">
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - + @@ -29705,9 +30705,9 @@

- + @@ -29716,10 +30716,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -29735,24 +30735,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
- mismatch base schema + all string formats ignore booleans + class="text-center text-bg-danger">
- one anyOf valid + all string formats ignore nulls + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- both anyOf invalid + invalid uri string is only an annotation by default
@@ -29767,22 +30764,21 @@

- + - @@ -29790,62 +30786,21 @@

-
- any value is valid + all string formats ignore integers + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -29853,62 +30808,21 @@

-
Tests - jsonoid - scala -
- any value is valid + all string formats ignore floats + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -29916,81 +30830,21 @@

-
Tests - jsonoid - scala -
- any value is invalid + all string formats ignore objects + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -29998,23 +30852,21 @@

- + @@ -30022,12 +30874,9 @@

- + @@ -30047,12 +30896,9 @@

- + @@ -30061,10 +30907,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -30080,26 +30926,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
- first anyOf valid (complex) + all string formats ignore arrays + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- second anyOf valid (complex) + all string formats ignore booleans + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- both anyOf valid (complex) + all string formats ignore nulls
- neither anyOf valid (complex) + invalid uri-reference string is only an annotation by default
@@ -30114,21 +30955,21 @@

- + @@ -30136,21 +30977,21 @@

- + @@ -30158,66 +30999,21 @@

-
- string is valid + all string formats ignore integers + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- number is valid + all string formats ignore floats + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -30225,15 +31021,15 @@

- + -
Tests - jsonoid - scala -
- null is valid + all string formats ignore objects + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- anything non-null is invalid + all string formats ignore arrays + class="text-center text-bg-danger">
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + @@ -30308,9 +31087,9 @@

- + @@ -30338,24 +31117,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ all string formats ignore booleans + -
- one item valid against lone minContains + all string formats ignore nulls + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- zero items still valid against lone minContains + invalid uri-template string is only an annotation by default
@@ -30370,22 +31146,21 @@

- + - @@ -30393,24 +31168,21 @@

- + - @@ -30418,24 +31190,21 @@

- + - @@ -30443,25 +31212,43 @@

- + - + + + + + + + + + + @@ -30469,25 +31256,43 @@

- + - + + + + + + + + + + @@ -30503,24 +31308,21 @@

-

-

-
-
+

- empty data + all string formats ignore integers + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- no elements match + all string formats ignore floats + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- single element matches, valid minContains + all string formats ignore objects + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- some elements match, valid minContains + all string formats ignore arrays + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ all string formats ignore booleans + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- all elements match, valid minContains + all string formats ignore nulls + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ invalid uuid string is only an annotation by default + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -30535,22 +31337,21 @@

- + - @@ -30558,24 +31359,21 @@

- + - @@ -30583,25 +31381,21 @@

- + - @@ -30609,25 +31403,21 @@

- + - @@ -30635,26 +31425,21 @@

- + - @@ -30662,26 +31447,43 @@

- + - + + + + + + + + + + @@ -30697,24 +31499,21 @@

-

-

-
-
+

- empty data + all string formats ignore integers + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- all elements match, invalid minContains + all string formats ignore floats + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- some elements match, invalid minContains + all string formats ignore objects + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- all elements match, valid minContains (exactly as needed) + all string formats ignore arrays + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- all elements match, valid minContains (more than needed) + all string formats ignore booleans + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- some elements match, valid minContains + all string formats ignore nulls + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ invalid duration string is only an annotation by default + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -30729,24 +31528,21 @@

- + - @@ -30754,25 +31550,21 @@

- + - @@ -30780,63 +31572,43 @@

-
- one element matches, invalid minContains + an integer is an integer + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- both elements match, valid minContains + a float with zero fractional part is an integer + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + - @@ -30844,24 +31616,21 @@

- + - @@ -30869,26 +31638,21 @@

- + - @@ -30896,25 +31660,21 @@

- + - @@ -30922,33 +31682,73 @@

-
Tests - jsonoid - scala -
+ a float is not an integer + -
- empty data + a string is not an integer + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- all elements match, invalid minContains + a string is still not an integer, even if it looks like one + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- all elements match, invalid maxContains + an object is not an integer + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- all elements match, valid maxContains and minContains + an array is not an integer + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

-

+ a boolean is not an integer + + + + + + + +
+ null is not an integer + + + + + + + +
+
+
+ +
+ +
+ +

+

-
-
+
@@ -30963,22 +31763,21 @@

- + - @@ -30986,24 +31785,21 @@

- + - @@ -31011,26 +31807,21 @@

- + - @@ -31038,25 +31829,21 @@

- + - @@ -31064,62 +31851,21 @@

-
- empty data + an integer is a number + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid minContains + a float with zero fractional part is a number (and an integer) + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid maxContains + a float is a number + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid maxContains and minContains + a string is not a number + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -31127,24 +31873,21 @@

- + - @@ -31152,63 +31895,21 @@

-
Tests - jsonoid - scala -
- empty data + a string is still not a number, even if it looks like one + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- minContains = 0 makes contains always pass + an object is not a number + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -31216,24 +31917,21 @@

- + - @@ -31241,25 +31939,21 @@

- + - @@ -31275,27 +31969,21 @@

Tests - jsonoid - scala -
- empty data + an array is not a number + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- not more than maxContains + a boolean is not a number + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- too many + null is not a number + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -31310,23 +31998,21 @@

- + @@ -31334,11 +32020,9 @@

- + @@ -31347,10 +32031,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -31358,11 +32042,9 @@

- + @@ -31382,46 +32064,9 @@

-
- applicator vocabulary still works + 1 is not a string + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- no validation: valid number + a float is not a string
- no validation: invalid number, but it still validates + a string is a string
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -31430,10 +32075,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -31441,9 +32086,9 @@

- + @@ -31463,46 +32108,9 @@

-
Tests - jsonoid - scala -
- string value + a string is still a string, even if it looks like a number
- number value + an empty string is still a string
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -31511,10 +32119,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -31522,9 +32130,9 @@

- + @@ -31533,10 +32141,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -31544,9 +32152,9 @@

- + @@ -31566,15 +32174,15 @@

- +
Tests - jsonoid - scala -
- below the maximum is valid + an object is not a string
- boundary point is valid + an array is not a string
- above the maximum is invalid + a boolean is not a string
- ignores non-numbers + null is not a string + class="text-center ">
-

-

-
-
+
@@ -31625,9 +32233,9 @@

- + @@ -31636,10 +32244,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -31647,9 +32255,9 @@

- + @@ -31658,10 +32266,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -31669,9 +32277,9 @@

- + @@ -31680,10 +32288,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -31691,9 +32299,9 @@

- + @@ -31702,10 +32310,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -31713,60 +32321,9 @@

-
- below the maximum is invalid + an integer is not an object
- boundary point integer is valid + a float is not an object
- boundary point float is valid + a string is not an object
- above the maximum is invalid + an object is an object
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -31775,10 +32332,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -31786,11 +32343,9 @@

- + @@ -31799,10 +32354,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -31810,24 +32365,21 @@

- + @@ -31835,24 +32387,58 @@

- +
Tests - jsonoid - scala -
- valid + an array is not an object
- no dependency + a boolean is not an object
- wrong type + null is not an object + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -31860,24 +32446,21 @@

- + @@ -31885,11 +32468,9 @@

- + @@ -31898,10 +32479,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -31909,9 +32490,9 @@

- + @@ -31920,10 +32501,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -31931,9 +32512,9 @@

- + @@ -31953,6 +32534,50 @@

+ + + + + + + + + + + + + + + + + + + +
Tests + jsonoid + scala +
- wrong type other + an integer is not an array + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- wrong type both + a float is not an array + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- ignores arrays + a string is not an array
- ignores strings + an object is not an array
- ignores other non-objects + an array is an array
+ a boolean is not an array + + + + + + + +
+ null is not an array + + + + + + + +
@@ -31961,24 +32586,21 @@

-

-

-
-
+
@@ -31993,11 +32615,9 @@

- + @@ -32006,10 +32626,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -32017,23 +32637,21 @@

- + @@ -32041,24 +32659,21 @@

- + @@ -32066,9 +32681,9 @@

- + @@ -32077,10 +32692,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -32088,60 +32703,53 @@

-
- object with property having schema true is valid + an integer is not a boolean
- object with property having schema false is invalid + zero is not a boolean + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- object with both properties is invalid + a float is not a boolean + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- empty object is valid + a string is not a boolean
-
-
- -
- -
- -

- -

- -
-
- - - - + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + - + @@ -32150,10 +32758,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -32161,19 +32769,15 @@

- + - + - + @@ -32244,31 +32843,21 @@

-

-

-
-
+

Tests
+ an empty string is not a boolean + - - jsonoid - scala -
+ an object is not a boolean + -
- quoted tab + an array is not a boolean
- quoted quote + true is a boolean + class="text-center ">
- quoted tab invalid under dependent schema + false is a boolean + class="text-center ">
- quoted quote invalid under dependent schema + null is not a boolean + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -32283,24 +32872,21 @@

- + - @@ -32308,24 +32894,21 @@

- + - @@ -32333,25 +32916,21 @@

- + - @@ -32359,24 +32938,21 @@

- + - @@ -32384,46 +32960,31 @@

-
- matches root + an integer is not null + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- matches dependency + a float is not null + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- matches both + zero is not null + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- no dependency + a string is not null + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + @@ -32432,10 +32993,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -32443,9 +33004,9 @@

- + @@ -32454,10 +33015,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -32465,9 +33026,9 @@

- + @@ -32487,15 +33048,15 @@

- + + + + + + + + + + +
Tests - jsonoid - scala -
+ an empty string is not null + -
- above the minimum is valid + an object is not null
- boundary point is valid + an array is not null
- below the minimum is invalid + true is not null
- ignores non-numbers + false is not null + class="text-center ">
+ null is null + + + + + + + +
@@ -32517,21 +33100,24 @@

-

-

-
-
+
@@ -32546,9 +33132,9 @@

- + @@ -32568,9 +33154,9 @@

- + @@ -32590,9 +33176,9 @@

- + @@ -32601,10 +33187,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -32612,9 +33198,9 @@

- + @@ -32623,10 +33209,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -32634,9 +33220,9 @@

- + @@ -32656,9 +33242,9 @@

- + @@ -32678,15 +33264,15 @@

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
- negative above the minimum is valid + an integer is valid
- positive above the minimum is valid + a string is valid
- boundary point is valid + a float is invalid
- boundary point with float is valid + an object is invalid
- float below the minimum is invalid + an array is invalid
- int below the minimum is invalid + a boolean is invalid
- ignores non-numbers + null is invalid + class="text-center ">
-

-

-
-
+
@@ -32737,22 +33325,21 @@

- + - @@ -32760,24 +33347,21 @@

- + - @@ -32793,21 +33377,24 @@

-

-

-
-
+

- with no unevaluated items + string is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated items + number is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -32822,22 +33409,49 @@

- + - + + + + + + + + + + @@ -32845,24 +33459,65 @@

- + - + + + + + + + + + + + + + + + + + + + + @@ -32878,23 +33533,25 @@

-

-

-
-
+

- with no unevaluated items + array is valid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ object is valid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated items + number is invalid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ string is invalid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ null is invalid + + + + +
@@ -32909,22 +33566,25 @@

- + - @@ -32932,24 +33592,45 @@

- + - + + + + + + + + + + @@ -32957,24 +33638,43 @@

- + - + + + + + + + + + + @@ -32990,24 +33690,21 @@

- with no unevaluated items + array is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with valid unevaluated items + object is valid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ null is valid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with invalid unevaluated items + number is invalid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ string is invalid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -33022,25 +33719,55 @@

- + - + + + + + + + + + + @@ -33056,26 +33783,21 @@

-

-

-
-
+

- unevaluatedItems doesn't apply + valid definition schema + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ invalid definition schema + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -33090,24 +33812,21 @@

- + - @@ -33115,25 +33834,21 @@

- + - @@ -33141,68 +33856,43 @@

-
- with no unevaluated items + above the minimum is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated items + boundary point is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + - @@ -33218,26 +33908,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ below the minimum is invalid + -
- unevaluatedItems doesn't apply + ignores non-numbers + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -33252,27 +33937,21 @@

- + - @@ -33280,26 +33959,21 @@

- + - @@ -33307,7 +33981,117 @@

-
- valid under items + negative above the minimum is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid under items + positive above the minimum is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
+
+ boundary point is valid + + + + + + + +
+ boundary point with float is valid + + + + + + + +
+ float below the minimum is invalid + + + + + + + +
+ int below the minimum is invalid + + + + + + + +
+ ignores non-numbers + + + + + + + +
@@ -33315,36 +34099,28 @@

-

-

-
-
+
@@ -33359,25 +34135,43 @@

- + - + + + + + + + + + + @@ -33385,26 +34179,43 @@

- + - + + + + + + + + + + @@ -33420,31 +34231,29 @@

-

-

-
-
+

- with no unevaluated items + first anyOf valid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ second anyOf valid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated items + both anyOf valid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ neither anyOf valid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -33459,25 +34268,21 @@

- + - @@ -33485,25 +34290,21 @@

- + - @@ -33511,25 +34312,21 @@

- + - @@ -33545,31 +34342,24 @@

-

-

-
-
+

- with only (valid) additional items + mismatch base schema + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- with no additional items + one anyOf valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with invalid additional item + both anyOf invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -33584,43 +34374,14 @@

- - - - - - - - - - - + -
- with no additional items - - - - - - - - -
- with additional items + any value is valid +
-

-

-
-
+
@@ -33685,16 +34437,14 @@

- + - - +
- with no additional items + any value is valid +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + -
Tests + jsonoid + scala +
- with additional items + any value is invalid +
-

-

-
-
+
@@ -33798,25 +34581,23 @@

- + - @@ -33824,26 +34605,23 @@

- + - @@ -33851,26 +34629,24 @@

- + - @@ -33878,27 +34654,24 @@

- + - @@ -33914,44 +34687,26 @@

-

-

-
-
+

- when one schema matches and has no unevaluated items + first anyOf valid (complex) + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- when one schema matches and has unevaluated items + second anyOf valid (complex) + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- when two schemas match and has no unevaluated items + both anyOf valid (complex) + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- when two schemas match and has unevaluated items + neither anyOf valid (complex) + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -33966,25 +34721,21 @@

- + - @@ -33992,26 +34743,21 @@

- + - @@ -34027,36 +34773,29 @@

-

-

-
-
+

- with no unevaluated items + string is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated items + number is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -34071,25 +34810,43 @@

- + - + + + + + + + + + + @@ -34105,53 +34862,21 @@

-

-

-
-
+

- with unevaluated items + null is valid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ anything non-null is invalid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -34166,26 +34891,24 @@

- - @@ -34193,27 +34916,24 @@

- - @@ -34221,27 +34941,25 @@

- - @@ -34249,28 +34967,25 @@

- - @@ -34278,62 +34993,24 @@

-
- when if matches and it has no unevaluated items + unique array of integers is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- when if matches and it has unevaluated items + non-unique array of integers is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- when if doesn't match and it has no unevaluated items + non-unique array of more than two integers is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- when if doesn't match and it has unevaluated items + numbers are unique if mathematically unequal + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -34341,24 +35018,24 @@

- - @@ -34366,77 +35043,25 @@

-
Tests - jsonoid - scala -
- with no unevaluated items + false is not equal to zero + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated items + true is not equal to one + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - @@ -34444,13 +35069,13 @@

- @@ -34470,77 +35095,28 @@

-
Tests - jsonoid - scala -
- with no unevaluated items + unique array of strings is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated items + non-unique array of strings is invalid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - @@ -34548,13 +35124,16 @@

- @@ -34574,92 +35153,30 @@

-
Tests - jsonoid - scala -
- with no unevaluated items + unique array of objects is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated items + non-unique array of objects is invalid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -34667,26 +35184,36 @@

- - @@ -34694,70 +35221,36 @@

-
Tests - jsonoid - scala -
- with no unevaluated items + property order of array of objects is ignored + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- with unevaluated items + unique array of nested objects is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -34765,86 +35258,28 @@

-
Tests - jsonoid - scala -
- always fails + non-unique array of nested objects is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - +]`,"instance-info")'> - @@ -34852,27 +35287,28 @@

- +]`,"instance-info")'> - @@ -34880,68 +35316,31 @@

-
Tests - jsonoid - scala -
- no extra items + unique array of arrays is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- uncle keyword evaluation is not significant + non-unique array of arrays is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -34949,25 +35348,24 @@

- - @@ -34975,26 +35373,24 @@

- - @@ -35002,79 +35398,28 @@

-
Tests - jsonoid - scala -
- second item is evaluated by contains + non-unique array of more than two arrays is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- contains fails, second item is not evaluated + 1 and true are unique + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- contains passes, second item is not evaluated + 0 and false are unique + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -35082,28 +35427,28 @@

- - @@ -35111,78 +35456,34 @@

-
Tests - jsonoid - scala -
- 5 not evaluated, passes unevaluatedItems + [1] and [true] are unique + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- 7 not evaluated, fails unevaluatedItems + [0] and [false] are unique + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -35191,24 +35492,33 @@

- @@ -35217,27 +35527,29 @@

- @@ -35246,28 +35558,29 @@

- @@ -35276,24 +35589,29 @@

- @@ -35302,24 +35620,29 @@

- @@ -35328,27 +35651,27 @@

- @@ -35357,27 +35680,27 @@

- @@ -35396,11 +35719,19 @@

@@ -35422,45 +35753,24 @@

-

- - - - - - - - - - + - @@ -35468,22 +35778,24 @@

- + - @@ -35491,22 +35803,24 @@

- + - @@ -35514,22 +35828,24 @@

- + - @@ -35537,22 +35853,26 @@

- + - @@ -35560,63 +35880,26 @@

-
Tests - jsonoid - scala -
- empty array is valid + nested [1] and [true] are unique + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- only a's are valid + nested [0] and [false] are unique + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- a's and b's are valid + unique heterogeneous types are valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- a's, b's and c's are valid + non-unique heterogeneous types are invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- only b's are invalid + different objects are unique + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- only c's are invalid + objects are non-unique despite key order + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- only b's and c's are invalid + {"a": false} and {"a": 0} are unique + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- only a's and c's are invalid + {"a": true} and {"a": 1} are unique + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- ignores booleans - - - - - - - - -
- ignores integers + [false, true] from items array is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- ignores floats + [true, false] from items array is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- ignores objects + [false, false] from items array is not valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- ignores strings + [true, true] from items array is not valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- ignores null + unique array extended from [false, true] is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -35624,68 +35907,26 @@

-
Tests - jsonoid - scala -
- allows null elements + unique array extended from [true, false] is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -35693,24 +35934,26 @@

- - @@ -35726,28 +35969,30 @@

-

-

-
-
+

Tests - jsonoid - scala -
- valid in case if is evaluated + non-unique array extended from [false, true] is not valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- invalid in case if is evaluated + non-unique array extended from [true, false] is not valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -35762,12 +36007,12 @@

- + @@ -35787,12 +36032,12 @@

- + @@ -35801,10 +36046,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -35812,12 +36057,12 @@

- + @@ -35837,39 +36082,18 @@

- - - - - - - - - - - + - +
- both properties present and valid is valid + [false, true] from items array is valid
- one property invalid is invalid + [true, false] from items array is valid
- both properties invalid is invalid + [false, false] from items array is not valid
- doesn't invalidate other properties - - - - - - - -
- ignores arrays + [true, true] from items array is not valid + class="text-center ">
- ignores other non-objects + extra items are invalid even if unique + class="text-center ">
-

-

-
-
+
@@ -35958,27 +36170,24 @@

- + - @@ -35986,29 +36195,24 @@

- + - @@ -36016,24 +36220,25 @@

- + - @@ -36041,27 +36246,24 @@

- + - @@ -36069,24 +36271,24 @@

- + - @@ -36094,24 +36296,28 @@

- + - @@ -36119,24 +36325,28 @@

- + - @@ -36144,24 +36354,36 @@

- + - @@ -36169,49 +36391,24 @@

-
- property validates property + unique array of integers is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- property invalidates property + non-unique array of integers is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- patternProperty invalidates property + numbers are unique if mathematically unequal + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- patternProperty validates nonproperty + false is not equal to zero + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- patternProperty invalidates nonproperty + true is not equal to one + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- additionalProperty ignores property + unique array of objects is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- additionalProperty validates others + non-unique array of objects is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- additionalProperty invalidates others + unique array of nested objects is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - +]`,"instance-info")'> @@ -36231,11 +36428,16 @@

- + @@ -36255,17 +36457,22 @@

- + - + -
Tests - jsonoid - scala -
- no property present is valid + non-unique array of nested objects is valid
- only 'true' property present is valid + unique array of arrays is valid
- only 'false' property present is invalid + non-unique array of arrays is valid + class="text-center ">
- both properties present is invalid + 1 and true are unique + class="text-center ">
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -36389,16 +36536,17 @@

- + @@ -36407,10 +36555,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -36418,52 +36566,18 @@

-
Tests - jsonoid - scala -
- object with all numbers is valid + 0 and false are unique
- object with strings is invalid + unique heterogeneous types are valid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -36491,35 +36605,29 @@

-

-

-
-
+

Tests - jsonoid - scala -
- allows null values + non-unique heterogeneous types are valid
@@ -36534,21 +36642,24 @@

- + @@ -36556,21 +36667,24 @@

- + @@ -36578,9 +36692,12 @@

- + @@ -36600,11 +36717,12 @@

- + @@ -36613,10 +36731,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -36624,19 +36742,20 @@

- + - + - + - - - - -
- ignores arrays + [false, true] from items array is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- ignores other non-objects + [true, false] from items array is valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- none of the properties mentioned + [false, false] from items array is valid
- __proto__ not valid + [true, true] from items array is valid
- toString not valid + unique array extended from [false, true] is valid + class="text-center text-bg-danger">
- constructor not valid + unique array extended from [true, false] is valid + class="text-center text-bg-danger">
- all present and valid + non-unique array extended from [false, true] is valid - - - - - - -
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - - - - - @@ -36765,24 +36823,26 @@

- + - @@ -36798,25 +36858,30 @@

-

-

-
-
+

Tests - jsonoid - scala -
- with no unevaluated properties - + class="text-center text-bg-danger"> - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- with unevaluated properties + non-unique array extended from [true, false] is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -36831,47 +36896,24 @@

- - - - - - - - - - - + - @@ -36879,24 +36921,24 @@

- + - @@ -36904,60 +36946,24 @@

-
- with no unevaluated properties - - - - - - - - -
- with valid unevaluated properties + [false, true] from items array is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with invalid unevaluated properties + [true, false] from items array is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -36965,24 +36971,50 @@

- + - + + + + + + + + + + @@ -36998,27 +37030,27 @@

-

-

-
-
+

Tests - jsonoid - scala -
- with no unevaluated properties + [false, false] from items array is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated properties + [true, true] from items array is valid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ extra items are invalid even if unique + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -37033,24 +37065,23 @@

- - @@ -37058,25 +37089,47 @@

- - + + + + + + + + + + @@ -37092,27 +37145,21 @@

- with no unevaluated properties + applicator vocabulary still works + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated properties + no validation: valid number + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ no validation: invalid number, but it still validates + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -37127,24 +37174,21 @@

- + - @@ -37152,25 +37196,21 @@

- + - @@ -37186,28 +37226,21 @@

-

-

-
-
+

- with no unevaluated properties + string value + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- with unevaluated properties + number value + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -37222,24 +37255,23 @@

- - @@ -37247,25 +37279,24 @@

- - @@ -37273,77 +37304,25 @@

-
- with no additional properties + shorter is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with additional properties + exact length is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -37351,26 +37330,25 @@

- + - @@ -37378,77 +37356,21 @@

-
Tests - jsonoid - scala -
- with no additional properties + too long is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with additional properties + ignores arrays + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -37456,26 +37378,21 @@

- + - @@ -37491,32 +37408,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
- with no additional properties + ignores strings + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- with additional properties + ignores other non-objects + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -37531,24 +37437,23 @@

- - @@ -37556,25 +37461,25 @@

- - @@ -37590,35 +37495,21 @@

-

-

-
-
+

- with no additional properties + shorter is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with additional properties + too long is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -37633,50 +37524,45 @@

- + - - - - @@ -37692,59 +37578,28 @@

-

-

-
-
+

- with no nested unevaluated properties + no properties is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with nested unevaluated properties + one property is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -37759,25 +37614,21 @@

- + - @@ -37785,26 +37636,21 @@

- + - @@ -37812,26 +37658,21 @@

- + - @@ -37839,27 +37680,21 @@

- + - @@ -37875,49 +37710,29 @@

-

-

-
-
+

- when one matches and has no unevaluated properties + first oneOf valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- when one matches and has unevaluated properties + second oneOf valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- when two match and has no unevaluated properties + both oneOf valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- when two match and has unevaluated properties + neither oneOf valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -37932,25 +37747,21 @@

- + - @@ -37958,26 +37769,43 @@

- + - + + + + + + + + + + @@ -37993,39 +37821,25 @@

-

-

-
-
+

- with no unevaluated properties + mismatch base schema + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- with unevaluated properties + one oneOf valid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ both oneOf valid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -38040,17 +37854,14 @@

- + -
- with unevaluated properties + any value is invalid +
-

-

-
-
+
@@ -38134,95 +37918,14 @@

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + -
- when if is true and has no unevaluated properties - - - - - - - - -
- when if is true and has unevaluated properties - - - - - - - - -
- when if is false and has no unevaluated properties - - - - - - - - -
- when if is false and has unevaluated properties + any value is valid +
-

-

-
- + +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - - + + + + + - + - + +
Tests
+ jsonoid + scala +
- when if is false and has unevaluated properties + any value is invalid +
-

-

-
-
+
@@ -38458,25 +38127,23 @@

- - @@ -38484,26 +38151,23 @@

- - @@ -38511,24 +38175,24 @@

- - @@ -38536,25 +38200,24 @@

- - @@ -38570,39 +38233,26 @@

-

-

-
-
+

- when if is true and has no unevaluated properties + first oneOf valid (complex) + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- when if is true and has unevaluated properties + second oneOf valid (complex) + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- when if is false and has no unevaluated properties + both oneOf valid (complex) + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- when if is false and has unevaluated properties + neither oneOf valid (complex) + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -38617,25 +38267,21 @@

- + - @@ -38643,24 +38289,21 @@

- + - @@ -38676,30 +38319,35 @@

-

-

-
-
+

- with no unevaluated properties + one valid - valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated properties + both valid - invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -38714,24 +38362,48 @@

- - + + + + + + + + + + @@ -38739,24 +38411,50 @@

- - + + + + + + + + + + @@ -38772,37 +38470,39 @@

-

-

-
-
+

- with no unevaluated properties + both invalid - invalid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ first valid - valid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated properties + second valid - valid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ both valid - invalid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -38817,24 +38517,23 @@

- @@ -38842,13 +38541,11 @@

- @@ -38857,10 +38554,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -38868,71 +38565,18 @@

-
- with no unevaluated properties + first oneOf valid + class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated properties + second oneOf valid
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -38980,50 +38622,29 @@

-

-

-
-
+

Tests - jsonoid - scala -
- with no unevaluated properties + both oneOf valid + class="text-center ">
- with unevaluated properties + neither oneOf valid
@@ -39038,25 +38659,21 @@

- + - @@ -39064,26 +38681,21 @@

- + - @@ -39099,30 +38711,21 @@

-

-

-
-
+

- with no unevaluated properties + null is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with unevaluated properties + anything non-null is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -39137,24 +38740,24 @@

- + - @@ -39162,70 +38765,67 @@

-
- always fails + longer is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + - + + + + + + + + + + @@ -39241,32 +38841,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ exact length is valid + -
- always fails + too short is invalid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> + + +
+ ignores non-arrays + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -39281,24 +38870,24 @@

- + - @@ -39306,25 +38895,21 @@

- + - @@ -39340,32 +38925,27 @@

-

-

-
-
+

- with no nested unevaluated properties + longer is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with nested unevaluated properties + too short is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -39380,24 +38960,23 @@

- - @@ -39405,25 +38984,23 @@

- - @@ -39431,72 +39008,43 @@

-
- with no nested unevaluated properties + present required property is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with nested unevaluated properties + non-present required property is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + - + - @@ -39504,25 +39052,21 @@

- + - @@ -39538,32 +39082,23 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ ignores arrays + -
- with no nested unevaluated properties + ignores strings + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- with nested unevaluated properties + ignores other non-objects + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -39578,24 +39113,21 @@

- + - @@ -39603,68 +39135,98 @@

- +
- with no nested unevaluated properties + not required by default + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - - - - - -
Tests + jsonoid + scala +
- with nested unevaluated properties + property not required + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
-
-
- -
- -
- -

-

+
+
+ +
+ +
+ +

+

-
-
+
@@ -39679,24 +39241,28 @@

- - @@ -39704,25 +39270,24 @@

- - @@ -39738,34 +39303,25 @@

-

-

-
-
+

- with no nested unevaluated properties + object with all properties present is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- with nested unevaluated properties + object with some properties missing is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -39780,24 +39336,21 @@

- + - @@ -39805,25 +39358,21 @@

- + - @@ -39831,87 +39380,21 @@

-
- with no nested unevaluated properties + ignores arrays + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- with nested unevaluated properties + ignores other non-objects + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + - @@ -39919,27 +39402,23 @@

- - @@ -39947,77 +39426,25 @@

-
Tests - jsonoid - scala -
- no extra properties + none of the properties mentioned + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- uncle keyword evaluation is not significant + __proto__ present + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - - @@ -40025,24 +39452,25 @@

- - @@ -40050,24 +39478,27 @@

- - @@ -40083,36 +39514,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
- base case: both properties present + toString present + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- in place applicator siblings, bar is missing + constructor present + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- in place applicator siblings, foo is missing + all present + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -40127,18 +39543,15 @@

- + - + - + @@ -40208,27 +39617,21 @@

-

-

-
-
+

- base case: both properties present + a valid JSON document + class="text-center ">
- in place applicator siblings, bar is missing + an invalid JSON document; validates true + class="text-center ">
- in place applicator siblings, foo is missing + ignores non-strings
@@ -40243,22 +39646,21 @@

- + - @@ -40266,24 +39668,21 @@

- + - @@ -40291,25 +39690,21 @@

- + - @@ -40317,26 +39712,59 @@

- +
- Empty is valid + a valid base64 string + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- Single is valid + an invalid base64 string (% is not a valid character); validates true + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- Unevaluated on 1st level is invalid + ignores non-strings + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -40344,27 +39772,21 @@

- + - @@ -40372,28 +39794,21 @@

- + - @@ -40401,29 +39816,21 @@

- + - @@ -40439,61 +39846,33 @@

-

-

-
-
+

Tests + jsonoid + scala +
- Nested is valid + a valid base64-encoded JSON document + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- Unevaluated on 2nd level is invalid + a validly-encoded invalid JSON document; validates true + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- Deep nested is valid + an invalid base64 string that is valid JSON; validates true + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- Unevaluated on 3rd level is invalid + ignores non-strings + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -40508,22 +39887,21 @@

- + - @@ -40531,25 +39909,21 @@

- + - @@ -40557,25 +39931,21 @@

- + - @@ -40583,25 +39953,21 @@

- + - @@ -40609,25 +39975,21 @@

- + - @@ -40635,26 +39997,21 @@

- + - @@ -40662,26 +40019,21 @@

- + - @@ -40689,27 +40041,21 @@

- + - @@ -40725,85 +40071,21 @@

-

-

-
-
+

- Empty is invalid (no x or y) + a valid base64-encoded JSON document + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- a and b are invalid (no x or y) + another valid base64-encoded JSON document + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- x and y are invalid + an invalid base64-encoded JSON document; validates true + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- a and x are valid + an empty object as a base64-encoded JSON document; validates true + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- a and y are valid + an empty array as a base64-encoded JSON document + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- a and b and x are valid + a validly-encoded invalid JSON document; validates true + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- a and b and y are valid + an invalid base64 string that is valid JSON; validates true + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- a and b and x and y are invalid + ignores non-strings + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -40818,22 +40100,23 @@

- + - @@ -40841,24 +40124,21 @@

- + - @@ -40866,36 +40146,49 @@

- - - - - -
- Empty is invalid + one item valid against lone minContains + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- a is valid + zero items still valid against lone minContains + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- b is valid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - - + + + + + - + @@ -40916,11 +40209,11 @@

- + @@ -40941,12 +40234,11 @@

- + @@ -40967,12 +40259,12 @@

- + @@ -40993,12 +40285,12 @@

- + @@ -41019,38 +40311,49 @@

- - - - - -
Tests
+ jsonoid + scala +
- c is valid + empty data
- d is valid + no elements match
- a + b is invalid + single element matches, valid minContains
- a + c is invalid + some elements match, valid minContains
- a + d is invalid + all elements match, valid minContains
- b + c is invalid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - - + + + + + - + @@ -41071,12 +40374,11 @@

- + @@ -41097,11 +40399,12 @@

- + @@ -41122,12 +40425,12 @@

- + @@ -41145,15 +40448,16 @@

- -

- - + + + + @@ -41174,12 +40478,13 @@

- + @@ -41200,12 +40505,51 @@

- +
Tests
+ jsonoid + scala +
- b + d is invalid + empty data
- c + d is invalid + all elements match, invalid minContains
- xx is valid + some elements match, invalid minContains
- xx + foox is valid + all elements match, valid minContains (exactly as needed)
- xx + foo is invalid + all elements match, valid minContains (more than needed)
- xx + a is invalid + some elements match, valid minContains
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -41226,12 +40570,12 @@

- + @@ -41252,12 +40596,50 @@

- +
Tests + jsonoid + scala +
- xx + b is invalid + one element matches, invalid minContains
- xx + c is invalid + both elements match, valid minContains
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -41278,11 +40660,11 @@

- + @@ -41303,12 +40685,13 @@

- + @@ -41329,12 +40712,12 @@

- + @@ -41363,21 +40746,25 @@

-

-

-
-
+

Tests + jsonoid + scala +
- xx + d is invalid + empty data
- all is valid + all elements match, invalid minContains
- all + foo is valid + all elements match, invalid maxContains
- all + a is invalid + all elements match, valid maxContains and minContains
@@ -41392,9 +40779,9 @@

- + @@ -41415,9 +40802,11 @@

- + @@ -41438,9 +40827,13 @@

- + @@ -41461,9 +40854,12 @@

- + @@ -41484,9 +40880,49 @@

- +
- ignores booleans + empty data
- ignores integers + invalid minContains
- ignores floats + invalid maxContains
- ignores arrays + invalid maxContains and minContains
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + @@ -41507,9 +40943,11 @@

- + @@ -41538,23 +40976,25 @@

-

-

-
-
+

Tests + jsonoid + scala +
- ignores strings + empty data
- ignores null + minContains = 0 makes contains always pass
@@ -41569,11 +41009,9 @@

- + @@ -41594,53 +41032,11 @@

-
- allows null valued properties + empty data
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - + @@ -41661,11 +41057,12 @@

- + @@ -41694,28 +41091,25 @@

-

-

-
-
+

Tests - jsonoid - scala -
- allows only number properties + not more than maxContains
- string property is invalid + too many
@@ -41730,24 +41124,21 @@

- + - @@ -41755,24 +41146,21 @@

- + - @@ -41788,32 +41176,29 @@

-

-

-
-
+

- valid in case if is evaluated + one of the enum is valid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
- invalid in case if is evaluated + something else is invalid + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -41828,24 +41213,43 @@

- + - + + + + + + + + + + @@ -41853,24 +41257,23 @@

- - @@ -41878,25 +41281,48 @@

- - + + + + + + + + + + @@ -41912,21 +41338,24 @@

-

-

-
-
+

- unevaluatedProperties doesn't consider dependentSchemas + one of the enum is valid + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ something else is invalid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- unevaluatedProperties doesn't see bar when foo2 is absent + objects are deep compared + - - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- unevaluatedProperties sees bar when foo2 is present + valid object matches + - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> + + +
+ extra properties in object is invalid + + + + + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
@@ -41941,9 +41370,9 @@

- + @@ -41963,9 +41392,9 @@

- + @@ -41974,10 +41403,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -41985,9 +41414,9 @@

- + @@ -42015,24 +41444,36 @@

-

-

-
-
+

- same value is valid + null is valid
- another value is invalid + number is valid
- another type is invalid + something else is invalid
@@ -42047,12 +41488,12 @@

- @@ -42072,12 +41513,61 @@

- + + + + + + + + + + + + + + + + + + + + @@ -42097,11 +41587,11 @@

- @@ -42121,12 +41611,9 @@

- + @@ -42154,25 +41641,24 @@

-

-

-
-
+

- same object is valid + both properties are valid
- same object with different property order is valid + wrong foo value + + + + + + + +
+ wrong bar value + + + + + + + +
+ missing optional property is valid
- another object is invalid + missing required property is invalid
- another type is invalid + missing all properties is invalid
@@ -42187,13 +41673,9 @@

- + @@ -42213,11 +41695,9 @@

- + @@ -42226,10 +41706,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -42237,13 +41717,9 @@

- + @@ -42271,21 +41747,23 @@

-

-

-
-
+

- same array is valid + member 1 is valid
- another array item is invalid + member 2 is valid
- array with additional items is invalid + another string is invalid
@@ -42300,9 +41778,9 @@

- + @@ -42322,9 +41800,31 @@

- + + + + + + + + + + + @@ -42352,21 +41852,25 @@

-

-

-
-
+

- null is valid + false is valid
- not null is invalid + integer zero is invalid + + + + + + + +
+ float zero is invalid
@@ -42381,9 +41885,11 @@

- + @@ -42403,9 +41909,11 @@

- + @@ -42425,9 +41933,11 @@

- + @@ -42455,21 +41965,23 @@

-

-

-
-
+

- false is valid + [false] is valid
- integer zero is invalid + [0] is invalid
- float zero is invalid + [0.0] is invalid
@@ -42484,7 +41996,7 @@

- + @@ -42506,7 +42018,7 @@

- + @@ -42528,7 +42040,7 @@

- + @@ -42558,23 +42070,25 @@

-

-

-
-
+

true is valid
integer one is invalid
float one is invalid
@@ -42589,11 +42103,11 @@

- @@ -42613,11 +42127,11 @@

- @@ -42637,11 +42151,11 @@

- @@ -42669,23 +42183,23 @@

-

-

-
-
+

- [false] is valid + [true] is valid
- [0] is invalid + [1] is invalid
- [0.0] is invalid + [1.0] is invalid
@@ -42700,11 +42214,9 @@

- + @@ -42713,10 +42225,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -42724,11 +42236,9 @@

- + @@ -42737,10 +42247,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -42748,17 +42258,15 @@

- +
- [true] is valid + false is invalid
- [1] is invalid + integer zero is valid
- [1.0] is invalid + float zero is valid + class="text-center text-bg-danger">
-

-

-
-
+
@@ -42811,11 +42321,11 @@

- + @@ -42824,10 +42334,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -42835,11 +42345,11 @@

- + @@ -42848,10 +42358,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -42859,17 +42369,17 @@

- +
- {"a": false} is valid + [false] is invalid
- {"a": 0} is invalid + [0] is valid
- {"a": 0.0} is invalid + [0.0] is valid + class="text-center text-bg-danger">
-

-

-
-
+
@@ -42922,11 +42432,9 @@

- + @@ -42935,10 +42443,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" /> @@ -42946,11 +42454,9 @@

- + @@ -42959,10 +42465,10 @@

class="text-center "> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /> @@ -42970,17 +42476,15 @@

- +
- {"a": true} is valid + true is invalid
- {"a": 1} is invalid + integer one is valid
- {"a": 1.0} is invalid + float one is valid + class="text-center text-bg-danger">
-

-

-
-
+
@@ -43031,9 +42539,11 @@

- + @@ -43053,9 +42563,11 @@

- + @@ -43075,9 +42587,11 @@

- + @@ -43097,9 +42611,70 @@

- +
- false is invalid + [true] is invalid
- integer zero is valid + [1] is valid
- float zero is valid + [1.0] is valid
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + @@ -43119,15 +42694,58 @@

- +
Tests + jsonoid + scala +
- empty object is invalid + match string with nul + + + + + + + +
+ do not match string lacking nul
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - + @@ -43171,21 +42789,28 @@

Tests + jsonoid + scala +
- empty array is invalid + match + class="text-center text-bg-danger">
- empty string is invalid + mismatch
@@ -43200,15 +42825,15 @@

- + - + @@ -43233,28 +42858,6 @@

class="text-center "> - - - - - - - -

- - - - - - -
- true is invalid + match + class="text-center text-bg-danger">
- integer one is valid + mismatch
- float one is valid - - -
-

-

-
-
+
@@ -43303,9 +42918,9 @@

- + @@ -43325,9 +42940,9 @@

- + @@ -43347,37 +42962,69 @@

- - - - - -
- integer -2 is valid + match
- integer 2 is invalid + mismatch
- float -2.0 is valid - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + - + @@ -43421,21 +43068,21 @@

-

-

-
-
+

Tests
+ jsonoid + scala +
- float 2.0 is invalid + $ref resolves to /$defs/A/allOf/1 + class="text-center text-bg-danger">
- float -2.00001 is invalid + $ref does not resolve to /$defs/A/allOf/0
@@ -43450,15 +43097,64 @@

- + + + + + + + + + + + + + + + + + + + + + - + - + @@ -43516,15 +43212,15 @@

- +
+ longer is valid + + + + + + + +
+ exact length is valid + + + + + + + +
- integer is valid + too short is invalid + class="text-center text-bg-danger">
- integer minus one is invalid + ignores arrays + class="text-center text-bg-danger">
- float is valid + ignores strings
- float minus one is invalid + ignores other non-objects + class="text-center text-bg-danger">
-

-

-
-
+
@@ -43575,9 +43271,12 @@

- + @@ -43597,21 +43296,21 @@

- + @@ -43627,21 +43326,21 @@

-

-

-
-
+

- match string with nul + longer is valid
- do not match string lacking nul + too short is invalid + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
@@ -43656,21 +43355,22 @@

- + - @@ -43678,21 +43378,24 @@

- + - @@ -43700,21 +43403,59 @@

- +
- above the exclusiveMinimum is valid + with no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- boundary point is invalid + with unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -43722,21 +43463,24 @@

- + - @@ -43752,23 +43496,23 @@

-

-

-
-
+

Tests + jsonoid + scala +
- below the exclusiveMinimum is invalid + with no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- ignores non-numbers + with unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -43783,25 +43527,22 @@

- + - @@ -43809,48 +43550,24 @@

- - - - - - - - - - - - @@ -43858,24 +43575,24 @@

- + - @@ -43891,21 +43608,24 @@

-

-

-
-
+

- valid items + with no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- wrong type of items + with valid unevaluated items + - - - -
- ignores non-arrays - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
- JavaScript pseudo-array is valid + with invalid unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -43920,47 +43640,25 @@

- - - - - - - - - - - - @@ -43976,21 +43674,26 @@

-

-

-
-
+

- any array is valid + unevaluatedItems doesn't apply + - - - -
- empty array is valid - - - - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + d="M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z" />
@@ -44005,25 +43708,24 @@

- - @@ -44031,21 +43733,25 @@

- + - @@ -44061,53 +43767,27 @@

-

-

-
-
+

- any non-empty array is invalid + with no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- empty array is valid + with unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -44122,46 +43802,25 @@

- - @@ -44169,104 +43828,69 @@

- - - - - -
- valid items + unevaluatedItems doesn't apply + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- too many items - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - - @@ -44274,41 +43898,26 @@

- - @@ -44316,44 +43925,77 @@

- + + unevaluatedItems with nested tuple + + + + +
+
+
Tests
+ jsonoid + scala +
- too many sub-items + valid under items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- wrong item + invalid under items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
+ + + + + + + + + + + - @@ -44361,32 +44003,26 @@

- - @@ -44402,33 +44038,31 @@

-

-

-
-
+

Tests + jsonoid + scala +
- wrong sub-item + with no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- fewer items is valid + with unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -44443,50 +44077,25 @@

- - @@ -44494,50 +44103,25 @@

- - @@ -44545,44 +44129,25 @@

- - @@ -44598,26 +44163,31 @@

-

-

-
-
+

- valid nested array + with only (valid) additional items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- nested array with invalid type + with no additional items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- not deep enough + with invalid additional item + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -44632,21 +44202,24 @@

- + - @@ -44654,23 +44227,26 @@

- - @@ -44678,50 +44254,73 @@

- - - - - -
- empty array + with no additional items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- fewer number of items present (1) + with additional items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- fewer number of items present (2) - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - @@ -44730,25 +44329,25 @@

- @@ -44767,22 +44366,35 @@

@@ -44805,23 +44417,24 @@

- @@ -44830,23 +44443,25 @@

- @@ -44854,57 +44469,13 @@

-
Tests
+ jsonoid + scala +
- equal number of items present + with no additional items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- additional items are not permitted + with additional items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- prefixItems in allOf does not constrain items, invalid case + when one schema matches and has no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- prefixItems in allOf does not constrain items, valid case + when one schema matches and has unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - - - - - - - @@ -44925,12 +44496,14 @@

- @@ -44959,24 +44532,44 @@

-

-

-
-
+

Tests - jsonoid - scala -
- valid items + when two schemas match and has no unevaluated items
- wrong type of second item + when two schemas match and has unevaluated items
@@ -44991,25 +44584,25 @@

- - @@ -45017,23 +44610,26 @@

- - @@ -45049,23 +44645,36 @@

-

-

-
-
+

- heterogeneous invalid instance + with no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- valid instance + with unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -45080,23 +44689,25 @@

- - @@ -45112,42 +44723,53 @@

-

-

-
-
+

- allows null elements + with unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -45162,24 +44784,26 @@

- + - @@ -45187,23 +44811,27 @@

- + - @@ -45211,23 +44839,27 @@

- + - @@ -45235,24 +44867,28 @@

- + - @@ -45268,50 +44904,24 @@

-

-

-
-
+

- allOf + when if matches and it has no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- mismatch second + when if matches and it has unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- mismatch first + when if doesn't match and it has no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- wrong type + when if doesn't match and it has unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -45326,25 +44936,22 @@

- + - @@ -45352,24 +44959,24 @@

- + - @@ -45377,43 +44984,71 @@

- - - - - -
- valid + with no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- mismatch base schema + with unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- mismatch first allOf - +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + - - - - - - - - - + + + + + - + - + @@ -45461,19 +45098,28 @@

@@ -45495,21 +45141,24 @@

-

+ @@ -45517,9 +45166,13 @@

- + @@ -45549,15 +45202,42 @@

@@ -45579,21 +45259,52 @@

-

+ - + + + + + + + + + + @@ -45613,13 +45324,19 @@

@@ -45641,21 +45358,24 @@

-

+ - @@ -45674,14 +45394,34 @@

@@ -45703,21 +45443,54 @@

-

+ - + + + + + + + + + + @@ -45736,13 +45509,17 @@

@@ -45764,21 +45541,78 @@

-

+ - + + + + + + + + + + + + + + + + + + + + @@ -45798,13 +45632,24 @@

@@ -45826,21 +45671,57 @@

-

+ - + + + + + + + + + + @@ -45859,16 +45740,30 @@

@@ -45890,21 +45785,22 @@

-

+ - @@ -45912,21 +45808,25 @@

- + - @@ -45934,63 +45834,58 @@

-
Tests
+ jsonoid + scala +
- mismatch second allOf + with no unevaluated items + class="text-center text-bg-danger">
- mismatch both + with unevaluated items
- valid + with no unevaluated items + class="text-center text-bg-danger"> - + d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z" />
- mismatch one + with unevaluated items
- any value is valid + with no unevaluated items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + + + +
+ with unevaluated items + + + + + +
- any value is invalid + always fails + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- any value is invalid + no extra items + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + + + +
+ uncle keyword evaluation is not significant + + + + + +
- any data is valid + second item is evaluated by contains + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + + + +
+ contains fails, second item is not evaluated + + + + + + + + +
+ contains passes, second item is not evaluated + + + + + +
- any data is valid + 5 not evaluated, passes unevaluatedItems + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + + + +
+ 7 not evaluated, fails unevaluatedItems + + + + + +
- number is valid + empty array is valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- string is invalid + only a's are valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + + - + - @@ -45998,21 +45893,25 @@

- + - @@ -46020,66 +45919,54 @@

-
Tests - jsonoid - scala -
+ a's and b's are valid + -
- number is valid + a's, b's and c's are valid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- string is invalid + only b's are invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
-
-
- -
- -
- -

- -

- -
-
- - - - - - + + + + + + - - + + + + + + + + + + - + - @@ -46087,21 +45974,28 @@

- + - @@ -46117,35 +46011,21 @@

-

-

-
-
+

Tests - jsonoid - scala -
+ only c's are invalid + -
- null is valid + only b's and c's are invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- anything non-null is invalid + only a's and c's are invalid + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
@@ -46160,21 +46040,22 @@

- + - @@ -46182,21 +46063,22 @@

- + - @@ -46204,21 +46086,22 @@

- + - @@ -46226,21 +46109,22 @@

- + - @@ -46248,21 +46132,22 @@

- + - @@ -46270,21 +46155,86 @@

- + - + + + + +
- allOf: false, anyOf: false, oneOf: false + ignores booleans + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- allOf: false, anyOf: false, oneOf: true + ignores integers + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- allOf: false, anyOf: true, oneOf: false + ignores floats + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- allOf: false, anyOf: true, oneOf: true + ignores objects + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- allOf: true, anyOf: false, oneOf: false + ignores strings + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- allOf: true, anyOf: false, oneOf: true + ignores null + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> + + + +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + + + + + + @@ -46292,21 +46242,68 @@

- +
Tests + jsonoid + scala +
+ allows null elements + + + + + +
+
+
+ +
+ +
+ +

+ +

+ +
+
+ + + + + + + + + + + + - @@ -46314,21 +46311,24 @@

- + - @@ -46370,14 +46370,168 @@

+
+
+
+
a schema given for prefixItems
+

incomplete array of items

+
+ +
+
+ + + + +
+
+
+
a schema given for prefixItems
+

array with additional items

+
+ +
+
+ + + + +
+
+
+
a schema given for prefixItems
+

empty array

+
+ +
+
+ + + + +
+
+
+
a schema given for prefixItems
+

JavaScript pseudo-array is valid

+
+ +
+
+ + + + + + +
+
+
+
prefixItems with boolean schemas
+

array with one item is valid

+
+ +
+
+ + + + + + + +
+
+
+
prefixItems with boolean schemas
+

empty array is valid

+
+ +
+
+ + + + + + +
+
+
+
additional items are allowed by default
+

only the first item is validated

+
+ +
+
+ + + + + + + + + + + +
+
+
+
root pointer ref
+

match

+
+ +
+
+ + + + +
+
+
+
root pointer ref
+

recursive match

+
+ +
+
+ + + + + + + + +
-
maxLength validation
-

ignores non-strings

+
relative pointer ref to object
+

match

Tests + jsonoid + scala +
- allOf: true, anyOf: true, oneOf: false + valid in case if is evaluated + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +
- allOf: true, anyOf: true, oneOf: true + invalid in case if is evaluated + - + d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z" /> +