health-data-standards 3.4.3 → 3.4.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +7 -0
- data/lib/health-data-standards/export/helper/html_view_helper.rb +14 -0
- data/lib/health-data-standards/import/bundle/importer.rb +12 -12
- data/lib/health-data-standards/models/cqm/measure.rb +17 -11
- data/lib/health-data-standards/models/cqm/query_cache.rb +9 -4
- data/lib/health-data-standards/tasks/bundle.rake +22 -21
- data/lib/hqmf-model/population_criteria.rb +1 -1
- data/lib/hqmf-parser/1.0/precondition.rb +1 -0
- data/lib/hqmf-parser/1.0/restriction.rb +2 -0
- data/lib/hqmf-parser/1.0/utilities.rb +14 -0
- data/templates/html/_entry.html.erb +1 -1
- data/templates/html/show.html.erb +2 -0
- metadata +38 -38
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a480121f52dadad4ea76ab611bfa5547873266df
|
4
|
+
data.tar.gz: 2a1f0fe2ae72b74f35d8db365da80e3d0654a915
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 37ef1885436c68bfeff5e2ea0b055365d6bc4ae4623c152cf0299646369a80a197bd8a3b89096f7c225ccbe049de2ffc1ac1e2da9aa741a88c6640231db6ef67
|
7
|
+
data.tar.gz: b54ff8e18fd0f0c47e54b6a2d46440d10307ef5965026b948972d4198fe54e6e3938e0c68b63e8d23a087cd19af8976a6aa7bb24a6bf8ca225fd438cc233f841
|
data/README.md
CHANGED
@@ -25,7 +25,14 @@ Please try to follow the [GitHub Coding Style Guides](https://github.com/stylegu
|
|
25
25
|
Change Log
|
26
26
|
==========
|
27
27
|
|
28
|
+
3.4.4
|
29
|
+
|
30
|
+
* Updating the Measure model to deal with continuous variable and NQF and CMS ids through Measure.categories
|
31
|
+
* Bug fix - Filters were not properly handled by the QueryCache
|
32
|
+
* Bug fix - Fixed the order of populations in HQMF::PopulationCriteria::ALL_POPULATION_CODES so that DENEX is after denominator
|
33
|
+
|
28
34
|
3.4.3 - March 6, 2014
|
35
|
+
|
29
36
|
* Implemented support for providers in QRDA Cat III documents
|
30
37
|
* Now handles null value HQMF expression value types
|
31
38
|
|
@@ -19,6 +19,20 @@ module HealthDataStandards
|
|
19
19
|
status
|
20
20
|
end
|
21
21
|
end
|
22
|
+
|
23
|
+
def decode_hqmf_description(description, oid)
|
24
|
+
if oid
|
25
|
+
definition = HealthDataStandards::Util::HQMFTemplateHelper.definition_for_template_id(oid)['definition']
|
26
|
+
status = HealthDataStandards::Util::HQMFTemplateHelper.definition_for_template_id(oid)['status']
|
27
|
+
unless status.blank?
|
28
|
+
"#{definition.titleize}, #{status.titleize}".to_sym
|
29
|
+
else
|
30
|
+
"#{definition.titleize}".to_sym
|
31
|
+
end
|
32
|
+
else
|
33
|
+
description
|
34
|
+
end
|
35
|
+
end
|
22
36
|
end
|
23
37
|
end
|
24
38
|
end
|
@@ -2,13 +2,13 @@ require 'zip/zipfilesystem'
|
|
2
2
|
module HealthDataStandards
|
3
3
|
module Import
|
4
4
|
module Bundle
|
5
|
-
|
5
|
+
|
6
6
|
class Importer
|
7
7
|
|
8
|
-
SOURCE_ROOTS = {bundle: 'bundle.json',
|
9
|
-
libraries: File.join('library_functions','*.js'),
|
10
|
-
measures: 'measures', results: 'results',
|
11
|
-
valuesets: File.join('value_sets','json','*.json'),
|
8
|
+
SOURCE_ROOTS = {bundle: 'bundle.json',
|
9
|
+
libraries: File.join('library_functions','*.js'),
|
10
|
+
measures: 'measures', results: 'results',
|
11
|
+
valuesets: File.join('value_sets','json','*.json'),
|
12
12
|
patients: 'patients'}
|
13
13
|
COLLECTION_NAMES = ["bundles", "records", "measures", "selected_measures", "patient_cache", "query_cache", "system.js"]
|
14
14
|
CLEAR_ONLY_COLLECTIONS = ["system.js"]
|
@@ -36,19 +36,19 @@ module HealthDataStandards
|
|
36
36
|
raise "A bundle with version #{bundle.version} already exists in the database. "
|
37
37
|
end
|
38
38
|
|
39
|
-
HealthDataStandards::CQM::Bundle.where({:version => bundle.version}).each do |b|
|
39
|
+
HealthDataStandards::CQM::Bundle.where({:version => bundle.version}).each do |b|
|
40
40
|
puts "deleting existing bundle version: #{b.version}"
|
41
41
|
b.delete
|
42
42
|
end if options[:delete_existing]
|
43
43
|
|
44
44
|
#find the highest bundle version and see if one is installed that is greater than the one
|
45
|
-
# we are currently installing. Do not load the libs other wise
|
45
|
+
# we are currently installing. Do not load the libs other wise
|
46
46
|
vers = bundle_versions.values.sort.reverse[0]
|
47
47
|
if (vers.nil? || vers <= bundle.version || options["force_js_install"])
|
48
|
-
unpack_and_store_system_js(zip_file)
|
48
|
+
unpack_and_store_system_js(zip_file)
|
49
49
|
else
|
50
50
|
puts "javascript libraries will not being updated as a more recent bundle version is already installed"
|
51
|
-
end
|
51
|
+
end
|
52
52
|
# Store the bundle metadata.
|
53
53
|
unless bundle.save
|
54
54
|
raise bundle.errors.full_messages.join(",")
|
@@ -56,9 +56,9 @@ module HealthDataStandards
|
|
56
56
|
puts "bundle metadata unpacked..."
|
57
57
|
|
58
58
|
measure_ids = unpack_and_store_measures(zip_file, options[:type], bundle, options[:update_measures])
|
59
|
-
unpack_and_store_patients(zip_file, options[:type], bundle)
|
59
|
+
unpack_and_store_patients(zip_file, options[:type], bundle) unless options[:exclude_results]
|
60
60
|
unpack_and_store_valuesets(zip_file, bundle)
|
61
|
-
unpack_and_store_results(zip_file, options[:type], measure_ids, bundle)
|
61
|
+
unpack_and_store_results(zip_file, options[:type], measure_ids, bundle) unless options[:exclude_results]
|
62
62
|
|
63
63
|
end
|
64
64
|
|
@@ -163,7 +163,7 @@ module HealthDataStandards
|
|
163
163
|
contents.select! {|entry| measure_ids.include? entry['value']['measure_id']} if collection == 'patient_cache'
|
164
164
|
end
|
165
165
|
|
166
|
-
contents.each do |document|
|
166
|
+
contents.each do |document|
|
167
167
|
if name == "by_patient"
|
168
168
|
# Set the patient_id to the actual _id of
|
169
169
|
# newly created patient record
|
@@ -19,7 +19,7 @@ module HealthDataStandards
|
|
19
19
|
field :type, type: String
|
20
20
|
field :category, type: String
|
21
21
|
field :population_ids , type: Hash
|
22
|
-
field :oids, type: Array
|
22
|
+
field :oids, type: Array
|
23
23
|
|
24
24
|
field :population_criteria, type: Hash
|
25
25
|
field :data_criteria, type: Array, default: []
|
@@ -39,29 +39,35 @@ module HealthDataStandards
|
|
39
39
|
index sub_id: 1
|
40
40
|
index _id: 1, sub_id: 1
|
41
41
|
index bundle_id: 1
|
42
|
-
|
42
|
+
|
43
43
|
validates_presence_of :id
|
44
44
|
validates_presence_of :name
|
45
45
|
|
46
46
|
def self.categories
|
47
47
|
pipeline = []
|
48
|
-
pipeline << {'$group' => {_id: "$id",
|
48
|
+
pipeline << {'$group' => {_id: "$id",
|
49
49
|
name: {"$first" => "$name"},
|
50
50
|
description: {"$first" => "$description"},
|
51
|
-
sub_ids: {'$push' => "$sub_id"},
|
52
51
|
subs: {'$push' => {"sub_id" => "$sub_id", "short_subtitle" => "$short_subtitle"}},
|
52
|
+
sub_ids: {'$push' => "$sub_id"},
|
53
|
+
nqf_id: {"$first" => "$nqf_id"},
|
54
|
+
cms_id: {"$first" => "$cms_id"},
|
55
|
+
continuous_variable: {"$first" => "$continuous_variable"},
|
53
56
|
category: {'$first' => "$category"}}}
|
54
57
|
|
55
58
|
pipeline << {'$group' => {_id: "$category",
|
56
|
-
measures: {'$push' => {"id" => "$_id",
|
59
|
+
measures: {'$push' => {"id" => "$_id",
|
57
60
|
'name' => "$name",
|
58
61
|
'description' => "$description",
|
59
62
|
'subs' => "$subs",
|
60
|
-
'sub_ids' => "$sub_ids"
|
63
|
+
'sub_ids' => "$sub_ids",
|
64
|
+
'nqf_id' => "$nqf_id",
|
65
|
+
'cms_id' => "$cms_id",
|
66
|
+
'continuous_variable' => "$continuous_variable"
|
61
67
|
}}}}
|
62
68
|
|
63
69
|
pipeline << {'$project' => {'category' => '$_id', 'measures' => 1, '_id' => 0}}
|
64
|
-
|
70
|
+
|
65
71
|
pipeline << {'$sort' => {"category" => 1}}
|
66
72
|
Mongoid.default_session.command(aggregate: 'measures', pipeline: pipeline)['result']
|
67
73
|
end
|
@@ -76,7 +82,7 @@ module HealthDataStandards
|
|
76
82
|
def key
|
77
83
|
"#{self['id']}#{sub_id}"
|
78
84
|
end
|
79
|
-
|
85
|
+
|
80
86
|
def is_cv?
|
81
87
|
! population_ids[MSRPOPL].nil?
|
82
88
|
end
|
@@ -84,7 +90,7 @@ module HealthDataStandards
|
|
84
90
|
def self.installed
|
85
91
|
Measure.order_by([["id", :asc],["sub_id", :asc]]).to_a
|
86
92
|
end
|
87
|
-
|
93
|
+
|
88
94
|
|
89
95
|
# Finds all measures and groups the sub measures
|
90
96
|
# @return Array - This returns an Array of Hashes. Each Hash will represent a top level measure with an ID, name, and category.
|
@@ -94,14 +100,14 @@ module HealthDataStandards
|
|
94
100
|
if (obj.sub_id != null)
|
95
101
|
prev.subs.push({id : obj.id + obj.sub_id, name : obj.subtitle});
|
96
102
|
}'
|
97
|
-
|
103
|
+
|
98
104
|
self.moped_session.command( :group=> {:ns=>"measures", :key => {:id=>1, :name=>1, :category=>1}, :initial => {:subs => []}, "$reduce" => reduce})["retval"]
|
99
105
|
end
|
100
106
|
|
101
107
|
def display_name
|
102
108
|
"#{self['cms_id']}/#{self['nqf_id']} - #{name}"
|
103
109
|
end
|
104
|
-
|
110
|
+
|
105
111
|
|
106
112
|
def set_id
|
107
113
|
self.hqmf_set_id
|
@@ -5,7 +5,7 @@ module HealthDataStandards
|
|
5
5
|
include Mongoid::Timestamps
|
6
6
|
store_in collection: 'query_cache'
|
7
7
|
|
8
|
-
field :calculation_date, type: Time
|
8
|
+
field :calculation_date, type: Time
|
9
9
|
field :status, type: Hash
|
10
10
|
field :measure_id, type: String
|
11
11
|
field :sub_id, type: String
|
@@ -21,8 +21,13 @@ module HealthDataStandards
|
|
21
21
|
field :OBSERV, type: Float
|
22
22
|
field :supplemental_data, type: Hash
|
23
23
|
|
24
|
-
def self.aggregate_measure(measure_id, effective_date,
|
25
|
-
|
24
|
+
def self.aggregate_measure(measure_id, effective_date, filters=nil, test_id=nil)
|
25
|
+
query_hash = {'effective_date' => effective_date, 'measure_id' => measure_id,
|
26
|
+
'test_id' => test_id}
|
27
|
+
if filters
|
28
|
+
query_hash.merge!(filters)
|
29
|
+
end
|
30
|
+
cache_entries = self.where(query_hash)
|
26
31
|
aggregate_count = AggregateCount.new(measure_id)
|
27
32
|
cache_entries.each do |cache_entry|
|
28
33
|
aggregate_count.add_entry(cache_entry)
|
@@ -38,7 +43,7 @@ module HealthDataStandards
|
|
38
43
|
population_ids.has_key?('MSRPOPL')
|
39
44
|
end
|
40
45
|
|
41
|
-
|
46
|
+
|
42
47
|
end
|
43
48
|
end
|
44
49
|
end
|
@@ -22,7 +22,7 @@ namespace :bundle do
|
|
22
22
|
|
23
23
|
|
24
24
|
desc 'List bundles'
|
25
|
-
task :list => [:environment] do
|
25
|
+
task :list => [:environment] do
|
26
26
|
Bundle.where({}).each do |b|
|
27
27
|
puts "Bundle #{b.title} - #{b.version} active: #{b.active}"
|
28
28
|
end
|
@@ -30,14 +30,15 @@ namespace :bundle do
|
|
30
30
|
|
31
31
|
|
32
32
|
desc 'Import a quality bundle into the database.'
|
33
|
-
task :import, [:bundle_path, :delete_existing, :update_measures, :type, :create_indexes] => [:environment] do |task, args|
|
33
|
+
task :import, [:bundle_path, :delete_existing, :update_measures, :type, :create_indexes, :exclude_results] => [:environment] do |task, args|
|
34
34
|
raise "The path to the measures zip file must be specified" unless args.bundle_path
|
35
35
|
options = {:delete_existing => (args.delete_existing == "true"),
|
36
36
|
:type => args.type,
|
37
|
-
:update_measures => (args.update_measures == "true")
|
37
|
+
:update_measures => (args.update_measures == "true"),
|
38
|
+
:exclude_results => (args.exclude_results == "true")
|
38
39
|
}
|
39
40
|
|
40
|
-
bundle = File.open(args.bundle_path)
|
41
|
+
bundle = File.open(args.bundle_path)
|
41
42
|
importer = HealthDataStandards::Import::Bundle::Importer
|
42
43
|
bundle_contents = importer.import(bundle, options)
|
43
44
|
|
@@ -52,30 +53,30 @@ namespace :bundle do
|
|
52
53
|
end
|
53
54
|
|
54
55
|
puts "Successfully imported bundle at: #{args.bundle_path}"
|
55
|
-
puts "\t Imported into environment: #{Rails.env.upcase}" if defined? Rails
|
56
|
+
puts "\t Imported into environment: #{Rails.env.upcase}" if defined? Rails
|
56
57
|
puts "\t Loaded #{args.type || 'all'} measures"
|
57
58
|
puts "\t Sub-Measures Loaded: #{counts[:measures]}"
|
58
59
|
puts "\t Test Patients Loaded: #{counts[:records]}"
|
59
60
|
puts "\t Extensions Loaded: #{counts[:extensions]}"
|
60
61
|
puts "\t Value Sets Loaded: #{counts[:value_sets]}"
|
61
|
-
|
62
|
+
|
62
63
|
|
63
64
|
end
|
64
|
-
|
65
|
+
|
65
66
|
# this task is most likely temporary. Once Bonnie can handle both EP and EH measures together, this would no longer be required.
|
66
67
|
desc 'Merge two bundles into one.'
|
67
68
|
task :merge, [:bundle_one,:bundle_two] do |t, args|
|
68
69
|
raise "Two bundle zip file paths to be merged must be specified" unless args.bundle_one && args.bundle_two
|
69
|
-
|
70
|
+
|
70
71
|
tmpdir = Dir.mktmpdir
|
71
72
|
['measures','patients','library_functions','results', 'sources', 'value_sets'].each do |dir|
|
72
|
-
|
73
|
+
|
73
74
|
FileUtils.mkdir_p(File.join(tmpdir, 'output', dir))
|
74
|
-
|
75
|
+
|
75
76
|
end
|
76
|
-
|
77
|
+
|
77
78
|
begin
|
78
|
-
|
79
|
+
|
79
80
|
({'one'=>args.bundle_one,'two'=>args.bundle_two}).each do |key, source|
|
80
81
|
Zip::ZipFile.open(source) do |zip_file|
|
81
82
|
zip_file.each do |f|
|
@@ -85,8 +86,8 @@ namespace :bundle do
|
|
85
86
|
end
|
86
87
|
end
|
87
88
|
end
|
88
|
-
|
89
|
-
|
89
|
+
|
90
|
+
|
90
91
|
['measures','patients','library_functions', 'sources'].each do |dir|
|
91
92
|
['one','two'].each do |key|
|
92
93
|
FileUtils.mv(Dir.glob(File.join(tmpdir,key,dir,'*')), File.join(tmpdir,'output',dir))
|
@@ -102,14 +103,14 @@ namespace :bundle do
|
|
102
103
|
end
|
103
104
|
end
|
104
105
|
end
|
105
|
-
|
106
|
+
|
106
107
|
Dir.glob(File.join(tmpdir,'one','results','*.json')).each do |result_path_one|
|
107
108
|
json_one = JSON.parse(File.new(result_path_one).read)
|
108
109
|
result_filename = Pathname.new(result_path_one).basename.to_s
|
109
110
|
json_two = JSON.parse(File.new(File.join(tmpdir,'two','results',result_filename)).read)
|
110
111
|
File.open(File.join(tmpdir,'output','results',result_filename), 'w') {|f| f.write(JSON.pretty_generate(json_one + json_two)) }
|
111
112
|
end
|
112
|
-
|
113
|
+
|
113
114
|
json_one = JSON.parse(File.new(File.join(tmpdir,'one','bundle.json')).read)
|
114
115
|
json_two = JSON.parse(File.new(File.join(tmpdir,'two','bundle.json')).read)
|
115
116
|
json_out = {}
|
@@ -119,7 +120,7 @@ namespace :bundle do
|
|
119
120
|
['measures','patients','extensions'].each do |key|
|
120
121
|
json_out[key] = (json_one[key] + json_two[key]).uniq
|
121
122
|
end
|
122
|
-
|
123
|
+
|
123
124
|
version = json_out['version']
|
124
125
|
|
125
126
|
File.open(File.join(tmpdir,'output','bundle.json'), 'w') {|f| f.write(JSON.pretty_generate(json_out)) }
|
@@ -133,14 +134,14 @@ namespace :bundle do
|
|
133
134
|
zipfile.add(file.sub(path+'/',''),file)
|
134
135
|
end
|
135
136
|
end
|
136
|
-
|
137
|
+
|
137
138
|
puts "wrote merged bundle to: #{out_zip}"
|
138
139
|
|
139
140
|
ensure
|
140
141
|
FileUtils.remove_entry_secure tmpdir
|
141
142
|
end
|
142
|
-
|
143
|
-
|
143
|
+
|
144
|
+
|
144
145
|
end
|
145
|
-
|
146
|
+
|
146
147
|
end
|
@@ -16,7 +16,7 @@ module HQMF
|
|
16
16
|
MSRPOPL = 'MSRPOPL'
|
17
17
|
OBSERV = 'OBSERV'
|
18
18
|
|
19
|
-
ALL_POPULATION_CODES = [IPP, DENOM, NUMER, DENEXCEP,
|
19
|
+
ALL_POPULATION_CODES = [IPP, DENOM, DENEX, NUMER, DENEXCEP, MSRPOPL, OBSERV]
|
20
20
|
|
21
21
|
# Create a new population criteria
|
22
22
|
# @param [String] id
|
@@ -36,6 +36,20 @@ module HQMF1
|
|
36
36
|
end
|
37
37
|
clean_json(json)
|
38
38
|
end
|
39
|
+
|
40
|
+
# Preconditions can have nil conjunctions as part of a DATEDIFF, we want to remove these and warn
|
41
|
+
def check_nil_conjunction_on_child
|
42
|
+
if (@preconditions.length == 1 && @preconditions.first.conjunction.nil?)
|
43
|
+
bad_precondition = @preconditions.first
|
44
|
+
if (bad_precondition.restrictions.empty? && bad_precondition.subset.nil? && bad_precondition.expression.nil?)
|
45
|
+
@preconditions = @preconditions.first.preconditions
|
46
|
+
puts "\t FIXED PRECONDITION WITHOUT CONJUNCTION"
|
47
|
+
else
|
48
|
+
puts "\t PRECONDITION WITHOUT CONJUNCTION: Cannot be fixed"
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
39
53
|
|
40
54
|
end
|
41
55
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<tr class="narr_tr">
|
2
2
|
|
3
|
-
<td><%if entry.negationInd %><b>Not Done: </b><% end %><%= entry.description %></td>
|
3
|
+
<td><%if entry.negationInd %><b>Not Done: </b><% end %><%= decode_hqmf_description(entry.description, entry.oid) %></td>
|
4
4
|
<td>
|
5
5
|
<% entry.codes.each do |set, codes| %>
|
6
6
|
<% entry_key = "#{entry.id}_#{by_encounter}" %>
|
@@ -130,9 +130,11 @@
|
|
130
130
|
codes.style.display = 'none';
|
131
131
|
}
|
132
132
|
</script>
|
133
|
+
<% if measures.length==0 %>
|
133
134
|
<div>
|
134
135
|
<h3><a href="#" onclick="toggle('table_by_encounter');" id="toggle_button">View By Encounter</a></h3>
|
135
136
|
</div>
|
137
|
+
<% end %>
|
136
138
|
<%== render :partial => 'entries_by_section', :locals => {patient: patient, code_map: code_map, measures: measures} %>
|
137
139
|
<% if measures.length==0 %>
|
138
140
|
<%== render :partial => 'entries_by_encounter', :locals => {patient: patient, code_map: code_map, measures: measures} %>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: health-data-standards
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.4.
|
4
|
+
version: 3.4.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andy Gregorowicz
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2014-03-
|
15
|
+
date: 2014-03-25 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: rest-client
|
@@ -175,10 +175,6 @@ executables: []
|
|
175
175
|
extensions: []
|
176
176
|
extra_rdoc_files: []
|
177
177
|
files:
|
178
|
-
- Gemfile
|
179
|
-
- README.md
|
180
|
-
- Rakefile
|
181
|
-
- lib/health-data-standards.rb
|
182
178
|
- lib/health-data-standards/export/c32.rb
|
183
179
|
- lib/health-data-standards/export/cat_1.rb
|
184
180
|
- lib/health-data-standards/export/cat_3.rb
|
@@ -195,7 +191,6 @@ files:
|
|
195
191
|
- lib/health-data-standards/export/helper/scooped_view_helper.rb
|
196
192
|
- lib/health-data-standards/export/html.rb
|
197
193
|
- lib/health-data-standards/export/qrda/entry_template_resolver.rb
|
198
|
-
- lib/health-data-standards/export/qrda/hqmf-qrda-oids.json
|
199
194
|
- lib/health-data-standards/export/rendering_context.rb
|
200
195
|
- lib/health-data-standards/export/template_helper.rb
|
201
196
|
- lib/health-data-standards/export/view_helper.rb
|
@@ -330,51 +325,22 @@ files:
|
|
330
325
|
- lib/health-data-standards/models/treating_provider.rb
|
331
326
|
- lib/health-data-standards/models/vital_sign.rb
|
332
327
|
- lib/health-data-standards/railtie.rb
|
333
|
-
- lib/health-data-standards/tasks/bundle.rake
|
334
328
|
- lib/health-data-standards/util/code_system_helper.rb
|
335
329
|
- lib/health-data-standards/util/hl7_helper.rb
|
336
330
|
- lib/health-data-standards/util/hqmf_template_helper.rb
|
337
|
-
- lib/health-data-standards/util/hqmf_template_oid_map.json
|
338
331
|
- lib/health-data-standards/util/vs_api.rb
|
339
|
-
- lib/
|
340
|
-
- lib/hqmf-generator/characteristic_criteria.xml.erb
|
341
|
-
- lib/hqmf-generator/code.xml.erb
|
342
|
-
- lib/hqmf-generator/condition_criteria.xml.erb
|
343
|
-
- lib/hqmf-generator/derivation.xml.erb
|
344
|
-
- lib/hqmf-generator/description.xml.erb
|
345
|
-
- lib/hqmf-generator/document.xml.erb
|
346
|
-
- lib/hqmf-generator/effective_time.xml.erb
|
347
|
-
- lib/hqmf-generator/encounter_criteria.xml.erb
|
348
|
-
- lib/hqmf-generator/field.xml.erb
|
332
|
+
- lib/health-data-standards.rb
|
349
333
|
- lib/hqmf-generator/hqmf-generator.rb
|
350
|
-
- lib/hqmf-generator/observation_criteria.xml.erb
|
351
|
-
- lib/hqmf-generator/population_criteria.xml.erb
|
352
|
-
- lib/hqmf-generator/precondition.xml.erb
|
353
|
-
- lib/hqmf-generator/procedure_criteria.xml.erb
|
354
|
-
- lib/hqmf-generator/reason.xml.erb
|
355
|
-
- lib/hqmf-generator/reference.xml.erb
|
356
|
-
- lib/hqmf-generator/source.xml.erb
|
357
|
-
- lib/hqmf-generator/specific_occurrence.xml.erb
|
358
|
-
- lib/hqmf-generator/subset.xml.erb
|
359
|
-
- lib/hqmf-generator/substance_criteria.xml.erb
|
360
|
-
- lib/hqmf-generator/supply_criteria.xml.erb
|
361
|
-
- lib/hqmf-generator/template_id.xml.erb
|
362
|
-
- lib/hqmf-generator/temporal_relationship.xml.erb
|
363
|
-
- lib/hqmf-generator/value.xml.erb
|
364
|
-
- lib/hqmf-generator/variable_criteria.xml.erb
|
365
334
|
- lib/hqmf-model/attribute.rb
|
366
|
-
- lib/hqmf-model/data_criteria.json
|
367
335
|
- lib/hqmf-model/data_criteria.rb
|
368
336
|
- lib/hqmf-model/document.rb
|
369
337
|
- lib/hqmf-model/population_criteria.rb
|
370
338
|
- lib/hqmf-model/precondition.rb
|
371
339
|
- lib/hqmf-model/types.rb
|
372
340
|
- lib/hqmf-model/utilities.rb
|
373
|
-
- lib/hqmf-parser.rb
|
374
341
|
- lib/hqmf-parser/1.0/attribute.rb
|
375
342
|
- lib/hqmf-parser/1.0/comparison.rb
|
376
343
|
- lib/hqmf-parser/1.0/data_criteria.rb
|
377
|
-
- lib/hqmf-parser/1.0/data_criteria_oid_xpath.json
|
378
344
|
- lib/hqmf-parser/1.0/document.rb
|
379
345
|
- lib/hqmf-parser/1.0/expression.rb
|
380
346
|
- lib/hqmf-parser/1.0/observation.rb
|
@@ -402,6 +368,7 @@ files:
|
|
402
368
|
- lib/hqmf-parser/converter/pass2/comparison_converter.rb
|
403
369
|
- lib/hqmf-parser/converter/pass2/operator_converter.rb
|
404
370
|
- lib/hqmf-parser/parser.rb
|
371
|
+
- lib/hqmf-parser.rb
|
405
372
|
- lib/util/counter.rb
|
406
373
|
- templates/_author.hdata.erb
|
407
374
|
- templates/_pedigree.hdata.erb
|
@@ -536,6 +503,39 @@ files:
|
|
536
503
|
- templates/html/_section.html.erb
|
537
504
|
- templates/html/show.html.erb
|
538
505
|
- templates/metadata.hdata.erb
|
506
|
+
- lib/health-data-standards/export/qrda/hqmf-qrda-oids.json
|
507
|
+
- lib/health-data-standards/util/hqmf_template_oid_map.json
|
508
|
+
- lib/hqmf-model/data_criteria.json
|
509
|
+
- lib/hqmf-parser/1.0/data_criteria_oid_xpath.json
|
510
|
+
- lib/hqmf-generator/attribute.xml.erb
|
511
|
+
- lib/hqmf-generator/characteristic_criteria.xml.erb
|
512
|
+
- lib/hqmf-generator/code.xml.erb
|
513
|
+
- lib/hqmf-generator/condition_criteria.xml.erb
|
514
|
+
- lib/hqmf-generator/derivation.xml.erb
|
515
|
+
- lib/hqmf-generator/description.xml.erb
|
516
|
+
- lib/hqmf-generator/document.xml.erb
|
517
|
+
- lib/hqmf-generator/effective_time.xml.erb
|
518
|
+
- lib/hqmf-generator/encounter_criteria.xml.erb
|
519
|
+
- lib/hqmf-generator/field.xml.erb
|
520
|
+
- lib/hqmf-generator/observation_criteria.xml.erb
|
521
|
+
- lib/hqmf-generator/population_criteria.xml.erb
|
522
|
+
- lib/hqmf-generator/precondition.xml.erb
|
523
|
+
- lib/hqmf-generator/procedure_criteria.xml.erb
|
524
|
+
- lib/hqmf-generator/reason.xml.erb
|
525
|
+
- lib/hqmf-generator/reference.xml.erb
|
526
|
+
- lib/hqmf-generator/source.xml.erb
|
527
|
+
- lib/hqmf-generator/specific_occurrence.xml.erb
|
528
|
+
- lib/hqmf-generator/subset.xml.erb
|
529
|
+
- lib/hqmf-generator/substance_criteria.xml.erb
|
530
|
+
- lib/hqmf-generator/supply_criteria.xml.erb
|
531
|
+
- lib/hqmf-generator/template_id.xml.erb
|
532
|
+
- lib/hqmf-generator/temporal_relationship.xml.erb
|
533
|
+
- lib/hqmf-generator/value.xml.erb
|
534
|
+
- lib/hqmf-generator/variable_criteria.xml.erb
|
535
|
+
- lib/health-data-standards/tasks/bundle.rake
|
536
|
+
- Gemfile
|
537
|
+
- README.md
|
538
|
+
- Rakefile
|
539
539
|
homepage: https://github.com/projectcypress/health-data-standards
|
540
540
|
licenses:
|
541
541
|
- APL 2.0
|
@@ -556,7 +556,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
556
556
|
version: '0'
|
557
557
|
requirements: []
|
558
558
|
rubyforge_project:
|
559
|
-
rubygems_version: 2.
|
559
|
+
rubygems_version: 2.0.14
|
560
560
|
signing_key:
|
561
561
|
specification_version: 4
|
562
562
|
summary: A library for generating and consuming various healthcare related formats.
|