We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent bd448b6 commit bb3dd0bCopy full SHA for bb3dd0b
2 files changed
jsonschema/_validators.py
@@ -46,10 +46,31 @@ def additionalProperties(validator, aP, instance, schema):
46
yield ValidationError(error % _utils.extras_msg(extras))
47
48
49
+def items_draft3_draft4(validator, items, instance, schema):
50
+ if not validator.is_type(instance, "array"):
51
+ return
52
+
53
+ if validator.is_type(items, "object"):
54
+ for index, item in enumerate(instance):
55
+ for error in validator.descend(item, items, path=index):
56
+ yield error
57
+ else:
58
+ for (index, item), subschema in zip(enumerate(instance), items):
59
+ for error in validator.descend(
60
+ item, subschema, path=index, schema_path=index,
61
+ ):
62
63
64
65
def items(validator, items, instance, schema):
66
if not validator.is_type(instance, "array"):
67
return
68
69
+ if items is True:
70
+ items = {}
71
+ elif items is False:
72
+ items = {"not": {}}
73
74
if validator.is_type(items, "object"):
75
for index, item in enumerate(instance):
76
for error in validator.descend(item, items, path=index):
jsonschema/validators.py
@@ -193,7 +193,7 @@ def extend(validator, validators, version=None):
193
u"enum": _validators.enum,
194
u"extends": _validators.extends_draft3,
195
u"format": _validators.format,
196
- u"items": _validators.items,
+ u"items": _validators.items_draft3_draft4,
197
u"maxItems": _validators.maxItems,
198
u"maxLength": _validators.maxLength,
199
u"maximum": _validators.maximum_draft3_draft4,
@@ -221,7 +221,7 @@ def extend(validator, validators, version=None):
221
u"dependencies": _validators.dependencies,
222
223
224
225
226
227
u"maxProperties": _validators.maxProperties_draft4,
0 commit comments