A JSON Schema validation implementation in pure Java, which aims for correctness and performance, in that order
The license of this project is LGPLv3 or later. See file src/main/resources/LICENSE for the full
text.
This implementation has complete validation support for the latest draft (v4) and the previous draft
(v3). More generally, it has quite an extensive list of
features.
Should you wonder about it, this library is reported to work on
Android
:)
You can test this library online; you can even fork
this web site and run it yourself.
This project also has a dedicated Google group.
Note: this project uses Gradle as the build system. See file BUILD.md for
details.
Since version 2.1.5, this package is available on
Bintray.
Gradle:
dependencies {
compile(group: "com.github.fge", name: "json-schema-validator", version: "yourVersionHere");
}
Maven:
<dependency>
<groupId>com.github.fge</groupId>
<artifactId>json-schema-validator</artifactId>
<version>your-version-here</version>
</dependency>
This library’s dependency on json-schema-core opens up
many possibilities for extensions. A dedicated
project already has a few examples.
The site mentioned above already has a few examples of
what is possible. Much more is doable. In fact, the only limiting factor is your own imagination!
The versioning scheme is defined by the middle digit of the version number:
This implementation is based on the following drafts:
For a detailed discussion of the implementation, see
here.
Please see the wiki for more
details.