fhir_models 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (152) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.travis.yml +0 -1
  4. data/Gemfile.lock +1 -1
  5. data/Rakefile +0 -1
  6. data/fhir_models.gemspec +1 -1
  7. data/lib/fhir/metadata.rb +25 -0
  8. data/lib/fhir/resources/Account.rb +54 -0
  9. data/lib/fhir/resources/AllergyIntolerance.rb +92 -0
  10. data/lib/fhir/resources/Appointment.rb +88 -0
  11. data/lib/fhir/resources/AppointmentResponse.rb +48 -0
  12. data/lib/fhir/resources/AuditEvent.rb +188 -0
  13. data/lib/fhir/resources/Basic.rb +42 -0
  14. data/lib/fhir/resources/Binary.rb +28 -0
  15. data/lib/fhir/resources/BodySite.rb +44 -0
  16. data/lib/fhir/resources/Bundle.rb +154 -0
  17. data/lib/fhir/resources/CarePlan.rb +184 -0
  18. data/lib/fhir/resources/CareTeam.rb +70 -0
  19. data/lib/fhir/resources/Claim.rb +490 -0
  20. data/lib/fhir/resources/ClaimResponse.rb +421 -0
  21. data/lib/fhir/resources/ClinicalImpression.rb +131 -0
  22. data/lib/fhir/resources/CodeSystem.rb +225 -0
  23. data/lib/fhir/resources/Communication.rb +83 -0
  24. data/lib/fhir/resources/CommunicationRequest.rb +90 -0
  25. data/lib/fhir/resources/CompartmentDefinition.rb +98 -0
  26. data/lib/fhir/resources/Composition.rb +136 -0
  27. data/lib/fhir/resources/ConceptMap.rb +168 -0
  28. data/lib/fhir/resources/Condition.rb +126 -0
  29. data/lib/fhir/resources/Conformance.rb +442 -0
  30. data/lib/fhir/resources/Contract.rb +320 -0
  31. data/lib/fhir/resources/Coverage.rb +77 -0
  32. data/lib/fhir/resources/DataElement.rb +104 -0
  33. data/lib/fhir/resources/DecisionSupportRule.rb +42 -0
  34. data/lib/fhir/resources/DecisionSupportServiceModule.rb +40 -0
  35. data/lib/fhir/resources/DetectedIssue.rb +74 -0
  36. data/lib/fhir/resources/Device.rb +64 -0
  37. data/lib/fhir/resources/DeviceComponent.rb +74 -0
  38. data/lib/fhir/resources/DeviceMetric.rb +74 -0
  39. data/lib/fhir/resources/DeviceUseRequest.rb +68 -0
  40. data/lib/fhir/resources/DeviceUseStatement.rb +60 -0
  41. data/lib/fhir/resources/DiagnosticOrder.rb +106 -0
  42. data/lib/fhir/resources/DiagnosticReport.rb +91 -0
  43. data/lib/fhir/resources/DocumentManifest.rb +99 -0
  44. data/lib/fhir/resources/DocumentReference.rb +156 -0
  45. data/lib/fhir/resources/DomainResource.rb +32 -0
  46. data/lib/fhir/resources/EligibilityRequest.rb +90 -0
  47. data/lib/fhir/resources/EligibilityResponse.rb +152 -0
  48. data/lib/fhir/resources/Encounter.rb +172 -0
  49. data/lib/fhir/resources/EnrollmentRequest.rb +52 -0
  50. data/lib/fhir/resources/EnrollmentResponse.rb +52 -0
  51. data/lib/fhir/resources/EpisodeOfCare.rb +74 -0
  52. data/lib/fhir/resources/ExpansionProfile.rb +284 -0
  53. data/lib/fhir/resources/ExplanationOfBenefit.rb +764 -0
  54. data/lib/fhir/resources/FamilyMemberHistory.rb +110 -0
  55. data/lib/fhir/resources/Flag.rb +48 -0
  56. data/lib/fhir/resources/Goal.rb +91 -0
  57. data/lib/fhir/resources/Group.rb +105 -0
  58. data/lib/fhir/resources/GuidanceResponse.rb +139 -0
  59. data/lib/fhir/resources/HealthcareService.rb +122 -0
  60. data/lib/fhir/resources/ImagingExcerpt.rb +210 -0
  61. data/lib/fhir/resources/ImagingObjectSelection.rb +136 -0
  62. data/lib/fhir/resources/ImagingStudy.rb +130 -0
  63. data/lib/fhir/resources/Immunization.rb +148 -0
  64. data/lib/fhir/resources/ImmunizationRecommendation.rb +114 -0
  65. data/lib/fhir/resources/ImplementationGuide.rb +211 -0
  66. data/lib/fhir/resources/Library.rb +145 -0
  67. data/lib/fhir/resources/Linkage.rb +56 -0
  68. data/lib/fhir/resources/List.rb +82 -0
  69. data/lib/fhir/resources/Location.rb +78 -0
  70. data/lib/fhir/resources/Measure.rb +160 -0
  71. data/lib/fhir/resources/MeasureReport.rb +204 -0
  72. data/lib/fhir/resources/Media.rb +56 -0
  73. data/lib/fhir/resources/Medication.rb +154 -0
  74. data/lib/fhir/resources/MedicationAdministration.rb +104 -0
  75. data/lib/fhir/resources/MedicationDispense.rb +141 -0
  76. data/lib/fhir/resources/MedicationOrder.rb +172 -0
  77. data/lib/fhir/resources/MedicationStatement.rb +117 -0
  78. data/lib/fhir/resources/MessageHeader.rb +124 -0
  79. data/lib/fhir/resources/ModuleDefinition.rb +249 -0
  80. data/lib/fhir/resources/NamingSystem.rb +102 -0
  81. data/lib/fhir/resources/NutritionOrder.rb +211 -0
  82. data/lib/fhir/resources/Observation.rb +187 -0
  83. data/lib/fhir/resources/OperationDefinition.rb +153 -0
  84. data/lib/fhir/resources/OperationOutcome.rb +62 -0
  85. data/lib/fhir/resources/Order.rb +73 -0
  86. data/lib/fhir/resources/OrderResponse.rb +46 -0
  87. data/lib/fhir/resources/OrderSet.rb +38 -0
  88. data/lib/fhir/resources/Organization.rb +72 -0
  89. data/lib/fhir/resources/Parameters.rb +117 -0
  90. data/lib/fhir/resources/Patient.rb +166 -0
  91. data/lib/fhir/resources/PaymentNotice.rb +71 -0
  92. data/lib/fhir/resources/PaymentReconciliation.rb +140 -0
  93. data/lib/fhir/resources/Person.rb +72 -0
  94. data/lib/fhir/resources/Practitioner.rb +110 -0
  95. data/lib/fhir/resources/PractitionerRole.rb +102 -0
  96. data/lib/fhir/resources/Procedure.rb +122 -0
  97. data/lib/fhir/resources/ProcedureRequest.rb +73 -0
  98. data/lib/fhir/resources/ProcessRequest.rb +99 -0
  99. data/lib/fhir/resources/ProcessResponse.rb +92 -0
  100. data/lib/fhir/resources/Protocol.rb +242 -0
  101. data/lib/fhir/resources/Provenance.rb +122 -0
  102. data/lib/fhir/resources/Questionnaire.rb +205 -0
  103. data/lib/fhir/resources/QuestionnaireResponse.rb +123 -0
  104. data/lib/fhir/resources/ReferralRequest.rb +68 -0
  105. data/lib/fhir/resources/RelatedPerson.rb +52 -0
  106. data/lib/fhir/resources/Resource.rb +24 -0
  107. data/lib/fhir/resources/RiskAssessment.rb +88 -0
  108. data/lib/fhir/resources/Schedule.rb +46 -0
  109. data/lib/fhir/resources/SearchParameter.rb +86 -0
  110. data/lib/fhir/resources/Sequence.rb +238 -0
  111. data/lib/fhir/resources/Slot.rb +54 -0
  112. data/lib/fhir/resources/Specimen.rb +140 -0
  113. data/lib/fhir/resources/StructureDefinition.rb +164 -0
  114. data/lib/fhir/resources/StructureMap.rb +297 -0
  115. data/lib/fhir/resources/Subscription.rb +72 -0
  116. data/lib/fhir/resources/Substance.rb +86 -0
  117. data/lib/fhir/resources/SupplyDelivery.rb +54 -0
  118. data/lib/fhir/resources/SupplyRequest.rb +77 -0
  119. data/lib/fhir/resources/Task.rb +240 -0
  120. data/lib/fhir/resources/TestScript.rb +692 -0
  121. data/lib/fhir/resources/ValueSet.rb +289 -0
  122. data/lib/fhir/resources/VisionPrescription.rb +97 -0
  123. data/lib/fhir/types/ActionDefinition.rb +109 -0
  124. data/lib/fhir/types/Address.rb +36 -0
  125. data/lib/fhir/types/Annotation.rb +27 -0
  126. data/lib/fhir/types/Attachment.rb +32 -0
  127. data/lib/fhir/types/BackboneElement.rb +18 -0
  128. data/lib/fhir/types/CodeableConcept.rb +20 -0
  129. data/lib/fhir/types/Coding.rb +26 -0
  130. data/lib/fhir/types/ContactPoint.rb +26 -0
  131. data/lib/fhir/types/DataRequirement.rb +78 -0
  132. data/lib/fhir/types/Element.rb +16 -0
  133. data/lib/fhir/types/ElementDefinition.rb +605 -0
  134. data/lib/fhir/types/Extension.rb +87 -0
  135. data/lib/fhir/types/HumanName.rb +30 -0
  136. data/lib/fhir/types/Identifier.rb +28 -0
  137. data/lib/fhir/types/Meta.rb +26 -0
  138. data/lib/fhir/types/ModuleMetadata.rb +152 -0
  139. data/lib/fhir/types/Narrative.rb +20 -0
  140. data/lib/fhir/types/ParameterDefinition.rb +30 -0
  141. data/lib/fhir/types/Period.rb +20 -0
  142. data/lib/fhir/types/Quantity.rb +26 -0
  143. data/lib/fhir/types/Range.rb +20 -0
  144. data/lib/fhir/types/Ratio.rb +20 -0
  145. data/lib/fhir/types/Reference.rb +20 -0
  146. data/lib/fhir/types/SampledData.rb +30 -0
  147. data/lib/fhir/types/Signature.rb +31 -0
  148. data/lib/fhir/types/Timing.rb +69 -0
  149. data/lib/fhir/types/TriggerDefinition.rb +33 -0
  150. data/lib/fhir_models.rb +2 -2
  151. data/lib/tasks/tasks.rake +29 -0
  152. metadata +145 -2
