SchemaParser
: Parses the schemas. It can be used to parse various schemas. Every JSON Schema dialect/version has oneSchemaRouter
: Contains a cache of parsed schemas and resolve cached/local/external$ref
. You can share it across variousSchemaParser
Validator
: Contains validation logic for single/multiple keyword(s)Schema
: Represents a schema and containsValidator
instancesValidatorFactory
: Represents a factory for aValidator
SchemaRouter router = SchemaRouter.create(vertx)
SchemaParserOptions options = new SchemaParserOptions();
SchemaParser parser = Draft7SchemaParser.create(options, router);
Schema schema = parser.parse(schema, scope);
Future validationResult = schema.validateAsync(objectToValidate);
Or shorthand
Schema schema = Draft7SchemaParser.parse(vertx, schema, scope);
Future validationResult = schema.validateAsync(objectToValidate);
To support custom keywords, you can create a new ValidatorFactory
and register to a SchemaParser
with SchemaParserOptions.putAdditionalValidatorFactory()