Nerdiest Political Manifesto

    js-schema-6901

    0.3.0 • Public • Published

    js-schema-6901 Build status

    JSON Pointer, RFC 6901, defines a string syntax for identifying a specific value within a JavaScript Object Notation (JSON) document. For example, evaluating "foo/0/bar" against { foo: [ { bar: 1}, { bar: 2} } returns 1;

    js-schema is simple and intuitive object validation library. It provides support for JSON Schema.

    This package reports schema validation errors with a JSON Pointer to the offending field by adding the jpErrors method to a schema.

    Getting started npm version

    Install with $ npm install js-schema-6901. Bower will be coming soon.

    Usage

    var schema = require('js-schema-6901');
    var person = schema({
        name: String,
        dob: /\d{4}\-\d{2}\-\d{2}/,
        children: Array.of(schema.self)
    });
    
    var badboy = {
        name: 'me', 
        children: [
            {dob: '2000-01-01', children: []}, 
            {dob: '2000-1-01'}
    ]};
    
    console.log(person.jpErrors(badboy));
    

    produces

    { 
       '/dob': 'key is not present in the object',
       '/children/0/name': 'key is not present in the object',
       '/children/1/name': 'key is not present in the object',
       '/children/1/dob': '2000-1-01 is not matched with RegExp -> /\\d{4}\\-\\d{2}\\-\\d{2}/',
       '/children/1/children': 'key is not present in the object' }
    }
    

    License

    The MIT license

    Copyright © 2015 Richard Schneider (makaretu@gmail.com)

    Install

    npm i js-schema-6901

    DownloadsWeekly Downloads

    1

    Version

    0.3.0

    License

    MIT

    Last publish

    Collaborators

    • makaretu