@@ -0,0 +1,238 @@
1
+ module FHIR
2
+ class Sequence < FHIR::Model
3
+ include FHIR::Hashable
4
+ include FHIR::Json
5
+ include FHIR::Xml
6
+
7
+ SEARCH_PARAMS = ["chromosome", "end", "patient", "species", "start", "type"]
8
+ METADATA = {
9
+ 'id' => {'type'=>'id', 'path'=>'Sequence.id', 'min'=>0, 'max'=>1},
10
+ 'meta' => {'type'=>'Meta', 'path'=>'Sequence.meta', 'min'=>0, 'max'=>1},
11
+ 'implicitRules' => {'type'=>'uri', 'path'=>'Sequence.implicitRules', 'min'=>0, 'max'=>1},
12
+ 'language' => {'type'=>'code', 'path'=>'Sequence.language', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://tools.ietf.org/html/bcp47'}},
13
+ 'text' => {'type'=>'Narrative', 'path'=>'Sequence.text', 'min'=>0, 'max'=>1},
14
+ 'contained' => {'type'=>'Resource', 'path'=>'Sequence.contained', 'min'=>0, 'max'=>Float::INFINITY},
15
+ 'extension' => {'type'=>'Extension', 'path'=>'Sequence.extension', 'min'=>0, 'max'=>Float::INFINITY},
16
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Sequence.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
17
+ 'type' => {'valid_codes'=>{'http://hl7.org/fhir/sequence-type'=>['AA', 'DNA', 'RNA']}, 'type'=>'code', 'path'=>'Sequence.type', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/sequence-type'}},
18
+ 'patient' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Patient'], 'type'=>'Reference', 'path'=>'Sequence.patient', 'min'=>0, 'max'=>1},
19
+ 'specimen' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Specimen'], 'type'=>'Reference', 'path'=>'Sequence.specimen', 'min'=>0, 'max'=>1},
20
+ 'device' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Device'], 'type'=>'Reference', 'path'=>'Sequence.device', 'min'=>0, 'max'=>1},
21
+ 'quantity' => {'type'=>'Quantity', 'path'=>'Sequence.quantity', 'min'=>0, 'max'=>1},
22
+ 'species' => {'type'=>'CodeableConcept', 'path'=>'Sequence.species', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/sequence-species'}},
23
+ 'referenceSeq' => {'type'=>'Sequence::Referenceseq', 'path'=>'Sequence.referenceSeq', 'min'=>0, 'max'=>Float::INFINITY},
24
+ 'variation' => {'type'=>'Sequence::Variation', 'path'=>'Sequence.variation', 'min'=>0, 'max'=>1},
25
+ 'quality' => {'type'=>'Sequence::Quality', 'path'=>'Sequence.quality', 'min'=>0, 'max'=>Float::INFINITY},
26
+ 'allelicState' => {'valid_codes'=>{'http://hl7.org/fhir/LOINC-53034-5-answerlist'=>['LA6703-8', 'LA6704-6', 'LA6705-3', 'LA6706-1', 'LA6707-9']}, 'type'=>'CodeableConcept', 'path'=>'Sequence.allelicState', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/LOINC-53034-5-answerlist'}},
27
+ 'allelicFrequency' => {'type'=>'decimal', 'path'=>'Sequence.allelicFrequency', 'min'=>0, 'max'=>1},
28
+ 'copyNumberEvent' => {'valid_codes'=>{'http://hl7.org/fhir/copy-number-event'=>['amp', 'del', 'lof']}, 'type'=>'CodeableConcept', 'path'=>'Sequence.copyNumberEvent', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/copy-number-event'}},
29
+ 'readCoverage' => {'type'=>'integer', 'path'=>'Sequence.readCoverage', 'min'=>0, 'max'=>1},
30
+ 'repository' => {'type'=>'Sequence::Repository', 'path'=>'Sequence.repository', 'min'=>0, 'max'=>Float::INFINITY},
31
+ 'pointer' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Sequence'], 'type'=>'Reference', 'path'=>'Sequence.pointer', 'min'=>0, 'max'=>Float::INFINITY},
32
+ 'observedSeq' => {'type'=>'string', 'path'=>'Sequence.observedSeq', 'min'=>0, 'max'=>1},
33
+ 'observation' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Observation'], 'type'=>'Reference', 'path'=>'Sequence.observation', 'min'=>0, 'max'=>1},
34
+ 'structureVariation' => {'type'=>'Sequence::Structurevariation', 'path'=>'Sequence.structureVariation', 'min'=>0, 'max'=>1}
35
+ }
36
+
37
+ class Referenceseq < FHIR::Model
38
+ include FHIR::Hashable
39
+ include FHIR::Json
40
+ include FHIR::Xml
41
+
42
+ METADATA = {
43
+ 'id' => {'type'=>'id', 'path'=>'Referenceseq.id', 'min'=>0, 'max'=>1},
44
+ 'extension' => {'type'=>'Extension', 'path'=>'Referenceseq.extension', 'min'=>0, 'max'=>Float::INFINITY},
45
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Referenceseq.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
46
+ 'chromosome' => {'valid_codes'=>{'http://hl7.org/fhir/chromosome-human'=>['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', 'X', 'Y']}, 'type'=>'CodeableConcept', 'path'=>'Referenceseq.chromosome', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/chromosome-human'}},
47
+ 'genomeBuild' => {'type'=>'string', 'path'=>'Referenceseq.genomeBuild', 'min'=>0, 'max'=>1},
48
+ 'referenceSeqId' => {'type'=>'CodeableConcept', 'path'=>'Referenceseq.referenceSeqId', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/sequence-referenceSeq'}},
49
+ 'referenceSeqPointer' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Sequence'], 'type'=>'Reference', 'path'=>'Referenceseq.referenceSeqPointer', 'min'=>0, 'max'=>1},
50
+ 'referenceSeqString' => {'type'=>'string', 'path'=>'Referenceseq.referenceSeqString', 'min'=>0, 'max'=>1},
51
+ 'windowStart' => {'type'=>'integer', 'path'=>'Referenceseq.windowStart', 'min'=>1, 'max'=>1},
52
+ 'windowEnd' => {'type'=>'integer', 'path'=>'Referenceseq.windowEnd', 'min'=>1, 'max'=>1}
53
+ }
54
+
55
+ attr_accessor :id # 0-1 id
56
+ attr_accessor :extension # 0-* [ Extension ]
57
+ attr_accessor :modifierExtension # 0-* [ Extension ]
58
+ attr_accessor :chromosome # 0-1 CodeableConcept
59
+ attr_accessor :genomeBuild # 0-1 string
60
+ attr_accessor :referenceSeqId # 1-1 CodeableConcept
61
+ attr_accessor :referenceSeqPointer # 0-1 Reference(Sequence)
62
+ attr_accessor :referenceSeqString # 0-1 string
63
+ attr_accessor :windowStart # 1-1 integer
64
+ attr_accessor :windowEnd # 1-1 integer
65
+ end
66
+
67
+ class Variation < FHIR::Model
68
+ include FHIR::Hashable
69
+ include FHIR::Json
70
+ include FHIR::Xml
71
+
72
+ METADATA = {
73
+ 'id' => {'type'=>'id', 'path'=>'Variation.id', 'min'=>0, 'max'=>1},
74
+ 'extension' => {'type'=>'Extension', 'path'=>'Variation.extension', 'min'=>0, 'max'=>Float::INFINITY},
75
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Variation.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
76
+ 'start' => {'type'=>'integer', 'path'=>'Variation.start', 'min'=>0, 'max'=>1},
77
+ 'end' => {'type'=>'integer', 'path'=>'Variation.end', 'min'=>0, 'max'=>1},
78
+ 'observedAllele' => {'type'=>'string', 'path'=>'Variation.observedAllele', 'min'=>0, 'max'=>1},
79
+ 'referenceAllele' => {'type'=>'string', 'path'=>'Variation.referenceAllele', 'min'=>0, 'max'=>1},
80
+ 'cigar' => {'type'=>'string', 'path'=>'Variation.cigar', 'min'=>0, 'max'=>1}
81
+ }
82
+
83
+ attr_accessor :id # 0-1 id
84
+ attr_accessor :extension # 0-* [ Extension ]
85
+ attr_accessor :modifierExtension # 0-* [ Extension ]
86
+ attr_accessor :start # 0-1 integer
87
+ attr_accessor :end # 0-1 integer
88
+ attr_accessor :observedAllele # 0-1 string
89
+ attr_accessor :referenceAllele # 0-1 string
90
+ attr_accessor :cigar # 0-1 string
91
+ end
92
+
93
+ class Quality < FHIR::Model
94
+ include FHIR::Hashable
95
+ include FHIR::Json
96
+ include FHIR::Xml
97
+
98
+ METADATA = {
99
+ 'id' => {'type'=>'id', 'path'=>'Quality.id', 'min'=>0, 'max'=>1},
100
+ 'extension' => {'type'=>'Extension', 'path'=>'Quality.extension', 'min'=>0, 'max'=>Float::INFINITY},
101
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Quality.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
102
+ 'start' => {'type'=>'integer', 'path'=>'Quality.start', 'min'=>0, 'max'=>1},
103
+ 'end' => {'type'=>'integer', 'path'=>'Quality.end', 'min'=>0, 'max'=>1},
104
+ 'score' => {'type'=>'Quantity', 'path'=>'Quality.score', 'min'=>0, 'max'=>1},
105
+ 'method' => {'local_name'=>'local_method', 'type'=>'string', 'path'=>'Quality.method', 'min'=>0, 'max'=>1}
106
+ }
107
+
108
+ attr_accessor :id # 0-1 id
109
+ attr_accessor :extension # 0-* [ Extension ]
110
+ attr_accessor :modifierExtension # 0-* [ Extension ]
111
+ attr_accessor :start # 0-1 integer
112
+ attr_accessor :end # 0-1 integer
113
+ attr_accessor :score # 0-1 Quantity
114
+ attr_accessor :local_method # 0-1 string
115
+ end
116
+
117
+ class Repository < FHIR::Model
118
+ include FHIR::Hashable
119
+ include FHIR::Json
120
+ include FHIR::Xml
121
+
122
+ METADATA = {
123
+ 'id' => {'type'=>'id', 'path'=>'Repository.id', 'min'=>0, 'max'=>1},
124
+ 'extension' => {'type'=>'Extension', 'path'=>'Repository.extension', 'min'=>0, 'max'=>Float::INFINITY},
125
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Repository.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
126
+ 'url' => {'type'=>'uri', 'path'=>'Repository.url', 'min'=>0, 'max'=>1},
127
+ 'name' => {'type'=>'string', 'path'=>'Repository.name', 'min'=>0, 'max'=>1},
128
+ 'variantId' => {'type'=>'string', 'path'=>'Repository.variantId', 'min'=>0, 'max'=>1},
129
+ 'readId' => {'type'=>'string', 'path'=>'Repository.readId', 'min'=>0, 'max'=>1}
130
+ }
131
+
132
+ attr_accessor :id # 0-1 id
133
+ attr_accessor :extension # 0-* [ Extension ]
134
+ attr_accessor :modifierExtension # 0-* [ Extension ]
135
+ attr_accessor :url # 0-1 uri
136
+ attr_accessor :name # 0-1 string
137
+ attr_accessor :variantId # 0-1 string
138
+ attr_accessor :readId # 0-1 string
139
+ end
140
+
141
+ class Structurevariation < FHIR::Model
142
+ include FHIR::Hashable
143
+ include FHIR::Json
144
+ include FHIR::Xml
145
+
146
+ METADATA = {
147
+ 'id' => {'type'=>'id', 'path'=>'Structurevariation.id', 'min'=>0, 'max'=>1},
148
+ 'extension' => {'type'=>'Extension', 'path'=>'Structurevariation.extension', 'min'=>0, 'max'=>Float::INFINITY},
149
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Structurevariation.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
150
+ 'precisionOfBoundaries' => {'type'=>'string', 'path'=>'Structurevariation.precisionOfBoundaries', 'min'=>0, 'max'=>1},
151
+ 'reportedaCGHRatio' => {'type'=>'decimal', 'path'=>'Structurevariation.reportedaCGHRatio', 'min'=>0, 'max'=>1},
152
+ 'length' => {'type'=>'integer', 'path'=>'Structurevariation.length', 'min'=>0, 'max'=>1},
153
+ 'outer' => {'type'=>'Sequence::Structurevariation::Outer', 'path'=>'Structurevariation.outer', 'min'=>0, 'max'=>1},
154
+ 'inner' => {'type'=>'Sequence::Structurevariation::Inner', 'path'=>'Structurevariation.inner', 'min'=>0, 'max'=>1}
155
+ }
156
+
157
+ class Outer < FHIR::Model
158
+ include FHIR::Hashable
159
+ include FHIR::Json
160
+ include FHIR::Xml
161
+
162
+ METADATA = {
163
+ 'id' => {'type'=>'id', 'path'=>'Outer.id', 'min'=>0, 'max'=>1},
164
+ 'extension' => {'type'=>'Extension', 'path'=>'Outer.extension', 'min'=>0, 'max'=>Float::INFINITY},
165
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Outer.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
166
+ 'start' => {'type'=>'integer', 'path'=>'Outer.start', 'min'=>0, 'max'=>1},
167
+ 'end' => {'type'=>'integer', 'path'=>'Outer.end', 'min'=>0, 'max'=>1}
168
+ }
169
+
170
+ attr_accessor :id # 0-1 id
171
+ attr_accessor :extension # 0-* [ Extension ]
172
+ attr_accessor :modifierExtension # 0-* [ Extension ]
173
+ attr_accessor :start # 0-1 integer
174
+ attr_accessor :end # 0-1 integer
175
+ end
176
+
177
+ class Inner < FHIR::Model
178
+ include FHIR::Hashable
179
+ include FHIR::Json
180
+ include FHIR::Xml
181
+
182
+ METADATA = {
183
+ 'id' => {'type'=>'id', 'path'=>'Inner.id', 'min'=>0, 'max'=>1},
184
+ 'extension' => {'type'=>'Extension', 'path'=>'Inner.extension', 'min'=>0, 'max'=>Float::INFINITY},
185
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Inner.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
186
+ 'start' => {'type'=>'integer', 'path'=>'Inner.start', 'min'=>0, 'max'=>1},
187
+ 'end' => {'type'=>'integer', 'path'=>'Inner.end', 'min'=>0, 'max'=>1}
188
+ }
189
+
190
+ attr_accessor :id # 0-1 id
191
+ attr_accessor :extension # 0-* [ Extension ]
192
+ attr_accessor :modifierExtension # 0-* [ Extension ]
193
+ attr_accessor :start # 0-1 integer
194
+ attr_accessor :end # 0-1 integer
195
+ end
196
+
197
+ attr_accessor :id # 0-1 id
198
+ attr_accessor :extension # 0-* [ Extension ]
199
+ attr_accessor :modifierExtension # 0-* [ Extension ]
200
+ attr_accessor :precisionOfBoundaries # 0-1 string
201
+ attr_accessor :reportedaCGHRatio # 0-1 decimal
202
+ attr_accessor :length # 0-1 integer
203
+ attr_accessor :outer # 0-1 Sequence::Structurevariation::Outer
204
+ attr_accessor :inner # 0-1 Sequence::Structurevariation::Inner
205
+ end
206
+
207
+ attr_accessor :id # 0-1 id
208
+ attr_accessor :meta # 0-1 Meta
209
+ attr_accessor :implicitRules # 0-1 uri
210
+ attr_accessor :language # 0-1 code
211
+ attr_accessor :text # 0-1 Narrative
212
+ attr_accessor :contained # 0-* [ Resource ]
213
+ attr_accessor :extension # 0-* [ Extension ]
214
+ attr_accessor :modifierExtension # 0-* [ Extension ]
215
+ attr_accessor :type # 1-1 code
216
+ attr_accessor :patient # 0-1 Reference(Patient)
217
+ attr_accessor :specimen # 0-1 Reference(Specimen)
218
+ attr_accessor :device # 0-1 Reference(Device)
219
+ attr_accessor :quantity # 0-1 Quantity
220
+ attr_accessor :species # 0-1 CodeableConcept
221
+ attr_accessor :referenceSeq # 0-* [ Sequence::Referenceseq ]
222
+ attr_accessor :variation # 0-1 Sequence::Variation
223
+ attr_accessor :quality # 0-* [ Sequence::Quality ]
224
+ attr_accessor :allelicState # 0-1 CodeableConcept
225
+ attr_accessor :allelicFrequency # 0-1 decimal
226
+ attr_accessor :copyNumberEvent # 0-1 CodeableConcept
227
+ attr_accessor :readCoverage # 0-1 integer
228
+ attr_accessor :repository # 0-* [ Sequence::Repository ]
229
+ attr_accessor :pointer # 0-* [ Reference(Sequence) ]
230
+ attr_accessor :observedSeq # 0-1 string
231
+ attr_accessor :observation # 0-1 Reference(Observation)
232
+ attr_accessor :structureVariation # 0-1 Sequence::Structurevariation
233
+
234
+ def resourceType
235
+ 'Sequence'
236
+ end
237
+ end
238
+ end
@@ -0,0 +1,54 @@
1
+ module FHIR
2
+ class Slot < FHIR::Model
3
+ include FHIR::Hashable
4
+ include FHIR::Json
5
+ include FHIR::Xml
6
+
7
+ SEARCH_PARAMS = ["identifier", "schedule", "slot-type", "start", "status"]
8
+ METADATA = {
9
+ 'id' => {'type'=>'id', 'path'=>'Slot.id', 'min'=>0, 'max'=>1},
10
+ 'meta' => {'type'=>'Meta', 'path'=>'Slot.meta', 'min'=>0, 'max'=>1},
11
+ 'implicitRules' => {'type'=>'uri', 'path'=>'Slot.implicitRules', 'min'=>0, 'max'=>1},
12
+ 'language' => {'type'=>'code', 'path'=>'Slot.language', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://tools.ietf.org/html/bcp47'}},
13
+ 'text' => {'type'=>'Narrative', 'path'=>'Slot.text', 'min'=>0, 'max'=>1},
14
+ 'contained' => {'type'=>'Resource', 'path'=>'Slot.contained', 'min'=>0, 'max'=>Float::INFINITY},
15
+ 'extension' => {'type'=>'Extension', 'path'=>'Slot.extension', 'min'=>0, 'max'=>Float::INFINITY},
16
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Slot.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
17
+ 'identifier' => {'type'=>'Identifier', 'path'=>'Slot.identifier', 'min'=>0, 'max'=>Float::INFINITY},
18
+ 'serviceCategory' => {'valid_codes'=>{'http://hl7.org/fhir/service-category'=>['1', '2', '34', '3', '4', '5', '6', '7', '8', '36', '9', '10', '11', '12', '13', '14', '15', '16', '17', '35', '18', '19', '20', '21', '22', '38', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '37', '33']}, 'type'=>'CodeableConcept', 'path'=>'Slot.serviceCategory', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/service-category'}},
19
+ 'serviceType' => {'valid_codes'=>{'http://hl7.org/fhir/service-type'=>['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', '60', '61', '62', '63', '64', '65', '66', '67', '68', '69', '70', '71', '72', '73', '74', '75', '76', '77', '78', '79', '80', '81', '82', '83', '84', '85', '86', '87', '88', '89', '90', '91', '92', '93', '94', '95', '96', '97', '98', '99', '100', '101', '102', '103', '104', '105', '106', '107', '108', '109', '110', '111', '112', '113', '114', '115', '116', '117', '118', '119', '120', '121', '122', '123', '124', '125', '126', '127', '128', '129', '130', '131', '132', '133', '134', '135', '136', '137', '138', '139', '140', '141', '142', '143', '144', '145', '146', '147', '148', '149', '150', '151', '152', '153', '154', '155', '156', '157', '158', '159', '160', '161', '162', '163', '164', '165', '166', '167', '168', '169', '170', '171', '172', '173', '174', '175', '176', '177', '178', '179', '180', '181', '182', '183', '184', '185', '186', '187', '188', '189', '190', '191', '192', '193', '194', '195', '196', '197', '198', '199', '200', '201', '202', '203', '204', '205', '206', '207', '208', '209', '210', '211', '212', '213', '214', '215', '216', '217', '218', '219', '220', '221', '222', '223', '224', '225', '226', '227', '228', '229', '230', '231', '232', '233', '234', '235', '236', '237', '238', '239', '240', '241', '242', '243', '244', '245', '246', '247', '248', '249', '250', '251', '252', '253', '254', '255', '256', '257', '258', '259', '260', '261', '262', '263', '264', '265', '266', '267', '268', '269', '270', '271', '272', '273', '274', '275', '276', '277', '278', '279', '280', '281', '282', '283', '284', '285', '286', '287', '288', '289', '290', '291', '292', '293', '294', '295', '296', '297', '298', '299', '300', '301', '302', '303', '304', '305', '306', '307', '308', '309', '310', '311', '312', '313', '314', '315', '316', '317', '318', '319', '320', '321', '322', '323', '324', '325', '326', '327', '328', '330', '331', '332', '333', '334', '335', '336', '337', '338', '339', '340', '341', '342', '343', '344', '345', '346', '347', '348', '349', '350', '351', '352', '353', '354', '355', '356', '357', '358', '359', '360', '361', '362', '364', '365', '366', '367', '368', '369', '370', '371', '372', '373', '374', '375', '376', '377', '378', '379', '380', '381', '382', '383', '384', '385', '386', '387', '388', '389', '390', '391', '392', '393', '394', '395', '396', '397', '398', '399', '400', '401', '402', '403', '404', '405', '406', '407', '408', '409', '410', '411', '412', '413', '414', '415', '416', '417', '418', '419', '420', '421', '422', '423', '424', '425', '426', '427', '428', '429', '430', '431', '432', '433', '434', '435', '436', '437', '438', '439', '440', '441', '442', '443', '444', '445', '446', '447', '448', '449', '450', '451', '452', '453', '454', '455', '456', '457', '458', '459', '460', '461', '462', '463', '464', '465', '466', '467', '468', '469', '470', '471', '472', '473', '474', '475', '476', '477', '478', '479', '480', '481', '482', '483', '484', '485', '486', '488', '489', '490', '491', '492', '493', '494', '495', '496', '497', '498', '500', '501', '502', '503', '504', '505', '506', '507', '508', '509', '510', '513', '514', '530', '531', '532', '533', '534', '535', '536', '537', '538', '539', '540', '541', '542', '543', '544', '545', '546', '547', '548', '550', '551', '552', '553', '554', '555', '556', '557', '558', '559', '560', '561', '562', '563', '564', '565', '566', '567', '568', '569', '570', '571', '572', '573', '574', '575', '576', '577', '580', '581', '582', '583', '584', '585', '589', '590', '591', '593', '599', '600', '601', '602', '603', '604', '605', '606', '607', '608', '609', '610', '611', '612', '613', '614', '615', '616', '617', '618', '619', '620', '621', '622', '623', '624', '625', '626', '627', '628', '629']}, 'type'=>'CodeableConcept', 'path'=>'Slot.serviceType', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/service-type'}},
20
+ 'specialty' => {'valid_codes'=>{'http://snomed.info/sct'=>['408467006', '394577000', '394578005', '421661004', '408462000', '394579002', '394804000', '394580004', '394803006', '408480009', '408454008', '394809005', '394592004', '394600006', '394601005', '394581000', '408478003', '394812008', '408444009', '394582007', '408475000', '410005002', '394583002', '419772000', '394584008', '408443003', '394802001', '394915009', '394814009', '394808002', '394811001', '408446006', '394586005', '394916005', '408472002', '394597005', '394598000', '394807007', '419192003', '408468001', '394593009', '394813003', '410001006', '394589003', '394591006', '394599008', '394649004', '408470005', '394585009', '394821009', '422191005', '394594003', '416304004', '418960008', '394882004', '394806003', '394588006', '408459003', '394607009', '419610006', '418058008', '420208008', '418652005', '418535003', '418862001', '419365004', '418002000', '419983000', '419170002', '419472004', '394539006', '420112009', '409968004', '394587001', '394913002', '408440000', '418112009', '419815003', '394914008', '408455009', '394602003', '408447002', '394810000', '408450004', '408476004', '408469009', '408466002', '408471009', '408464004', '408441001', '408465003', '394605001', '394608004', '408461007', '408460008', '394606000', '408449004', '418018006', '394604002', '394609007', '408474001', '394610002', '394611003', '408477008', '394801008', '408463005', '419321007', '394576009', '394590007', '409967009', '408448007', '419043006', '394612005', '394733009', '394732004']}, 'type'=>'CodeableConcept', 'path'=>'Slot.specialty', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'preferred', 'uri'=>'http://hl7.org/fhir/ValueSet/c80-practice-codes'}},
21
+ 'appointmentType' => {'valid_codes'=>{'http://hl7.org/fhir/v2/0276'=>['CHECKUP', 'EMERGENCY', 'FOLLOWUP', 'ROUTINE', 'WALKIN']}, 'type'=>'CodeableConcept', 'path'=>'Slot.appointmentType', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'preferred', 'uri'=>'http://hl7.org/fhir/ValueSet/v2-0276'}},
22
+ 'schedule' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Schedule'], 'type'=>'Reference', 'path'=>'Slot.schedule', 'min'=>1, 'max'=>1},
23
+ 'status' => {'valid_codes'=>{'http://hl7.org/fhir/slotstatus'=>['busy', 'free', 'busy-unavailable', 'busy-tentative']}, 'type'=>'code', 'path'=>'Slot.status', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/slotstatus'}},
24
+ 'start' => {'type'=>'instant', 'path'=>'Slot.start', 'min'=>1, 'max'=>1},
25
+ 'end' => {'type'=>'instant', 'path'=>'Slot.end', 'min'=>1, 'max'=>1},
26
+ 'overbooked' => {'type'=>'boolean', 'path'=>'Slot.overbooked', 'min'=>0, 'max'=>1},
27
+ 'comment' => {'type'=>'string', 'path'=>'Slot.comment', 'min'=>0, 'max'=>1}
28
+ }
29
+
30
+ attr_accessor :id # 0-1 id
31
+ attr_accessor :meta # 0-1 Meta
32
+ attr_accessor :implicitRules # 0-1 uri
33
+ attr_accessor :language # 0-1 code
34
+ attr_accessor :text # 0-1 Narrative
35
+ attr_accessor :contained # 0-* [ Resource ]
36
+ attr_accessor :extension # 0-* [ Extension ]
37
+ attr_accessor :modifierExtension # 0-* [ Extension ]
38
+ attr_accessor :identifier # 0-* [ Identifier ]
39
+ attr_accessor :serviceCategory # 0-1 CodeableConcept
40
+ attr_accessor :serviceType # 0-* [ CodeableConcept ]
41
+ attr_accessor :specialty # 0-* [ CodeableConcept ]
42
+ attr_accessor :appointmentType # 0-1 CodeableConcept
43
+ attr_accessor :schedule # 1-1 Reference(Schedule)
44
+ attr_accessor :status # 1-1 code
45
+ attr_accessor :start # 1-1 instant
46
+ attr_accessor :end # 1-1 instant
47
+ attr_accessor :overbooked # 0-1 boolean
48
+ attr_accessor :comment # 0-1 string
49
+
50
+ def resourceType
51
+ 'Slot'
52
+ end
53
+ end
54
+ end