fhir_models 1.8.0 → 1.8.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (174) hide show
  1. checksums.yaml +4 -4
  2. data/lib/fhir_models/bootstrap/definitions.rb +1 -1
  3. data/lib/fhir_models/bootstrap/generator.rb +1 -1
  4. data/lib/fhir_models/bootstrap/template.rb +1 -1
  5. data/lib/fhir_models/examples/json/claim-example-vision-glasses.json +1 -1
  6. data/lib/fhir_models/examples/json/claimresponse-example.json +1 -1
  7. data/lib/fhir_models/examples/json/conceptmap-example-specimen-type.json +1 -3
  8. data/lib/fhir_models/examples/json/eligibilityresponse-example-benefits.json +1 -1
  9. data/lib/fhir_models/examples/json/eligibilityresponse-example.json +1 -1
  10. data/lib/fhir_models/examples/json/enrollmentresponse-example.json +1 -1
  11. data/lib/fhir_models/examples/json/paymentreconciliation-example.json +1 -1
  12. data/lib/fhir_models/examples/xml/claim-example-vision-glasses.xml +1 -1
  13. data/lib/fhir_models/examples/xml/claimresponse-example.xml +1 -1
  14. data/lib/fhir_models/examples/xml/conceptmap-example-specimen-type.xml +1 -3
  15. data/lib/fhir_models/examples/xml/eligibilityresponse-example-benefits.xml +1 -1
  16. data/lib/fhir_models/examples/xml/eligibilityresponse-example.xml +1 -1
  17. data/lib/fhir_models/examples/xml/enrollmentresponse-example.xml +1 -1
  18. data/lib/fhir_models/examples/xml/paymentreconciliation-example.xml +1 -1
  19. data/lib/fhir_models/fhir/metadata.rb +2 -2
  20. data/lib/fhir_models/fhir/resources/Account.rb +9 -9
  21. data/lib/fhir_models/fhir/resources/ActivityDefinition.rb +9 -9
  22. data/lib/fhir_models/fhir/resources/AllergyIntolerance.rb +7 -7
  23. data/lib/fhir_models/fhir/resources/Appointment.rb +5 -5
  24. data/lib/fhir_models/fhir/resources/AppointmentResponse.rb +5 -5
  25. data/lib/fhir_models/fhir/resources/AuditEvent.rb +7 -7
  26. data/lib/fhir_models/fhir/resources/Basic.rb +5 -5
  27. data/lib/fhir_models/fhir/resources/Binary.rb +3 -3
  28. data/lib/fhir_models/fhir/resources/BodySite.rb +3 -3
  29. data/lib/fhir_models/fhir/resources/Bundle.rb +1 -1
  30. data/lib/fhir_models/fhir/resources/CapabilityStatement.rb +13 -13
  31. data/lib/fhir_models/fhir/resources/CarePlan.rb +35 -35
  32. data/lib/fhir_models/fhir/resources/CareTeam.rb +7 -7
  33. data/lib/fhir_models/fhir/resources/Claim.rb +45 -45
  34. data/lib/fhir_models/fhir/resources/ClaimResponse.rb +15 -15
  35. data/lib/fhir_models/fhir/resources/ClinicalImpression.rb +19 -19
  36. data/lib/fhir_models/fhir/resources/CodeSystem.rb +1 -1
  37. data/lib/fhir_models/fhir/resources/Communication.rb +17 -17
  38. data/lib/fhir_models/fhir/resources/CommunicationRequest.rb +15 -15
  39. data/lib/fhir_models/fhir/resources/CompartmentDefinition.rb +1 -1
  40. data/lib/fhir_models/fhir/resources/Composition.rb +15 -15
  41. data/lib/fhir_models/fhir/resources/ConceptMap.rb +5 -5
  42. data/lib/fhir_models/fhir/resources/Condition.rb +11 -11
  43. data/lib/fhir_models/fhir/resources/Consent.rb +15 -15
  44. data/lib/fhir_models/fhir/resources/Contract.rb +29 -29
  45. data/lib/fhir_models/fhir/resources/Coverage.rb +11 -11
  46. data/lib/fhir_models/fhir/resources/DataElement.rb +1 -1
  47. data/lib/fhir_models/fhir/resources/DetectedIssue.rb +9 -9
  48. data/lib/fhir_models/fhir/resources/Device.rb +7 -7
  49. data/lib/fhir_models/fhir/resources/DeviceComponent.rb +5 -5
  50. data/lib/fhir_models/fhir/resources/DeviceMetric.rb +5 -5
  51. data/lib/fhir_models/fhir/resources/DeviceUseRequest.rb +23 -23
  52. data/lib/fhir_models/fhir/resources/DeviceUseStatement.rb +5 -5
  53. data/lib/fhir_models/fhir/resources/DiagnosticReport.rb +17 -17
  54. data/lib/fhir_models/fhir/resources/DiagnosticRequest.rb +21 -21
  55. data/lib/fhir_models/fhir/resources/DocumentManifest.rb +11 -11
  56. data/lib/fhir_models/fhir/resources/DocumentReference.rb +17 -17
  57. data/lib/fhir_models/fhir/resources/DomainResource.rb +1 -1
  58. data/lib/fhir_models/fhir/resources/EligibilityRequest.rb +15 -15
  59. data/lib/fhir_models/fhir/resources/EligibilityResponse.rb +13 -13
  60. data/lib/fhir_models/fhir/resources/Encounter.rb +29 -29
  61. data/lib/fhir_models/fhir/resources/Endpoint.rb +3 -3
  62. data/lib/fhir_models/fhir/resources/EnrollmentRequest.rb +11 -11
  63. data/lib/fhir_models/fhir/resources/EnrollmentResponse.rb +9 -9
  64. data/lib/fhir_models/fhir/resources/EpisodeOfCare.rb +15 -15
  65. data/lib/fhir_models/fhir/resources/ExpansionProfile.rb +1 -1
  66. data/lib/fhir_models/fhir/resources/ExplanationOfBenefit.rb +47 -47
  67. data/lib/fhir_models/fhir/resources/FamilyMemberHistory.rb +3 -3
  68. data/lib/fhir_models/fhir/resources/Flag.rb +7 -7
  69. data/lib/fhir_models/fhir/resources/Goal.rb +9 -9
  70. data/lib/fhir_models/fhir/resources/Group.rb +3 -3
  71. data/lib/fhir_models/fhir/resources/GuidanceResponse.rb +17 -17
  72. data/lib/fhir_models/fhir/resources/HealthcareService.rb +9 -9
  73. data/lib/fhir_models/fhir/resources/ImagingManifest.rb +7 -7
  74. data/lib/fhir_models/fhir/resources/ImagingStudy.rb +13 -13
  75. data/lib/fhir_models/fhir/resources/Immunization.rb +17 -17
  76. data/lib/fhir_models/fhir/resources/ImmunizationRecommendation.rb +9 -9
  77. data/lib/fhir_models/fhir/resources/ImplementationGuide.rb +7 -7
  78. data/lib/fhir_models/fhir/resources/Library.rb +1 -1
  79. data/lib/fhir_models/fhir/resources/Linkage.rb +3 -3
  80. data/lib/fhir_models/fhir/resources/List.rb +9 -9
  81. data/lib/fhir_models/fhir/resources/Location.rb +7 -7
  82. data/lib/fhir_models/fhir/resources/Measure.rb +3 -3
  83. data/lib/fhir_models/fhir/resources/MeasureReport.rb +15 -15
  84. data/lib/fhir_models/fhir/resources/Media.rb +5 -5
  85. data/lib/fhir_models/fhir/resources/Medication.rb +7 -7
  86. data/lib/fhir_models/fhir/resources/MedicationAdministration.rb +19 -19
  87. data/lib/fhir_models/fhir/resources/MedicationDispense.rb +21 -21
  88. data/lib/fhir_models/fhir/resources/MedicationRequest.rb +23 -23
  89. data/lib/fhir_models/fhir/resources/MedicationStatement.rb +11 -11
  90. data/lib/fhir_models/fhir/resources/MessageDefinition.rb +11 -11
  91. data/lib/fhir_models/fhir/resources/MessageHeader.rb +15 -15
  92. data/lib/fhir_models/fhir/resources/MetadataResource.rb +1 -1
  93. data/lib/fhir_models/fhir/resources/NamingSystem.rb +3 -3
  94. data/lib/fhir_models/fhir/resources/NutritionRequest.rb +9 -9
  95. data/lib/fhir_models/fhir/resources/Observation.rb +13 -13
  96. data/lib/fhir_models/fhir/resources/OperationDefinition.rb +7 -7
  97. data/lib/fhir_models/fhir/resources/OperationOutcome.rb +1 -1
  98. data/lib/fhir_models/fhir/resources/Organization.rb +5 -5
  99. data/lib/fhir_models/fhir/resources/Parameters.rb +1 -1
  100. data/lib/fhir_models/fhir/resources/Patient.rb +9 -9
  101. data/lib/fhir_models/fhir/resources/PaymentNotice.rb +11 -11
  102. data/lib/fhir_models/fhir/resources/PaymentReconciliation.rb +17 -17
  103. data/lib/fhir_models/fhir/resources/Person.rb +5 -5
  104. data/lib/fhir_models/fhir/resources/PlanDefinition.rb +7 -7
  105. data/lib/fhir_models/fhir/resources/Practitioner.rb +11 -11
  106. data/lib/fhir_models/fhir/resources/PractitionerRole.rb +11 -11
  107. data/lib/fhir_models/fhir/resources/Procedure.rb +21 -21
  108. data/lib/fhir_models/fhir/resources/ProcedureRequest.rb +13 -13
  109. data/lib/fhir_models/fhir/resources/ProcessRequest.rb +11 -11
  110. data/lib/fhir_models/fhir/resources/ProcessResponse.rb +11 -11
  111. data/lib/fhir_models/fhir/resources/Provenance.rb +11 -11
  112. data/lib/fhir_models/fhir/resources/Questionnaire.rb +7 -7
  113. data/lib/fhir_models/fhir/resources/QuestionnaireResponse.rb +19 -19
  114. data/lib/fhir_models/fhir/resources/ReferralRequest.rb +13 -13
  115. data/lib/fhir_models/fhir/resources/RelatedPerson.rb +3 -3
  116. data/lib/fhir_models/fhir/resources/RequestGroup.rb +13 -13
  117. data/lib/fhir_models/fhir/resources/ResearchStudy.rb +13 -13
  118. data/lib/fhir_models/fhir/resources/ResearchSubject.rb +7 -7
  119. data/lib/fhir_models/fhir/resources/Resource.rb +1 -1
  120. data/lib/fhir_models/fhir/resources/RiskAssessment.rb +17 -17
  121. data/lib/fhir_models/fhir/resources/Schedule.rb +3 -3
  122. data/lib/fhir_models/fhir/resources/SearchParameter.rb +3 -3
  123. data/lib/fhir_models/fhir/resources/Sequence.rb +15 -15
  124. data/lib/fhir_models/fhir/resources/ServiceDefinition.rb +3 -3
  125. data/lib/fhir_models/fhir/resources/Slot.rb +3 -3
  126. data/lib/fhir_models/fhir/resources/Specimen.rb +13 -13
  127. data/lib/fhir_models/fhir/resources/StructureDefinition.rb +1 -1
  128. data/lib/fhir_models/fhir/resources/StructureMap.rb +1 -1
  129. data/lib/fhir_models/fhir/resources/Subscription.rb +1 -1
  130. data/lib/fhir_models/fhir/resources/Substance.rb +3 -3
  131. data/lib/fhir_models/fhir/resources/SupplyDelivery.rb +11 -11
  132. data/lib/fhir_models/fhir/resources/SupplyRequest.rb +11 -11
  133. data/lib/fhir_models/fhir/resources/Task.rb +23 -23
  134. data/lib/fhir_models/fhir/resources/TestReport.rb +3 -3
  135. data/lib/fhir_models/fhir/resources/TestScript.rb +11 -11
  136. data/lib/fhir_models/fhir/resources/ValueSet.rb +1 -1
  137. data/lib/fhir_models/fhir/resources/VisionPrescription.rb +9 -9
  138. data/lib/fhir_models/fhir/types/Address.rb +1 -1
  139. data/lib/fhir_models/fhir/types/Age.rb +1 -1
  140. data/lib/fhir_models/fhir/types/Annotation.rb +3 -3
  141. data/lib/fhir_models/fhir/types/Attachment.rb +1 -1
  142. data/lib/fhir_models/fhir/types/BackboneElement.rb +1 -1
  143. data/lib/fhir_models/fhir/types/CodeableConcept.rb +1 -1
  144. data/lib/fhir_models/fhir/types/Coding.rb +1 -1
  145. data/lib/fhir_models/fhir/types/ContactDetail.rb +1 -1
  146. data/lib/fhir_models/fhir/types/ContactPoint.rb +1 -1
  147. data/lib/fhir_models/fhir/types/Contributor.rb +1 -1
  148. data/lib/fhir_models/fhir/types/Count.rb +1 -1
  149. data/lib/fhir_models/fhir/types/DataRequirement.rb +3 -3
  150. data/lib/fhir_models/fhir/types/Distance.rb +1 -1
  151. data/lib/fhir_models/fhir/types/DosageInstruction.rb +1 -1
  152. data/lib/fhir_models/fhir/types/Duration.rb +1 -1
  153. data/lib/fhir_models/fhir/types/Element.rb +1 -1
  154. data/lib/fhir_models/fhir/types/ElementDefinition.rb +3 -3
  155. data/lib/fhir_models/fhir/types/Extension.rb +1 -1
  156. data/lib/fhir_models/fhir/types/HumanName.rb +1 -1
  157. data/lib/fhir_models/fhir/types/Identifier.rb +3 -3
  158. data/lib/fhir_models/fhir/types/Meta.rb +1 -1
  159. data/lib/fhir_models/fhir/types/Money.rb +1 -1
  160. data/lib/fhir_models/fhir/types/Narrative.rb +1 -1
  161. data/lib/fhir_models/fhir/types/ParameterDefinition.rb +3 -3
  162. data/lib/fhir_models/fhir/types/Period.rb +1 -1
  163. data/lib/fhir_models/fhir/types/Quantity.rb +1 -1
  164. data/lib/fhir_models/fhir/types/Range.rb +1 -1
  165. data/lib/fhir_models/fhir/types/Ratio.rb +1 -1
  166. data/lib/fhir_models/fhir/types/Reference.rb +1 -1
  167. data/lib/fhir_models/fhir/types/RelatedArtifact.rb +3 -3
  168. data/lib/fhir_models/fhir/types/SampledData.rb +1 -1
  169. data/lib/fhir_models/fhir/types/Signature.rb +5 -5
  170. data/lib/fhir_models/fhir/types/Timing.rb +1 -1
  171. data/lib/fhir_models/fhir/types/TriggerDefinition.rb +3 -3
  172. data/lib/fhir_models/fhir/types/UsageContext.rb +1 -1
  173. data/lib/fhir_models/version.rb +1 -1
  174. metadata +2 -2
