hippo 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (107) hide show
  1. data/CHANGELOG +4 -5
  2. data/README.md +10 -5
  3. data/lib/hippo/parser.rb +19 -9
  4. data/lib/hippo/transaction_sets/HIPAA_276/L2000A.rb +7 -3
  5. data/lib/hippo/transaction_sets/HIPAA_276/L2000B.rb +7 -3
  6. data/lib/hippo/transaction_sets/HIPAA_276/L2000C.rb +7 -3
  7. data/lib/hippo/transaction_sets/HIPAA_276/L2000D.rb +15 -8
  8. data/lib/hippo/transaction_sets/HIPAA_276/L2000E.rb +12 -7
  9. data/lib/hippo/transaction_sets/HIPAA_276/L2100A.rb +3 -2
  10. data/lib/hippo/transaction_sets/HIPAA_276/L2100B.rb +2 -1
  11. data/lib/hippo/transaction_sets/HIPAA_276/L2100C.rb +4 -2
  12. data/lib/hippo/transaction_sets/HIPAA_276/L2100D.rb +4 -2
  13. data/lib/hippo/transaction_sets/HIPAA_276/L2100E.rb +1 -1
  14. data/lib/hippo/transaction_sets/HIPAA_276/L2200D.rb +13 -12
  15. data/lib/hippo/transaction_sets/HIPAA_276/L2200E.rb +13 -12
  16. data/lib/hippo/transaction_sets/HIPAA_276/L2210D.rb +4 -3
  17. data/lib/hippo/transaction_sets/HIPAA_276/L2210E.rb +4 -3
  18. data/lib/hippo/transaction_sets/HIPAA_276/base.rb +31 -27
  19. data/lib/hippo/transaction_sets/HIPAA_277/L2000A.rb +11 -4
  20. data/lib/hippo/transaction_sets/HIPAA_277/L2000B.rb +13 -6
  21. data/lib/hippo/transaction_sets/HIPAA_277/L2000C.rb +13 -6
  22. data/lib/hippo/transaction_sets/HIPAA_277/L2000D.rb +12 -6
  23. data/lib/hippo/transaction_sets/HIPAA_277/L2000E.rb +11 -6
  24. data/lib/hippo/transaction_sets/HIPAA_277/L2100A.rb +4 -2
  25. data/lib/hippo/transaction_sets/HIPAA_277/L2100B.rb +2 -1
  26. data/lib/hippo/transaction_sets/HIPAA_277/L2100C.rb +4 -2
  27. data/lib/hippo/transaction_sets/HIPAA_277/L2100D.rb +3 -2
  28. data/lib/hippo/transaction_sets/HIPAA_277/L2100E.rb +1 -1
  29. data/lib/hippo/transaction_sets/HIPAA_277/L2200A.rb +3 -3
  30. data/lib/hippo/transaction_sets/HIPAA_277/L2200B.rb +10 -7
  31. data/lib/hippo/transaction_sets/HIPAA_277/L2200C.rb +14 -8
  32. data/lib/hippo/transaction_sets/HIPAA_277/L2200D.rb +13 -9
  33. data/lib/hippo/transaction_sets/HIPAA_277/L2200E.rb +12 -11
  34. data/lib/hippo/transaction_sets/HIPAA_277/L2220D.rb +7 -6
  35. data/lib/hippo/transaction_sets/HIPAA_277/L2220E.rb +5 -4
  36. data/lib/hippo/transaction_sets/HIPAA_277/base.rb +23 -20
  37. data/lib/hippo/transaction_sets/HIPAA_835/L1000A.rb +9 -6
  38. data/lib/hippo/transaction_sets/HIPAA_835/L1000B.rb +12 -5
  39. data/lib/hippo/transaction_sets/HIPAA_835/L2000.rb +6 -2
  40. data/lib/hippo/transaction_sets/HIPAA_835/L2100.rb +55 -24
  41. data/lib/hippo/transaction_sets/HIPAA_835/L2110.rb +30 -9
  42. data/lib/hippo/transaction_sets/HIPAA_835/base.rb +23 -13
  43. data/lib/hippo/transaction_sets/HIPAA_837/L1000A.rb +5 -3
  44. data/lib/hippo/transaction_sets/HIPAA_837/L1000B.rb +1 -1
  45. data/lib/hippo/transaction_sets/HIPAA_837/L2000A.rb +30 -9
  46. data/lib/hippo/transaction_sets/HIPAA_837/L2000B.rb +42 -7
  47. data/lib/hippo/transaction_sets/HIPAA_837/L2000C.rb +17 -5
  48. data/lib/hippo/transaction_sets/HIPAA_837/L2010AA.rb +14 -6
  49. data/lib/hippo/transaction_sets/HIPAA_837/L2010AB.rb +3 -2
  50. data/lib/hippo/transaction_sets/HIPAA_837/L2010AC.rb +8 -4
  51. data/lib/hippo/transaction_sets/HIPAA_837/L2010BA.rb +9 -7
  52. data/lib/hippo/transaction_sets/HIPAA_837/L2010BB.rb +11 -4
  53. data/lib/hippo/transaction_sets/HIPAA_837/L2010CA.rb +10 -6
  54. data/lib/hippo/transaction_sets/HIPAA_837/L2300.rb +116 -56
  55. data/lib/hippo/transaction_sets/HIPAA_837/L2310A.rb +6 -2
  56. data/lib/hippo/transaction_sets/HIPAA_837/L2310B.rb +8 -4
  57. data/lib/hippo/transaction_sets/HIPAA_837/L2310C.rb +6 -3
  58. data/lib/hippo/transaction_sets/HIPAA_837/L2310D.rb +5 -2
  59. data/lib/hippo/transaction_sets/HIPAA_837/L2310E.rb +1 -1
  60. data/lib/hippo/transaction_sets/HIPAA_837/L2310F.rb +1 -1
  61. data/lib/hippo/transaction_sets/HIPAA_837/L2320.rb +54 -19
  62. data/lib/hippo/transaction_sets/HIPAA_837/L2330A.rb +5 -3
  63. data/lib/hippo/transaction_sets/HIPAA_837/L2330B.rb +12 -8
  64. data/lib/hippo/transaction_sets/HIPAA_837/L2330C.rb +6 -2
  65. data/lib/hippo/transaction_sets/HIPAA_837/L2330D.rb +7 -3
  66. data/lib/hippo/transaction_sets/HIPAA_837/L2330E.rb +5 -2
  67. data/lib/hippo/transaction_sets/HIPAA_837/L2330F.rb +5 -2
  68. data/lib/hippo/transaction_sets/HIPAA_837/L2330G.rb +7 -3
  69. data/lib/hippo/transaction_sets/HIPAA_837/L2400.rb +122 -60
  70. data/lib/hippo/transaction_sets/HIPAA_837/L2410.rb +8 -2
  71. data/lib/hippo/transaction_sets/HIPAA_837/L2420A.rb +8 -4
  72. data/lib/hippo/transaction_sets/HIPAA_837/L2420B.rb +7 -3
  73. data/lib/hippo/transaction_sets/HIPAA_837/L2420C.rb +5 -2
  74. data/lib/hippo/transaction_sets/HIPAA_837/L2420D.rb +5 -2
  75. data/lib/hippo/transaction_sets/HIPAA_837/L2420E.rb +8 -4
  76. data/lib/hippo/transaction_sets/HIPAA_837/L2420F.rb +6 -2
  77. data/lib/hippo/transaction_sets/HIPAA_837/L2420G.rb +1 -1
  78. data/lib/hippo/transaction_sets/HIPAA_837/L2420H.rb +1 -1
  79. data/lib/hippo/transaction_sets/HIPAA_837/L2430.rb +6 -3
  80. data/lib/hippo/transaction_sets/HIPAA_837/L2440.rb +4 -1
  81. data/lib/hippo/transaction_sets/HIPAA_837/base.rb +23 -32
  82. data/lib/hippo/transaction_sets/HIPAA_999/L2000AK2.rb +9 -3
  83. data/lib/hippo/transaction_sets/HIPAA_999/L2100AK2.rb +9 -3
  84. data/lib/hippo/transaction_sets/HIPAA_999/L2110AK2.rb +4 -1
  85. data/lib/hippo/transaction_sets/HIPAA_999/base.rb +6 -3
  86. data/lib/hippo/transaction_sets/base.rb +87 -72
  87. data/lib/hippo/transaction_sets/component.rb +80 -0
  88. data/lib/hippo/transaction_sets/repeating_component.rb +30 -0
  89. data/lib/hippo/transaction_sets.rb +8 -6
  90. data/lib/hippo/version.rb +1 -1
  91. data/samples/005010X221A1_business_scenario_1.edi +1 -0
  92. data/samples/005010X221A1_tmhp_example.edi +1 -0
  93. data/samples/005010X222A1_anesthesia.edi +1 -0
  94. data/samples/005010X222A1_commercial_health_insurance.edi +1 -0
  95. data/test/test_helper.rb +6 -6
  96. data/test/test_hipaa_835.rb +229 -0
  97. data/test/test_hipaa_837.rb +263 -63
  98. data/test/test_parser.rb +26 -0
  99. data/test/test_segments_base.rb +1 -1
  100. data/test/test_transaction_sets_base.rb +21 -1
  101. metadata +17 -16
  102. data/bin/demo_270.rb +0 -280
  103. data/bin/demo_276.rb +0 -296
  104. data/bin/demo_835.rb +0 -170
  105. data/lib/hippo/samples/835.edi +0 -88
  106. data/lib/hippo/samples/sample_835_with.rb +0 -272
  107. data/lib/hippo/samples/sample_parsed.rb +0 -1162
