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.
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.