@@ -4,7 +4,7 @@ module FHIR
4
4
  include FHIR::Json
5
5
  include FHIR::Xml
6
6
 
7
- SEARCH_PARAMS = []
7
+ SEARCH_PARAMS = ['connection-type', 'identifier', 'name', 'organization', 'payload-type', 'status']
8
8
  METADATA = {
9
9
  'id' => {'type'=>'id', 'path'=>'Endpoint.id', 'min'=>0, 'max'=>1},
10
10
  'meta' => {'type'=>'Meta', 'path'=>'Endpoint.meta', 'min'=>0, 'max'=>1},
@@ -17,7 +17,7 @@ module FHIR
17
17
  'identifier' => {'type'=>'Identifier', 'path'=>'Endpoint.identifier', 'min'=>0, 'max'=>Float::INFINITY},
18
18
  'status' => {'valid_codes'=>{'http://hl7.org/fhir/endpoint-status'=>['active', 'suspended', 'error', 'off', 'entered-in-error', 'test', 'active', 'suspended', 'error', 'off', 'entered-in-error', 'test']}, 'type'=>'code', 'path'=>'Endpoint.status', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/endpoint-status'}},
19
19
  'name' => {'type'=>'string', 'path'=>'Endpoint.name', 'min'=>0, 'max'=>1},
20
- 'managingOrganization' => {'type'=>'Reference', 'path'=>'Endpoint.managingOrganization', 'min'=>0, 'max'=>1},
20
+ 'managingOrganization' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'Endpoint.managingOrganization', 'min'=>0, 'max'=>1},
21
21
  'contact' => {'type'=>'ContactPoint', 'path'=>'Endpoint.contact', 'min'=>0, 'max'=>Float::INFINITY},
22
22
  'period' => {'type'=>'Period', 'path'=>'Endpoint.period', 'min'=>0, 'max'=>1},
23
23
  'connectionType' => {'valid_codes'=>{'http://hl7.org/fhir/endpoint-connection-type'=>['ihe-xcpd', 'ihe-xca', 'ihe-xdr', 'ihe-xds', 'ihe-iid', 'dicom-wado-rs', 'dicom-qido-rs', 'dicom-stow-rs', 'dicom-wado-uri', 'hl7-fhir-rest', 'hl7-fhir-msg', 'hl7v2-mllp', 'secure-email', 'direct-project', 'ihe-xcpd', 'ihe-xca', 'ihe-xdr', 'ihe-xds', 'ihe-iid', 'dicom-wado-rs', 'dicom-qido-rs', 'dicom-stow-rs', 'dicom-wado-uri', 'hl7-fhir-rest', 'hl7-fhir-msg', 'hl7v2-mllp', 'secure-email', 'direct-project']}, 'type'=>'Coding', 'path'=>'Endpoint.connectionType', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'extensible', 'uri'=>'http://hl7.org/fhir/ValueSet/endpoint-connection-type'}},
