rx finally gets (experimental) structured failures
Rx is my schema system for validating data in a highly extensible and portable way. It is in the same problem space as JSON Schema and Kwalify (both of which, I think, Rx exceeds), and close to RELAX NG. I wrote it last summer, and I’ve used it quite a bit since then, and I have not been unhappy with it… except for its error reporting.