@@ -10,8 +10,9 @@ module Hippo::TransactionSets
10
10
  :minimum => 1,
11
11
  :maximum => 1,
12
12
  :position => 200,
13
- :defaults => {
13
+ :identified_by => {
14
14
  'NM101' => '41',
15
+ 'NM102' => ["1", "2"],
15
16
  'NM108' => '46'
16
17
  }
17
18
 
@@ -21,8 +22,9 @@ module Hippo::TransactionSets
21
22
  :minimum => 1,
22
23
  :maximum => 2,
23
24
  :position => 450,
24
- :defaults => {
25
- 'PER01' => 'IC'
25
+ :identified_by => {
26
+ 'PER01' => 'IC',
27
+ 'PER03' => ["EM", "FX", "TE"]
26
28
  }
27
29
 
28
30
  end
@@ -10,7 +10,7 @@ module Hippo::TransactionSets
10
10
  :minimum => 1,
11
11
  :maximum => 1,
12
12
  :position => 500,
13
- :defaults => {
13
+ :identified_by => {
14
14
  'NM101' => '40',
15
15
  'NM102' => '2',
16
16
  'NM108' => '46'
@@ -10,7 +10,7 @@ module Hippo::TransactionSets
10
10
  :minimum => 1,
11
11
  :maximum => 1,
12
12
  :position => 10,
13
- :defaults => {
13
+ :identified_by => {
14
14
  'HL03' => '20',
15
15
  'HL04' => '1'
16
16
  }
@@ -21,7 +21,7 @@ module Hippo::TransactionSets
21
21
  :minimum => 0,
22
22
  :maximum => 1,
23
23
  :position => 30,
24
- :defaults => {
24
+ :identified_by => {
25
25
  'PRV01' => 'BI',
26
26
  'PRV02' => 'PXC'
27
27
  }
@@ -32,33 +32,54 @@ module Hippo::TransactionSets
32
32
  :minimum => 0,
33
33
  :maximum => 1,
34
34
  :position => 100,
35
- :defaults => {
35
+ :identified_by => {
36
36
  'CUR01' => '85'
37
37
  }
38
38
 
39
39
  #Billing Provider Name
40
40
  loop Hippo::TransactionSets::HIPAA_837::L2010AA,
41
41
  :name => 'Billing Provider Name',
42
- :identified_by => {'NM1.NM101' => '85'},
43
42
  :minimum => 1,
44
43
  :maximum => 1,
45
- :position => 150
44
+ :position => 150,
45
+ :identified_by => {
46
+ 'NM1.NM101' => '85',
47
+ 'NM1.NM102' => ["1", "2"]
48
+ }
46
49
 
47
50
  #Pay-to Address Name
48
51
  loop Hippo::TransactionSets::HIPAA_837::L2010AB,
49
52
  :name => 'Pay-to Address Name',
50
- :identified_by => {'NM1.NM101' => '87'},
51
53
  :minimum => 0,
52
54
  :maximum => 1,
53
- :position => 150
55
+ :position => 150,
56
+ :identified_by => {
57
+ 'NM1.NM101' => '87',
58
+ 'NM1.NM102' => ["1", "2"]
59
+ }
54
60
 
55
61
  #Pay-To Plan Name
56
62
  loop Hippo::TransactionSets::HIPAA_837::L2010AC,
57
63
  :name => 'Pay-To Plan Name',
58
- :identified_by => {'NM1.NM101' => 'PE'},
59
64
  :minimum => 0,
60
65
  :maximum => 1,
61
- :position => 450
66
+ :position => 450,
67
+ :identified_by => {
68
+ 'NM1.NM101' => 'PE',
69
+ 'NM1.NM102' => '2',
70
+ 'NM1.NM108' => ["PI", "XV"]
71
+ }
72
+
73
+ #Subscriber Hierarchical Level
74
+ loop Hippo::TransactionSets::HIPAA_837::L2000B,
75
+ :name => 'Subscriber Hierarchical Level',
76
+ :minimum => 1,
77
+ :maximum => 99999,
78
+ :position => 10,
79
+ :identified_by => {
80
+ 'HL.HL03' => '22',
81
+ 'HL.HL04' => ["0", "1"]
82
+ }
62
83
 
63
84
  end
64
85
  end
@@ -10,8 +10,9 @@ module Hippo::TransactionSets
10
10
  :minimum => 1,
11
11
  :maximum => 1,
12
12
  :position => 10,
13
- :defaults => {
14
- 'HL03' => '22'
13
+ :identified_by => {
14
+ 'HL03' => '22',
15
+ 'HL04' => ["0", "1"]
15
16
  }
16
17
 
17
18
  #Subscriber Information
@@ -19,7 +20,10 @@ module Hippo::TransactionSets
19
20
  :name => 'Subscriber Information',
20
21
  :minimum => 1,
21
22
  :maximum => 1,
22
- :position => 50
23
+ :position => 50,
24
+ :identified_by => {
25
+ 'SBR01' => ["A", "B", "C", "D", "E", "F", "G", "H", "P", "S", "T", "U"]
26
+ }
23
27
 
24
28
  #Patient Information
25
29
  segment Hippo::Segments::PAT,
@@ -31,18 +35,49 @@ module Hippo::TransactionSets
31
35
  #Subscriber Name
32
36
  loop Hippo::TransactionSets::HIPAA_837::L2010BA,
33
37
  :name => 'Subscriber Name',
34
- :identified_by => {'NM1.NM101' => 'IL'},
35
38
  :minimum => 1,
36
39
  :maximum => 1,
37
- :position => 150
40
+ :position => 150,
41
+ :identified_by => {
42
+ 'NM1.NM101' => 'IL',
43
+ 'NM1.NM102' => ["1", "2"]
44
+ }
38
45
 
39
46
  #Payer Name
40
47
  loop Hippo::TransactionSets::HIPAA_837::L2010BB,
41
48
  :name => 'Payer Name',
42
- :identified_by => {'NM1.NM101' => 'PR'},
43
49
  :minimum => 1,
44
50
  :maximum => 1,
45
- :position => 150
51
+ :position => 150,
52
+ :identified_by => {
53
+ 'NM1.NM101' => 'PR',
54
+ 'NM1.NM102' => '2',
55
+ 'NM1.NM108' => ["PI", "XV"]
56
+ }
57
+
58
+ #Patient Hierarchical Level
59
+ loop Hippo::TransactionSets::HIPAA_837::L2000C,
60
+ :name => 'Patient Hierarchical Level',
61
+ :minimum => 0,
62
+ :maximum => 99999,
63
+ :position => 10,
64
+ :identified_by => {
65
+ 'HL.HL03' => '23',
66
+ 'HL.HL04' => '0'
67
+ }
68
+
69
+ #Claim Information
70
+ loop Hippo::TransactionSets::HIPAA_837::L2300,
71
+ :name => 'Claim Information',
72
+ :minimum => 1,
73
+ :maximum => 100,
74
+ :position => 1300,
75
+ :identified_by => {
76
+ 'CLM.CLM06' => ["N", "Y"],
77
+ 'CLM.CLM07' => ["A", "B", "C"],
78
+ 'CLM.CLM08' => ["N", "W", "Y"],
79
+ 'CLM.CLM09' => ["I", "Y"]
80
+ }
46
81
 
47
82
  end
48
83
  end
@@ -10,7 +10,7 @@ module Hippo::TransactionSets
10
10
  :minimum => 0,
11
11
  :maximum => 1,
12
12
  :position => 10,
13
- :defaults => {
13
+ :identified_by => {
14
14
  'HL03' => '23',
15
15
  'HL04' => '0'
16
16
  }
@@ -20,22 +20,34 @@ module Hippo::TransactionSets
20
20
  :name => 'Patient Information',
21
21
  :minimum => 1,
22
22
  :maximum => 1,
23
- :position => 70
23
+ :position => 70,
24
+ :identified_by => {
25
+ 'PAT01' => ["01", "19", "20", "21", "39", "40", "53", "G8"]
26
+ }
24
27
 
25
28
  #Patient Name
26
29
  loop Hippo::TransactionSets::HIPAA_837::L2010CA,
27
30
  :name => 'Patient Name',
28
- :identified_by => {'NM1.NM101' => 'QC'},
29
31
  :minimum => 1,
30
32
  :maximum => 1,
31
- :position => 150
33
+ :position => 150,
34
+ :identified_by => {
35
+ 'NM1.NM101' => 'QC',
36
+ 'NM1.NM102' => '1'
37
+ }
32
38
 
33
39
  #Claim Information
34
40
  loop Hippo::TransactionSets::HIPAA_837::L2300,
35
41
  :name => 'Claim Information',
36
42
  :minimum => 1,
37
43
  :maximum => 100,
38
- :position => 1300
44
+ :position => 1300,
45
+ :identified_by => {
46
+ 'CLM.CLM06' => ["N", "Y"],
47
+ 'CLM.CLM07' => ["A", "B", "C"],
48
+ 'CLM.CLM08' => ["N", "W", "Y"],
49
+ 'CLM.CLM09' => ["I", "Y"]
50
+ }
39
51
 
40
52
  end
41
53
  end
@@ -10,8 +10,9 @@ module Hippo::TransactionSets
10
10
  :minimum => 1,
11
11
  :maximum => 1,
12
12
  :position => 150,
13
- :defaults => {
14
- 'NM101' => '85'
13
+ :identified_by => {
14
+ 'NM101' => '85',
15
+ 'NM102' => ["1", "2"]
15
16
  }
16
17
 
17
18
  #Billing Provider Address
@@ -33,14 +34,20 @@ module Hippo::TransactionSets
33
34
  :name => 'Billing Provider Tax Identification',
34
35
  :minimum => 1,
35
36
  :maximum => 1,
36
- :position => 350
37
+ :position => 350,
38
+ :identified_by => {
39
+ 'REF01' => ["EI", "SY"]
40
+ }
37
41
 
38
42
  #Billing Provider UPIN/License Information
39
43
  segment Hippo::Segments::REF,
40
44
  :name => 'Billing Provider UPIN/License Information',
41
45
  :minimum => 0,
42
46
  :maximum => 2,
43
- :position => 360
47
+ :position => 360,
48
+ :identified_by => {
49
+ 'REF01' => ["0B", "1G"]
50
+ }
44
51
 
45
52
  #Billing Provider Contact Information
46
53
  segment Hippo::Segments::PER,
@@ -48,8 +55,9 @@ module Hippo::TransactionSets
48
55
  :minimum => 0,
49
56
  :maximum => 2,
50
57
  :position => 400,
51
- :defaults => {
52
- 'PER01' => 'IC'
58
+ :identified_by => {
59
+ 'PER01' => 'IC',
60
+ 'PER03' => ["EM", "FX", "TE"]
53
61
  }
54
62
 
55
63
  end
@@ -10,8 +10,9 @@ module Hippo::TransactionSets
10
10
  :minimum => 0,
11
11
  :maximum => 1,
12
12
  :position => 150,
13
- :defaults => {
14
- 'NM101' => '87'
13
+ :identified_by => {
14
+ 'NM101' => '87',
15
+ 'NM102' => ["1", "2"]
15
16
  }
16
17
 
17
18
  #Pay-to Address - ADDRESS
@@ -10,9 +10,10 @@ module Hippo::TransactionSets
10
10
  :minimum => 0,
11
11
  :maximum => 1,
12
12
  :position => 450,
13
- :defaults => {
13
+ :identified_by => {
14
14
  'NM101' => 'PE',
15
- 'NM102' => '2'
15
+ 'NM102' => '2',
16
+ 'NM108' => ["PI", "XV"]
16
17
  }
17
18
 
18
19
  #Pay-to Plan Address
@@ -34,7 +35,10 @@ module Hippo::TransactionSets
34
35
  :name => 'Pay-to Plan Secondary Identification',
35
36
  :minimum => 0,
36
37
  :maximum => 1,
37
- :position => 650
38
+ :position => 650,
39
+ :identified_by => {
40
+ 'REF01' => ["2U", "FY", "NF"]
41
+ }
38
42
 
39
43
  #Pay-To Plan Tax Identification Number
40
44
  segment Hippo::Segments::REF,
@@ -42,7 +46,7 @@ module Hippo::TransactionSets
42
46
  :minimum => 1,
43
47
  :maximum => 1,
44
48
  :position => 655,
45
- :defaults => {
49
+ :identified_by => {
46
50
  'REF01' => 'EI'
47
51
  }
48
52
 
@@ -10,8 +10,9 @@ module Hippo::TransactionSets
10
10
  :minimum => 1,
11
11
  :maximum => 1,
12
12
  :position => 150,
13
- :defaults => {
14
- 'NM101' => 'IL'
13
+ :identified_by => {
14
+ 'NM101' => 'IL',
15
+ 'NM102' => ["1", "2"]
15
16
  }
16
17
 
17
18
  #Subscriber Address
@@ -34,8 +35,9 @@ module Hippo::TransactionSets
34
35
  :minimum => 0,
35
36
  :maximum => 1,
36
37
  :position => 320,
37
- :defaults => {
38
- 'DMG01' => 'D8'
38
+ :identified_by => {
39
+ 'DMG01' => 'D8',
40
+ 'DMG03' => ["F", "M", "U"]
39
41
  }
40
42
 
41
43
  #Subscriber Secondary Identification
@@ -44,7 +46,7 @@ module Hippo::TransactionSets
44
46
  :minimum => 0,
45
47
  :maximum => 1,
46
48
  :position => 350,
47
- :defaults => {
49
+ :identified_by => {
48
50
  'REF01' => 'SY'
49
51
  }
50
52
 
@@ -54,7 +56,7 @@ module Hippo::TransactionSets
54
56
  :minimum => 0,
55
57
  :maximum => 1,
56
58
  :position => 360,
57
- :defaults => {
59
+ :identified_by => {
58
60
  'REF01' => 'Y4'
59
61
  }
60
62
 
@@ -64,7 +66,7 @@ module Hippo::TransactionSets
64
66
  :minimum => 0,
65
67
  :maximum => 1,
66
68
  :position => 400,
67
- :defaults => {
69
+ :identified_by => {
68
70
  'PER01' => 'IC',
69
71
  'PER03' => 'TE'
70
72
  }
@@ -10,9 +10,10 @@ module Hippo::TransactionSets
10
10
  :minimum => 1,
11
11
  :maximum => 1,
12
12
  :position => 150,
13
- :defaults => {
13
+ :identified_by => {
14
14
  'NM101' => 'PR',
15
- 'NM102' => '2'
15
+ 'NM102' => '2',
16
+ 'NM108' => ["PI", "XV"]
16
17
  }
17
18
 
18
19
  #Payer Address
@@ -34,14 +35,20 @@ module Hippo::TransactionSets
34
35
  :name => 'Payer Secondary Identification',
35
36
  :minimum => 0,
36
37
  :maximum => 3,
37
- :position => 350
38
+ :position => 350,
39
+ :identified_by => {
40
+ 'REF01' => ["2U", "EI", "FY", "NF"]
41
+ }
38
42
 
39
43
  #Billing Provider Secondary Identification
40
44
  segment Hippo::Segments::REF,
41
45
  :name => 'Billing Provider Secondary Identification',
42
46
  :minimum => 0,
43
47
  :maximum => 2,
44
- :position => 370
48
+ :position => 370,
49
+ :identified_by => {
50
+ 'REF01' => ["G2", "LU"]
51
+ }
45
52
 
46
53
  end
47
54
  end
@@ -10,7 +10,7 @@ module Hippo::TransactionSets
10
10
  :minimum => 1,
11
11
  :maximum => 1,
12
12
  :position => 150,
13
- :defaults => {
13
+ :identified_by => {
14
14
  'NM101' => 'QC',
15
15
  'NM102' => '1'
16
16
  }
@@ -35,8 +35,9 @@ module Hippo::TransactionSets
35
35
  :minimum => 1,
36
36
  :maximum => 1,
37
37
  :position => 320,
38
- :defaults => {
39
- 'DMG01' => 'D8'
38
+ :identified_by => {
39
+ 'DMG01' => 'D8',
40
+ 'DMG03' => ["F", "M", "U"]
40
41
  }
41
42
 
42
43
  #Property and Casualty Claim Number
@@ -45,7 +46,7 @@ module Hippo::TransactionSets
45
46
  :minimum => 0,
46
47
  :maximum => 1,
47
48
  :position => 360,
48
- :defaults => {
49
+ :identified_by => {
49
50
  'REF01' => 'Y4'
50
51
  }
51
52
 
@@ -54,7 +55,10 @@ module Hippo::TransactionSets
54
55
  :name => 'Property and Casualty Patient Identifier',
55
56
  :minimum => 0,
56
57
  :maximum => 1,
57
- :position => 362
58
+ :position => 362,
59
+ :identified_by => {
60
+ 'REF01' => ["1W", "SY"]
61
+ }
58
62
 
59
63
  #Property and Casualty Patient Contact Information
60
64
  segment Hippo::Segments::PER,
@@ -62,7 +66,7 @@ module Hippo::TransactionSets
62
66
  :minimum => 0,
63
67
  :maximum => 1,
64
68
  :position => 400,
65
- :defaults => {
69
+ :identified_by => {
66
70
  'PER01' => 'IC',
67
71
  'PER03' => 'TE'
68
72
  }