@@ -39,7 +39,7 @@ module FHIR
39
39
  attr_accessor :identifier # 0-* [ Identifier ]
40
40
  attr_accessor :status # 1-1 code
41
41
  attr_accessor :name # 0-1 string
42
- attr_accessor :managingOrganization # 0-1 Reference()
42
+ attr_accessor :managingOrganization # 0-1 Reference(Organization)
43
43
  attr_accessor :contact # 0-* [ ContactPoint ]
44
44
  attr_accessor :period # 0-1 Period
45
45
  attr_accessor :connectionType # 1-1 Coding
@@ -4,7 +4,7 @@ module FHIR
4
4
  include FHIR::Json
5
5
  include FHIR::Xml
6
6
 
7
- SEARCH_PARAMS = []
7
+ SEARCH_PARAMS = ['identifier', 'organization', 'patient', 'subject']
8
8
  METADATA = {
9
9
  'id' => {'type'=>'id', 'path'=>'EnrollmentRequest.id', 'min'=>0, 'max'=>1},
10
10
  'meta' => {'type'=>'Meta', 'path'=>'EnrollmentRequest.meta', 'min'=>0, 'max'=>1},
@@ -17,11 +17,11 @@ module FHIR
17
17
  'identifier' => {'type'=>'Identifier', 'path'=>'EnrollmentRequest.identifier', 'min'=>0, 'max'=>Float::INFINITY},
18
18
  'status' => {'valid_codes'=>{'http://hl7.org/fhir/fm-status'=>['active', 'cancelled', 'draft', 'entered-in-error', 'active', 'cancelled', 'draft', 'entered-in-error']}, 'type'=>'code', 'path'=>'EnrollmentRequest.status', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/fm-status'}},
19
19
  'created' => {'type'=>'dateTime', 'path'=>'EnrollmentRequest.created', 'min'=>0, 'max'=>1},
20
- 'insurer' => {'type'=>'Reference', 'path'=>'EnrollmentRequest.insurer', 'min'=>0, 'max'=>1},
21
- 'provider' => {'type'=>'Reference', 'path'=>'EnrollmentRequest.provider', 'min'=>0, 'max'=>1},
22
- 'organization' => {'type'=>'Reference', 'path'=>'EnrollmentRequest.organization', 'min'=>0, 'max'=>1},
23
- 'subject' => {'type'=>'Reference', 'path'=>'EnrollmentRequest.subject', 'min'=>0, 'max'=>1},
24
- 'coverage' => {'type'=>'Reference', 'path'=>'EnrollmentRequest.coverage', 'min'=>0, 'max'=>1}
20
+ 'insurer' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'EnrollmentRequest.insurer', 'min'=>0, 'max'=>1},
21
+ 'provider' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Practitioner'], 'type'=>'Reference', 'path'=>'EnrollmentRequest.provider', 'min'=>0, 'max'=>1},
22
+ 'organization' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'EnrollmentRequest.organization', 'min'=>0, 'max'=>1},
23
+ 'subject' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Patient'], 'type'=>'Reference', 'path'=>'EnrollmentRequest.subject', 'min'=>0, 'max'=>1},
24
+ 'coverage' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Coverage'], 'type'=>'Reference', 'path'=>'EnrollmentRequest.coverage', 'min'=>0, 'max'=>1}
25
25
  }
26
26
 
27
27
  attr_accessor :id # 0-1 id
@@ -35,11 +35,11 @@ module FHIR
35
35
  attr_accessor :identifier # 0-* [ Identifier ]
36
36
  attr_accessor :status # 0-1 code
37
37
  attr_accessor :created # 0-1 dateTime
38
- attr_accessor :insurer # 0-1 Reference()
39
- attr_accessor :provider # 0-1 Reference()
40
- attr_accessor :organization # 0-1 Reference()
41
- attr_accessor :subject # 0-1 Reference()
42
- attr_accessor :coverage # 0-1 Reference()
38
+ attr_accessor :insurer # 0-1 Reference(Organization)
39
+ attr_accessor :provider # 0-1 Reference(Practitioner)
40
+ attr_accessor :organization # 0-1 Reference(Organization)
41
+ attr_accessor :subject # 0-1 Reference(Patient)
42
+ attr_accessor :coverage # 0-1 Reference(Coverage)
43
43
 
44
44
  def resourceType
45
45
  'EnrollmentRequest'
@@ -4,7 +4,7 @@ module FHIR
4
4
  include FHIR::Json
5
5
  include FHIR::Xml
6
6
 
