cqm-models 0.8.3 → 0.8.4

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.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/.eslintrc.json +1 -1
  3. data/app/assets/javascripts/AdverseEvent.js +1 -0
  4. data/app/assets/javascripts/AllergyIntolerance.js +1 -0
  5. data/app/assets/javascripts/AssessmentPerformed.js +2 -1
  6. data/app/assets/javascripts/AssessmentRecommended.js +1 -0
  7. data/app/assets/javascripts/CareGoal.js +2 -1
  8. data/app/assets/javascripts/CommunicationFromPatientToProvider.js +2 -1
  9. data/app/assets/javascripts/CommunicationFromProviderToPatient.js +2 -1
  10. data/app/assets/javascripts/CommunicationFromProviderToProvider.js +2 -1
  11. data/app/assets/javascripts/Component.js +1 -0
  12. data/app/assets/javascripts/DeviceApplied.js +1 -0
  13. data/app/assets/javascripts/DeviceOrder.js +1 -0
  14. data/app/assets/javascripts/DeviceRecommended.js +1 -0
  15. data/app/assets/javascripts/Diagnosis.js +1 -0
  16. data/app/assets/javascripts/DiagnosticStudyOrder.js +1 -0
  17. data/app/assets/javascripts/DiagnosticStudyPerformed.js +1 -0
  18. data/app/assets/javascripts/DiagnosticStudyRecommended.js +1 -0
  19. data/app/assets/javascripts/EncounterOrder.js +1 -0
  20. data/app/assets/javascripts/EncounterPerformed.js +1 -0
  21. data/app/assets/javascripts/EncounterRecommended.js +1 -0
  22. data/app/assets/javascripts/FacilityLocation.js +1 -0
  23. data/app/assets/javascripts/FamilyHistory.js +1 -0
  24. data/app/assets/javascripts/Id.js +2 -10
  25. data/app/assets/javascripts/ImmunizationAdministered.js +1 -0
  26. data/app/assets/javascripts/ImmunizationOrder.js +1 -0
  27. data/app/assets/javascripts/InterventionOrder.js +1 -0
  28. data/app/assets/javascripts/InterventionPerformed.js +1 -0
  29. data/app/assets/javascripts/InterventionRecommended.js +1 -0
  30. data/app/assets/javascripts/LaboratoryTestOrder.js +1 -0
  31. data/app/assets/javascripts/LaboratoryTestPerformed.js +1 -0
  32. data/app/assets/javascripts/LaboratoryTestRecommended.js +1 -0
  33. data/app/assets/javascripts/MedicationActive.js +1 -0
  34. data/app/assets/javascripts/MedicationAdministered.js +1 -0
  35. data/app/assets/javascripts/MedicationDischarge.js +1 -0
  36. data/app/assets/javascripts/MedicationDispensed.js +1 -0
  37. data/app/assets/javascripts/MedicationOrder.js +1 -0
  38. data/app/assets/javascripts/Participation.js +1 -0
  39. data/app/assets/javascripts/Patient.js +4 -8
  40. data/app/assets/javascripts/PatientCareExperience.js +1 -0
  41. data/app/assets/javascripts/PatientCharacteristic.js +1 -0
  42. data/app/assets/javascripts/PatientCharacteristicBirthdate.js +1 -0
  43. data/app/assets/javascripts/PatientCharacteristicClinicalTrialParticipant.js +1 -0
  44. data/app/assets/javascripts/PatientCharacteristicEthnicity.js +1 -0
  45. data/app/assets/javascripts/PatientCharacteristicExpired.js +1 -0
  46. data/app/assets/javascripts/PatientCharacteristicPayer.js +1 -0
  47. data/app/assets/javascripts/PatientCharacteristicRace.js +1 -0
  48. data/app/assets/javascripts/PatientCharacteristicSex.js +1 -0
  49. data/app/assets/javascripts/PhysicalExamOrder.js +1 -0
  50. data/app/assets/javascripts/PhysicalExamPerformed.js +1 -0
  51. data/app/assets/javascripts/PhysicalExamRecommended.js +1 -0
  52. data/app/assets/javascripts/ProcedureOrder.js +1 -0
  53. data/app/assets/javascripts/ProcedurePerformed.js +1 -0
  54. data/app/assets/javascripts/ProcedureRecommended.js +1 -0
  55. data/app/assets/javascripts/ProviderCareExperience.js +1 -0
  56. data/app/assets/javascripts/ProviderCharacteristic.js +1 -0
  57. data/app/assets/javascripts/Ratio.js +1 -0
  58. data/app/assets/javascripts/ResultComponent.js +1 -0
  59. data/app/assets/javascripts/SubstanceAdministered.js +1 -0
  60. data/app/assets/javascripts/SubstanceOrder.js +1 -0
  61. data/app/assets/javascripts/SubstanceRecommended.js +1 -0
  62. data/app/assets/javascripts/Symptom.js +1 -0
  63. data/app/assets/javascripts/basetypes/Any.js +1 -1
  64. data/app/assets/javascripts/basetypes/DataElement.js +7 -0
  65. data/app/models/models.rb +3 -1
  66. data/app/models/qdm/assessment_performed.rb +1 -1
  67. data/app/models/qdm/basetypes/data_element.rb +8 -5
  68. data/app/models/qdm/care_goal.rb +1 -1
  69. data/app/models/qdm/communication_from_patient_to_provider.rb +1 -1
  70. data/app/models/qdm/communication_from_provider_to_patient.rb +1 -1
  71. data/app/models/qdm/communication_from_provider_to_provider.rb +1 -1
  72. data/app/models/qdm/component.rb +0 -1
  73. data/app/models/qdm/facility_location.rb +0 -1
  74. data/app/models/qdm/id.rb +2 -2
  75. data/cqm-models.gemspec +1 -1
  76. data/dist/index.js +137 -84
  77. data/lib/generate_models.rb +27 -19
  78. data/package.json +1 -1
  79. data/templates/id_template.js.erb +15 -0
  80. data/templates/models_template.rb.erb +4 -0
  81. data/templates/mongoose_template.js.erb +1 -0
  82. data/templates/patient_template.js.erb +4 -8
  83. metadata +4 -3
data/dist/index.js CHANGED
@@ -7,6 +7,7 @@ const Quantity = require('./basetypes/Quantity');
7
7
  const DateTime = require('./basetypes/DateTime');
8
8
  const { ComponentSchema } = require('./Component');
9
9
  const { FacilityLocationSchema } = require('./FacilityLocation');
10
+ const { IdSchema } = require('./Id');
10
11
  const Any = require('./basetypes/Any');
11
12
 
