fhir_dstu2_models 1.1.1 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (149) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +1 -1
  3. data/.github/workflows/ruby.yml +2 -1
  4. data/.rubocop.yml +7 -1
  5. data/.rubocop_todo.yml +56 -161
  6. data/.ruby-version +1 -0
  7. data/.simplecov +1 -5
  8. data/.tool-versions +1 -0
  9. data/Gemfile.lock +37 -35
  10. data/Guardfile +1 -1
  11. data/fhir_dstu2_models.gemspec +2 -1
  12. data/lib/fhir_dstu2_models/bootstrap/definitions.rb +18 -4
  13. data/lib/fhir_dstu2_models/bootstrap/field.rb +2 -2
  14. data/lib/fhir_dstu2_models/bootstrap/generator.rb +6 -4
  15. data/lib/fhir_dstu2_models/bootstrap/hashable.rb +6 -5
  16. data/lib/fhir_dstu2_models/bootstrap/json.rb +2 -2
  17. data/lib/fhir_dstu2_models/bootstrap/model.rb +45 -32
  18. data/lib/fhir_dstu2_models/bootstrap/preprocess.rb +19 -11
  19. data/lib/fhir_dstu2_models/bootstrap/xml.rb +9 -7
  20. data/lib/fhir_dstu2_models/deprecate.rb +1 -0
  21. data/lib/fhir_dstu2_models/fhir/metadata.rb +19 -21
  22. data/lib/fhir_dstu2_models/fhir/resources/Account.rb +20 -20
  23. data/lib/fhir_dstu2_models/fhir/resources/AllergyIntolerance.rb +34 -34
  24. data/lib/fhir_dstu2_models/fhir/resources/Appointment.rb +28 -28
  25. data/lib/fhir_dstu2_models/fhir/resources/AppointmentResponse.rb +17 -17
  26. data/lib/fhir_dstu2_models/fhir/resources/AuditEvent.rb +66 -66
  27. data/lib/fhir_dstu2_models/fhir/resources/Basic.rb +14 -14
  28. data/lib/fhir_dstu2_models/fhir/resources/Binary.rb +7 -7
  29. data/lib/fhir_dstu2_models/fhir/resources/BodySite.rb +15 -15
  30. data/lib/fhir_dstu2_models/fhir/resources/Bundle.rb +45 -45
  31. data/lib/fhir_dstu2_models/fhir/resources/CarePlan.rb +63 -63
  32. data/lib/fhir_dstu2_models/fhir/resources/Claim.rb +118 -118
  33. data/lib/fhir_dstu2_models/fhir/resources/ClaimResponse.rb +122 -124
  34. data/lib/fhir_dstu2_models/fhir/resources/ClinicalImpression.rb +42 -42
  35. data/lib/fhir_dstu2_models/fhir/resources/Communication.rb +28 -28
  36. data/lib/fhir_dstu2_models/fhir/resources/CommunicationRequest.rb +30 -30
  37. data/lib/fhir_dstu2_models/fhir/resources/Composition.rb +46 -46
  38. data/lib/fhir_dstu2_models/fhir/resources/ConceptMap.rb +53 -53
  39. data/lib/fhir_dstu2_models/fhir/resources/Condition.rb +44 -44
  40. data/lib/fhir_dstu2_models/fhir/resources/Conformance.rb +138 -138
  41. data/lib/fhir_dstu2_models/fhir/resources/Contract.rb +98 -98
  42. data/lib/fhir_dstu2_models/fhir/resources/Coverage.rb +23 -23
  43. data/lib/fhir_dstu2_models/fhir/resources/DataElement.rb +35 -35
  44. data/lib/fhir_dstu2_models/fhir/resources/DetectedIssue.rb +25 -25
  45. data/lib/fhir_dstu2_models/fhir/resources/Device.rb +25 -25
  46. data/lib/fhir_dstu2_models/fhir/resources/DeviceComponent.rb +25 -25
  47. data/lib/fhir_dstu2_models/fhir/resources/DeviceMetric.rb +25 -25
  48. data/lib/fhir_dstu2_models/fhir/resources/DeviceUseRequest.rb +25 -25
  49. data/lib/fhir_dstu2_models/fhir/resources/DeviceUseStatement.rb +21 -21
  50. data/lib/fhir_dstu2_models/fhir/resources/DiagnosticOrder.rb +36 -36
  51. data/lib/fhir_dstu2_models/fhir/resources/DiagnosticReport.rb +32 -32
  52. data/lib/fhir_dstu2_models/fhir/resources/DocumentManifest.rb +31 -31
  53. data/lib/fhir_dstu2_models/fhir/resources/DocumentReference.rb +51 -51
  54. data/lib/fhir_dstu2_models/fhir/resources/DomainResource.rb +12 -12
  55. data/lib/fhir_dstu2_models/fhir/resources/EligibilityRequest.rb +16 -16
  56. data/lib/fhir_dstu2_models/fhir/resources/EligibilityResponse.rb +19 -19
  57. data/lib/fhir_dstu2_models/fhir/resources/Encounter.rb +59 -59
  58. data/lib/fhir_dstu2_models/fhir/resources/EnrollmentRequest.rb +19 -19
  59. data/lib/fhir_dstu2_models/fhir/resources/EnrollmentResponse.rb +19 -19
  60. data/lib/fhir_dstu2_models/fhir/resources/EpisodeOfCare.rb +31 -31
  61. data/lib/fhir_dstu2_models/fhir/resources/ExplanationOfBenefit.rb +19 -19
  62. data/lib/fhir_dstu2_models/fhir/resources/FamilyMemberHistory.rb +39 -39
  63. data/lib/fhir_dstu2_models/fhir/resources/Flag.rb +17 -17
  64. data/lib/fhir_dstu2_models/fhir/resources/Goal.rb +30 -30
  65. data/lib/fhir_dstu2_models/fhir/resources/Group.rb +33 -33
  66. data/lib/fhir_dstu2_models/fhir/resources/HealthcareService.rb +48 -48
  67. data/lib/fhir_dstu2_models/fhir/resources/ImagingObjectSelection.rb +41 -41
  68. data/lib/fhir_dstu2_models/fhir/resources/ImagingStudy.rb +48 -48
  69. data/lib/fhir_dstu2_models/fhir/resources/Immunization.rb +52 -52
  70. data/lib/fhir_dstu2_models/fhir/resources/ImmunizationRecommendation.rb +35 -35
  71. data/lib/fhir_dstu2_models/fhir/resources/ImplementationGuide.rb +67 -67
  72. data/lib/fhir_dstu2_models/fhir/resources/List.rb +29 -29
  73. data/lib/fhir_dstu2_models/fhir/resources/Location.rb +27 -27
  74. data/lib/fhir_dstu2_models/fhir/resources/Media.rb +21 -21
  75. data/lib/fhir_dstu2_models/fhir/resources/Medication.rb +40 -40
  76. data/lib/fhir_dstu2_models/fhir/resources/MedicationAdministration.rb +36 -36
  77. data/lib/fhir_dstu2_models/fhir/resources/MedicationDispense.rb +49 -49
  78. data/lib/fhir_dstu2_models/fhir/resources/MedicationOrder.rb +57 -57
  79. data/lib/fhir_dstu2_models/fhir/resources/MedicationStatement.rb +41 -41
  80. data/lib/fhir_dstu2_models/fhir/resources/MessageHeader.rb +40 -40
  81. data/lib/fhir_dstu2_models/fhir/resources/NamingSystem.rb +34 -34
  82. data/lib/fhir_dstu2_models/fhir/resources/NutritionOrder.rb +67 -67
  83. data/lib/fhir_dstu2_models/fhir/resources/Observation.rb +68 -68
  84. data/lib/fhir_dstu2_models/fhir/resources/OperationDefinition.rb +51 -51
  85. data/lib/fhir_dstu2_models/fhir/resources/OperationOutcome.rb +21 -21
  86. data/lib/fhir_dstu2_models/fhir/resources/Order.rb +23 -23
  87. data/lib/fhir_dstu2_models/fhir/resources/OrderResponse.rb +16 -16
  88. data/lib/fhir_dstu2_models/fhir/resources/Organization.rb +24 -24
  89. data/lib/fhir_dstu2_models/fhir/resources/Parameters.rb +48 -48
  90. data/lib/fhir_dstu2_models/fhir/resources/Patient.rb +54 -54
  91. data/lib/fhir_dstu2_models/fhir/resources/PaymentNotice.rb +19 -19
  92. data/lib/fhir_dstu2_models/fhir/resources/PaymentReconciliation.rb +39 -39
  93. data/lib/fhir_dstu2_models/fhir/resources/Person.rb +24 -24
  94. data/lib/fhir_dstu2_models/fhir/resources/Practitioner.rb +36 -36
  95. data/lib/fhir_dstu2_models/fhir/resources/Procedure.rb +42 -42
  96. data/lib/fhir_dstu2_models/fhir/resources/ProcedureRequest.rb +27 -27
  97. data/lib/fhir_dstu2_models/fhir/resources/ProcessRequest.rb +29 -29
  98. data/lib/fhir_dstu2_models/fhir/resources/ProcessResponse.rb +27 -27
  99. data/lib/fhir_dstu2_models/fhir/resources/Provenance.rb +39 -39
  100. data/lib/fhir_dstu2_models/fhir/resources/Questionnaire.rb +40 -40
  101. data/lib/fhir_dstu2_models/fhir/resources/QuestionnaireResponse.rb +50 -50
  102. data/lib/fhir_dstu2_models/fhir/resources/ReferralRequest.rb +25 -25
  103. data/lib/fhir_dstu2_models/fhir/resources/RelatedPerson.rb +19 -19
  104. data/lib/fhir_dstu2_models/fhir/resources/Resource.rb +5 -5
  105. data/lib/fhir_dstu2_models/fhir/resources/RiskAssessment.rb +30 -30
  106. data/lib/fhir_dstu2_models/fhir/resources/Schedule.rb +14 -14
  107. data/lib/fhir_dstu2_models/fhir/resources/SearchParameter.rb +29 -29
  108. data/lib/fhir_dstu2_models/fhir/resources/Slot.rb +17 -17
  109. data/lib/fhir_dstu2_models/fhir/resources/Specimen.rb +45 -45
  110. data/lib/fhir_dstu2_models/fhir/resources/StructureDefinition.rb +54 -54
  111. data/lib/fhir_dstu2_models/fhir/resources/Subscription.rb +24 -24
  112. data/lib/fhir_dstu2_models/fhir/resources/Substance.rb +26 -26
  113. data/lib/fhir_dstu2_models/fhir/resources/SupplyDelivery.rb +20 -20
  114. data/lib/fhir_dstu2_models/fhir/resources/SupplyRequest.rb +25 -25
  115. data/lib/fhir_dstu2_models/fhir/resources/TestScript.rb +140 -140
  116. data/lib/fhir_dstu2_models/fhir/resources/ValueSet.rb +108 -108
  117. data/lib/fhir_dstu2_models/fhir/resources/VisionPrescription.rb +35 -35
  118. data/lib/fhir_dstu2_models/fhir/types/Address.rb +16 -16
  119. data/lib/fhir_dstu2_models/fhir/types/Annotation.rb +10 -10
  120. data/lib/fhir_dstu2_models/fhir/types/Attachment.rb +14 -14
  121. data/lib/fhir_dstu2_models/fhir/types/BackboneElement.rb +7 -7
  122. data/lib/fhir_dstu2_models/fhir/types/CodeableConcept.rb +8 -8
  123. data/lib/fhir_dstu2_models/fhir/types/Coding.rb +11 -11
  124. data/lib/fhir_dstu2_models/fhir/types/ContactPoint.rb +11 -11
  125. data/lib/fhir_dstu2_models/fhir/types/Element.rb +3 -3
  126. data/lib/fhir_dstu2_models/fhir/types/ElementDefinition.rb +263 -263
  127. data/lib/fhir_dstu2_models/fhir/types/Extension.rb +40 -40
  128. data/lib/fhir_dstu2_models/fhir/types/HumanName.rb +13 -13
  129. data/lib/fhir_dstu2_models/fhir/types/Identifier.rb +12 -12
  130. data/lib/fhir_dstu2_models/fhir/types/Meta.rb +11 -11
  131. data/lib/fhir_dstu2_models/fhir/types/Narrative.rb +8 -8
  132. data/lib/fhir_dstu2_models/fhir/types/Period.rb +8 -8
  133. data/lib/fhir_dstu2_models/fhir/types/Quantity.rb +11 -11
  134. data/lib/fhir_dstu2_models/fhir/types/Range.rb +8 -8
  135. data/lib/fhir_dstu2_models/fhir/types/Ratio.rb +8 -8
  136. data/lib/fhir_dstu2_models/fhir/types/Reference.rb +5 -5
  137. data/lib/fhir_dstu2_models/fhir/types/SampledData.rb +13 -13
  138. data/lib/fhir_dstu2_models/fhir/types/Signature.rb +12 -12
  139. data/lib/fhir_dstu2_models/fhir/types/Timing.rb +24 -24
  140. data/lib/fhir_dstu2_models/fhir.rb +7 -6
  141. data/lib/fhir_dstu2_models/fhir_ext/element_definition.rb +3 -0
  142. data/lib/fhir_dstu2_models/fhir_ext/structure_definition.rb +19 -14
  143. data/lib/fhir_dstu2_models/fhir_ext/structure_definition_compare.rb +10 -0
  144. data/lib/fhir_dstu2_models/fhir_ext/structure_definition_finding.rb +2 -2
  145. data/lib/fhir_dstu2_models/fluentpath/evaluate.rb +18 -11
  146. data/lib/fhir_dstu2_models/fluentpath/expression.rb +3 -5
  147. data/lib/fhir_dstu2_models/fluentpath/parse.rb +7 -4
  148. data/lib/fhir_dstu2_models/version.rb +1 -1
  149. metadata +11 -9