7
- SEARCH_PARAMS = []
7
+ SEARCH_PARAMS = ['identifier', 'organization', 'request']
8
8
  METADATA = {
9
9
  'id' => {'type'=>'id', 'path'=>'EnrollmentResponse.id', 'min'=>0, 'max'=>1},
10
10
  'meta' => {'type'=>'Meta', 'path'=>'EnrollmentResponse.meta', 'min'=>0, 'max'=>1},
@@ -16,13 +16,13 @@ module FHIR
16
16
  'modifierExtension' => {'type'=>'Extension', 'path'=>'EnrollmentResponse.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
17
17
  'identifier' => {'type'=>'Identifier', 'path'=>'EnrollmentResponse.identifier', 'min'=>0, 'max'=>Float::INFINITY},
18
18
  'status' => {'valid_codes'=>{'http://hl7.org/fhir/fm-status'=>['active', 'cancelled', 'draft', 'entered-in-error', 'active', 'cancelled', 'draft', 'entered-in-error']}, 'type'=>'code', 'path'=>'EnrollmentResponse.status', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/fm-status'}},
19
- 'request' => {'type'=>'Reference', 'path'=>'EnrollmentResponse.request', 'min'=>0, 'max'=>1},
19
+ 'request' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/EnrollmentRequest'], 'type'=>'Reference', 'path'=>'EnrollmentResponse.request', 'min'=>0, 'max'=>1},
20
20
  'outcome' => {'valid_codes'=>{'http://hl7.org/fhir/remittance-outcome'=>['complete', 'error', 'partial', 'complete', 'error', 'partial']}, 'type'=>'CodeableConcept', 'path'=>'EnrollmentResponse.outcome', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/remittance-outcome'}},
21
21
  'disposition' => {'type'=>'string', 'path'=>'EnrollmentResponse.disposition', 'min'=>0, 'max'=>1},
22
22
  'created' => {'type'=>'dateTime', 'path'=>'EnrollmentResponse.created', 'min'=>0, 'max'=>1},
23
- 'organization' => {'type'=>'Reference', 'path'=>'EnrollmentResponse.organization', 'min'=>0, 'max'=>1},
24
- 'requestProvider' => {'type'=>'Reference', 'path'=>'EnrollmentResponse.requestProvider', 'min'=>0, 'max'=>1},
25
- 'requestOrganization' => {'type'=>'Reference', 'path'=>'EnrollmentResponse.requestOrganization', 'min'=>0, 'max'=>1}
23
+ 'organization' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'EnrollmentResponse.organization', 'min'=>0, 'max'=>1},
24
+ 'requestProvider' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Practitioner'], 'type'=>'Reference', 'path'=>'EnrollmentResponse.requestProvider', 'min'=>0, 'max'=>1},
25
+ 'requestOrganization' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'EnrollmentResponse.requestOrganization', 'min'=>0, 'max'=>1}
26
26
  }
27
27
 
28
28
  attr_accessor :id # 0-1 id
@@ -35,13 +35,13 @@ module FHIR
35
35
  attr_accessor :modifierExtension # 0-* [ Extension ]
36
36
  attr_accessor :identifier # 0-* [ Identifier ]
37
37
  attr_accessor :status # 0-1 code
38
- attr_accessor :request # 0-1 Reference()
38
+ attr_accessor :request # 0-1 Reference(EnrollmentRequest)
39
39
  attr_accessor :outcome # 0-1 CodeableConcept
40
40
  attr_accessor :disposition # 0-1 string
41
41
  attr_accessor :created # 0-1 dateTime
42
- attr_accessor :organization # 0-1 Reference()
43
- attr_accessor :requestProvider # 0-1 Reference()
44
- attr_accessor :requestOrganization # 0-1 Reference()
42
+ attr_accessor :organization # 0-1 Reference(Organization)
43
+ attr_accessor :requestProvider # 0-1 Reference(Practitioner)
44
+ attr_accessor :requestOrganization # 0-1 Reference(Organization)
45
45
 
46
46
  def resourceType
47
47
  'EnrollmentResponse'
@@ -4,7 +4,7 @@ module FHIR
4
4
  include FHIR::Json
5
5
  include FHIR::Xml
6
6
 
7
- SEARCH_PARAMS = []
7
+ SEARCH_PARAMS = ['date', 'identifier', 'patient', 'type', 'care-manager', 'condition', 'incomingreferral', 'organization', 'status']
8
8
  METADATA = {
9
9
  'id' => {'type'=>'id', 'path'=>'EpisodeOfCare.id', 'min'=>0, 'max'=>1},
10
10
  'meta' => {'type'=>'Meta', 'path'=>'EpisodeOfCare.meta', 'min'=>0, 'max'=>1},
@@ -18,14 +18,14 @@ module FHIR
18
18
  'status' => {'valid_codes'=>{'http://hl7.org/fhir/episode-of-care-status'=>['planned', 'waitlist', 'active', 'onhold', 'finished', 'cancelled', 'entered-in-error', 'planned', 'waitlist', 'active', 'onhold', 'finished', 'cancelled', 'entered-in-error']}, 'type'=>'code', 'path'=>'EpisodeOfCare.status', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/episode-of-care-status'}},
19
19
  'statusHistory' => {'type'=>'EpisodeOfCare::StatusHistory', 'path'=>'EpisodeOfCare.statusHistory', 'min'=>0, 'max'=>Float::INFINITY},
20
20
  'type' => {'type'=>'CodeableConcept', 'path'=>'EpisodeOfCare.type', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'example', 'uri'=>nil}},
21
- 'condition' => {'type'=>'Reference', 'path'=>'EpisodeOfCare.condition', 'min'=>0, 'max'=>Float::INFINITY},
22
- 'patient' => {'type'=>'Reference', 'path'=>'EpisodeOfCare.patient', 'min'=>1, 'max'=>1},
23
- 'managingOrganization' => {'type'=>'Reference', 'path'=>'EpisodeOfCare.managingOrganization', 'min'=>0, 'max'=>1},
21
+ 'condition' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Condition'], 'type'=>'Reference', 'path'=>'EpisodeOfCare.condition', 'min'=>0, 'max'=>Float::INFINITY},
22
+ 'patient' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Patient'], 'type'=>'Reference', 'path'=>'EpisodeOfCare.patient', 'min'=>1, 'max'=>1},
23
+ 'managingOrganization' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'EpisodeOfCare.managingOrganization', 'min'=>0, 'max'=>1},
24
24
  'period' => {'type'=>'Period', 'path'=>'EpisodeOfCare.period', 'min'=>0, 'max'=>1},
25
- 'referralRequest' => {'type'=>'Reference', 'path'=>'EpisodeOfCare.referralRequest', 'min'=>0, 'max'=>Float::INFINITY},
26
- 'careManager' => {'type'=>'Reference', 'path'=>'EpisodeOfCare.careManager', 'min'=>0, 'max'=>1},
27
- 'team' => {'type'=>'Reference', 'path'=>'EpisodeOfCare.team', 'min'=>0, 'max'=>Float::INFINITY},
28
- 'account' => {'type'=>'Reference', 'path'=>'EpisodeOfCare.account', 'min'=>0, 'max'=>Float::INFINITY}
25
+ 'referralRequest' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/ReferralRequest'], 'type'=>'Reference', 'path'=>'EpisodeOfCare.referralRequest', 'min'=>0, 'max'=>Float::INFINITY},
26
+ 'careManager' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Practitioner'], 'type'=>'Reference', 'path'=>'EpisodeOfCare.careManager', 'min'=>0, 'max'=>1},
27
+ 'team' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/CareTeam'], 'type'=>'Reference', 'path'=>'EpisodeOfCare.team', 'min'=>0, 'max'=>Float::INFINITY},
28
+ 'account' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Account'], 'type'=>'Reference', 'path'=>'EpisodeOfCare.account', 'min'=>0, 'max'=>Float::INFINITY}
29
29
  }
30
30
 
31
31
  class StatusHistory < FHIR::Model
@@ -60,14 +60,14 @@ module FHIR
60
60
  attr_accessor :status # 1-1 code
61
61
  attr_accessor :statusHistory # 0-* [ EpisodeOfCare::StatusHistory ]
62
62
  attr_accessor :type # 0-* [ CodeableConcept ]
63
- attr_accessor :condition # 0-* [ Reference() ]
64
- attr_accessor :patient # 1-1 Reference()
65
- attr_accessor :managingOrganization # 0-1 Reference()
63
+ attr_accessor :condition # 0-* [ Reference(Condition) ]
64
+ attr_accessor :patient # 1-1 Reference(Patient)
65
+ attr_accessor :managingOrganization # 0-1 Reference(Organization)
66
66
  attr_accessor :period # 0-1 Period
67
- attr_accessor :referralRequest # 0-* [ Reference() ]
68
- attr_accessor :careManager # 0-1 Reference()
69
- attr_accessor :team # 0-* [ Reference() ]
70
- attr_accessor :account # 0-* [ Reference() ]
67
+ attr_accessor :referralRequest # 0-* [ Reference(ReferralRequest) ]
68
+ attr_accessor :careManager # 0-1 Reference(Practitioner)
69
+ attr_accessor :team # 0-* [ Reference(CareTeam) ]
70
+ attr_accessor :account # 0-* [ Reference(Account) ]
71
71
 
72
72
  def resourceType
73
73
  'EpisodeOfCare'
@@ -4,7 +4,7 @@ module FHIR
4
4
  include FHIR::Json
5
5
  include FHIR::Xml
6
6
 
