Generated on Monday, January 12, 2015 in 197.08 minutes
z-schema-3 z-schema-2 jayschema jjv jsonschema tv4 json-model mc-schema
basicObject 17% (24120) 3% (5189) 0% (366) 3% (5167) 0% (533) 12% (17623) 29% (42173) 100% (140758)
advancedObject 14% (2680) 6% (1142) 0% (42) 7% (1460) 0% (135) 0% (179) 36% (6900) 100% (18784)
additionalItems as schema, additional items match schema 11% (140695) 3% (38621) 0% (960) 2% (34483) 0% (2582) 7% (95979) 21% (256992) 100% (1222412)
additionalItems as schema, additional items do not match schema 3% (76185) 1% (32630) 0% (929) 2% (41241) 0% (2532) 0% (2469) 13% (260713) 100% (1934538)
items is schema, no additionalItems, all items match schema 5% (180927) 2% (70123) 0% (1271) 1% (33534) 0% (2882) 2% (90194) 6% (211902) 100% (3135646)
array of items with no additionalItems, no additional items present 6% (231894) 1% (59093) 0% (1284) 1% (53731) 0% (4250) 2% (108631) 12% (442948) 100% (3665819)
array of items with no additionalItems, additional items are not permitted 6% (217681) 1% (67071) 0% (1204) 1% (56203) 0% (4309) 0% (2514) 12% (436572) 100% (3485970)
additionalItems as false without items, items defaults to empty schema so everything is valid 16% (694542) 5% (247781) 0% (1267) 17% (742436) 0% (17976) 3% (151833) 19% (823112) 100% (4257418)
additionalItems as false without items, ignores non-arrays 6% (399265) 1% (118208) 0% (1461) 8% (560684) 0% (18515) 1% (115020) 14% (930869) 100% (6466971)
additionalItems are allowed by default, only the first item is validated 14% (348524) 2% (51141) 0% (1299) 4% (112734) 0% (6922) 5% (124247) 27% (636412) 100% (2335342)
additionalProperties being false does not allow other properties, no additional properties is valid 25% (115062) 5% (27058) 0% (1110) 16% (74554) 1% (4864) 11% (51588) 80% (370204) 100% (457550)
additionalProperties being false does not allow other properties, an additional property is invalid 23% (78974) 7% (23325) 0% (1063) 12% (42229) 1% (4715) 0% (2289) 59% (198719) 100% (332840)
additionalProperties being false does not allow other properties, ignores non-objects 8% (582379) 2% (191744) 0% (1352) 8% (561729) 0% (5069) 1% (79478) 14% (965277) 100% (6713531)
additionalProperties being false does not allow other properties, patternProperties are not additional properties 27% (86747) 13% (42683) 0% (976) 14% (45776) 1% (3982) 11% (36557) 61% (191404) 100% (312292)
additionalProperties allows a schema which should validate, no additional properties is valid 13% (242241) 1% (30604) 0% (1041) 5% (104262) 0% (4741) 4% (80607) 21% (394254) 100% (1797039)
additionalProperties allows a schema which should validate, an additional valid property is valid 17% (153915) 5% (51312) 0% (1139) 4% (42862) 0% (3665) 7% (64072) 19% (174345) 100% (881654)
additionalProperties allows a schema which should validate, an additional invalid property is invalid 7% (67417) 2% (25431) 0% (1111) 5% (48173) 0% (3662) 0% (2488) 16% (144889) 100% (899581)
additionalProperties can exist by itself, an additional valid property is valid 21% (306630) 6% (86375) 0% (1225) 7% (103968) 0% (6597) 6% (91075) 19% (271689) 100% (1401028)
additionalProperties can exist by itself, an additional invalid property is invalid 7% (86574) 1% (20549) 0% (1129) 11% (128987) 0% (6270) 0% (2260) 18% (217301) 100% (1161332)
additionalProperties are allowed by default, additional properties are allowed 15% (171761) 2% (29897) 0% (1297) 6% (67090) 0% (5652) 6% (74726) 35% (386634) 100% (1092347)
allOf, allOf 17% (84657) 5% (24951) 0% (803) 7% (33797) 0% (4037) 9% (43218) 67% (324903) 100% (477948)
allOf, mismatch second 15% (74223) 5% (25877) 0% (780) 31% (154620) 1% (6043) 0% (2530) 77% (381663) 100% (492794)
allOf, mismatch first 16% (121193) 5% (37368) 0% (818) 7% (52405) 0% (3949) 0% (2492) 49% (368274) 100% (745531)
allOf, wrong type 15% (55394) 5% (21501) 0% (796) 24% (90507) 1% (5596) 0% (2530) 79% (292392) 100% (368596)
allOf with base schema, valid 25% (62244) 8% (21535) 0% (623) 9% (23870) 1% (2709) 12% (30251) 100% (239468) 95% (229007)
allOf with base schema, mismatch base schema 16% (51845) 8% (26392) 0% (702) 10% (32279) 0% (3021) 0% (2096) 98% (307585) 100% (313669)
allOf with base schema, mismatch first allOf 21% (72021) 5% (19227) 0% (676) 49% (163694) 1% (4057) 0% (2475) 91% (299247) 100% (328748)
allOf with base schema, mismatch second allOf 17% (102635) 2% (13854) 0% (638) 7% (41558) 0% (2714) 0% (2314) 50% (291691) 100% (580344)
allOf with base schema, mismatch both 19% (109597) 5% (29910) 0% (656) 29% (168127) 0% (3987) 0% (2478) 58% (327768) 100% (563235)
allOf simple types, valid 5% (222175) 1% (41656) 0% (1113) 2% (79844) 0% (13309) 3% (119166) 13% (524769) 100% (3756335)
allOf simple types, mismatch one 4% (101212) 2% (61708) 0% (972) 6% (140607) 0% (10795) 0% (2707) 21% (504601) 100% (2336816)
anyOf, first anyOf valid 3% (77247) 1% (26741) 0% (1169) 4% (114055) 0% (10383) 4% (96376) 5% (136667) 100% (2380045)
anyOf, second anyOf valid 6% (281898) 1% (70203) 0% (1091) 1% (86256) 0% (9797) 0% (2495) 3% (176115) 100% (4487796)
anyOf, both anyOf valid 5% (299498) 1% (63913) 0% (1288) 2% (123023) 0% (11896) 2% (104105) 2% (138798) 100% (5201722)
anyOf, neither anyOf valid 4% (46189) 1% (20735) 0% (982) 8% (97760) 0% (8945) 0% (863) 21% (246839) 100% (1141496)
anyOf with base schema, mismatch base schema 3% (104541) 1% (40182) 0% (1340) 40% (1162318) 0% (10411) 0% (2567) 4% (119766) 100% (2878688)
anyOf with base schema, one anyOf valid 5% (273947) 1% (67447) 0% (1056) 0% (36732) 0% (10915) 0% (2596) 3% (144713) 100% (4645526)
anyOf with base schema, both anyOf invalid 3% (54100) 1% (21506) 0% (928) 3% (49296) 0% (9456) 0% (883) 13% (195776) 100% (1476569)
invalid type for default, valid when property is specified 13% (211618) 5% (89345) 0% (1189) 6% (94413) 0% (6960) 5% (83655) 37% (593910) 100% (1567123)
invalid type for default, still valid when the invalid default is used 14% (370015) 7% (182600) 0% (1272) 29% (738667) 0% (7574) 4% (118710) 35% (900970) 100% (2523768)
invalid string value for default, valid when property is specified 13% (203037) 5% (83196) 0% (1158) 4% (69255) 0% (7118) 5% (83869) 32% (501882) 100% (1549933)
invalid string value for default, still valid when the invalid default is used 14% (370434) 7% (178894) 0% (1281) 29% (741239) 0% (7876) 4% (117263) 33% (837767) 100% (2521126)
dependencies, neither 15% (336507) 7% (150388) 0% (1373) 30% (648235) 0% (16501) 5% (111850) 41% (869466) 100% (2113825)
dependencies, nondependant 16% (271578) 6% (110188) 0% (1334) 32% (548073) 0% (16463) 5% (90363) 49% (837795) 100% (1678098)
dependencies, with dependency 21% (237526) 6% (70440) 0% (1118) 43% (472607) 0% (7367) 7% (78005) 67% (731338) 100% (1080828)
dependencies, missing dependency 10% (116472) 4% (47269) 0% (1290) 80% (874072) 0% (7888) 0% (2423) 62% (671920) 100% (1079711)
dependencies, ignores non-objects 7% (523350) 3% (284248) 0% (1461) 3% (232044) 0% (17365) 2% (147443) 11% (830804) 100% (7212843)
multiple dependencies, neither 14% (369593) 6% (166315) 0% (1417) 25% (645348) 0% (16995) 4% (110968) 32% (829109) 100% (2548042)
multiple dependencies, nondependants 18% (236668) 6% (85282) 0% (1156) 32% (424514) 1% (15898) 5% (75532) 55% (730587) 100% (1311965)
multiple dependencies, with dependencies 16% (181902) 6% (69881) 0% (1206) 37% (407490) 0% (7510) 6% (70117) 68% (734471) 100% (1075073)
multiple dependencies, missing dependency 10% (104877) 4% (44080) 0% (1205) 69% (723150) 0% (7944) 0% (2413) 63% (663947) 100% (1044562)
multiple dependencies, missing other dependency 9% (99518) 4% (43841) 0% (1271) 84% (852537) 0% (7853) 0% (2378) 64% (648717) 100% (1011196)
multiple dependencies, missing both dependencies 6% (75796) 3% (38996) 0% (1263) 75% (853500) 0% (7616) 0% (2447) 56% (638050) 100% (1129281)
multiple dependencies subschema, valid 16% (105591) 2% (17987) 0% (1011) 6% (45468) 0% (3180) 6% (40705) 54% (353540) 100% (649924)
multiple dependencies subschema, no dependency 16% (287495) 6% (102207) 0% (1322) 32% (557165) 0% (15970) 5% (86435) 52% (884913) 100% (1695193)
multiple dependencies subschema, wrong type 13% (63697) 2% (13611) 0% (962) 11% (53009) 0% (3189) 0% (2699) 68% (311466) 100% (457306)
multiple dependencies subschema, wrong type other 11% (62081) 4% (21721) 0% (978) 9% (53129) 0% (3435) 0% (2609) 56% (303094) 100% (538324)
multiple dependencies subschema, wrong type both 6% (41821) 3% (22581) 0% (922) 9% (59856) 0% (3236) 0% (2675) 49% (302301) 100% (605813)
simple enum validation, one of the enum is valid 11% (472237) 6% (273739) 0% (1360) 10% (438885) 0% (13883) 3% (167500) 22% (935623) 100% (4223947)
simple enum validation, something else is invalid 5% (149640) 3% (85221) 0% (1303) 14% (404773) 0% (12231) 0% (2398) 0% (-1) 100% (2723320)
heterogeneous enum validation, one of the enum is valid 12% (435081) 5% (207183) 0% (1366) 12% (449666) 0% (13839) 4% (147075) 26% (925277) 100% (3521981)
heterogeneous enum validation, something else is invalid 7% (151411) 4% (88744) 0% (1291) 9% (191055) 0% (11423) 0% (-1) 0% (-1) 100% (1931105)
heterogeneous enum validation, objects are deep compared 15% (96084) 8% (48595) 0% (1127) 24% (148700) 1% (11131) 0% (2380) 0% (-1) 100% (606795)
enums in properties, both properties are valid 17% (160526) 5% (53268) 0% (985) 4% (41454) 0% (4253) 7% (66932) 41% (384781) 100% (926751)
enums in properties, missing optional property is valid 14% (193143) 2% (27804) 0% (1117) 5% (70794) 0% (4577) 6% (79670) 38% (504219) 100% (1295788)
enums in properties, missing required property is invalid 14% (130550) 5% (44273) 0% (964) 7% (65631) 0% (4521) 0% (2452) 56% (494411) 100% (880860)
enums in properties, missing all properties is invalid 12% (135105) 5% (59187) 0% (1112) 40% (437499) 0% (4656) 0% (2370) 65% (701237) 100% (1075591)
a schema given for items, valid items 8% (167898) 1% (26313) 0% (1158) 2% (46267) 0% (3327) 4% (95015) 18% (373112) 100% (2013842)
a schema given for items, wrong type of items 3% (75767) 1% (30969) 0% (1014) 3% (62113) 0% (3931) 0% (2441) 19% (382967) 100% (1997484)
a schema given for items, ignores non-arrays 5% (313708) 1% (114835) 0% (1344) 9% (562435) 0% (15552) 1% (91039) 13% (784981) 100% (5868379)
an array of schemas for items, correct types 8% (192829) 3% (78831) 0% (1094) 2% (49253) 0% (4268) 3% (85890) 25% (548166) 100% (2163958)
an array of schemas for items, wrong types 2% (52027) 1% (33409) 0% (1020) 4% (80126) 0% (3685) 0% (2481) 22% (456844) 100% (1997825)
maxItems validation, shorter is valid 8% (516771) 3% (209814) 0% (1228) 10% (644087) 0% (15524) 2% (152639) 13% (816549) 100% (5945429)
maxItems validation, exact length is valid 7% (477763) 3% (234378) 0% (1343) 9% (638431) 0% (17399) 2% (166280) 12% (836081) 100% (6812105)
maxItems validation, too long is invalid 3% (145611) 2% (84698) 0% (1302) 16% (602889) 0% (17187) 0% (2544) 21% (780066) 100% (3673271)
maxItems validation, ignores non-arrays 7% (557167) 3% (280238) 0% (1483) 2% (191641) 0% (18289) 2% (167347) 12% (920776) 100% (7334104)
maxLength validation, shorter is valid 7% (539248) 4% (290767) 0% (1431) 3% (251174) 0% (18326) 2% (168142) 10% (705810) 100% (7052158)
maxLength validation, exact length is valid 9% (594049) 4% (266989) 0% (1418) 3% (231027) 0% (17275) 2% (167190) 10% (716538) 100% (6577631)
maxLength validation, too long is invalid 3% (136970) 2% (93570) 0% (1299) 5% (193035) 0% (16915) 0% (2477) 17% (614535) 100% (3521127)
maxLength validation, ignores non-strings 7% (514974) 3% (265269) 0% (1510) 4% (333105) 0% (17791) 2% (167731) 13% (982133) 100% (7108264)
maxProperties validation, shorter is valid 12% (246732) 5% (99532) 0% (1388) 24% (488763) 0% (17455) 5% (108573) 33% (659805) 100% (1963440)
maxProperties validation, exact length is valid 13% (256405) 5% (99653) 0% (1390) 23% (426790) 0% (16817) 5% (100554) 36% (670566) 100% (1840246)
maxProperties validation, too long is invalid 9% (139215) 3% (49352) 0% (1213) 23% (354703) 1% (16453) 0% (2489) 40% (612677) 100% (1526156)
maxProperties validation, ignores non-objects 7% (531654) 4% (303983) 0% (1486) 2% (183965) 0% (17659) 2% (159347) 12% (894625) 100% (6926600)
maximum validation, below the maximum is valid 8% (490269) 4% (264217) 0% (1348) 7% (436000) 0% (17615) 3% (167620) 15% (841923) 100% (5479060)
maximum validation, above the maximum is invalid 3% (100870) 2% (92542) 0% (1278) 11% (380539) 0% (15237) 0% (2491) 22% (740748) 100% (3344117)
maximum validation, ignores non-numbers 9% (629170) 4% (291562) 0% (1447) 3% (223815) 0% (17300) 2% (167588) 13% (867277) 100% (6533759)
exclusiveMaximum validation, below the maximum is still valid 6% (426719) 3% (238572) 0% (1313) 6% (387292) 0% (17691) 2% (151040) 13% (862634) 100% (6406425)
exclusiveMaximum validation, boundary point is invalid 3% (133369) 2% (96884) 0% (1222) 8% (352644) 0% (16472) 0% (2484) 21% (845859) 100% (4019627)
minItems validation, longer is valid 12% (603655) 5% (271304) 0% (1373) 13% (653379) 0% (17442) 3% (160806) 19% (973070) 100% (5025184)
minItems validation, exact length is valid 11% (565567) 4% (219181) 0% (1322) 13% (686233) 0% (15277) 3% (150316) 17% (883984) 100% (5003225)
minItems validation, too short is invalid 3% (122955) 2% (83667) 0% (1218) 13% (512845) 0% (15952) 0% (2509) 23% (865645) 100% (3700563)
minItems validation, ignores non-arrays 6% (463360) 3% (266288) 0% (1360) 4% (309809) 0% (17705) 2% (172404) 12% (912074) 100% (7296634)
minLength validation, longer is valid 7% (502760) 3% (238796) 0% (1200) 2% (205815) 0% (17558) 2% (167489) 9% (695612) 100% (7130425)
minLength validation, exact length is valid 8% (633468) 3% (264398) 0% (1370) 3% (239556) 0% (17422) 2% (168826) 9% (719874) 100% (7226797)
minLength validation, too short is invalid 3% (140802) 2% (96188) 0% (1334) 6% (251293) 0% (16913) 0% (2450) 17% (730499) 100% (4175450)
minLength validation, ignores non-strings 8% (632054) 4% (315428) 0% (1499) 5% (362721) 0% (17204) 2% (162950) 12% (870438) 100% (7120938)
minProperties validation, longer is valid 15% (267364) 5% (93348) 0% (1403) 26% (449790) 0% (16538) 5% (93107) 36% (622928) 100% (1705232)
minProperties validation, exact length is valid 15% (289052) 5% (104697) 0% (1261) 25% (474229) 0% (17280) 5% (110717) 31% (593375) 100% (1876178)
minProperties validation, too short is invalid 7% (136001) 4% (77124) 0% (1290) 28% (512546) 0% (16758) 0% (2499) 28% (528338) 100% (1829104)
minProperties validation, ignores non-objects 8% (559444) 3% (269297) 0% (1473) 4% (325539) 0% (17302) 2% (163882) 12% (864306) 100% (6867884)
minimum validation, above the minimum is valid 10% (535554) 5% (262558) 0% (1276) 9% (443317) 0% (17868) 3% (166050) 18% (902266) 100% (4920717)
minimum validation, below the minimum is invalid 3% (111032) 2% (94430) 0% (1306) 11% (374860) 0% (15301) 0% (2403) 23% (755848) 100% (3187999)
minimum validation, ignores non-numbers 9% (505388) 5% (283676) 0% (1340) 4% (231101) 0% (14930) 2% (156003) 13% (754285) 100% (5515800)
exclusiveMinimum validation, above the minimum is still valid 8% (498905) 4% (243177) 0% (1264) 6% (394655) 0% (16712) 2% (164183) 16% (920258) 100% (5709016)
exclusiveMinimum validation, boundary point is invalid 3% (129650) 2% (94670) 0% (1105) 9% (328836) 0% (15321) 0% (2260) 21% (753374) 100% (3479349)
by int, int by int 8% (481933) 4% (264717) 0% (1397) 7% (420499) 0% (17528) 2% (157865) 15% (933913) 100% (5946188)
by int, int by int fail 3% (129099) 2% (86443) 0% (1279) 8% (293521) 0% (14196) 0% (2356) 23% (822468) 100% (3486855)
by int, ignores non-numbers 7% (525770) 4% (274319) 0% (1441) 2% (189094) 0% (17703) 2% (170004) 14% (956952) 100% (6675490)
by number, zero is multiple of anything 6% (445960) 3% (232731) 0% (1368) 6% (401260) 0% (16515) 2% (156376) 15% (987494) 100% (6467005)
by number, 4.5 is multiple of 1.5 9% (530083) 4% (228424) 0% (1370) 7% (403069) 0% (16533) 2% (152468) 18% (1001906) 100% (5523746)
by number, 35 is not multiple of 1.5 3% (109126) 2% (89072) 0% (1215) 10% (357466) 0% (17141) 0% (2454) 24% (848781) 100% (3409605)
by small number, 0.0075 is multiple of 0.0001 9% (538999) 4% (226253) 0% (1272) 7% (387319) 0% (16302) 2% (149527) 17% (958538) 100% (5468098)
by small number, 0.00751 is not multiple of 0.0001 4% (128357) 2% (84018) 0% (1278) 11% (361413) 0% (16064) 0% (2448) 26% (837257) 100% (3156152)
not, allowed 5% (112592) 2% (43586) 0% (1107) 5% (107638) 0% (9996) 0% (2540) 46% (908071) 100% (1935298)
not, disallowed 5% (142576) 1% (52644) 0% (1215) 5% (137643) 0% (10226) 0% (2316) 0% (-1) 100% (2645907)
not multiple types, valid 4% (79845) 2% (39593) 0% (1215) 5% (105001) 0% (10253) 0% (2652) 49% (948034) 100% (1912309)
not multiple types, mismatch 5% (138588) 1% (47095) 0% (950) 4% (129501) 0% (10734) 0% (2150) 0% (-1) 100% (2743874)
not multiple types, other mismatch 6% (136832) 2% (51923) 0% (1147) 5% (132319) 0% (10861) 0% (2482) 0% (-1) 100% (2211586)
not more complex schema, match 5% (102937) 2% (40582) 0% (1201) 7% (150779) 0% (10444) 0% (2595) 49% (979526) 100% (1968723)
not more complex schema, other match 6% (61625) 2% (24691) 0% (889) 8% (79101) 0% (5443) 0% (2614) 84% (822247) 100% (972407)
not more complex schema, mismatch 9% (97913) 2% (30516) 0% (993) 5% (59500) 0% (5739) 0% (2374) 0% (-1) 100% (1039939)
forbidden property, property present 11% (88452) 4% (33631) 0% (1057) 10% (83437) 0% (6695) 0% (2627) 0% (-1) 100% (766102)
forbidden property, property absent 30% (258660) 11% (93581) 0% (1227) 59% (500160) 0% (7620) 9% (81849) 82% (688223) 100% (837975)
oneOf, first oneOf valid 3% (83324) 1% (26930) 0% (1065) 3% (74493) 0% (10704) 0% (2591) 7% (169202) 100% (2167748)
oneOf, second oneOf valid 5% (82882) 1% (26627) 0% (1071) 5% (89037) 0% (9637) 0% (2612) 9% (137861) 100% (1525889)
oneOf, both oneOf valid 4% (108710) 1% (31793) 0% (1101) 3% (82049) 0% (9420) 0% (2348) 7% (163126) 100% (2246596)
oneOf, neither oneOf valid 3% (42904) 1% (18703) 0% (968) 8% (100245) 0% (8975) 0% (898) 19% (235723) 100% (1231909)
oneOf with base schema, mismatch base schema 2% (61132) 0% (25503) 0% (1382) 40% (1080548) 0% (8831) 0% (2490) 6% (164102) 100% (2684418)
oneOf with base schema, one oneOf valid 3% (82166) 1% (27170) 0% (978) 1% (40490) 0% (10744) 0% (2566) 6% (143197) 100% (2344012)
oneOf with base schema, both oneOf valid 4% (102363) 1% (31334) 0% (1041) 2% (55672) 0% (9376) 0% (2393) 6% (132572) 100% (2198055)
integer, a bignum is an integer 11% (467663) 5% (225092) 0% (1442) 8% (342364) 0% (11828) 3% (144628) 16% (685268) 100% (4195974)
number, a bignum is a number 11% (453672) 5% (242633) 0% (1418) 8% (352997) 0% (13461) 3% (143792) 20% (859189) 100% (4099527)
integer, a negative bignum is an integer 11% (444292) 6% (240260) 0% (1500) 10% (381356) 0% (13892) 3% (143081) 19% (732267) 100% (3741091)
number, a negative bignum is a number 10% (424481) 5% (215934) 0% (1350) 8% (357270) 0% (12221) 3% (132442) 17% (732923) 100% (4171839)
string, a bignum is not a string 5% (129437) 3% (86299) 0% (1340) 50% (1132313) 0% (11497) 0% (2521) 33% (758163) 100% (2243163)
integer comparison, comparison works for high numbers 10% (475348) 6% (261025) 0% (1417) 10% (440329) 0% (17072) 3% (140427) 17% (777353) 100% (4339867)
float comparison with high precision, comparison works for high numbers 3% (119351) 2% (85435) 0% (1143) 10% (319220) 0% (14328) 0% (2430) 23% (737085) 100% (3138637)
integer comparison, comparison works for very negative numbers 11% (504606) 5% (240329) 0% (1435) 9% (428802) 0% (17879) 3% (150408) 18% (842129) 100% (4509972)
float comparison with high precision on negative numbers, comparison works for very negative numbers 4% (125295) 3% (90176) 0% (1245) 11% (291494) 0% (15168) 0% (2473) 28% (717803) 100% (2532002)
validation of date-time strings, a valid date-time string 26% (196370) 13% (103836) 0% (1413) 9% (69288) 0% (-1) 19% (148471) 100% (743818) 80% (597925)
validation of date-time strings, an invalid date-time string 6% (82990) 5% (62984) 0% (1185) 5% (71557) 1% (16322) 0% (-1) 0% (-1) 100% (1249236)
validation of date-time strings, only RFC3339 not all of ISO 8601 are valid 10% (92975) 6% (56090) 0% (1259) 11% (99972) 1% (15816) 0% (-1) 0% (-1) 100% (868224)
validation of URIs, a valid URI 27% (232278) 20% (171103) 0% (1391) 9% (78418) 2% (16865) 18% (150564) 100% (835627) 19% (158871)
validation of e-mail addresses, a valid e-mail address 11% (377992) 3% (129879) 0% (1298) 2% (84864) 0% (16810) 4% (150021) 26% (872972) 100% (3288560)
validation of e-mail addresses, an invalid e-mail address 3% (109399) 2% (76570) 0% (1291) 5% (158890) 0% (15265) 0% (-1) 0% (-1) 100% (2745690)
validation of IP addresses, a valid IP address 11% (303328) 6% (166161) 0% (1400) 2% (76005) 0% (14793) 5% (143158) 32% (861134) 100% (2625994)
validation of IP addresses, an IP address with too many components 5% (99014) 3% (60938) 0% (1209) 6% (116579) 0% (16306) 0% (-1) 0% (-1) 100% (1741684)
validation of IP addresses, an IP address with out-of-range values 6% (99997) 3% (63286) 0% (1192) 3% (63744) 0% (15260) 0% (-1) 0% (-1) 100% (1629815)
validation of IP addresses, an IP address without 4 components 5% (94081) 4% (70375) 0% (1291) 8% (149844) 0% (15175) 0% (-1) 0% (-1) 100% (1731860)
validation of IP addresses, an IP address as an integer 4% (112806) 2% (75344) 0% (1180) 4% (122323) 0% (16219) 0% (-1) 0% (-1) 100% (2810232)
validation of IPv6 addresses, a valid IPv6 address 18% (218745) 10% (125494) 0% (1378) 14% (168662) 1% (15496) 12% (148443) 86% (1008985) 100% (1167773)
validation of IPv6 addresses, an IPv6 address with out-of-range values 9% (85996) 6% (57631) 0% (1283) 11% (109971) 1% (14721) 0% (-1) 0% (-1) 100% (954060)
validation of IPv6 addresses, an IPv6 address with too many components 11% (82198) 8% (56715) 0% (1229) 9% (65548) 2% (14576) 0% (-1) 0% (-1) 100% (703026)
validation of IPv6 addresses, an IPv6 address containing illegal characters 7% (91777) 5% (65527) 0% (1287) 9% (119146) 1% (15114) 0% (-1) 0% (-1) 100% (1238402)
validation of host names, a valid host name 21% (218991) 11% (114687) 0% (1132) 9% (100726) 0% (-1) 13% (136924) 87% (883794) 100% (1012219)
validation of host names, a host name starting with an illegal character 4% (104732) 3% (74261) 0% (1211) 3% (70573) 0% (16235) 0% (-1) 0% (-1) 100% (2195209)
validation of host names, a host name containing illegal characters 5% (108415) 4% (76334) 0% (1284) 4% (84042) 0% (15321) 0% (-1) 0% (-1) 100% (1828393)
validation of host names, a host name with a component too long 10% (99345) 6% (67852) 0% (1284) 3% (31950) 1% (16244) 0% (-1) 0% (-1) 100% (985662)
pattern validation, a matching pattern is valid 22% (336763) 15% (226990) 0% (1391) 12% (179905) 1% (16145) 8% (120885) 57% (855574) 100% (1496439)
pattern validation, a non-matching pattern is invalid 7% (108931) 6% (95956) 0% (1296) 11% (165463) 1% (15831) 0% (2301) 50% (739830) 100% (1462861)
pattern validation, ignores non-strings 11% (610432) 5% (290288) 0% (1488) 7% (424143) 0% (17262) 2% (163143) 17% (980336) 100% (5528164)
patternProperties validates properties matching a regex, a single valid match is valid 42% (153036) 17% (63857) 0% (1098) 18% (67507) 1% (6583) 12% (46978) 71% (258316) 100% (361909)
patternProperties validates properties matching a regex, multiple valid matches is valid 31% (100727) 15% (48537) 0% (1010) 10% (32869) 1% (3547) 11% (35159) 57% (181749) 100% (316281)
patternProperties validates properties matching a regex, a single invalid match is invalid 21% (55207) 11% (29570) 0% (1035) 15% (41259) 1% (3931) 0% (2535) 56% (149142) 100% (261818)
patternProperties validates properties matching a regex, multiple invalid matches is invalid 12% (40988) 7% (25134) 0% (885) 13% (41502) 1% (3733) 0% (2528) 42% (136656) 100% (318934)
patternProperties validates properties matching a regex, ignores non-objects 10% (428428) 5% (227007) 0% (1432) 12% (475927) 0% (17494) 2% (92409) 24% (966181) 100% (3930181)
multiple simultaneous patternProperties are validated, a single valid match is valid 43% (148027) 16% (55884) 0% (1188) 16% (57052) 1% (6443) 13% (45752) 68% (233540) 100% (341053)
multiple simultaneous patternProperties are validated, a simultaneous match is valid 37% (119508) 13% (44710) 0% (1075) 13% (42146) 1% (4725) 13% (44200) 50% (163912) 100% (321467)
multiple simultaneous patternProperties are validated, multiple matches is valid 30% (83594) 14% (40264) 0% (1022) 9% (27696) 1% (3407) 12% (35771) 44% (123663) 100% (277452)
multiple simultaneous patternProperties are validated, an invalid due to one is invalid 20% (68032) 11% (40296) 0% (1126) 21% (71774) 1% (5942) 0% (2302) 56% (190546) 100% (337069)
multiple simultaneous patternProperties are validated, an invalid due to the other is invalid 17% (59158) 9% (31015) 0% (987) 10% (35475) 1% (4132) 0% (1929) 45% (149336) 100% (330337)
multiple simultaneous patternProperties are validated, an invalid due to both is invalid 8% (33828) 4% (20322) 0% (868) 4% (20097) 0% (2194) 0% (2424) 23% (96894) 100% (421006)
regexes are not anchored by default and are case sensitive, non recognized members are ignored 48% (161077) 21% (72573) 0% (1101) 55% (182643) 2% (7284) 14% (47497) 98% (324398) 100% (330112)
regexes are not anchored by default and are case sensitive, recognized members are accounted for 21% (61012) 9% (25781) 0% (1123) 25% (71868) 2% (6110) 0% (2537) 67% (193182) 100% (285669)
regexes are not anchored by default and are case sensitive, regexes are case sensitive 37% (145285) 19% (74467) 0% (1121) 53% (209013) 1% (6805) 12% (49179) 100% (387668) 92% (360081)
regexes are not anchored by default and are case sensitive, regexes are case sensitive, 2 16% (59523) 5% (18067) 0% (1096) 21% (78534) 1% (6026) 0% (2506) 51% (185749) 100% (358808)
object properties validation, both properties present and valid is valid 13% (156911) 3% (46842) 0% (1104) 4% (48740) 0% (4387) 5% (67680) 36% (427193) 100% (1171515)
object properties validation, one property invalid is invalid 7% (69116) 1% (16530) 0% (1042) 6% (64114) 0% (4128) 0% (2488) 38% (350746) 100% (922249)
object properties validation, both properties invalid is invalid 4% (51548) 2% (28189) 0% (1013) 6% (70387) 0% (3914) 0% (2620) 33% (359361) 100% (1066238)
object properties validation, doesn't invalidate other properties 19% (258552) 7% (97779) 0% (1231) 38% (506887) 0% (4732) 5% (69122) 43% (569845) 100% (1302065)
object properties validation, ignores non-objects 7% (479467) 4% (248646) 0% (1405) 13% (812377) 0% (5015) 1% (110083) 12% (771213) 100% (6150785)
properties, patternProperties, additionalProperties interaction, property validates property 22% (101196) 5% (22104) 0% (916) 11% (49450) 0% (3520) 9% (40555) 46% (206107) 100% (440512)
properties, patternProperties, additionalProperties interaction, property invalidates property 8% (56344) 2% (15540) 0% (849) 7% (47530) 0% (3427) 0% (2293) 28% (182039) 100% (648216)
properties, patternProperties, additionalProperties interaction, patternProperty invalidates property 14% (49397) 7% (27197) 0% (797) 12% (45459) 0% (3380) 0% (2330) 52% (184120) 100% (351318)
properties, patternProperties, additionalProperties interaction, patternProperty validates nonproperty 38% (139093) 7% (26883) 0% (1024) 18% (67466) 1% (3783) 11% (41269) 64% (235462) 100% (363413)
properties, patternProperties, additionalProperties interaction, patternProperty invalidates nonproperty 20% (66434) 6% (19400) 0% (915) 20% (65581) 1% (3686) 0% (2510) 61% (194020) 100% (317404)
properties, patternProperties, additionalProperties interaction, additionalProperty ignores property 28% (131091) 11% (54596) 0% (1079) 17% (81395) 0% (4359) 9% (42492) 72% (335447) 100% (460730)
properties, patternProperties, additionalProperties interaction, additionalProperty validates others 35% (130005) 18% (66428) 0% (1057) 19% (71702) 0% (3532) 10% (38102) 54% (198904) 100% (366841)
properties, patternProperties, additionalProperties interaction, additionalProperty invalidates others 20% (63943) 8% (27138) 0% (978) 27% (85905) 1% (3365) 0% (2492) 57% (178733) 100% (311710)
root pointer ref, match 12% (151220) 5% (65029) 0% (685) 7% (89017) 0% (4491) 1% (24480) 30% (376774) 100% (1243950)
root pointer ref, recursive match 13% (94132) 2% (20075) 0% (464) 8% (60492) 0% (2380) 2% (16570) 38% (263999) 100% (681528)
root pointer ref, mismatch 9% (94875) 6% (71294) 0% (1131) 50% (520025) 0% (4309) 0% (2175) 42% (439524) 100% (1023097)
root pointer ref, recursive mismatch 9% (55707) 3% (19165) 0% (610) 18% (106115) 0% (2711) 0% (2320) 39% (230319) 100% (581884)
relative pointer ref to object, match 13% (165052) 5% (70854) 0% (569) 5% (61522) 0% (3037) 1% (18893) 43% (532116) 100% (1220186)
relative pointer ref to object, mismatch 7% (74001) 3% (40819) 0% (549) 7% (79081) 0% (2910) 0% (2338) 46% (482889) 100% (1029081)
relative pointer ref to array, match array 9% (180991) 1% (27784) 0% (657) 2% (45572) 0% (2899) 1% (19864) 25% (502145) 100% (1982513)
relative pointer ref to array, mismatch array 4% (75084) 2% (47064) 0% (624) 2% (50276) 0% (2874) 0% (2377) 25% (475012) 100% (1837021)
escaped pointer ref, slash 15% (66599) 9% (38627) 0% (522) 22% (92902) 0% (1371) 0% (1987) 100% (420290) 34% (146789)
escaped pointer ref, tilda 15% (60332) 8% (34530) 0% (568) 26% (101364) 0% (1389) 0% (2027) 100% (386553) 35% (136570)
escaped pointer ref, percent 12% (59099) 3% (17442) 0% (609) 22% (100876) 0% (1573) 0% (2193) 100% (455972) 32% (146299)
nested refs, nested ref valid 9% (297472) 6% (199809) 0% (373) 2% (87031) 0% (2365) 0% (12417) 26% (826757) 100% (3062344)
nested refs, nested ref invalid 6% (107947) 4% (74433) 0% (367) 6% (112709) 0% (2057) 0% (1936) 34% (587240) 100% (1697954)
required validation, present required property is valid 13% (186501) 4% (68558) 0% (1039) 8% (111085) 0% (5384) 5% (77960) 34% (484801) 100% (1387691)
required validation, non-present required property is invalid 16% (125873) 5% (42943) 0% (957) 11% (90015) 0% (4824) 0% (2207) 48% (364464) 100% (754728)
required default validation, not required by default 16% (392525) 6% (161869) 0% (1287) 31% (742166) 0% (8014) 5% (126761) 32% (776747) 100% (2376428)
integer type matches integers, an integer is an integer 10% (555569) 4% (224523) 0% (1457) 7% (388388) 0% (13294) 2% (136460) 13% (752548) 100% (5387347)
integer type matches integers, a float is not an integer 5% (133180) 3% (82633) 0% (1318) 45% (1080515) 0% (11404) 0% (2533) 32% (765544) 100% (2378459)
integer type matches integers, a string is not an integer 5% (139171) 3% (83609) 0% (1373) 47% (1131554) 0% (11620) 0% (2479) 29% (696057) 100% (2366879)
integer type matches integers, an object is not an integer 5% (139836) 2% (70272) 0% (1356) 44% (1123538) 0% (10176) 0% (2426) 30% (752359) 100% (2500333)
integer type matches integers, an array is not an integer 5% (135655) 3% (82489) 0% (1358) 44% (1047687) 0% (11498) 0% (2464) 32% (761946) 100% (2352853)
integer type matches integers, a boolean is not an integer 5% (137949) 3% (88243) 0% (1344) 43% (1097745) 0% (11418) 0% (2464) 28% (721396) 100% (2550510)
integer type matches integers, null is not an integer 6% (138164) 3% (82343) 0% (1349) 45% (996001) 0% (11792) 0% (2495) 35% (776758) 100% (2184483)
number type matches numbers, an integer is a number 9% (509488) 4% (215380) 0% (1400) 7% (369348) 0% (12826) 2% (142774) 15% (827663) 100% (5253627)
number type matches numbers, a float is a number 9% (493415) 3% (195829) 0% (1277) 6% (341119) 0% (13602) 3% (151441) 17% (881944) 100% (4975197)
number type matches numbers, a string is not a number 5% (138742) 3% (90066) 0% (1364) 40% (971526) 0% (10143) 0% (2421) 29% (719523) 100% (2410051)
number type matches numbers, an object is not a number 6% (135790) 3% (73773) 0% (1339) 47% (967859) 0% (11446) 0% (2309) 33% (680699) 100% (2026787)
number type matches numbers, an array is not a number 5% (129310) 3% (84515) 0% (1275) 41% (967317) 0% (11112) 0% (2287) 31% (730446) 100% (2340147)
number type matches numbers, a boolean is not a number 5% (137105) 3% (90529) 0% (1233) 41% (1030931) 0% (11129) 0% (2467) 29% (746647) 100% (2493651)
number type matches numbers, null is not a number 6% (130198) 3% (83079) 0% (1248) 45% (957600) 0% (10738) 0% (2276) 31% (658424) 100% (2081944)
string type matches strings, 1 is not a string 5% (132162) 3% (84637) 0% (1294) 37% (959132) 0% (11188) 0% (2483) 29% (742487) 100% (2557149)
string type matches strings, a float is not a string 5% (116744) 3% (82810) 0% (1268) 40% (940219) 0% (11237) 0% (2476) 34% (808062) 100% (2309567)
string type matches strings, a string is a string 11% (586628) 4% (231059) 0% (1432) 4% (228254) 0% (13662) 2% (153385) 18% (964725) 100% (5181031)
string type matches strings, an object is not a string 6% (138340) 2% (65199) 0% (1300) 45% (985095) 0% (11412) 0% (2011) 35% (762426) 100% (2177300)
string type matches strings, an array is not a string 5% (129943) 3% (77517) 0% (1350) 43% (1049102) 0% (11398) 0% (2516) 35% (856484) 100% (2398810)
string type matches strings, a boolean is not a string 6% (139051) 4% (91892) 0% (1349) 40% (890384) 0% (10736) 0% (2508) 38% (837628) 100% (2202267)
string type matches strings, null is not a string 6% (136276) 4% (89636) 0% (1329) 49% (1060501) 0% (11302) 0% (2422) 36% (766276) 100% (2125184)
object type matches objects, an integer is not an object 5% (119789) 3% (77315) 0% (1311) 47% (1097320) 0% (10936) 0% (2240) 34% (813557) 100% (2328541)
object type matches objects, a float is not an object 5% (132735) 3% (83593) 0% (1349) 47% (1067483) 0% (11292) 0% (2426) 34% (774345) 100% (2269403)
object type matches objects, a string is not an object 6% (136936) 4% (85528) 0% (1365) 43% (888666) 0% (11303) 0% (2332) 37% (772522) 100% (2040767)
object type matches objects, an object is an object 9% (421438) 3% (154389) 0% (1442) 13% (621036) 0% (13572) 2% (127091) 22% (1023647) 100% (4597674)
object type matches objects, an array is not an object 5% (138149) 3% (86779) 0% (1355) 43% (1073187) 0% (11454) 0% (2458) 32% (782457) 100% (2444275)
object type matches objects, a boolean is not an object 5% (140622) 3% (87404) 0% (1369) 41% (1012859) 0% (11600) 0% (2370) 25% (632655) 100% (2438178)
object type matches objects, null is not an object 5% (129327) 3% (85765) 0% (1268) 38% (941229) 0% (11138) 0% (2204) 32% (799960) 100% (2474016)
array type matches arrays, an integer is not an array 5% (127427) 3% (81653) 0% (1372) 43% (995812) 0% (11406) 0% (2469) 32% (732603) 100% (2266568)
array type matches arrays, a float is not an array 5% (133333) 3% (86318) 0% (1349) 36% (959529) 0% (11455) 0% (2184) 26% (696281) 100% (2606976)
array type matches arrays, a string is not an array 4% (134987) 3% (87347) 0% (1345) 35% (1030516) 0% (11288) 0% (2496) 26% (774070) 100% (2902168)
array type matches arrays, an object is not an array 4% (131273) 2% (73402) 0% (1307) 36% (1010556) 0% (11490) 0% (2530) 26% (733937) 100% (2781436)
array type matches arrays, an array is not an array 8% (527472) 3% (234641) 0% (1439) 10% (676727) 0% (13016) 2% (133905) 13% (851987) 100% (6266977)
array type matches arrays, a boolean is not an array 5% (123403) 3% (76284) 0% (1424) 42% (1046828) 0% (11404) 0% (2529) 29% (729162) 100% (2464936)
array type matches arrays, null is not an array 6% (148342) 3% (81044) 0% (1359) 41% (1019177) 0% (11439) 0% (2257) 29% (720009) 100% (2468245)
boolean type matches booleans, an integer is not a boolean 4% (132822) 2% (85622) 0% (1375) 37% (1084530) 0% (11454) 0% (2362) 25% (726534) 100% (2871751)
boolean type matches booleans, a float is not a boolean 5% (132220) 3% (83333) 0% (1271) 37% (913950) 0% (11508) 0% (2523) 30% (752915) 100% (2449595)
boolean type matches booleans, a string is not a boolean 5% (139701) 3% (85126) 0% (1381) 40% (1098443) 0% (11155) 0% (2502) 26% (715921) 100% (2700797)
boolean type matches booleans, an object is not a boolean 6% (136736) 3% (69425) 0% (1359) 47% (1022993) 0% (10612) 0% (2168) 29% (648821) 100% (2166237)
boolean type matches booleans, an array is not a boolean 5% (120049) 3% (85265) 0% (1310) 44% (1035412) 0% (11226) 0% (2094) 29% (686090) 100% (2340463)
boolean type matches booleans, a boolean is not a boolean 10% (570941) 4% (233883) 0% (1284) 6% (371274) 0% (11738) 2% (146919) 14% (797751) 100% (5433579)
boolean type matches booleans, null is not a boolean 5% (130631) 3% (85434) 0% (1297) 42% (968617) 0% (9903) 0% (2175) 32% (744206) 100% (2275240)
null type matches only the null object, an integer is not null 5% (122344) 3% (79821) 0% (1213) 47% (1132100) 0% (10964) 0% (2286) 31% (755065) 100% (2369170)
null type matches only the null object, a float is not null 5% (137370) 3% (83465) 0% (1364) 50% (1155769) 0% (10673) 0% (2379) 33% (775089) 100% (2310329)
null type matches only the null object, a string is not null 4% (119940) 3% (91776) 0% (1320) 39% (982183) 0% (11440) 0% (2517) 29% (726378) 100% (2457852)
null type matches only the null object, an object is not null 6% (136550) 3% (74406) 0% (1395) 46% (992016) 0% (10360) 0% (2282) 31% (666446) 100% (2147028)
null type matches only the null object, an array is not null 5% (115119) 3% (71261) 0% (1324) 51% (1105804) 0% (11290) 0% (2183) 32% (699506) 100% (2140588)
null type matches only the null object, a boolean is not null 5% (134153) 3% (85855) 0% (1267) 37% (959580) 0% (10653) 0% (2237) 28% (719584) 100% (2539966)
null type matches only the null object, null is null 10% (521715) 4% (241310) 0% (1303) 12% (599831) 0% (12403) 2% (145238) 16% (794660) 100% (4935067)
multiple types can be specified in an array, an integer is valid 9% (483338) 4% (213925) 0% (1444) 6% (343842) 0% (13346) 2% (139657) 16% (834970) 100% (5083220)
multiple types can be specified in an array, a string is valid 13% (485475) 6% (236949) 0% (1427) 5% (204960) 0% (12948) 3% (136915) 25% (891090) 100% (3499779)
multiple types can be specified in an array, a float is invalid 4% (97414) 3% (77447) 0% (1348) 33% (802519) 0% (10855) 0% (2474) 30% (731660) 100% (2372447)
multiple types can be specified in an array, an object is invalid 3% (81155) 2% (58896) 0% (1200) 35% (758704) 0% (10899) 0% (2497) 32% (688817) 100% (2125243)
multiple types can be specified in an array, an array is invalid 4% (98984) 3% (71929) 0% (1315) 29% (701107) 0% (9636) 0% (2471) 30% (729238) 100% (2363503)
multiple types can be specified in an array, a boolean is invalid 4% (98180) 2% (68680) 0% (1313) 29% (703222) 0% (9549) 0% (2479) 27% (669739) 100% (2398027)
multiple types can be specified in an array, null is invalid 4% (73963) 3% (65752) 0% (1278) 41% (755796) 0% (10198) 0% (2490) 36% (669890) 100% (1830409)
uniqueItems validation, unique array of integers is valid 10% (399829) 4% (182022) 0% (1318) 9% (362096) 0% (15924) 3% (149275) 21% (848497) 100% (3862884)
uniqueItems validation, non-unique array of integers is invalid 5% (116742) 3% (78764) 0% (1166) 14% (344682) 0% (15455) 0% (2435) 0% (-1) 100% (2330780)
uniqueItems validation, numbers are unique if mathematically unequal 5% (125471) 3% (77821) 0% (1067) 13% (306728) 0% (13007) 0% (2331) 0% (-1) 100% (2332764)
uniqueItems validation, unique array of objects is valid 36% (333642) 18% (171854) 0% (1226) 14% (131063) 1% (15038) 16% (146694) 96% (883726) 100% (912038)
uniqueItems validation, non-unique array of objects is invalid 15% (108917) 10% (72565) 0% (1236) 17% (119539) 1% (13273) 0% (2306) 0% (-1) 100% (697530)
uniqueItems validation, unique array of nested objects is valid 22% (199339) 13% (117952) 0% (1154) 9% (84703) 1% (13359) 13% (120506) 100% (869256) 33% (292748)
uniqueItems validation, non-unique array of nested objects is invalid 34% (94304) 21% (60436) 0% (1270) 33% (93384) 4% (13736) 0% (2163) 0% (-1) 100% (274856)
uniqueItems validation, unique array of arrays is valid 12% (413645) 5% (190283) 0% (1302) 6% (213586) 0% (13888) 3% (131290) 24% (804953) 100% (3330964)
uniqueItems validation, non-unique array of arrays is invalid 6% (129173) 3% (80684) 0% (1229) 9% (214225) 0% (14256) 0% (2360) 0% (-1) 100% (2146007)
uniqueItems validation, 1 and true are unique 10% (434575) 5% (213439) 0% (1302) 8% (353563) 0% (15739) 3% (143339) 21% (870652) 100% (4089399)
uniqueItems validation, 0 and false are unique 12% (482623) 5% (211081) 0% (1393) 9% (349540) 0% (15114) 4% (151409) 23% (888112) 100% (3783777)
uniqueItems validation, unique heterogeneous types are valid 23% (359479) 9% (153849) 0% (1165) 8% (126622) 0% (15040) 0% (-1) 55% (862143) 100% (1554054)
uniqueItems validation, non-unique heterogeneous types are invalid 13% (120878) 8% (72120) 0% (1261) 14% (124440) 1% (14484) 0% (2240) 0% (-1) 100% (877187)