petehug / wjelement-cpp

WJElement-cpp - Lightweight C++ wrapper for WJElement with JSON Schema support
GNU Lesser General Public License v3.0
9 stars 3 forks source link

WJElement-cpp

WJElement-cpp - Lightweight C++ wrapper for WJElement with JSON Schema support

WJElement-cpp is based on top of the C library WJElement. The library is fast and efficient, but the C interface is neither easy to read nor to write. WJElement-cpp changes all that by implementing a WJPP::Node class which simply wraps a WJElement (a pointer to a WJElementPublic struct). You can pass a WJPP::Node object whereever a WJElement is expected and vs. They are interchangable.

WJElement-cpp also supports JSON Schema draft-04. The library maintains a schema cache which, on first use, loads the draft-04 meta schema. You can subsequently use the meta schema to load, validate and cache draft-04 schema. You can then use these schema to validate JSON documents.

One of the unique features of this library is that it ties schematic components to instance data. This means that a node will have access to the schema components that are used for its validation.

Further reading:

Dependencies:

Notes:

Special thanks goes to Micah N Gorrell for his excellent wjelement library!