7
- SEARCH_PARAMS = []
7
+ SEARCH_PARAMS = ['date', 'description', 'identifier', 'jurisdiction', 'name', 'publisher', 'status', 'url', 'version']
8
8
  METADATA = {
9
9
  'id' => {'type'=>'id', 'path'=>'ExpansionProfile.id', 'min'=>0, 'max'=>1},
10
10
  'meta' => {'type'=>'Meta', 'path'=>'ExpansionProfile.meta', 'min'=>0, 'max'=>1},
@@ -4,7 +4,7 @@ module FHIR
4
4
  include FHIR::Json
5
5
  include FHIR::Xml
6
6
 
7
- SEARCH_PARAMS = []
7
+ SEARCH_PARAMS = ['claim', 'coverage', 'created', 'disposition', 'facility', 'identifier', 'organization', 'patient', 'provider']
8
8
  METADATA = {
9
9
  'id' => {'type'=>'id', 'path'=>'ExplanationOfBenefit.id', 'min'=>0, 'max'=>1},
10
10
  'meta' => {'type'=>'Meta', 'path'=>'ExplanationOfBenefit.meta', 'min'=>0, 'max'=>1},
@@ -18,22 +18,22 @@ module FHIR
18
18
  'status' => {'valid_codes'=>{'http://hl7.org/fhir/explanationofbenefit-status'=>['active', 'cancelled', 'draft', 'entered-in-error', 'active', 'cancelled', 'draft', 'entered-in-error']}, 'type'=>'code', 'path'=>'ExplanationOfBenefit.status', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/explanationofbenefit-status'}},
19
19
  'type' => {'valid_codes'=>{'http://hl7.org/fhir/ex-claimtype'=>['institutional', 'oral', 'pharmacy', 'professional', 'vision', 'institutional', 'oral', 'pharmacy', 'professional', 'vision']}, 'type'=>'CodeableConcept', 'path'=>'ExplanationOfBenefit.type', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/claim-type'}},
20
20
  'subType' => {'valid_codes'=>{'http://hl7.org/fhir/ex-claimsubtype'=>['ortho', 'emergency', 'ortho', 'emergency']}, 'type'=>'CodeableConcept', 'path'=>'ExplanationOfBenefit.subType', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/claim-subtype'}},
21
- 'patient' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.patient', 'min'=>0, 'max'=>1},
21
+ 'patient' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Patient'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.patient', 'min'=>0, 'max'=>1},
22
22
  'billablePeriod' => {'type'=>'Period', 'path'=>'ExplanationOfBenefit.billablePeriod', 'min'=>0, 'max'=>1},
23
23
  'created' => {'type'=>'dateTime', 'path'=>'ExplanationOfBenefit.created', 'min'=>0, 'max'=>1},
24
- 'enterer' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.enterer', 'min'=>0, 'max'=>1},
25
- 'insurer' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.insurer', 'min'=>0, 'max'=>1},
26
- 'provider' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.provider', 'min'=>0, 'max'=>1},
27
- 'organization' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.organization', 'min'=>0, 'max'=>1},
28
- 'referral' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.referral', 'min'=>0, 'max'=>1},
29
- 'facility' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.facility', 'min'=>0, 'max'=>1},
30
- 'claim' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.claim', 'min'=>0, 'max'=>1},
31
- 'claimResponse' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.claimResponse', 'min'=>0, 'max'=>1},
24
+ 'enterer' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Practitioner'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.enterer', 'min'=>0, 'max'=>1},
25
+ 'insurer' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.insurer', 'min'=>0, 'max'=>1},
26
+ 'provider' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Practitioner'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.provider', 'min'=>0, 'max'=>1},
27
+ 'organization' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.organization', 'min'=>0, 'max'=>1},
28
+ 'referral' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/ReferralRequest'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.referral', 'min'=>0, 'max'=>1},
29
+ 'facility' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Location'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.facility', 'min'=>0, 'max'=>1},
30
+ 'claim' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Claim'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.claim', 'min'=>0, 'max'=>1},
31
+ 'claimResponse' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/ClaimResponse'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.claimResponse', 'min'=>0, 'max'=>1},
32
32
  'outcome' => {'valid_codes'=>{'http://hl7.org/fhir/remittance-outcome'=>['complete', 'error', 'partial', 'complete', 'error', 'partial']}, 'type'=>'CodeableConcept', 'path'=>'ExplanationOfBenefit.outcome', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/remittance-outcome'}},
33
33
  'disposition' => {'type'=>'string', 'path'=>'ExplanationOfBenefit.disposition', 'min'=>0, 'max'=>1},
34
34
  'related' => {'type'=>'ExplanationOfBenefit::Related', 'path'=>'ExplanationOfBenefit.related', 'min'=>0, 'max'=>Float::INFINITY},
35
- 'prescription' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.prescription', 'min'=>0, 'max'=>1},
36
- 'originalPrescription' => {'type'=>'Reference', 'path'=>'ExplanationOfBenefit.originalPrescription', 'min'=>0, 'max'=>1},
35
+ 'prescription' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/MedicationRequest', 'http://hl7.org/fhir/StructureDefinition/VisionPrescription'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.prescription', 'min'=>0, 'max'=>1},
36
+ 'originalPrescription' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/MedicationRequest'], 'type'=>'Reference', 'path'=>'ExplanationOfBenefit.originalPrescription', 'min'=>0, 'max'=>1},
37
37
  'payee' => {'type'=>'ExplanationOfBenefit::Payee', 'path'=>'ExplanationOfBenefit.payee', 'min'=>0, 'max'=>1},
38
38
  'information' => {'type'=>'ExplanationOfBenefit::Information', 'path'=>'ExplanationOfBenefit.information', 'min'=>0, 'max'=>Float::INFINITY},
39
39
  'careTeam' => {'type'=>'ExplanationOfBenefit::CareTeam', 'path'=>'ExplanationOfBenefit.careTeam', 'min'=>0, 'max'=>Float::INFINITY},
@@ -64,7 +64,7 @@ module FHIR
64
64
  'id' => {'type'=>'string', 'path'=>'Related.id', 'min'=>0, 'max'=>1},
65
65
  'extension' => {'type'=>'Extension', 'path'=>'Related.extension', 'min'=>0, 'max'=>Float::INFINITY},
66
66
  'modifierExtension' => {'type'=>'Extension', 'path'=>'Related.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
67
- 'claim' => {'type'=>'Reference', 'path'=>'Related.claim', 'min'=>0, 'max'=>1},
67
+ 'claim' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Claim'], 'type'=>'Reference', 'path'=>'Related.claim', 'min'=>0, 'max'=>1},
68
68
  'relationship' => {'valid_codes'=>{'http://hl7.org/fhir/ex-relatedclaimrelationship'=>['prior', 'associated', 'prior', 'associated']}, 'type'=>'CodeableConcept', 'path'=>'Related.relationship', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/related-claim-relationship'}},
69
69
  'reference' => {'type'=>'Identifier', 'path'=>'Related.reference', 'min'=>0, 'max'=>1}
70
70
  }
@@ -72,7 +72,7 @@ module FHIR
72
72
  attr_accessor :id # 0-1 string
73
73
  attr_accessor :extension # 0-* [ Extension ]
74
74
  attr_accessor :modifierExtension # 0-* [ Extension ]
75
- attr_accessor :claim # 0-1 Reference()
75
+ attr_accessor :claim # 0-1 Reference(Claim)
76
76
  attr_accessor :relationship # 0-1 CodeableConcept
77
77
  attr_accessor :reference # 0-1 Identifier
78
78
  end
@@ -92,7 +92,7 @@ module FHIR
92
92
  'type' => {'valid_codes'=>{'http://hl7.org/fhir/payeetype'=>['subscriber', 'provider', 'other', 'subscriber', 'provider', 'other']}, 'type'=>'CodeableConcept', 'path'=>'Payee.type', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/payeetype'}},
93
93
  'resourceType' => {'local_name'=>'local_resourceType', 'valid_codes'=>{'http://hl7.org/fhir/resource-type-link'=>['organization', 'patient', 'practitioner', 'relatedperson', 'organization', 'patient', 'practitioner', 'relatedperson']}, 'type'=>'CodeableConcept', 'path'=>'Payee.resourceType', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/resource-type-link'}},
94
94
  'partyIdentifier' => {'type'=>'Identifier', 'path'=>'Payee.party[x]', 'min'=>0, 'max'=>1},
95
- 'partyReference' => {'type'=>'Reference', 'path'=>'Payee.party[x]', 'min'=>0, 'max'=>1}
95
+ 'partyReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Practitioner', 'http://hl7.org/fhir/StructureDefinition/Organization', 'http://hl7.org/fhir/StructureDefinition/Patient', 'http://hl7.org/fhir/StructureDefinition/RelatedPerson'], 'type'=>'Reference', 'path'=>'Payee.party[x]', 'min'=>0, 'max'=>1}
96
96
  }
97
97
 
98
98
  attr_accessor :id # 0-1 string
@@ -101,7 +101,7 @@ module FHIR
101
101
  attr_accessor :type # 0-1 CodeableConcept
102
102
  attr_accessor :local_resourceType # 0-1 CodeableConcept
103
103
  attr_accessor :partyIdentifier # 0-1 Identifier
104
- attr_accessor :partyReference # 0-1 Reference()
104
+ attr_accessor :partyReference # 0-1 Reference(Practitioner|Organization|Patient|RelatedPerson)
105
105
  end
106
106
 
107
107
  class Information < FHIR::Model
@@ -124,7 +124,7 @@ module FHIR
124
124
  'valueString' => {'type'=>'string', 'path'=>'Information.value[x]', 'min'=>0, 'max'=>1},
125
125
  'valueQuantity' => {'type'=>'Quantity', 'path'=>'Information.value[x]', 'min'=>0, 'max'=>1},
126
126
  'valueAttachment' => {'type'=>'Attachment', 'path'=>'Information.value[x]', 'min'=>0, 'max'=>1},
127
- 'valueReference' => {'type'=>'Reference', 'path'=>'Information.value[x]', 'min'=>0, 'max'=>1},
127
+ 'valueReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Resource'], 'type'=>'Reference', 'path'=>'Information.value[x]', 'min'=>0, 'max'=>1},
128
128
  'reason' => {'valid_codes'=>{'http://hl7.org/fhir/missingtoothreason'=>['e', 'c', 'u', 'o', 'e', 'c', 'u', 'o']}, 'type'=>'Coding', 'path'=>'Information.reason', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/missing-tooth-reason'}}
129
129
  }
