hippo 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. data/.gitignore +6 -0
  2. data/CHANGELOG +9 -0
  3. data/Gemfile +11 -0
  4. data/Guardfile +14 -0
  5. data/README.md +227 -0
  6. data/Rakefile +12 -0
  7. data/bin/demo_270.rb +280 -0
  8. data/bin/demo_276.rb +296 -0
  9. data/bin/demo_835.rb +170 -0
  10. data/hippo.gemspec +24 -0
  11. data/lib/hippo/exceptions.rb +8 -0
  12. data/lib/hippo/field.rb +6 -0
  13. data/lib/hippo/loop.rb +0 -0
  14. data/lib/hippo/parser.rb +92 -0
  15. data/lib/hippo/samples/835.edi +88 -0
  16. data/lib/hippo/samples/sample_835_with.rb +272 -0
  17. data/lib/hippo/samples/sample_parsed.rb +1162 -0
  18. data/lib/hippo/segments/AK1.rb +32 -0
  19. data/lib/hippo/segments/AK2.rb +31 -0
  20. data/lib/hippo/segments/AK9.rb +82 -0
  21. data/lib/hippo/segments/AMT.rb +31 -0
  22. data/lib/hippo/segments/BHT.rb +55 -0
  23. data/lib/hippo/segments/BPR.rb +175 -0
  24. data/lib/hippo/segments/CAS.rb +159 -0
  25. data/lib/hippo/segments/CL1.rb +39 -0
  26. data/lib/hippo/segments/CLM.rb +223 -0
  27. data/lib/hippo/segments/CLP.rb +119 -0
  28. data/lib/hippo/segments/CN1.rb +55 -0
  29. data/lib/hippo/segments/CR1.rb +87 -0
  30. data/lib/hippo/segments/CR2.rb +104 -0
  31. data/lib/hippo/segments/CR3.rb +47 -0
  32. data/lib/hippo/segments/CR4.rb +239 -0
  33. data/lib/hippo/segments/CR5.rb +151 -0
  34. data/lib/hippo/segments/CR6.rb +175 -0
  35. data/lib/hippo/segments/CR7.rb +33 -0
  36. data/lib/hippo/segments/CR8.rb +79 -0
  37. data/lib/hippo/segments/CRC.rb +63 -0
  38. data/lib/hippo/segments/CTP.rb +212 -0
  39. data/lib/hippo/segments/CTX.rb +105 -0
  40. data/lib/hippo/segments/CUR.rb +175 -0
  41. data/lib/hippo/segments/DMG.rb +115 -0
  42. data/lib/hippo/segments/DN1.rb +39 -0
  43. data/lib/hippo/segments/DN2.rb +55 -0
  44. data/lib/hippo/segments/DSB.rb +71 -0
  45. data/lib/hippo/segments/DTM.rb +55 -0
  46. data/lib/hippo/segments/DTP.rb +31 -0
  47. data/lib/hippo/segments/FRM.rb +47 -0
  48. data/lib/hippo/segments/GE.rb +19 -0
  49. data/lib/hippo/segments/GS.rb +52 -0
  50. data/lib/hippo/segments/HCP.rb +127 -0
  51. data/lib/hippo/segments/HI.rb +919 -0
  52. data/lib/hippo/segments/HL.rb +44 -0
  53. data/lib/hippo/segments/HSD.rb +72 -0
  54. data/lib/hippo/segments/IEA.rb +19 -0
  55. data/lib/hippo/segments/IK3.rb +40 -0
  56. data/lib/hippo/segments/IK4.rb +63 -0
  57. data/lib/hippo/segments/IK5.rb +55 -0
  58. data/lib/hippo/segments/IMM.rb +55 -0
  59. data/lib/hippo/segments/ISA.rb +95 -0
  60. data/lib/hippo/segments/K3.rb +147 -0
  61. data/lib/hippo/segments/LIN.rb +255 -0
  62. data/lib/hippo/segments/LQ.rb +23 -0
  63. data/lib/hippo/segments/LX.rb +21 -0
  64. data/lib/hippo/segments/MEA.rb +219 -0
  65. data/lib/hippo/segments/MIA.rb +199 -0
  66. data/lib/hippo/segments/MOA.rb +79 -0
  67. data/lib/hippo/segments/N1.rb +55 -0
  68. data/lib/hippo/segments/N2.rb +23 -0
  69. data/lib/hippo/segments/N3.rb +23 -0
  70. data/lib/hippo/segments/N4.rb +63 -0
  71. data/lib/hippo/segments/NM1.rb +103 -0
  72. data/lib/hippo/segments/NTE.rb +23 -0
  73. data/lib/hippo/segments/OI.rb +55 -0
  74. data/lib/hippo/segments/PAT.rb +79 -0
  75. data/lib/hippo/segments/PER.rb +79 -0
  76. data/lib/hippo/segments/PLB.rb +191 -0
  77. data/lib/hippo/segments/PRV.rb +75 -0
  78. data/lib/hippo/segments/PS1.rb +31 -0
  79. data/lib/hippo/segments/PWK.rb +116 -0
  80. data/lib/hippo/segments/QTY.rb +155 -0
  81. data/lib/hippo/segments/RDM.rb +135 -0
  82. data/lib/hippo/segments/REF.rb +83 -0
  83. data/lib/hippo/segments/SBR.rb +79 -0
  84. data/lib/hippo/segments/SE.rb +24 -0
  85. data/lib/hippo/segments/ST.rb +31 -0
  86. data/lib/hippo/segments/STC.rb +187 -0
  87. data/lib/hippo/segments/SV1.rb +267 -0
  88. data/lib/hippo/segments/SV2.rb +147 -0
  89. data/lib/hippo/segments/SV3.rb +223 -0
  90. data/lib/hippo/segments/SV4.rb +211 -0
  91. data/lib/hippo/segments/SV5.rb +123 -0
  92. data/lib/hippo/segments/SV6.rb +155 -0
  93. data/lib/hippo/segments/SV7.rb +55 -0
  94. data/lib/hippo/segments/SVC.rb +183 -0
  95. data/lib/hippo/segments/SVD.rb +116 -0
  96. data/lib/hippo/segments/TOO.rb +67 -0
  97. data/lib/hippo/segments/TRN.rb +39 -0
  98. data/lib/hippo/segments/TS2.rb +159 -0
  99. data/lib/hippo/segments/TS3.rb +199 -0
  100. data/lib/hippo/segments/UR.rb +23 -0
  101. data/lib/hippo/segments/base.rb +148 -0
  102. data/lib/hippo/segments.rb +85 -0
  103. data/lib/hippo/transaction_sets/HIPAA_276/L2000A.rb +28 -0
  104. data/lib/hippo/transaction_sets/HIPAA_276/L2000B.rb +28 -0
  105. data/lib/hippo/transaction_sets/HIPAA_276/L2000C.rb +28 -0
  106. data/lib/hippo/transaction_sets/HIPAA_276/L2000D.rb +45 -0
  107. data/lib/hippo/transaction_sets/HIPAA_276/L2000E.rb +45 -0
  108. data/lib/hippo/transaction_sets/HIPAA_276/L2100A.rb +20 -0
  109. data/lib/hippo/transaction_sets/HIPAA_276/L2100B.rb +20 -0
  110. data/lib/hippo/transaction_sets/HIPAA_276/L2100C.rb +19 -0
  111. data/lib/hippo/transaction_sets/HIPAA_276/L2100D.rb +19 -0
  112. data/lib/hippo/transaction_sets/HIPAA_276/L2100E.rb +20 -0
  113. data/lib/hippo/transaction_sets/HIPAA_276/L2200D.rb +116 -0
  114. data/lib/hippo/transaction_sets/HIPAA_276/L2200E.rb +116 -0
  115. data/lib/hippo/transaction_sets/HIPAA_276/L2210D.rb +36 -0
  116. data/lib/hippo/transaction_sets/HIPAA_276/L2210E.rb +36 -0
  117. data/lib/hippo/transaction_sets/HIPAA_276/base.rb +86 -0
  118. data/lib/hippo/transaction_sets/HIPAA_276.rb +21 -0
  119. data/lib/hippo/transaction_sets/HIPAA_277/L2000A.rb +35 -0
  120. data/lib/hippo/transaction_sets/HIPAA_277/L2000B.rb +35 -0
  121. data/lib/hippo/transaction_sets/HIPAA_277/L2000C.rb +35 -0
  122. data/lib/hippo/transaction_sets/HIPAA_277/L2000D.rb +35 -0
  123. data/lib/hippo/transaction_sets/HIPAA_277/L2000E.rb +35 -0
  124. data/lib/hippo/transaction_sets/HIPAA_277/L2100A.rb +19 -0
  125. data/lib/hippo/transaction_sets/HIPAA_277/L2100B.rb +20 -0
  126. data/lib/hippo/transaction_sets/HIPAA_277/L2100C.rb +19 -0
  127. data/lib/hippo/transaction_sets/HIPAA_277/L2100D.rb +20 -0
  128. data/lib/hippo/transaction_sets/HIPAA_277/L2100E.rb +20 -0
  129. data/lib/hippo/transaction_sets/HIPAA_277/L2200A.rb +41 -0
  130. data/lib/hippo/transaction_sets/HIPAA_277/L2200B.rb +66 -0
  131. data/lib/hippo/transaction_sets/HIPAA_277/L2200C.rb +73 -0
  132. data/lib/hippo/transaction_sets/HIPAA_277/L2200D.rb +73 -0
  133. data/lib/hippo/transaction_sets/HIPAA_277/L2200E.rb +103 -0
  134. data/lib/hippo/transaction_sets/HIPAA_277/L2220D.rb +56 -0
  135. data/lib/hippo/transaction_sets/HIPAA_277/L2220E.rb +43 -0
  136. data/lib/hippo/transaction_sets/HIPAA_277/base.rb +77 -0
  137. data/lib/hippo/transaction_sets/HIPAA_277.rb +24 -0
  138. data/lib/hippo/transaction_sets/HIPAA_835/L1000A.rb +71 -0
  139. data/lib/hippo/transaction_sets/HIPAA_835/L1000B.rb +47 -0
  140. data/lib/hippo/transaction_sets/HIPAA_835/L2000.rb +37 -0
  141. data/lib/hippo/transaction_sets/HIPAA_835/L2100.rb +182 -0
  142. data/lib/hippo/transaction_sets/HIPAA_835/L2110.rb +85 -0
  143. data/lib/hippo/transaction_sets/HIPAA_835/base.rb +112 -0
  144. data/lib/hippo/transaction_sets/HIPAA_835.rb +12 -0
  145. data/lib/hippo/transaction_sets/HIPAA_837/L1000A.rb +30 -0
  146. data/lib/hippo/transaction_sets/HIPAA_837/L1000B.rb +21 -0
  147. data/lib/hippo/transaction_sets/HIPAA_837/L2000A.rb +65 -0
  148. data/lib/hippo/transaction_sets/HIPAA_837/L2000B.rb +49 -0
  149. data/lib/hippo/transaction_sets/HIPAA_837/L2000C.rb +42 -0
  150. data/lib/hippo/transaction_sets/HIPAA_837/L2010AA.rb +57 -0
  151. data/lib/hippo/transaction_sets/HIPAA_837/L2010AB.rb +33 -0
  152. data/lib/hippo/transaction_sets/HIPAA_837/L2010AC.rb +51 -0
  153. data/lib/hippo/transaction_sets/HIPAA_837/L2010BA.rb +74 -0
  154. data/lib/hippo/transaction_sets/HIPAA_837/L2010BB.rb +48 -0
  155. data/lib/hippo/transaction_sets/HIPAA_837/L2010CA.rb +72 -0
  156. data/lib/hippo/transaction_sets/HIPAA_837/L2300.rb +510 -0
  157. data/lib/hippo/transaction_sets/HIPAA_837/L2310A.rb +26 -0
  158. data/lib/hippo/transaction_sets/HIPAA_837/L2310B.rb +37 -0
  159. data/lib/hippo/transaction_sets/HIPAA_837/L2310C.rb +52 -0
  160. data/lib/hippo/transaction_sets/HIPAA_837/L2310D.rb +27 -0
  161. data/lib/hippo/transaction_sets/HIPAA_837/L2310E.rb +34 -0
  162. data/lib/hippo/transaction_sets/HIPAA_837/L2310F.rb +34 -0
  163. data/lib/hippo/transaction_sets/HIPAA_837/L2320.rb +122 -0
  164. data/lib/hippo/transaction_sets/HIPAA_837/L2330A.rb +43 -0
  165. data/lib/hippo/transaction_sets/HIPAA_837/L2330B.rb +92 -0
  166. data/lib/hippo/transaction_sets/HIPAA_837/L2330C.rb +26 -0
  167. data/lib/hippo/transaction_sets/HIPAA_837/L2330D.rb +26 -0
  168. data/lib/hippo/transaction_sets/HIPAA_837/L2330E.rb +27 -0
  169. data/lib/hippo/transaction_sets/HIPAA_837/L2330F.rb +27 -0
  170. data/lib/hippo/transaction_sets/HIPAA_837/L2330G.rb +26 -0
  171. data/lib/hippo/transaction_sets/HIPAA_837/L2400.rb +475 -0
  172. data/lib/hippo/transaction_sets/HIPAA_837/L2410.rb +30 -0
  173. data/lib/hippo/transaction_sets/HIPAA_837/L2420A.rb +37 -0
  174. data/lib/hippo/transaction_sets/HIPAA_837/L2420B.rb +26 -0
  175. data/lib/hippo/transaction_sets/HIPAA_837/L2420C.rb +41 -0
  176. data/lib/hippo/transaction_sets/HIPAA_837/L2420D.rb +27 -0
  177. data/lib/hippo/transaction_sets/HIPAA_837/L2420E.rb +51 -0
  178. data/lib/hippo/transaction_sets/HIPAA_837/L2420F.rb +26 -0
  179. data/lib/hippo/transaction_sets/HIPAA_837/L2420G.rb +34 -0
  180. data/lib/hippo/transaction_sets/HIPAA_837/L2420H.rb +34 -0
  181. data/lib/hippo/transaction_sets/HIPAA_837/L2430.rb +44 -0
  182. data/lib/hippo/transaction_sets/HIPAA_837/L2440.rb +23 -0
  183. data/lib/hippo/transaction_sets/HIPAA_837/base.rb +81 -0
  184. data/lib/hippo/transaction_sets/HIPAA_837.rb +45 -0
  185. data/lib/hippo/transaction_sets/HIPAA_999/L2000 - AK2.rb +30 -0
  186. data/lib/hippo/transaction_sets/HIPAA_999/L2000AK2.rb +30 -0
  187. data/lib/hippo/transaction_sets/HIPAA_999/L2100 - AK2.rb +37 -0
  188. data/lib/hippo/transaction_sets/HIPAA_999/L2100AK2.rb +37 -0
  189. data/lib/hippo/transaction_sets/HIPAA_999/L2110 - AK2.rb +23 -0
  190. data/lib/hippo/transaction_sets/HIPAA_999/L2110AK2.rb +23 -0
  191. data/lib/hippo/transaction_sets/HIPAA_999/base.rb +46 -0
  192. data/lib/hippo/transaction_sets/HIPAA_999.rb +10 -0
  193. data/lib/hippo/transaction_sets/base.rb +136 -0
  194. data/lib/hippo/transaction_sets.rb +11 -0
  195. data/lib/hippo/version.rb +3 -0
  196. data/lib/hippo.rb +15 -0
  197. data/samples/835_4010.edi +1 -0
  198. data/samples/837_4010A1.edi +1 -0
  199. data/test/test_helper.rb +118 -0
  200. data/test/test_hipaa_837.rb +396 -0
  201. data/test/test_segments_base.rb +106 -0
  202. data/test/test_transaction_sets_base.rb +85 -0
  203. metadata +277 -0
