Skip to main content

general purpose python data validator

Project description

https://travis-ci.org/sunlightlabs/validictory.svg?branch=master https://pypip.in/version/validictory/badge.svg https://pypip.in/format/validictory/badge.svg

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.0a2.tar.gz (15.7 kB view details)

Uploaded Source

Built Distribution

validictory-1.0.0a2-py2.py3-none-any.whl (21.0 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

File hashes

Hashes for validictory-1.0.0a2.tar.gz
Algorithm Hash digest
SHA256 c02388a70f5b854e71e2e09bd6d762a2d8c2a017557562e866d8ffafb0934b07
MD5 54c206827931cc4ed8a9b1cc78e380c5
BLAKE2b-256 ccccc8a90649d4df7ab7a3ef6170efac9ede940a5438b009118e390aeefe1592

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for validictory-1.0.0a2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 29b6fe38736966000479f2024dcfee045bb3b4a9c5c58f9558e47725932c684f
MD5 6b76dfabba118b20b4d915807c2bdec4
BLAKE2b-256 a913d8d5f3ad6252dd0a18311c3ac6058f78a6dca016c7fb9efc6fd8d791d89e

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