130
130
 
@@ -138,7 +138,7 @@ module FHIR
138
138
  attr_accessor :valueString # 0-1 string
139
139
  attr_accessor :valueQuantity # 0-1 Quantity
140
140
  attr_accessor :valueAttachment # 0-1 Attachment
141
- attr_accessor :valueReference # 0-1 Reference()
141
+ attr_accessor :valueReference # 0-1 Reference(Resource)
142
142
  attr_accessor :reason # 0-1 Coding
143
143
  end
144
144
 
@@ -152,7 +152,7 @@ module FHIR
152
152
  'extension' => {'type'=>'Extension', 'path'=>'CareTeam.extension', 'min'=>0, 'max'=>Float::INFINITY},
153
153
  'modifierExtension' => {'type'=>'Extension', 'path'=>'CareTeam.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
154
154
  'sequence' => {'type'=>'positiveInt', 'path'=>'CareTeam.sequence', 'min'=>1, 'max'=>1},
155
- 'provider' => {'type'=>'Reference', 'path'=>'CareTeam.provider', 'min'=>1, 'max'=>1},
155
+ 'provider' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Practitioner', 'http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'CareTeam.provider', 'min'=>1, 'max'=>1},
156
156
  'responsible' => {'type'=>'boolean', 'path'=>'CareTeam.responsible', 'min'=>0, 'max'=>1},
157
157
  'role' => {'valid_codes'=>{'http://hl7.org/fhir/claimcareteamrole'=>['primary', 'assist', 'supervisor', 'other', 'primary', 'assist', 'supervisor', 'other']}, 'type'=>'CodeableConcept', 'path'=>'CareTeam.role', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/claim-careteamrole'}},
158
158
  'qualification' => {'valid_codes'=>{'http://hl7.org/fhir/ex-providerqualification'=>['311405', '604215', '604210', '311405', '604215', '604210']}, 'type'=>'CodeableConcept', 'path'=>'CareTeam.qualification', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/provider-qualification'}}
@@ -162,7 +162,7 @@ module FHIR
162
162
  attr_accessor :extension # 0-* [ Extension ]
163
163
  attr_accessor :modifierExtension # 0-* [ Extension ]
164
164
  attr_accessor :sequence # 1-1 positiveInt
165
- attr_accessor :provider # 1-1 Reference()
165
+ attr_accessor :provider # 1-1 Reference(Practitioner|Organization)
166
166
  attr_accessor :responsible # 0-1 boolean
167
167
  attr_accessor :role # 0-1 CodeableConcept
168
168
  attr_accessor :qualification # 0-1 CodeableConcept
@@ -182,7 +182,7 @@ module FHIR
182
182
  'modifierExtension' => {'type'=>'Extension', 'path'=>'Diagnosis.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
183
183
  'sequence' => {'type'=>'positiveInt', 'path'=>'Diagnosis.sequence', 'min'=>1, 'max'=>1},
184
184
  'diagnosisCodeableConcept' => {'type'=>'CodeableConcept', 'path'=>'Diagnosis.diagnosis[x]', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/icd-10'}},
185
- 'diagnosisReference' => {'type'=>'Reference', 'path'=>'Diagnosis.diagnosis[x]', 'min'=>1, 'max'=>1},
185
+ 'diagnosisReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Condition'], 'type'=>'Reference', 'path'=>'Diagnosis.diagnosis[x]', 'min'=>1, 'max'=>1},
186
186
  'type' => {'valid_codes'=>{'http://hl7.org/fhir/ex-diagnosistype'=>['admitting', 'clinical', 'differential', 'discharge', 'laboratory', 'nursing', 'prenatal', 'principal', 'radiology', 'remote', 'retrospective', 'self', 'admitting', 'clinical', 'differential', 'discharge', 'laboratory', 'nursing', 'prenatal', 'principal', 'radiology', 'remote', 'retrospective', 'self']}, 'type'=>'CodeableConcept', 'path'=>'Diagnosis.type', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/ex-diagnosistype'}},
187
187
  'packageCode' => {'valid_codes'=>{'http://hl7.org/fhir/ex-diagnosisrelatedgroup'=>['100', '101', '300', '100', '101', '300']}, 'type'=>'CodeableConcept', 'path'=>'Diagnosis.packageCode', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/ex-diagnosisrelatedgroup'}}
188
188
  }
@@ -192,7 +192,7 @@ module FHIR
192
192
  attr_accessor :modifierExtension # 0-* [ Extension ]
193
193
  attr_accessor :sequence # 1-1 positiveInt
194
194
  attr_accessor :diagnosisCodeableConcept # 1-1 CodeableConcept
195
- attr_accessor :diagnosisReference # 1-1 Reference()
195
+ attr_accessor :diagnosisReference # 1-1 Reference(Condition)
196
196
  attr_accessor :type # 0-* [ CodeableConcept ]
197
197
  attr_accessor :packageCode # 0-1 CodeableConcept
198
198
  end
@@ -212,7 +212,7 @@ module FHIR
212
212
  'sequence' => {'type'=>'positiveInt', 'path'=>'Procedure.sequence', 'min'=>1, 'max'=>1},
213
213
  'date' => {'type'=>'dateTime', 'path'=>'Procedure.date', 'min'=>0, 'max'=>1},
214
214
  'procedureCodeableConcept' => {'valid_codes'=>{'http://hl7.org/fhir/sid/ex-icd-10-procedures'=>['123001', '123002', '123003', '123001', '123002', '123003']}, 'type'=>'CodeableConcept', 'path'=>'Procedure.procedure[x]', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/icd-10-procedures'}},
215
- 'procedureReference' => {'type'=>'Reference', 'path'=>'Procedure.procedure[x]', 'min'=>1, 'max'=>1}
215
+ 'procedureReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Procedure'], 'type'=>'Reference', 'path'=>'Procedure.procedure[x]', 'min'=>1, 'max'=>1}
216
216
  }
217
217
 
218
218
  attr_accessor :id # 0-1 string
@@ -221,7 +221,7 @@ module FHIR
221
221
  attr_accessor :sequence # 1-1 positiveInt
222
222
  attr_accessor :date # 0-1 dateTime
223
223
  attr_accessor :procedureCodeableConcept # 1-1 CodeableConcept
224
- attr_accessor :procedureReference # 1-1 Reference()
224
+ attr_accessor :procedureReference # 1-1 Reference(Procedure)
225
225
  end
226
226
 
227
227
  class Insurance < FHIR::Model
@@ -233,14 +233,14 @@ module FHIR
233
233
  'id' => {'type'=>'string', 'path'=>'Insurance.id', 'min'=>0, 'max'=>1},
234
234
  'extension' => {'type'=>'Extension', 'path'=>'Insurance.extension', 'min'=>0, 'max'=>Float::INFINITY},
235
235
  'modifierExtension' => {'type'=>'Extension', 'path'=>'Insurance.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
236
- 'coverage' => {'type'=>'Reference', 'path'=>'Insurance.coverage', 'min'=>0, 'max'=>1},
236
+ 'coverage' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Coverage'], 'type'=>'Reference', 'path'=>'Insurance.coverage', 'min'=>0, 'max'=>1},
237
237
  'preAuthRef' => {'type'=>'string', 'path'=>'Insurance.preAuthRef', 'min'=>0, 'max'=>Float::INFINITY}
238
238
  }
239
239
 
240
240
  attr_accessor :id # 0-1 string
241
241
  attr_accessor :extension # 0-* [ Extension ]
242
242
  attr_accessor :modifierExtension # 0-* [ Extension ]
243
- attr_accessor :coverage # 0-1 Reference()
243
+ attr_accessor :coverage # 0-1 Reference(Coverage)
244
244
  attr_accessor :preAuthRef # 0-* [ string ]
245
245
  end
246
246
 
@@ -259,7 +259,7 @@ module FHIR
259
259
  'date' => {'type'=>'date', 'path'=>'Accident.date', 'min'=>0, 'max'=>1},
260
260
  'type' => {'valid_codes'=>{'http://hl7.org/fhir/v3/ActCode'=>['MVA', 'SCHOOL', 'SPT', 'WPA']}, 'type'=>'CodeableConcept', 'path'=>'Accident.type', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/v3-ActIncidentCode'}},
261
261
  'locationAddress' => {'type'=>'Address', 'path'=>'Accident.location[x]', 'min'=>0, 'max'=>1},
262
- 'locationReference' => {'type'=>'Reference', 'path'=>'Accident.location[x]', 'min'=>0, 'max'=>1}
262
+ 'locationReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Location'], 'type'=>'Reference', 'path'=>'Accident.location[x]', 'min'=>0, 'max'=>1}
263
263
  }
