fhirpath-ts 0.2.0 → 0.2.2

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. package/README.md +12 -5
  2. package/dist/analyzer/analyze-dto.d.ts.map +1 -1
  3. package/dist/analyzer/analyze-dto.js +14 -8
  4. package/dist/analyzer/analyze-dto.js.map +1 -1
  5. package/dist/analyzer/analyze.d.ts +23 -12
  6. package/dist/analyzer/analyze.d.ts.map +1 -1
  7. package/dist/analyzer/analyze.js +138 -46
  8. package/dist/analyzer/analyze.js.map +1 -1
  9. package/dist/analyzer/declarations.d.ts +6 -0
  10. package/dist/analyzer/declarations.d.ts.map +1 -1
  11. package/dist/analyzer/declarations.js +7 -0
  12. package/dist/analyzer/declarations.js.map +1 -1
  13. package/dist/analyzer/expression-policy.d.ts +88 -14
  14. package/dist/analyzer/expression-policy.d.ts.map +1 -1
  15. package/dist/analyzer/expression-policy.js +296 -41
  16. package/dist/analyzer/expression-policy.js.map +1 -1
  17. package/dist/analyzer/operator-rules.d.ts.map +1 -1
  18. package/dist/analyzer/operator-rules.js +7 -6
  19. package/dist/analyzer/operator-rules.js.map +1 -1
  20. package/dist/analyzer/signatures.d.ts +49 -0
  21. package/dist/analyzer/signatures.d.ts.map +1 -1
  22. package/dist/analyzer/signatures.js +76 -31
  23. package/dist/analyzer/signatures.js.map +1 -1
  24. package/dist/analyzer/source-options.d.ts +17 -0
  25. package/dist/analyzer/source-options.d.ts.map +1 -0
  26. package/dist/analyzer/source-options.js +3 -0
  27. package/dist/analyzer/source-options.js.map +1 -0
  28. package/dist/api/dto.d.ts +9 -4
  29. package/dist/api/dto.d.ts.map +1 -1
  30. package/dist/api/dto.js +14 -3
  31. package/dist/api/dto.js.map +1 -1
  32. package/dist/api/strict.d.ts.map +1 -1
  33. package/dist/api/strict.js +8 -3
  34. package/dist/api/strict.js.map +1 -1
  35. package/dist/cli/dto-check.d.ts +9 -0
  36. package/dist/cli/dto-check.d.ts.map +1 -1
  37. package/dist/cli/dto-check.js +49 -6
  38. package/dist/cli/dto-check.js.map +1 -1
  39. package/dist/cli/fhirpath-check.js +161 -31
  40. package/dist/cli/fhirpath-check.js.map +1 -1
  41. package/dist/eslint/index.d.ts.map +1 -1
  42. package/dist/eslint/index.js +13 -8
  43. package/dist/eslint/index.js.map +1 -1
  44. package/dist/r4/generated/resources-data.d.ts +6 -2
  45. package/dist/r4/generated/resources-data.d.ts.map +1 -1
  46. package/dist/r4/generated/resources-data.js +626 -28627
  47. package/dist/r4/generated/resources-data.js.map +1 -1
  48. package/dist/r4/generated/types-data.d.ts +6 -2
  49. package/dist/r4/generated/types-data.d.ts.map +1 -1
  50. package/dist/r4/generated/types-data.js +84 -2204
  51. package/dist/r4/generated/types-data.js.map +1 -1
  52. package/dist/r4/index.d.ts.map +1 -1
  53. package/dist/r4/index.js +10 -4
  54. package/dist/r4/index.js.map +1 -1
  55. package/dist/r4/model-data.d.ts +17 -0
  56. package/dist/r4/model-data.d.ts.map +1 -1
  57. package/dist/r4/model-data.js +118 -1
  58. package/dist/r4/model-data.js.map +1 -1
  59. package/dist/sites/index.d.ts +31 -2
  60. package/dist/sites/index.d.ts.map +1 -1
  61. package/dist/sites/index.js +351 -30
  62. package/dist/sites/index.js.map +1 -1
  63. package/dist/typed/infer.d.ts +2 -0
  64. package/dist/typed/infer.d.ts.map +1 -1
  65. package/package.json +1 -1
  66. package/src/analyzer/analyze-dto.ts +19 -9
  67. package/src/analyzer/analyze.ts +186 -54
  68. package/src/analyzer/declarations.ts +12 -0
  69. package/src/analyzer/expression-policy.ts +423 -47
  70. package/src/analyzer/operator-rules.ts +7 -6
  71. package/src/analyzer/signatures.ts +100 -36
  72. package/src/analyzer/source-options.ts +19 -0
  73. package/src/api/dto.ts +35 -9
  74. package/src/api/strict.ts +8 -3
  75. package/src/cli/dto-check.ts +56 -6
  76. package/src/cli/fhirpath-check.ts +180 -34
  77. package/src/eslint/index.ts +15 -12
  78. package/src/r4/generated/resources-data.ts +624 -28628
  79. package/src/r4/generated/types-data.ts +82 -2205
  80. package/src/r4/index.ts +11 -5
  81. package/src/r4/model-data.ts +127 -0
  82. package/src/sites/index.ts +428 -40
  83. package/src/typed/infer.ts +2 -2
@@ -1,2208 +1,85 @@
1
1
  // Generated by scripts/generate-r4-model.ts from profiles-types.json (@medplum/definitions).
2
2
  // Do not edit by hand; re-run the script instead.
3
- import type { GeneratedType } from '../model-data.ts'
4
3
 