@@ -13,234 +13,234 @@ module FHIR
13
13
  'minValue' => ['boolean', 'integer', 'decimal', 'base64Binary', 'instant', 'string', 'uri', 'date', 'dateTime', 'time', 'code', 'oid', 'id', 'unsignedInt', 'positiveInt', 'markdown', 'Annotation', 'Attachment', 'Identifier', 'CodeableConcept', 'Coding', 'Quantity', 'Range', 'Period', 'Ratio', 'SampledData', 'Signature', 'HumanName', 'Address', 'ContactPoint', 'Timing', 'Reference', 'Meta'],
14
14
  'maxValue' => ['boolean', 'integer', 'decimal', 'base64Binary', 'instant', 'string', 'uri', 'date', 'dateTime', 'time', 'code', 'oid', 'id', 'unsignedInt', 'positiveInt', 'markdown', 'Annotation', 'Attachment', 'Identifier', 'CodeableConcept', 'Coding', 'Quantity', 'Range', 'Period', 'Ratio', 'SampledData', 'Signature', 'HumanName', 'Address', 'ContactPoint', 'Timing', 'Reference', 'Meta']
15
15
  }
16
- SEARCH_PARAMS =
17
- METADATA = {
18
- 'id' => {'type'=>'id', 'path'=>'ElementDefinition.id', 'min'=>0, 'max'=>1},
19
- 'extension' => {'type'=>'Extension', 'path'=>'ElementDefinition.extension', 'min'=>0, 'max'=>Float::INFINITY},
20
- 'path' => {'type'=>'string', 'path'=>'ElementDefinition.path', 'min'=>1, 'max'=>1},
21
- 'representation' => {'valid_codes'=>{'http://hl7.org/fhir/property-representation'=>['xmlAttr']}, 'type'=>'code', 'path'=>'ElementDefinition.representation', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/property-representation'}},
22
- 'name' => {'type'=>'string', 'path'=>'ElementDefinition.name', 'min'=>0, 'max'=>1},
23
- 'label' => {'type'=>'string', 'path'=>'ElementDefinition.label', 'min'=>0, 'max'=>1},
24
- 'code' => {'valid_codes'=>{'http://loinc.org'=>[]}, 'type'=>'Coding', 'path'=>'ElementDefinition.code', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/observation-codes'}},
25
- 'slicing' => {'type'=>'ElementDefinition::Slicing', 'path'=>'ElementDefinition.slicing', 'min'=>0, 'max'=>1},
26
- 'short' => {'type'=>'string', 'path'=>'ElementDefinition.short', 'min'=>0, 'max'=>1},
27
- 'definition' => {'type'=>'markdown', 'path'=>'ElementDefinition.definition', 'min'=>0, 'max'=>1},
28
- 'comments' => {'type'=>'markdown', 'path'=>'ElementDefinition.comments', 'min'=>0, 'max'=>1},
29
- 'requirements' => {'type'=>'markdown', 'path'=>'ElementDefinition.requirements', 'min'=>0, 'max'=>1},
30
- 'alias' => {'type'=>'string', 'path'=>'ElementDefinition.alias', 'min'=>0, 'max'=>Float::INFINITY},
31
- 'min' => {'type'=>'integer', 'path'=>'ElementDefinition.min', 'min'=>0, 'max'=>1},
32
- 'max' => {'type'=>'string', 'path'=>'ElementDefinition.max', 'min'=>0, 'max'=>1},
33
- 'base' => {'type'=>'ElementDefinition::Base', 'path'=>'ElementDefinition.base', 'min'=>0, 'max'=>1},
34
- 'type' => {'type'=>'ElementDefinition::Type', 'path'=>'ElementDefinition.type', 'min'=>0, 'max'=>Float::INFINITY},
35
- 'nameReference' => {'type'=>'string', 'path'=>'ElementDefinition.nameReference', 'min'=>0, 'max'=>1},
36
- 'defaultValueBoolean' => {'type'=>'boolean', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
37
- 'defaultValueInteger' => {'type'=>'integer', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
38
- 'defaultValueDecimal' => {'type'=>'decimal', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
39
- 'defaultValueBase64Binary' => {'type'=>'base64Binary', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
40
- 'defaultValueInstant' => {'type'=>'instant', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
41
- 'defaultValueString' => {'type'=>'string', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
42
- 'defaultValueUri' => {'type'=>'uri', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
43
- 'defaultValueDate' => {'type'=>'date', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
44
- 'defaultValueDateTime' => {'type'=>'dateTime', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
45
- 'defaultValueTime' => {'type'=>'time', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
46
- 'defaultValueCode' => {'type'=>'code', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
47
- 'defaultValueOid' => {'type'=>'oid', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
48
- 'defaultValueId' => {'type'=>'id', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
49
- 'defaultValueUnsignedInt' => {'type'=>'unsignedInt', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
50
- 'defaultValuePositiveInt' => {'type'=>'positiveInt', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
51
- 'defaultValueMarkdown' => {'type'=>'markdown', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
52
- 'defaultValueAnnotation' => {'type'=>'Annotation', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
53
- 'defaultValueAttachment' => {'type'=>'Attachment', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
54
- 'defaultValueIdentifier' => {'type'=>'Identifier', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
55
- 'defaultValueCodeableConcept' => {'type'=>'CodeableConcept', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
56
- 'defaultValueCoding' => {'type'=>'Coding', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
57
- 'defaultValueQuantity' => {'type'=>'Quantity', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
58
- 'defaultValueRange' => {'type'=>'Range', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
59
- 'defaultValuePeriod' => {'type'=>'Period', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
60
- 'defaultValueRatio' => {'type'=>'Ratio', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
61
- 'defaultValueSampledData' => {'type'=>'SampledData', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
62
- 'defaultValueSignature' => {'type'=>'Signature', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
63
- 'defaultValueHumanName' => {'type'=>'HumanName', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
64
- 'defaultValueAddress' => {'type'=>'Address', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
65
- 'defaultValueContactPoint' => {'type'=>'ContactPoint', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
66
- 'defaultValueTiming' => {'type'=>'Timing', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
67
- 'defaultValueReference' => {'type'=>'Reference', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
68
- 'defaultValueMeta' => {'type'=>'Meta', 'path'=>'ElementDefinition.defaultValue[x]', 'min'=>0, 'max'=>1},
69
- 'meaningWhenMissing' => {'type'=>'markdown', 'path'=>'ElementDefinition.meaningWhenMissing', 'min'=>0, 'max'=>1},
70
- 'fixedBoolean' => {'type'=>'boolean', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
71
- 'fixedInteger' => {'type'=>'integer', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
72
- 'fixedDecimal' => {'type'=>'decimal', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
73
- 'fixedBase64Binary' => {'type'=>'base64Binary', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
74
- 'fixedInstant' => {'type'=>'instant', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
75
- 'fixedString' => {'type'=>'string', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
76
- 'fixedUri' => {'type'=>'uri', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
77
- 'fixedDate' => {'type'=>'date', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
78
- 'fixedDateTime' => {'type'=>'dateTime', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
79
- 'fixedTime' => {'type'=>'time', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
80
- 'fixedCode' => {'type'=>'code', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
81
- 'fixedOid' => {'type'=>'oid', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
82
- 'fixedId' => {'type'=>'id', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
83
- 'fixedUnsignedInt' => {'type'=>'unsignedInt', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
84
- 'fixedPositiveInt' => {'type'=>'positiveInt', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
85
- 'fixedMarkdown' => {'type'=>'markdown', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
86
- 'fixedAnnotation' => {'type'=>'Annotation', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
87
- 'fixedAttachment' => {'type'=>'Attachment', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
88
- 'fixedIdentifier' => {'type'=>'Identifier', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
89
- 'fixedCodeableConcept' => {'type'=>'CodeableConcept', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
90
- 'fixedCoding' => {'type'=>'Coding', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
91
- 'fixedQuantity' => {'type'=>'Quantity', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
92
- 'fixedRange' => {'type'=>'Range', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
93
- 'fixedPeriod' => {'type'=>'Period', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
94
- 'fixedRatio' => {'type'=>'Ratio', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
95
- 'fixedSampledData' => {'type'=>'SampledData', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
96
- 'fixedSignature' => {'type'=>'Signature', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
97
- 'fixedHumanName' => {'type'=>'HumanName', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
98
- 'fixedAddress' => {'type'=>'Address', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
99
- 'fixedContactPoint' => {'type'=>'ContactPoint', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
100
- 'fixedTiming' => {'type'=>'Timing', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
101
- 'fixedReference' => {'type'=>'Reference', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
102
- 'fixedMeta' => {'type'=>'Meta', 'path'=>'ElementDefinition.fixed[x]', 'min'=>0, 'max'=>1},
103
- 'patternBoolean' => {'type'=>'boolean', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
104
- 'patternInteger' => {'type'=>'integer', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
105
- 'patternDecimal' => {'type'=>'decimal', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
106
- 'patternBase64Binary' => {'type'=>'base64Binary', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
107
- 'patternInstant' => {'type'=>'instant', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
108
- 'patternString' => {'type'=>'string', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
109
- 'patternUri' => {'type'=>'uri', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
110
- 'patternDate' => {'type'=>'date', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
111
- 'patternDateTime' => {'type'=>'dateTime', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
112
- 'patternTime' => {'type'=>'time', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
113
- 'patternCode' => {'type'=>'code', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
114
- 'patternOid' => {'type'=>'oid', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
115
- 'patternId' => {'type'=>'id', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
116
- 'patternUnsignedInt' => {'type'=>'unsignedInt', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
117
- 'patternPositiveInt' => {'type'=>'positiveInt', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
118
- 'patternMarkdown' => {'type'=>'markdown', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
119
- 'patternAnnotation' => {'type'=>'Annotation', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
120
- 'patternAttachment' => {'type'=>'Attachment', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
121
- 'patternIdentifier' => {'type'=>'Identifier', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
122
- 'patternCodeableConcept' => {'type'=>'CodeableConcept', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
123
- 'patternCoding' => {'type'=>'Coding', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
124
- 'patternQuantity' => {'type'=>'Quantity', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
125
- 'patternRange' => {'type'=>'Range', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
126
- 'patternPeriod' => {'type'=>'Period', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
127
- 'patternRatio' => {'type'=>'Ratio', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
128
- 'patternSampledData' => {'type'=>'SampledData', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
129
- 'patternSignature' => {'type'=>'Signature', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
130
- 'patternHumanName' => {'type'=>'HumanName', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
131
- 'patternAddress' => {'type'=>'Address', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
132
- 'patternContactPoint' => {'type'=>'ContactPoint', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
133
- 'patternTiming' => {'type'=>'Timing', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
134
- 'patternReference' => {'type'=>'Reference', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
135
- 'patternMeta' => {'type'=>'Meta', 'path'=>'ElementDefinition.pattern[x]', 'min'=>0, 'max'=>1},
136
- 'exampleBoolean' => {'type'=>'boolean', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
137
- 'exampleInteger' => {'type'=>'integer', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
138
- 'exampleDecimal' => {'type'=>'decimal', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
139
- 'exampleBase64Binary' => {'type'=>'base64Binary', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
140
- 'exampleInstant' => {'type'=>'instant', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
141
- 'exampleString' => {'type'=>'string', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
142
- 'exampleUri' => {'type'=>'uri', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
143
- 'exampleDate' => {'type'=>'date', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
144
- 'exampleDateTime' => {'type'=>'dateTime', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
145
- 'exampleTime' => {'type'=>'time', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
146
- 'exampleCode' => {'type'=>'code', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
147
- 'exampleOid' => {'type'=>'oid', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
148
- 'exampleId' => {'type'=>'id', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
149
- 'exampleUnsignedInt' => {'type'=>'unsignedInt', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
150
- 'examplePositiveInt' => {'type'=>'positiveInt', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
151
- 'exampleMarkdown' => {'type'=>'markdown', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
152
- 'exampleAnnotation' => {'type'=>'Annotation', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
153
- 'exampleAttachment' => {'type'=>'Attachment', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
154
- 'exampleIdentifier' => {'type'=>'Identifier', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
155
- 'exampleCodeableConcept' => {'type'=>'CodeableConcept', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
156
- 'exampleCoding' => {'type'=>'Coding', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
157
- 'exampleQuantity' => {'type'=>'Quantity', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
158
- 'exampleRange' => {'type'=>'Range', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
159
- 'examplePeriod' => {'type'=>'Period', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
160
- 'exampleRatio' => {'type'=>'Ratio', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
161
- 'exampleSampledData' => {'type'=>'SampledData', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
162
- 'exampleSignature' => {'type'=>'Signature', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
163
- 'exampleHumanName' => {'type'=>'HumanName', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
164
- 'exampleAddress' => {'type'=>'Address', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
165
- 'exampleContactPoint' => {'type'=>'ContactPoint', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
166
- 'exampleTiming' => {'type'=>'Timing', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
167
- 'exampleReference' => {'type'=>'Reference', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
168
- 'exampleMeta' => {'type'=>'Meta', 'path'=>'ElementDefinition.example[x]', 'min'=>0, 'max'=>1},
169
- 'minValueBoolean' => {'type'=>'boolean', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
170
- 'minValueInteger' => {'type'=>'integer', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
171
- 'minValueDecimal' => {'type'=>'decimal', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
172
- 'minValueBase64Binary' => {'type'=>'base64Binary', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
173
- 'minValueInstant' => {'type'=>'instant', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
174
- 'minValueString' => {'type'=>'string', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
175
- 'minValueUri' => {'type'=>'uri', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
176
- 'minValueDate' => {'type'=>'date', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
177
- 'minValueDateTime' => {'type'=>'dateTime', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
178
- 'minValueTime' => {'type'=>'time', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
179
- 'minValueCode' => {'type'=>'code', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
180
- 'minValueOid' => {'type'=>'oid', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
181
- 'minValueId' => {'type'=>'id', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
182
- 'minValueUnsignedInt' => {'type'=>'unsignedInt', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
183
- 'minValuePositiveInt' => {'type'=>'positiveInt', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
184
- 'minValueMarkdown' => {'type'=>'markdown', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
185
- 'minValueAnnotation' => {'type'=>'Annotation', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
186
- 'minValueAttachment' => {'type'=>'Attachment', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
187
- 'minValueIdentifier' => {'type'=>'Identifier', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
188
- 'minValueCodeableConcept' => {'type'=>'CodeableConcept', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
189
- 'minValueCoding' => {'type'=>'Coding', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
190
- 'minValueQuantity' => {'type'=>'Quantity', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
191
- 'minValueRange' => {'type'=>'Range', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
192
- 'minValuePeriod' => {'type'=>'Period', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
193
- 'minValueRatio' => {'type'=>'Ratio', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
194
- 'minValueSampledData' => {'type'=>'SampledData', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
195
- 'minValueSignature' => {'type'=>'Signature', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
196
- 'minValueHumanName' => {'type'=>'HumanName', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
197
- 'minValueAddress' => {'type'=>'Address', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
198
- 'minValueContactPoint' => {'type'=>'ContactPoint', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
199
- 'minValueTiming' => {'type'=>'Timing', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
200
- 'minValueReference' => {'type'=>'Reference', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
201
- 'minValueMeta' => {'type'=>'Meta', 'path'=>'ElementDefinition.minValue[x]', 'min'=>0, 'max'=>1},
202
- 'maxValueBoolean' => {'type'=>'boolean', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
203
- 'maxValueInteger' => {'type'=>'integer', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
204
- 'maxValueDecimal' => {'type'=>'decimal', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
205
- 'maxValueBase64Binary' => {'type'=>'base64Binary', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
206
- 'maxValueInstant' => {'type'=>'instant', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
207
- 'maxValueString' => {'type'=>'string', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
208
- 'maxValueUri' => {'type'=>'uri', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
209
- 'maxValueDate' => {'type'=>'date', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
210
- 'maxValueDateTime' => {'type'=>'dateTime', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
211
- 'maxValueTime' => {'type'=>'time', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
212
- 'maxValueCode' => {'type'=>'code', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
213
- 'maxValueOid' => {'type'=>'oid', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
214
- 'maxValueId' => {'type'=>'id', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
215
- 'maxValueUnsignedInt' => {'type'=>'unsignedInt', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
216
- 'maxValuePositiveInt' => {'type'=>'positiveInt', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
217
- 'maxValueMarkdown' => {'type'=>'markdown', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
218
- 'maxValueAnnotation' => {'type'=>'Annotation', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
219
- 'maxValueAttachment' => {'type'=>'Attachment', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
220
- 'maxValueIdentifier' => {'type'=>'Identifier', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
221
- 'maxValueCodeableConcept' => {'type'=>'CodeableConcept', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
222
- 'maxValueCoding' => {'type'=>'Coding', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
223
- 'maxValueQuantity' => {'type'=>'Quantity', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
224
- 'maxValueRange' => {'type'=>'Range', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
225
- 'maxValuePeriod' => {'type'=>'Period', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
226
- 'maxValueRatio' => {'type'=>'Ratio', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
227
- 'maxValueSampledData' => {'type'=>'SampledData', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
228
- 'maxValueSignature' => {'type'=>'Signature', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
229
- 'maxValueHumanName' => {'type'=>'HumanName', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
230
- 'maxValueAddress' => {'type'=>'Address', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
231
- 'maxValueContactPoint' => {'type'=>'ContactPoint', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
232
- 'maxValueTiming' => {'type'=>'Timing', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
233
- 'maxValueReference' => {'type'=>'Reference', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
234
- 'maxValueMeta' => {'type'=>'Meta', 'path'=>'ElementDefinition.maxValue[x]', 'min'=>0, 'max'=>1},
235
- 'maxLength' => {'type'=>'integer', 'path'=>'ElementDefinition.maxLength', 'min'=>0, 'max'=>1},
236
- 'condition' => {'type'=>'id', 'path'=>'ElementDefinition.condition', 'min'=>0, 'max'=>Float::INFINITY},
237
- 'constraint' => {'type'=>'ElementDefinition::Constraint', 'path'=>'ElementDefinition.constraint', 'min'=>0, 'max'=>Float::INFINITY},
238
- 'mustSupport' => {'type'=>'boolean', 'path'=>'ElementDefinition.mustSupport', 'min'=>0, 'max'=>1},
239
- 'isModifier' => {'type'=>'boolean', 'path'=>'ElementDefinition.isModifier', 'min'=>0, 'max'=>1},
240
- 'isSummary' => {'type'=>'boolean', 'path'=>'ElementDefinition.isSummary', 'min'=>0, 'max'=>1},
241
- 'binding' => {'type'=>'ElementDefinition::Binding', 'path'=>'ElementDefinition.binding', 'min'=>0, 'max'=>1},
242
- 'mapping' => {'type'=>'ElementDefinition::Mapping', 'path'=>'ElementDefinition.mapping', 'min'=>0, 'max'=>Float::INFINITY}
243
- }
16
+ SEARCH_PARAMS =
17
+ METADATA = {
18
+ 'id' => { 'type' => 'id', 'path' => 'ElementDefinition.id', 'min' => 0, 'max' => 1 },
19
+ 'extension' => { 'type' => 'Extension', 'path' => 'ElementDefinition.extension', 'min' => 0, 'max' => Float::INFINITY },
20
+ 'path' => { 'type' => 'string', 'path' => 'ElementDefinition.path', 'min' => 1, 'max' => 1 },
21
+ 'representation' => { 'valid_codes' => { 'http://hl7.org/fhir/property-representation' => ['xmlAttr'] }, 'type' => 'code', 'path' => 'ElementDefinition.representation', 'min' => 0, 'max' => Float::INFINITY, 'binding' => { 'strength' => 'required', 'uri' => 'http://hl7.org/fhir/ValueSet/property-representation' } },
22
+ 'name' => { 'type' => 'string', 'path' => 'ElementDefinition.name', 'min' => 0, 'max' => 1 },
23
+ 'label' => { 'type' => 'string', 'path' => 'ElementDefinition.label', 'min' => 0, 'max' => 1 },
24
+ 'code' => { 'valid_codes' => { 'http://loinc.org' => [] }, 'type' => 'Coding', 'path' => 'ElementDefinition.code', 'min' => 0, 'max' => Float::INFINITY, 'binding' => { 'strength' => 'example', 'uri' => 'http://hl7.org/fhir/ValueSet/observation-codes' } },
25
+ 'slicing' => { 'type' => 'ElementDefinition::Slicing', 'path' => 'ElementDefinition.slicing', 'min' => 0, 'max' => 1 },
26
+ 'short' => { 'type' => 'string', 'path' => 'ElementDefinition.short', 'min' => 0, 'max' => 1 },
27
+ 'definition' => { 'type' => 'markdown', 'path' => 'ElementDefinition.definition', 'min' => 0, 'max' => 1 },
28
+ 'comments' => { 'type' => 'markdown', 'path' => 'ElementDefinition.comments', 'min' => 0, 'max' => 1 },
29
+ 'requirements' => { 'type' => 'markdown', 'path' => 'ElementDefinition.requirements', 'min' => 0, 'max' => 1 },
30
+ 'alias' => { 'type' => 'string', 'path' => 'ElementDefinition.alias', 'min' => 0, 'max' => Float::INFINITY },
31
+ 'min' => { 'type' => 'integer', 'path' => 'ElementDefinition.min', 'min' => 0, 'max' => 1 },
32
+ 'max' => { 'type' => 'string', 'path' => 'ElementDefinition.max', 'min' => 0, 'max' => 1 },
33
+ 'base' => { 'type' => 'ElementDefinition::Base', 'path' => 'ElementDefinition.base', 'min' => 0, 'max' => 1 },
34
+ 'type' => { 'type' => 'ElementDefinition::Type', 'path' => 'ElementDefinition.type', 'min' => 0, 'max' => Float::INFINITY },
35
+ 'nameReference' => { 'type' => 'string', 'path' => 'ElementDefinition.nameReference', 'min' => 0, 'max' => 1 },
36
+ 'defaultValueBoolean' => { 'type' => 'boolean', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
37
+ 'defaultValueInteger' => { 'type' => 'integer', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
38
+ 'defaultValueDecimal' => { 'type' => 'decimal', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
39
+ 'defaultValueBase64Binary' => { 'type' => 'base64Binary', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
40
+ 'defaultValueInstant' => { 'type' => 'instant', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
41
+ 'defaultValueString' => { 'type' => 'string', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
42
+ 'defaultValueUri' => { 'type' => 'uri', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
43
+ 'defaultValueDate' => { 'type' => 'date', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
44
+ 'defaultValueDateTime' => { 'type' => 'dateTime', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
45
+ 'defaultValueTime' => { 'type' => 'time', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
46
+ 'defaultValueCode' => { 'type' => 'code', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
47
+ 'defaultValueOid' => { 'type' => 'oid', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
48
+ 'defaultValueId' => { 'type' => 'id', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
49
+ 'defaultValueUnsignedInt' => { 'type' => 'unsignedInt', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
50
+ 'defaultValuePositiveInt' => { 'type' => 'positiveInt', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
51
+ 'defaultValueMarkdown' => { 'type' => 'markdown', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
52
+ 'defaultValueAnnotation' => { 'type' => 'Annotation', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
53
+ 'defaultValueAttachment' => { 'type' => 'Attachment', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
54
+ 'defaultValueIdentifier' => { 'type' => 'Identifier', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
55
+ 'defaultValueCodeableConcept' => { 'type' => 'CodeableConcept', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
56
+ 'defaultValueCoding' => { 'type' => 'Coding', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
57
+ 'defaultValueQuantity' => { 'type' => 'Quantity', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
58
+ 'defaultValueRange' => { 'type' => 'Range', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
59
+ 'defaultValuePeriod' => { 'type' => 'Period', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
60
+ 'defaultValueRatio' => { 'type' => 'Ratio', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
61
+ 'defaultValueSampledData' => { 'type' => 'SampledData', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
62
+ 'defaultValueSignature' => { 'type' => 'Signature', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
63
+ 'defaultValueHumanName' => { 'type' => 'HumanName', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
64
+ 'defaultValueAddress' => { 'type' => 'Address', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
65
+ 'defaultValueContactPoint' => { 'type' => 'ContactPoint', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
66
+ 'defaultValueTiming' => { 'type' => 'Timing', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
67
+ 'defaultValueReference' => { 'type' => 'Reference', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
68
+ 'defaultValueMeta' => { 'type' => 'Meta', 'path' => 'ElementDefinition.defaultValue[x]', 'min' => 0, 'max' => 1 },
69
+ 'meaningWhenMissing' => { 'type' => 'markdown', 'path' => 'ElementDefinition.meaningWhenMissing', 'min' => 0, 'max' => 1 },
70
+ 'fixedBoolean' => { 'type' => 'boolean', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
71
+ 'fixedInteger' => { 'type' => 'integer', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
72
+ 'fixedDecimal' => { 'type' => 'decimal', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
73
+ 'fixedBase64Binary' => { 'type' => 'base64Binary', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
74
+ 'fixedInstant' => { 'type' => 'instant', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
75
+ 'fixedString' => { 'type' => 'string', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
76
+ 'fixedUri' => { 'type' => 'uri', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
77
+ 'fixedDate' => { 'type' => 'date', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
78
+ 'fixedDateTime' => { 'type' => 'dateTime', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
79
+ 'fixedTime' => { 'type' => 'time', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
80
+ 'fixedCode' => { 'type' => 'code', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
81
+ 'fixedOid' => { 'type' => 'oid', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
82
+ 'fixedId' => { 'type' => 'id', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
83
+ 'fixedUnsignedInt' => { 'type' => 'unsignedInt', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
84
+ 'fixedPositiveInt' => { 'type' => 'positiveInt', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
85
+ 'fixedMarkdown' => { 'type' => 'markdown', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
86
+ 'fixedAnnotation' => { 'type' => 'Annotation', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
87
+ 'fixedAttachment' => { 'type' => 'Attachment', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
88
+ 'fixedIdentifier' => { 'type' => 'Identifier', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
89
+ 'fixedCodeableConcept' => { 'type' => 'CodeableConcept', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
90
+ 'fixedCoding' => { 'type' => 'Coding', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
91
+ 'fixedQuantity' => { 'type' => 'Quantity', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
92
+ 'fixedRange' => { 'type' => 'Range', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
93
+ 'fixedPeriod' => { 'type' => 'Period', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
94
+ 'fixedRatio' => { 'type' => 'Ratio', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
95
+ 'fixedSampledData' => { 'type' => 'SampledData', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
96
+ 'fixedSignature' => { 'type' => 'Signature', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
97
+ 'fixedHumanName' => { 'type' => 'HumanName', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
98
+ 'fixedAddress' => { 'type' => 'Address', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
99
+ 'fixedContactPoint' => { 'type' => 'ContactPoint', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
100
+ 'fixedTiming' => { 'type' => 'Timing', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
101
+ 'fixedReference' => { 'type' => 'Reference', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
102
+ 'fixedMeta' => { 'type' => 'Meta', 'path' => 'ElementDefinition.fixed[x]', 'min' => 0, 'max' => 1 },
103
+ 'patternBoolean' => { 'type' => 'boolean', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
104
+ 'patternInteger' => { 'type' => 'integer', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
105
+ 'patternDecimal' => { 'type' => 'decimal', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
106
+ 'patternBase64Binary' => { 'type' => 'base64Binary', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
107
+ 'patternInstant' => { 'type' => 'instant', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
108
+ 'patternString' => { 'type' => 'string', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
109
+ 'patternUri' => { 'type' => 'uri', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
110
+ 'patternDate' => { 'type' => 'date', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
111
+ 'patternDateTime' => { 'type' => 'dateTime', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
112
+ 'patternTime' => { 'type' => 'time', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
113
+ 'patternCode' => { 'type' => 'code', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
114
+ 'patternOid' => { 'type' => 'oid', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
115
+ 'patternId' => { 'type' => 'id', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
116
+ 'patternUnsignedInt' => { 'type' => 'unsignedInt', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
117
+ 'patternPositiveInt' => { 'type' => 'positiveInt', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
118
+ 'patternMarkdown' => { 'type' => 'markdown', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
119
+ 'patternAnnotation' => { 'type' => 'Annotation', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
120
+ 'patternAttachment' => { 'type' => 'Attachment', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
121
+ 'patternIdentifier' => { 'type' => 'Identifier', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
122
+ 'patternCodeableConcept' => { 'type' => 'CodeableConcept', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
123
+ 'patternCoding' => { 'type' => 'Coding', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
124
+ 'patternQuantity' => { 'type' => 'Quantity', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
125
+ 'patternRange' => { 'type' => 'Range', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
126
+ 'patternPeriod' => { 'type' => 'Period', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
127
+ 'patternRatio' => { 'type' => 'Ratio', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
128
+ 'patternSampledData' => { 'type' => 'SampledData', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
129
+ 'patternSignature' => { 'type' => 'Signature', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
130
+ 'patternHumanName' => { 'type' => 'HumanName', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
131
+ 'patternAddress' => { 'type' => 'Address', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
132
+ 'patternContactPoint' => { 'type' => 'ContactPoint', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
133
+ 'patternTiming' => { 'type' => 'Timing', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
134
+ 'patternReference' => { 'type' => 'Reference', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
135
+ 'patternMeta' => { 'type' => 'Meta', 'path' => 'ElementDefinition.pattern[x]', 'min' => 0, 'max' => 1 },
136
+ 'exampleBoolean' => { 'type' => 'boolean', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
137
+ 'exampleInteger' => { 'type' => 'integer', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
138
+ 'exampleDecimal' => { 'type' => 'decimal', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
139
+ 'exampleBase64Binary' => { 'type' => 'base64Binary', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
140
+ 'exampleInstant' => { 'type' => 'instant', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
141
+ 'exampleString' => { 'type' => 'string', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
142
+ 'exampleUri' => { 'type' => 'uri', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
143
+ 'exampleDate' => { 'type' => 'date', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
144
+ 'exampleDateTime' => { 'type' => 'dateTime', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
145
+ 'exampleTime' => { 'type' => 'time', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
146
+ 'exampleCode' => { 'type' => 'code', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
147
+ 'exampleOid' => { 'type' => 'oid', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
148
+ 'exampleId' => { 'type' => 'id', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
149
+ 'exampleUnsignedInt' => { 'type' => 'unsignedInt', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
150
+ 'examplePositiveInt' => { 'type' => 'positiveInt', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
151
+ 'exampleMarkdown' => { 'type' => 'markdown', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
152
+ 'exampleAnnotation' => { 'type' => 'Annotation', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
153
+ 'exampleAttachment' => { 'type' => 'Attachment', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
154
+ 'exampleIdentifier' => { 'type' => 'Identifier', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
155
+ 'exampleCodeableConcept' => { 'type' => 'CodeableConcept', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
156
+ 'exampleCoding' => { 'type' => 'Coding', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
157
+ 'exampleQuantity' => { 'type' => 'Quantity', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
158
+ 'exampleRange' => { 'type' => 'Range', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
159
+ 'examplePeriod' => { 'type' => 'Period', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
160
+ 'exampleRatio' => { 'type' => 'Ratio', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
161
+ 'exampleSampledData' => { 'type' => 'SampledData', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
162
+ 'exampleSignature' => { 'type' => 'Signature', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
163
+ 'exampleHumanName' => { 'type' => 'HumanName', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
164
+ 'exampleAddress' => { 'type' => 'Address', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
165
+ 'exampleContactPoint' => { 'type' => 'ContactPoint', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
166
+ 'exampleTiming' => { 'type' => 'Timing', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
167
+ 'exampleReference' => { 'type' => 'Reference', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
168
+ 'exampleMeta' => { 'type' => 'Meta', 'path' => 'ElementDefinition.example[x]', 'min' => 0, 'max' => 1 },
169
+ 'minValueBoolean' => { 'type' => 'boolean', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
170
+ 'minValueInteger' => { 'type' => 'integer', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
171
+ 'minValueDecimal' => { 'type' => 'decimal', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
172
+ 'minValueBase64Binary' => { 'type' => 'base64Binary', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
173
+ 'minValueInstant' => { 'type' => 'instant', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
174
+ 'minValueString' => { 'type' => 'string', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
175
+ 'minValueUri' => { 'type' => 'uri', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
176
+ 'minValueDate' => { 'type' => 'date', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
177
+ 'minValueDateTime' => { 'type' => 'dateTime', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
178
+ 'minValueTime' => { 'type' => 'time', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
179
+ 'minValueCode' => { 'type' => 'code', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
180
+ 'minValueOid' => { 'type' => 'oid', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
181
+ 'minValueId' => { 'type' => 'id', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
182
+ 'minValueUnsignedInt' => { 'type' => 'unsignedInt', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
183
+ 'minValuePositiveInt' => { 'type' => 'positiveInt', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
184
+ 'minValueMarkdown' => { 'type' => 'markdown', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
185
+ 'minValueAnnotation' => { 'type' => 'Annotation', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
186
+ 'minValueAttachment' => { 'type' => 'Attachment', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
187
+ 'minValueIdentifier' => { 'type' => 'Identifier', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
188
+ 'minValueCodeableConcept' => { 'type' => 'CodeableConcept', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
189
+ 'minValueCoding' => { 'type' => 'Coding', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
190
+ 'minValueQuantity' => { 'type' => 'Quantity', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
191
+ 'minValueRange' => { 'type' => 'Range', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
192
+ 'minValuePeriod' => { 'type' => 'Period', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
193
+ 'minValueRatio' => { 'type' => 'Ratio', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
194
+ 'minValueSampledData' => { 'type' => 'SampledData', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
195
+ 'minValueSignature' => { 'type' => 'Signature', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
196
+ 'minValueHumanName' => { 'type' => 'HumanName', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
197
+ 'minValueAddress' => { 'type' => 'Address', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
198
+ 'minValueContactPoint' => { 'type' => 'ContactPoint', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
199
+ 'minValueTiming' => { 'type' => 'Timing', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
200
+ 'minValueReference' => { 'type' => 'Reference', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
201
+ 'minValueMeta' => { 'type' => 'Meta', 'path' => 'ElementDefinition.minValue[x]', 'min' => 0, 'max' => 1 },
202
+ 'maxValueBoolean' => { 'type' => 'boolean', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
203
+ 'maxValueInteger' => { 'type' => 'integer', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
204
+ 'maxValueDecimal' => { 'type' => 'decimal', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
205
+ 'maxValueBase64Binary' => { 'type' => 'base64Binary', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
206
+ 'maxValueInstant' => { 'type' => 'instant', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
207
+ 'maxValueString' => { 'type' => 'string', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
208
+ 'maxValueUri' => { 'type' => 'uri', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
209
+ 'maxValueDate' => { 'type' => 'date', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
210
+ 'maxValueDateTime' => { 'type' => 'dateTime', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
211
+ 'maxValueTime' => { 'type' => 'time', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
212
+ 'maxValueCode' => { 'type' => 'code', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
213
+ 'maxValueOid' => { 'type' => 'oid', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
214
+ 'maxValueId' => { 'type' => 'id', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
215
+ 'maxValueUnsignedInt' => { 'type' => 'unsignedInt', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
216
+ 'maxValuePositiveInt' => { 'type' => 'positiveInt', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
217
+ 'maxValueMarkdown' => { 'type' => 'markdown', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
218
+ 'maxValueAnnotation' => { 'type' => 'Annotation', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
219
+ 'maxValueAttachment' => { 'type' => 'Attachment', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
220
+ 'maxValueIdentifier' => { 'type' => 'Identifier', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
221
+ 'maxValueCodeableConcept' => { 'type' => 'CodeableConcept', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
222
+ 'maxValueCoding' => { 'type' => 'Coding', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
223
+ 'maxValueQuantity' => { 'type' => 'Quantity', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
224
+ 'maxValueRange' => { 'type' => 'Range', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
225
+ 'maxValuePeriod' => { 'type' => 'Period', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
226
+ 'maxValueRatio' => { 'type' => 'Ratio', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
227
+ 'maxValueSampledData' => { 'type' => 'SampledData', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
228
+ 'maxValueSignature' => { 'type' => 'Signature', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
229
+ 'maxValueHumanName' => { 'type' => 'HumanName', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
230
+ 'maxValueAddress' => { 'type' => 'Address', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
231
+ 'maxValueContactPoint' => { 'type' => 'ContactPoint', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
232
+ 'maxValueTiming' => { 'type' => 'Timing', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
233
+ 'maxValueReference' => { 'type' => 'Reference', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
234
+ 'maxValueMeta' => { 'type' => 'Meta', 'path' => 'ElementDefinition.maxValue[x]', 'min' => 0, 'max' => 1 },
235
+ 'maxLength' => { 'type' => 'integer', 'path' => 'ElementDefinition.maxLength', 'min' => 0, 'max' => 1 },
236
+ 'condition' => { 'type' => 'id', 'path' => 'ElementDefinition.condition', 'min' => 0, 'max' => Float::INFINITY },
237
+ 'constraint' => { 'type' => 'ElementDefinition::Constraint', 'path' => 'ElementDefinition.constraint', 'min' => 0, 'max' => Float::INFINITY },
238
+ 'mustSupport' => { 'type' => 'boolean', 'path' => 'ElementDefinition.mustSupport', 'min' => 0, 'max' => 1 },
239
+ 'isModifier' => { 'type' => 'boolean', 'path' => 'ElementDefinition.isModifier', 'min' => 0, 'max' => 1 },
240
+ 'isSummary' => { 'type' => 'boolean', 'path' => 'ElementDefinition.isSummary', 'min' => 0, 'max' => 1 },
241
+ 'binding' => { 'type' => 'ElementDefinition::Binding', 'path' => 'ElementDefinition.binding', 'min' => 0, 'max' => 1 },
242
+ 'mapping' => { 'type' => 'ElementDefinition::Mapping', 'path' => 'ElementDefinition.mapping', 'min' => 0, 'max' => Float::INFINITY }
243
+ }
244
244
 
245
245
  class Slicing < FHIR::DSTU2::Model
246
246
  include FHIR::DSTU2::Hashable
@@ -248,12 +248,12 @@ module FHIR
248
248
  include FHIR::DSTU2::Xml
249
249
 
250
250
  METADATA = {
251
- 'id' => {'type'=>'id', 'path'=>'Slicing.id', 'min'=>0, 'max'=>1},
252
- 'extension' => {'type'=>'Extension', 'path'=>'Slicing.extension', 'min'=>0, 'max'=>Float::INFINITY},
253
- 'discriminator' => {'type'=>'string', 'path'=>'Slicing.discriminator', 'min'=>0, 'max'=>Float::INFINITY},
254
- 'description' => {'type'=>'string', 'path'=>'Slicing.description', 'min'=>0, 'max'=>1},
255
- 'ordered' => {'type'=>'boolean', 'path'=>'Slicing.ordered', 'min'=>0, 'max'=>1},
256
- 'rules' => {'valid_codes'=>{'http://hl7.org/fhir/resource-slicing-rules'=>['closed', 'open', 'openAtEnd']}, 'type'=>'code', 'path'=>'Slicing.rules', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/resource-slicing-rules'}}
251
+ 'id' => { 'type' => 'id', 'path' => 'Slicing.id', 'min' => 0, 'max' => 1 },
252
+ 'extension' => { 'type' => 'Extension', 'path' => 'Slicing.extension', 'min' => 0, 'max' => Float::INFINITY },
253
+ 'discriminator' => { 'type' => 'string', 'path' => 'Slicing.discriminator', 'min' => 0, 'max' => Float::INFINITY },
254
+ 'description' => { 'type' => 'string', 'path' => 'Slicing.description', 'min' => 0, 'max' => 1 },
255
+ 'ordered' => { 'type' => 'boolean', 'path' => 'Slicing.ordered', 'min' => 0, 'max' => 1 },
256
+ 'rules' => { 'valid_codes' => { 'http://hl7.org/fhir/resource-slicing-rules' => ['closed', 'open', 'openAtEnd'] }, 'type' => 'code', 'path' => 'Slicing.rules', 'min' => 1, 'max' => 1, 'binding' => { 'strength' => 'required', 'uri' => 'http://hl7.org/fhir/ValueSet/resource-slicing-rules' } }
257
257
  }
258
258
 
259
259
  attr_accessor :id # 0-1 id
@@ -270,11 +270,11 @@ module FHIR
270
270
  include FHIR::DSTU2::Xml
271
271
 
272
272
  METADATA = {
273
- 'id' => {'type'=>'id', 'path'=>'Base.id', 'min'=>0, 'max'=>1},
274
- 'extension' => {'type'=>'Extension', 'path'=>'Base.extension', 'min'=>0, 'max'=>Float::INFINITY},
275
- 'path' => {'type'=>'string', 'path'=>'Base.path', 'min'=>1, 'max'=>1},
276
- 'min' => {'type'=>'integer', 'path'=>'Base.min', 'min'=>1, 'max'=>1},
277
- 'max' => {'type'=>'string', 'path'=>'Base.max', 'min'=>1, 'max'=>1}
273
+ 'id' => { 'type' => 'id', 'path' => 'Base.id', 'min' => 0, 'max' => 1 },
274
+ 'extension' => { 'type' => 'Extension', 'path' => 'Base.extension', 'min' => 0, 'max' => Float::INFINITY },
275
+ 'path' => { 'type' => 'string', 'path' => 'Base.path', 'min' => 1, 'max' => 1 },
276
+ 'min' => { 'type' => 'integer', 'path' => 'Base.min', 'min' => 1, 'max' => 1 },
277
+ 'max' => { 'type' => 'string', 'path' => 'Base.max', 'min' => 1, 'max' => 1 }
278
278
  }
279
279
 
280
280
  attr_accessor :id # 0-1 id
@@ -290,11 +290,11 @@ module FHIR
290
290
  include FHIR::DSTU2::Xml
291
291
 
292
292
  METADATA = {
293
- 'id' => {'type'=>'id', 'path'=>'Type.id', 'min'=>0, 'max'=>1},
294
- 'extension' => {'type'=>'Extension', 'path'=>'Type.extension', 'min'=>0, 'max'=>Float::INFINITY},
295
- 'code' => {'valid_codes'=>{'http://hl7.org/fhir/data-types'=>['Address', 'Age', 'Annotation', 'Attachment', 'BackboneElement', 'CodeableConcept', 'Coding', 'ContactPoint', 'Count', 'Distance', 'Duration', 'Element', 'ElementDefinition', 'Extension', 'HumanName', 'Identifier', 'Meta', 'Money', 'Narrative', 'Period', 'Quantity', 'Range', 'Ratio', 'Reference', 'SampledData', 'Signature', 'SimpleQuantity', 'Timing', 'base64Binary', 'boolean', 'code', 'date', 'dateTime', 'decimal', 'id', 'instant', 'integer', 'markdown', 'oid', 'positiveInt', 'string', 'time', 'unsignedInt', 'uri', 'uuid', 'xhtml'], 'http://hl7.org/fhir/resource-types'=>['Account', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BodySite', 'Bundle', 'CarePlan', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'Communication', 'CommunicationRequest', 'Composition', 'ConceptMap', 'Condition', 'Conformance', 'Contract', 'Coverage', 'DataElement', 'DetectedIssue', 'Device', 'DeviceComponent', 'DeviceMetric', 'DeviceUseRequest', 'DeviceUseStatement', 'DiagnosticOrder', 'DiagnosticReport', 'DocumentManifest', 'DocumentReference', 'DomainResource', 'EligibilityRequest', 'EligibilityResponse', 'Encounter', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'Group', 'HealthcareService', 'ImagingObjectSelection', 'ImagingStudy', 'Immunization', 'ImmunizationRecommendation', 'ImplementationGuide', 'List', 'Location', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationOrder', 'MedicationStatement', 'MessageHeader', 'NamingSystem', 'NutritionOrder', 'Observation', 'OperationDefinition', 'OperationOutcome', 'Order', 'OrderResponse', 'Organization', 'Parameters', 'Patient', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'Practitioner', 'Procedure', 'ProcedureRequest', 'ProcessRequest', 'ProcessResponse', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'ReferralRequest', 'RelatedPerson', 'Resource', 'RiskAssessment', 'Schedule', 'SearchParameter', 'Slot', 'Specimen', 'StructureDefinition', 'Subscription', 'Substance', 'SupplyDelivery', 'SupplyRequest', 'TestScript', 'ValueSet', 'VisionPrescription']}, 'type'=>'code', 'path'=>'Type.code', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/defined-types'}},
296
- 'profile' => {'type'=>'uri', 'path'=>'Type.profile', 'min'=>0, 'max'=>Float::INFINITY},
297
- 'aggregation' => {'valid_codes'=>{'http://hl7.org/fhir/resource-aggregation-mode'=>['contained', 'referenced', 'bundled']}, 'type'=>'code', 'path'=>'Type.aggregation', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/resource-aggregation-mode'}}
293
+ 'id' => { 'type' => 'id', 'path' => 'Type.id', 'min' => 0, 'max' => 1 },
294
+ 'extension' => { 'type' => 'Extension', 'path' => 'Type.extension', 'min' => 0, 'max' => Float::INFINITY },
295
+ 'code' => { 'valid_codes' => { 'http://hl7.org/fhir/data-types' => ['Address', 'Age', 'Annotation', 'Attachment', 'BackboneElement', 'CodeableConcept', 'Coding', 'ContactPoint', 'Count', 'Distance', 'Duration', 'Element', 'ElementDefinition', 'Extension', 'HumanName', 'Identifier', 'Meta', 'Money', 'Narrative', 'Period', 'Quantity', 'Range', 'Ratio', 'Reference', 'SampledData', 'Signature', 'SimpleQuantity', 'Timing', 'base64Binary', 'boolean', 'code', 'date', 'dateTime', 'decimal', 'id', 'instant', 'integer', 'markdown', 'oid', 'positiveInt', 'string', 'time', 'unsignedInt', 'uri', 'uuid', 'xhtml'], 'http://hl7.org/fhir/resource-types' => ['Account', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BodySite', 'Bundle', 'CarePlan', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'Communication', 'CommunicationRequest', 'Composition', 'ConceptMap', 'Condition', 'Conformance', 'Contract', 'Coverage', 'DataElement', 'DetectedIssue', 'Device', 'DeviceComponent', 'DeviceMetric', 'DeviceUseRequest', 'DeviceUseStatement', 'DiagnosticOrder', 'DiagnosticReport', 'DocumentManifest', 'DocumentReference', 'DomainResource', 'EligibilityRequest', 'EligibilityResponse', 'Encounter', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'Group', 'HealthcareService', 'ImagingObjectSelection', 'ImagingStudy', 'Immunization', 'ImmunizationRecommendation', 'ImplementationGuide', 'List', 'Location', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationOrder', 'MedicationStatement', 'MessageHeader', 'NamingSystem', 'NutritionOrder', 'Observation', 'OperationDefinition', 'OperationOutcome', 'Order', 'OrderResponse', 'Organization', 'Parameters', 'Patient', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'Practitioner', 'Procedure', 'ProcedureRequest', 'ProcessRequest', 'ProcessResponse', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'ReferralRequest', 'RelatedPerson', 'Resource', 'RiskAssessment', 'Schedule', 'SearchParameter', 'Slot', 'Specimen', 'StructureDefinition', 'Subscription', 'Substance', 'SupplyDelivery', 'SupplyRequest', 'TestScript', 'ValueSet', 'VisionPrescription'] }, 'type' => 'code', 'path' => 'Type.code', 'min' => 1, 'max' => 1, 'binding' => { 'strength' => 'required', 'uri' => 'http://hl7.org/fhir/ValueSet/defined-types' } },
296
+ 'profile' => { 'type' => 'uri', 'path' => 'Type.profile', 'min' => 0, 'max' => Float::INFINITY },
297
+ 'aggregation' => { 'valid_codes' => { 'http://hl7.org/fhir/resource-aggregation-mode' => ['contained', 'referenced', 'bundled'] }, 'type' => 'code', 'path' => 'Type.aggregation', 'min' => 0, 'max' => Float::INFINITY, 'binding' => { 'strength' => 'required', 'uri' => 'http://hl7.org/fhir/ValueSet/resource-aggregation-mode' } }
298
298
  }
299
299
 
300
300
  attr_accessor :id # 0-1 id
@@ -310,13 +310,13 @@ module FHIR
310
310
  include FHIR::DSTU2::Xml
311
311
 
312
312
  METADATA = {
313
- 'id' => {'type'=>'id', 'path'=>'Constraint.id', 'min'=>0, 'max'=>1},
314
- 'extension' => {'type'=>'Extension', 'path'=>'Constraint.extension', 'min'=>0, 'max'=>Float::INFINITY},
315
- 'key' => {'type'=>'id', 'path'=>'Constraint.key', 'min'=>1, 'max'=>1},
316
- 'requirements' => {'type'=>'string', 'path'=>'Constraint.requirements', 'min'=>0, 'max'=>1},
317
- 'severity' => {'valid_codes'=>{'http://hl7.org/fhir/constraint-severity'=>['error', 'warning']}, 'type'=>'code', 'path'=>'Constraint.severity', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/constraint-severity'}},
318
- 'human' => {'type'=>'string', 'path'=>'Constraint.human', 'min'=>1, 'max'=>1},
319
- 'xpath' => {'type'=>'string', 'path'=>'Constraint.xpath', 'min'=>1, 'max'=>1}
313
+ 'id' => { 'type' => 'id', 'path' => 'Constraint.id', 'min' => 0, 'max' => 1 },
314
+ 'extension' => { 'type' => 'Extension', 'path' => 'Constraint.extension', 'min' => 0, 'max' => Float::INFINITY },
315
+ 'key' => { 'type' => 'id', 'path' => 'Constraint.key', 'min' => 1, 'max' => 1 },
316
+ 'requirements' => { 'type' => 'string', 'path' => 'Constraint.requirements', 'min' => 0, 'max' => 1 },
317
+ 'severity' => { 'valid_codes' => { 'http://hl7.org/fhir/constraint-severity' => ['error', 'warning'] }, 'type' => 'code', 'path' => 'Constraint.severity', 'min' => 1, 'max' => 1, 'binding' => { 'strength' => 'required', 'uri' => 'http://hl7.org/fhir/ValueSet/constraint-severity' } },
318
+ 'human' => { 'type' => 'string', 'path' => 'Constraint.human', 'min' => 1, 'max' => 1 },
319
+ 'xpath' => { 'type' => 'string', 'path' => 'Constraint.xpath', 'min' => 1, 'max' => 1 }
320
320
  }
321
321
 
322
322
  attr_accessor :id # 0-1 id
@@ -337,12 +337,12 @@ module FHIR
337
337
  'valueSet' => ['uri', 'Reference']
338
338
  }
339
339
  METADATA = {
340
- 'id' => {'type'=>'id', 'path'=>'Binding.id', 'min'=>0, 'max'=>1},
341
- 'extension' => {'type'=>'Extension', 'path'=>'Binding.extension', 'min'=>0, 'max'=>Float::INFINITY},
342
- 'strength' => {'valid_codes'=>{'http://hl7.org/fhir/binding-strength'=>['required', 'extensible', 'preferred', 'example']}, 'type'=>'code', 'path'=>'Binding.strength', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/binding-strength'}},
343
- 'description' => {'type'=>'string', 'path'=>'Binding.description', 'min'=>0, 'max'=>1},
344
- 'valueSetUri' => {'type'=>'uri', 'path'=>'Binding.valueSet[x]', 'min'=>0, 'max'=>1},
345
- 'valueSetReference' => {'type'=>'Reference', 'path'=>'Binding.valueSet[x]', 'min'=>0, 'max'=>1}
340
+ 'id' => { 'type' => 'id', 'path' => 'Binding.id', 'min' => 0, 'max' => 1 },
341
+ 'extension' => { 'type' => 'Extension', 'path' => 'Binding.extension', 'min' => 0, 'max' => Float::INFINITY },
342
+ 'strength' => { 'valid_codes' => { 'http://hl7.org/fhir/binding-strength' => ['required', 'extensible', 'preferred', 'example'] }, 'type' => 'code', 'path' => 'Binding.strength', 'min' => 1, 'max' => 1, 'binding' => { 'strength' => 'required', 'uri' => 'http://hl7.org/fhir/ValueSet/binding-strength' } },
343
+ 'description' => { 'type' => 'string', 'path' => 'Binding.description', 'min' => 0, 'max' => 1 },
344
+ 'valueSetUri' => { 'type' => 'uri', 'path' => 'Binding.valueSet[x]', 'min' => 0, 'max' => 1 },
345
+ 'valueSetReference' => { 'type' => 'Reference', 'path' => 'Binding.valueSet[x]', 'min' => 0, 'max' => 1 }
346
346
  }
347
347
 
348
348
  attr_accessor :id # 0-1 id
@@ -359,11 +359,11 @@ module FHIR
359
359
  include FHIR::DSTU2::Xml
360
360
 
361
361
  METADATA = {
362
- 'id' => {'type'=>'id', 'path'=>'Mapping.id', 'min'=>0, 'max'=>1},
363
- 'extension' => {'type'=>'Extension', 'path'=>'Mapping.extension', 'min'=>0, 'max'=>Float::INFINITY},
364
- 'identity' => {'type'=>'id', 'path'=>'Mapping.identity', 'min'=>1, 'max'=>1},
365
- 'language' => {'type'=>'code', 'path'=>'Mapping.language', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://www.rfc-editor.org/bcp/bcp13.txt'}},
366
- 'map' => {'type'=>'string', 'path'=>'Mapping.map', 'min'=>1, 'max'=>1}
362
+ 'id' => { 'type' => 'id', 'path' => 'Mapping.id', 'min' => 0, 'max' => 1 },
363
+ 'extension' => { 'type' => 'Extension', 'path' => 'Mapping.extension', 'min' => 0, 'max' => Float::INFINITY },
364
+ 'identity' => { 'type' => 'id', 'path' => 'Mapping.identity', 'min' => 1, 'max' => 1 },
365
+ 'language' => { 'type' => 'code', 'path' => 'Mapping.language', 'min' => 0, 'max' => 1, 'binding' => { 'strength' => 'required', 'uri' => 'http://www.rfc-editor.org/bcp/bcp13.txt' } },
366
+ 'map' => { 'type' => 'string', 'path' => 'Mapping.map', 'min' => 1, 'max' => 1 }
367
367
  }
368
368
 
369
369
  attr_accessor :id # 0-1 id
@@ -600,4 +600,4 @@ module FHIR
600
600
  attr_accessor :mapping # 0-* [ ElementDefinition::Mapping ]
601
601
  end
602
602
  end
603
- end
603
+ end