@@ -0,0 +1,510 @@
1
+ module Hippo::TransactionSets
2
+ module HIPAA_837
3
+
4
+ class L2300 < Hippo::TransactionSets::Base
5
+ loop_name 'L2300' #Claim Information
6
+
7
+ #Claim Information
8
+ segment Hippo::Segments::CLM,
9
+ :name => 'Claim Information',
10
+ :minimum => 1,
11
+ :maximum => 1,
12
+ :position => 1300
13
+
14
+ #Date - Onset of Current Illness or Symptom
15
+ segment Hippo::Segments::DTP,
16
+ :name => 'Date - Onset of Current Illness or Symptom',
17
+ :minimum => 0,
18
+ :maximum => 1,
19
+ :position => 1350,
20
+ :defaults => {
21
+ 'DTP01' => '431',
22
+ 'DTP02' => 'D8'
23
+ }
24
+
25
+ #Date - Initial Treatment Date
26
+ segment Hippo::Segments::DTP,
27
+ :name => 'Date - Initial Treatment Date',
28
+ :minimum => 0,
29
+ :maximum => 1,
30
+ :position => 1370,
31
+ :defaults => {
32
+ 'DTP01' => '454',
33
+ 'DTP02' => 'D8'
34
+ }
35
+
36
+ #Date - Last Seen Date
37
+ segment Hippo::Segments::DTP,
38
+ :name => 'Date - Last Seen Date',
39
+ :minimum => 0,
40
+ :maximum => 1,
41
+ :position => 1390,
42
+ :defaults => {
43
+ 'DTP01' => '304',
44
+ 'DTP02' => 'D8'
45
+ }
46
+
47
+ #Date - Acute Manifestation
48
+ segment Hippo::Segments::DTP,
49
+ :name => 'Date - Acute Manifestation',
50
+ :minimum => 0,
51
+ :maximum => 1,
52
+ :position => 13,
53
+ :defaults => {
54
+ 'DTP01' => '453',
55
+ 'DTP02' => 'D8'
56
+ }
57
+
58
+ #Date - Accident
59
+ segment Hippo::Segments::DTP,
60
+ :name => 'Date - Accident',
61
+ :minimum => 0,
62
+ :maximum => 1,
63
+ :position => 13,
64
+ :defaults => {
65
+ 'DTP01' => '439',
66
+ 'DTP02' => 'D8'
67
+ }
68
+
69
+ #Date - Last Menstrual Period
70
+ segment Hippo::Segments::DTP,
71
+ :name => 'Date - Last Menstrual Period',
72
+ :minimum => 0,
73
+ :maximum => 1,
74
+ :position => 13,
75
+ :defaults => {
76
+ 'DTP01' => '484',
77
+ 'DTP02' => 'D8'
78
+ }
79
+
80
+ #Date - Last X-ray Date
81
+ segment Hippo::Segments::DTP,
82
+ :name => 'Date - Last X-ray Date',
83
+ :minimum => 0,
84
+ :maximum => 1,
85
+ :position => 13,
86
+ :defaults => {
87
+ 'DTP01' => '455',
88
+ 'DTP02' => 'D8'
89
+ }
90
+
91
+ #Date - Hearing and Vision Prescription Date
92
+ segment Hippo::Segments::DTP,
93
+ :name => 'Date - Hearing and Vision Prescription Date',
94
+ :minimum => 0,
95
+ :maximum => 1,
96
+ :position => 13,
97
+ :defaults => {
98
+ 'DTP01' => '471',
99
+ 'DTP02' => 'D8'
100
+ }
101
+
102
+ #Date - Disability Dates
103
+ segment Hippo::Segments::DTP,
104
+ :name => 'Date - Disability Dates',
105
+ :minimum => 0,
106
+ :maximum => 1,
107
+ :position => 13
108
+
109
+ #Date - Last Worked
110
+ segment Hippo::Segments::DTP,
111
+ :name => 'Date - Last Worked',
112
+ :minimum => 0,
113
+ :maximum => 1,
114
+ :position => 13,
115
+ :defaults => {
116
+ 'DTP01' => '297',
117
+ 'DTP02' => 'D8'
118
+ }
119
+
120
+ #Date - Authorized Return to Work
121
+ segment Hippo::Segments::DTP,
122
+ :name => 'Date - Authorized Return to Work',
123
+ :minimum => 0,
124
+ :maximum => 1,
125
+ :position => 13,
126
+ :defaults => {
127
+ 'DTP01' => '296',
128
+ 'DTP02' => 'D8'
129
+ }
130
+
131
+ #Date - Admission
132
+ segment Hippo::Segments::DTP,
133
+ :name => 'Date - Admission',
134
+ :minimum => 0,
135
+ :maximum => 1,
136
+ :position => 13,
137
+ :defaults => {
138
+ 'DTP01' => '435',
139
+ 'DTP02' => 'D8'
140
+ }
141
+
142
+ #Date - Discharge
143
+ segment Hippo::Segments::DTP,
144
+ :name => 'Date - Discharge',
145
+ :minimum => 0,
146
+ :maximum => 1,
147
+ :position => 13,
148
+ :defaults => {
149
+ 'DTP01' => '096',
150
+ 'DTP02' => 'D8'
151
+ }
152
+
153
+ #Date - Assumed and Relinquished Care Dates
154
+ segment Hippo::Segments::DTP,
155
+ :name => 'Date - Assumed and Relinquished Care Dates',
156
+ :minimum => 0,
157
+ :maximum => 2,
158
+ :position => 13,
159
+ :defaults => {
160
+ 'DTP02' => 'D8'
161
+ }
162
+
163
+ #Date - Property and Casualty Date of First Contact
164
+ segment Hippo::Segments::DTP,
165
+ :name => 'Date - Property and Casualty Date of First Contact',
166
+ :minimum => 0,
167
+ :maximum => 1,
168
+ :position => 13,
169
+ :defaults => {
170
+ 'DTP01' => '444',
171
+ 'DTP02' => 'D8'
172
+ }
173
+
174
+ #Date - Repricer Received Date
175
+ segment Hippo::Segments::DTP,
176
+ :name => 'Date - Repricer Received Date',
177
+ :minimum => 0,
178
+ :maximum => 1,
179
+ :position => 13,
180
+ :defaults => {
181
+ 'DTP01' => '050',
182
+ 'DTP02' => 'D8'
183
+ }
184
+
185
+ #Claim Supplemental Information
186
+ segment Hippo::Segments::PWK,
187
+ :name => 'Claim Supplemental Information',
188
+ :minimum => 0,
189
+ :maximum => 10,
190
+ :position => 1550
191
+
192
+ #Contract Information
193
+ segment Hippo::Segments::CN1,
194
+ :name => 'Contract Information',
195
+ :minimum => 0,
196
+ :maximum => 1,
197
+ :position => 1600
198
+
199
+ #Patient Amount Paid
200
+ segment Hippo::Segments::AMT,
201
+ :name => 'Patient Amount Paid',
202
+ :minimum => 0,
203
+ :maximum => 1,
204
+ :position => 1760,
205
+ :defaults => {
206
+ 'AMT01' => 'F5'
207
+ }
208
+
209
+ #Service Authorization Exception Code
210
+ segment Hippo::Segments::REF,
211
+ :name => 'Service Authorization Exception Code',
212
+ :minimum => 0,
213
+ :maximum => 1,
214
+ :position => 17,
215
+ :defaults => {
216
+ 'REF01' => '4N'
217
+ }
218
+
219
+ #Mandatory Medicare (Section 4081) Crossover Indicator
220
+ segment Hippo::Segments::REF,
221
+ :name => 'Mandatory Medicare (Section 4081) Crossover Indicator',
222
+ :minimum => 0,
223
+ :maximum => 1,
224
+ :position => 17,
225
+ :defaults => {
226
+ 'REF01' => 'F5'
227
+ }
228
+
229
+ #Mammography Certification Number
230
+ segment Hippo::Segments::REF,
231
+ :name => 'Mammography Certification Number',
232
+ :minimum => 0,
233
+ :maximum => 1,
234
+ :position => 17,
235
+ :defaults => {
236
+ 'REF01' => 'EW'
237
+ }
238
+
239
+ #Referral Number
240
+ segment Hippo::Segments::REF,
241
+ :name => 'Referral Number',
242
+ :minimum => 0,
243
+ :maximum => 1,
244
+ :position => 17,
245
+ :defaults => {
246
+ 'REF01' => '9F'
247
+ }
248
+
249
+ #Prior Authorization
250
+ segment Hippo::Segments::REF,
251
+ :name => 'Prior Authorization',
252
+ :minimum => 0,
253
+ :maximum => 1,
254
+ :position => 1800,
255
+ :defaults => {
256
+ 'REF01' => 'G1'
257
+ }
258
+
259
+ #Payer Claim Control Number
260
+ segment Hippo::Segments::REF,
261
+ :name => 'Payer Claim Control Number',
262
+ :minimum => 0,
263
+ :maximum => 1,
264
+ :position => 1810,
265
+ :defaults => {
266
+ 'REF01' => 'F8'
267
+ }
268
+
269
+ #Clinical Laboratory Improvement Amendment (CLIA) Number
270
+ segment Hippo::Segments::REF,
271
+ :name => 'Clinical Laboratory Improvement Amendment (CLIA) Number',
272
+ :minimum => 0,
273
+ :maximum => 1,
274
+ :position => 1820,
275
+ :defaults => {
276
+ 'REF01' => 'X4'
277
+ }
278
+
279
+ #Repriced Claim Number
280
+ segment Hippo::Segments::REF,
281
+ :name => 'Repriced Claim Number',
282
+ :minimum => 0,
283
+ :maximum => 1,
284
+ :position => 1830,
285
+ :defaults => {
286
+ 'REF01' => '9A'
287
+ }
288
+
289
+ #Adjusted Repriced Claim Number
290
+ segment Hippo::Segments::REF,
291
+ :name => 'Adjusted Repriced Claim Number',
292
+ :minimum => 0,
293
+ :maximum => 1,
294
+ :position => 1840,
295
+ :defaults => {
296
+ 'REF01' => '9C'
297
+ }
298
+
299
+ #Investigational Device Exemption Number
300
+ segment Hippo::Segments::REF,
301
+ :name => 'Investigational Device Exemption Number',
302
+ :minimum => 0,
303
+ :maximum => 1,
304
+ :position => 1850,
305
+ :defaults => {
306
+ 'REF01' => 'LX'
307
+ }
308
+
309
+ #Claim Identifier For Transmission Intermediaries
310
+ segment Hippo::Segments::REF,
311
+ :name => 'Claim Identifier For Transmission Intermediaries',
312
+ :minimum => 0,
313
+ :maximum => 1,
314
+ :position => 1860,
315
+ :defaults => {
316
+ 'REF01' => 'D9'
317
+ }
318
+
319
+ #Medical Record Number
320
+ segment Hippo::Segments::REF,
321
+ :name => 'Medical Record Number',
322
+ :minimum => 0,
323
+ :maximum => 1,
324
+ :position => 1890,
325
+ :defaults => {
326
+ 'REF01' => 'EA'
327
+ }
328
+
329
+ #Demonstration Project Identifier
330
+ segment Hippo::Segments::REF,
331
+ :name => 'Demonstration Project Identifier',
332
+ :minimum => 0,
333
+ :maximum => 1,
334
+ :position => 18,
335
+ :defaults => {
336
+ 'REF01' => 'P4'
337
+ }
338
+
339
+ #Care Plan Oversight
340
+ segment Hippo::Segments::REF,
341
+ :name => 'Care Plan Oversight',
342
+ :minimum => 0,
343
+ :maximum => 1,
344
+ :position => 18,
345
+ :defaults => {
346
+ 'REF01' => '1J'
347
+ }
348
+
349
+ #File Information
350
+ segment Hippo::Segments::K3,
351
+ :name => 'File Information',
352
+ :minimum => 0,
353
+ :maximum => 10,
354
+ :position => 18
355
+
356
+ #Claim Note
357
+ segment Hippo::Segments::NTE,
358
+ :name => 'Claim Note',
359
+ :minimum => 0,
360
+ :maximum => 1,
361
+ :position => 1900
362
+
363
+ #Ambulance Transport Information
364
+ segment Hippo::Segments::CR1,
365
+ :name => 'Ambulance Transport Information',
366
+ :minimum => 0,
367
+ :maximum => 1,
368
+ :position => 1950,
369
+ :defaults => {
370
+ 'CR105' => 'DH'
371
+ }
372
+
373
+ #Spinal Manipulation Service Information
374
+ segment Hippo::Segments::CR2,
375
+ :name => 'Spinal Manipulation Service Information',
376
+ :minimum => 0,
377
+ :maximum => 1,
378
+ :position => 2000
379
+
380
+ #Ambulance Certification
381
+ segment Hippo::Segments::CRC,
382
+ :name => 'Ambulance Certification',
383
+ :minimum => 0,
384
+ :maximum => 3,
385
+ :position => 2200,
386
+ :defaults => {
387
+ 'CRC01' => '07'
388
+ }
389
+
390
+ #Patient Condition Information: Vision
391
+ segment Hippo::Segments::CRC,
392
+ :name => 'Patient Condition Information: Vision',
393
+ :minimum => 0,
394
+ :maximum => 3,
395
+ :position => 2210
396
+
397
+ #Homebound Indicator
398
+ segment Hippo::Segments::CRC,
399
+ :name => 'Homebound Indicator',
400
+ :minimum => 0,
401
+ :maximum => 1,
402
+ :position => 2220,
403
+ :defaults => {
404
+ 'CRC01' => '75',
405
+ 'CRC02' => 'Y',
406
+ 'CRC03' => 'IH'
407
+ }
408
+
409
+ #EPSDT Referral
410
+ segment Hippo::Segments::CRC,
411
+ :name => 'EPSDT Referral',
412
+ :minimum => 0,
413
+ :maximum => 1,
414
+ :position => 2230,
415
+ :defaults => {
416
+ 'CRC01' => 'ZZ'
417
+ }
418
+
419
+ #Health Care Diagnosis Code
420
+ segment Hippo::Segments::HI,
421
+ :name => 'Health Care Diagnosis Code',
422
+ :minimum => 1,
423
+ :maximum => 1,
424
+ :position => 2310
425
+
426
+ #Anesthesia Related Procedure
427
+ segment Hippo::Segments::HI,
428
+ :name => 'Anesthesia Related Procedure',
429
+ :minimum => 0,
430
+ :maximum => 1,
431
+ :position => 2313
432
+
433
+ #Condition Information
434
+ segment Hippo::Segments::HI,
435
+ :name => 'Condition Information',
436
+ :minimum => 0,
437
+ :maximum => 2,
438
+ :position => 2320
439
+
440
+ #Claim Pricing/Repricing Information
441
+ segment Hippo::Segments::HCP,
442
+ :name => 'Claim Pricing/Repricing Information',
443
+ :minimum => 0,
444
+ :maximum => 1,
445
+ :position => 2410
446
+
447
+ #Referring Provider Name
448
+ loop Hippo::TransactionSets::HIPAA_837::L2310A,
449
+ :name => 'Referring Provider Name',
450
+ :minimum => 0,
451
+ :maximum => 2,
452
+ :position => 2500
453
+
454
+ #Rendering Provider Name
455
+ loop Hippo::TransactionSets::HIPAA_837::L2310B,
456
+ :name => 'Rendering Provider Name',
457
+ :identified_by => {'NM1.NM101' => '82'},
458
+ :minimum => 0,
459
+ :maximum => 1,
460
+ :position => 2500
461
+
462
+ #Service Facility Location Name
463
+ loop Hippo::TransactionSets::HIPAA_837::L2310C,
464
+ :name => 'Service Facility Location Name',
465
+ :identified_by => {'NM1.NM101' => '77'},
466
+ :minimum => 0,
467
+ :maximum => 1,
468
+ :position => 2500
469
+
470
+ #Supervising Provider Name
471
+ loop Hippo::TransactionSets::HIPAA_837::L2310D,
472
+ :name => 'Supervising Provider Name',
473
+ :identified_by => {'NM1.NM101' => 'DQ'},
474
+ :minimum => 0,
475
+ :maximum => 1,
476
+ :position => 2500
477
+
478
+ #Ambulance Pick-up Location
479
+ loop Hippo::TransactionSets::HIPAA_837::L2310E,
480
+ :name => 'Ambulance Pick-up Location',
481
+ :identified_by => {'NM1.NM101' => 'PW'},
482
+ :minimum => 0,
483
+ :maximum => 1,
484
+ :position => 2500
485
+
486
+ #Ambulance Drop-off Location
487
+ loop Hippo::TransactionSets::HIPAA_837::L2310F,
488
+ :name => 'Ambulance Drop-off Location',
489
+ :identified_by => {'NM1.NM101' => '45'},
490
+ :minimum => 0,
491
+ :maximum => 1,
492
+ :position => 2500
493
+
494
+ #Other Subscriber Information
495
+ loop Hippo::TransactionSets::HIPAA_837::L2320,
496
+ :name => 'Other Subscriber Information',
497
+ :minimum => 0,
498
+ :maximum => 10,
499
+ :position => 2900
500
+
501
+ #Service Line Number
502
+ loop Hippo::TransactionSets::HIPAA_837::L2400,
503
+ :name => 'Service Line Number',
504
+ :minimum => 1,
505
+ :maximum => 50,
506
+ :position => 3650
507
+
508
+ end
509
+ end
510
+ end
@@ -0,0 +1,26 @@
1
+ module Hippo::TransactionSets
2
+ module HIPAA_837
3
+
4
+ class L2310A < Hippo::TransactionSets::Base
5
+ loop_name 'L2310A' #Referring Provider Name
6
+
7
+ #Referring Provider Name
8
+ segment Hippo::Segments::NM1,
9
+ :name => 'Referring Provider Name',
10
+ :minimum => 0,
11
+ :maximum => 1,
12
+ :position => 2500,
13
+ :defaults => {
14
+ 'NM102' => '1'
15
+ }
16
+
17
+ #Referring Provider Secondary Identification
18
+ segment Hippo::Segments::REF,
19
+ :name => 'Referring Provider Secondary Identification',
20
+ :minimum => 0,
21
+ :maximum => 3,
22
+ :position => 2710
23
+
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,37 @@
1
+ module Hippo::TransactionSets
2
+ module HIPAA_837
3
+
4
+ class L2310B < Hippo::TransactionSets::Base
5
+ loop_name 'L2310B' #Rendering Provider Name
6
+
7
+ #Rendering Provider Name
8
+ segment Hippo::Segments::NM1,
9
+ :name => 'Rendering Provider Name',
10
+ :minimum => 0,
11
+ :maximum => 1,
12
+ :position => 2500,
13
+ :defaults => {
14
+ 'NM101' => '82'
15
+ }
16
+
17
+ #Rendering Provider Specialty Information
18
+ segment Hippo::Segments::PRV,
19
+ :name => 'Rendering Provider Specialty Information',
20
+ :minimum => 0,
21
+ :maximum => 1,
22
+ :position => 2550,
23
+ :defaults => {
24
+ 'PRV01' => 'PE',
25
+ 'PRV02' => 'PXC'
26
+ }
27
+
28
+ #Rendering Provider Secondary Identification
29
+ segment Hippo::Segments::REF,
30
+ :name => 'Rendering Provider Secondary Identification',
31
+ :minimum => 0,
32
+ :maximum => 4,
33
+ :position => 2710
34
+
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,52 @@
1
+ module Hippo::TransactionSets
2
+ module HIPAA_837
3
+
4
+ class L2310C < Hippo::TransactionSets::Base
5
+ loop_name 'L2310C' #Service Facility Location Name
6
+
7
+ #Service Facility Location Name
8
+ segment Hippo::Segments::NM1,
9
+ :name => 'Service Facility Location Name',
10
+ :minimum => 0,
11
+ :maximum => 1,
12
+ :position => 2500,
13
+ :defaults => {
14
+ 'NM101' => '77',
15
+ 'NM102' => '2'
16
+ }
17
+
18
+ #Service Facility Location Address
19
+ segment Hippo::Segments::N3,
20
+ :name => 'Service Facility Location Address',
21
+ :minimum => 1,
22
+ :maximum => 1,
23
+ :position => 2650
24
+
25
+ #Service Facility Location City, State, ZIP Code
26
+ segment Hippo::Segments::N4,
27
+ :name => 'Service Facility Location City, State, ZIP Code',
28
+ :minimum => 1,
29
+ :maximum => 1,
30
+ :position => 2700
31
+
32
+ #Service Facility Location Secondary Identification
33
+ segment Hippo::Segments::REF,
34
+ :name => 'Service Facility Location Secondary Identification',
35
+ :minimum => 0,
36
+ :maximum => 3,
37
+ :position => 2710
38
+
39
+ #Service Facility Contact Information
40
+ segment Hippo::Segments::PER,
41
+ :name => 'Service Facility Contact Information',
42
+ :minimum => 0,
43
+ :maximum => 1,
44
+ :position => 2750,
45
+ :defaults => {
46
+ 'PER01' => 'IC',
47
+ 'PER03' => 'TE'
48
+ }
49
+
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,27 @@
1
+ module Hippo::TransactionSets
2
+ module HIPAA_837
3
+
4
+ class L2310D < Hippo::TransactionSets::Base
5
+ loop_name 'L2310D' #Supervising Provider Name
6
+
7
+ #Supervising Provider Name
8
+ segment Hippo::Segments::NM1,
9
+ :name => 'Supervising Provider Name',
10
+ :minimum => 0,
11
+ :maximum => 1,
12
+ :position => 2500,
13
+ :defaults => {
14
+ 'NM101' => 'DQ',
15
+ 'NM102' => '1'
16
+ }
17
+
18
+ #Supervising Provider Secondary Identification
19
+ segment Hippo::Segments::REF,
20
+ :name => 'Supervising Provider Secondary Identification',
21
+ :minimum => 0,
22
+ :maximum => 4,
23
+ :position => 2710
24
+
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,34 @@
1
+ module Hippo::TransactionSets
2
+ module HIPAA_837
3
+
4
+ class L2310E < Hippo::TransactionSets::Base
5
+ loop_name 'L2310E' #Ambulance Pick-up Location
6
+
7
+ #Ambulance Pick-up Location
8
+ segment Hippo::Segments::NM1,
9
+ :name => 'Ambulance Pick-up Location',
10
+ :minimum => 0,
11
+ :maximum => 1,
12
+ :position => 2500,
13
+ :defaults => {
14
+ 'NM101' => 'PW',
15
+ 'NM102' => '2'
16
+ }
17
+
18
+ #Ambulance Pick-up Location Address
19
+ segment Hippo::Segments::N3,
20
+ :name => 'Ambulance Pick-up Location Address',
21
+ :minimum => 1,
22
+ :maximum => 1,
23
+ :position => 2650
24
+
25
+ #Ambulance Pick-up Location City, State, ZIP Code
26
+ segment Hippo::Segments::N4,
27
+ :name => 'Ambulance Pick-up Location City, State, ZIP Code',
28
+ :minimum => 1,
29
+ :maximum => 1,
30
+ :position => 2700
31
+
32
+ end
33
+ end
34
+ end