cqm-models 2.0.1 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.eslintrc.json +1 -1
- data/README.md +9 -6
- data/app/assets/javascripts/AdverseEvent.js +9 -3
- data/app/assets/javascripts/AllDataElements.js +18 -6
- data/app/assets/javascripts/AllergyIntolerance.js +8 -2
- data/app/assets/javascripts/AssessmentOrder.js +8 -2
- data/app/assets/javascripts/AssessmentPerformed.js +11 -3
- data/app/assets/javascripts/AssessmentRecommended.js +8 -2
- data/app/assets/javascripts/CareGoal.js +10 -3
- data/app/assets/javascripts/CommunicationPerformed.js +12 -6
- data/app/assets/javascripts/DeviceApplied.js +9 -2
- data/app/assets/javascripts/DeviceOrder.js +8 -2
- data/app/assets/javascripts/DeviceRecommended.js +8 -2
- data/app/assets/javascripts/Diagnosis.js +8 -2
- data/app/assets/javascripts/DiagnosticStudyOrder.js +8 -2
- data/app/assets/javascripts/DiagnosticStudyPerformed.js +9 -2
- data/app/assets/javascripts/DiagnosticStudyRecommended.js +8 -2
- data/app/assets/javascripts/EncounterOrder.js +9 -2
- data/app/assets/javascripts/EncounterPerformed.js +11 -5
- data/app/assets/javascripts/EncounterRecommended.js +8 -2
- data/app/assets/javascripts/FamilyHistory.js +8 -2
- data/app/assets/javascripts/ImmunizationAdministered.js +9 -2
- data/app/assets/javascripts/ImmunizationOrder.js +8 -2
- data/app/assets/javascripts/InterventionOrder.js +8 -2
- data/app/assets/javascripts/InterventionPerformed.js +9 -2
- data/app/assets/javascripts/InterventionRecommended.js +8 -2
- data/app/assets/javascripts/LaboratoryTestOrder.js +8 -2
- data/app/assets/javascripts/LaboratoryTestPerformed.js +9 -2
- data/app/assets/javascripts/LaboratoryTestRecommended.js +8 -2
- data/app/assets/javascripts/MedicationActive.js +9 -2
- data/app/assets/javascripts/MedicationAdministered.js +9 -2
- data/app/assets/javascripts/MedicationDischarge.js +9 -2
- data/app/assets/javascripts/MedicationDispensed.js +10 -4
- data/app/assets/javascripts/MedicationOrder.js +9 -4
- data/app/assets/javascripts/Participation.js +8 -2
- data/app/assets/javascripts/PatientCareExperience.js +8 -2
- data/app/assets/javascripts/PatientCharacteristic.js +7 -2
- data/app/assets/javascripts/PatientCharacteristicBirthdate.js +7 -2
- data/app/assets/javascripts/PatientCharacteristicClinicalTrialParticipant.js +7 -2
- data/app/assets/javascripts/PatientCharacteristicEthnicity.js +7 -2
- data/app/assets/javascripts/PatientCharacteristicExpired.js +7 -2
- data/app/assets/javascripts/PatientCharacteristicPayer.js +7 -2
- data/app/assets/javascripts/PatientCharacteristicRace.js +7 -2
- data/app/assets/javascripts/PatientCharacteristicSex.js +7 -2
- data/app/assets/javascripts/PhysicalExamOrder.js +8 -2
- data/app/assets/javascripts/PhysicalExamPerformed.js +9 -2
- data/app/assets/javascripts/PhysicalExamRecommended.js +8 -2
- data/app/assets/javascripts/ProcedureOrder.js +10 -3
- data/app/assets/javascripts/ProcedurePerformed.js +11 -3
- data/app/assets/javascripts/ProcedureRecommended.js +9 -3
- data/app/assets/javascripts/ProviderCareExperience.js +8 -2
- data/app/assets/javascripts/QDMPatient.js +25 -9
- data/app/assets/javascripts/RelatedPerson.js +42 -0
- data/app/assets/javascripts/SubstanceAdministered.js +9 -2
- data/app/assets/javascripts/SubstanceOrder.js +9 -2
- data/app/assets/javascripts/SubstanceRecommended.js +8 -2
- data/app/assets/javascripts/Symptom.js +8 -2
- data/app/assets/javascripts/attributes/CarePartner.js +31 -0
- data/app/assets/javascripts/attributes/Component.js +22 -1
- data/app/assets/javascripts/attributes/DiagnosisComponent.js +34 -0
- data/app/assets/javascripts/attributes/Entity.js +58 -0
- data/app/assets/javascripts/attributes/FacilityLocation.js +4 -1
- data/app/assets/javascripts/attributes/Identifier.js +23 -0
- data/app/assets/javascripts/attributes/Organization.js +31 -0
- data/app/assets/javascripts/attributes/PatientEntity.js +30 -0
- data/app/assets/javascripts/attributes/Practitioner.js +33 -0
- data/app/assets/javascripts/attributes/ResultComponent.js +31 -0
- data/app/assets/javascripts/basetypes/Any.js +24 -14
- data/app/assets/javascripts/basetypes/AnyEntity.js +44 -0
- data/app/assets/javascripts/basetypes/Code.js +8 -11
- data/app/assets/javascripts/basetypes/DataElement.js +14 -6
- data/app/assets/javascripts/basetypes/Interval.js +2 -2
- data/app/assets/javascripts/basetypes/QDMDate.js +36 -0
- data/app/assets/javascripts/basetypes/Quantity.js +1 -1
- data/app/assets/javascripts/basetypes/Ratio.js +1 -1
- data/app/assets/javascripts/cqm/Provider.js +0 -2
- data/app/models/cqm/provider.rb +4 -4
- data/app/models/hqmfOid_to_datatype_map.json +1 -1
- data/app/models/models.rb +12 -5
- data/app/models/qdm/adverse_event.rb +3 -2
- data/app/models/qdm/allergy_intolerance.rb +2 -1
- data/app/models/qdm/assessment_order.rb +2 -1
- data/app/models/qdm/assessment_performed.rb +5 -2
- data/app/models/qdm/assessment_recommended.rb +2 -1
- data/app/models/qdm/attributes/care_partner.rb +8 -0
- data/app/models/qdm/attributes/component.rb +1 -1
- data/app/models/qdm/attributes/diagnosis_component.rb +10 -0
- data/app/models/qdm/attributes/entity.rb +15 -0
- data/app/models/qdm/attributes/facility_location.rb +1 -1
- data/app/models/qdm/{id.rb → attributes/identifier.rb} +3 -4
- data/app/models/qdm/attributes/organization.rb +8 -0
- data/app/models/qdm/attributes/patient_entity.rb +7 -0
- data/app/models/qdm/attributes/practitioner.rb +10 -0
- data/app/models/qdm/{result_component.rb → attributes/result_component.rb} +1 -3
- data/app/models/qdm/basetypes/code.rb +8 -10
- data/app/models/qdm/basetypes/data_element.rb +19 -6
- data/app/models/qdm/basetypes/date.rb +38 -0
- data/app/models/qdm/basetypes/interval.rb +2 -2
- data/app/models/qdm/care_goal.rb +4 -2
- data/app/models/qdm/communication_performed.rb +6 -5
- data/app/models/qdm/device_applied.rb +3 -1
- data/app/models/qdm/device_order.rb +2 -1
- data/app/models/qdm/device_recommended.rb +2 -1
- data/app/models/qdm/diagnosis.rb +2 -1
- data/app/models/qdm/diagnostic_study_order.rb +2 -1
- data/app/models/qdm/diagnostic_study_performed.rb +3 -1
- data/app/models/qdm/diagnostic_study_recommended.rb +2 -1
- data/app/models/qdm/encounter_order.rb +3 -1
- data/app/models/qdm/encounter_performed.rb +3 -2
- data/app/models/qdm/encounter_recommended.rb +2 -1
- data/app/models/qdm/family_history.rb +2 -1
- data/app/models/qdm/immunization_administered.rb +3 -1
- data/app/models/qdm/immunization_order.rb +2 -1
- data/app/models/qdm/intervention_order.rb +2 -1
- data/app/models/qdm/intervention_performed.rb +3 -1
- data/app/models/qdm/intervention_recommended.rb +2 -1
- data/app/models/qdm/laboratory_test_order.rb +2 -1
- data/app/models/qdm/laboratory_test_performed.rb +3 -1
- data/app/models/qdm/laboratory_test_recommended.rb +2 -1
- data/app/models/qdm/medication_active.rb +3 -1
- data/app/models/qdm/medication_administered.rb +3 -1
- data/app/models/qdm/medication_discharge.rb +3 -1
- data/app/models/qdm/medication_dispensed.rb +4 -3
- data/app/models/qdm/medication_order.rb +3 -3
- data/app/models/qdm/participation.rb +2 -1
- data/app/models/qdm/patient.rb +1 -1
- data/app/models/qdm/patient_care_experience.rb +2 -1
- data/app/models/qdm/patient_characteristic.rb +1 -1
- data/app/models/qdm/patient_characteristic_birthdate.rb +1 -1
- data/app/models/qdm/patient_characteristic_clinical_trial_participant.rb +1 -1
- data/app/models/qdm/patient_characteristic_ethnicity.rb +1 -1
- data/app/models/qdm/patient_characteristic_expired.rb +1 -1
- data/app/models/qdm/patient_characteristic_payer.rb +1 -1
- data/app/models/qdm/patient_characteristic_race.rb +1 -1
- data/app/models/qdm/patient_characteristic_sex.rb +1 -1
- data/app/models/qdm/physical_exam_order.rb +2 -1
- data/app/models/qdm/physical_exam_performed.rb +3 -1
- data/app/models/qdm/physical_exam_recommended.rb +2 -1
- data/app/models/qdm/procedure_order.rb +4 -2
- data/app/models/qdm/procedure_performed.rb +5 -2
- data/app/models/qdm/procedure_recommended.rb +3 -2
- data/app/models/qdm/provider_care_experience.rb +2 -1
- data/app/models/qdm/related_person.rb +13 -0
- data/app/models/qdm/substance_administered.rb +3 -1
- data/app/models/qdm/substance_order.rb +3 -1
- data/app/models/qdm/substance_recommended.rb +2 -1
- data/app/models/qdm/symptom.rb +2 -1
- data/bin/validate_generator.sh +1 -1
- data/cqm-models.gemspec +2 -2
- data/data/oids_qdm_5.5.json +321 -0
- data/dist/browser.js +3434 -3356
- data/dist/index.js +3433 -3355
- data/lib/generate_models.rb +78 -39
- data/lib/generate_patients.rb +3 -3
- data/lib/generate_types.rb +1 -1
- data/lib/generator_helpers.rb +14 -0
- data/modelinfo/qdm-modelinfo-5.5.xml +982 -0
- data/package.json +2 -2
- data/templates/entity_extension.rb.erb +6 -0
- data/templates/identifier_extension.rb.erb +58 -0
- data/templates/{id_template.js.erb → identifier_template.js.erb} +6 -5
- data/templates/models_template.rb.erb +19 -4
- data/templates/mongoose_template.js.erb +86 -12
- data/templates/patient_template.js.erb +0 -4
- data/yarn.lock +245 -201
- metadata +31 -11
- data/app/assets/javascripts/Id.js +0 -21
- data/app/assets/javascripts/ProviderCharacteristic.js +0 -36
- data/app/assets/javascripts/ResultComponent.js +0 -33
- data/app/models/qdm/provider_characteristic.rb +0 -12
data/lib/generate_models.rb
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
# TODO: May need to add Entity casting to Any if entities need to be handled
|
|
2
|
+
# TODO: HQMF OIDS - Specifically RelatedPerson
|
|
3
|
+
|
|
4
|
+
# ! /usr/bin/env ruby
|
|
2
5
|
require 'nokogiri'
|
|
3
6
|
require 'active_support/all'
|
|
4
7
|
require 'rails/generators'
|
|
5
8
|
require 'erb'
|
|
6
9
|
require 'json'
|
|
7
10
|
require_relative './generators/custom_mongo/model_generator'
|
|
11
|
+
require_relative './generator_helpers'
|
|
8
12
|
|
|
9
13
|
###############################################################################
|
|
10
14
|
# Helpers
|
|
@@ -13,10 +17,11 @@ require_relative './generators/custom_mongo/model_generator'
|
|
|
13
17
|
# Lookups for modelinfo 'element types' to Ruby+Mongoid types.
|
|
14
18
|
TYPE_LOOKUP_RB = {
|
|
15
19
|
'System.DateTime': 'DateTime',
|
|
20
|
+
'System.Date': 'Date',
|
|
16
21
|
'System.Integer': 'Integer',
|
|
17
22
|
'System.Quantity': 'Quantity',
|
|
18
23
|
'System.Code': 'Code',
|
|
19
|
-
'QDM.
|
|
24
|
+
'QDM.Identifier': 'Identifier',
|
|
20
25
|
'System.Any': 'Any',
|
|
21
26
|
'interval<System.DateTime>': 'Interval',
|
|
22
27
|
'interval<System.Quantity>': 'Interval',
|
|
@@ -25,6 +30,8 @@ TYPE_LOOKUP_RB = {
|
|
|
25
30
|
'list<QDM.Id>': 'Array',
|
|
26
31
|
'list<QDM.ResultComponent>': 'Array',
|
|
27
32
|
'list<QDM.FacilityLocation>': 'Array',
|
|
33
|
+
'list<QDM.DiagnosisComponent>': 'Array',
|
|
34
|
+
'list<System.String>': 'Array',
|
|
28
35
|
'list<System.Code>': 'Array',
|
|
29
36
|
'System.Decimal': 'Float',
|
|
30
37
|
'System.Time': 'Time',
|
|
@@ -34,11 +41,12 @@ TYPE_LOOKUP_RB = {
|
|
|
34
41
|
# Lookups for modelinfo 'element types' to JavaScript+Mongoose types.
|
|
35
42
|
TYPE_LOOKUP_JS = {
|
|
36
43
|
'System.DateTime': 'DateTime',
|
|
44
|
+
'System.Date': 'QDMDate',
|
|
37
45
|
'System.Integer': 'Number',
|
|
38
46
|
'System.Quantity': 'Quantity',
|
|
39
47
|
'System.Code': 'Code',
|
|
40
48
|
'System.Any': 'Any',
|
|
41
|
-
'QDM.
|
|
49
|
+
'QDM.Identifier': 'IdentifierSchema',
|
|
42
50
|
'interval<System.DateTime>': 'Interval',
|
|
43
51
|
'interval<System.Quantity>': 'Interval',
|
|
44
52
|
'list<QDM.Component>': '[]',
|
|
@@ -46,6 +54,8 @@ TYPE_LOOKUP_JS = {
|
|
|
46
54
|
'list<QDM.Id>': '[]',
|
|
47
55
|
'list<QDM.ResultComponent>': '[]',
|
|
48
56
|
'list<QDM.FacilityLocation>': '[]',
|
|
57
|
+
'list<QDM.DiagnosisComponent>': '[]',
|
|
58
|
+
'list<System.String>': '[]',
|
|
49
59
|
'list<System.Code>': '[Code]',
|
|
50
60
|
'System.Decimal': 'Number',
|
|
51
61
|
'System.Time': 'DateTime',
|
|
@@ -129,7 +139,10 @@ modelinfo.xpath('//ns4:typeInfo').each do |type|
|
|
|
129
139
|
hqmfOid_to_datatype_map[extra_info['hqmf_oid']] = datatype_name if extra_info['hqmf_oid'].present?
|
|
130
140
|
end
|
|
131
141
|
|
|
132
|
-
|
|
142
|
+
# Add the qdmVersion attribute unless the base type is one that will provide it
|
|
143
|
+
unless ['QDM.Entity', 'QDM.Component'].include? type['baseType']
|
|
144
|
+
attributes << { name: 'qdmVersion', type: 'System.String', default: qdm_version }
|
|
145
|
+
end
|
|
133
146
|
|
|
134
147
|
datatypes[datatype_name] = { attributes: attributes }
|
|
135
148
|
end
|
|
@@ -185,7 +198,7 @@ file_path = 'app/assets/javascripts/'
|
|
|
185
198
|
file_path = 'tmp/' if IS_TEST
|
|
186
199
|
datatype_custom_templates = {
|
|
187
200
|
QDMPatient: 'templates/patient_template.js.erb',
|
|
188
|
-
|
|
201
|
+
Identifier: 'templates/identifier_template.js.erb'
|
|
189
202
|
}
|
|
190
203
|
|
|
191
204
|
datatypes.each do |datatype, info|
|
|
@@ -195,8 +208,8 @@ datatypes.each do |datatype, info|
|
|
|
195
208
|
renderer = ERB.new(File.read(datatype_custom_templates[datatype.to_sym]), nil, '-')
|
|
196
209
|
end
|
|
197
210
|
attrs_with_extras = info[:attributes] # this field gets used in the template
|
|
198
|
-
#
|
|
199
|
-
unless
|
|
211
|
+
# QDMPatients don't need _type
|
|
212
|
+
unless datatype.to_s == 'QDMPatient'
|
|
200
213
|
attrs_with_extras << { name: '_type', type: 'System.String', default: "QDM::#{datatype.underscore.camelize}" } # Add Class
|
|
201
214
|
end
|
|
202
215
|
puts ' ' + file_path + datatype + '.js'
|
|
@@ -219,6 +232,14 @@ unless IS_TEST
|
|
|
219
232
|
contents = File.read(file_path)
|
|
220
233
|
contents.gsub!(%r{\/FacilityLocation.js}, '/attributes/FacilityLocation.js')
|
|
221
234
|
contents.gsub!(%r{\/Component.js}, '/attributes/Component.js')
|
|
235
|
+
contents.gsub!(%r{\/CarePartner.js}, '/attributes/CarePartner.js')
|
|
236
|
+
contents.gsub!(%r{\/DiagnosisComponent.js}, '/attributes/DiagnosisComponent.js')
|
|
237
|
+
contents.gsub!(%r{\/Entity.js}, '/attributes/Entity.js')
|
|
238
|
+
contents.gsub!(%r{\/Organization.js}, '/attributes/Organization.js')
|
|
239
|
+
contents.gsub!(%r{\/PatientEntity.js}, '/attributes/PatientEntity.js')
|
|
240
|
+
contents.gsub!(%r{\/Practitioner.js}, '/attributes/Practitioner.js')
|
|
241
|
+
contents.gsub!(%r{\/ResultComponent.js}, '/attributes/ResultComponent.js')
|
|
242
|
+
contents.gsub!(%r{\/Identifier.js}, '/attributes/Identifier.js')
|
|
222
243
|
File.open(file_path, 'w') { |file| file.puts contents }
|
|
223
244
|
end
|
|
224
245
|
|
|
@@ -243,14 +264,16 @@ Dir.glob(ruby_models_path + '*.rb').each do |file_name|
|
|
|
243
264
|
# Make facilityLocation of type QDM::FacilityLocation
|
|
244
265
|
contents.gsub!(/field :facilityLocation, type: Code/, 'field :facilityLocation, type: QDM::FacilityLocation')
|
|
245
266
|
|
|
246
|
-
# Make
|
|
247
|
-
contents.gsub!(/
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
contents.gsub!(/
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
contents.gsub!(/
|
|
267
|
+
# Make Entity subclasses of type QDM::Entity
|
|
268
|
+
contents.gsub!(/field :participant/, "embeds_one :participant, class_name: 'QDM::Entity'")
|
|
269
|
+
contents.gsub!(/field :sender/, "embeds_one :sender, class_name: 'QDM::Entity'")
|
|
270
|
+
contents.gsub!(/field :recipient/, "embeds_one :recipient, class_name: 'QDM::Entity'")
|
|
271
|
+
contents.gsub!(/field :recorder/, "embeds_one :recorder, class_name: 'QDM::Entity'")
|
|
272
|
+
contents.gsub!(/field :performer/, "embeds_one :performer, class_name: 'QDM::Entity'")
|
|
273
|
+
contents.gsub!(/field :requester/, "embeds_one :requester, class_name: 'QDM::Entity'")
|
|
274
|
+
contents.gsub!(/field :prescriber/, "embeds_one :prescriber, class_name: 'QDM::Entity'")
|
|
275
|
+
contents.gsub!(/field :dispenser/, "embeds_one :dispenser, class_name: 'QDM::Entity'")
|
|
276
|
+
contents.gsub!(/field :identifier, type: Identifier/, "embeds_one :identifier, class_name: 'QDM::Identifier'")
|
|
254
277
|
|
|
255
278
|
File.open(file_name, 'w') { |file| file.puts contents }
|
|
256
279
|
end
|
|
@@ -258,28 +281,37 @@ end
|
|
|
258
281
|
# JavaScript post processing
|
|
259
282
|
js_models_path = 'app/assets/javascripts/'
|
|
260
283
|
js_models_path = 'tmp/' if IS_TEST
|
|
261
|
-
|
|
284
|
+
Dir.glob(js_models_path + '*.js').each do |file_name|
|
|
262
285
|
contents = File.read(file_name)
|
|
263
286
|
|
|
264
287
|
# Replace 'Any' type placeholder (these attributes could point to anything).
|
|
265
288
|
contents.gsub!(/: Any/, ': Any')
|
|
266
289
|
|
|
267
|
-
# Component, Facility,
|
|
290
|
+
# Component, Facility, Diagnoses
|
|
268
291
|
contents.gsub!(/facilityLocations: \[\]/, 'facilityLocations: [FacilityLocationSchema]')
|
|
269
292
|
contents.gsub!(/facilityLocation: Code/, 'facilityLocation: FacilityLocationSchema')
|
|
270
293
|
contents.gsub!(/components: \[\]/, 'components: [ComponentSchema]')
|
|
271
294
|
contents.gsub!(/component: Code/, 'component: ComponentSchema')
|
|
272
|
-
contents.gsub!(/
|
|
295
|
+
contents.gsub!(/diagnoses: \[\]/, 'diagnoses: [DiagnosisComponentSchema]')
|
|
296
|
+
contents.gsub!(/sender: Any/, 'sender: AnyEntity')
|
|
297
|
+
contents.gsub!(/recipient: Any/, 'recipient: AnyEntity')
|
|
298
|
+
contents.gsub!(/participant: Any/, 'participant: AnyEntity')
|
|
299
|
+
contents.gsub!(/recorder: Any/, 'recorder: AnyEntity')
|
|
300
|
+
contents.gsub!(/performer: Any/, 'performer: AnyEntity')
|
|
301
|
+
contents.gsub!(/requester: Any/, 'requester: AnyEntity')
|
|
302
|
+
contents.gsub!(/prescriber: Any/, 'prescriber: AnyEntity')
|
|
303
|
+
contents.gsub!(/dispenser: Any/, 'dispenser: AnyEntity')
|
|
304
|
+
contents.gsub!(/relatedTo: \[\]/, 'relatedTo: [String]')
|
|
273
305
|
|
|
274
306
|
File.open(file_name, 'w') { |file| file.puts contents }
|
|
275
307
|
end
|
|
276
308
|
|
|
277
309
|
# Inject Ruby Patient model extensions
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
310
|
+
GeneratorHelpers.inject_extension('templates/patient_extension.rb.erb', ruby_models_path + 'patient.rb')
|
|
311
|
+
# Inject Ruby Entity model extensions
|
|
312
|
+
if datatypes['Entity']
|
|
313
|
+
GeneratorHelpers.inject_extension('templates/entity_extension.rb.erb', ruby_models_path + 'entity.rb')
|
|
314
|
+
end
|
|
283
315
|
|
|
284
316
|
# Make sure Ruby models are in the correct module
|
|
285
317
|
ruby_models_path = 'app/models/qdm/'
|
|
@@ -288,23 +320,28 @@ Dir.glob(ruby_models_path + '*.rb').each do |file_name|
|
|
|
288
320
|
contents = File.read(file_name)
|
|
289
321
|
contents.gsub!('Qdm', 'QDM')
|
|
290
322
|
contents.gsub!('Code', 'QDM::Code')
|
|
291
|
-
contents.gsub!('
|
|
323
|
+
contents.gsub!('Date\n', 'QDM::Date\n') # \n so DateTime does not get overwritten
|
|
324
|
+
contents.gsub!(' Identifier', ' QDM::Identifier')
|
|
292
325
|
contents.gsub!('Interval', 'QDM::Interval')
|
|
293
326
|
contents.gsub!('Quantity', 'QDM::Quantity')
|
|
294
327
|
File.open(file_name, 'w') { |file| file.puts contents }
|
|
295
328
|
end
|
|
296
329
|
|
|
330
|
+
types_not_inherited_by_data_element = ['/patient.rb', '/identifier.rb', '/component.rb', '/facility_location.rb', '/entity.rb', '/organization.rb', '/patient_entity.rb', '/practitioner.rb', '/care_partner.rb', '/diagnosis_component.rb', '/result_component.rb']
|
|
331
|
+
types_inherited_by_attribute = ['/component', '/facility_location', '/entity', '/diagnosis_component', '/identifier']
|
|
332
|
+
types_inherited_by_entity = ['/patient_entity', '/care_partner', '/practitioner', '/organization']
|
|
333
|
+
types_inherited_by_component = ['/result_component']
|
|
334
|
+
|
|
297
335
|
# Set embedded in for datatypes
|
|
298
336
|
Dir.glob(ruby_models_path + '*.rb').each do |file_name|
|
|
299
337
|
contents = File.read(file_name)
|
|
300
|
-
|
|
301
|
-
if File.basename(file_name) == 'id.rb'
|
|
338
|
+
if ['entity.rb', 'organization.rb', 'patient_entity.rb', 'practitioner.rb', 'care_partner.rb'].any? { |sub_string| sub_string.include?(File.basename(file_name)) }
|
|
302
339
|
contents.gsub!(/ include Mongoid::Document\n/, " include Mongoid::Document\n embedded_in :data_element\n")
|
|
303
|
-
|
|
304
|
-
not_embedded_in_patient_files = ['patient.rb', 'component.rb', 'facility_location.rb']
|
|
305
|
-
next if not_embedded_in_patient_files.include?(File.basename(file_name))
|
|
306
|
-
contents.gsub!(/ include Mongoid::Document\n/, " include Mongoid::Document\n embedded_in :patient\n")
|
|
340
|
+
File.open(file_name, 'w') { |file| file.puts contents }
|
|
307
341
|
end
|
|
342
|
+
# TODO: Might be able to make this list by finding baseType="System.Any" in model info file instead of hard-coding.
|
|
343
|
+
next if types_not_inherited_by_data_element.any? { |sub_string| sub_string.include?(File.basename(file_name)) }
|
|
344
|
+
contents.gsub!(/ include Mongoid::Document\n/, " include Mongoid::Document\n embedded_in :patient\n")
|
|
308
345
|
File.open(file_name, 'w') { |file| file.puts contents }
|
|
309
346
|
end
|
|
310
347
|
|
|
@@ -312,8 +349,10 @@ end
|
|
|
312
349
|
Dir.glob(ruby_models_path + '*.rb').each do |file_name|
|
|
313
350
|
contents = ''
|
|
314
351
|
File.open(file_name).each_line.with_index do |line, index|
|
|
315
|
-
line.gsub!("\n", " < DataElement\n") if index.zero? &&
|
|
316
|
-
line.gsub!("\n", " < Attribute\n") if index.zero? &&
|
|
352
|
+
line.gsub!("\n", " < DataElement\n") if index.zero? && types_not_inherited_by_data_element.none? { |sub_string| file_name.include?(sub_string) }
|
|
353
|
+
line.gsub!("\n", " < Attribute\n") if index.zero? && types_inherited_by_attribute.any? { |sub_string| file_name.include?(sub_string) }
|
|
354
|
+
line.gsub!("\n", " < Entity\n") if index.zero? && types_inherited_by_entity.any? { |sub_string| file_name.include?(sub_string) }
|
|
355
|
+
line.gsub!("\n", " < Component\n") if index.zero? && types_inherited_by_component.any? { |sub_string| file_name.include?(sub_string) }
|
|
317
356
|
contents += "module QDM\n # #{file_name}\n #{line.gsub('QDM::', '')}" if index.zero?
|
|
318
357
|
contents += ' ' unless index.zero? || line.blank?
|
|
319
358
|
contents += line unless index.zero?
|
|
@@ -328,13 +367,13 @@ if IS_TEST
|
|
|
328
367
|
Dir.mkdir(ruby_models_path + 'attributes')
|
|
329
368
|
Dir.mkdir(js_models_path + 'attributes')
|
|
330
369
|
end
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
File.rename ruby_models_path + '
|
|
337
|
-
File.rename js_models_path + '
|
|
370
|
+
|
|
371
|
+
attribute_list = types_inherited_by_attribute + types_inherited_by_component + types_inherited_by_entity
|
|
372
|
+
existing_types_moving_to_attributes = attribute_list.select { |sub_string| File.exist?(ruby_models_path + sub_string + '.rb') }
|
|
373
|
+
existing_types_moving_to_attributes.each do |type|
|
|
374
|
+
modified_name = type[1..-1]
|
|
375
|
+
File.rename ruby_models_path + modified_name + '.rb', ruby_models_path + 'attributes/' + modified_name + '.rb'
|
|
376
|
+
File.rename js_models_path + modified_name.camelize + '.js', js_models_path + 'attributes/' + modified_name.camelize + '.js'
|
|
338
377
|
end
|
|
339
378
|
|
|
340
379
|
puts 'Create hqmfOid to datatype map as json file'
|
data/lib/generate_patients.rb
CHANGED
|
@@ -8,7 +8,7 @@ module QDM
|
|
|
8
8
|
module PatientGeneration
|
|
9
9
|
# Generates patient(s) with fully-loaded dataElements if new_patient_for_each_type is false then a
|
|
10
10
|
# single patient will be returned that has every data element on it
|
|
11
|
-
def self.generate_exhastive_data_element_patients(new_patient_for_each_type = true, model_info_file = 'qdm-modelinfo-5.
|
|
11
|
+
def self.generate_exhastive_data_element_patients(new_patient_for_each_type = true, model_info_file = 'qdm-modelinfo-5.5.xml')
|
|
12
12
|
datatypes = get_datatypes(File.join(File.dirname(__FILE__), "../modelinfo/#{model_info_file}"))
|
|
13
13
|
patients = []
|
|
14
14
|
cqm_patient = nil
|
|
@@ -49,7 +49,7 @@ module QDM
|
|
|
49
49
|
modelinfo.xpath('//ns4:typeInfo').each do |type|
|
|
50
50
|
# Grab the name of this QDM datatype
|
|
51
51
|
datatype_name = type.attributes['name'].value.split('.').last
|
|
52
|
-
exclusion_array = %w[Component
|
|
52
|
+
exclusion_array = %w[Component Identifier Patient ResultComponent FacilityLocation]
|
|
53
53
|
# Store datatype and its attributes (reject irrelevant datatypes)
|
|
54
54
|
next if datatype_name.include?('Negative') || datatype_name.include?('Positive') ||
|
|
55
55
|
datatype_name.include?('QDMBaseType') || (exclusion_array.include? datatype_name)
|
|
@@ -112,7 +112,7 @@ module QDM
|
|
|
112
112
|
data_element[field_name] = QDM::BaseTypeGeneration.generate_date_interval_field
|
|
113
113
|
elsif field_type == QDM::Quantity
|
|
114
114
|
data_element[field_name] = QDM::BaseTypeGeneration.generate_quantity
|
|
115
|
-
elsif field_type == QDM::
|
|
115
|
+
elsif field_type == QDM::Identifier
|
|
116
116
|
data_element[field_name] = QDM::BaseTypeGeneration.generate_qdm_id
|
|
117
117
|
elsif field_type == Integer
|
|
118
118
|
# TODO: randomize value
|
data/lib/generate_types.rb
CHANGED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
require 'erb'
|
|
2
|
+
require 'active_support/all'
|
|
3
|
+
|
|
4
|
+
# Helper file for generating classes
|
|
5
|
+
module GeneratorHelpers
|
|
6
|
+
def self.inject_extension(extension_path, file_path)
|
|
7
|
+
# Inject Ruby Patient model extensions
|
|
8
|
+
template = File.read(extension_path)
|
|
9
|
+
renderer = ERB.new(template, nil, '-')
|
|
10
|
+
rb_model = File.read(file_path)
|
|
11
|
+
rb_model.gsub!(/end/, renderer.result(binding))
|
|
12
|
+
File.open(file_path, 'w') { |file| file.write(rb_model) }
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,982 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
2
|
+
<ns4:modelInfo name="QDM" url="urn:healthit-gov:qdm:v5_5" targetQualifier="qdm" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns4="urn:hl7-org:elm-modelinfo:r1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
3
|
+
patientClassName="QDM.Patient" patientClassIdentifier="Patient" patientBirthDatePropertyName="birthDatetime" version="5.5" strictRetrieveTyping="true">
|
|
4
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.Patient" baseType="System.Any" identifier="Patient">
|
|
5
|
+
<ns4:element name="birthDatetime" type="System.DateTime"/>
|
|
6
|
+
</ns4:typeInfo>
|
|
7
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.Identifier" baseType="System.Any">
|
|
8
|
+
<ns4:element name="namingSystem" type="System.String"/>
|
|
9
|
+
<ns4:element name="value" type="System.String"/>
|
|
10
|
+
</ns4:typeInfo>
|
|
11
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.Entity" baseType="System.Any" retrievable="false">
|
|
12
|
+
<ns4:element name="id" type="System.String"/>
|
|
13
|
+
<ns4:element name="identifier" type="QDM.Identifier"/>
|
|
14
|
+
</ns4:typeInfo>
|
|
15
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PatientEntity" baseType="QDM.Entity" retrievable="false">
|
|
16
|
+
</ns4:typeInfo>
|
|
17
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.CarePartner" baseType="QDM.Entity" retrievable="false">
|
|
18
|
+
<ns4:element name="relationship" type="System.Code"/>
|
|
19
|
+
</ns4:typeInfo>
|
|
20
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.RelatedPerson" baseType="QDM.QDMBaseType" label="Related Person" retrievable="true" primaryCodePath="code">
|
|
21
|
+
<ns4:element name="identifier" type="QDM.Identifier"/>
|
|
22
|
+
<ns4:element name="linkedPatientId" type="System.String"/>
|
|
23
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
24
|
+
<ns4:targetContextRelationship context="Patient" relatedKeyElement="linkedPatientId"/>
|
|
25
|
+
</ns4:typeInfo>
|
|
26
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.Practitioner" baseType="QDM.Entity" retrievable="false">
|
|
27
|
+
<ns4:element name="role" type="System.Code"/>
|
|
28
|
+
<ns4:element name="specialty" type="System.Code"/>
|
|
29
|
+
<ns4:element name="qualification" type="System.Code"/>
|
|
30
|
+
</ns4:typeInfo>
|
|
31
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.Organization" baseType="QDM.Entity" retrievable="false">
|
|
32
|
+
<ns4:element name="type" type="System.Code"/>
|
|
33
|
+
</ns4:typeInfo>
|
|
34
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PhysicalExamOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
35
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
36
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
37
|
+
<ns4:element name="anatomicalLocationSite" type="System.Code"/>
|
|
38
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
39
|
+
<ns4:element name="requester">
|
|
40
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
41
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
42
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
43
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
44
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
45
|
+
</ns4:typeSpecifier>
|
|
46
|
+
</ns4:element>
|
|
47
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
48
|
+
</ns4:typeInfo>
|
|
49
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.Participation" retrievable="true" baseType="QDM.QDMBaseType" label="Participation" primaryCodePath="code">
|
|
50
|
+
<ns4:element name="participationPeriod" type="interval<System.DateTime>"/>
|
|
51
|
+
<ns4:element name="recorder">
|
|
52
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
53
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
54
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
55
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
56
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
57
|
+
</ns4:typeSpecifier>
|
|
58
|
+
</ns4:element>
|
|
59
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
60
|
+
</ns4:typeInfo>
|
|
61
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PatientCharacteristicSex" retrievable="true" baseType="QDM.QDMBaseType" label="Patient Characteristic Sex" primaryCodePath="code">
|
|
62
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
63
|
+
</ns4:typeInfo>
|
|
64
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.CareGoal" retrievable="true" baseType="QDM.QDMBaseType" label="Care Goal" primaryCodePath="code">
|
|
65
|
+
<ns4:element name="statusDate" type="System.Date"/>
|
|
66
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
67
|
+
<ns4:element name="relatedTo" type="list<System.String>"/>
|
|
68
|
+
<ns4:element name="targetOutcome"> <!--type="System.Any">-->
|
|
69
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
70
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Integer"/>
|
|
71
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Decimal"/>
|
|
72
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Code"/>
|
|
73
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Quantity"/>
|
|
74
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Ratio"/>
|
|
75
|
+
</ns4:typeSpecifier>
|
|
76
|
+
</ns4:element>
|
|
77
|
+
<ns4:element name="performer">
|
|
78
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
79
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
80
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
81
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
82
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
83
|
+
</ns4:typeSpecifier>
|
|
84
|
+
</ns4:element>
|
|
85
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
86
|
+
</ns4:typeInfo>
|
|
87
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PatientCharacteristic" retrievable="true" baseType="QDM.QDMBaseType" label="Patient Characteristic" primaryCodePath="code">
|
|
88
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
89
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
90
|
+
</ns4:typeInfo>
|
|
91
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PatientCharacteristicEthnicity" retrievable="true" baseType="QDM.QDMBaseType" label="Patient Characteristic Ethnicity" primaryCodePath="code">
|
|
92
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
93
|
+
</ns4:typeInfo>
|
|
94
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PatientCharacteristicRace" retrievable="true" baseType="QDM.QDMBaseType" label="Patient Characteristic Race" primaryCodePath="code">
|
|
95
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
96
|
+
</ns4:typeInfo>
|
|
97
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.LaboratoryTestPerformed" retrievable="false" baseType="QDM.QDMBaseType">
|
|
98
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
99
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
100
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
101
|
+
<ns4:element name="status" type="System.Code"/>
|
|
102
|
+
<ns4:element name="method" type="System.Code"/>
|
|
103
|
+
<ns4:element name="result"> <!-- type="System.Any">-->
|
|
104
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
105
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Integer"/>
|
|
106
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Decimal"/>
|
|
107
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Code"/>
|
|
108
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Quantity"/>
|
|
109
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Ratio"/>
|
|
110
|
+
</ns4:typeSpecifier>
|
|
111
|
+
</ns4:element>
|
|
112
|
+
<ns4:element name="resultDatetime" type="System.DateTime"/>
|
|
113
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
114
|
+
<ns4:element name="referenceRange" type="interval<System.Quantity>"/>
|
|
115
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
116
|
+
<ns4:element name="components" type="list<QDM.ResultComponent>"/>
|
|
117
|
+
<ns4:element name="performer">
|
|
118
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
119
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
120
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
121
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
122
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
123
|
+
</ns4:typeSpecifier>
|
|
124
|
+
</ns4:element>
|
|
125
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
126
|
+
</ns4:typeInfo>
|
|
127
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.Symptom" retrievable="true" baseType="QDM.QDMBaseType" label="Symptom" primaryCodePath="code">
|
|
128
|
+
<ns4:element name="prevalencePeriod" type="interval<System.DateTime>"/>
|
|
129
|
+
<ns4:element name="severity" type="System.Code"/>
|
|
130
|
+
<ns4:element name="recorder">
|
|
131
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
132
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
133
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
134
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
135
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
136
|
+
</ns4:typeSpecifier>
|
|
137
|
+
</ns4:element>
|
|
138
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
139
|
+
</ns4:typeInfo>
|
|
140
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.MedicationAdministered" retrievable="false" baseType="QDM.QDMBaseType">
|
|
141
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
142
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
143
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
144
|
+
<ns4:element name="dosage" type="System.Quantity"/>
|
|
145
|
+
<ns4:element name="frequency" type="System.Code"/>
|
|
146
|
+
<ns4:element name="route" type="System.Code"/>
|
|
147
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
148
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
149
|
+
<ns4:element name="performer">
|
|
150
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
151
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
152
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
153
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
154
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
155
|
+
</ns4:typeSpecifier>
|
|
156
|
+
</ns4:element>
|
|
157
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
158
|
+
</ns4:typeInfo>
|
|
159
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.ProcedureRecommended" retrievable="false" baseType="QDM.QDMBaseType">
|
|
160
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
161
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
162
|
+
<ns4:element name="anatomicalLocationSite" type="System.Code"/>
|
|
163
|
+
<ns4:element name="rank" type="System.Integer"/>
|
|
164
|
+
<ns4:element name="requester">
|
|
165
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
166
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
167
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
168
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
169
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
170
|
+
</ns4:typeSpecifier>
|
|
171
|
+
</ns4:element>
|
|
172
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
173
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
174
|
+
</ns4:typeInfo>
|
|
175
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.EncounterPerformed" retrievable="false" baseType="QDM.QDMBaseType">
|
|
176
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
177
|
+
<ns4:element name="admissionSource" type="System.Code"/>
|
|
178
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
179
|
+
<ns4:element name="dischargeDisposition" type="System.Code"/>
|
|
180
|
+
<ns4:element name="facilityLocations" type="list<QDM.FacilityLocation>"/>
|
|
181
|
+
<ns4:element name="diagnoses" type="list<QDM.DiagnosisComponent>"/>
|
|
182
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
183
|
+
<ns4:element name="lengthOfStay" type="System.Quantity"/>
|
|
184
|
+
<ns4:element name="priority" type="System.Code"/>
|
|
185
|
+
<ns4:element name="participant">
|
|
186
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
187
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
188
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
189
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
190
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
191
|
+
</ns4:typeSpecifier>
|
|
192
|
+
</ns4:element>
|
|
193
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
194
|
+
</ns4:typeInfo>
|
|
195
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.Diagnosis" retrievable="true" baseType="QDM.QDMBaseType" label="Diagnosis" primaryCodePath="code">
|
|
196
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
197
|
+
<ns4:element name="prevalencePeriod" type="interval<System.DateTime>"/>
|
|
198
|
+
<ns4:element name="anatomicalLocationSite" type="System.Code"/>
|
|
199
|
+
<ns4:element name="severity" type="System.Code"/>
|
|
200
|
+
<ns4:element name="recorder">
|
|
201
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
202
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
203
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
204
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
205
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
206
|
+
</ns4:typeSpecifier>
|
|
207
|
+
</ns4:element>
|
|
208
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
209
|
+
</ns4:typeInfo>
|
|
210
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.CommunicationPerformed" retrievable="false" baseType="QDM.QDMBaseType">
|
|
211
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
212
|
+
<ns4:element name="category" type="System.Code"/>
|
|
213
|
+
<ns4:element name="medium" type="System.Code"/>
|
|
214
|
+
<ns4:element name="sender">
|
|
215
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
216
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
217
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
218
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
219
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
220
|
+
</ns4:typeSpecifier>
|
|
221
|
+
</ns4:element>
|
|
222
|
+
<ns4:element name="recipient">
|
|
223
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
224
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
225
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
226
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
227
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
228
|
+
</ns4:typeSpecifier>
|
|
229
|
+
</ns4:element>
|
|
230
|
+
<ns4:element name="relatedTo" type="list<System.String>"/>
|
|
231
|
+
<ns4:element name="sentDatetime" type="System.DateTime"/>
|
|
232
|
+
<ns4:element name="receivedDatetime" type="System.DateTime"/>
|
|
233
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
234
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
235
|
+
</ns4:typeInfo>
|
|
236
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.AssessmentPerformed" retrievable="false" baseType="QDM.QDMBaseType">
|
|
237
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
238
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
239
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
240
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
241
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
242
|
+
<ns4:element name="method" type="System.Code"/>
|
|
243
|
+
<ns4:element name="result"> <!-- type="System.Any">-->
|
|
244
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
245
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Integer"/>
|
|
246
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Decimal"/>
|
|
247
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Code"/>
|
|
248
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Quantity"/>
|
|
249
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Ratio"/>
|
|
250
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="DateTime"/>
|
|
251
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Time"/>
|
|
252
|
+
</ns4:typeSpecifier>
|
|
253
|
+
</ns4:element>
|
|
254
|
+
<ns4:element name="components" type="list<QDM.Component>"/>
|
|
255
|
+
<ns4:element name="relatedTo" type="list<System.String>"/>
|
|
256
|
+
<ns4:element name="performer">
|
|
257
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
258
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
259
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
260
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
261
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
262
|
+
</ns4:typeSpecifier>
|
|
263
|
+
</ns4:element>
|
|
264
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
265
|
+
</ns4:typeInfo>
|
|
266
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PatientCharacteristicClinicalTrialParticipant" retrievable="true" baseType="QDM.QDMBaseType" label="Patient Characteristic Clinical Trial Participant" primaryCodePath="code">
|
|
267
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
268
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
269
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
270
|
+
</ns4:typeInfo>
|
|
271
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.DeviceOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
272
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
273
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
274
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
275
|
+
<ns4:element name="requester">
|
|
276
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
277
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
278
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
279
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
280
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
281
|
+
</ns4:typeSpecifier>
|
|
282
|
+
</ns4:element>
|
|
283
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
284
|
+
</ns4:typeInfo>
|
|
285
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.DiagnosticStudyPerformed" retrievable="false" baseType="QDM.QDMBaseType">
|
|
286
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
287
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
288
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
289
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
290
|
+
<ns4:element name="result"> <!--type="System.Any">-->
|
|
291
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
292
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Integer"/>
|
|
293
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Decimal"/>
|
|
294
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Code"/>
|
|
295
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Quantity"/>
|
|
296
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Ratio"/>
|
|
297
|
+
</ns4:typeSpecifier>
|
|
298
|
+
</ns4:element>
|
|
299
|
+
<ns4:element name="resultDatetime" type="System.DateTime"/>
|
|
300
|
+
<ns4:element name="status" type="System.Code"/>
|
|
301
|
+
<ns4:element name="method" type="System.Code"/>
|
|
302
|
+
<ns4:element name="facilityLocation" type="System.Code"/>
|
|
303
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
304
|
+
<ns4:element name="components" type="list<QDM.Component>"/>
|
|
305
|
+
<ns4:element name="performer">
|
|
306
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
307
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
308
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
309
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
310
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
311
|
+
</ns4:typeSpecifier>
|
|
312
|
+
</ns4:element>
|
|
313
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
314
|
+
</ns4:typeInfo>
|
|
315
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.InterventionOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
316
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
317
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
318
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
319
|
+
<ns4:element name="requester">
|
|
320
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
321
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
322
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
323
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
324
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
325
|
+
</ns4:typeSpecifier>
|
|
326
|
+
</ns4:element>
|
|
327
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
328
|
+
</ns4:typeInfo>
|
|
329
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.FamilyHistory" retrievable="true" baseType="QDM.QDMBaseType" label="Family History" primaryCodePath="code">
|
|
330
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
331
|
+
<ns4:element name="relationship" type="System.Code"/>
|
|
332
|
+
<ns4:element name="recorder">
|
|
333
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
334
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
335
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
336
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
337
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
338
|
+
</ns4:typeSpecifier>
|
|
339
|
+
</ns4:element>
|
|
340
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
341
|
+
</ns4:typeInfo>
|
|
342
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.Component" retrievable="false" baseType="System.Any">
|
|
343
|
+
<ns4:element name="code" type="System.Code"/>
|
|
344
|
+
<ns4:element name="result"> <!-- type="System.Any">-->
|
|
345
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
346
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Integer"/>
|
|
347
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Decimal"/>
|
|
348
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Code"/>
|
|
349
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Quantity"/>
|
|
350
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Ratio"/>
|
|
351
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="DateTime"/>
|
|
352
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Time"/>
|
|
353
|
+
</ns4:typeSpecifier>
|
|
354
|
+
</ns4:element>
|
|
355
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
356
|
+
</ns4:typeInfo>
|
|
357
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.DiagnosisComponent" retrievable="false" baseType="System.Any">
|
|
358
|
+
<ns4:element name="code" type="System.Code"/>
|
|
359
|
+
<ns4:element name="presentOnAdmissionIndicator" type="System.Code"/>
|
|
360
|
+
<ns4:element name="rank" type="System.Integer"/>
|
|
361
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
362
|
+
</ns4:typeInfo>
|
|
363
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.ResultComponent" retrievable="false" baseType="QDM.Component">
|
|
364
|
+
<ns4:element name="referenceRange" type="interval<System.Quantity>"/>
|
|
365
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
366
|
+
</ns4:typeInfo>
|
|
367
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.FacilityLocation" retrievable="false" baseType="System.Any">
|
|
368
|
+
<ns4:element name="code" type="System.Code"/>
|
|
369
|
+
<ns4:element name="locationPeriod" type="interval<System.DateTime>"/>
|
|
370
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
371
|
+
</ns4:typeInfo>
|
|
372
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.MedicationActive" retrievable="true" baseType="QDM.QDMBaseType" label="Medication, Active" primaryCodePath="code">
|
|
373
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
374
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
375
|
+
<ns4:element name="dosage" type="System.Quantity"/>
|
|
376
|
+
<ns4:element name="frequency" type="System.Code"/>
|
|
377
|
+
<ns4:element name="route" type="System.Code"/>
|
|
378
|
+
<ns4:element name="recorder">
|
|
379
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
380
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
381
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
382
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
383
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
384
|
+
</ns4:typeSpecifier>
|
|
385
|
+
</ns4:element>
|
|
386
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
387
|
+
</ns4:typeInfo>
|
|
388
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.LaboratoryTestOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
389
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
390
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
391
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
392
|
+
<ns4:element name="requester">
|
|
393
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
394
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
395
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
396
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
397
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
398
|
+
</ns4:typeSpecifier>
|
|
399
|
+
</ns4:element>
|
|
400
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
401
|
+
</ns4:typeInfo>
|
|
402
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.DiagnosticStudyOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
403
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
404
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
405
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
406
|
+
<ns4:element name="requester">
|
|
407
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
408
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
409
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
410
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
411
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
412
|
+
</ns4:typeSpecifier>
|
|
413
|
+
</ns4:element>
|
|
414
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
415
|
+
</ns4:typeInfo>
|
|
416
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.SubstanceOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
417
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
418
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
419
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
420
|
+
<ns4:element name="dosage" type="System.Quantity"/>
|
|
421
|
+
<ns4:element name="supply" type="System.Quantity"/>
|
|
422
|
+
<ns4:element name="frequency" type="System.Code"/>
|
|
423
|
+
<ns4:element name="refills" type="System.Integer"/>
|
|
424
|
+
<ns4:element name="route" type="System.Code"/>
|
|
425
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
426
|
+
<ns4:element name="requester">
|
|
427
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
428
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
429
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
430
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
431
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
432
|
+
</ns4:typeSpecifier>
|
|
433
|
+
</ns4:element>
|
|
434
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
435
|
+
</ns4:typeInfo>
|
|
436
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PatientCharacteristicPayer" retrievable="true" baseType="QDM.QDMBaseType" label="Patient Characteristic Payer" primaryCodePath="code">
|
|
437
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
438
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
439
|
+
</ns4:typeInfo>
|
|
440
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PatientCharacteristicExpired" retrievable="true" baseType="QDM.QDMBaseType" label="Patient Characteristic Expired" primaryCodePath="code">
|
|
441
|
+
<ns4:element name="expiredDatetime" type="System.DateTime"/>
|
|
442
|
+
<ns4:element name="cause" type="System.Code"/>
|
|
443
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
444
|
+
</ns4:typeInfo>
|
|
445
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.AssessmentOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
446
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
447
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
448
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
449
|
+
<ns4:element name="requester">
|
|
450
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
451
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
452
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
453
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
454
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
455
|
+
</ns4:typeSpecifier>
|
|
456
|
+
</ns4:element>
|
|
457
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
458
|
+
</ns4:typeInfo>
|
|
459
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.AssessmentRecommended" retrievable="false" baseType="QDM.QDMBaseType">
|
|
460
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
461
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
462
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
463
|
+
<ns4:element name="requester">
|
|
464
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
465
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
466
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
467
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
468
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
469
|
+
</ns4:typeSpecifier>
|
|
470
|
+
</ns4:element>
|
|
471
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
472
|
+
</ns4:typeInfo>
|
|
473
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.ImmunizationAdministered" retrievable="false" baseType="QDM.QDMBaseType">
|
|
474
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
475
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
476
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
477
|
+
<ns4:element name="dosage" type="System.Quantity"/>
|
|
478
|
+
<ns4:element name="route" type="System.Code"/>
|
|
479
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
480
|
+
<ns4:element name="performer">
|
|
481
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
482
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
483
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
484
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
485
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
486
|
+
</ns4:typeSpecifier>
|
|
487
|
+
</ns4:element>
|
|
488
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
489
|
+
</ns4:typeInfo>
|
|
490
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.SubstanceAdministered" retrievable="false" baseType="QDM.QDMBaseType">
|
|
491
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
492
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
493
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
494
|
+
<ns4:element name="dosage" type="System.Quantity"/>
|
|
495
|
+
<ns4:element name="frequency" type="System.Code"/>
|
|
496
|
+
<ns4:element name="route" type="System.Code"/>
|
|
497
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
498
|
+
<ns4:element name="performer">
|
|
499
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
500
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
501
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
502
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
503
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
504
|
+
</ns4:typeSpecifier>
|
|
505
|
+
</ns4:element>
|
|
506
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
507
|
+
</ns4:typeInfo>
|
|
508
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.EncounterOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
509
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
510
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
511
|
+
<ns4:element name="facilityLocation" type="System.Code"/>
|
|
512
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
513
|
+
<ns4:element name="requester">
|
|
514
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
515
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
516
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
517
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
518
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
519
|
+
</ns4:typeSpecifier>
|
|
520
|
+
</ns4:element>
|
|
521
|
+
<ns4:element name="priority" type="System.Code"/>
|
|
522
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
523
|
+
</ns4:typeInfo>
|
|
524
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.EncounterRecommended" retrievable="false" baseType="QDM.QDMBaseType">
|
|
525
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
526
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
527
|
+
<ns4:element name="facilityLocation" type="System.Code"/>
|
|
528
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
529
|
+
<ns4:element name="requester">
|
|
530
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
531
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
532
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
533
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
534
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
535
|
+
</ns4:typeSpecifier>
|
|
536
|
+
</ns4:element>
|
|
537
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
538
|
+
</ns4:typeInfo>
|
|
539
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.ProcedurePerformed" retrievable="false" baseType="QDM.QDMBaseType">
|
|
540
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
541
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
542
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
543
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
544
|
+
<ns4:element name="method" type="System.Code"/>
|
|
545
|
+
<ns4:element name="result"> <!--type="System.Any">-->
|
|
546
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
547
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Integer"/>
|
|
548
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Decimal"/>
|
|
549
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Code"/>
|
|
550
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Quantity"/>
|
|
551
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Ratio"/>
|
|
552
|
+
</ns4:typeSpecifier>
|
|
553
|
+
</ns4:element>
|
|
554
|
+
<ns4:element name="status" type="System.Code"/>
|
|
555
|
+
<ns4:element name="anatomicalLocationSite" type="System.Code"/>
|
|
556
|
+
<ns4:element name="rank" type="System.Integer"/>
|
|
557
|
+
<ns4:element name="priority" type="System.Code"/>
|
|
558
|
+
<ns4:element name="incisionDatetime" type="System.DateTime"/>
|
|
559
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
560
|
+
<ns4:element name="components" type="list<QDM.Component>"/>
|
|
561
|
+
<ns4:element name="performer">
|
|
562
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
563
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
564
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
565
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
566
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
567
|
+
</ns4:typeSpecifier>
|
|
568
|
+
</ns4:element>
|
|
569
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
570
|
+
</ns4:typeInfo>
|
|
571
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.AllergyIntolerance" retrievable="true" baseType="QDM.QDMBaseType" label="Allergy/Intolerance" primaryCodePath="code">
|
|
572
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
573
|
+
<ns4:element name="prevalencePeriod" type="interval<System.DateTime>"/>
|
|
574
|
+
<ns4:element name="type" type="System.Code"/>
|
|
575
|
+
<ns4:element name="severity" type="System.Code"/>
|
|
576
|
+
<ns4:element name="recorder">
|
|
577
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
578
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
579
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
580
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
581
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
582
|
+
</ns4:typeSpecifier>
|
|
583
|
+
</ns4:element>
|
|
584
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
585
|
+
</ns4:typeInfo>
|
|
586
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PhysicalExamRecommended" retrievable="false" baseType="QDM.QDMBaseType">
|
|
587
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
588
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
589
|
+
<ns4:element name="anatomicalLocationSite" type="System.Code"/>
|
|
590
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
591
|
+
<ns4:element name="requester">
|
|
592
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
593
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
594
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
595
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
596
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
597
|
+
</ns4:typeSpecifier>
|
|
598
|
+
</ns4:element>
|
|
599
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
600
|
+
</ns4:typeInfo>
|
|
601
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PatientCharacteristicBirthdate" retrievable="true" baseType="QDM.QDMBaseType" label="Patient Characteristic Birthdate" primaryCodePath="code">
|
|
602
|
+
<ns4:element name="birthDatetime" type="System.DateTime"/>
|
|
603
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
604
|
+
</ns4:typeInfo>
|
|
605
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.AdverseEvent" retrievable="true" baseType="QDM.QDMBaseType" label="Adverse Event" primaryCodePath="code">
|
|
606
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
607
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
608
|
+
<ns4:element name="severity" type="System.Code"/>
|
|
609
|
+
<ns4:element name="facilityLocation" type="System.Code"/>
|
|
610
|
+
<ns4:element name="type" type="System.Code"/>
|
|
611
|
+
<ns4:element name="recorder">
|
|
612
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
613
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
614
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
615
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
616
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
617
|
+
</ns4:typeSpecifier>
|
|
618
|
+
</ns4:element>
|
|
619
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
620
|
+
</ns4:typeInfo>
|
|
621
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.QDMBaseType" retrievable="false" baseType="System.Any">
|
|
622
|
+
<ns4:element name="id" type="System.String"/>
|
|
623
|
+
<ns4:element name="code" type="System.Code"/>
|
|
624
|
+
<ns4:element name="patientId" type="System.String"/>
|
|
625
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
626
|
+
</ns4:typeInfo>
|
|
627
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.DeviceRecommended" retrievable="false" baseType="QDM.QDMBaseType">
|
|
628
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
629
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
630
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
631
|
+
<ns4:element name="requester">
|
|
632
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
633
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
634
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
635
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
636
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
637
|
+
</ns4:typeSpecifier>
|
|
638
|
+
</ns4:element>
|
|
639
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
640
|
+
</ns4:typeInfo>
|
|
641
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.DeviceApplied" retrievable="false" baseType="QDM.QDMBaseType">
|
|
642
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
643
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
644
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
645
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
646
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
647
|
+
<ns4:element name="anatomicalLocationSite" type="System.Code"/>
|
|
648
|
+
<ns4:element name="performer">
|
|
649
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
650
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
651
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
652
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
653
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
654
|
+
</ns4:typeSpecifier>
|
|
655
|
+
</ns4:element>
|
|
656
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
657
|
+
</ns4:typeInfo>
|
|
658
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.MedicationDischarge" retrievable="false" baseType="QDM.QDMBaseType">
|
|
659
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
660
|
+
<ns4:element name="refills" type="System.Integer"/>
|
|
661
|
+
<ns4:element name="dosage" type="System.Quantity"/>
|
|
662
|
+
<ns4:element name="supply" type="System.Quantity"/>
|
|
663
|
+
<ns4:element name="frequency" type="System.Code"/>
|
|
664
|
+
<ns4:element name="daysSupplied" type="System.Integer"/>
|
|
665
|
+
<ns4:element name="route" type="System.Code"/>
|
|
666
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
667
|
+
<ns4:element name="prescriber">
|
|
668
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
669
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
670
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
671
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
672
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
673
|
+
</ns4:typeSpecifier>
|
|
674
|
+
</ns4:element>
|
|
675
|
+
<ns4:element name="recorder">
|
|
676
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
677
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
678
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
679
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
680
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
681
|
+
</ns4:typeSpecifier>
|
|
682
|
+
</ns4:element>
|
|
683
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
684
|
+
</ns4:typeInfo>
|
|
685
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.InterventionPerformed" retrievable="false" baseType="QDM.QDMBaseType">
|
|
686
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
687
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
688
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
689
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
690
|
+
<ns4:element name="result"> <!-- type="System.Any">-->
|
|
691
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
692
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Integer"/>
|
|
693
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Decimal"/>
|
|
694
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Code"/>
|
|
695
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Quantity"/>
|
|
696
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Ratio"/>
|
|
697
|
+
</ns4:typeSpecifier>
|
|
698
|
+
</ns4:element>
|
|
699
|
+
<ns4:element name="status" type="System.Code"/>
|
|
700
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
701
|
+
<ns4:element name="performer">
|
|
702
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
703
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
704
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
705
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
706
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
707
|
+
</ns4:typeSpecifier>
|
|
708
|
+
</ns4:element>
|
|
709
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
710
|
+
</ns4:typeInfo>
|
|
711
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.LaboratoryTestRecommended" retrievable="false" baseType="QDM.QDMBaseType">
|
|
712
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
713
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
714
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
715
|
+
<ns4:element name="requester">
|
|
716
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
717
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
718
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
719
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
720
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
721
|
+
</ns4:typeSpecifier>
|
|
722
|
+
</ns4:element>
|
|
723
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
724
|
+
</ns4:typeInfo>
|
|
725
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.MedicationDispensed" retrievable="false" baseType="QDM.QDMBaseType">
|
|
726
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
727
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
728
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
729
|
+
<ns4:element name="refills" type="System.Integer"/>
|
|
730
|
+
<ns4:element name="dosage" type="System.Quantity"/>
|
|
731
|
+
<ns4:element name="supply" type="System.Quantity"/>
|
|
732
|
+
<ns4:element name="frequency" type="System.Code"/>
|
|
733
|
+
<ns4:element name="daysSupplied" type="System.Integer"/>
|
|
734
|
+
<ns4:element name="route" type="System.Code"/>
|
|
735
|
+
<ns4:element name="prescriber">
|
|
736
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
737
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
738
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
739
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
740
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
741
|
+
</ns4:typeSpecifier>
|
|
742
|
+
</ns4:element>
|
|
743
|
+
<ns4:element name="dispenser">
|
|
744
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
745
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
746
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
747
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
748
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
749
|
+
</ns4:typeSpecifier>
|
|
750
|
+
</ns4:element>
|
|
751
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
752
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
753
|
+
</ns4:typeInfo>
|
|
754
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.DiagnosticStudyRecommended" retrievable="false" baseType="QDM.QDMBaseType">
|
|
755
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
756
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
757
|
+
<ns4:element name="requester">
|
|
758
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
759
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
760
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
761
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
762
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
763
|
+
</ns4:typeSpecifier>
|
|
764
|
+
</ns4:element>
|
|
765
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
766
|
+
</ns4:typeInfo>
|
|
767
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.ImmunizationOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
768
|
+
<ns4:element name="activeDatetime" type="System.DateTime"/>
|
|
769
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
770
|
+
<ns4:element name="dosage" type="System.Quantity"/>
|
|
771
|
+
<ns4:element name="supply" type="System.Quantity"/>
|
|
772
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
773
|
+
<ns4:element name="route" type="System.Code"/>
|
|
774
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
775
|
+
<ns4:element name="requester">
|
|
776
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
777
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
778
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
779
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
780
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
781
|
+
</ns4:typeSpecifier>
|
|
782
|
+
</ns4:element>
|
|
783
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
784
|
+
</ns4:typeInfo>
|
|
785
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PatientCareExperience" retrievable="true" baseType="QDM.QDMBaseType" label="Patient Care Experience" primaryCodePath="code">
|
|
786
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
787
|
+
<ns4:element name="recorder">
|
|
788
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
789
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
790
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
791
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
792
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
793
|
+
</ns4:typeSpecifier>
|
|
794
|
+
</ns4:element>
|
|
795
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
796
|
+
</ns4:typeInfo>
|
|
797
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.ProviderCareExperience" retrievable="true" baseType="QDM.QDMBaseType" label="Provider Care Experience" primaryCodePath="code">
|
|
798
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
799
|
+
<ns4:element name="recorder">
|
|
800
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
801
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
802
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
803
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
804
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
805
|
+
</ns4:typeSpecifier>
|
|
806
|
+
</ns4:element>
|
|
807
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
808
|
+
</ns4:typeInfo>
|
|
809
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.ProcedureOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
810
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
811
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
812
|
+
<ns4:element name="anatomicalLocationSite" type="System.Code"/>
|
|
813
|
+
<ns4:element name="rank" type="System.Integer"/>
|
|
814
|
+
<ns4:element name="priority" type="System.Code"/>
|
|
815
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
816
|
+
<ns4:element name="requester">
|
|
817
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
818
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
819
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
820
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
821
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
822
|
+
</ns4:typeSpecifier>
|
|
823
|
+
</ns4:element>
|
|
824
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
825
|
+
</ns4:typeInfo>
|
|
826
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.MedicationOrder" retrievable="false" baseType="QDM.QDMBaseType">
|
|
827
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
828
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
829
|
+
<ns4:element name="refills" type="System.Integer"/>
|
|
830
|
+
<ns4:element name="dosage" type="System.Quantity"/>
|
|
831
|
+
<ns4:element name="supply" type="System.Quantity"/>
|
|
832
|
+
<ns4:element name="frequency" type="System.Code"/>
|
|
833
|
+
<ns4:element name="daysSupplied" type="System.Integer"/>
|
|
834
|
+
<ns4:element name="route" type="System.Code"/>
|
|
835
|
+
<ns4:element name="setting" type="System.Code"/>
|
|
836
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
837
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
838
|
+
<ns4:element name="prescriber">
|
|
839
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
840
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
841
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
842
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
843
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
844
|
+
</ns4:typeSpecifier>
|
|
845
|
+
</ns4:element>
|
|
846
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
847
|
+
</ns4:typeInfo>
|
|
848
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.SubstanceRecommended" retrievable="false" baseType="QDM.QDMBaseType">
|
|
849
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
850
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
851
|
+
<ns4:element name="dosage" type="System.Quantity"/>
|
|
852
|
+
<ns4:element name="frequency" type="System.Code"/>
|
|
853
|
+
<ns4:element name="refills" type="System.Integer"/>
|
|
854
|
+
<ns4:element name="route" type="System.Code"/>
|
|
855
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
856
|
+
<ns4:element name="requester">
|
|
857
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
858
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
859
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
860
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
861
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
862
|
+
</ns4:typeSpecifier>
|
|
863
|
+
</ns4:element>
|
|
864
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
865
|
+
</ns4:typeInfo>
|
|
866
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.InterventionRecommended" retrievable="false" baseType="QDM.QDMBaseType">
|
|
867
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
868
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
869
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
870
|
+
<ns4:element name="requester">
|
|
871
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
872
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
873
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
874
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
875
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
876
|
+
</ns4:typeSpecifier>
|
|
877
|
+
</ns4:element>
|
|
878
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
879
|
+
</ns4:typeInfo>
|
|
880
|
+
<ns4:typeInfo xsi:type="ns4:ClassInfo" name="QDM.PhysicalExamPerformed" retrievable="false" baseType="QDM.QDMBaseType">
|
|
881
|
+
<ns4:element name="authorDatetime" type="System.DateTime"/>
|
|
882
|
+
<ns4:element name="relevantDatetime" type="System.DateTime"/>
|
|
883
|
+
<ns4:element name="relevantPeriod" type="interval<System.DateTime>"/>
|
|
884
|
+
<ns4:element name="reason" type="System.Code"/>
|
|
885
|
+
<ns4:element name="method" type="System.Code"/>
|
|
886
|
+
<ns4:element name="result"> <!--type="System.Any">-->
|
|
887
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
888
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Integer"/>
|
|
889
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Code"/>
|
|
890
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Date"/>
|
|
891
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="DateTime"/>
|
|
892
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Decimal"/>
|
|
893
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Quantity"/>
|
|
894
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Ratio"/>
|
|
895
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="System" name="Time"/>
|
|
896
|
+
</ns4:typeSpecifier>
|
|
897
|
+
</ns4:element>
|
|
898
|
+
<ns4:element name="anatomicalLocationSite" type="System.Code"/>
|
|
899
|
+
<ns4:element name="negationRationale" type="System.Code"/>
|
|
900
|
+
<ns4:element name="components" type="list<QDM.Component>"/>
|
|
901
|
+
<ns4:element name="performer">
|
|
902
|
+
<ns4:typeSpecifier xsi:type="ns4:ChoiceTypeSpecifier">
|
|
903
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="PatientEntity"/>
|
|
904
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="CarePartner"/>
|
|
905
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Practitioner"/>
|
|
906
|
+
<ns4:choice xsi:type="ns4:NamedTypeSpecifier" modelName="QDM" name="Organization"/>
|
|
907
|
+
</ns4:typeSpecifier>
|
|
908
|
+
</ns4:element>
|
|
909
|
+
<ns4:contextRelationship context="Patient" relatedKeyElement="patientId"/>
|
|
910
|
+
</ns4:typeInfo>
|
|
911
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveAssessmentOrder" retrievable="true" baseType="QDM.AssessmentOrder" identifier="PositiveAssessmentOrder" label="Assessment, Order" primaryCodePath="code"/>
|
|
912
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeAssessmentOrder" retrievable="true" baseType="QDM.AssessmentOrder" identifier="NegativeAssessmentOrder" label="Assessment, Not Ordered" primaryCodePath="code"/>
|
|
913
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveAssessmentRecommended" retrievable="true" baseType="QDM.AssessmentRecommended" identifier="PositiveAssessmentRecommended" label="Assessment, Recommended" primaryCodePath="code"/>
|
|
914
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeAssessmentRecommended" retrievable="true" baseType="QDM.AssessmentRecommended" identifier="NegativeAssessmentRecommended" label="Assessment, Not Recommended" primaryCodePath="code"/>
|
|
915
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveAssessmentPerformed" retrievable="true" baseType="QDM.AssessmentPerformed" identifier="PositiveAssessmentPerformed" label="Assessment, Performed" primaryCodePath="code"/>
|
|
916
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeAssessmentPerformed" retrievable="true" baseType="QDM.AssessmentPerformed" identifier="NegativeAssessmentPerformed" label="Assessment, Not Performed" primaryCodePath="code"/>
|
|
917
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveCommunicationPerformed" retrievable="true" baseType="QDM.CommunicationPerformed" identifier="PositiveCommunicationPerformed" label="Communication, Performed" primaryCodePath="code"/>
|
|
918
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeCommunicationPerformed" retrievable="true" baseType="QDM.CommunicationPerformed" identifier="NegativeCommunicationPerformed" label="Communication, Not Performed" primaryCodePath="code"/>
|
|
919
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveDeviceOrder" retrievable="true" baseType="QDM.DeviceOrder" identifier="PositiveDeviceOrder" label="Device, Order" primaryCodePath="code"/>
|
|
920
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeDeviceOrder" retrievable="true" baseType="QDM.DeviceOrder" identifier="NegativeDeviceOrder" label="Device, Not Ordered" primaryCodePath="code"/>
|
|
921
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveDeviceRecommended" retrievable="true" baseType="QDM.DeviceRecommended" identifier="PositiveDeviceRecommended" label="Device, Recommended" primaryCodePath="code"/>
|
|
922
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeDeviceRecommended" retrievable="true" baseType="QDM.DeviceRecommended" identifier="NegativeDeviceRecommended" label="Device, Not Recommended" primaryCodePath="code"/>
|
|
923
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveDeviceApplied" retrievable="true" baseType="QDM.DeviceApplied" identifier="PositiveDeviceApplied" label="Device, Applied" primaryCodePath="code"/>
|
|
924
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeDeviceApplied" retrievable="true" baseType="QDM.DeviceApplied" identifier="NegativeDeviceApplied" label="Device, Not Applied" primaryCodePath="code"/>
|
|
925
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveDiagnosticStudyOrder" retrievable="true" baseType="QDM.DiagnosticStudyOrder" identifier="PositiveDiagnosticStudyOrder" label="Diagnostic Study, Order" primaryCodePath="code"/>
|
|
926
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeDiagnosticStudyOrder" retrievable="true" baseType="QDM.DiagnosticStudyOrder" identifier="NegativeDiagnosticStudyOrder" label="Diagnostic Study, Not Ordered" primaryCodePath="code"/>
|
|
927
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveDiagnosticStudyRecommended" retrievable="true" baseType="QDM.DiagnosticStudyRecommended" identifier="PositiveDiagnosticStudyRecommended" label="Diagnostic Study, Recommended" primaryCodePath="code"/>
|
|
928
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeDiagnosticStudyRecommended" retrievable="true" baseType="QDM.DiagnosticStudyRecommended" identifier="NegativeDiagnosticStudyRecommended" label="Diagnostic Study, Not Recommended" primaryCodePath="code"/>
|
|
929
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveDiagnosticStudyPerformed" retrievable="true" baseType="QDM.DiagnosticStudyPerformed" identifier="PositiveDiagnosticStudyPerformed" label="Diagnostic Study, Performed" primaryCodePath="code"/>
|
|
930
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeDiagnosticStudyPerformed" retrievable="true" baseType="QDM.DiagnosticStudyPerformed" identifier="NegativeDiagnosticStudyPerformed" label="Diagnostic Study, Not Performed" primaryCodePath="code"/>
|
|
931
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveEncounterOrder" retrievable="true" baseType="QDM.EncounterOrder" identifier="PositiveEncounterOrder" label="Encounter, Order" primaryCodePath="code"/>
|
|
932
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeEncounterOrder" retrievable="true" baseType="QDM.EncounterOrder" identifier="NegativeEncounterOrder" label="Encounter, Not Ordered" primaryCodePath="code"/>
|
|
933
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveEncounterRecommended" retrievable="true" baseType="QDM.EncounterRecommended" identifier="PositiveEncounterRecommended" label="Encounter, Recommended" primaryCodePath="code"/>
|
|
934
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeEncounterRecommended" retrievable="true" baseType="QDM.EncounterRecommended" identifier="NegativeEncounterRecommended" label="Encounter, Not Recommended" primaryCodePath="code"/>
|
|
935
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveEncounterPerformed" retrievable="true" baseType="QDM.EncounterPerformed" identifier="PositiveEncounterPerformed" label="Encounter, Performed" primaryCodePath="code"/>
|
|
936
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeEncounterPerformed" retrievable="true" baseType="QDM.EncounterPerformed" identifier="NegativeEncounterPerformed" label="Encounter, Not Performed" primaryCodePath="code"/>
|
|
937
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveInterventionOrder" retrievable="true" baseType="QDM.InterventionOrder" identifier="PositiveInterventionOrder" label="Intervention, Order" primaryCodePath="code"/>
|
|
938
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeInterventionOrder" retrievable="true" baseType="QDM.InterventionOrder" identifier="NegativeInterventionOrder" label="Intervention, Not Ordered" primaryCodePath="code"/>
|
|
939
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveInterventionRecommended" retrievable="true" baseType="QDM.InterventionRecommended" identifier="PositiveInterventionRecommended" label="Intervention, Recommended" primaryCodePath="code"/>
|
|
940
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeInterventionRecommended" retrievable="true" baseType="QDM.InterventionRecommended" identifier="NegativeInterventionRecommended" label="Intervention, Not Recommended" primaryCodePath="code"/>
|
|
941
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveInterventionPerformed" retrievable="true" baseType="QDM.InterventionPerformed" identifier="PositiveInterventionPerformed" label="Intervention, Performed" primaryCodePath="code"/>
|
|
942
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeInterventionPerformed" retrievable="true" baseType="QDM.InterventionPerformed" identifier="NegativeInterventionPerformed" label="Intervention, Not Performed" primaryCodePath="code"/>
|
|
943
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveImmunizationOrder" retrievable="true" baseType="QDM.ImmunizationOrder" identifier="PositiveImmunizationOrder" label="Immunization, Order" primaryCodePath="code"/>
|
|
944
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeImmunizationOrder" retrievable="true" baseType="QDM.ImmunizationOrder" identifier="NegativeImmunizationOrder" label="Immunization, Not Ordered" primaryCodePath="code"/>
|
|
945
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveImmunizationAdministered" retrievable="true" baseType="QDM.ImmunizationAdministered" identifier="PositiveImmunizationAdministered" label="Immunization, Administered" primaryCodePath="code"/>
|
|
946
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeImmunizationAdministered" retrievable="true" baseType="QDM.ImmunizationAdministered" identifier="NegativeImmunizationAdministered" label="Immunization, Not Administered" primaryCodePath="code"/>
|
|
947
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveMedicationAdministered" retrievable="true" baseType="QDM.MedicationAdministered" identifier="PositiveMedicationAdministered" label="Medication, Administered" primaryCodePath="code"/>
|
|
948
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeMedicationAdministered" retrievable="true" baseType="QDM.MedicationAdministered" identifier="NegativeMedicationAdministered" label="Medication, Not Administered" primaryCodePath="code"/>
|
|
949
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveMedicationDispensed" retrievable="true" baseType="QDM.MedicationDispensed" identifier="PositiveMedicationDispensed" label="Medication, Dispensed" primaryCodePath="code"/>
|
|
950
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeMedicationDispensed" retrievable="true" baseType="QDM.MedicationDispensed" identifier="NegativeMedicationDispensed" label="Medication, Not Dispensed" primaryCodePath="code"/>
|
|
951
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveMedicationDischarge" retrievable="true" baseType="QDM.MedicationDischarge" identifier="PositiveMedicationDischarge" label="Medication, Discharge" primaryCodePath="code"/>
|
|
952
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeMedicationDischarge" retrievable="true" baseType="QDM.MedicationDischarge" identifier="NegativeMedicationDischarge" label="Medication, Not Discharged" primaryCodePath="code"/>
|
|
953
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveMedicationOrder" retrievable="true" baseType="QDM.MedicationOrder" identifier="PositiveMedicationOrder" label="Medication, Order" primaryCodePath="code"/>
|
|
954
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeMedicationOrder" retrievable="true" baseType="QDM.MedicationOrder" identifier="NegativeMedicationOrder" label="Medication, Not Ordered" primaryCodePath="code"/>
|
|
955
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositivePhysicalExamOrder" retrievable="true" baseType="QDM.PhysicalExamOrder" identifier="PositivePhysicalExamOrder" label="Physical Exam, Order" primaryCodePath="code"/>
|
|
956
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativePhysicalExamOrder" retrievable="true" baseType="QDM.PhysicalExamOrder" identifier="NegativePhysicalExamOrder" label="Physical Exam, Not Ordered" primaryCodePath="code"/>
|
|
957
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositivePhysicalExamRecommended" retrievable="true" baseType="QDM.PhysicalExamRecommended" identifier="PositivePhysicalExamRecommended" label="Physical Exam, Recommended" primaryCodePath="code"/>
|
|
958
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativePhysicalExamRecommended" retrievable="true" baseType="QDM.PhysicalExamRecommended" identifier="NegativePhysicalExamRecommended" label="Physical Exam, Not Recommended" primaryCodePath="code"/>
|
|
959
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositivePhysicalExamPerformed" retrievable="true" baseType="QDM.PhysicalExamPerformed" identifier="PositivePhysicalExamPerformed" label="Physical Exam, Performed" primaryCodePath="code"/>
|
|
960
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativePhysicalExamPerformed" retrievable="true" baseType="QDM.PhysicalExamPerformed" identifier="NegativePhysicalExamPerformed" label="Physical Exam, Not Performed" primaryCodePath="code"/>
|
|
961
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveProcedureOrder" retrievable="true" baseType="QDM.ProcedureOrder" identifier="PositiveProcedureOrder" label="Procedure, Order" primaryCodePath="code"/>
|
|
962
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeProcedureOrder" retrievable="true" baseType="QDM.ProcedureOrder" identifier="NegativeProcedureOrder" label="Procedure, Not Ordered" primaryCodePath="code"/>
|
|
963
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveProcedureRecommended" retrievable="true" baseType="QDM.ProcedureRecommended" identifier="PositiveProcedureRecommended" label="Procedure, Recommended" primaryCodePath="code"/>
|
|
964
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeProcedureRecommended" retrievable="true" baseType="QDM.ProcedureRecommended" identifier="NegativeProcedureRecommended" label="Procedure, Not Recommended" primaryCodePath="code"/>
|
|
965
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveProcedurePerformed" retrievable="true" baseType="QDM.ProcedurePerformed" identifier="PositiveProcedurePerformed" label="Procedure, Performed" primaryCodePath="code"/>
|
|
966
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeProcedurePerformed" retrievable="true" baseType="QDM.ProcedurePerformed" identifier="NegativeProcedurePerformed" label="Procedure, Not Performed" primaryCodePath="code"/>
|
|
967
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveSubstanceOrder" retrievable="true" baseType="QDM.SubstanceOrder" identifier="PositiveSubstanceOrder" label="Substance, Order" primaryCodePath="code"/>
|
|
968
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeSubstanceOrder" retrievable="true" baseType="QDM.SubstanceOrder" identifier="NegativeSubstanceOrder" label="Substance, Not Ordered" primaryCodePath="code"/>
|
|
969
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveSubstanceRecommended" retrievable="true" baseType="QDM.SubstanceRecommended" identifier="PositiveSubstanceRecommended" label="Substance, Recommended" primaryCodePath="code"/>
|
|
970
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeSubstanceRecommended" retrievable="true" baseType="QDM.SubstanceRecommended" identifier="NegativeSubstanceRecommended" label="Substance, Not Recommended" primaryCodePath="code"/>
|
|
971
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveSubstanceAdministered" retrievable="true" baseType="QDM.SubstanceAdministered" identifier="PositiveSubstanceAdministered" label="Substance, Administered" primaryCodePath="code"/>
|
|
972
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeSubstanceAdministered" retrievable="true" baseType="QDM.SubstanceAdministered" identifier="NegativeSubstanceAdministered" label="Substance, Not Administered" primaryCodePath="code"/>
|
|
973
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveLaboratoryTestOrder" retrievable="true" baseType="QDM.LaboratoryTestOrder" identifier="PositiveLaboratoryTestOrder" label="Laboratory Test, Order" primaryCodePath="code"/>
|
|
974
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeLaboratoryTestOrder" retrievable="true" baseType="QDM.LaboratoryTestOrder" identifier="NegativeLaboratoryTestOrder" label="Laboratory Test, Not Ordered" primaryCodePath="code"/>
|
|
975
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveLaboratoryTestRecommended" retrievable="true" baseType="QDM.LaboratoryTestRecommended" identifier="PositiveLaboratoryTestRecommended" label="Laboratory Test, Recommended" primaryCodePath="code"/>
|
|
976
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeLaboratoryTestRecommended" retrievable="true" baseType="QDM.LaboratoryTestRecommended" identifier="NegativeLaboratoryTestRecommended" label="Laboratory Test, Not Recommended" primaryCodePath="code"/>
|
|
977
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.PositiveLaboratoryTestPerformed" retrievable="true" baseType="QDM.LaboratoryTestPerformed" identifier="PositiveLaboratoryTestPerformed" label="Laboratory Test, Performed" primaryCodePath="code"/>
|
|
978
|
+
<ns4:typeInfo xsi:type="ns4:ProfileInfo" name="QDM.NegativeLaboratoryTestPerformed" retrievable="true" baseType="QDM.LaboratoryTestPerformed" identifier="NegativeLaboratoryTestPerformed" label="Laboratory Test, Not Performed" primaryCodePath="code"/>
|
|
979
|
+
<ns4:contextInfo name="Patient" keyElement="id" birthDateElement="birthDatetime">
|
|
980
|
+
<ns4:contextType modelName="QDM" name="Patient"/>
|
|
981
|
+
</ns4:contextInfo>
|
|
982
|
+
</ns4:modelInfo>
|