The ajvr
library is a very thin wrapper around the awesome
AJV JSON validation library. The
essential change between the syntax presented in the official AJV
Readme is exchanging JavaScripts dot
operator (.
) with R's dollar-sign operator ($
).
Note that care must be taken in transforming R objects to JSON, because of
R's everything-is-a-vector philosopy. Hence, for convenience file paths to
valid JSON (.json
) and YAML (.yml
or .yaml
) may be used wherever an
object is expected.
The fastest validation call:
library('ajv') var ajv = Ajv() # options can be passed, e.g. list(allErrors= TRUE) var validate = ajv$compile(schema) var valid = validate(data) if (!valid) print(validate$errors)
or with less code
# ... var valid = ajv$validate(schema, data) if (!valid) print(ajv$errors) # ...
or
# ... ajv$addSchema(schema, 'mySchema') var valid = ajv$validate('mySchema', data) if (!valid) print(ajv$errorsText()) # ...
Note that in each of these calls, schema
and data
arguments may be a
valid JSON string, an R object (i.e. list(...)
), a connection to a JSON
file, or the file name of JSON or YAML file. YAML files are parsed via
js-yaml's safeLoad()
method.
See API and Options for more details.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.