5
- export const R4_DATA_TYPES: Readonly<Record<string, GeneratedType>> = {
6
- Address: {
7
- b: 'Element',
8
- e: {
9
- city: {
10
- t: ['string'],
11
- },
12
- country: {
13
- t: ['string'],
14
- },
15
- district: {
16
- t: ['string'],
17
- },
18
- extension: {
19
- t: ['Extension'],
20
- a: 1,
21
- },
22
- id: {
23
- t: ['System.String'],
24
- },
25
- line: {
26
- t: ['string'],
27
- a: 1,
28
- },
29
- period: {
30
- t: ['Period'],
31
- },
32
- postalCode: {
33
- t: ['string'],
34
- },
35
- state: {
36
- t: ['string'],
37
- },
38
- text: {
39
- t: ['string'],
40
- },
41
- type: {
42
- t: ['code'],
43
- },
44
- use: {
45
- t: ['code'],
46
- },
47
- },
48
- },
49
- Age: {
50
- b: 'Quantity',
51
- e: {
52
- code: {
53
- t: ['code'],
54
- },
55
- comparator: {
56
- t: ['code'],
57
- },
58
- extension: {
59
- t: ['Extension'],
60
- a: 1,
61
- },
62
- id: {
63
- t: ['System.String'],
64
- },
65
- system: {
66
- t: ['uri'],
67
- },
68
- unit: {
69
- t: ['string'],
70
- },
71
- value: {
72
- t: ['decimal'],
73
- },
74
- },
75
- },
76
- Annotation: {
77
- b: 'Element',
78
- e: {
79
- author: {
80
- t: ['Reference', 'string'],
81
- c: 1,
82
- r: ['Practitioner', 'Patient', 'RelatedPerson', 'Organization'],
83
- },
84
- extension: {
85
- t: ['Extension'],
86
- a: 1,
87
- },
88
- id: {
89
- t: ['System.String'],
90
- },
91
- text: {
92
- t: ['markdown'],
93
- },
94
- time: {
95
- t: ['dateTime'],
96
- },
97
- },
98
- },
99
- Attachment: {
100
- b: 'Element',
101
- e: {
102
- contentType: {
103
- t: ['code'],
104
- },
105
- creation: {
106
- t: ['dateTime'],
107
- },
108
- data: {
109
- t: ['base64Binary'],
110
- },
111
- extension: {
112
- t: ['Extension'],
113
- a: 1,
114
- },
115
- hash: {
116
- t: ['base64Binary'],
117
- },
118
- id: {
119
- t: ['System.String'],
120
- },
121
- language: {
122
- t: ['code'],
123
- },
124
- size: {
125
- t: ['unsignedInt'],
126
- },
127
- title: {
128
- t: ['string'],
129
- },
130
- url: {
131
- t: ['url'],
132
- },
133
- },
134
- },
135
- BackboneElement: {
136
- b: 'Element',
137
- e: {
138
- extension: {
139
- t: ['Extension'],
140
- a: 1,
141
- },
142
- id: {
143
- t: ['System.String'],
144
- },
145
- modifierExtension: {
146
- t: ['Extension'],
147
- a: 1,
148
- },
149
- },
150
- },
151
- CodeableConcept: {
152
- b: 'Element',
153
- e: {
154
- coding: {
155
- t: ['Coding'],
156
- a: 1,
157
- },
158
- extension: {
159
- t: ['Extension'],
160
- a: 1,
161
- },
162
- id: {
163
- t: ['System.String'],
164
- },
165
- text: {
166
- t: ['string'],
167
- },
168
- },
169
- },
170
- Coding: {
171
- b: 'Element',
172
- e: {
173
- code: {
174
- t: ['code'],
175
- },
176
- display: {
177
- t: ['string'],
178
- },
179
- extension: {
180
- t: ['Extension'],
181
- a: 1,
182
- },
183
- id: {
184
- t: ['System.String'],
185
- },
186
- system: {
187
- t: ['uri'],
188
- },
189
- userSelected: {
190
- t: ['boolean'],
191
- },
192
- version: {
193
- t: ['string'],
194
- },
195
- },
196
- },
197
- ContactDetail: {
198
- b: 'Element',
199
- e: {
200
- extension: {
201
- t: ['Extension'],
202
- a: 1,
203
- },
204
- id: {
205
- t: ['System.String'],
206
- },
207
- name: {
208
- t: ['string'],
209
- },
210
- telecom: {
211
- t: ['ContactPoint'],
212
- a: 1,
213
- },
214
- },
215
- },
216
- ContactPoint: {
217
- b: 'Element',
218
- e: {
219
- extension: {
220
- t: ['Extension'],
221
- a: 1,
222
- },
223
- id: {
224
- t: ['System.String'],
225
- },
226
- period: {
227
- t: ['Period'],
228
- },
229
- rank: {
230
- t: ['positiveInt'],
231
- },
232
- system: {
233
- t: ['code'],
234
- },
235
- use: {
236
- t: ['code'],
237
- },
238
- value: {
239
- t: ['string'],
240
- },
241
- },
242
- },
243
- Contributor: {
244
- b: 'Element',
245
- e: {
246
- contact: {
247
- t: ['ContactDetail'],
248
- a: 1,
249
- },
250
- extension: {
251
- t: ['Extension'],
252
- a: 1,
253
- },
254
- id: {
255
- t: ['System.String'],
256
- },
257
- name: {
258
- t: ['string'],
259
- },
260
- type: {
261
- t: ['code'],
262
- },
263
- },
264
- },
265
- Count: {
266
- b: 'Quantity',
267
- e: {
268
- code: {
269
- t: ['code'],
270
- },
271
- comparator: {
272
- t: ['code'],
273
- },
274
- extension: {
275
- t: ['Extension'],
276
- a: 1,
277
- },
278
- id: {
279
- t: ['System.String'],
280
- },
281
- system: {
282
- t: ['uri'],
283
- },
284
- unit: {
285
- t: ['string'],
286
- },
287
- value: {
288
- t: ['decimal'],
289
- },
290
- },
291
- },
292
- DataRequirement: {
293
- b: 'Element',
294
- e: {
295
- codeFilter: {
296
- t: ['DataRequirement.codeFilter'],
297
- a: 1,
298
- },
299
- dateFilter: {
300
- t: ['DataRequirement.dateFilter'],
301
- a: 1,
302
- },
303
- extension: {
304
- t: ['Extension'],
305
- a: 1,
306
- },
307
- id: {
308
- t: ['System.String'],
309
- },
310
- limit: {
311
- t: ['positiveInt'],
312
- },
313
- mustSupport: {
314
- t: ['string'],
315
- a: 1,
316
- },
317
- profile: {
318
- t: ['canonical'],
319
- a: 1,
320
- },
321
- sort: {
322
- t: ['DataRequirement.sort'],
323
- a: 1,
324
- },
325
- subject: {
326
- t: ['CodeableConcept', 'Reference'],
327
- c: 1,
328
- r: ['Group'],
329
- },
330
- type: {
331
- t: ['code'],
332
- },
333
- },
334
- },
335
- 'DataRequirement.codeFilter': {
336
- b: 'Element',
337
- e: {
338
- code: {
339
- t: ['Coding'],
340
- a: 1,
341
- },
342
- extension: {
343
- t: ['Extension'],
344
- a: 1,
345
- },
346
- id: {
347
- t: ['System.String'],
348
- },
349
- path: {
350
- t: ['string'],
351
- },
352
- searchParam: {
353
- t: ['string'],
354
- },
355
- valueSet: {
356
- t: ['canonical'],
357
- },
358
- },
359
- },
360
- 'DataRequirement.dateFilter': {
361
- b: 'Element',
362
- e: {
363
- extension: {
364
- t: ['Extension'],
365
- a: 1,
366
- },
367
- id: {
368
- t: ['System.String'],
369
- },
370
- path: {
371
- t: ['string'],
372
- },
373
- searchParam: {
374
- t: ['string'],
375
- },
376
- value: {
377
- t: ['dateTime', 'Period', 'Duration'],
378
- c: 1,
379
- },
380
- },
381
- },
382
- 'DataRequirement.sort': {
383
- b: 'Element',
384
- e: {
385
- direction: {
386
- t: ['code'],
387
- },
388
- extension: {
389
- t: ['Extension'],
390
- a: 1,
391
- },
392
- id: {
393
- t: ['System.String'],
394
- },
395
- path: {
396
- t: ['string'],
397
- },
398
- },
399
- },
400
- Distance: {
401
- b: 'Quantity',
402
- e: {
403
- code: {
404
- t: ['code'],
405
- },
406
- comparator: {
407
- t: ['code'],
408
- },
409
- extension: {
410
- t: ['Extension'],
411
- a: 1,
412
- },
413
- id: {
414
- t: ['System.String'],
415
- },
416
- system: {
417
- t: ['uri'],
418
- },
419
- unit: {
420
- t: ['string'],
421
- },
422
- value: {
423
- t: ['decimal'],
424
- },
425
- },
426
- },
427
- Dosage: {
428
- b: 'BackboneElement',
429
- e: {
430
- additionalInstruction: {
431
- t: ['CodeableConcept'],
432
- a: 1,
433
- },
434
- asNeeded: {
435
- t: ['boolean', 'CodeableConcept'],
436
- c: 1,
437
- },
438
- doseAndRate: {
439
- t: ['Dosage.doseAndRate'],
440
- a: 1,
441
- },
442
- extension: {
443
- t: ['Extension'],
444
- a: 1,
445
- },
446
- id: {
447
- t: ['System.String'],
448
- },
449
- maxDosePerAdministration: {
450
- t: ['Quantity'],
451
- },
452
- maxDosePerLifetime: {
453
- t: ['Quantity'],
454
- },
455
- maxDosePerPeriod: {
456
- t: ['Ratio'],
457
- },
458
- method: {
459
- t: ['CodeableConcept'],
460
- },
461
- modifierExtension: {
462
- t: ['Extension'],
463
- a: 1,
464
- },
465
- patientInstruction: {
466
- t: ['string'],
467
- },
468
- route: {
469
- t: ['CodeableConcept'],
470
- },
471
- sequence: {
472
- t: ['integer'],
473
- },
474
- site: {
475
- t: ['CodeableConcept'],
476
- },
477
- text: {
478
- t: ['string'],
479
- },
480
- timing: {
481
- t: ['Timing'],
482
- },
483
- },
484
- },
485
- 'Dosage.doseAndRate': {
486
- b: 'Element',
487
- e: {
488
- dose: {
489
- t: ['Range', 'Quantity'],
490
- c: 1,
491
- },
492
- extension: {
493
- t: ['Extension'],
494
- a: 1,
495
- },
496
- id: {
497
- t: ['System.String'],
498
- },
499
- rate: {
500
- t: ['Ratio', 'Range', 'Quantity'],
501
- c: 1,
502
- },
503
- type: {
504
- t: ['CodeableConcept'],
505
- },
506
- },
507
- },
508
- Duration: {
509
- b: 'Quantity',
510
- e: {
511
- code: {
512
- t: ['code'],
513
- },
514
- comparator: {
515
- t: ['code'],
516
- },
517
- extension: {
518
- t: ['Extension'],
519
- a: 1,
520
- },
521
- id: {
522
- t: ['System.String'],
523
- },
524
- system: {
525
- t: ['uri'],
526
- },
527
- unit: {
528
- t: ['string'],
529
- },
530
- value: {
531
- t: ['decimal'],
532
- },
533
- },
534
- },
535
- Element: {
536
- e: {
537
- extension: {
538
- t: ['Extension'],
539
- a: 1,
540
- },
541
- id: {
542
- t: ['System.String'],
543
- },
544
- },
545
- },
546
- ElementDefinition: {
547
- b: 'BackboneElement',
548
- e: {
549
- alias: {
550
- t: ['string'],
551
- a: 1,
552
- },
553
- base: {
554
- t: ['ElementDefinition.base'],
555
- },
556
- binding: {
557
- t: ['ElementDefinition.binding'],
558
- },
559
- code: {
560
- t: ['Coding'],
561
- a: 1,
562
- },
563
- comment: {
564
- t: ['markdown'],
565
- },
566
- condition: {
567
- t: ['id'],
568
- a: 1,
569
- },
570
- constraint: {
571
- t: ['ElementDefinition.constraint'],
572
- a: 1,
573
- },
574
- contentReference: {
575
- t: ['uri'],
576
- },
577
- defaultValue: {
578
- t: [
579
- 'base64Binary',
580
- 'boolean',
581
- 'canonical',
582
- 'code',
583
- 'date',
584
- 'dateTime',
585
- 'decimal',
586
- 'id',
587
- 'instant',
588
- 'integer',
589
- 'markdown',
590
- 'oid',
591
- 'positiveInt',
592
- 'string',
593
- 'time',
594
- 'unsignedInt',
595
- 'uri',
596
- 'url',
597
- 'uuid',
598
- 'Address',
599
- 'Age',
600
- 'Annotation',
601
- 'Attachment',
602
- 'CodeableConcept',
603
- 'Coding',
604
- 'ContactPoint',
605
- 'Count',
606
- 'Distance',
607
- 'Duration',
608
- 'HumanName',
609
- 'Identifier',
610
- 'Money',
611
- 'Period',
612
- 'Quantity',
613
- 'Range',
614
- 'Ratio',
615
- 'Reference',
616
- 'SampledData',
617
- 'Signature',
618
- 'Timing',
619
- 'ContactDetail',
620
- 'Contributor',
621
- 'DataRequirement',
622
- 'Expression',
623
- 'ParameterDefinition',
624
- 'RelatedArtifact',
625
- 'TriggerDefinition',
626
- 'UsageContext',
627
- 'Dosage',
628
- 'Meta',
629
- ],
630
- c: 1,
631
- },
632
- definition: {
633
- t: ['markdown'],
634
- },
635
- example: {
636
- t: ['ElementDefinition.example'],
637
- a: 1,
638
- },
639
- extension: {
640
- t: ['Extension'],
641
- a: 1,
642
- },
643
- fixed: {
644
- t: [
645
- 'base64Binary',
646
- 'boolean',
647
- 'canonical',
648
- 'code',
649
- 'date',
650
- 'dateTime',
651
- 'decimal',
652
- 'id',
653
- 'instant',
654
- 'integer',
655
- 'markdown',
656
- 'oid',
657
- 'positiveInt',
658
- 'string',
659
- 'time',
660
- 'unsignedInt',
661
- 'uri',
662
- 'url',
663
- 'uuid',
664
- 'Address',
665
- 'Age',
666
- 'Annotation',
667
- 'Attachment',
668
- 'CodeableConcept',
669
- 'Coding',
670
- 'ContactPoint',
671
- 'Count',
672
- 'Distance',
673
- 'Duration',
674
- 'HumanName',
675
- 'Identifier',
676
- 'Money',
677
- 'Period',
678
- 'Quantity',
679
- 'Range',
680
- 'Ratio',
681
- 'Reference',
682
- 'SampledData',
683
- 'Signature',
684
- 'Timing',
685
- 'ContactDetail',
686
- 'Contributor',
687
- 'DataRequirement',
688
- 'Expression',
689
- 'ParameterDefinition',
690
- 'RelatedArtifact',
691
- 'TriggerDefinition',
692
- 'UsageContext',
693
- 'Dosage',
694
- 'Meta',
695
- ],
696
- c: 1,
697
- },
698
- id: {
699
- t: ['System.String'],
700
- },
701
- isModifier: {
702
- t: ['boolean'],
703
- },
704
- isModifierReason: {
705
- t: ['string'],
706
- },
707
- isSummary: {
708
- t: ['boolean'],
709
- },
710
- label: {
711
- t: ['string'],
712
- },
713
- mapping: {
714
- t: ['ElementDefinition.mapping'],
715
- a: 1,
716
- },
717
- max: {
718
- t: ['string'],
719
- },
720
- maxLength: {
721
- t: ['integer'],
722
- },
723
- maxValue: {
724
- t: ['date', 'dateTime', 'instant', 'time', 'decimal', 'integer', 'positiveInt', 'unsignedInt', 'Quantity'],
725
- c: 1,
726
- },
727
- meaningWhenMissing: {
728
- t: ['markdown'],
729
- },
730
- min: {
731
- t: ['unsignedInt'],
732
- },
733
- minValue: {
734
- t: ['date', 'dateTime', 'instant', 'time', 'decimal', 'integer', 'positiveInt', 'unsignedInt', 'Quantity'],
735
- c: 1,
736
- },
737
- modifierExtension: {
738
- t: ['Extension'],
739
- a: 1,
740
- },
741
- mustSupport: {
742
- t: ['boolean'],
743
- },
744
- orderMeaning: {
745
- t: ['string'],
746
- },
747
- path: {
748
- t: ['string'],
749
- },
750
- pattern: {
751
- t: [
752
- 'base64Binary',
753
- 'boolean',
754
- 'canonical',
755
- 'code',
756
- 'date',
757
- 'dateTime',
758
- 'decimal',
759
- 'id',
760
- 'instant',
761
- 'integer',
762
- 'markdown',
763
- 'oid',
764
- 'positiveInt',
765
- 'string',
766
- 'time',
767
- 'unsignedInt',
768
- 'uri',
769
- 'url',
770
- 'uuid',
771
- 'Address',
772
- 'Age',
773
- 'Annotation',
774
- 'Attachment',
775
- 'CodeableConcept',
776
- 'Coding',
777
- 'ContactPoint',
778
- 'Count',
779
- 'Distance',
780
- 'Duration',
781
- 'HumanName',
782
- 'Identifier',
783
- 'Money',
784
- 'Period',
785
- 'Quantity',
786
- 'Range',
787
- 'Ratio',
788
- 'Reference',
789
- 'SampledData',
790
- 'Signature',
791
- 'Timing',
792
- 'ContactDetail',
793
- 'Contributor',
794
- 'DataRequirement',
795
- 'Expression',
796
- 'ParameterDefinition',
797
- 'RelatedArtifact',
798
- 'TriggerDefinition',
799
- 'UsageContext',
800
- 'Dosage',
801
- 'Meta',
802
- ],
803
- c: 1,
804
- },
805
- representation: {
806
- t: ['code'],
807
- a: 1,
808
- },
809
- requirements: {
810
- t: ['markdown'],
811
- },
812
- short: {
813
- t: ['string'],
814
- },
815
- sliceIsConstraining: {
816
- t: ['boolean'],
817
- },
818
- sliceName: {
819
- t: ['string'],
820
- },
821
- slicing: {
822
- t: ['ElementDefinition.slicing'],
823
- },
824
- type: {
825
- t: ['ElementDefinition.type'],
826
- a: 1,
827
- },
828
- },
829
- },
830
- 'ElementDefinition.base': {
831
- b: 'Element',
832
- e: {
833
- extension: {
834
- t: ['Extension'],
835
- a: 1,
836
- },
837
- id: {
838
- t: ['System.String'],
839
- },
840
- max: {
841
- t: ['string'],
842
- },
843
- min: {
844
- t: ['unsignedInt'],
845
- },
846
- path: {
847
- t: ['string'],
848
- },
849
- },
850
- },
851
- 'ElementDefinition.binding': {
852
- b: 'Element',
853
- e: {
854
- description: {
855
- t: ['string'],
856
- },
857
- extension: {
858
- t: ['Extension'],
859
- a: 1,
860
- },
861
- id: {
862
- t: ['System.String'],
863
- },
864
- strength: {
865
- t: ['code'],
866
- },
867
- valueSet: {
868
- t: ['canonical'],
869
- },
870
- },
871
- },
872
- 'ElementDefinition.constraint': {
873
- b: 'Element',
874
- e: {
875
- expression: {
876
- t: ['string'],
877
- },
878
- extension: {
879
- t: ['Extension'],
880
- a: 1,
881
- },
882
- human: {
883
- t: ['string'],
884
- },
885
- id: {
886
- t: ['System.String'],
887
- },
888
- key: {
889
- t: ['id'],
890
- },
891
- requirements: {
892
- t: ['string'],
893
- },
894
- severity: {
895
- t: ['code'],
896
- },
897
- source: {
898
- t: ['canonical'],
899
- },
900
- xpath: {
901
- t: ['string'],
902
- },
903
- },
904
- },
905
- 'ElementDefinition.example': {
906
- b: 'Element',
907
- e: {
908
- extension: {
909
- t: ['Extension'],
910
- a: 1,
911
- },
912
- id: {
913
- t: ['System.String'],
914
- },
915
- label: {
916
- t: ['string'],
917
- },
918
- value: {
919
- t: [
920
- 'base64Binary',
921
- 'boolean',
922
- 'canonical',
923
- 'code',
924
- 'date',
925
- 'dateTime',
926
- 'decimal',
927
- 'id',
928
- 'instant',
929
- 'integer',
930
- 'markdown',
931
- 'oid',
932
- 'positiveInt',
933
- 'string',
934
- 'time',
935
- 'unsignedInt',
936
- 'uri',
937
- 'url',
938
- 'uuid',
939
- 'Address',
940
- 'Age',
941
- 'Annotation',
942
- 'Attachment',
943
- 'CodeableConcept',
944
- 'Coding',
945
- 'ContactPoint',
946
- 'Count',
947
- 'Distance',
948
- 'Duration',
949
- 'HumanName',
950
- 'Identifier',
951
- 'Money',
952
- 'Period',
953
- 'Quantity',
954
- 'Range',
955
- 'Ratio',
956
- 'Reference',
957
- 'SampledData',
958
- 'Signature',
959
- 'Timing',
960
- 'ContactDetail',
961
- 'Contributor',
962
- 'DataRequirement',
963
- 'Expression',
964
- 'ParameterDefinition',
965
- 'RelatedArtifact',
966
- 'TriggerDefinition',
967
- 'UsageContext',
968
- 'Dosage',
969
- 'Meta',
970
- ],
971
- c: 1,
972
- },
973
- },
974
- },
975
- 'ElementDefinition.mapping': {
976
- b: 'Element',
977
- e: {
978
- comment: {
979
- t: ['string'],
980
- },
981
- extension: {
982
- t: ['Extension'],
983
- a: 1,
984
- },
985
- id: {
986
- t: ['System.String'],
987
- },
988
- identity: {
989
- t: ['id'],
990
- },
991
- language: {
992
- t: ['code'],
993
- },
994
- map: {
995
- t: ['string'],
996
- },
997
- },
998
- },
999
- 'ElementDefinition.slicing': {
1000
- b: 'Element',
1001
- e: {
1002
- description: {
1003
- t: ['string'],
1004
- },
1005
- discriminator: {
1006
- t: ['ElementDefinition.slicing.discriminator'],
1007
- a: 1,
1008
- },
1009
- extension: {
1010
- t: ['Extension'],
1011
- a: 1,
1012
- },
1013
- id: {
1014
- t: ['System.String'],
1015
- },
1016
- ordered: {
1017
- t: ['boolean'],
1018
- },
1019
- rules: {
1020
- t: ['code'],
1021
- },
1022
- },
1023
- },
1024
- 'ElementDefinition.slicing.discriminator': {
1025
- b: 'Element',
1026
- e: {
1027
- extension: {
1028
- t: ['Extension'],
1029
- a: 1,
1030
- },
1031
- id: {
1032
- t: ['System.String'],
1033
- },
1034
- path: {
1035
- t: ['string'],
1036
- },
1037
- type: {
1038
- t: ['code'],
1039
- },
1040
- },
1041
- },
1042
- 'ElementDefinition.type': {
1043
- b: 'Element',
1044
- e: {
1045
- aggregation: {
1046
- t: ['code'],
1047
- a: 1,
1048
- },
1049
- code: {
1050
- t: ['uri'],
1051
- },
1052
- extension: {
1053
- t: ['Extension'],
1054
- a: 1,
1055
- },
1056
- id: {
1057
- t: ['System.String'],
1058
- },
1059
- profile: {
1060
- t: ['canonical'],
1061
- a: 1,
1062
- },
1063
- targetProfile: {
1064
- t: ['canonical'],
1065
- a: 1,
1066
- },
1067
- versioning: {
1068
- t: ['code'],
1069
- },
1070
- },
1071
- },
1072
- Expression: {
1073
- b: 'Element',
1074
- e: {
1075
- description: {
1076
- t: ['string'],
1077
- },
1078
- expression: {
1079
- t: ['string'],
1080
- },
1081
- extension: {
1082
- t: ['Extension'],
1083
- a: 1,
1084
- },
1085
- id: {
1086
- t: ['System.String'],
1087
- },
1088
- language: {
1089
- t: ['code'],
1090
- },
1091
- name: {
1092
- t: ['id'],
1093
- },
1094
- reference: {
1095
- t: ['uri'],
1096
- },
1097
- },
1098
- },
1099
- Extension: {
1100
- b: 'Element',
1101
- e: {
1102
- extension: {
1103
- t: ['Extension'],
1104
- a: 1,
1105
- },
1106
- id: {
1107
- t: ['System.String'],
1108
- },
1109
- url: {
1110
- t: ['System.String'],
1111
- },
1112
- value: {
1113
- t: [
1114
- 'base64Binary',
1115
- 'boolean',
1116
- 'canonical',
1117
- 'code',
1118
- 'date',
1119
- 'dateTime',
1120
- 'decimal',
1121
- 'id',
1122
- 'instant',
1123
- 'integer',
1124
- 'markdown',
1125
- 'oid',
1126
- 'positiveInt',
1127
- 'string',
1128
- 'time',
1129
- 'unsignedInt',
1130
- 'uri',
1131
- 'url',
1132
- 'uuid',
1133
- 'Address',
1134
- 'Age',
1135
- 'Annotation',
1136
- 'Attachment',
1137
- 'CodeableConcept',
1138
- 'Coding',
1139
- 'ContactPoint',
1140
- 'Count',
1141
- 'Distance',
1142
- 'Duration',
1143
- 'HumanName',
1144
- 'Identifier',
1145
- 'Money',
1146
- 'Period',
1147
- 'Quantity',
1148
- 'Range',
1149
- 'Ratio',
1150
- 'Reference',
1151
- 'SampledData',
1152
- 'Signature',
1153
- 'Timing',
1154
- 'ContactDetail',
1155
- 'Contributor',
1156
- 'DataRequirement',
1157
- 'Expression',
1158
- 'ParameterDefinition',
1159
- 'RelatedArtifact',
1160
- 'TriggerDefinition',
1161
- 'UsageContext',
1162
- 'Dosage',
1163
- 'Meta',
1164
- ],
1165
- c: 1,
1166
- },
1167
- },
1168
- },
1169
- HumanName: {
1170
- b: 'Element',
1171
- e: {
1172
- extension: {
1173
- t: ['Extension'],
1174
- a: 1,
1175
- },
1176
- family: {
1177
- t: ['string'],
1178
- },
1179
- given: {
1180
- t: ['string'],
1181
- a: 1,
1182
- },
1183
- id: {
1184
- t: ['System.String'],
1185
- },
1186
- period: {
1187
- t: ['Period'],
1188
- },
1189
- prefix: {
1190
- t: ['string'],
1191
- a: 1,
1192
- },
1193
- suffix: {
1194
- t: ['string'],
1195
- a: 1,
1196
- },
1197
- text: {
1198
- t: ['string'],
1199
- },
1200
- use: {
1201
- t: ['code'],
1202
- },
1203
- },
1204
- },
1205
- Identifier: {
1206
- b: 'Element',
1207
- e: {
1208
- assigner: {
1209
- t: ['Reference'],
1210
- r: ['Organization'],
1211
- },
1212
- extension: {
1213
- t: ['Extension'],
1214
- a: 1,
1215
- },
1216
- id: {
1217
- t: ['System.String'],
1218
- },
1219
- period: {
1220
- t: ['Period'],
1221
- },
1222
- system: {
1223
- t: ['uri'],
1224
- },
1225
- type: {
1226
- t: ['CodeableConcept'],
1227
- },
1228
- use: {
1229
- t: ['code'],
1230
- },
1231
- value: {
1232
- t: ['string'],
1233
- },
1234
- },
1235
- },
1236
- MarketingStatus: {
1237
- b: 'BackboneElement',
1238
- e: {
1239
- country: {
1240
- t: ['CodeableConcept'],
1241
- },
1242
- dateRange: {
1243
- t: ['Period'],
1244
- },
1245
- extension: {
1246
- t: ['Extension'],
1247
- a: 1,
1248
- },
1249
- id: {
1250
- t: ['System.String'],
1251
- },
1252
- jurisdiction: {
1253
- t: ['CodeableConcept'],
1254
- },
1255
- modifierExtension: {
1256
- t: ['Extension'],
1257
- a: 1,
1258
- },
1259
- restoreDate: {
1260
- t: ['dateTime'],
1261
- },
1262
- status: {
1263
- t: ['CodeableConcept'],
1264
- },
1265
- },
1266
- },
1267
- Meta: {
1268
- b: 'Element',
1269
- e: {
1270
- account: {
1271
- t: ['Reference'],
1272
- },
1273
- accounts: {
1274
- t: ['Reference'],
1275
- a: 1,
1276
- },
1277
- author: {
1278
- t: ['Reference'],
1279
- },
1280
- compartment: {
1281
- t: ['Reference'],
1282
- a: 1,
1283
- },
1284
- deleted: {
1285
- t: ['boolean'],
1286
- },
1287
- extension: {
1288
- t: ['Extension'],
1289
- a: 1,
1290
- },
1291
- id: {
1292
- t: ['System.String'],
1293
- },
1294
- lastUpdated: {
1295
- t: ['instant'],
1296
- },
1297
- onBehalfOf: {
1298
- t: ['Reference'],
1299
- },
1300
- profile: {
1301
- t: ['canonical'],
1302
- a: 1,
1303
- },
1304
- project: {
1305
- t: ['uri'],
1306
- },
1307
- security: {
1308
- t: ['Coding'],
1309
- a: 1,
1310
- },
1311
- source: {
1312
- t: ['uri'],
1313
- },
1314
- tag: {
1315
- t: ['Coding'],
1316
- a: 1,
1317
- },
1318
- versionId: {
1319
- t: ['id'],
1320
- },
1321
- },
1322
- },
1323
- Money: {
1324
- b: 'Element',
1325
- e: {
1326
- currency: {
1327
- t: ['code'],
1328
- },
1329
- extension: {
1330
- t: ['Extension'],
1331
- a: 1,
1332
- },
1333
- id: {
1334
- t: ['System.String'],
1335
- },
1336
- value: {
1337
- t: ['decimal'],
1338
- },
1339
- },
1340
- },
1341
- MoneyQuantity: {
1342
- b: 'Quantity',
1343
- e: {},
1344
- },
1345
- Narrative: {
1346
- b: 'Element',
1347
- e: {
1348
- div: {
1349
- t: ['xhtml'],
1350
- },
1351
- extension: {
1352
- t: ['Extension'],
1353
- a: 1,
1354
- },
1355
- id: {
1356
- t: ['System.String'],
1357
- },
1358
- status: {
1359
- t: ['code'],
1360
- },
1361
- },
1362
- },
1363
- ParameterDefinition: {
1364
- b: 'Element',
1365
- e: {
1366
- documentation: {
1367
- t: ['string'],
1368
- },
1369
- extension: {
1370
- t: ['Extension'],
1371
- a: 1,
1372
- },
1373
- id: {
1374
- t: ['System.String'],
1375
- },
1376
- max: {
1377
- t: ['string'],
1378
- },
1379
- min: {
1380
- t: ['integer'],
1381
- },
1382
- name: {
1383
- t: ['code'],
1384
- },
1385
- profile: {
1386
- t: ['canonical'],
1387
- },
1388
- type: {
1389
- t: ['code'],
1390
- },
1391
- use: {
1392
- t: ['code'],
1393
- },
1394
- },
1395
- },
1396
- Period: {
1397
- b: 'Element',
1398
- e: {
1399
- end: {
1400
- t: ['dateTime'],
1401
- },
1402
- extension: {
1403
- t: ['Extension'],
1404
- a: 1,
1405
- },
1406
- id: {
1407
- t: ['System.String'],
1408
- },
1409
- start: {
1410
- t: ['dateTime'],
1411
- },
1412
- },
1413
- },
1414
- Population: {
1415
- b: 'BackboneElement',
1416
- e: {
1417
- age: {
1418
- t: ['Range', 'CodeableConcept'],
1419
- c: 1,
1420
- },
1421
- extension: {
1422
- t: ['Extension'],
1423
- a: 1,
1424
- },
1425
- gender: {
1426
- t: ['CodeableConcept'],
1427
- },
1428
- id: {
1429
- t: ['System.String'],
1430
- },
1431
- modifierExtension: {
1432
- t: ['Extension'],
1433
- a: 1,
1434
- },
1435
- physiologicalCondition: {
1436
- t: ['CodeableConcept'],
1437
- },
1438
- race: {
1439
- t: ['CodeableConcept'],
1440
- },
1441
- },
1442
- },
1443
- ProdCharacteristic: {
1444
- b: 'BackboneElement',
1445
- e: {
1446
- color: {
1447
- t: ['string'],
1448
- a: 1,
1449
- },
1450
- depth: {
1451
- t: ['Quantity'],
1452
- },
1453
- extension: {
1454
- t: ['Extension'],
1455
- a: 1,
1456
- },
1457
- externalDiameter: {
1458
- t: ['Quantity'],
1459
- },
1460
- height: {
1461
- t: ['Quantity'],
1462
- },
1463
- id: {
1464
- t: ['System.String'],
1465
- },
1466
- image: {
1467
- t: ['Attachment'],
1468
- a: 1,
1469
- },
1470
- imprint: {
1471
- t: ['string'],
1472
- a: 1,
1473
- },
1474
- modifierExtension: {
1475
- t: ['Extension'],
1476
- a: 1,
1477
- },
1478
- nominalVolume: {
1479
- t: ['Quantity'],
1480
- },
1481
- scoring: {
1482
- t: ['CodeableConcept'],
1483
- },
1484
- shape: {
1485
- t: ['string'],
1486
- },
1487
- weight: {
1488
- t: ['Quantity'],
1489
- },
1490
- width: {
1491
- t: ['Quantity'],
1492
- },
1493
- },
1494
- },
1495
- ProductShelfLife: {
1496
- b: 'BackboneElement',
1497
- e: {
1498
- extension: {
1499
- t: ['Extension'],
1500
- a: 1,
1501
- },
1502
- id: {
1503
- t: ['System.String'],
1504
- },
1505
- identifier: {
1506
- t: ['Identifier'],
1507
- },
1508
- modifierExtension: {
1509
- t: ['Extension'],
1510
- a: 1,
1511
- },
1512
- period: {
1513
- t: ['Quantity'],
1514
- },
1515
- specialPrecautionsForStorage: {
1516
- t: ['CodeableConcept'],
1517
- a: 1,
1518
- },
1519
- type: {
1520
- t: ['CodeableConcept'],
1521
- },
1522
- },
1523
- },
1524
- Quantity: {
1525
- b: 'Element',
1526
- e: {
1527
- code: {
1528
- t: ['code'],
1529
- },
1530
- comparator: {
1531
- t: ['code'],
1532
- },
1533
- extension: {
1534
- t: ['Extension'],
1535
- a: 1,
1536
- },
1537
- id: {
1538
- t: ['System.String'],
1539
- },
1540
- system: {
1541
- t: ['uri'],
1542
- },
1543
- unit: {
1544
- t: ['string'],
1545
- },
1546
- value: {
1547
- t: ['decimal'],
1548
- },
1549
- },
1550
- },
1551
- Range: {
1552
- b: 'Element',
1553
- e: {
1554
- extension: {
1555
- t: ['Extension'],
1556
- a: 1,
1557
- },
1558
- high: {
1559
- t: ['Quantity'],
1560
- },
1561
- id: {
1562
- t: ['System.String'],
1563
- },
1564
- low: {
1565
- t: ['Quantity'],
1566
- },
1567
- },
1568
- },
1569
- Ratio: {
1570
- b: 'Element',
1571
- e: {
1572
- denominator: {
1573
- t: ['Quantity'],
1574
- },
1575
- extension: {
1576
- t: ['Extension'],
1577
- a: 1,
1578
- },
1579
- id: {
1580
- t: ['System.String'],
1581
- },
1582
- numerator: {
1583
- t: ['Quantity'],
1584
- },
1585
- },
1586
- },
1587
- Reference: {
1588
- b: 'Element',
1589
- e: {
1590
- display: {
1591
- t: ['string'],
1592
- },
1593
- extension: {
1594
- t: ['Extension'],
1595
- a: 1,
1596
- },
1597
- id: {
1598
- t: ['System.String'],
1599
- },
1600
- identifier: {
1601
- t: ['Identifier'],
1602
- },
1603
- reference: {
1604
- t: ['string'],
1605
- },
1606
- type: {
1607
- t: ['uri'],
1608
- },
1609
- },
1610
- },
1611
- RelatedArtifact: {
1612
- b: 'Element',
1613
- e: {
1614
- citation: {
1615
- t: ['markdown'],
1616
- },
1617
- display: {
1618
- t: ['string'],
1619
- },
1620
- document: {
1621
- t: ['Attachment'],
1622
- },
1623
- extension: {
1624
- t: ['Extension'],
1625
- a: 1,
1626
- },
1627
- id: {
1628
- t: ['System.String'],
1629
- },
1630
- label: {
1631
- t: ['string'],
1632
- },
1633
- resource: {
1634
- t: ['canonical'],
1635
- },
1636
- type: {
1637
- t: ['code'],
1638
- },
1639
- url: {
1640
- t: ['url'],
1641
- },
1642
- },
1643
- },
1644
- SampledData: {
1645
- b: 'Element',
1646
- e: {
1647
- data: {
1648
- t: ['string'],
1649
- },
1650
- dimensions: {
1651
- t: ['positiveInt'],
1652
- },
1653
- extension: {
1654
- t: ['Extension'],
1655
- a: 1,
1656
- },
1657
- factor: {
1658
- t: ['decimal'],
1659
- },
1660
- id: {
1661
- t: ['System.String'],
1662
- },
1663
- lowerLimit: {
1664
- t: ['decimal'],
1665
- },
1666
- origin: {
1667
- t: ['Quantity'],
1668
- },
1669
- period: {
1670
- t: ['decimal'],
1671
- },
1672
- upperLimit: {
1673
- t: ['decimal'],
1674
- },
1675
- },
1676
- },
1677
- Signature: {
1678
- b: 'Element',
1679
- e: {
1680
- data: {
1681
- t: ['base64Binary'],
1682
- },
1683
- extension: {
1684
- t: ['Extension'],
1685
- a: 1,
1686
- },
1687
- id: {
1688
- t: ['System.String'],
1689
- },
1690
- onBehalfOf: {
1691
- t: ['Reference'],
1692
- r: ['Practitioner', 'PractitionerRole', 'RelatedPerson', 'Patient', 'Device', 'Organization'],
1693
- },
1694
- sigFormat: {
1695
- t: ['code'],
1696
- },
1697
- targetFormat: {
1698
- t: ['code'],
1699
- },
1700
- type: {
1701
- t: ['Coding'],
1702
- a: 1,
1703
- },
1704
- when: {
1705
- t: ['instant'],
1706
- },
1707
- who: {
1708
- t: ['Reference'],
1709
- r: ['Practitioner', 'PractitionerRole', 'RelatedPerson', 'Patient', 'Device', 'Organization'],
1710
- },
1711
- },
1712
- },
1713
- SimpleQuantity: {
1714
- b: 'Quantity',
1715
- e: {},
1716
- },
1717
- SubstanceAmount: {
1718
- b: 'BackboneElement',
1719
- e: {
1720
- amount: {
1721
- t: ['Quantity', 'Range', 'string'],
1722
- c: 1,
1723
- },
1724
- amountText: {
1725
- t: ['string'],
1726
- },
1727
- amountType: {
1728
- t: ['CodeableConcept'],
1729
- },
1730
- extension: {
1731
- t: ['Extension'],
1732
- a: 1,
1733
- },
1734
- id: {
1735
- t: ['System.String'],
1736
- },
1737
- modifierExtension: {
1738
- t: ['Extension'],
1739
- a: 1,
1740
- },
1741
- referenceRange: {
1742
- t: ['SubstanceAmount.referenceRange'],
1743
- },
1744
- },
1745
- },
1746
- 'SubstanceAmount.referenceRange': {
1747
- b: 'Element',
1748
- e: {
1749
- extension: {
1750
- t: ['Extension'],
1751
- a: 1,
1752
- },
1753
- highLimit: {
1754
- t: ['Quantity'],
1755
- },
1756
- id: {
1757
- t: ['System.String'],
1758
- },
1759
- lowLimit: {
1760
- t: ['Quantity'],
1761
- },
1762
- },
1763
- },
1764
- Timing: {
1765
- b: 'BackboneElement',
1766
- e: {
1767
- code: {
1768
- t: ['CodeableConcept'],
1769
- },
1770
- event: {
1771
- t: ['dateTime'],
1772
- a: 1,
1773
- },
1774
- extension: {
1775
- t: ['Extension'],
1776
- a: 1,
1777
- },
1778
- id: {
1779
- t: ['System.String'],
1780
- },
1781
- modifierExtension: {
1782
- t: ['Extension'],
1783
- a: 1,
1784
- },
1785
- repeat: {
1786
- t: ['Timing.repeat'],
1787
- },
1788
- },
1789
- },
1790
- 'Timing.repeat': {
1791
- b: 'Element',
1792
- e: {
1793
- bounds: {
1794
- t: ['Duration', 'Range', 'Period'],
1795
- c: 1,
1796
- },
1797
- count: {
1798
- t: ['positiveInt'],
1799
- },
1800
- countMax: {
1801
- t: ['positiveInt'],
1802
- },
1803
- dayOfWeek: {
1804
- t: ['code'],
1805
- a: 1,
1806
- },
1807
- duration: {
1808
- t: ['decimal'],
1809
- },
1810
- durationMax: {
1811
- t: ['decimal'],
1812
- },
1813
- durationUnit: {
1814
- t: ['code'],
1815
- },
1816
- extension: {
1817
- t: ['Extension'],
1818
- a: 1,
1819
- },
1820
- frequency: {
1821
- t: ['positiveInt'],
1822
- },
1823
- frequencyMax: {
1824
- t: ['positiveInt'],
1825
- },
1826
- id: {
1827
- t: ['System.String'],
1828
- },
1829
- offset: {
1830
- t: ['unsignedInt'],
1831
- },
1832
- period: {
1833
- t: ['decimal'],
1834
- },
1835
- periodMax: {
1836
- t: ['decimal'],
1837
- },
1838
- periodUnit: {
1839
- t: ['code'],
1840
- },
1841
- timeOfDay: {
1842
- t: ['time'],
1843
- a: 1,
1844
- },
1845
- when: {
1846
- t: ['code'],
1847
- a: 1,
1848
- },
1849
- },
1850
- },
1851
- TriggerDefinition: {
1852
- b: 'Element',
1853
- e: {
1854
- condition: {
1855
- t: ['Expression'],
1856
- },
1857
- data: {
1858
- t: ['DataRequirement'],
1859
- a: 1,
1860
- },
1861
- extension: {
1862
- t: ['Extension'],
1863
- a: 1,
1864
- },
1865
- id: {
1866
- t: ['System.String'],
1867
- },
1868
- name: {
1869
- t: ['string'],
1870
- },
1871
- timing: {
1872
- t: ['Timing', 'Reference', 'date', 'dateTime'],
1873
- c: 1,
1874
- r: ['Schedule'],
1875
- },
1876
- type: {
1877
- t: ['code'],
1878
- },
1879
- },
1880
- },
1881
- UsageContext: {
1882
- b: 'Element',
1883
- e: {
1884
- code: {
1885
- t: ['Coding'],
1886
- },
1887
- extension: {
1888
- t: ['Extension'],
1889
- a: 1,
1890
- },
1891
- id: {
1892
- t: ['System.String'],
1893
- },
1894
- value: {
1895
- t: ['CodeableConcept', 'Quantity', 'Range', 'Reference'],
1896
- c: 1,
1897
- r: [
1898
- 'PlanDefinition',
1899
- 'ResearchStudy',
1900
- 'InsurancePlan',
1901
- 'HealthcareService',
1902
- 'Group',
1903
- 'Location',
1904
- 'Organization',
1905
- ],
1906
- },
1907
- },
1908
- },
1909
- base64Binary: {
1910
- b: 'Element',
1911
- e: {
1912
- extension: {
1913
- t: ['Extension'],
1914
- a: 1,
1915
- },
1916
- id: {
1917
- t: ['System.String'],
1918
- },
1919
- value: {
1920
- t: ['System.String'],
1921
- },
1922
- },
1923
- },
1924
- boolean: {
1925
- b: 'Element',
1926
- e: {
1927
- extension: {
1928
- t: ['Extension'],
1929
- a: 1,
1930
- },
1931
- id: {
1932
- t: ['System.String'],
1933
- },
1934
- value: {
1935
- t: ['System.Boolean'],
1936
- },
1937
- },
1938
- },
1939
- canonical: {
1940
- b: 'uri',
1941
- e: {
1942
- extension: {
1943
- t: ['Extension'],
1944
- a: 1,
1945
- },
1946
- id: {
1947
- t: ['System.String'],
1948
- },
1949
- value: {
1950
- t: ['System.String'],
1951
- },
1952
- },
1953
- },
1954
- code: {
1955
- b: 'string',
1956
- e: {
1957
- extension: {
1958
- t: ['Extension'],
1959
- a: 1,
1960
- },
1961
- id: {
1962
- t: ['System.String'],
1963
- },
1964
- value: {
1965
- t: ['System.String'],
1966
- },
1967
- },
1968
- },
1969
- date: {
1970
- b: 'Element',
1971
- e: {
1972
- extension: {
1973
- t: ['Extension'],
1974
- a: 1,
1975
- },
1976
- id: {
1977
- t: ['System.String'],
1978
- },
1979
- value: {
1980
- t: ['System.Date'],
1981
- },
1982
- },
1983
- },
1984
- dateTime: {
1985
- b: 'Element',
1986
- e: {
1987
- extension: {
1988
- t: ['Extension'],
1989
- a: 1,
1990
- },
1991
- id: {
1992
- t: ['System.String'],
1993
- },
1994
- value: {
1995
- t: ['System.DateTime'],
1996
- },
1997
- },
1998
- },
1999
- decimal: {
2000
- b: 'Element',
2001
- e: {
2002
- extension: {
2003
- t: ['Extension'],
2004
- a: 1,
2005
- },
2006
- id: {
2007
- t: ['System.String'],
2008
- },
2009
- value: {
2010
- t: ['System.Decimal'],
2011
- },
2012
- },
2013
- },
2014
- id: {
2015
- b: 'string',
2016
- e: {
2017
- extension: {
2018
- t: ['Extension'],
2019
- a: 1,
2020
- },
2021
- id: {
2022
- t: ['System.String'],
2023
- },
2024
- value: {
2025
- t: ['System.String'],
2026
- },
2027
- },
2028
- },
2029
- instant: {
2030
- b: 'Element',
2031
- e: {
2032
- extension: {
2033
- t: ['Extension'],
2034
- a: 1,
2035
- },
2036
- id: {
2037
- t: ['System.String'],
2038
- },
2039
- value: {
2040
- t: ['System.DateTime'],
2041
- },
2042
- },
2043
- },
2044
- integer: {
2045
- b: 'Element',
2046
- e: {
2047
- extension: {
2048
- t: ['Extension'],
2049
- a: 1,
2050
- },
2051
- id: {
2052
- t: ['System.String'],
2053
- },
2054
- value: {
2055
- t: ['System.Integer'],
2056
- },
2057
- },
2058
- },
2059
- markdown: {
2060
- b: 'string',
2061
- e: {
2062
- extension: {
2063
- t: ['Extension'],
2064
- a: 1,
2065
- },
2066
- id: {
2067
- t: ['System.String'],
2068
- },
2069
- value: {
2070
- t: ['System.String'],
2071
- },
2072
- },
2073
- },
2074
- oid: {
2075
- b: 'uri',
2076
- e: {
2077
- extension: {
2078
- t: ['Extension'],
2079
- a: 1,
2080
- },
2081
- id: {
2082
- t: ['System.String'],
2083
- },
2084
- value: {
2085
- t: ['System.String'],
2086
- },
2087
- },
2088
- },
2089
- positiveInt: {
2090
- b: 'integer',
2091
- e: {
2092
- extension: {
2093
- t: ['Extension'],
2094
- a: 1,
2095
- },
2096
- id: {
2097
- t: ['System.String'],
2098
- },
2099
- value: {
2100
- t: ['System.String'],
2101
- },
2102
- },
2103
- },
2104
- string: {
2105
- b: 'Element',
2106
- e: {
2107
- extension: {
2108
- t: ['Extension'],
2109
- a: 1,
2110
- },
2111
- id: {
2112
- t: ['System.String'],
2113
- },
2114
- value: {
2115
- t: ['System.String'],
2116
- },
2117
- },
2118
- },
2119
- time: {
2120
- b: 'Element',
2121
- e: {
2122
- extension: {
2123
- t: ['Extension'],
2124
- a: 1,
2125
- },
2126
- id: {
2127
- t: ['System.String'],
2128
- },
2129
- value: {
2130
- t: ['System.Time'],
2131
- },
2132
- },
2133
- },
2134
- unsignedInt: {
2135
- b: 'integer',
2136
- e: {
2137
- extension: {
2138
- t: ['Extension'],
2139
- a: 1,
2140
- },
2141
- id: {
2142
- t: ['System.String'],
2143
- },
2144
- value: {
2145
- t: ['System.String'],
2146
- },
2147
- },
2148
- },
2149
- uri: {
2150
- b: 'Element',
2151
- e: {
2152
- extension: {
2153
- t: ['Extension'],
2154
- a: 1,
2155
- },
2156
- id: {
2157
- t: ['System.String'],
2158
- },
2159
- value: {
2160
- t: ['System.String'],
2161
- },
2162
- },
2163
- },
2164
- url: {
2165
- b: 'uri',
2166
- e: {
2167
- extension: {
2168
- t: ['Extension'],
2169
- a: 1,
2170
- },
2171
- id: {
2172
- t: ['System.String'],
2173
- },
2174
- value: {
2175
- t: ['System.String'],
2176
- },
2177
- },
2178
- },
2179
- uuid: {
2180
- b: 'uri',
2181
- e: {
2182
- extension: {
2183
- t: ['Extension'],
2184
- a: 1,
2185
- },
2186
- id: {
2187
- t: ['System.String'],
2188
- },
2189
- value: {
2190
- t: ['System.String'],
2191
- },
2192
- },
2193
- },
2194
- xhtml: {
2195
- b: 'Element',
2196
- e: {
2197
- extension: {
2198
- t: ['Extension'],
2199
- },
2200
- id: {
2201
- t: ['System.String'],
2202
- },
2203
- value: {
2204
- t: ['System.String'],
2205
- },
2206
- },
2207
- },
2208
- }
4
+ /**
5
+ * Compact-encoded model table, one line per type; the format and decoder live
6
+ * in src/r4/model-data.ts. Elements identical to the nearest ancestor's entry
7
+ * are omitted — lookups walk the base chain.
8
+ */
9
+ export const R4_DATA_TYPES_COMPACT: string = `Address|Element|city:string;country:string;district:string;line:string*;period:Period;postalCode:string;state:string;text:string;type:code;use:code
10
+ Age|Quantity|
11
+ Annotation|Element|author:Reference,string^<Practitioner,Patient,RelatedPerson,Organization;text:markdown;time:dateTime
12
+ Attachment|Element|contentType:code;creation:dateTime;data:base64Binary;hash:base64Binary;language:code;size:unsignedInt;title:string;url:url
13
+ BackboneElement|Element|modifierExtension:Extension*
14
+ CodeableConcept|Element|coding:Coding*;text:string
15
+ Coding|Element|code:code;display:string;system:uri;userSelected:boolean;version:string
16
+ ContactDetail|Element|name:string;telecom:ContactPoint*
17
+ ContactPoint|Element|period:Period;rank:positiveInt;system:code;use:code;value:string
18
+ Contributor|Element|contact:ContactDetail*;name:string;type:code
19
+ Count|Quantity|
20
+ DataRequirement|Element|codeFilter:DataRequirement.codeFilter*;dateFilter:DataRequirement.dateFilter*;limit:positiveInt;mustSupport:string*;profile:canonical*;sort:DataRequirement.sort*;subject:CodeableConcept,Reference^<Group;type:code
21
+ DataRequirement.codeFilter|Element|code:Coding*;path:string;searchParam:string;valueSet:canonical
22
+ DataRequirement.dateFilter|Element|path:string;searchParam:string;value:dateTime,Period,Duration^
23
+ DataRequirement.sort|Element|direction:code;path:string
24
+ Distance|Quantity|
25
+ Dosage|BackboneElement|additionalInstruction:CodeableConcept*;asNeeded:boolean,CodeableConcept^;doseAndRate:Dosage.doseAndRate*;maxDosePerAdministration:Quantity;maxDosePerLifetime:Quantity;maxDosePerPeriod:Ratio;method:CodeableConcept;patientInstruction:string;route:CodeableConcept;sequence:integer;site:CodeableConcept;text:string;timing:Timing
26
+ Dosage.doseAndRate|Element|dose:Range,Quantity^;rate:Ratio,Range,Quantity^;type:CodeableConcept
27
+ Duration|Quantity|
28
+ Element||extension:Extension*;id:System.String
29
+ ElementDefinition|BackboneElement|alias:string*;base:ElementDefinition.base;binding:ElementDefinition.binding;code:Coding*;comment:markdown;condition:id*;constraint:ElementDefinition.constraint*;contentReference:uri;defaultValue:base64Binary,boolean,canonical,code,date,dateTime,decimal,id,instant,integer,markdown,oid,positiveInt,string,time,unsignedInt,uri,url,uuid,Address,Age,Annotation,Attachment,CodeableConcept,Coding,ContactPoint,Count,Distance,Duration,HumanName,Identifier,Money,Period,Quantity,Range,Ratio,Reference,SampledData,Signature,Timing,ContactDetail,Contributor,DataRequirement,Expression,ParameterDefinition,RelatedArtifact,TriggerDefinition,UsageContext,Dosage,Meta^;definition:markdown;example:ElementDefinition.example*;fixed:base64Binary,boolean,canonical,code,date,dateTime,decimal,id,instant,integer,markdown,oid,positiveInt,string,time,unsignedInt,uri,url,uuid,Address,Age,Annotation,Attachment,CodeableConcept,Coding,ContactPoint,Count,Distance,Duration,HumanName,Identifier,Money,Period,Quantity,Range,Ratio,Reference,SampledData,Signature,Timing,ContactDetail,Contributor,DataRequirement,Expression,ParameterDefinition,RelatedArtifact,TriggerDefinition,UsageContext,Dosage,Meta^;isModifier:boolean;isModifierReason:string;isSummary:boolean;label:string;mapping:ElementDefinition.mapping*;max:string;maxLength:integer;maxValue:date,dateTime,instant,time,decimal,integer,positiveInt,unsignedInt,Quantity^;meaningWhenMissing:markdown;min:unsignedInt;minValue:date,dateTime,instant,time,decimal,integer,positiveInt,unsignedInt,Quantity^;mustSupport:boolean;orderMeaning:string;path:string;pattern:base64Binary,boolean,canonical,code,date,dateTime,decimal,id,instant,integer,markdown,oid,positiveInt,string,time,unsignedInt,uri,url,uuid,Address,Age,Annotation,Attachment,CodeableConcept,Coding,ContactPoint,Count,Distance,Duration,HumanName,Identifier,Money,Period,Quantity,Range,Ratio,Reference,SampledData,Signature,Timing,ContactDetail,Contributor,DataRequirement,Expression,ParameterDefinition,RelatedArtifact,TriggerDefinition,UsageContext,Dosage,Meta^;representation:code*;requirements:markdown;short:string;sliceIsConstraining:boolean;sliceName:string;slicing:ElementDefinition.slicing;type:ElementDefinition.type*
30
+ ElementDefinition.base|Element|max:string;min:unsignedInt;path:string
31
+ ElementDefinition.binding|Element|description:string;strength:code;valueSet:canonical
32
+ ElementDefinition.constraint|Element|expression:string;human:string;key:id;requirements:string;severity:code;source:canonical;xpath:string
33
+ ElementDefinition.example|Element|label:string;value:base64Binary,boolean,canonical,code,date,dateTime,decimal,id,instant,integer,markdown,oid,positiveInt,string,time,unsignedInt,uri,url,uuid,Address,Age,Annotation,Attachment,CodeableConcept,Coding,ContactPoint,Count,Distance,Duration,HumanName,Identifier,Money,Period,Quantity,Range,Ratio,Reference,SampledData,Signature,Timing,ContactDetail,Contributor,DataRequirement,Expression,ParameterDefinition,RelatedArtifact,TriggerDefinition,UsageContext,Dosage,Meta^
34
+ ElementDefinition.mapping|Element|comment:string;identity:id;language:code;map:string
35
+ ElementDefinition.slicing|Element|description:string;discriminator:ElementDefinition.slicing.discriminator*;ordered:boolean;rules:code
36
+ ElementDefinition.slicing.discriminator|Element|path:string;type:code
37
+ ElementDefinition.type|Element|aggregation:code*;code:uri;profile:canonical*;targetProfile:canonical*;versioning:code
38
+ Expression|Element|description:string;expression:string;language:code;name:id;reference:uri
39
+ Extension|Element|url:System.String;value:base64Binary,boolean,canonical,code,date,dateTime,decimal,id,instant,integer,markdown,oid,positiveInt,string,time,unsignedInt,uri,url,uuid,Address,Age,Annotation,Attachment,CodeableConcept,Coding,ContactPoint,Count,Distance,Duration,HumanName,Identifier,Money,Period,Quantity,Range,Ratio,Reference,SampledData,Signature,Timing,ContactDetail,Contributor,DataRequirement,Expression,ParameterDefinition,RelatedArtifact,TriggerDefinition,UsageContext,Dosage,Meta^
40
+ HumanName|Element|family:string;given:string*;period:Period;prefix:string*;suffix:string*;text:string;use:code
41
+ Identifier|Element|assigner:Reference<Organization;period:Period;system:uri;type:CodeableConcept;use:code;value:string
42
+ MarketingStatus|BackboneElement|country:CodeableConcept;dateRange:Period;jurisdiction:CodeableConcept;restoreDate:dateTime;status:CodeableConcept
43
+ Meta|Element|account:Reference;accounts:Reference*;author:Reference;compartment:Reference*;deleted:boolean;lastUpdated:instant;onBehalfOf:Reference;profile:canonical*;project:uri;security:Coding*;source:uri;tag:Coding*;versionId:id
44
+ Money|Element|currency:code;value:decimal
45
+ MoneyQuantity|Quantity|
46
+ Narrative|Element|div:xhtml;status:code
47
+ ParameterDefinition|Element|documentation:string;max:string;min:integer;name:code;profile:canonical;type:code;use:code
48
+ Period|Element|end:dateTime;start:dateTime
49
+ Population|BackboneElement|age:Range,CodeableConcept^;gender:CodeableConcept;physiologicalCondition:CodeableConcept;race:CodeableConcept
50
+ ProdCharacteristic|BackboneElement|color:string*;depth:Quantity;externalDiameter:Quantity;height:Quantity;image:Attachment*;imprint:string*;nominalVolume:Quantity;scoring:CodeableConcept;shape:string;weight:Quantity;width:Quantity
51
+ ProductShelfLife|BackboneElement|identifier:Identifier;period:Quantity;specialPrecautionsForStorage:CodeableConcept*;type:CodeableConcept
52
+ Quantity|Element|code:code;comparator:code;system:uri;unit:string;value:decimal
53
+ Range|Element|high:Quantity;low:Quantity
54
+ Ratio|Element|denominator:Quantity;numerator:Quantity
55
+ Reference|Element|display:string;identifier:Identifier;reference:string;type:uri
56
+ RelatedArtifact|Element|citation:markdown;display:string;document:Attachment;label:string;resource:canonical;type:code;url:url
57
+ SampledData|Element|data:string;dimensions:positiveInt;factor:decimal;lowerLimit:decimal;origin:Quantity;period:decimal;upperLimit:decimal
58
+ Signature|Element|data:base64Binary;onBehalfOf:Reference<Practitioner,PractitionerRole,RelatedPerson,Patient,Device,Organization;sigFormat:code;targetFormat:code;type:Coding*;when:instant;who:Reference<Practitioner,PractitionerRole,RelatedPerson,Patient,Device,Organization
59
+ SimpleQuantity|Quantity|
60
+ SubstanceAmount|BackboneElement|amount:Quantity,Range,string^;amountText:string;amountType:CodeableConcept;referenceRange:SubstanceAmount.referenceRange
61
+ SubstanceAmount.referenceRange|Element|highLimit:Quantity;lowLimit:Quantity
62
+ Timing|BackboneElement|code:CodeableConcept;event:dateTime*;repeat:Timing.repeat
63
+ Timing.repeat|Element|bounds:Duration,Range,Period^;count:positiveInt;countMax:positiveInt;dayOfWeek:code*;duration:decimal;durationMax:decimal;durationUnit:code;frequency:positiveInt;frequencyMax:positiveInt;offset:unsignedInt;period:decimal;periodMax:decimal;periodUnit:code;timeOfDay:time*;when:code*
64
+ TriggerDefinition|Element|condition:Expression;data:DataRequirement*;name:string;timing:Timing,Reference,date,dateTime^<Schedule;type:code
65
+ UsageContext|Element|code:Coding;value:CodeableConcept,Quantity,Range,Reference^<PlanDefinition,ResearchStudy,InsurancePlan,HealthcareService,Group,Location,Organization
66
+ base64Binary|Element|value:System.String
67
+ boolean|Element|value:System.Boolean
68
+ canonical|uri|
69
+ code|string|
70
+ date|Element|value:System.Date
71
+ dateTime|Element|value:System.DateTime
72
+ decimal|Element|value:System.Decimal
73
+ id|string|
74
+ instant|Element|value:System.DateTime
75
+ integer|Element|value:System.Integer
76
+ markdown|string|
77
+ oid|uri|
78
+ positiveInt|integer|value:System.String
79
+ string|Element|value:System.String
80
+ time|Element|value:System.Time
81
+ unsignedInt|integer|value:System.String
82
+ uri|Element|value:System.String
83
+ url|uri|
84
+ uuid|uri|
85
+ xhtml|Element|extension:Extension;value:System.String`