The current version of this project is licensed under both LGPLv3 (or later) and ASL 2.0. The old version (2.0.x) was licensed under LGPL 3.0 (or later) only.
Version 2.2 is out. See here for the list of changes compared to 2.0. And of course, it still has all the features of older versions.
This is an implementation with complete validation support for the latest JSON Schema draft (v4, including hyperschema syntax support) and the previous draft (v3 -- no hyperschema support though). Its list of features would be too long to enumerate here; please refer to the links above!
Should you wonder about it, this library is reported to work on Android. Starting with version 2.2.x, all APK conflicts have been resolved, so you can use this in this context as well.
This project has a dedicated Google group. For any questions you have about this software package, feel free to post! The author (me) will try and respond in a timely manner.
You can test this library online; this web site is in a project of its own, which you can fork and run by yourself.
This package is available on Maven central; the artifact is as follows:
Gradle:
dependencies {
compile(group: "com.github.java-json-tools", name: "json-schema-validator", version: "2.2.14");
}
Maven:
<dependency>
<groupId>com.github.java-json-tools</groupId>
<artifactId>json-schema-validator</artifactId>
<version>2.2.14</version>
</dependency>
OUTDATED: Let me know if you need this in the issues section.
This jar contains the library plus all its dependencies. Download the lib jar (a little more than 6 MiB) from Bintray.
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.