264
264
 
265
265
  attr_accessor :id # 0-1 string
@@ -268,7 +268,7 @@ module FHIR
268
268
  attr_accessor :date # 0-1 date
269
269
  attr_accessor :type # 0-1 CodeableConcept
270
270
  attr_accessor :locationAddress # 0-1 Address
271
- attr_accessor :locationReference # 0-1 Reference()
271
+ attr_accessor :locationReference # 0-1 Reference(Location)
272
272
  end
273
273
 
274
274
  class Item < FHIR::Model
@@ -298,12 +298,12 @@ module FHIR
298
298
  'servicedPeriod' => {'type'=>'Period', 'path'=>'Item.serviced[x]', 'min'=>0, 'max'=>1},
299
299
  'locationCodeableConcept' => {'valid_codes'=>{'http://hl7.org/fhir/ex-serviceplace'=>['01', '03', '04', '05', '06', '07', '08', '09', '11', '12', '13', '14', '15', '19', '20', '21', '41', '01', '03', '04', '05', '06', '07', '08', '09', '11', '12', '13', '14', '15', '19', '20', '21', '41']}, 'type'=>'CodeableConcept', 'path'=>'Item.location[x]', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/service-place'}},
300
300
  'locationAddress' => {'type'=>'Address', 'path'=>'Item.location[x]', 'min'=>0, 'max'=>1},
301
- 'locationReference' => {'type'=>'Reference', 'path'=>'Item.location[x]', 'min'=>0, 'max'=>1},
301
+ 'locationReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Location'], 'type'=>'Reference', 'path'=>'Item.location[x]', 'min'=>0, 'max'=>1},
302
302
  'quantity' => {'type'=>'Quantity', 'path'=>'Item.quantity', 'min'=>0, 'max'=>1},
303
303
  'unitPrice' => {'type'=>'Money', 'path'=>'Item.unitPrice', 'min'=>0, 'max'=>1},
304
304
  'factor' => {'type'=>'decimal', 'path'=>'Item.factor', 'min'=>0, 'max'=>1},
305
305
  'net' => {'type'=>'Money', 'path'=>'Item.net', 'min'=>0, 'max'=>1},
