Awesome
Read me first
The license of this project is dual licensed LGPLv3 or later/ASL 2.0. See file LICENSE
for more
details. The full text of both licensed is included in the package.
What this is
This package contains the core mechanics of json-schema-validator library. It also provides a comprehensive infrastructure to build processing chains for anything you can think of, really. To this effect, this package can be used, for instance, to perform the following, provided you use the appropriate software packages:
- generate a JSON Schema from a POJO, and then validate instances against that schema;
- transform different, related schema formats into JSON Schema, or the reverse (for instance Avro);
- conditional patching/deserialization;
- etc etc.
You can see sample usages of this library in a separate project which is demonstrated online. More details on this library can be found here.
This library supports Draft 03 and Draft 04. Contribution of support for Draft 05 (issue #61), Draft 06 (issue #62), or Draft 07 (issue #63) would be gratefully accepted.
Versions
The current stable verson is 1.2.14 (ChangeLog, Javadoc).
The old verson is 1.0.4 (ChangeLog, Javadoc).
See here for the major changes between 1.0.x and 1.2.x.
Using this project with gradle/maven
For gradle, use:
dependencies {
compile(group: "com.github.java-json-tools", name: "json-schema-core", version: "1.2.14");
}
For maven:
<dependency>
<groupId>com.github.java-json-tools</groupId>
<artifactId>json-schema-core</artifactId>
<version>1.2.14</version>
</dependency>
OBSOLETE You can also get the jars from Bintray.
Versioning scheme policy
The versioning scheme is defined by the middle digit of the version number:
- if this number is even, then this is the stable version; no new features will be added to such versions, and the user API will not change (save for some additions if requested).
- if this number is odd, then this is the development version; new features will be added to those versions only, and the user API may change.