Noosphere Possibilities Maximized

    @amida-tech/blue-button-model

    1.10.3 • Public • Published

    Blue Button Model

    Blue Button Model Definition and Validation

    NPM

    Build Status Coverage Status

    This library defines a JSON Blue Button health data model. All parsers in blue-button library generate data that follow this model. The schema can be found here or programmatically here. The implementation uses z-schema.

    Quick up and running guide

    Prerequisites

    • Node.js (v14.19+) and NPM
    • Grunt.js
    # Install dependencies
    npm i
    
    # Install grunt
    npm i -g grunt
    
    # Test
    grunt
    
    

    Usage

    var fs = require('fs');
    var bb = require('@amida-tech/blue-button');
    bar bbm = require('@amida-tech/blue-button-model');
    
    var xmlString = fs.readFileSync('CCD_1.xml', 'utf-8');
    var record = bb.parseString(xmlString);
    
    var valid = bbm.validator.validateDocumentModel(record);
    if (!valid) {
      var error = bbm.validator.getLastError();
        console.log(error);
    }

    API

    validator.validateDocumentModel(document)

    Primary method to validate Blue Button JSON documents.

    Arguments

    • document - JSON health data document.
    • returns - true or false.

    validator.validate(obj, schemaName)

    Validates individual components in Blue Button documents such as sections and entries.

    Arguments

    • obj - Component in the JSON health data document.
    • schemaName - Type of obj. You can use id property of any schema avaiable in the list.
    • returns - true or false.

    validator.getLastError()

    If validation fails this method returns the details of the errors. The error object is actually an array of errors and directly provided by the underlying library z-schema.

    schemas.list(expandCommon)

    Provides the list of schemas that are used in the model. The list includes section schemas, entry schemas and common component schemas. Full document schema is also available with id document_model.

    Arguments

    • expandCommon - If this is falsy, common component (such as address, time, etc.) schemas are provided in an array.
    • returns - List of schemas.

    schemas.map(expandCommon)

    Similar to list but provides a map of schema ids (name) to schemas. If expandCommon is falsy, the array of common component schemas are provided with common_models key.

    License

    Licensed under Apache 2.0.

    Install

    npm i @amida-tech/blue-button-model

    DownloadsWeekly Downloads

    136

    Version

    1.10.3

    License

    Apache-2.0

    Unpacked Size

    437 kB

    Total Files

    136

    Last publish

    Collaborators

    • manhydra