Check of single property
Aggregated property lints
Function able to lint Schema AST
Main working function, traversing JSON Schema
It lints all properties on current level, then tries to extract all
subschemas from properties like items
, additionalItems
etc and
recursively lint them as well
Main working function, traversing JSON Schema
It lints all properties on current level, then tries to extract all
subschemas from properties like items
, additionalItems
etc and
recursively lint them as well
parsed JSON AST
depth of linting
of linters to be used
non-empty list of summed failures (all, including nested) or unit in case of success
Check that schema with array type has minItems property not greater than maxItems
Check that schema with non-array type doesn't contain array properties
Check that property contains description
Check that schema with numeric type contains both minimum and maximum properties
Check that schema with numeric type has minimum property not greater than maximum
Check that schema with non-numeric type doesn't contain numeric properties
Check that schema with non-object type doesn't contain object properties
Check that non-required fields have null type
Check that all required properties exist in properties
Check that all required properties exist in properties
take patternProperties
in account
Placeholder linter to be understood through --skip-checks, SanityLinter.lint() contains its logic
Placeholder linter to be understood through --skip-checks, SanityLinter.lint() contains its logic
Check that root of schema has object type and contains properties
Check that schema with string type contains maxLength property or other ways to extract max length
Check that schema with string type has maxLength property not greater than Redshift VARCHAR(max) 65535 See http://docs.aws.amazon.com/redshift/latest/dg/r_Character_types.html
Check that schema with string type has minLength property not greater than maxLength
Check that schema with non-string type doesn't contain string properties
Check that schema doesn't contain unknown formats
Some property was processed successfully
Whole subschema was processed successfully
Contains Schema validation logic for JSON AST to find nonsense (impossible) JSON Schemas, ie. Schemas which cannot validate ANY value, yet syntactically correct. This doesn't have logic to validate accordance to JSON Schema specs such as non-empty
required
or numericmaximum
. Separate validator should be used for that.https://github.com/snowplow/iglu/issues/164