Skip to main content

general purpose python data validator

Project description

https://travis-ci.org/sunlightlabs/validictory.svg?branch=master:target:https://travis-ci.org/sunlightlabs/validictory https://coveralls.io/repos/sunlightlabs/validictory/badge.png:target:https://coveralls.io/r/sunlightlabs/validictory

A general purpose Python data validator.

Works with Python 2.6+ and Python 3.2+

Schema format based on JSON Schema Proposal (http://json-schema.org)

Contains code derived from jsonschema, by Ian Lewis and Yusuke Muraoka.

Usage

JSON documents and schema must first be loaded into a Python dictionary type before it can be validated.

Parsing a simple JSON document:

>>> import validictory
>>>
>>> validictory.validate("simplejson", {"type":"string"})

Parsing a more complex JSON document:

>>> import simplejson
>>> import validictory
>>>
>>> data = simplejson.loads('["foo", {"bar":["baz", null, 1.0, 2]}]')
>>> schema = {
...   "type":"array",
...   "items":[
...     {"type":"string"},
...     {"type":"object",
...      "properties":{
...        "bar":{
...          "items":[
...            {"type":"string"},
...            {"type":"any"},
...            {"type":"number"},
...            {"type":"integer"}
...          ]
...        }
...      }
...    }
...   ]
... }
>>> validictory.validate(data,schema)

Catch ValueErrors to handle validation issues:

>>> import validictory
>>>
>>> try:
...     validictory.validate("simplejson", {"type":"string","minLength":15})
... except ValueError, error:
...     print error
...
Length of value 'simplejson' for field '_data' must be greater than or equal to 15

You can read more in the official documentation at Read the Docs.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

validictory-1.0.0a1.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

validictory-1.0.0a1-py2.py3-none-any.whl (20.8 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file validictory-1.0.0a1.tar.gz.

File metadata

File hashes

Hashes for validictory-1.0.0a1.tar.gz
Algorithm Hash digest
SHA256 799293fba2c55ba4869a9dabf776092e234fad4f98f6208f1b2f2b5d0ebef31a
MD5 b02f5332600e8f246114d2b35d9cb0bb
BLAKE2b-256 dffd9156b127d4714f2ede86f64b7f7b65db3a2fae0ebe5deab6859367e31a57

See more details on using hashes here.

File details

Details for the file validictory-1.0.0a1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for validictory-1.0.0a1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f75e2b26a262e13206da2826020bc7217b9cdfd390fd164373c8d80dd7497981
MD5 c1501cc099182524ae1e6f86907fdbb9
BLAKE2b-256 00049785c5d3371e88e7e6a55a84b3e8afd24cf3fd3bc226119fc699a7257cc7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page