Xema

Build StatusCoverage StatusHex.pmLicense: MIT

Xema is a schema validator inspired by JSON Schema. For now, Xema supports the features documented in draft 04, 06, and 07 of the JSON-Schema specification.

Xema allows you to annotate and validate elixir data structures.

If you search for a real JSON Schema validator give JsonXema a try.

Xema is in early beta. If you try it and has an issue, report them.

Installation

First, add Xema to your mix.exs dependencies:

def deps do
  [{:xema, "~> 0.7"}]
end

Then, update your dependencies:

$ mix deps.get

Docs

The docs contains a Usage page with a short and compact description to use Xema.

Documentation can be generated with ExDoc by running mix docs. The generated docs can be found at https://hexdocs.pm/xema.

Changelog

Version 0.5.0 coming soon.

Since version 0.5.0 a changelog is available.

To update to version 0.5.0 some migrations steps are required, see changelog.

In version 0.7.0 the behaviour Xema.Resolver was renamed to Xema.Loader.

Tests

The test in the directory xema/test/suite are generated from the JSON-Schema-Test-Suite.

References

The home of JSON Schema: http://json-schema.org/

Specification:

Understanding JSON Schema a great tutorial for JSON Schema authors and a template for the description of Xema.