Skip to content

Latest commit

 

History

History
38 lines (26 loc) · 1.75 KB

README.md

File metadata and controls

38 lines (26 loc) · 1.75 KB

cds-validator

NPM

Build Status devDependency Status

A "card validator" to evaluate CDS payloads.

Usage

The library takes, as input, a string representing the response from a CDS service and optional options to feed the jsonschema. It will return a promise that will either resolve to a JSON object (the parsed payload) or reject to an array of errors indicating what went wrong.

The module exports validators for CDS Service Responses (Cards) and CDS Discovery Responses.

// pick your poison
var validate = require('cds-validator').Card;
var validate = require('cds-validator').DiscoveryResponse;
var validate = require('cds-validator').ServiceRequest;

var options = {
  propertyName: 'payload'
}
validate(jsonString, options).then(function(obj) {
    // do something with the parsed payload
  })
  .catch(function(err) {
    // an array of errors indicating what went wrong,
    // where failing fields are called 'payload.<field name>' (default is 'instance.<field name>')
  });

Notes

Thank you to Josh Mandel and Kevin Shekleton for the cds-hooks project, a JSON-based mechanism for EMR systems to provide decision support tools from within a clinician's workflow.