API Reference jsv v0.7.2

View Source

Modules

JSV

JSV is a JSON Schema Validator.

Represents a boolean schema. Boolean schemas accept or reject any data according to their boolean value.

A simple wrapper for errors returned from JSV.build/2.

Internal logic to build raw schemas into JSV.Root structs.

JSON encoder/decoder based on available implementation.

A JSON encoder/decoder based on the JSON and :json modules.

Error formatting helpers.

Behaviour for format validator implementations.

Helpers around the different key formats used in the resolver, builder and validator states to index sub schemas, referenced schemas, anchor or meta schemas.

A Normalizer for JSON data structures.

Protocol used by JSV.Normalizer to normalize structs.

A namespace for a schema ID or reference.

Representation of a JSON Schema reference ($ref or $dynamicRef).

A behaviour describing the implementation of a [guides/build/custom resolver. Resolves remote resources when building a JSON schema.

A JSV.Resolver implementation that resolves known schemas shipped as part of the JSV library.

A JSV.Resolver implementation that will fetch the schemas from the web with the help of the :httpc module.

A JSV.Resolver implementation that resolves URIs pointing to the application code base or JSV code base.

This module allows to build JSV.Resolver implementations that resolves schemas based on disk based on their $id property. It is not itself a JSV.Resolver implementation.

Metadata gathered from a remote schema or a sub-schema.

Internal representation of a JSON schema built with JSV.build/2.

This module defines a struct where all the supported keywords of the JSON schema specification are defined as keys. Text editors that can predict the struct keys will make autocompletion available when writing schemas.

Build result for a raw map schema.

The data structure returned by JSV.validate/3 when validation fails.

This is the home of the recursive validation logic.

Representation of an error encountered during validation.

Validation context carried along by the JSV.Validator and given to all vocabulary implementations.

Behaviour for vocabulary implementation.

Implementation for the https://json-schema.org/draft/2020-12/vocab/applicator vocabulary.

Placeholder implementation for the https://json-schema.org/draft/2020-12/vocab/content vocabulary. No validation is performed.

Implementation for the https://json-schema.org/draft/2020-12/vocab/core vocabulary.

Implementation for the https://json-schema.org/draft/2020-12/vocab/format-annotation and https://json-schema.org/draft/2020-12/vocab/format-assertion vocabularies.

Implementation for the https://json-schema.org/draft/2020-12/vocab/meta-data vocabulary.

Implementation for the https://json-schema.org/draft/2020-12/vocab/unevaluated vocabulary.

Implementation for the https://json-schema.org/draft/2020-12/vocab/validation vocabulary.

Implementation of the applicator vocabulary with draft 7 sepecifiticies.

Implementation of the content vocabulary with draft 7 sepecifiticies. No validation is performed.

Implementation of the core vocabulary with draft 7 sepecifiticies.

Implementation of the format vocabulary with draft 7 sepecifiticies.

Implementation of the meta-data vocabulary with draft 7 sepecifiticies.

Implementation of the validation vocabulary with draft 7 sepecifiticies.

Mix Tasks