changed `Validation` to `Result`
added JSON Schema feature