No description, website, or topics provided.
Pull request Compare This branch is 765 commits behind projectcypress:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

This is a project to generate and consume HITSP C32, ASTM CCR, QRDA Category I, QRDA Category III and PQRI.

In addition this project also contains libaries for parsing HQMF documents and for dealing with NLM valuesets.


This project currently uses Ruby 1.9.3, Ruby 2.0.0 and JRuby 1.7.9 and is built using Bundler. To get all of the dependencies for the project, first install bundler:

gem install bundler

Then run bundler to grab all of the necessary gems:

bundle install

The Quality Measure engine relies on a MongoDB MongoDB running a minimum of version 2.4.* or higher. To get and install Mongo refer to:

Project Practices

Please try to follow the GitHub Coding Style Guides. Additionally, we are switching to the git workflow described in Juan Batiz-Benet's Gist. If you are new to the project and would like to make changes, please fork and do your work in a feature branch. Submit a pull request and we'll check to see if it is suitable to be merged in.

Change Log

3.4.2 - February 28, 2014

  • Provider improvements ** Providers are now exported in QRDA Cat I if they exist on the Record object ** Provider identifiers are now represented with CDAIdentifiers ** Provider import will now import any type of identifier ** Providers can now be arranged in a hierarchy ** When importing providers from a clincial document, matching to existing providers in MongoDB has been improved to matching on any type of identifier
  • QRDA Cat I importer now imports procedure values regardless of whether the template has them at the root level or nested in an entryRelationship
  • Bug fix - Result importer will no longer double import result values
  • QRDA Cat I importer now imports encounter order end times
  • Bug fix - QRDA Cat I importer now properly imports condition and procedure ordinaltiy

3.4.1 - January 24, 2014

  • Fix for JRuby - Nokogiri is now fixed to version 1.6.0 exactly. Version 1.6.1 was breaking the CCR part of the test suite under JRuby. Nokogiri 1.6.0 works properly across Ruby 1.9.3, Ruby 2.0.0 and JRuby 1.7.9

3.4.0 - January 23, 2014

  • New Feature - BulkRecordImporter class now available that provides the ability to import QRDA Cat I, Consolidated CDA and HITSP C32
  • TemplateHelper now properly accepts a different directory for templates
  • QRDA Cat I importer now extracts negation on procedures
  • Implemented support to encounter transfers in QRDA Cat I import and export
  • Fixed bug where clinical trial participant would always return true on Record
  • QRDA Cat I importer now extracts ordinality and values from procedures
  • Better de-duplicating of data elements imported from QRDA Cat I
  • CDA importers now handle removal time on medical equipment
  • QRDA Cat I exporter now handles 38 week gestational period
  • Stratification fixes for QRDA Cat III export
  • QRDA Cat I importer now extracts incision date/time from procedure performed templates
  • CDA importers set admit times on encounters
  • QRDA Cat I diagnostic study order and procedure order importer now better handles order time for CQM calculation

3.3.0 - November 7, 2013

  • Removing hardcoded headers in QRDA documents and replacing them with templates populated by Ruby objects
  • XML structural fixes in QRDA Category III generation
  • QRDA Category I generation was previously dependent on a patient being associated with a bundle id, it will now use the latest bundle if one is not provided
  • Specified a version in our dependency on rubyzip. API changes in rubyzip were breaking our code
  • Fixed discrepancies between our Measure model and the JSON representation provided in measure bundles

3.2.11 - September 4, 2013

  • Adding rake tasks for working with measure bundles
  • Fixes for XPath expression execution when using JRuby
  • OID fixes for ordinality in QRDA Category

3.2.8 - August 23, 2013

  • Bug fixes for QRDA Category III generation
  • Import for insurance providers from QRDA Category I documents
  • Consolidated code for dealing with code system names


Copyright 2013 The MITRE Corporation

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.