306
- 'udi' => {'type'=>'Reference', 'path'=>'Item.udi', 'min'=>0, 'max'=>Float::INFINITY},
306
+ 'udi' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Device'], 'type'=>'Reference', 'path'=>'Item.udi', 'min'=>0, 'max'=>Float::INFINITY},
307
307
  'bodySite' => {'valid_codes'=>{'http://hl7.org/fhir/ex-tooth'=>['0', '1', '2', '3', '4', '5', '6', '7', '8', '11', '12', '13', '14', '15', '16', '17', '18', '21', '22', '23', '24', '25', '26', '27', '28', '31', '32', '33', '34', '35', '36', '37', '38', '41', '42', '43', '44', '45', '46', '47', '48', '0', '1', '2', '3', '4', '5', '6', '7', '8', '11', '12', '13', '14', '15', '16', '17', '18', '21', '22', '23', '24', '25', '26', '27', '28', '31', '32', '33', '34', '35', '36', '37', '38', '41', '42', '43', '44', '45', '46', '47', '48']}, 'type'=>'CodeableConcept', 'path'=>'Item.bodySite', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/tooth'}},
308
308
  'subSite' => {'valid_codes'=>{'http://hl7.org/fhir/FDI-surface'=>['M', 'O', 'I', 'D', 'B', 'V', 'L', 'MO', 'DO', 'DI', 'MOD', 'M', 'O', 'I', 'D', 'B', 'V', 'L', 'MO', 'DO', 'DI', 'MOD']}, 'type'=>'CodeableConcept', 'path'=>'Item.subSite', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/surface'}},
309
309
  'noteNumber' => {'type'=>'positiveInt', 'path'=>'Item.noteNumber', 'min'=>0, 'max'=>Float::INFINITY},
@@ -356,7 +356,7 @@ module FHIR
356
356
  'unitPrice' => {'type'=>'Money', 'path'=>'Detail.unitPrice', 'min'=>0, 'max'=>1},
357
357
  'factor' => {'type'=>'decimal', 'path'=>'Detail.factor', 'min'=>0, 'max'=>1},
358
358
  'net' => {'type'=>'Money', 'path'=>'Detail.net', 'min'=>0, 'max'=>1},
359
- 'udi' => {'type'=>'Reference', 'path'=>'Detail.udi', 'min'=>0, 'max'=>Float::INFINITY},
359
+ 'udi' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Device'], 'type'=>'Reference', 'path'=>'Detail.udi', 'min'=>0, 'max'=>Float::INFINITY},
360
360
  'noteNumber' => {'type'=>'positiveInt', 'path'=>'Detail.noteNumber', 'min'=>0, 'max'=>Float::INFINITY},
361
361
  'adjudication' => {'type'=>'ExplanationOfBenefit::Item::Adjudication', 'path'=>'Detail.adjudication', 'min'=>0, 'max'=>Float::INFINITY},
362
362
  'subDetail' => {'type'=>'ExplanationOfBenefit::Item::Detail::SubDetail', 'path'=>'Detail.subDetail', 'min'=>0, 'max'=>Float::INFINITY}
@@ -382,7 +382,7 @@ module FHIR
382
382
  'unitPrice' => {'type'=>'Money', 'path'=>'SubDetail.unitPrice', 'min'=>0, 'max'=>1},
383
383
  'factor' => {'type'=>'decimal', 'path'=>'SubDetail.factor', 'min'=>0, 'max'=>1},
384
384
  'net' => {'type'=>'Money', 'path'=>'SubDetail.net', 'min'=>0, 'max'=>1},
385
- 'udi' => {'type'=>'Reference', 'path'=>'SubDetail.udi', 'min'=>0, 'max'=>Float::INFINITY},
385
+ 'udi' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Device'], 'type'=>'Reference', 'path'=>'SubDetail.udi', 'min'=>0, 'max'=>Float::INFINITY},
386
386
  'noteNumber' => {'type'=>'positiveInt', 'path'=>'SubDetail.noteNumber', 'min'=>0, 'max'=>Float::INFINITY},
387
387
  'adjudication' => {'type'=>'ExplanationOfBenefit::Item::Adjudication', 'path'=>'SubDetail.adjudication', 'min'=>0, 'max'=>Float::INFINITY}
388
388
  }
@@ -401,7 +401,7 @@ module FHIR
401
401
  attr_accessor :unitPrice # 0-1 Money
402
402
  attr_accessor :factor # 0-1 decimal
403
403
  attr_accessor :net # 0-1 Money
404
- attr_accessor :udi # 0-* [ Reference() ]
404
+ attr_accessor :udi # 0-* [ Reference(Device) ]
405
405
  attr_accessor :noteNumber # 0-* [ positiveInt ]
406
406
  attr_accessor :adjudication # 0-* [ ExplanationOfBenefit::Item::Adjudication ]
407
407
  end
@@ -420,7 +420,7 @@ module FHIR
420
420
  attr_accessor :unitPrice # 0-1 Money
421
421
  attr_accessor :factor # 0-1 decimal
422
422
  attr_accessor :net # 0-1 Money
423
- attr_accessor :udi # 0-* [ Reference() ]
423
+ attr_accessor :udi # 0-* [ Reference(Device) ]
424
424
  attr_accessor :noteNumber # 0-* [ positiveInt ]
425
425
  attr_accessor :adjudication # 0-* [ ExplanationOfBenefit::Item::Adjudication ]
426
426
  attr_accessor :subDetail # 0-* [ ExplanationOfBenefit::Item::Detail::SubDetail ]
@@ -465,12 +465,12 @@ module FHIR
465
465
  attr_accessor :servicedPeriod # 0-1 Period
466
466
  attr_accessor :locationCodeableConcept # 0-1 CodeableConcept
467
467
  attr_accessor :locationAddress # 0-1 Address
468
- attr_accessor :locationReference # 0-1 Reference()
468
+ attr_accessor :locationReference # 0-1 Reference(Location)
469
469
  attr_accessor :quantity # 0-1 Quantity
470
470
  attr_accessor :unitPrice # 0-1 Money
471
471
  attr_accessor :factor # 0-1 decimal
472
472
  attr_accessor :net # 0-1 Money
473
- attr_accessor :udi # 0-* [ Reference() ]
473
+ attr_accessor :udi # 0-* [ Reference(Device) ]
474
474
  attr_accessor :bodySite # 0-1 CodeableConcept
475
475
  attr_accessor :subSite # 0-* [ CodeableConcept ]
476
476
  attr_accessor :noteNumber # 0-* [ positiveInt ]
@@ -673,22 +673,22 @@ module FHIR
673
673
  attr_accessor :status # 0-1 code
674
674
  attr_accessor :type # 0-1 CodeableConcept
675
675
  attr_accessor :subType # 0-* [ CodeableConcept ]
676
- attr_accessor :patient # 0-1 Reference()
676
+ attr_accessor :patient # 0-1 Reference(Patient)
677
677
  attr_accessor :billablePeriod # 0-1 Period
678
678
  attr_accessor :created # 0-1 dateTime
679
- attr_accessor :enterer # 0-1 Reference()
680
- attr_accessor :insurer # 0-1 Reference()
681
- attr_accessor :provider # 0-1 Reference()
682
- attr_accessor :organization # 0-1 Reference()
683
- attr_accessor :referral # 0-1 Reference()
684
- attr_accessor :facility # 0-1 Reference()
685
- attr_accessor :claim # 0-1 Reference()
686
- attr_accessor :claimResponse # 0-1 Reference()
679
+ attr_accessor :enterer # 0-1 Reference(Practitioner)
680
+ attr_accessor :insurer # 0-1 Reference(Organization)
681
+ attr_accessor :provider # 0-1 Reference(Practitioner)
682
+ attr_accessor :organization # 0-1 Reference(Organization)
683
+ attr_accessor :referral # 0-1 Reference(ReferralRequest)
684
+ attr_accessor :facility # 0-1 Reference(Location)
685
+ attr_accessor :claim # 0-1 Reference(Claim)
686
+ attr_accessor :claimResponse # 0-1 Reference(ClaimResponse)
687
687
  attr_accessor :outcome # 0-1 CodeableConcept
688
688
  attr_accessor :disposition # 0-1 string
689
689
  attr_accessor :related # 0-* [ ExplanationOfBenefit::Related ]
690
- attr_accessor :prescription # 0-1 Reference()
691
- attr_accessor :originalPrescription # 0-1 Reference()
690
+ attr_accessor :prescription # 0-1 Reference(MedicationRequest|VisionPrescription)
691
+ attr_accessor :originalPrescription # 0-1 Reference(MedicationRequest)
692
692
  attr_accessor :payee # 0-1 ExplanationOfBenefit::Payee
693
693
  attr_accessor :information # 0-* [ ExplanationOfBenefit::Information ]
694
694
  attr_accessor :careTeam # 0-* [ ExplanationOfBenefit::CareTeam ]
@@ -9,7 +9,7 @@ module FHIR
9
9
  'age' => ['Age', 'Range', 'string'],
10
10
  'deceased' => ['boolean', 'Age', 'Range', 'date', 'string']
11
11
  }
12
- SEARCH_PARAMS = []
12
+ SEARCH_PARAMS = ['code', 'date', 'identifier', 'patient', 'gender', 'relationship']
13
13
  METADATA = {
14
14
  'id' => {'type'=>'id', 'path'=>'FamilyMemberHistory.id', 'min'=>0, 'max'=>1},
15
15
  'meta' => {'type'=>'Meta', 'path'=>'FamilyMemberHistory.meta', 'min'=>0, 'max'=>1},
@@ -20,7 +20,7 @@ module FHIR
20
20
  'extension' => {'type'=>'Extension', 'path'=>'FamilyMemberHistory.extension', 'min'=>0, 'max'=>Float::INFINITY},
21
21
  'modifierExtension' => {'type'=>'Extension', 'path'=>'FamilyMemberHistory.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
22
22
  'identifier' => {'type'=>'Identifier', 'path'=>'FamilyMemberHistory.identifier', 'min'=>0, 'max'=>Float::INFINITY},
23
- 'patient' => {'type'=>'Reference', 'path'=>'FamilyMemberHistory.patient', 'min'=>1, 'max'=>1},
23
+ 'patient' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Patient'], 'type'=>'Reference', 'path'=>'FamilyMemberHistory.patient', 'min'=>1, 'max'=>1},
24
24
  'date' => {'type'=>'dateTime', 'path'=>'FamilyMemberHistory.date', 'min'=>0, 'max'=>1},
25
25
  'status' => {'valid_codes'=>{'http://hl7.org/fhir/history-status'=>['partial', 'completed', 'entered-in-error', 'health-unknown', 'partial', 'completed', 'entered-in-error', 'health-unknown']}, 'type'=>'code', 'path'=>'FamilyMemberHistory.status', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/history-status'}},
26
26
  'name' => {'type'=>'string', 'path'=>'FamilyMemberHistory.name', 'min'=>0, 'max'=>1},
@@ -84,7 +84,7 @@ module FHIR
84
84
  attr_accessor :extension # 0-* [ Extension ]
85
85
  attr_accessor :modifierExtension # 0-* [ Extension ]
86
86
  attr_accessor :identifier # 0-* [ Identifier ]
87
- attr_accessor :patient # 1-1 Reference()
87
+ attr_accessor :patient # 1-1 Reference(Patient)
88
88
  attr_accessor :date # 0-1 dateTime
89
89
  attr_accessor :status # 1-1 code
90
90
  attr_accessor :name # 0-1 string