12
13
  const [Number, String] = [
@@ -30,7 +31,7 @@ const AdverseEventSchema = DataElementSchema({
30
31
  module.exports.AdverseEventSchema = AdverseEventSchema;
31
32
  module.exports.AdverseEvent = mongoose.model('AdverseEvent', AdverseEventSchema);
32
33
 
33
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],2:[function(require,module,exports){
34
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],2:[function(require,module,exports){
34
35
  module.exports.Patient = require('./Patient.js').Patient;
35
36
  module.exports.PatientSchema = require('./Patient.js').PatientSchema;
36
37
  module.exports.Id = require('./Id.js').Id;
@@ -161,6 +162,7 @@ const Quantity = require('./basetypes/Quantity');
161
162
  const DateTime = require('./basetypes/DateTime');
162
163
  const { ComponentSchema } = require('./Component');
163
164
  const { FacilityLocationSchema } = require('./FacilityLocation');
165
+ const { IdSchema } = require('./Id');
164
166
  const Any = require('./basetypes/Any');
165
167
 
166
168
  const [Number, String] = [
@@ -184,7 +186,7 @@ const AllergyIntoleranceSchema = DataElementSchema({
184
186
  module.exports.AllergyIntoleranceSchema = AllergyIntoleranceSchema;
185
187
  module.exports.AllergyIntolerance = mongoose.model('AllergyIntolerance', AllergyIntoleranceSchema);
186
188
 
187
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],4:[function(require,module,exports){
189
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],4:[function(require,module,exports){
188
190
  const mongoose = require('mongoose');
189
191
  const { DataElementSchema } = require('./basetypes/DataElement');
190
192
  const Code = require('./basetypes/Code');
@@ -193,6 +195,7 @@ const Quantity = require('./basetypes/Quantity');
193
195
  const DateTime = require('./basetypes/DateTime');
194
196
  const { ComponentSchema } = require('./Component');
195
197
  const { FacilityLocationSchema } = require('./FacilityLocation');
198
+ const { IdSchema } = require('./Id');
196
199
  const Any = require('./basetypes/Any');
197
200
 
198
201
  const [Number, String] = [
@@ -207,7 +210,7 @@ const AssessmentPerformedSchema = DataElementSchema({
207
210
  method: Code,
208
211
  result: Any,
209
212
  components: [ComponentSchema],
210
- relatedTo: [String],
213
+ relatedTo: [IdSchema],
211
214
  hqmfOid: { type: String, default: '2.16.840.1.113883.10.20.28.3.117' },
212
215
  category: { type: String, default: 'assessment' },
213
216
  qdmStatus: { type: String, default: 'performed' },
@@ -219,7 +222,7 @@ const AssessmentPerformedSchema = DataElementSchema({
219
222
  module.exports.AssessmentPerformedSchema = AssessmentPerformedSchema;
220
223
  module.exports.AssessmentPerformed = mongoose.model('AssessmentPerformed', AssessmentPerformedSchema);
221
224
 
222
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],5:[function(require,module,exports){
225
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],5:[function(require,module,exports){
223
226
  const mongoose = require('mongoose');
224
227
  const { DataElementSchema } = require('./basetypes/DataElement');
225
228
  const Code = require('./basetypes/Code');
@@ -228,6 +231,7 @@ const Quantity = require('./basetypes/Quantity');
228
231
  const DateTime = require('./basetypes/DateTime');
229
232
  const { ComponentSchema } = require('./Component');
230
233
  const { FacilityLocationSchema } = require('./FacilityLocation');
234
+ const { IdSchema } = require('./Id');
231
235
  const Any = require('./basetypes/Any');
232
236
 
233
237
  const [Number, String] = [
@@ -251,7 +255,7 @@ const AssessmentRecommendedSchema = DataElementSchema({
251
255
  module.exports.AssessmentRecommendedSchema = AssessmentRecommendedSchema;
252
256
  module.exports.AssessmentRecommended = mongoose.model('AssessmentRecommended', AssessmentRecommendedSchema);
253
257
 
254
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],6:[function(require,module,exports){
258
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],6:[function(require,module,exports){
255
259
  const mongoose = require('mongoose');
256
260
  const { DataElementSchema } = require('./basetypes/DataElement');
257
261
  const Code = require('./basetypes/Code');
@@ -260,6 +264,7 @@ const Quantity = require('./basetypes/Quantity');
260
264
  const DateTime = require('./basetypes/DateTime');
261
265
  const { ComponentSchema } = require('./Component');
262
266
  const { FacilityLocationSchema } = require('./FacilityLocation');
267
+ const { IdSchema } = require('./Id');
263
268
  const Any = require('./basetypes/Any');
264
269
 
265
270
  const [Number, String] = [
@@ -269,7 +274,7 @@ const [Number, String] = [
269
274
 
270
275
  const CareGoalSchema = DataElementSchema({
271
276
  relevantPeriod: Interval,
272
- relatedTo: [String],
277
+ relatedTo: [IdSchema],
273
278
  targetOutcome: Any,
274
279
  hqmfOid: { type: String, default: '2.16.840.1.113883.10.20.28.3.7' },
275
280
  category: { type: String, default: 'care_goal' },
@@ -281,7 +286,7 @@ const CareGoalSchema = DataElementSchema({
281
286
  module.exports.CareGoalSchema = CareGoalSchema;
282
287
  module.exports.CareGoal = mongoose.model('CareGoal', CareGoalSchema);
283
288
 
284
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],7:[function(require,module,exports){
289
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],7:[function(require,module,exports){
285
290
  const mongoose = require('mongoose');
286
291
  const { DataElementSchema } = require('./basetypes/DataElement');
287
292
  const Code = require('./basetypes/Code');
@@ -290,6 +295,7 @@ const Quantity = require('./basetypes/Quantity');
290
295
  const DateTime = require('./basetypes/DateTime');
291
296
  const { ComponentSchema } = require('./Component');
292
297
  const { FacilityLocationSchema } = require('./FacilityLocation');
298
+ const { IdSchema } = require('./Id');
293
299
  const Any = require('./basetypes/Any');
294
300
 
295
301
  const [Number, String] = [
@@ -299,7 +305,7 @@ const [Number, String] = [
299
305
 
300
306
  const CommunicationFromPatientToProviderSchema = DataElementSchema({
301
307
  authorDatetime: DateTime,
302
- relatedTo: [String],
308
+ relatedTo: [IdSchema],
303
309
  negationRationale: Code,
304
310
  hqmfOid: { type: String, default: '2.16.840.1.113883.10.20.28.3.8' },
305
311
  category: { type: String, default: 'communication' },
@@ -312,7 +318,7 @@ const CommunicationFromPatientToProviderSchema = DataElementSchema({
312
318
  module.exports.CommunicationFromPatientToProviderSchema = CommunicationFromPatientToProviderSchema;
313
319
  module.exports.CommunicationFromPatientToProvider = mongoose.model('CommunicationFromPatientToProvider', CommunicationFromPatientToProviderSchema);
314
320
 
315
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],8:[function(require,module,exports){
321
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],8:[function(require,module,exports){
316
322
  const mongoose = require('mongoose');
317
323
  const { DataElementSchema } = require('./basetypes/DataElement');
318
324
  const Code = require('./basetypes/Code');
@@ -321,6 +327,7 @@ const Quantity = require('./basetypes/Quantity');
321
327
  const DateTime = require('./basetypes/DateTime');
322
328
  const { ComponentSchema } = require('./Component');
323
329
  const { FacilityLocationSchema } = require('./FacilityLocation');
330
+ const { IdSchema } = require('./Id');
324
331
  const Any = require('./basetypes/Any');
325
332
 
326
333
  const [Number, String] = [
@@ -330,7 +337,7 @@ const [Number, String] = [
330
337
 
331
338
  const CommunicationFromProviderToPatientSchema = DataElementSchema({
332
339
  authorDatetime: DateTime,
333
- relatedTo: [String],
340
+ relatedTo: [IdSchema],
334
341
  negationRationale: Code,
335
342
  hqmfOid: { type: String, default: '2.16.840.1.113883.10.20.28.3.9' },
336
343
  category: { type: String, default: 'communication' },
@@ -343,7 +350,7 @@ const CommunicationFromProviderToPatientSchema = DataElementSchema({
343
350
  module.exports.CommunicationFromProviderToPatientSchema = CommunicationFromProviderToPatientSchema;
344
351
  module.exports.CommunicationFromProviderToPatient = mongoose.model('CommunicationFromProviderToPatient', CommunicationFromProviderToPatientSchema);
345
352
 
346
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],9:[function(require,module,exports){
353
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],9:[function(require,module,exports){
347
354
  const mongoose = require('mongoose');
348
355
  const { DataElementSchema } = require('./basetypes/DataElement');
349
356
  const Code = require('./basetypes/Code');
@@ -352,6 +359,7 @@ const Quantity = require('./basetypes/Quantity');
352
359
  const DateTime = require('./basetypes/DateTime');
353
360
  const { ComponentSchema } = require('./Component');
354
361
  const { FacilityLocationSchema } = require('./FacilityLocation');
362
+ const { IdSchema } = require('./Id');
355
363
  const Any = require('./basetypes/Any');
356
364
 
357
365
  const [Number, String] = [
@@ -361,7 +369,7 @@ const [Number, String] = [
361
369
 
362
370
  const CommunicationFromProviderToProviderSchema = DataElementSchema({
363
371
  authorDatetime: DateTime,
364
- relatedTo: [String],
372
+ relatedTo: [IdSchema],
365
373
  negationRationale: Code,
366
374
  hqmfOid: { type: String, default: '2.16.840.1.113883.10.20.28.3.10' },
367
375
  category: { type: String, default: 'communication' },
@@ -374,7 +382,7 @@ const CommunicationFromProviderToProviderSchema = DataElementSchema({
374
382
  module.exports.CommunicationFromProviderToProviderSchema = CommunicationFromProviderToProviderSchema;
375
383
  module.exports.CommunicationFromProviderToProvider = mongoose.model('CommunicationFromProviderToProvider', CommunicationFromProviderToProviderSchema);
376
384
 
377
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],10:[function(require,module,exports){
385
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],10:[function(require,module,exports){
378
386
  const mongoose = require('mongoose');
379
387
  const { DataElementSchema } = require('./basetypes/DataElement');
380
388
  const Code = require('./basetypes/Code');
@@ -383,6 +391,7 @@ const Quantity = require('./basetypes/Quantity');
383
391
  const DateTime = require('./basetypes/DateTime');
384
392
 
385
393
  const { FacilityLocationSchema } = require('./FacilityLocation');
394
+ const { IdSchema } = require('./Id');
386
395
  const Any = require('./basetypes/Any');
387
396
 
388
397
  const [Number, String] = [
@@ -401,7 +410,7 @@ const ComponentSchema = new mongoose.Schema({
401
410
  module.exports.ComponentSchema = ComponentSchema;
402
411
  module.exports.Component = mongoose.model('Component', ComponentSchema);
403
412
 
404
- },{"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],11:[function(require,module,exports){
413
+ },{"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],11:[function(require,module,exports){
405
414
  const mongoose = require('mongoose');
406
415
 
407
416
  const mString = mongoose.Schema.Types.String;
@@ -426,6 +435,7 @@ const Quantity = require('./basetypes/Quantity');
426
435
  const DateTime = require('./basetypes/DateTime');
427
436
  const { ComponentSchema } = require('./Component');
428
437
  const { FacilityLocationSchema } = require('./FacilityLocation');
438
+ const { IdSchema } = require('./Id');
429
439
  const Any = require('./basetypes/Any');
430
440
 
431
441
  const [Number, String] = [
@@ -451,7 +461,7 @@ const DeviceAppliedSchema = DataElementSchema({
451
461
  module.exports.DeviceAppliedSchema = DeviceAppliedSchema;
452
462
  module.exports.DeviceApplied = mongoose.model('DeviceApplied', DeviceAppliedSchema);
453
463
 
454
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],13:[function(require,module,exports){
464
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],13:[function(require,module,exports){
455
465
  const mongoose = require('mongoose');
456
466
  const { DataElementSchema } = require('./basetypes/DataElement');
457
467
  const Code = require('./basetypes/Code');
@@ -460,6 +470,7 @@ const Quantity = require('./basetypes/Quantity');
460
470
  const DateTime = require('./basetypes/DateTime');
461
471
  const { ComponentSchema } = require('./Component');
462
472
  const { FacilityLocationSchema } = require('./FacilityLocation');
473
+ const { IdSchema } = require('./Id');
463
474
  const Any = require('./basetypes/Any');
464
475
 
465
476
  const [Number, String] = [
@@ -482,7 +493,7 @@ const DeviceOrderSchema = DataElementSchema({
482
493
  module.exports.DeviceOrderSchema = DeviceOrderSchema;
483
494
  module.exports.DeviceOrder = mongoose.model('DeviceOrder', DeviceOrderSchema);
484
495
 
485
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],14:[function(require,module,exports){
496
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],14:[function(require,module,exports){
486
497
  const mongoose = require('mongoose');
487
498
  const { DataElementSchema } = require('./basetypes/DataElement');
488
499
  const Code = require('./basetypes/Code');
@@ -491,6 +502,7 @@ const Quantity = require('./basetypes/Quantity');
491
502
  const DateTime = require('./basetypes/DateTime');
492
503
  const { ComponentSchema } = require('./Component');
493
504
  const { FacilityLocationSchema } = require('./FacilityLocation');
505
+ const { IdSchema } = require('./Id');
494
506
  const Any = require('./basetypes/Any');
495
507
 
496
508
  const [Number, String] = [
@@ -513,7 +525,7 @@ const DeviceRecommendedSchema = DataElementSchema({
513
525
  module.exports.DeviceRecommendedSchema = DeviceRecommendedSchema;
514
526
  module.exports.DeviceRecommended = mongoose.model('DeviceRecommended', DeviceRecommendedSchema);
515
527
 
516
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],15:[function(require,module,exports){
528
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],15:[function(require,module,exports){
517
529
  const mongoose = require('mongoose');
518
530
  const { DataElementSchema } = require('./basetypes/DataElement');
519
531
  const Code = require('./basetypes/Code');
@@ -522,6 +534,7 @@ const Quantity = require('./basetypes/Quantity');
522
534
  const DateTime = require('./basetypes/DateTime');
523
535
  const { ComponentSchema } = require('./Component');
524
536
  const { FacilityLocationSchema } = require('./FacilityLocation');
537
+ const { IdSchema } = require('./Id');
525
538
  const Any = require('./basetypes/Any');
526
539
 
527
540
  const [Number, String] = [
@@ -545,7 +558,7 @@ const DiagnosisSchema = DataElementSchema({
545
558
  module.exports.DiagnosisSchema = DiagnosisSchema;
546
559
  module.exports.Diagnosis = mongoose.model('Diagnosis', DiagnosisSchema);
547
560
 
548
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],16:[function(require,module,exports){
561
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],16:[function(require,module,exports){
549
562
  const mongoose = require('mongoose');
550
563
  const { DataElementSchema } = require('./basetypes/DataElement');
551
564
  const Code = require('./basetypes/Code');
@@ -554,6 +567,7 @@ const Quantity = require('./basetypes/Quantity');
554
567
  const DateTime = require('./basetypes/DateTime');
555
568
  const { ComponentSchema } = require('./Component');
556
569
  const { FacilityLocationSchema } = require('./FacilityLocation');
570
+ const { IdSchema } = require('./Id');
557
571
  const Any = require('./basetypes/Any');
558
572
 
559
573
  const [Number, String] = [
@@ -577,7 +591,7 @@ const DiagnosticStudyOrderSchema = DataElementSchema({
577
591
  module.exports.DiagnosticStudyOrderSchema = DiagnosticStudyOrderSchema;
578
592
  module.exports.DiagnosticStudyOrder = mongoose.model('DiagnosticStudyOrder', DiagnosticStudyOrderSchema);
579
593
 
580
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],17:[function(require,module,exports){
594
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],17:[function(require,module,exports){
581
595
  const mongoose = require('mongoose');
582
596
  const { DataElementSchema } = require('./basetypes/DataElement');
583
597
  const Code = require('./basetypes/Code');
@@ -586,6 +600,7 @@ const Quantity = require('./basetypes/Quantity');
586
600
  const DateTime = require('./basetypes/DateTime');
587
601
  const { ComponentSchema } = require('./Component');
588
602
  const { FacilityLocationSchema } = require('./FacilityLocation');
603
+ const { IdSchema } = require('./Id');
589
604
  const Any = require('./basetypes/Any');
590
605
 
591
606
  const [Number, String] = [
@@ -615,7 +630,7 @@ const DiagnosticStudyPerformedSchema = DataElementSchema({
615
630
  module.exports.DiagnosticStudyPerformedSchema = DiagnosticStudyPerformedSchema;
616
631
  module.exports.DiagnosticStudyPerformed = mongoose.model('DiagnosticStudyPerformed', DiagnosticStudyPerformedSchema);
617
632
 
618
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],18:[function(require,module,exports){
633
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],18:[function(require,module,exports){
619
634
  const mongoose = require('mongoose');
620
635
  const { DataElementSchema } = require('./basetypes/DataElement');
621
636
  const Code = require('./basetypes/Code');
@@ -624,6 +639,7 @@ const Quantity = require('./basetypes/Quantity');
624
639
  const DateTime = require('./basetypes/DateTime');
625
640
  const { ComponentSchema } = require('./Component');
626
641
  const { FacilityLocationSchema } = require('./FacilityLocation');
642
+ const { IdSchema } = require('./Id');
627
643
  const Any = require('./basetypes/Any');
628
644
 
629
645
  const [Number, String] = [
@@ -647,7 +663,7 @@ const DiagnosticStudyRecommendedSchema = DataElementSchema({
647
663
  module.exports.DiagnosticStudyRecommendedSchema = DiagnosticStudyRecommendedSchema;
648
664
  module.exports.DiagnosticStudyRecommended = mongoose.model('DiagnosticStudyRecommended', DiagnosticStudyRecommendedSchema);
649
665
 
650
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],19:[function(require,module,exports){
666
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],19:[function(require,module,exports){
651
667
  const mongoose = require('mongoose');
652
668
  const { DataElementSchema } = require('./basetypes/DataElement');
653
669
  const Code = require('./basetypes/Code');
@@ -656,6 +672,7 @@ const Quantity = require('./basetypes/Quantity');
656
672
  const DateTime = require('./basetypes/DateTime');
657
673
  const { ComponentSchema } = require('./Component');
658
674
  const { FacilityLocationSchema } = require('./FacilityLocation');
675
+ const { IdSchema } = require('./Id');
659
676
  const Any = require('./basetypes/Any');
660
677
 
661
678
  const [Number, String] = [
@@ -679,7 +696,7 @@ const EncounterOrderSchema = DataElementSchema({
679
696
  module.exports.EncounterOrderSchema = EncounterOrderSchema;
680
697
  module.exports.EncounterOrder = mongoose.model('EncounterOrder', EncounterOrderSchema);
681
698
 
682
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],20:[function(require,module,exports){
699
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],20:[function(require,module,exports){
683
700
  const mongoose = require('mongoose');
684
701
  const { DataElementSchema } = require('./basetypes/DataElement');
685
702
  const Code = require('./basetypes/Code');
@@ -688,6 +705,7 @@ const Quantity = require('./basetypes/Quantity');
688
705
  const DateTime = require('./basetypes/DateTime');
689
706
  const { ComponentSchema } = require('./Component');
690
707
  const { FacilityLocationSchema } = require('./FacilityLocation');
708
+ const { IdSchema } = require('./Id');
691
709
  const Any = require('./basetypes/Any');
692
710
 
693
711
  const [Number, String] = [
@@ -716,7 +734,7 @@ const EncounterPerformedSchema = DataElementSchema({
716
734
  module.exports.EncounterPerformedSchema = EncounterPerformedSchema;
717
735
  module.exports.EncounterPerformed = mongoose.model('EncounterPerformed', EncounterPerformedSchema);
718
736
 
719
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],21:[function(require,module,exports){
737
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],21:[function(require,module,exports){
720
738
  const mongoose = require('mongoose');
721
739
  const { DataElementSchema } = require('./basetypes/DataElement');
722
740
  const Code = require('./basetypes/Code');
@@ -725,6 +743,7 @@ const Quantity = require('./basetypes/Quantity');
725
743
  const DateTime = require('./basetypes/DateTime');
726
744
  const { ComponentSchema } = require('./Component');
727
745
  const { FacilityLocationSchema } = require('./FacilityLocation');
746
+ const { IdSchema } = require('./Id');
728
747
  const Any = require('./basetypes/Any');
729
748
 
730
749
  const [Number, String] = [
@@ -748,7 +767,7 @@ const EncounterRecommendedSchema = DataElementSchema({
748
767
  module.exports.EncounterRecommendedSchema = EncounterRecommendedSchema;
749
768
  module.exports.EncounterRecommended = mongoose.model('EncounterRecommended', EncounterRecommendedSchema);
750
769
 
751
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],22:[function(require,module,exports){
770
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],22:[function(require,module,exports){
752
771
  const mongoose = require('mongoose');
753
772
  const { DataElementSchema } = require('./basetypes/DataElement');
754
773
  const Code = require('./basetypes/Code');
@@ -757,6 +776,7 @@ const Quantity = require('./basetypes/Quantity');
757
776
  const DateTime = require('./basetypes/DateTime');
758
777
  const { ComponentSchema } = require('./Component');
759
778
 
779
+ const { IdSchema } = require('./Id');
760
780
  const Any = require('./basetypes/Any');
761
781
 
762
782
  const [Number, String] = [
@@ -775,7 +795,7 @@ const FacilityLocationSchema = new mongoose.Schema({
775
795
  module.exports.FacilityLocationSchema = FacilityLocationSchema;
776
796
  module.exports.FacilityLocation = mongoose.model('FacilityLocation', FacilityLocationSchema);
777
797
 
778
- },{"./Component":10,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],23:[function(require,module,exports){
798
+ },{"./Component":10,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],23:[function(require,module,exports){
779
799
  const mongoose = require('mongoose');
780
800
  const { DataElementSchema } = require('./basetypes/DataElement');
781
801
  const Code = require('./basetypes/Code');
@@ -784,6 +804,7 @@ const Quantity = require('./basetypes/Quantity');
784
804
  const DateTime = require('./basetypes/DateTime');
785
805
  const { ComponentSchema } = require('./Component');
786
806
  const { FacilityLocationSchema } = require('./FacilityLocation');
807
+ const { IdSchema } = require('./Id');
787
808
  const Any = require('./basetypes/Any');
788
809
 
789
810
  const [Number, String] = [
@@ -805,34 +826,26 @@ const FamilyHistorySchema = DataElementSchema({
805
826
  module.exports.FamilyHistorySchema = FamilyHistorySchema;
806
827
  module.exports.FamilyHistory = mongoose.model('FamilyHistory', FamilyHistorySchema);
807
828
 
808
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],24:[function(require,module,exports){
829
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],24:[function(require,module,exports){
809
830
  const mongoose = require('mongoose');
810
- const { DataElementSchema } = require('./basetypes/DataElement');
811
- const Code = require('./basetypes/Code');
812
- const Interval = require('./basetypes/Interval');
813
- const Quantity = require('./basetypes/Quantity');
814
- const DateTime = require('./basetypes/DateTime');
815
- const { ComponentSchema } = require('./Component');
816
- const { FacilityLocationSchema } = require('./FacilityLocation');
817
- const Any = require('./basetypes/Any');
818
831
 
819
832
  const [Number, String] = [
820
833
  mongoose.Schema.Types.Number,
821
834
  mongoose.Schema.Types.String,
822
835
  ];
823
836
 
824
- const IdSchema = DataElementSchema({
837
+ const IdSchema = mongoose.Schema({
825
838
  namingSystem: String,
826
839
  value: String,
827
840
  qdmVersion: { type: String, default: '5.3' },
828
841
  _type: { type: String, default: 'Id' },
829
842
 
830
- });
843
+ }, { _id: false, id: false });
831
844
 
832
845
  module.exports.IdSchema = IdSchema;
833
846
  module.exports.Id = mongoose.model('Id', IdSchema);
834
847
 
835
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],25:[function(require,module,exports){
848
+ },{"mongoose":402}],25:[function(require,module,exports){
836
849
  const mongoose = require('mongoose');
837
850
  const { DataElementSchema } = require('./basetypes/DataElement');
838
851
  const Code = require('./basetypes/Code');
@@ -841,6 +854,7 @@ const Quantity = require('./basetypes/Quantity');
841
854
  const DateTime = require('./basetypes/DateTime');
842
855
  const { ComponentSchema } = require('./Component');
843
856
  const { FacilityLocationSchema } = require('./FacilityLocation');
857
+ const { IdSchema } = require('./Id');
844
858
  const Any = require('./basetypes/Any');
845
859
 
846
860
  const [Number, String] = [
@@ -867,7 +881,7 @@ const ImmunizationAdministeredSchema = DataElementSchema({
867
881
  module.exports.ImmunizationAdministeredSchema = ImmunizationAdministeredSchema;
868
882
  module.exports.ImmunizationAdministered = mongoose.model('ImmunizationAdministered', ImmunizationAdministeredSchema);
869
883
 
870
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],26:[function(require,module,exports){
884
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],26:[function(require,module,exports){
871
885
  const mongoose = require('mongoose');
872
886
  const { DataElementSchema } = require('./basetypes/DataElement');
873
887
  const Code = require('./basetypes/Code');
@@ -876,6 +890,7 @@ const Quantity = require('./basetypes/Quantity');
876
890
  const DateTime = require('./basetypes/DateTime');
877
891
  const { ComponentSchema } = require('./Component');
878
892
  const { FacilityLocationSchema } = require('./FacilityLocation');
893
+ const { IdSchema } = require('./Id');
879
894
  const Any = require('./basetypes/Any');
880
895
 
881
896
  const [Number, String] = [
@@ -902,7 +917,7 @@ const ImmunizationOrderSchema = DataElementSchema({
902
917
  module.exports.ImmunizationOrderSchema = ImmunizationOrderSchema;
903
918
  module.exports.ImmunizationOrder = mongoose.model('ImmunizationOrder', ImmunizationOrderSchema);
904
919
 
905
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],27:[function(require,module,exports){
920
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],27:[function(require,module,exports){
906
921
  const mongoose = require('mongoose');
907
922
 
908
923
  const [Number, String, Mixed, ObjectId] = [
@@ -970,6 +985,7 @@ const Quantity = require('./basetypes/Quantity');
970
985
  const DateTime = require('./basetypes/DateTime');
971
986
  const { ComponentSchema } = require('./Component');
972
987
  const { FacilityLocationSchema } = require('./FacilityLocation');
988
+ const { IdSchema } = require('./Id');
973
989
  const Any = require('./basetypes/Any');
974
990
 
975
991
  const [Number, String] = [
@@ -992,7 +1008,7 @@ const InterventionOrderSchema = DataElementSchema({
992
1008
  module.exports.InterventionOrderSchema = InterventionOrderSchema;
993
1009
  module.exports.InterventionOrder = mongoose.model('InterventionOrder', InterventionOrderSchema);
994
1010
 
995
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],29:[function(require,module,exports){
1011
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],29:[function(require,module,exports){
996
1012
  const mongoose = require('mongoose');
997
1013
  const { DataElementSchema } = require('./basetypes/DataElement');
998
1014
  const Code = require('./basetypes/Code');
@@ -1001,6 +1017,7 @@ const Quantity = require('./basetypes/Quantity');
1001
1017
  const DateTime = require('./basetypes/DateTime');
1002
1018
  const { ComponentSchema } = require('./Component');
1003
1019
  const { FacilityLocationSchema } = require('./FacilityLocation');
1020
+ const { IdSchema } = require('./Id');
1004
1021
  const Any = require('./basetypes/Any');
1005
1022
 
1006
1023
  const [Number, String] = [
@@ -1026,7 +1043,7 @@ const InterventionPerformedSchema = DataElementSchema({
1026
1043
  module.exports.InterventionPerformedSchema = InterventionPerformedSchema;
1027
1044
  module.exports.InterventionPerformed = mongoose.model('InterventionPerformed', InterventionPerformedSchema);
1028
1045
 
1029
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],30:[function(require,module,exports){
1046
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],30:[function(require,module,exports){
1030
1047
  const mongoose = require('mongoose');
1031
1048
  const { DataElementSchema } = require('./basetypes/DataElement');
1032
1049
  const Code = require('./basetypes/Code');
@@ -1035,6 +1052,7 @@ const Quantity = require('./basetypes/Quantity');
1035
1052
  const DateTime = require('./basetypes/DateTime');
1036
1053
  const { ComponentSchema } = require('./Component');
1037
1054
  const { FacilityLocationSchema } = require('./FacilityLocation');
1055
+ const { IdSchema } = require('./Id');
1038
1056
  const Any = require('./basetypes/Any');
1039
1057
 
1040
1058
  const [Number, String] = [
@@ -1057,7 +1075,7 @@ const InterventionRecommendedSchema = DataElementSchema({
1057
1075
  module.exports.InterventionRecommendedSchema = InterventionRecommendedSchema;
1058
1076
  module.exports.InterventionRecommended = mongoose.model('InterventionRecommended', InterventionRecommendedSchema);
1059
1077
 
1060
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],31:[function(require,module,exports){
1078
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],31:[function(require,module,exports){
1061
1079
  const mongoose = require('mongoose');
1062
1080
  const { DataElementSchema } = require('./basetypes/DataElement');
1063
1081
  const Code = require('./basetypes/Code');
@@ -1066,6 +1084,7 @@ const Quantity = require('./basetypes/Quantity');
1066
1084
  const DateTime = require('./basetypes/DateTime');
1067
1085
  const { ComponentSchema } = require('./Component');
1068
1086
  const { FacilityLocationSchema } = require('./FacilityLocation');
1087
+ const { IdSchema } = require('./Id');
1069
1088
  const Any = require('./basetypes/Any');
1070
1089
 
1071
1090
  const [Number, String] = [
@@ -1089,7 +1108,7 @@ const LaboratoryTestOrderSchema = DataElementSchema({
1089
1108
  module.exports.LaboratoryTestOrderSchema = LaboratoryTestOrderSchema;
1090
1109
  module.exports.LaboratoryTestOrder = mongoose.model('LaboratoryTestOrder', LaboratoryTestOrderSchema);
1091
1110
 
1092
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],32:[function(require,module,exports){
1111
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],32:[function(require,module,exports){
1093
1112
  const mongoose = require('mongoose');
1094
1113
  const { DataElementSchema } = require('./basetypes/DataElement');
1095
1114
  const Code = require('./basetypes/Code');
@@ -1098,6 +1117,7 @@ const Quantity = require('./basetypes/Quantity');
1098
1117
  const DateTime = require('./basetypes/DateTime');
1099
1118
  const { ComponentSchema } = require('./Component');
1100
1119
  const { FacilityLocationSchema } = require('./FacilityLocation');
1120
+ const { IdSchema } = require('./Id');
1101
1121
  const Any = require('./basetypes/Any');
1102
1122
 
1103
1123
  const [Number, String] = [
@@ -1127,7 +1147,7 @@ const LaboratoryTestPerformedSchema = DataElementSchema({
1127
1147
  module.exports.LaboratoryTestPerformedSchema = LaboratoryTestPerformedSchema;
1128
1148
  module.exports.LaboratoryTestPerformed = mongoose.model('LaboratoryTestPerformed', LaboratoryTestPerformedSchema);
1129
1149
 
1130
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],33:[function(require,module,exports){
1150
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],33:[function(require,module,exports){
1131
1151
  const mongoose = require('mongoose');
1132
1152
  const { DataElementSchema } = require('./basetypes/DataElement');
1133
1153
  const Code = require('./basetypes/Code');
@@ -1136,6 +1156,7 @@ const Quantity = require('./basetypes/Quantity');
1136
1156
  const DateTime = require('./basetypes/DateTime');
1137
1157
  const { ComponentSchema } = require('./Component');
1138
1158
  const { FacilityLocationSchema } = require('./FacilityLocation');
1159
+ const { IdSchema } = require('./Id');
1139
1160
  const Any = require('./basetypes/Any');
1140
1161
 
1141
1162
  const [Number, String] = [
@@ -1159,7 +1180,7 @@ const LaboratoryTestRecommendedSchema = DataElementSchema({
1159
1180
  module.exports.LaboratoryTestRecommendedSchema = LaboratoryTestRecommendedSchema;
1160
1181
  module.exports.LaboratoryTestRecommended = mongoose.model('LaboratoryTestRecommended', LaboratoryTestRecommendedSchema);
1161
1182
 
1162
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],34:[function(require,module,exports){
1183
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],34:[function(require,module,exports){
1163
1184
  const mongoose = require('mongoose');
1164
1185
  const Code = require('./basetypes/Code');
1165
1186
  const Interval = require('./basetypes/Interval');
@@ -1270,6 +1291,7 @@ const Quantity = require('./basetypes/Quantity');
1270
1291
  const DateTime = require('./basetypes/DateTime');
1271
1292
  const { ComponentSchema } = require('./Component');
1272
1293
  const { FacilityLocationSchema } = require('./FacilityLocation');
1294
+ const { IdSchema } = require('./Id');
1273
1295
  const Any = require('./basetypes/Any');
1274
1296
 
1275
1297
  const [Number, String] = [
@@ -1294,7 +1316,7 @@ const MedicationActiveSchema = DataElementSchema({
1294
1316
  module.exports.MedicationActiveSchema = MedicationActiveSchema;
1295
1317
  module.exports.MedicationActive = mongoose.model('MedicationActive', MedicationActiveSchema);
1296
1318
 
1297
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],37:[function(require,module,exports){
1319
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],37:[function(require,module,exports){
1298
1320
  const mongoose = require('mongoose');
1299
1321
  const { DataElementSchema } = require('./basetypes/DataElement');
1300
1322
  const Code = require('./basetypes/Code');
@@ -1303,6 +1325,7 @@ const Quantity = require('./basetypes/Quantity');
1303
1325
  const DateTime = require('./basetypes/DateTime');
1304
1326
  const { ComponentSchema } = require('./Component');
1305
1327
  const { FacilityLocationSchema } = require('./FacilityLocation');
1328
+ const { IdSchema } = require('./Id');
1306
1329
  const Any = require('./basetypes/Any');
1307
1330
 
1308
1331
  const [Number, String] = [
@@ -1330,7 +1353,7 @@ const MedicationAdministeredSchema = DataElementSchema({
1330
1353
  module.exports.MedicationAdministeredSchema = MedicationAdministeredSchema;
1331
1354
  module.exports.MedicationAdministered = mongoose.model('MedicationAdministered', MedicationAdministeredSchema);
1332
1355
 
1333
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],38:[function(require,module,exports){
1356
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],38:[function(require,module,exports){
1334
1357
  const mongoose = require('mongoose');
1335
1358
  const { DataElementSchema } = require('./basetypes/DataElement');
1336
1359
  const Code = require('./basetypes/Code');
@@ -1339,6 +1362,7 @@ const Quantity = require('./basetypes/Quantity');
1339
1362
  const DateTime = require('./basetypes/DateTime');
1340
1363
  const { ComponentSchema } = require('./Component');
1341
1364
  const { FacilityLocationSchema } = require('./FacilityLocation');
1365
+ const { IdSchema } = require('./Id');
1342
1366
  const Any = require('./basetypes/Any');
1343
1367
 
1344
1368
  const [Number, String] = [
@@ -1365,7 +1389,7 @@ const MedicationDischargeSchema = DataElementSchema({
1365
1389
  module.exports.MedicationDischargeSchema = MedicationDischargeSchema;
1366
1390
  module.exports.MedicationDischarge = mongoose.model('MedicationDischarge', MedicationDischargeSchema);
1367
1391
 
1368
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],39:[function(require,module,exports){
1392
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],39:[function(require,module,exports){
1369
1393
  const mongoose = require('mongoose');
1370
1394
  const { DataElementSchema } = require('./basetypes/DataElement');
1371
1395
  const Code = require('./basetypes/Code');
@@ -1374,6 +1398,7 @@ const Quantity = require('./basetypes/Quantity');
1374
1398
  const DateTime = require('./basetypes/DateTime');
1375
1399
  const { ComponentSchema } = require('./Component');
1376
1400
  const { FacilityLocationSchema } = require('./FacilityLocation');
1401
+ const { IdSchema } = require('./Id');
1377
1402
  const Any = require('./basetypes/Any');
1378
1403
 
1379
1404
  const [Number, String] = [
@@ -1401,7 +1426,7 @@ const MedicationDispensedSchema = DataElementSchema({
1401
1426
  module.exports.MedicationDispensedSchema = MedicationDispensedSchema;
1402
1427
  module.exports.MedicationDispensed = mongoose.model('MedicationDispensed', MedicationDispensedSchema);
1403
1428
 
1404
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],40:[function(require,module,exports){
1429
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],40:[function(require,module,exports){
1405
1430
  const mongoose = require('mongoose');
1406
1431
  const { DataElementSchema } = require('./basetypes/DataElement');
1407
1432
  const Code = require('./basetypes/Code');
@@ -1410,6 +1435,7 @@ const Quantity = require('./basetypes/Quantity');
1410
1435
  const DateTime = require('./basetypes/DateTime');
1411
1436
  const { ComponentSchema } = require('./Component');
1412
1437
  const { FacilityLocationSchema } = require('./FacilityLocation');
1438
+ const { IdSchema } = require('./Id');
1413
1439
  const Any = require('./basetypes/Any');
1414
1440
 
1415
1441
  const [Number, String] = [
@@ -1440,7 +1466,7 @@ const MedicationOrderSchema = DataElementSchema({
1440
1466
  module.exports.MedicationOrderSchema = MedicationOrderSchema;
1441
1467
  module.exports.MedicationOrder = mongoose.model('MedicationOrder', MedicationOrderSchema);
1442
1468
 
1443
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],41:[function(require,module,exports){
1469
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],41:[function(require,module,exports){
1444
1470
  const mongoose = require('mongoose');
1445
1471
  const { DataElementSchema } = require('./basetypes/DataElement');
1446
1472
  const Code = require('./basetypes/Code');
@@ -1449,6 +1475,7 @@ const Quantity = require('./basetypes/Quantity');
1449
1475
  const DateTime = require('./basetypes/DateTime');
1450
1476
  const { ComponentSchema } = require('./Component');
1451
1477
  const { FacilityLocationSchema } = require('./FacilityLocation');
1478
+ const { IdSchema } = require('./Id');
1452
1479
  const Any = require('./basetypes/Any');
1453
1480
 
1454
1481
  const [Number, String] = [
@@ -1468,7 +1495,7 @@ const ParticipationSchema = DataElementSchema({
1468
1495
  module.exports.ParticipationSchema = ParticipationSchema;
1469
1496
  module.exports.Participation = mongoose.model('Participation', ParticipationSchema);
1470
1497
 
1471
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],42:[function(require,module,exports){
1498
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],42:[function(require,module,exports){
1472
1499
  const mongoose = require('mongoose');
1473
1500
  const Code = require('./basetypes/Code');
1474
1501
  const Interval = require('./basetypes/Interval');
@@ -1561,15 +1588,11 @@ PatientSchema.methods.getByProfile = function getByProfile(profile, isNegated =
1561
1588
  // If isNegated == null, return all matching data elements by type, regardless of negationRationale.
1562
1589
  const results = this.dataElements.filter(element => element._type === `QDM::${profile}` && (isNegated === null || !!element.negationRationale === isNegated));
1563
1590
  return results.map((result) => {
1564
- const getCodeFunction = Object.getPrototypeOf(result).getCode;
1565
- const codeFunction = Object.getPrototypeOf(result).code;
1566
- const idField = result.id;
1567
1591
  const removedMongooseItems = AllDataElements[profile](result).toObject();
1568
- // toObject() will remove all mongoose functions but also removed the getCode and code functions
1569
- // the execution engine requires the code and getCode functions so we have to add them back
1570
- removedMongooseItems.getCode = getCodeFunction;
1571
- removedMongooseItems.code = codeFunction;
1572
- removedMongooseItems.id = idField;
1592
+ // toObject() will remove all mongoose functions but also remove the schema methods, so we add them back
1593
+ Object.entries(Object.getPrototypeOf(result).schema.methods).forEach(([method_name, method]) => {
1594
+ removedMongooseItems[method_name] = method;
1595
+ });
1573
1596
  return removedMongooseItems;
1574
1597
  });
1575
1598
  };
@@ -1745,6 +1768,7 @@ const Quantity = require('./basetypes/Quantity');
1745
1768
  const DateTime = require('./basetypes/DateTime');
1746
1769
  const { ComponentSchema } = require('./Component');
1747
1770
  const { FacilityLocationSchema } = require('./FacilityLocation');
1771
+ const { IdSchema } = require('./Id');
1748
1772
  const Any = require('./basetypes/Any');
1749
1773
 
1750
1774
  const [Number, String] = [
@@ -1764,7 +1788,7 @@ const PatientCareExperienceSchema = DataElementSchema({
1764
1788
  module.exports.PatientCareExperienceSchema = PatientCareExperienceSchema;
1765
1789
  module.exports.PatientCareExperience = mongoose.model('PatientCareExperience', PatientCareExperienceSchema);
1766
1790
 
1767
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],44:[function(require,module,exports){
1791
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],44:[function(require,module,exports){
1768
1792
  const mongoose = require('mongoose');
1769
1793
  const { DataElementSchema } = require('./basetypes/DataElement');
1770
1794
  const Code = require('./basetypes/Code');
@@ -1773,6 +1797,7 @@ const Quantity = require('./basetypes/Quantity');
1773
1797
  const DateTime = require('./basetypes/DateTime');
1774
1798
  const { ComponentSchema } = require('./Component');
1775
1799
  const { FacilityLocationSchema } = require('./FacilityLocation');
1800
+ const { IdSchema } = require('./Id');
1776
1801
  const Any = require('./basetypes/Any');
1777
1802
 
1778
1803
  const [Number, String] = [
@@ -1792,7 +1817,7 @@ const PatientCharacteristicSchema = DataElementSchema({
1792
1817
  module.exports.PatientCharacteristicSchema = PatientCharacteristicSchema;
1793
1818
  module.exports.PatientCharacteristic = mongoose.model('PatientCharacteristic', PatientCharacteristicSchema);
1794
1819
 
1795
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],45:[function(require,module,exports){
1820
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],45:[function(require,module,exports){
1796
1821
  const mongoose = require('mongoose');
1797
1822
  const { DataElementSchema } = require('./basetypes/DataElement');
1798
1823
  const Code = require('./basetypes/Code');
@@ -1801,6 +1826,7 @@ const Quantity = require('./basetypes/Quantity');
1801
1826
  const DateTime = require('./basetypes/DateTime');
1802
1827
  const { ComponentSchema } = require('./Component');
1803
1828
  const { FacilityLocationSchema } = require('./FacilityLocation');
1829
+ const { IdSchema } = require('./Id');
1804
1830
  const Any = require('./basetypes/Any');
1805
1831
 
1806
1832
  const [Number, String] = [
@@ -1821,7 +1847,7 @@ const PatientCharacteristicBirthdateSchema = DataElementSchema({
1821
1847
  module.exports.PatientCharacteristicBirthdateSchema = PatientCharacteristicBirthdateSchema;
1822
1848
  module.exports.PatientCharacteristicBirthdate = mongoose.model('PatientCharacteristicBirthdate', PatientCharacteristicBirthdateSchema);
1823
1849
 
1824
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],46:[function(require,module,exports){
1850
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],46:[function(require,module,exports){
1825
1851
  const mongoose = require('mongoose');
1826
1852
  const { DataElementSchema } = require('./basetypes/DataElement');
1827
1853
  const Code = require('./basetypes/Code');
@@ -1830,6 +1856,7 @@ const Quantity = require('./basetypes/Quantity');
1830
1856
  const DateTime = require('./basetypes/DateTime');
1831
1857
  const { ComponentSchema } = require('./Component');
1832
1858
  const { FacilityLocationSchema } = require('./FacilityLocation');
1859
+ const { IdSchema } = require('./Id');
1833
1860
  const Any = require('./basetypes/Any');
1834
1861
 
1835
1862
  const [Number, String] = [
@@ -1852,7 +1879,7 @@ const PatientCharacteristicClinicalTrialParticipantSchema = DataElementSchema({
1852
1879
  module.exports.PatientCharacteristicClinicalTrialParticipantSchema = PatientCharacteristicClinicalTrialParticipantSchema;
1853
1880
  module.exports.PatientCharacteristicClinicalTrialParticipant = mongoose.model('PatientCharacteristicClinicalTrialParticipant', PatientCharacteristicClinicalTrialParticipantSchema);
1854
1881
 
1855
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],47:[function(require,module,exports){
1882
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],47:[function(require,module,exports){
1856
1883
  const mongoose = require('mongoose');
1857
1884
  const { DataElementSchema } = require('./basetypes/DataElement');
1858
1885
  const Code = require('./basetypes/Code');
@@ -1861,6 +1888,7 @@ const Quantity = require('./basetypes/Quantity');
1861
1888
  const DateTime = require('./basetypes/DateTime');
1862
1889
  const { ComponentSchema } = require('./Component');
1863
1890
  const { FacilityLocationSchema } = require('./FacilityLocation');
1891
+ const { IdSchema } = require('./Id');
1864
1892
  const Any = require('./basetypes/Any');
1865
1893
 
1866
1894
  const [Number, String] = [
@@ -1880,7 +1908,7 @@ const PatientCharacteristicEthnicitySchema = DataElementSchema({
1880
1908
  module.exports.PatientCharacteristicEthnicitySchema = PatientCharacteristicEthnicitySchema;
1881
1909
  module.exports.PatientCharacteristicEthnicity = mongoose.model('PatientCharacteristicEthnicity', PatientCharacteristicEthnicitySchema);
1882
1910
 
1883
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],48:[function(require,module,exports){
1911
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],48:[function(require,module,exports){
1884
1912
  const mongoose = require('mongoose');
1885
1913
  const { DataElementSchema } = require('./basetypes/DataElement');
1886
1914
  const Code = require('./basetypes/Code');
@@ -1889,6 +1917,7 @@ const Quantity = require('./basetypes/Quantity');
1889
1917
  const DateTime = require('./basetypes/DateTime');
1890
1918
  const { ComponentSchema } = require('./Component');
1891
1919
  const { FacilityLocationSchema } = require('./FacilityLocation');
1920
+ const { IdSchema } = require('./Id');
1892
1921
  const Any = require('./basetypes/Any');
1893
1922
 
1894
1923
  const [Number, String] = [
@@ -1910,7 +1939,7 @@ const PatientCharacteristicExpiredSchema = DataElementSchema({
1910
1939
  module.exports.PatientCharacteristicExpiredSchema = PatientCharacteristicExpiredSchema;
1911
1940
  module.exports.PatientCharacteristicExpired = mongoose.model('PatientCharacteristicExpired', PatientCharacteristicExpiredSchema);
1912
1941
 
1913
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],49:[function(require,module,exports){
1942
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],49:[function(require,module,exports){
1914
1943
  const mongoose = require('mongoose');
1915
1944
  const { DataElementSchema } = require('./basetypes/DataElement');
1916
1945
  const Code = require('./basetypes/Code');
@@ -1919,6 +1948,7 @@ const Quantity = require('./basetypes/Quantity');
1919
1948
  const DateTime = require('./basetypes/DateTime');
1920
1949
  const { ComponentSchema } = require('./Component');
1921
1950
  const { FacilityLocationSchema } = require('./FacilityLocation');
1951
+ const { IdSchema } = require('./Id');
1922
1952
  const Any = require('./basetypes/Any');
1923
1953
 
1924
1954
  const [Number, String] = [
@@ -1939,7 +1969,7 @@ const PatientCharacteristicPayerSchema = DataElementSchema({
1939
1969
  module.exports.PatientCharacteristicPayerSchema = PatientCharacteristicPayerSchema;
1940
1970
  module.exports.PatientCharacteristicPayer = mongoose.model('PatientCharacteristicPayer', PatientCharacteristicPayerSchema);
1941
1971
 
1942
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],50:[function(require,module,exports){
1972
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],50:[function(require,module,exports){
1943
1973
  const mongoose = require('mongoose');
1944
1974
  const { DataElementSchema } = require('./basetypes/DataElement');
1945
1975
  const Code = require('./basetypes/Code');
@@ -1948,6 +1978,7 @@ const Quantity = require('./basetypes/Quantity');
1948
1978
  const DateTime = require('./basetypes/DateTime');
1949
1979
  const { ComponentSchema } = require('./Component');
1950
1980
  const { FacilityLocationSchema } = require('./FacilityLocation');
1981
+ const { IdSchema } = require('./Id');
1951
1982
  const Any = require('./basetypes/Any');
1952
1983
 
1953
1984
  const [Number, String] = [
@@ -1967,7 +1998,7 @@ const PatientCharacteristicRaceSchema = DataElementSchema({
1967
1998
  module.exports.PatientCharacteristicRaceSchema = PatientCharacteristicRaceSchema;
1968
1999
  module.exports.PatientCharacteristicRace = mongoose.model('PatientCharacteristicRace', PatientCharacteristicRaceSchema);
1969
2000
 
1970
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],51:[function(require,module,exports){
2001
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],51:[function(require,module,exports){
1971
2002
  const mongoose = require('mongoose');
1972
2003
  const { DataElementSchema } = require('./basetypes/DataElement');
1973
2004
  const Code = require('./basetypes/Code');
@@ -1976,6 +2007,7 @@ const Quantity = require('./basetypes/Quantity');
1976
2007
  const DateTime = require('./basetypes/DateTime');
1977
2008
  const { ComponentSchema } = require('./Component');
1978
2009
  const { FacilityLocationSchema } = require('./FacilityLocation');
2010
+ const { IdSchema } = require('./Id');
1979
2011
  const Any = require('./basetypes/Any');
1980
2012
 
1981
2013
  const [Number, String] = [
@@ -1995,7 +2027,7 @@ const PatientCharacteristicSexSchema = DataElementSchema({
1995
2027
  module.exports.PatientCharacteristicSexSchema = PatientCharacteristicSexSchema;
1996
2028
  module.exports.PatientCharacteristicSex = mongoose.model('PatientCharacteristicSex', PatientCharacteristicSexSchema);
1997
2029
 
1998
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],52:[function(require,module,exports){
2030
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],52:[function(require,module,exports){
1999
2031
  const mongoose = require('mongoose');
2000
2032
  const { DataElementSchema } = require('./basetypes/DataElement');
2001
2033
  const Code = require('./basetypes/Code');
@@ -2004,6 +2036,7 @@ const Quantity = require('./basetypes/Quantity');
2004
2036
  const DateTime = require('./basetypes/DateTime');
2005
2037
  const { ComponentSchema } = require('./Component');
2006
2038
  const { FacilityLocationSchema } = require('./FacilityLocation');
2039
+ const { IdSchema } = require('./Id');
2007
2040
  const Any = require('./basetypes/Any');
2008
2041
 
2009
2042
  const [Number, String] = [
@@ -2028,7 +2061,7 @@ const PhysicalExamOrderSchema = DataElementSchema({
2028
2061
  module.exports.PhysicalExamOrderSchema = PhysicalExamOrderSchema;
2029
2062
  module.exports.PhysicalExamOrder = mongoose.model('PhysicalExamOrder', PhysicalExamOrderSchema);
2030
2063
 
2031
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],53:[function(require,module,exports){
2064
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],53:[function(require,module,exports){
2032
2065
  const mongoose = require('mongoose');
2033
2066
  const { DataElementSchema } = require('./basetypes/DataElement');
2034
2067
  const Code = require('./basetypes/Code');
@@ -2037,6 +2070,7 @@ const Quantity = require('./basetypes/Quantity');
2037
2070
  const DateTime = require('./basetypes/DateTime');
2038
2071
  const { ComponentSchema } = require('./Component');
2039
2072
  const { FacilityLocationSchema } = require('./FacilityLocation');
2073
+ const { IdSchema } = require('./Id');
2040
2074
  const Any = require('./basetypes/Any');
2041
2075
 
2042
2076
  const [Number, String] = [
@@ -2064,7 +2098,7 @@ const PhysicalExamPerformedSchema = DataElementSchema({
2064
2098
  module.exports.PhysicalExamPerformedSchema = PhysicalExamPerformedSchema;
2065
2099
  module.exports.PhysicalExamPerformed = mongoose.model('PhysicalExamPerformed', PhysicalExamPerformedSchema);
2066
2100
 
2067
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],54:[function(require,module,exports){
2101
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],54:[function(require,module,exports){
2068
2102
  const mongoose = require('mongoose');
2069
2103
  const { DataElementSchema } = require('./basetypes/DataElement');
2070
2104
  const Code = require('./basetypes/Code');
@@ -2073,6 +2107,7 @@ const Quantity = require('./basetypes/Quantity');
2073
2107
  const DateTime = require('./basetypes/DateTime');
2074
2108
  const { ComponentSchema } = require('./Component');
2075
2109
  const { FacilityLocationSchema } = require('./FacilityLocation');
2110
+ const { IdSchema } = require('./Id');
2076
2111
  const Any = require('./basetypes/Any');
2077
2112
 
2078
2113
  const [Number, String] = [
@@ -2097,7 +2132,7 @@ const PhysicalExamRecommendedSchema = DataElementSchema({
2097
2132
  module.exports.PhysicalExamRecommendedSchema = PhysicalExamRecommendedSchema;
2098
2133
  module.exports.PhysicalExamRecommended = mongoose.model('PhysicalExamRecommended', PhysicalExamRecommendedSchema);
2099
2134
 
2100
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],55:[function(require,module,exports){
2135
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],55:[function(require,module,exports){
2101
2136
  const mongoose = require('mongoose');
2102
2137
  const { DataElementSchema } = require('./basetypes/DataElement');
2103
2138
  const Code = require('./basetypes/Code');
@@ -2106,6 +2141,7 @@ const Quantity = require('./basetypes/Quantity');
2106
2141
  const DateTime = require('./basetypes/DateTime');
2107
2142
  const { ComponentSchema } = require('./Component');
2108
2143
  const { FacilityLocationSchema } = require('./FacilityLocation');
2144
+ const { IdSchema } = require('./Id');
2109
2145
  const Any = require('./basetypes/Any');
2110
2146
 
2111
2147
  const [Number, String] = [
@@ -2132,7 +2168,7 @@ const ProcedureOrderSchema = DataElementSchema({
2132
2168
  module.exports.ProcedureOrderSchema = ProcedureOrderSchema;
2133
2169
  module.exports.ProcedureOrder = mongoose.model('ProcedureOrder', ProcedureOrderSchema);
2134
2170
 
2135
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],56:[function(require,module,exports){
2171
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],56:[function(require,module,exports){
2136
2172
  const mongoose = require('mongoose');
2137
2173
  const { DataElementSchema } = require('./basetypes/DataElement');
2138
2174
  const Code = require('./basetypes/Code');
@@ -2141,6 +2177,7 @@ const Quantity = require('./basetypes/Quantity');
2141
2177
  const DateTime = require('./basetypes/DateTime');
2142
2178
  const { ComponentSchema } = require('./Component');
2143
2179
  const { FacilityLocationSchema } = require('./FacilityLocation');
2180
+ const { IdSchema } = require('./Id');
2144
2181
  const Any = require('./basetypes/Any');
2145
2182
 
2146
2183
  const [Number, String] = [
@@ -2172,7 +2209,7 @@ const ProcedurePerformedSchema = DataElementSchema({
2172
2209
  module.exports.ProcedurePerformedSchema = ProcedurePerformedSchema;
2173
2210
  module.exports.ProcedurePerformed = mongoose.model('ProcedurePerformed', ProcedurePerformedSchema);
2174
2211
 
2175
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],57:[function(require,module,exports){
2212
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],57:[function(require,module,exports){
2176
2213
  const mongoose = require('mongoose');
2177
2214
  const { DataElementSchema } = require('./basetypes/DataElement');
2178
2215
  const Code = require('./basetypes/Code');
@@ -2181,6 +2218,7 @@ const Quantity = require('./basetypes/Quantity');
2181
2218
  const DateTime = require('./basetypes/DateTime');
2182
2219
  const { ComponentSchema } = require('./Component');
2183
2220
  const { FacilityLocationSchema } = require('./FacilityLocation');
2221
+ const { IdSchema } = require('./Id');
2184
2222
  const Any = require('./basetypes/Any');
2185
2223
 
2186
2224
  const [Number, String] = [
@@ -2207,7 +2245,7 @@ const ProcedureRecommendedSchema = DataElementSchema({
2207
2245
  module.exports.ProcedureRecommendedSchema = ProcedureRecommendedSchema;
2208
2246
  module.exports.ProcedureRecommended = mongoose.model('ProcedureRecommended', ProcedureRecommendedSchema);
2209
2247
 
2210
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],58:[function(require,module,exports){
2248
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],58:[function(require,module,exports){
2211
2249
  const mongoose = require('mongoose');
2212
2250
  const { DataElementSchema } = require('./basetypes/DataElement');
2213
2251
  const Code = require('./basetypes/Code');
@@ -2216,6 +2254,7 @@ const Quantity = require('./basetypes/Quantity');
2216
2254
  const DateTime = require('./basetypes/DateTime');
2217
2255
  const { ComponentSchema } = require('./Component');
2218
2256
  const { FacilityLocationSchema } = require('./FacilityLocation');
2257
+ const { IdSchema } = require('./Id');
2219
2258
  const Any = require('./basetypes/Any');
2220
2259
 
2221
2260
  const [Number, String] = [
@@ -2235,7 +2274,7 @@ const ProviderCareExperienceSchema = DataElementSchema({
2235
2274
  module.exports.ProviderCareExperienceSchema = ProviderCareExperienceSchema;
2236
2275
  module.exports.ProviderCareExperience = mongoose.model('ProviderCareExperience', ProviderCareExperienceSchema);
2237
2276
 
2238
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],59:[function(require,module,exports){
2277
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],59:[function(require,module,exports){
2239
2278
  const mongoose = require('mongoose');
2240
2279
  const { DataElementSchema } = require('./basetypes/DataElement');
2241
2280
  const Code = require('./basetypes/Code');
@@ -2244,6 +2283,7 @@ const Quantity = require('./basetypes/Quantity');
2244
2283
  const DateTime = require('./basetypes/DateTime');
2245
2284
  const { ComponentSchema } = require('./Component');
2246
2285
  const { FacilityLocationSchema } = require('./FacilityLocation');
2286
+ const { IdSchema } = require('./Id');
2247
2287
  const Any = require('./basetypes/Any');
2248
2288
 
2249
2289
  const [Number, String] = [
@@ -2263,7 +2303,7 @@ const ProviderCharacteristicSchema = DataElementSchema({
2263
2303
  module.exports.ProviderCharacteristicSchema = ProviderCharacteristicSchema;
2264
2304
  module.exports.ProviderCharacteristic = mongoose.model('ProviderCharacteristic', ProviderCharacteristicSchema);
2265
2305
 
2266
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],60:[function(require,module,exports){
2306
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],60:[function(require,module,exports){
2267
2307
  const mongoose = require('mongoose');
2268
2308
  const { DataElementSchema } = require('./basetypes/DataElement');
2269
2309
  const Code = require('./basetypes/Code');
@@ -2272,6 +2312,7 @@ const Quantity = require('./basetypes/Quantity');
2272
2312
  const DateTime = require('./basetypes/DateTime');
2273
2313
  const { ComponentSchema } = require('./Component');
2274
2314
  const { FacilityLocationSchema } = require('./FacilityLocation');
2315
+ const { IdSchema } = require('./Id');
2275
2316
  const Any = require('./basetypes/Any');
2276
2317
 
2277
2318
  const [Number, String] = [
@@ -2290,7 +2331,7 @@ const RatioSchema = DataElementSchema({
2290
2331
  module.exports.RatioSchema = RatioSchema;
2291
2332
  module.exports.Ratio = mongoose.model('Ratio', RatioSchema);
2292
2333
 
2293
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],61:[function(require,module,exports){
2334
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],61:[function(require,module,exports){
2294
2335
  const mongoose = require('mongoose');
2295
2336
 
2296
2337
  const PlaceholderResultSchema = mongoose.Schema({
@@ -2329,6 +2370,7 @@ const Quantity = require('./basetypes/Quantity');
2329
2370
  const DateTime = require('./basetypes/DateTime');
2330
2371
 
2331
2372
  const { FacilityLocationSchema } = require('./FacilityLocation');
2373
+ const { IdSchema } = require('./Id');
2332
2374
  const Any = require('./basetypes/Any');
2333
2375
 
2334
2376
  const [Number, String] = [
@@ -2346,7 +2388,7 @@ const ResultComponentSchema = DataElementSchema({
2346
2388
  module.exports.ResultComponentSchema = ResultComponentSchema;
2347
2389
  module.exports.ResultComponent = mongoose.model('ResultComponent', ResultComponentSchema);
2348
2390
 
2349
- },{"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],63:[function(require,module,exports){
2391
+ },{"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],63:[function(require,module,exports){
2350
2392
  const mongoose = require('mongoose');
2351
2393
  const { DataElementSchema } = require('./basetypes/DataElement');
2352
2394
  const Code = require('./basetypes/Code');
@@ -2355,6 +2397,7 @@ const Quantity = require('./basetypes/Quantity');
2355
2397
  const DateTime = require('./basetypes/DateTime');
2356
2398
  const { ComponentSchema } = require('./Component');
2357
2399
  const { FacilityLocationSchema } = require('./FacilityLocation');
2400
+ const { IdSchema } = require('./Id');
2358
2401
  const Any = require('./basetypes/Any');
2359
2402
 
2360
2403
  const [Number, String] = [
@@ -2381,7 +2424,7 @@ const SubstanceAdministeredSchema = DataElementSchema({
2381
2424
  module.exports.SubstanceAdministeredSchema = SubstanceAdministeredSchema;
2382
2425
  module.exports.SubstanceAdministered = mongoose.model('SubstanceAdministered', SubstanceAdministeredSchema);
2383
2426
 
2384
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],64:[function(require,module,exports){
2427
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],64:[function(require,module,exports){
2385
2428
  const mongoose = require('mongoose');
2386
2429
  const { DataElementSchema } = require('./basetypes/DataElement');
2387
2430
  const Code = require('./basetypes/Code');
@@ -2390,6 +2433,7 @@ const Quantity = require('./basetypes/Quantity');
2390
2433
  const DateTime = require('./basetypes/DateTime');
2391
2434
  const { ComponentSchema } = require('./Component');
2392
2435
  const { FacilityLocationSchema } = require('./FacilityLocation');
2436
+ const { IdSchema } = require('./Id');
2393
2437
  const Any = require('./basetypes/Any');
2394
2438
 
2395
2439
  const [Number, String] = [
@@ -2418,7 +2462,7 @@ const SubstanceOrderSchema = DataElementSchema({
2418
2462
  module.exports.SubstanceOrderSchema = SubstanceOrderSchema;
2419
2463
  module.exports.SubstanceOrder = mongoose.model('SubstanceOrder', SubstanceOrderSchema);
2420
2464
 
2421
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],65:[function(require,module,exports){
2465
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],65:[function(require,module,exports){
2422
2466
  const mongoose = require('mongoose');
2423
2467
  const { DataElementSchema } = require('./basetypes/DataElement');
2424
2468
  const Code = require('./basetypes/Code');
@@ -2427,6 +2471,7 @@ const Quantity = require('./basetypes/Quantity');
2427
2471
  const DateTime = require('./basetypes/DateTime');
2428
2472
  const { ComponentSchema } = require('./Component');
2429
2473
  const { FacilityLocationSchema } = require('./FacilityLocation');
2474
+ const { IdSchema } = require('./Id');
2430
2475
  const Any = require('./basetypes/Any');
2431
2476
 
2432
2477
  const [Number, String] = [
@@ -2455,7 +2500,7 @@ const SubstanceRecommendedSchema = DataElementSchema({
2455
2500
  module.exports.SubstanceRecommendedSchema = SubstanceRecommendedSchema;
2456
2501
  module.exports.SubstanceRecommended = mongoose.model('SubstanceRecommended', SubstanceRecommendedSchema);
2457
2502
 
2458
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],66:[function(require,module,exports){
2503
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],66:[function(require,module,exports){
2459
2504
  const mongoose = require('mongoose');
2460
2505
  const { DataElementSchema } = require('./basetypes/DataElement');
2461
2506
  const Code = require('./basetypes/Code');
@@ -2464,6 +2509,7 @@ const Quantity = require('./basetypes/Quantity');
2464
2509
  const DateTime = require('./basetypes/DateTime');
2465
2510
  const { ComponentSchema } = require('./Component');
2466
2511
  const { FacilityLocationSchema } = require('./FacilityLocation');
2512
+ const { IdSchema } = require('./Id');
2467
2513
  const Any = require('./basetypes/Any');
2468
2514
 
2469
2515
  const [Number, String] = [
@@ -2485,7 +2531,7 @@ const SymptomSchema = DataElementSchema({
2485
2531
  module.exports.SymptomSchema = SymptomSchema;
2486
2532
  module.exports.Symptom = mongoose.model('Symptom', SymptomSchema);
2487
2533
 
2488
- },{"./Component":10,"./FacilityLocation":22,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],67:[function(require,module,exports){
2534
+ },{"./Component":10,"./FacilityLocation":22,"./Id":24,"./basetypes/Any":68,"./basetypes/Code":69,"./basetypes/DataElement":70,"./basetypes/DateTime":71,"./basetypes/Interval":72,"./basetypes/Quantity":73,"mongoose":402}],67:[function(require,module,exports){
2489
2535
  const mongoose = require('mongoose');
2490
2536
  const Concept = require('./Concept.js');
2491
2537
 
@@ -2573,7 +2619,7 @@ function RecursiveCast(any) {
2573
2619
  });
2574
2620
  return casted;
2575
2621
  }
2576
- if (Number.isInteger(any)) {
2622
+ if (Number.isFinite(any)) {
2577
2623
  return any;
2578
2624
  }
2579
2625
  if (Date.parse(any)) {
@@ -2628,6 +2674,7 @@ module.exports = Code;
2628
2674
  const mongoose = require('mongoose');
2629
2675
  const Code = require('./Code.js');
2630
2676
  const cql = require('cql-execution');
2677
+ const Id = require('../Id');
2631
2678
 
2632
2679
  const [Schema] = [mongoose.Schema];
2633
2680
 
@@ -2635,6 +2682,12 @@ function DataElementSchema(add, options) {
2635
2682
  const extended = new Schema({
2636
2683
  dataElementCodes: { type: [] },
2637
2684
  description: { type: String },
2685
+ id: {
2686
+ type: Id.IdSchema,
2687
+ default() {
2688
+ return new Id.Id({ value: (this._id ? this._id.toString() : mongoose.Types.ObjectId().toString()), namingSystem: null });
2689
+ },
2690
+ },
2638
2691
  }, options);
2639
2692
 
2640
2693
  if (add) {
@@ -2662,7 +2715,7 @@ function DataElementSchema(add, options) {
2662
2715
 
2663
2716
  module.exports.DataElementSchema = DataElementSchema;
2664
2717
 
2665
- },{"./Code.js":69,"cql-execution":151,"mongoose":402}],71:[function(require,module,exports){
2718
+ },{"../Id":24,"./Code.js":69,"cql-execution":151,"mongoose":402}],71:[function(require,module,exports){
2666
2719
  const mongoose = require('mongoose');
2667
2720
  const cql = require('cql-execution');
2668
2721