stupidedi 1.3.21 → 1.3.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stupidedi/builder/builder_dsl.rb +5 -0
  3. data/lib/stupidedi/builder/constraint_table.rb +100 -74
  4. data/lib/stupidedi/builder/generation.rb +73 -70
  5. data/lib/stupidedi/builder/instruction.rb +10 -0
  6. data/lib/stupidedi/builder/instruction_table.rb +19 -7
  7. data/lib/stupidedi/builder/state_machine.rb +9 -3
  8. data/lib/stupidedi/builder/states/abstract_state.rb +1 -1
  9. data/lib/stupidedi/builder/states/failure_state.rb +1 -1
  10. data/lib/stupidedi/builder/states/initial_state.rb +4 -4
  11. data/lib/stupidedi/contrib/002001/guides/SH856.rb +4 -4
  12. data/lib/stupidedi/contrib/002001/transaction_set_defs/PO830.rb +2 -2
  13. data/lib/stupidedi/contrib/003010/guides/PS830.rb +4 -4
  14. data/lib/stupidedi/contrib/003010/guides/RA820.rb +22 -12
  15. data/lib/stupidedi/contrib/003010/transaction_set_defs/PC860.rb +2 -2
  16. data/lib/stupidedi/contrib/003010/transaction_set_defs/PS830.rb +1 -1
  17. data/lib/stupidedi/contrib/003050/guides/PO850.rb +2 -2
  18. data/lib/stupidedi/contrib/003050/transaction_set_defs/PO850.rb +2 -2
  19. data/lib/stupidedi/contrib/004010/guides.rb +0 -1
  20. data/lib/stupidedi/contrib/004010/transaction_set_defs/AR943.rb +1 -1
  21. data/lib/stupidedi/contrib/004010/transaction_set_defs/IM210.rb +2 -2
  22. data/lib/stupidedi/contrib/004010/transaction_set_defs/RE944.rb +1 -1
  23. data/lib/stupidedi/contrib/004010/transaction_set_defs/SH856.rb +1 -7
  24. data/lib/stupidedi/editor.rb +0 -1
  25. data/lib/stupidedi/guides/004010/guide_builder.rb +1 -1
  26. data/lib/stupidedi/guides/005010/X223-HC837I.rb +1192 -1195
  27. data/lib/stupidedi/guides/005010/guide_builder.rb +1 -1
  28. data/lib/stupidedi/schema.rb +1 -0
  29. data/lib/stupidedi/schema/auditor.rb +435 -0
  30. data/lib/stupidedi/schema/loop_def.rb +18 -1
  31. data/lib/stupidedi/schema/transaction_set_def.rb +12 -0
  32. data/lib/stupidedi/version.rb +1 -1
  33. data/lib/stupidedi/versions/functional_groups/004010/transaction_set_defs/HP835.rb +3 -17
  34. data/lib/stupidedi/versions/functional_groups/005010/element_types/time_val.rb +3 -2
  35. data/lib/stupidedi/versions/functional_groups/005010/segment_defs.rb +9 -6
  36. data/lib/stupidedi/versions/functional_groups/005010/transaction_set_defs/HB271.rb +25 -9
  37. data/lib/stupidedi/versions/functional_groups/005010/transaction_set_defs/HP835.rb +2 -2
  38. data/lib/stupidedi/zipper.rb +20 -1
  39. data/lib/stupidedi/zipper/memoized_cursor.rb +2 -0
  40. data/lib/stupidedi/zipper/path.rb +10 -0
  41. data/lib/stupidedi/zipper/root_cursor.rb +1 -1
  42. data/lib/stupidedi/zipper/stack_cursor.rb +174 -0
  43. data/spec/examples/stupidedi/audit_spec.rb +58 -0
  44. data/spec/spec_helper.rb +21 -13
  45. data/spec/support/rcov.rb +9 -4
  46. metadata +4 -1
@@ -20,6 +20,10 @@ module Stupidedi
20
20
  @__drop = Hash.new
21
21
  end
22
22
 
23
+ def hash
24
+ [NonEmpty, state].hash
25
+ end
26
+
23
27
  # @return [InstructionTable]
24
28
  def copy(changes = {})
25
29
  NonEmpty.new \
@@ -50,7 +54,15 @@ module Stupidedi
50
54
 
51
55
  # @return [Array<Instruction>]
52
56
  def matches(segment_tok, strict = false)
53
- @__matches ||= begin
57
+ if constraints.defined_at?(segment_tok.id)
58
+ constraints.at(segment_tok.id).matches(segment_tok, strict)
59
+ else
60
+ []
61
+ end
62
+ end
63
+
64
+ def constraints
65
+ @__constraints ||= begin
54
66
  constraints = Hash.new
55
67
 
56
68
  # Group instructions by segment identifier
@@ -65,12 +77,6 @@ module Stupidedi
65
77
 
66
78
  constraints
67
79
  end
68
-
69
- if @__matches.defined_at?(segment_tok.id)
70
- @__matches.at(segment_tok.id).matches(segment_tok, strict)
71
- else
72
- []
73
- end
74
80
  end
75
81
 
76
82
  # @return [InstructionTable]
@@ -138,6 +144,12 @@ module Stupidedi
138
144
  end
139
145
  end
140
146
  end
147
+
148
+ private
149
+
150
+ def state
151
+ [@instructions, @pop]
152
+ end
141
153
  end
142
154
 
143
155
  Empty = Class.new(InstructionTable) do
@@ -14,13 +14,19 @@ module Stupidedi
14
14
  # @return [Config]
15
15
  attr_reader :config
16
16
 
17
- # @return [Array<Zipper::AbstractCursor>]
17
+ # @return [Array<Zipper::AbstractCursor<StateMachine::AbstractState>>]
18
18
  attr_reader :active
19
19
 
20
20
  def initialize(config, active)
21
21
  @config, @active = config, active
22
22
  end
23
23
 
24
+ def copy(changes = {})
25
+ StateMachine.new \
26
+ changes.fetch(:config, @config),
27
+ changes.fetch(:active, @active)
28
+ end
29
+
24
30
  # @return [Reader::Separators]
25
31
  def separators
26
32
  @active.head.node.separators
@@ -47,8 +53,8 @@ module Stupidedi
47
53
  #########################################################################
48
54
 
49
55
  # @return [StateMachine]
50
- def build(config)
51
- StateMachine.new(config, InitialState.start.cons)
56
+ def build(config, zipper = Zipper::Tree)
57
+ StateMachine.new(config, InitialState.start(zipper).cons)
52
58
  end
53
59
 
54
60
  # @endgroup
@@ -14,7 +14,7 @@ module Stupidedi
14
14
  # @return [Reader::SegmentDict]
15
15
  abstract :segment_dict
16
16
 
17
- # @return [Zipper::AbstractCursor]
17
+ # @return [Zipper::AbstractCursor<Values::SegmentVal>]
18
18
  abstract :zipper
19
19
 
20
20
  # @return [Array<AbstractState>]
@@ -33,7 +33,7 @@ module Stupidedi
33
33
  changes.fetch(:segment_dict, @segment_dict),
34
34
  changes.fetch(:instructions, @instructions),
35
35
  changes.fetch(:zipper, @zipper),
36
- changes.fetch(:children, @zipper)
36
+ changes.fetch(:children, @children)
37
37
  end
38
38
  end
39
39
 
@@ -40,7 +40,7 @@ module Stupidedi
40
40
  class << InitialState
41
41
 
42
42
  # @return [InitialState]
43
- def build
43
+ def build(zipper)
44
44
  new(
45
45
  Reader::Separators.empty,
46
46
  Reader::SegmentDict.empty,
@@ -52,13 +52,13 @@ module Stupidedi
52
52
 
53
53
  # Create a new parse tree with a Transmission as the root, and descend
54
54
  # to the placeholder where the first child node will be placed.
55
- Zipper.build(Values::TransmissionVal.new),
55
+ zipper.build(Values::TransmissionVal.new),
56
56
  [])
57
57
  end
58
58
 
59
59
  # @return [Zipper::AbstractCursor]
60
- def start
61
- Zipper.build(build)
60
+ def start(zipper)
61
+ zipper.build(build(zipper))
62
62
  end
63
63
  end
64
64
 
@@ -46,7 +46,7 @@ module Stupidedi
46
46
  r::Required, d::RepeatCount.bounded(1),
47
47
  b::Element(e::Required, "Hierarchical ID Number", b::Values("1")),
48
48
  b::Element(e::NotUsed, "Hierarchical Parent ID Number"),
49
- b::Element(e::Situational, "Hierarchical Level Code", b::Values("S")),
49
+ b::Element(e::Required, "Hierarchical Level Code", b::Values("S")),
50
50
  b::Element(e::NotUsed, "Hierarchical Child Code")),
51
51
  b::Segment(130, s::MEA, "Measurements",
52
52
  r::Situational, d::RepeatCount.bounded(1),
@@ -100,7 +100,7 @@ module Stupidedi
100
100
  r::Situational, d::RepeatCount.bounded(1),
101
101
  b::Element(e::Required, "Hierarchical ID Number"),
102
102
  b::Element(e::Situational, "Hierarchical Parent ID Number"),
103
- b::Element(e::Situational, "Hierarchical Level Code", b::Values("T")),
103
+ b::Element(e::Required, "Hierarchical Level Code", b::Values("T")),
104
104
  b::Element(e::Situational, "Hierarchical Child Code", b::Values("0","1"))),
105
105
  b::Segment( 200, s::REF, "Reference Numbers",
106
106
  r::Situational, d::RepeatCount.bounded(200),
@@ -114,7 +114,7 @@ module Stupidedi
114
114
  r::Situational, d::RepeatCount.bounded(1),
115
115
  b::Element(e::Required, "Hierarchical ID Number"),
116
116
  b::Element(e::Situational, "Hierarchical Parent ID Number"),
117
- b::Element(e::Situational, "Hierarchical Level Code", b::Values("I")),
117
+ b::Element(e::Required, "Hierarchical Level Code", b::Values("I")),
118
118
  b::Element(e::Situational, "Hierarchical Child Code", b::Values("0","1"))),
119
119
  b::Segment( 60, s::LIN, "Item Identification",
120
120
  r::Situational, d::RepeatCount.bounded(1),
@@ -176,7 +176,7 @@ module Stupidedi
176
176
  r::Situational, d::RepeatCount.bounded(1),
177
177
  b::Element(e::Required, "Hierarchical ID Number"),
178
178
  b::Element(e::Situational, "Hierarchical Parent ID Number"),
179
- b::Element(e::Situational, "Hierarchical Level Code", b::Values("P")),
179
+ b::Element(e::Required, "Hierarchical Level Code", b::Values("P")),
180
180
  b::Element(e::Situational, "Hierarchical Child Code", b::Values("0"))),
181
181
  b::Segment( 80, s::SN1, "Item Detail (Shipment)",
182
182
  r::Situational, d::RepeatCount.bounded(1),
@@ -14,8 +14,8 @@ module Stupidedi
14
14
  s:: ST.use( 10, r::Mandatory, d::RepeatCount.bounded(1)),
15
15
  s::BFR.use( 20, r::Mandatory, d::RepeatCount.bounded(1)),
16
16
 
17
- d::LoopDef.build("N1", d::RepeatCount.bounded(1),
18
- s:: N1.use( 90, r::Optional, d::RepeatCount.bounded(2)),
17
+ d::LoopDef.build("N1", d::RepeatCount.bounded(2),
18
+ s:: N1.use( 90, r::Optional, d::RepeatCount.bounded(1)),
19
19
  s::PER.use( 140, r::Optional, d::RepeatCount.bounded(3)))),
20
20
 
21
21
  d::TableDef.detail("Table 2 - Detail",
@@ -31,7 +31,7 @@ module Stupidedi
31
31
  b::Element(e::Required, "Date - Horizon End Date"),
32
32
  b::Element(e::Required, "Date - Release Issue Date"),
33
33
  b::Element(e::Required, "Date"),
34
- b::Element(e::Situational, "Purchase Order Number"))
34
+ b::Element(e::Situational, "Purchase Order Number")),
35
35
 
36
36
  # b::Segment(30, s::NTE, "Note/Special Instruction",
37
37
  # r::Situational, d::RepeatCount.bounded(100),
@@ -105,7 +105,7 @@ module Stupidedi
105
105
 
106
106
  d::LoopDef.build("SDP", d::RepeatCount.bounded(100),
107
107
  b::Segment( 290, s::SDP, "Ship/Delivery Pattern",
108
- r::Situational, d::RepeatCount.unbounded,
108
+ r::Situational, d::RepeatCount.bounded(1),
109
109
  b::Element(e::Required, "Ship/Delivery or Calendar Pattern Code", b::Values("Y")),
110
110
  b::Element(e::Required, "Ship/Delivery Pattern Time Code", b::Values("Y"))),
111
111
 
@@ -123,7 +123,7 @@ module Stupidedi
123
123
 
124
124
  d::LoopDef.build("NTE", d::RepeatCount.bounded(100),
125
125
  b::Segment(30, s::NTE, "Note/Special Instruction",
126
- r::Situational, d::RepeatCount.bounded(100),
126
+ r::Situational, d::RepeatCount.bounded(1),
127
127
  b::Element(e::Situational, "Note Reference Code", b::Values("GEN","LIN")),
128
128
  b::Element(e::Required, "Free Form Message")),
129
129
 
@@ -146,7 +146,7 @@ module Stupidedi
146
146
  b::Element(e::Situational, "Quantity"),
147
147
  b::Element(e::Situational, "Date/Time Qualifier", b::Values("003")),
148
148
  b::Element(e::Situational, "Date - Forecast Start Date"),
149
- b::Element(e::Situational, "Date - Estimated Delivery/Horizon End Date")))),
149
+ b::Element(e::Situational, "Date - Estimated Delivery/Horizon End Date"))))),
150
150
 
151
151
  d::TableDef.header("Summary",
152
152
  b::Segment(10, s::CTT, "Transaction Totals",
@@ -25,13 +25,13 @@ module Stupidedi
25
25
  b::Element(e::Required, "Payment Method Code", b::Values("PBC")),
26
26
  b::Element(e::Required, "Monetary Amount"),
27
27
  b::Element(e::Required, "Transaction Handling Code", b::Values("I")),
28
- b::Element(e::NotUsed, "Unknown")),
29
- b::Element(e::NotUsed, "Unknown")),
30
- b::Element(e::NotUsed, "Unknown")),
31
- b::Element(e::NotUsed, "Unknown")),
32
- b::Element(e::NotUsed, "Unknown")),
33
- b::Element(e::NotUsed, "Unknown")),
34
- b::Element(e::NotUsed, "Unknown")),
28
+ b::Element(e::NotUsed, "Unknown"),
29
+ b::Element(e::NotUsed, "Unknown"),
30
+ b::Element(e::NotUsed, "Unknown"),
31
+ b::Element(e::NotUsed, "Unknown"),
32
+ b::Element(e::NotUsed, "Unknown"),
33
+ b::Element(e::NotUsed, "Unknown"),
34
+ b::Element(e::NotUsed, "Unknown"),
35
35
  b::Element(e::Situational, "Account Number - Supplier Number"),
36
36
  b::Element(e::Situational, "Effective Entry Date - Issue Date")),
37
37
  b::Segment(50, s::REF, "Reference Numbers",
@@ -47,7 +47,9 @@ module Stupidedi
47
47
  b::Segment(70, s:: N1, "Name",
48
48
  r::Situational, d::RepeatCount.bounded(1),
49
49
  b::Element(e::Required, "Entity Identifier Code", b::Values("SU")),
50
- b::Element(e::Situational, "Name - Supplier Contact")))),
50
+ b::Element(e::Situational, "Name - Supplier Contact"),
51
+ b::Element(e::NotUsed, "Unknown"),
52
+ b::Element(e::NotUsed, "Unknown")))),
51
53
 
52
54
 
53
55
  d::TableDef.detail("Detail",
@@ -59,7 +61,9 @@ module Stupidedi
59
61
  b::Segment( 20, s:: N1, "Name - Invoice Number/Check Number/Bill of Lading Number - Header",
60
62
  r::Required, d::RepeatCount.bounded(1),
61
63
  b::Element(e::Required, "Entity Identifier Code", b::Values("HH")),
62
- b::Element(e::Situational, "Name - Header Reference Number")),
64
+ b::Element(e::Situational, "Name - Header Reference Number"),
65
+ b::Element(e::NotUsed, "Unknown"),
66
+ b::Element(e::NotUsed, "Unknown")),
63
67
 
64
68
  d::LoopDef.build("RMT", d::RepeatCount.unbounded,
65
69
  b::Segment( 30, s::RMT, "Remittance Advice",
@@ -108,19 +112,25 @@ module Stupidedi
108
112
  b::Segment( 21, s:: N1, "Name - DM/CM Supplier Authorizer",
109
113
  r::Situational, d::RepeatCount.bounded(1),
110
114
  b::Element(e::Required, "Entity Identifier Code", b::Values("AA")),
111
- b::Element(e::Situational, "Name - Supplier Authorizer"))),
115
+ b::Element(e::Situational, "Name - Supplier Authorizer"),
116
+ b::Element(e::NotUsed, "Unknown"),
117
+ b::Element(e::NotUsed, "Unknown"))),
112
118
 
113
119
  d::LoopDef.build("N1 - 3", d::RepeatCount.bounded(10000),
114
120
  b::Segment( 22, s:: N1, "Name - DM/CM Nissan Contact",
115
121
  r::Situational, d::RepeatCount.bounded(1),
116
122
  b::Element(e::Required, "Entity Identifier Code", b::Values("PJ")),
117
- b::Element(e::Situational, "Name - Nissan Contact"))),
123
+ b::Element(e::Situational, "Name - Nissan Contact"),
124
+ b::Element(e::NotUsed, "Unknown"),
125
+ b::Element(e::NotUsed, "Unknown"))),
118
126
 
119
127
  d::LoopDef.build("N1 - 4", d::RepeatCount.bounded(10000),
120
128
  b::Segment( 22, s:: N1, "Name - Invoice Number/Check Number/Bill of Lading Number - Line Item",
121
129
  r::Required, d::RepeatCount.bounded(1),
122
130
  b::Element(e::Required, "Entity Identifier Code", b::Values("LI")),
123
- b::Element(e::Situational, "Name - Invoice Number/Check Number/Bill of Lading")),
131
+ b::Element(e::Situational, "Name - Invoice Number/Check Number/Bill of Lading"),
132
+ b::Element(e::NotUsed, "Unknown"),
133
+ b::Element(e::NotUsed, "Unknown")),
124
134
 
125
135
  d::LoopDef.build("RMT - 2", d::RepeatCount.unbounded,
126
136
  b::Segment( 30, s::RMT, "Remittance Advice",
@@ -21,8 +21,8 @@ module Stupidedi
21
21
  s:: N9.use( 283, r::Optional, d::RepeatCount.bounded(1)),
22
22
  s::MSG.use( 290, r::Optional, d::RepeatCount.bounded(1000))),
23
23
 
24
- d::LoopDef.build("N1", d::RepeatCount.bounded(1),
25
- s:: N1.use( 300, r::Optional, d::RepeatCount.bounded(2)),
24
+ d::LoopDef.build("N1", d::RepeatCount.bounded(2),
25
+ s:: N1.use( 300, r::Optional, d::RepeatCount.bounded(1)),
26
26
  s:: N2.use( 310, r::Optional, d::RepeatCount.bounded(1)),
27
27
  s:: N3.use( 320, r::Optional, d::RepeatCount.bounded(1)),
28
28
  s:: N4.use( 330, r::Optional, d::RepeatCount.bounded(1)))),
@@ -31,7 +31,7 @@ module Stupidedi
31
31
  s::SDP.use( 290, r::Optional, d::RepeatCount.bounded(1)),
32
32
  s::FST.use( 301, r::Optional, d::RepeatCount.bounded(1)),
33
33
  d::LoopDef.build("NTE", d::RepeatCount.bounded(100),
34
- s::NTE.use( 30, r::Optional, d::RepeatCount.bounded(100)),
34
+ s::NTE.use( 30, r::Optional, d::RepeatCount.bounded(1)),
35
35
  s::FST.use( 300, r::Optional, d::RepeatCount.bounded(260)))),
36
36
 
37
37
  # s::SDP.use( 291, r::Optional, d::RepeatCount.bounded(1)),
@@ -67,9 +67,9 @@ module Stupidedi
67
67
  b::Element(e::NotUsed, "Unknown"),
68
68
  b::Element(e::Situational, "Description") )),
69
69
 
70
- d::LoopDef.build("DTM", d::RepeatCount.bounded(1),
70
+ d::LoopDef.build("DTM", d::RepeatCount.bounded(10),
71
71
  b::Segment(210, s::DTM, "Date/Time Reference",
72
- r::Situational, d::RepeatCount.bounded(10),
72
+ r::Situational, d::RepeatCount.bounded(1),
73
73
  b::Element(e::Required, "Date/Time Qualifier", b::Values("002")),
74
74
  b::Element(e::Situational, "Date"),
75
75
  b::Element(e::NotUsed, "Unknown"),
@@ -26,8 +26,8 @@ module Stupidedi
26
26
  d::LoopDef.build("PID", d::RepeatCount.bounded(1000),
27
27
  s::PID.use( 50, r::Optional, d::RepeatCount.bounded(1))),
28
28
 
29
- d::LoopDef.build("DTM", d::RepeatCount.bounded(1),
30
- s::DTM.use(210, r::Optional, d::RepeatCount.bounded(10))),
29
+ d::LoopDef.build("DTM", d::RepeatCount.bounded(10),
30
+ s::DTM.use(210, r::Optional, d::RepeatCount.bounded(1))),
31
31
 
32
32
  d::LoopDef.build("N9", d::RepeatCount.bounded(1000),
33
33
  s:: N9.use(330, r::Optional, d::RepeatCount.bounded(1))))),
@@ -10,7 +10,6 @@ module Stupidedi
10
10
 
11
11
  autoload :IM210, "stupidedi/contrib/004010/guides/IM210"
12
12
  autoload :PO850, "stupidedi/contrib/004010/guides/PO850"
13
- autoload :PR855, "stupidedi/contrib/004010/guides/PR855"
14
13
  autoload :OW940, "stupidedi/contrib/004010/guides/OW940"
15
14
  autoload :AR943, "stupidedi/contrib/004010/guides/AR943"
16
15
  autoload :RE944, "stupidedi/contrib/004010/guides/RE944"
@@ -15,7 +15,7 @@ module Stupidedi
15
15
  s::W06.use( 20, r::Mandatory, d::RepeatCount.bounded(1)),
16
16
 
17
17
  d::LoopDef.build("N1", d::RepeatCount.bounded(10),
18
- s:: N1.use(140, r::Mandatory, d::RepeatCount.bounded(3))),
18
+ s:: N1.use(140, r::Mandatory, d::RepeatCount.bounded(1))),
19
19
 
20
20
  s::G62.use(110, r::Optional, d::RepeatCount.bounded(2)),
21
21
  s::W27.use(130, r::Mandatory, d::RepeatCount.bounded(1))),
@@ -23,10 +23,10 @@ module Stupidedi
23
23
  s:: N1.use(110, r::Mandatory, d::RepeatCount.bounded(1)),
24
24
  s:: N3.use(130, r::Mandatory, d::RepeatCount.bounded(2)),
25
25
  s:: N4.use(140, r::Mandatory, d::RepeatCount.bounded(1)),
26
- s:: N9.use(150, r::Optional, d::RepeatCount.bounded(5)))),
26
+ s:: N9.use(150, r::Optional, d::RepeatCount.bounded(5))),
27
27
 
28
28
  d::LoopDef.build("0200", d::RepeatCount.bounded(10),
29
- s:: N7.use(160, r::Mandatory, d::RepeatCount.bounded(1))),
29
+ s:: N7.use(160, r::Mandatory, d::RepeatCount.bounded(1)))),
30
30
 
31
31
  d::TableDef.detail("Detail",
32
32
  d::LoopDef.build("0400", d::RepeatCount.unbounded,
@@ -15,7 +15,7 @@ module Stupidedi
15
15
  s::W17.use(20, r::Mandatory, d::RepeatCount.bounded(1)),
16
16
 
17
17
  d::LoopDef.build("N1", d::RepeatCount.bounded(10),
18
- s:: N1.use( 40, r::Mandatory, d::RepeatCount.bounded(2))),
18
+ s:: N1.use( 40, r::Mandatory, d::RepeatCount.bounded(1))),
19
19
 
20
20
  s::G62.use(140, r::Optional , d::RepeatCount.bounded(2))),
21
21
 
@@ -30,13 +30,7 @@ module Stupidedi
30
30
  s:: N1.use( 310, r::Optional, d::RepeatCount.bounded(1)),
31
31
  s:: N3.use( 330, r::Optional, d::RepeatCount.bounded(2)),
32
32
  s:: N4.use( 340, r::Optional, d::RepeatCount.unbounded),
33
- s::REF.use( 350, r::Optional, d::RepeatCount.bounded(12))),
34
- d::LoopDef.build("HL", d::RepeatCount.bounded(200),
35
- s:: N1.use( 310, r::Optional, d::RepeatCount.bounded(1)),
36
- s:: N1.use( 310, r::Optional, d::RepeatCount.bounded(1)),
37
- s::REF.use( 350, r::Optional, d::RepeatCount.bounded(12))),
38
-
39
- ),
33
+ s::REF.use( 350, r::Optional, d::RepeatCount.bounded(12)))),
40
34
 
41
35
  d::TableDef.summary("Table 4 - Summary",
42
36
  s::CTT.use(100, r::Optional, d::RepeatCount.bounded(1)),
@@ -23,7 +23,6 @@ module Stupidedi
23
23
  autoload :TransmissionEd, "stupidedi/editor/transmission_ed"
24
24
 
25
25
  autoload :X12, "stupidedi/editor/X12"
26
- autoload :X221, "stupidedi/editor/X221-HP835"
27
26
  autoload :X222, "stupidedi/editor/X222-HC837"
28
27
 
29
28
  # TA1
@@ -53,7 +53,7 @@ module Stupidedi
53
53
  unless elements.length == segment_def.element_uses.length
54
54
  raise Exceptions::InvalidSchemaError,
55
55
  "segment #{segment_def.id} has #{segment_def.element_uses.length}" +
56
- " elements but #{elements.length} arguments were specified"
56
+ " elements but #{elements.length} arguments were given"
57
57
  end
58
58
 
59
59
  element_index = "00"
@@ -18,69 +18,69 @@ module Stupidedi
18
18
  d::RepeatCount.bounded(100),
19
19
  b::Segment(1300, s::CLM, "Claim Information",
20
20
  r::Required, d::RepeatCount.bounded(1),
21
- b::Element(e::Required, "Patient Control Number", b::MaxLength(20)),
22
- b::Element(e::Required, "Total Claim Charge Amount"),
23
- b::Element(e::NotUsed, "Claim Filing Indicator Code"),
24
- b::Element(e::NotUsed, "Non-Institutional Claim Type Code"),
25
- b::Element(e::Required, "HEALTH CARE SERVICE LOCATION INFORMATION",
21
+ b::Element(e::Required, "Patient Control Number", b::MaxLength(20)),
22
+ b::Element(e::Required, "Total Claim Charge Amount"),
23
+ b::Element(e::NotUsed, "Claim Filing Indicator Code"),
24
+ b::Element(e::NotUsed, "Non-Institutional Claim Type Code"),
25
+ b::Element(e::Required, "HEALTH CARE SERVICE LOCATION INFORMATION",
26
26
  b::Element(e::Required, "Facility Type Code"),
27
27
  b::Element(e::Required, "Facility Code Qualifier", b::Values("A")),
28
28
  b::Element(e::Required, "Claim Frequency Code")),
29
- b::Element(e::NotUsed, "Yes/No Condition or Response Code"),
30
- b::Element(e::Required, "Assignment or Plan Participation Code", b::Values("A", "B", "C")),
31
- b::Element(e::Required, "Benefits Assignment Certification Indicator", b::Values("N", "W", "Y")),
32
- b::Element(e::Required, "Release of Information Code", b::Values("I", "Y")),
33
- b::Element(e::NotUsed, "Patient Signature Source Code"),
34
- b::Element(e::NotUsed, "RELATED CAUSES INFORMATION"),
35
- b::Element(e::NotUsed, "Special Program Code"),
36
- b::Element(e::NotUsed, "Yes/No Condition or Response Code"),
37
- b::Element(e::NotUsed, "Level of Service Code"),
38
- b::Element(e::NotUsed, "Yes/No Condition or Response Code"),
39
- b::Element(e::NotUsed, "Provider Agreement Code"),
40
- b::Element(e::NotUsed, "Claim Status Code"),
41
- b::Element(e::NotUsed, "Yes/No Condition or Response Code"),
42
- b::Element(e::NotUsed, "Claim Submission Reason Code"),
29
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code"),
30
+ b::Element(e::Required, "Assignment or Plan Participation Code", b::Values("A", "B", "C")),
31
+ b::Element(e::Required, "Benefits Assignment Certification Indicator", b::Values("N", "W", "Y")),
32
+ b::Element(e::Required, "Release of Information Code", b::Values("I", "Y")),
33
+ b::Element(e::NotUsed, "Patient Signature Source Code"),
34
+ b::Element(e::NotUsed, "RELATED CAUSES INFORMATION"),
35
+ b::Element(e::NotUsed, "Special Program Code"),
36
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code"),
37
+ b::Element(e::NotUsed, "Level of Service Code"),
38
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code"),
39
+ b::Element(e::NotUsed, "Provider Agreement Code"),
40
+ b::Element(e::NotUsed, "Claim Status Code"),
41
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code"),
42
+ b::Element(e::NotUsed, "Claim Submission Reason Code"),
43
43
  b::Element(e::Situational, "Delay Reason Code", b::Values("1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "15"))),
44
44
  b::Segment(1350, s::DTP, "Discharge Hour",
45
45
  r::Situational, d::RepeatCount.bounded(1),
46
- b::Element(e::Required, "Date Time Qualifier", b::Values("096")),
47
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("TM")),
48
- b::Element(e::Required, "Discharge Time")),
46
+ b::Element(e::Required, "Date Time Qualifier", b::Values("096")),
47
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("TM")),
48
+ b::Element(e::Required, "Discharge Time")),
49
49
  b::Segment(1350, s::DTP, "Statement Dates",
50
50
  r::Required, d::RepeatCount.bounded(1),
51
- b::Element(e::Required, "Date Time Qualifier", b::Values("434")),
52
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
53
- b::Element(e::Required, "Statement From and To Date")),
51
+ b::Element(e::Required, "Date Time Qualifier", b::Values("434")),
52
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
53
+ b::Element(e::Required, "Statement From and To Date")),
54
54
  b::Segment(1350, s::DTP, "Admission Date/Hour",
55
55
  r::Situational, d::RepeatCount.bounded(1),
56
- b::Element(e::Required, "Date Time Qualifier", b::Values("435")),
57
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8", "DT")),
58
- b::Element(e::Required, "Admission Date and Hour")),
56
+ b::Element(e::Required, "Date Time Qualifier", b::Values("435")),
57
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8", "DT")),
58
+ b::Element(e::Required, "Admission Date and Hour")),
59
59
  b::Segment(1350, s::DTP, "Date - Repricer Received Date",
60
60
  r::Situational, d::RepeatCount.bounded(1),
61
- b::Element(e::Required, "Date Time Qualifier", b::Values("050")),
62
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
63
- b::Element(e::Required, "Repricer Received Date")),
61
+ b::Element(e::Required, "Date Time Qualifier", b::Values("050")),
62
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
63
+ b::Element(e::Required, "Repricer Received Date")),
64
64
  b::Segment(1400, s::CL1, "Institutional Claim Code",
65
65
  r::Required, d::RepeatCount.bounded(1),
66
66
  b::Element(e::Situational, "Admission Type Code"),
67
67
  b::Element(e::Situational, "Admission Source Code"),
68
- b::Element(e::Required, "Patient Status Code"),
69
- b::Element(e::NotUsed, "Nursing Home Residential Status Code")),
68
+ b::Element(e::Required, "Patient Status Code"),
69
+ b::Element(e::NotUsed, "Nursing Home Residential Status Code")),
70
70
  b::Segment(1550, s::PWK, "Claim Supplemental Information",
71
71
  r::Situational, d::RepeatCount.bounded(10),
72
- b::Element(e::Required, "Report Type Code", b::Values("03", "04", "05", "06", "07", "08", "09", "10", "11", "13", "15", "21", "A3", "A4", "AM", "AS", "B2", "B3", "B4", "BR", "BS", "BT", "CB", "CK", "CT", "D2", "DA", "DB", "DG", "DJ", "DS", "EB", "HC", "HR", "I5", "IR", "LA", "M1", "MT", "NN", "OB", "OC", "OD", "OE", "OX", "OZ", "P4", "P5", "PE", "PN", "PO", "PQ", "PY", "PZ", "RB", "RR", "RT", "RX", "SG", "V5", "XP")),
73
- b::Element(e::Required, "Attachment Transmission Code", b::Values("AA", "BM", "EL", "EM", "FT", "FX")),
74
- b::Element(e::NotUsed, "Report Copies Needed"),
75
- b::Element(e::NotUsed, "Entity Identifier Code"),
72
+ b::Element(e::Required, "Report Type Code", b::Values("03", "04", "05", "06", "07", "08", "09", "10", "11", "13", "15", "21", "A3", "A4", "AM", "AS", "B2", "B3", "B4", "BR", "BS", "BT", "CB", "CK", "CT", "D2", "DA", "DB", "DG", "DJ", "DS", "EB", "HC", "HR", "I5", "IR", "LA", "M1", "MT", "NN", "OB", "OC", "OD", "OE", "OX", "OZ", "P4", "P5", "PE", "PN", "PO", "PQ", "PY", "PZ", "RB", "RR", "RT", "RX", "SG", "V5", "XP")),
73
+ b::Element(e::Required, "Attachment Transmission Code", b::Values("AA", "BM", "EL", "EM", "FT", "FX")),
74
+ b::Element(e::NotUsed, "Report Copies Needed"),
75
+ b::Element(e::NotUsed, "Entity Identifier Code"),
76
76
  b::Element(e::Situational, "Identification Code Qualifier", b::Values("AC")),
77
77
  b::Element(e::Situational, "Attachment Control Number", b::MaxLength(50)),
78
- b::Element(e::NotUsed, "Description"),
79
- b::Element(e::NotUsed, "ACTIONS INDICATED"),
80
- b::Element(e::NotUsed, "Request Category Code")),
78
+ b::Element(e::NotUsed, "Description"),
79
+ b::Element(e::NotUsed, "ACTIONS INDICATED"),
80
+ b::Element(e::NotUsed, "Request Category Code")),
81
81
  b::Segment(1600, s::CN1, "Contract Information",
82
82
  r::Situational, d::RepeatCount.bounded(1),
83
- b::Element(e::Required, "Contract Type Code", b::Values("01", "02", "03", "04", "05", "06", "09")),
83
+ b::Element(e::Required, "Contract Type Code", b::Values("01", "02", "03", "04", "05", "06", "09")),
84
84
  b::Element(e::Situational, "Contract Amount"),
85
85
  b::Element(e::Situational, "Contract Percentage"),
86
86
  b::Element(e::Situational, "Contract Code"),
@@ -88,63 +88,63 @@ module Stupidedi
88
88
  b::Element(e::Situational, "Contract Version Identifier")),
89
89
  b::Segment(1750, s::AMT, "Patient Estimated Amount Due",
90
90
  r::Situational, d::RepeatCount.bounded(1),
91
- b::Element(e::Required, "Amount Qualifier Code", b::Values("F3")),
92
- b::Element(e::Required, "Patient Responsibility Amount"),
93
- b::Element(e::NotUsed, "Credit/Debit Flag Code")),
91
+ b::Element(e::Required, "Amount Qualifier Code", b::Values("F3")),
92
+ b::Element(e::Required, "Patient Responsibility Amount"),
93
+ b::Element(e::NotUsed, "Credit/Debit Flag Code")),
94
94
  b::Segment(1800, s::REF, "Service Authorization Exception Code",
95
95
  r::Situational, d::RepeatCount.bounded(1),
96
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("4N")),
97
- b::Element(e::Required, "Service Authorization Exception Code", b::Values("1", "2", "3", "4", "5", "6", "7")),
98
- b::Element(e::NotUsed, "Description"),
99
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
96
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("4N")),
97
+ b::Element(e::Required, "Service Authorization Exception Code", b::Values("1", "2", "3", "4", "5", "6", "7")),
98
+ b::Element(e::NotUsed, "Description"),
99
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
100
100
  b::Segment(1800, s::REF, "Referral Number",
101
101
  r::Situational, d::RepeatCount.bounded(1),
102
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("9F")),
103
- b::Element(e::Required, "Referral Number"),
104
- b::Element(e::NotUsed, "Description"),
105
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
102
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("9F")),
103
+ b::Element(e::Required, "Referral Number"),
104
+ b::Element(e::NotUsed, "Description"),
105
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
106
106
  b::Segment(1800, s::REF, "Prior Authorization",
107
107
  r::Situational, d::RepeatCount.bounded(1),
108
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("G1")),
109
- b::Element(e::Required, "Prior Authorization Number"),
110
- b::Element(e::NotUsed, "Description"),
111
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
108
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("G1")),
109
+ b::Element(e::Required, "Prior Authorization Number"),
110
+ b::Element(e::NotUsed, "Description"),
111
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
112
112
  b::Segment(1800, s::REF, "Payer Claim Control Number",
113
113
  r::Situational, d::RepeatCount.bounded(1),
114
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("F8")),
115
- b::Element(e::Required, "Payer Claim Control Number"),
116
- b::Element(e::NotUsed, "Description"),
117
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
114
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("F8")),
115
+ b::Element(e::Required, "Payer Claim Control Number"),
116
+ b::Element(e::NotUsed, "Description"),
117
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
118
118
  b::Segment(1800, s::REF, "Repriced Claim Number",
119
119
  r::Situational, d::RepeatCount.bounded(1),
120
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("9A")),
121
- b::Element(e::Required, "Repriced Claim Reference Number"),
122
- b::Element(e::NotUsed, "Description"),
123
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
120
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("9A")),
121
+ b::Element(e::Required, "Repriced Claim Reference Number"),
122
+ b::Element(e::NotUsed, "Description"),
123
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
124
124
  b::Segment(1800, s::REF, "Adjusted Repriced Claim Number",
125
125
  r::Situational, d::RepeatCount.bounded(1),
126
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("9C")),
127
- b::Element(e::Required, "Adjusted Repriced Claim Reference Number"),
128
- b::Element(e::NotUsed, "Description"),
129
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
126
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("9C")),
127
+ b::Element(e::Required, "Adjusted Repriced Claim Reference Number"),
128
+ b::Element(e::NotUsed, "Description"),
129
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
130
130
  b::Segment(1800, s::REF, "Investigational Device Exemption Number",
131
131
  r::Situational, d::RepeatCount.bounded(5),
132
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("LX")),
133
- b::Element(e::Required, "Investigational Device Exemption Identifier"),
134
- b::Element(e::NotUsed, "Description"),
135
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
132
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("LX")),
133
+ b::Element(e::Required, "Investigational Device Exemption Identifier"),
134
+ b::Element(e::NotUsed, "Description"),
135
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
136
136
  b::Segment(1800, s::REF, "Claim Identifier for Transmission Intermediaries",
137
137
  r::Situational, d::RepeatCount.bounded(1),
138
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("D9")),
139
- b::Element(e::Required, "Value Added Network Trace Number", b::MaxLength(20)),
140
- b::Element(e::NotUsed, "Description"),
141
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
138
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("D9")),
139
+ b::Element(e::Required, "Value Added Network Trace Number", b::MaxLength(20)),
140
+ b::Element(e::NotUsed, "Description"),
141
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
142
142
  b::Segment(1800, s::REF, "Auto Accident State",
143
143
  r::Situational, d::RepeatCount.bounded(1),
144
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("LU")),
145
- b::Element(e::Required, "Auto Accident State or Province Code"),
146
- b::Element(e::NotUsed, "Description"),
147
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
144
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("LU")),
145
+ b::Element(e::Required, "Auto Accident State or Province Code"),
146
+ b::Element(e::NotUsed, "Description"),
147
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER")),
148
148
  b::Segment(1800, s::REF, "Medical Record Number",
149
149
  r::Situational, d::RepeatCount.bounded(1),
150
150
  b::Element(e::Required, "Reference Identification Qualifier", b::Values("EA")),
@@ -192,27 +192,869 @@ module Stupidedi
192
192
  b::Element(e::Required, "Principal Diagnosis Code"),
193
193
  b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
194
194
  b::Element(e::NotUsed, "Date Time Period"),
195
- b::Element(e::NotUsed, "Monetary Amount"),
195
+ b::Element(e::NotUsed, "Monetary Amount"),
196
+ b::Element(e::NotUsed, "Quantity"),
197
+ b::Element(e::NotUsed, "Version Identifier"),
198
+ b::Element(e::NotUsed, "Industry Code"),
199
+ b::Element(e::Situational, "Yes/No Condition or Response Code", b::Values("N", "U", "W", "Y"))),
200
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
201
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
202
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
203
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
204
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
205
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
206
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
207
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
208
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
209
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
210
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION")),
211
+ b::Segment(2310, s::HI, "Admitting Diagnosis",
212
+ r::Situational, d::RepeatCount.bounded(1),
213
+ b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
214
+ b::Element(e::Required, "Code List Qualifier", b::Values("ABJ", "BJ")),
215
+ b::Element(e::Required, "Admitting Diagnosis Code"),
216
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
217
+ b::Element(e::NotUsed, "Date Time Period"),
218
+ b::Element(e::NotUsed, "Monetary Amount"),
219
+ b::Element(e::NotUsed, "Quantity"),
220
+ b::Element(e::NotUsed, "Version Identifier"),
221
+ b::Element(e::NotUsed, "Industry Code"),
222
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
223
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
224
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
225
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
226
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
227
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
228
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
229
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
230
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
231
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
232
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
233
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION")),
234
+ b::Segment(2310, s::HI, "Patient's Reason For Visit",
235
+ r::Situational, d::RepeatCount.bounded(1),
236
+ b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
237
+ b::Element(e::Required, "Code List Qualifier", b::Values("APR", "PR")),
238
+ b::Element(e::Required, "Patient Reason For Visit"),
239
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
240
+ b::Element(e::NotUsed, "Date Time Period"),
241
+ b::Element(e::NotUsed, "Monetary Amount"),
242
+ b::Element(e::NotUsed, "Quantity"),
243
+ b::Element(e::NotUsed, "Version Identifier"),
244
+ b::Element(e::NotUsed, "Industry Code"),
245
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
246
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
247
+ b::Element(e::Required, "Code List Qualifier", b::Values("APR", "PR")),
248
+ b::Element(e::Required, "Patient Reason For Visit"),
249
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
250
+ b::Element(e::NotUsed, "Date Time Period"),
251
+ b::Element(e::NotUsed, "Monetary Amount"),
252
+ b::Element(e::NotUsed, "Quantity"),
253
+ b::Element(e::NotUsed, "Version Identifier"),
254
+ b::Element(e::NotUsed, "Industry Code"),
255
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
256
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
257
+ b::Element(e::Required, "Code List Qualifier", b::Values("APR", "PR")),
258
+ b::Element(e::Required, "Patient Reason For Visit"),
259
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
260
+ b::Element(e::NotUsed, "Date Time Period"),
261
+ b::Element(e::NotUsed, "Monetary Amount"),
262
+ b::Element(e::NotUsed, "Quantity"),
263
+ b::Element(e::NotUsed, "Version Identifier"),
264
+ b::Element(e::NotUsed, "Industry Code"),
265
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
266
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
267
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
268
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
269
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
270
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
271
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
272
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
273
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
274
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION")),
275
+ b::Segment(2310, s::HI, "External Cause of Injury",
276
+ r::Situational, d::RepeatCount.bounded(1),
277
+ b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
278
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
279
+ b::Element(e::Required, "External Cause of Injury Code"),
280
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
281
+ b::Element(e::NotUsed, "Date Time Period"),
282
+ b::Element(e::NotUsed, "Monetary Amount"),
283
+ b::Element(e::NotUsed, "Quantity"),
284
+ b::Element(e::NotUsed, "Version Identifier"),
285
+ b::Element(e::NotUsed, "Industry Code"),
286
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
287
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
288
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
289
+ b::Element(e::Required, "External Cause of Injury Code"),
290
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
291
+ b::Element(e::NotUsed, "Date Time Period"),
292
+ b::Element(e::NotUsed, "Monetary Amount"),
293
+ b::Element(e::NotUsed, "Quantity"),
294
+ b::Element(e::NotUsed, "Version Identifier"),
295
+ b::Element(e::NotUsed, "Industry Code"),
296
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
297
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
298
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
299
+ b::Element(e::Required, "External Cause of Injury Code"),
300
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
301
+ b::Element(e::NotUsed, "Date Time Period"),
302
+ b::Element(e::NotUsed, "Monetary Amount"),
303
+ b::Element(e::NotUsed, "Quantity"),
304
+ b::Element(e::NotUsed, "Version Identifier"),
305
+ b::Element(e::NotUsed, "Industry Code"),
306
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
307
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
308
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
309
+ b::Element(e::Required, "External Cause of Injury Code"),
310
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
311
+ b::Element(e::NotUsed, "Date Time Period"),
312
+ b::Element(e::NotUsed, "Monetary Amount"),
313
+ b::Element(e::NotUsed, "Quantity"),
314
+ b::Element(e::NotUsed, "Version Identifier"),
315
+ b::Element(e::NotUsed, "Industry Code"),
316
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
317
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
318
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
319
+ b::Element(e::Required, "External Cause of Injury Code"),
320
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
321
+ b::Element(e::NotUsed, "Date Time Period"),
322
+ b::Element(e::NotUsed, "Monetary Amount"),
323
+ b::Element(e::NotUsed, "Quantity"),
324
+ b::Element(e::NotUsed, "Version Identifier"),
325
+ b::Element(e::NotUsed, "Industry Code"),
326
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
327
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
328
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
329
+ b::Element(e::Required, "External Cause of Injury Code"),
330
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
331
+ b::Element(e::NotUsed, "Date Time Period"),
332
+ b::Element(e::NotUsed, "Monetary Amount"),
333
+ b::Element(e::NotUsed, "Quantity"),
334
+ b::Element(e::NotUsed, "Version Identifier"),
335
+ b::Element(e::NotUsed, "Industry Code"),
336
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
337
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
338
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
339
+ b::Element(e::Required, "External Cause of Injury Code"),
340
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
341
+ b::Element(e::NotUsed, "Date Time Period"),
342
+ b::Element(e::NotUsed, "Monetary Amount"),
343
+ b::Element(e::NotUsed, "Quantity"),
344
+ b::Element(e::NotUsed, "Version Identifier"),
345
+ b::Element(e::NotUsed, "Industry Code"),
346
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
347
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
348
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
349
+ b::Element(e::Required, "External Cause of Injury Code"),
350
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
351
+ b::Element(e::NotUsed, "Date Time Period"),
352
+ b::Element(e::NotUsed, "Monetary Amount"),
353
+ b::Element(e::NotUsed, "Quantity"),
354
+ b::Element(e::NotUsed, "Version Identifier"),
355
+ b::Element(e::NotUsed, "Industry Code"),
356
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
357
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
358
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
359
+ b::Element(e::Required, "External Cause of Injury Code"),
360
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
361
+ b::Element(e::NotUsed, "Date Time Period"),
362
+ b::Element(e::NotUsed, "Monetary Amount"),
363
+ b::Element(e::NotUsed, "Quantity"),
364
+ b::Element(e::NotUsed, "Version Identifier"),
365
+ b::Element(e::NotUsed, "Industry Code"),
366
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
367
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
368
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
369
+ b::Element(e::Required, "External Cause of Injury Code"),
370
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
371
+ b::Element(e::NotUsed, "Date Time Period"),
372
+ b::Element(e::NotUsed, "Monetary Amount"),
373
+ b::Element(e::NotUsed, "Quantity"),
374
+ b::Element(e::NotUsed, "Version Identifier"),
375
+ b::Element(e::NotUsed, "Industry Code"),
376
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
377
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
378
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
379
+ b::Element(e::Required, "External Cause of Injury Code"),
380
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
381
+ b::Element(e::NotUsed, "Date Time Period"),
382
+ b::Element(e::NotUsed, "Monetary Amount"),
383
+ b::Element(e::NotUsed, "Quantity"),
384
+ b::Element(e::NotUsed, "Version Identifier"),
385
+ b::Element(e::NotUsed, "Industry Code"),
386
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
387
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
388
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
389
+ b::Element(e::Required, "External Cause of Injury Code"),
390
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
391
+ b::Element(e::NotUsed, "Date Time Period"),
392
+ b::Element(e::NotUsed, "Monetary Amount"),
393
+ b::Element(e::NotUsed, "Quantity"),
394
+ b::Element(e::NotUsed, "Version Identifier"),
395
+ b::Element(e::NotUsed, "Industry Code"),
396
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y")))),
397
+ b::Segment(2310, s::HI, "Diagnosis Related Group (DRG) Information",
398
+ r::Situational, d::RepeatCount.bounded(1),
399
+ b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
400
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("DR")),
401
+ b::Element(e::Required, "Diagnosis Related Group (DRG) Code"),
402
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
403
+ b::Element(e::NotUsed, "Date Time Period"),
404
+ b::Element(e::NotUsed, "Monetary Amount"),
405
+ b::Element(e::NotUsed, "Quantity"),
406
+ b::Element(e::NotUsed, "Version Identifier"),
407
+ b::Element(e::NotUsed, "Industry Code"),
408
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
409
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
410
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
411
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
412
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
413
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
414
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
415
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
416
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
417
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
418
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
419
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION")),
420
+ b::Segment(2310, s::HI, "Other Diagnosis Information",
421
+ r::Situational, d::RepeatCount.bounded(2),
422
+ b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
423
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
424
+ b::Element(e::Required, "Other Diagnosis"),
425
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
426
+ b::Element(e::NotUsed, "Date Time Period"),
427
+ b::Element(e::NotUsed, "Monetary Amount"),
428
+ b::Element(e::NotUsed, "Quantity"),
429
+ b::Element(e::NotUsed, "Version Identifier"),
430
+ b::Element(e::NotUsed, "Industry Code"),
431
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
432
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
433
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
434
+ b::Element(e::Required, "Other Diagnosis"),
435
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
436
+ b::Element(e::NotUsed, "Date Time Period"),
437
+ b::Element(e::NotUsed, "Monetary Amount"),
438
+ b::Element(e::NotUsed, "Quantity"),
439
+ b::Element(e::NotUsed, "Version Identifier"),
440
+ b::Element(e::NotUsed, "Industry Code"),
441
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
442
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
443
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
444
+ b::Element(e::Required, "Other Diagnosis"),
445
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
446
+ b::Element(e::NotUsed, "Date Time Period"),
447
+ b::Element(e::NotUsed, "Monetary Amount"),
448
+ b::Element(e::NotUsed, "Quantity"),
449
+ b::Element(e::NotUsed, "Version Identifier"),
450
+ b::Element(e::NotUsed, "Industry Code"),
451
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
452
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
453
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
454
+ b::Element(e::Required, "Other Diagnosis"),
455
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
456
+ b::Element(e::NotUsed, "Date Time Period"),
457
+ b::Element(e::NotUsed, "Monetary Amount"),
458
+ b::Element(e::NotUsed, "Quantity"),
459
+ b::Element(e::NotUsed, "Version Identifier"),
460
+ b::Element(e::NotUsed, "Industry Code"),
461
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
462
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
463
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
464
+ b::Element(e::Required, "Other Diagnosis"),
465
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
466
+ b::Element(e::NotUsed, "Date Time Period"),
467
+ b::Element(e::NotUsed, "Monetary Amount"),
468
+ b::Element(e::NotUsed, "Quantity"),
469
+ b::Element(e::NotUsed, "Version Identifier"),
470
+ b::Element(e::NotUsed, "Industry Code"),
471
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
472
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
473
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
474
+ b::Element(e::Required, "Other Diagnosis"),
475
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
476
+ b::Element(e::NotUsed, "Date Time Period"),
477
+ b::Element(e::NotUsed, "Monetary Amount"),
478
+ b::Element(e::NotUsed, "Quantity"),
479
+ b::Element(e::NotUsed, "Version Identifier"),
480
+ b::Element(e::NotUsed, "Industry Code"),
481
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
482
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
483
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
484
+ b::Element(e::Required, "Other Diagnosis"),
485
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
486
+ b::Element(e::NotUsed, "Date Time Period"),
487
+ b::Element(e::NotUsed, "Monetary Amount"),
488
+ b::Element(e::NotUsed, "Quantity"),
489
+ b::Element(e::NotUsed, "Version Identifier"),
490
+ b::Element(e::NotUsed, "Industry Code"),
491
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
492
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
493
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
494
+ b::Element(e::Required, "Other Diagnosis"),
495
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
496
+ b::Element(e::NotUsed, "Date Time Period"),
497
+ b::Element(e::NotUsed, "Monetary Amount"),
498
+ b::Element(e::NotUsed, "Quantity"),
499
+ b::Element(e::NotUsed, "Version Identifier"),
500
+ b::Element(e::NotUsed, "Industry Code"),
501
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
502
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
503
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
504
+ b::Element(e::Required, "Other Diagnosis"),
505
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
506
+ b::Element(e::NotUsed, "Date Time Period"),
507
+ b::Element(e::NotUsed, "Monetary Amount"),
508
+ b::Element(e::NotUsed, "Quantity"),
509
+ b::Element(e::NotUsed, "Version Identifier"),
510
+ b::Element(e::NotUsed, "Industry Code"),
511
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
512
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
513
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
514
+ b::Element(e::Required, "Other Diagnosis"),
515
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
516
+ b::Element(e::NotUsed, "Date Time Period"),
517
+ b::Element(e::NotUsed, "Monetary Amount"),
518
+ b::Element(e::NotUsed, "Quantity"),
519
+ b::Element(e::NotUsed, "Version Identifier"),
520
+ b::Element(e::NotUsed, "Industry Code"),
521
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
522
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
523
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
524
+ b::Element(e::Required, "Other Diagnosis"),
525
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
526
+ b::Element(e::NotUsed, "Date Time Period"),
527
+ b::Element(e::NotUsed, "Monetary Amount"),
528
+ b::Element(e::NotUsed, "Quantity"),
529
+ b::Element(e::NotUsed, "Version Identifier"),
530
+ b::Element(e::NotUsed, "Industry Code"),
531
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
532
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
533
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
534
+ b::Element(e::Required, "Other Diagnosis"),
535
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
536
+ b::Element(e::NotUsed, "Date Time Period"),
537
+ b::Element(e::NotUsed, "Monetary Amount"),
538
+ b::Element(e::NotUsed, "Quantity"),
539
+ b::Element(e::NotUsed, "Version Identifier"),
540
+ b::Element(e::NotUsed, "Industry Code"),
541
+ b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y")))),
542
+ b::Segment(2310, s::HI, "Principal Procedure Information",
543
+ r::Situational, d::RepeatCount.bounded(1),
544
+ b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
545
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBR", "BR", "CAH")),
546
+ b::Element(e::Required, "Principal Procedure Code"),
547
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
548
+ b::Element(e::Required, "Principal Procedure Date"),
549
+ b::Element(e::NotUsed, "Monetary Amount"),
550
+ b::Element(e::NotUsed, "Quantity"),
551
+ b::Element(e::NotUsed, "Version Identifier"),
552
+ b::Element(e::NotUsed, "Industry Code"),
553
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
554
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
555
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
556
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
557
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
558
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
559
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
560
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
561
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
562
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
563
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
564
+ b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION")),
565
+ b::Segment(2310, s::HI, "Other Procedure Information",
566
+ r::Situational, d::RepeatCount.bounded(2),
567
+ b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
568
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
569
+ b::Element(e::Required, "Procedure Code"),
570
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
571
+ b::Element(e::Required, "Procedure Date"),
572
+ b::Element(e::NotUsed, "Monetary Amount"),
573
+ b::Element(e::NotUsed, "Quantity"),
574
+ b::Element(e::NotUsed, "Version Identifier"),
575
+ b::Element(e::NotUsed, "Industry Code"),
576
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
577
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
578
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
579
+ b::Element(e::Required, "Procedure Code"),
580
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
581
+ b::Element(e::Required, "Procedure Date"),
582
+ b::Element(e::NotUsed, "Monetary Amount"),
583
+ b::Element(e::NotUsed, "Quantity"),
584
+ b::Element(e::NotUsed, "Version Identifier"),
585
+ b::Element(e::NotUsed, "Industry Code"),
586
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
587
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
588
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
589
+ b::Element(e::Required, "Procedure Code"),
590
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
591
+ b::Element(e::Required, "Procedure Date"),
592
+ b::Element(e::NotUsed, "Monetary Amount"),
593
+ b::Element(e::NotUsed, "Quantity"),
594
+ b::Element(e::NotUsed, "Version Identifier"),
595
+ b::Element(e::NotUsed, "Industry Code"),
596
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
597
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
598
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
599
+ b::Element(e::Required, "Procedure Code"),
600
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
601
+ b::Element(e::Required, "Procedure Date"),
602
+ b::Element(e::NotUsed, "Monetary Amount"),
603
+ b::Element(e::NotUsed, "Quantity"),
604
+ b::Element(e::NotUsed, "Version Identifier"),
605
+ b::Element(e::NotUsed, "Industry Code"),
606
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
607
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
608
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
609
+ b::Element(e::Required, "Procedure Code"),
610
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
611
+ b::Element(e::Required, "Procedure Date"),
612
+ b::Element(e::NotUsed, "Monetary Amount"),
613
+ b::Element(e::NotUsed, "Quantity"),
614
+ b::Element(e::NotUsed, "Version Identifier"),
615
+ b::Element(e::NotUsed, "Industry Code"),
616
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
617
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
618
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
619
+ b::Element(e::Required, "Procedure Code"),
620
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
621
+ b::Element(e::Required, "Procedure Date"),
622
+ b::Element(e::NotUsed, "Monetary Amount"),
623
+ b::Element(e::NotUsed, "Quantity"),
624
+ b::Element(e::NotUsed, "Version Identifier"),
625
+ b::Element(e::NotUsed, "Industry Code"),
626
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
627
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
628
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
629
+ b::Element(e::Required, "Procedure Code"),
630
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
631
+ b::Element(e::Required, "Procedure Date"),
632
+ b::Element(e::NotUsed, "Monetary Amount"),
633
+ b::Element(e::NotUsed, "Quantity"),
634
+ b::Element(e::NotUsed, "Version Identifier"),
635
+ b::Element(e::NotUsed, "Industry Code"),
636
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
637
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
638
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
639
+ b::Element(e::Required, "Procedure Code"),
640
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
641
+ b::Element(e::Required, "Procedure Date"),
642
+ b::Element(e::NotUsed, "Monetary Amount"),
643
+ b::Element(e::NotUsed, "Quantity"),
644
+ b::Element(e::NotUsed, "Version Identifier"),
645
+ b::Element(e::NotUsed, "Industry Code"),
646
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
647
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
648
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
649
+ b::Element(e::Required, "Procedure Code"),
650
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
651
+ b::Element(e::Required, "Procedure Date"),
652
+ b::Element(e::NotUsed, "Monetary Amount"),
653
+ b::Element(e::NotUsed, "Quantity"),
654
+ b::Element(e::NotUsed, "Version Identifier"),
655
+ b::Element(e::NotUsed, "Industry Code"),
656
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
657
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
658
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
659
+ b::Element(e::Required, "Procedure Code"),
660
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
661
+ b::Element(e::Required, "Procedure Date"),
662
+ b::Element(e::NotUsed, "Monetary Amount"),
663
+ b::Element(e::NotUsed, "Quantity"),
664
+ b::Element(e::NotUsed, "Version Identifier"),
665
+ b::Element(e::NotUsed, "Industry Code"),
666
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
667
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
668
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
669
+ b::Element(e::Required, "Procedure Code"),
670
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
671
+ b::Element(e::Required, "Procedure Date"),
672
+ b::Element(e::NotUsed, "Monetary Amount"),
673
+ b::Element(e::NotUsed, "Quantity"),
674
+ b::Element(e::NotUsed, "Version Identifier"),
675
+ b::Element(e::NotUsed, "Industry Code"),
676
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
677
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
678
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
679
+ b::Element(e::Required, "Procedure Code"),
680
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
681
+ b::Element(e::Required, "Procedure Date"),
682
+ b::Element(e::NotUsed, "Monetary Amount"),
683
+ b::Element(e::NotUsed, "Quantity"),
684
+ b::Element(e::NotUsed, "Version Identifier"),
685
+ b::Element(e::NotUsed, "Industry Code"),
686
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
687
+ b::Segment(2310, s::HI, "Occurrence Span Information",
688
+ r::Situational, d::RepeatCount.bounded(2),
689
+ b::Element(e::Required, "HEALTH CLAIM CODE INFORMATION",
690
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
691
+ b::Element(e::Required, "Occurrence Span Code"),
692
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
693
+ b::Element(e::Required, "Occurrence Span Code Date"),
694
+ b::Element(e::NotUsed, "Monetary Amount"),
695
+ b::Element(e::NotUsed, "Quantity"),
696
+ b::Element(e::NotUsed, "Version Identifier"),
697
+ b::Element(e::NotUsed, "Industry Code"),
698
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
699
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
700
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
701
+ b::Element(e::Required, "Occurrence Span Code"),
702
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
703
+ b::Element(e::Required, "Occurrence Span Code Date"),
704
+ b::Element(e::NotUsed, "Monetary Amount"),
705
+ b::Element(e::NotUsed, "Quantity"),
706
+ b::Element(e::NotUsed, "Version Identifier"),
707
+ b::Element(e::NotUsed, "Industry Code"),
708
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
709
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
710
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
711
+ b::Element(e::Required, "Occurrence Span Code"),
712
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
713
+ b::Element(e::Required, "Occurrence Span Code Date"),
714
+ b::Element(e::NotUsed, "Monetary Amount"),
715
+ b::Element(e::NotUsed, "Quantity"),
716
+ b::Element(e::NotUsed, "Version Identifier"),
717
+ b::Element(e::NotUsed, "Industry Code"),
718
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
719
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
720
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
721
+ b::Element(e::Required, "Occurrence Span Code"),
722
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
723
+ b::Element(e::Required, "Occurrence Span Code Date"),
724
+ b::Element(e::NotUsed, "Monetary Amount"),
725
+ b::Element(e::NotUsed, "Quantity"),
726
+ b::Element(e::NotUsed, "Version Identifier"),
727
+ b::Element(e::NotUsed, "Industry Code"),
728
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
729
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
730
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
731
+ b::Element(e::Required, "Occurrence Span Code"),
732
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
733
+ b::Element(e::Required, "Occurrence Span Code Date"),
734
+ b::Element(e::NotUsed, "Monetary Amount"),
735
+ b::Element(e::NotUsed, "Quantity"),
736
+ b::Element(e::NotUsed, "Version Identifier"),
737
+ b::Element(e::NotUsed, "Industry Code"),
738
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
739
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
740
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
741
+ b::Element(e::Required, "Occurrence Span Code"),
742
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
743
+ b::Element(e::Required, "Occurrence Span Code Date"),
744
+ b::Element(e::NotUsed, "Monetary Amount"),
745
+ b::Element(e::NotUsed, "Quantity"),
746
+ b::Element(e::NotUsed, "Version Identifier"),
747
+ b::Element(e::NotUsed, "Industry Code"),
748
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
749
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
750
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
751
+ b::Element(e::Required, "Occurrence Span Code"),
752
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
753
+ b::Element(e::Required, "Occurrence Span Code Date"),
754
+ b::Element(e::NotUsed, "Monetary Amount"),
755
+ b::Element(e::NotUsed, "Quantity"),
756
+ b::Element(e::NotUsed, "Version Identifier"),
757
+ b::Element(e::NotUsed, "Industry Code"),
758
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
759
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
760
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
761
+ b::Element(e::Required, "Occurrence Span Code"),
762
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
763
+ b::Element(e::Required, "Occurrence Span Code Date"),
764
+ b::Element(e::NotUsed, "Monetary Amount"),
765
+ b::Element(e::NotUsed, "Quantity"),
766
+ b::Element(e::NotUsed, "Version Identifier"),
767
+ b::Element(e::NotUsed, "Industry Code"),
768
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
769
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
770
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
771
+ b::Element(e::Required, "Occurrence Span Code"),
772
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
773
+ b::Element(e::Required, "Occurrence Span Code Date"),
774
+ b::Element(e::NotUsed, "Monetary Amount"),
775
+ b::Element(e::NotUsed, "Quantity"),
776
+ b::Element(e::NotUsed, "Version Identifier"),
777
+ b::Element(e::NotUsed, "Industry Code"),
778
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
779
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
780
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
781
+ b::Element(e::Required, "Occurrence Span Code"),
782
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
783
+ b::Element(e::Required, "Occurrence Span Code Date"),
784
+ b::Element(e::NotUsed, "Monetary Amount"),
785
+ b::Element(e::NotUsed, "Quantity"),
786
+ b::Element(e::NotUsed, "Version Identifier"),
787
+ b::Element(e::NotUsed, "Industry Code"),
788
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
789
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
790
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
791
+ b::Element(e::Required, "Occurrence Span Code"),
792
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
793
+ b::Element(e::Required, "Occurrence Span Code Date"),
794
+ b::Element(e::NotUsed, "Monetary Amount"),
795
+ b::Element(e::NotUsed, "Quantity"),
796
+ b::Element(e::NotUsed, "Version Identifier"),
797
+ b::Element(e::NotUsed, "Industry Code"),
798
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
799
+ b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
800
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
801
+ b::Element(e::Required, "Occurrence Span Code"),
802
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
803
+ b::Element(e::Required, "Occurrence Span Code Date"),
804
+ b::Element(e::NotUsed, "Monetary Amount"),
805
+ b::Element(e::NotUsed, "Quantity"),
806
+ b::Element(e::NotUsed, "Version Identifier"),
807
+ b::Element(e::NotUsed, "Industry Code"),
808
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
809
+ b::Segment(2310, s::HI, "Occurrence Information",
810
+ r::Situational, d::RepeatCount.bounded(2),
811
+ b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
812
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
813
+ b::Element(e::Required, "Occurrence Code"),
814
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
815
+ b::Element(e::Required, "Occurrence Code Date"),
816
+ b::Element(e::NotUsed, "Monetary Amount"),
817
+ b::Element(e::NotUsed, "Quantity"),
818
+ b::Element(e::NotUsed, "Version Identifier"),
819
+ b::Element(e::NotUsed, "Industy Code"),
820
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
821
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
822
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
823
+ b::Element(e::Required, "Occurrence Code"),
824
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
825
+ b::Element(e::Required, "Occurrence Code Date"),
826
+ b::Element(e::NotUsed, "Monetary Amount"),
827
+ b::Element(e::NotUsed, "Quantity"),
828
+ b::Element(e::NotUsed, "Version Identifier"),
829
+ b::Element(e::NotUsed, "Industy Code"),
830
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
831
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
832
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
833
+ b::Element(e::Required, "Occurrence Code"),
834
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
835
+ b::Element(e::Required, "Occurrence Code Date"),
836
+ b::Element(e::NotUsed, "Monetary Amount"),
837
+ b::Element(e::NotUsed, "Quantity"),
838
+ b::Element(e::NotUsed, "Version Identifier"),
839
+ b::Element(e::NotUsed, "Industy Code"),
840
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
841
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
842
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
843
+ b::Element(e::Required, "Occurrence Code"),
844
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
845
+ b::Element(e::Required, "Occurrence Code Date"),
846
+ b::Element(e::NotUsed, "Monetary Amount"),
847
+ b::Element(e::NotUsed, "Quantity"),
848
+ b::Element(e::NotUsed, "Version Identifier"),
849
+ b::Element(e::NotUsed, "Industy Code"),
850
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
851
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
852
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
853
+ b::Element(e::Required, "Occurrence Code"),
854
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
855
+ b::Element(e::Required, "Occurrence Code Date"),
856
+ b::Element(e::NotUsed, "Monetary Amount"),
857
+ b::Element(e::NotUsed, "Quantity"),
858
+ b::Element(e::NotUsed, "Version Identifier"),
859
+ b::Element(e::NotUsed, "Industy Code"),
860
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
861
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
862
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
863
+ b::Element(e::Required, "Occurrence Code"),
864
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
865
+ b::Element(e::Required, "Occurrence Code Date"),
866
+ b::Element(e::NotUsed, "Monetary Amount"),
867
+ b::Element(e::NotUsed, "Quantity"),
868
+ b::Element(e::NotUsed, "Version Identifier"),
869
+ b::Element(e::NotUsed, "Industy Code"),
870
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
871
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
872
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
873
+ b::Element(e::Required, "Occurrence Code"),
874
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
875
+ b::Element(e::Required, "Occurrence Code Date"),
876
+ b::Element(e::NotUsed, "Monetary Amount"),
877
+ b::Element(e::NotUsed, "Quantity"),
878
+ b::Element(e::NotUsed, "Version Identifier"),
879
+ b::Element(e::NotUsed, "Industy Code"),
880
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
881
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
882
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
883
+ b::Element(e::Required, "Occurrence Code"),
884
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
885
+ b::Element(e::Required, "Occurrence Code Date"),
886
+ b::Element(e::NotUsed, "Monetary Amount"),
887
+ b::Element(e::NotUsed, "Quantity"),
888
+ b::Element(e::NotUsed, "Version Identifier"),
889
+ b::Element(e::NotUsed, "Industy Code"),
890
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
891
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
892
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
893
+ b::Element(e::Required, "Occurrence Code"),
894
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
895
+ b::Element(e::Required, "Occurrence Code Date"),
896
+ b::Element(e::NotUsed, "Monetary Amount"),
897
+ b::Element(e::NotUsed, "Quantity"),
898
+ b::Element(e::NotUsed, "Version Identifier"),
899
+ b::Element(e::NotUsed, "Industy Code"),
900
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
901
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
902
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
903
+ b::Element(e::Required, "Occurrence Code"),
904
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
905
+ b::Element(e::Required, "Occurrence Code Date"),
906
+ b::Element(e::NotUsed, "Monetary Amount"),
907
+ b::Element(e::NotUsed, "Quantity"),
908
+ b::Element(e::NotUsed, "Version Identifier"),
909
+ b::Element(e::NotUsed, "Industy Code"),
910
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
911
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
912
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
913
+ b::Element(e::Required, "Occurrence Code"),
914
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
915
+ b::Element(e::Required, "Occurrence Code Date"),
916
+ b::Element(e::NotUsed, "Monetary Amount"),
917
+ b::Element(e::NotUsed, "Quantity"),
918
+ b::Element(e::NotUsed, "Version Identifier"),
919
+ b::Element(e::NotUsed, "Industy Code"),
920
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
921
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
922
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
923
+ b::Element(e::Required, "Occurrence Code"),
924
+ b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
925
+ b::Element(e::Required, "Occurrence Code Date"),
926
+ b::Element(e::NotUsed, "Monetary Amount"),
927
+ b::Element(e::NotUsed, "Quantity"),
928
+ b::Element(e::NotUsed, "Version Identifier"),
929
+ b::Element(e::NotUsed, "Industy Code"),
930
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
931
+ b::Segment(2310, s::HI, "Value Information",
932
+ r::Situational, d::RepeatCount.bounded(2),
933
+ b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
934
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
935
+ b::Element(e::Required, "Value Code"),
936
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
937
+ b::Element(e::NotUsed, "Date Time Period"),
938
+ b::Element(e::Required, "Value Code Amount"),
939
+ b::Element(e::NotUsed, "Quantity"),
940
+ b::Element(e::NotUsed, "Version Identifier"),
941
+ b::Element(e::NotUsed, "Industry Code"),
942
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
943
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
944
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
945
+ b::Element(e::Required, "Value Code"),
946
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
947
+ b::Element(e::NotUsed, "Date Time Period"),
948
+ b::Element(e::Required, "Value Code Amount"),
949
+ b::Element(e::NotUsed, "Quantity"),
950
+ b::Element(e::NotUsed, "Version Identifier"),
951
+ b::Element(e::NotUsed, "Industry Code"),
952
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
953
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
954
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
955
+ b::Element(e::Required, "Value Code"),
956
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
957
+ b::Element(e::NotUsed, "Date Time Period"),
958
+ b::Element(e::Required, "Value Code Amount"),
959
+ b::Element(e::NotUsed, "Quantity"),
960
+ b::Element(e::NotUsed, "Version Identifier"),
961
+ b::Element(e::NotUsed, "Industry Code"),
962
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
963
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
964
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
965
+ b::Element(e::Required, "Value Code"),
966
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
967
+ b::Element(e::NotUsed, "Date Time Period"),
968
+ b::Element(e::Required, "Value Code Amount"),
969
+ b::Element(e::NotUsed, "Quantity"),
970
+ b::Element(e::NotUsed, "Version Identifier"),
971
+ b::Element(e::NotUsed, "Industry Code"),
972
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
973
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
974
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
975
+ b::Element(e::Required, "Value Code"),
976
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
977
+ b::Element(e::NotUsed, "Date Time Period"),
978
+ b::Element(e::Required, "Value Code Amount"),
979
+ b::Element(e::NotUsed, "Quantity"),
980
+ b::Element(e::NotUsed, "Version Identifier"),
981
+ b::Element(e::NotUsed, "Industry Code"),
982
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
983
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
984
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
985
+ b::Element(e::Required, "Value Code"),
986
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
987
+ b::Element(e::NotUsed, "Date Time Period"),
988
+ b::Element(e::Required, "Value Code Amount"),
989
+ b::Element(e::NotUsed, "Quantity"),
990
+ b::Element(e::NotUsed, "Version Identifier"),
991
+ b::Element(e::NotUsed, "Industry Code"),
992
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
993
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
994
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
995
+ b::Element(e::Required, "Value Code"),
996
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
997
+ b::Element(e::NotUsed, "Date Time Period"),
998
+ b::Element(e::Required, "Value Code Amount"),
999
+ b::Element(e::NotUsed, "Quantity"),
1000
+ b::Element(e::NotUsed, "Version Identifier"),
1001
+ b::Element(e::NotUsed, "Industry Code"),
1002
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1003
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1004
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
1005
+ b::Element(e::Required, "Value Code"),
1006
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1007
+ b::Element(e::NotUsed, "Date Time Period"),
1008
+ b::Element(e::Required, "Value Code Amount"),
1009
+ b::Element(e::NotUsed, "Quantity"),
1010
+ b::Element(e::NotUsed, "Version Identifier"),
1011
+ b::Element(e::NotUsed, "Industry Code"),
1012
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1013
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1014
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
1015
+ b::Element(e::Required, "Value Code"),
1016
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1017
+ b::Element(e::NotUsed, "Date Time Period"),
1018
+ b::Element(e::Required, "Value Code Amount"),
1019
+ b::Element(e::NotUsed, "Quantity"),
1020
+ b::Element(e::NotUsed, "Version Identifier"),
1021
+ b::Element(e::NotUsed, "Industry Code"),
1022
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1023
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1024
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
1025
+ b::Element(e::Required, "Value Code"),
1026
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1027
+ b::Element(e::NotUsed, "Date Time Period"),
1028
+ b::Element(e::Required, "Value Code Amount"),
1029
+ b::Element(e::NotUsed, "Quantity"),
1030
+ b::Element(e::NotUsed, "Version Identifier"),
1031
+ b::Element(e::NotUsed, "Industry Code"),
1032
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1033
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1034
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
1035
+ b::Element(e::Required, "Value Code"),
1036
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1037
+ b::Element(e::NotUsed, "Date Time Period"),
1038
+ b::Element(e::Required, "Value Code Amount"),
1039
+ b::Element(e::NotUsed, "Quantity"),
1040
+ b::Element(e::NotUsed, "Version Identifier"),
1041
+ b::Element(e::NotUsed, "Industry Code"),
1042
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1043
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1044
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
1045
+ b::Element(e::Required, "Value Code"),
1046
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1047
+ b::Element(e::NotUsed, "Date Time Period"),
1048
+ b::Element(e::Required, "Value Code Amount"),
196
1049
  b::Element(e::NotUsed, "Quantity"),
197
1050
  b::Element(e::NotUsed, "Version Identifier"),
198
1051
  b::Element(e::NotUsed, "Industry Code"),
199
- b::Element(e::Situational, "Yes/No Condition or Response Code", b::Values("N", "U", "W", "Y"))),
200
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
201
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
202
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
203
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
204
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
205
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
206
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
207
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
208
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
209
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
210
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION")),
211
- b::Segment(2310, s::HI, "Admitting Diagnosis",
212
- r::Situational, d::RepeatCount.bounded(1),
1052
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
1053
+ b::Segment(2310, s::HI, "Condition Information",
1054
+ r::Situational, d::RepeatCount.bounded(2),
213
1055
  b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
214
- b::Element(e::Required, "Code List Qualifier", b::Values("ABJ", "BJ")),
215
- b::Element(e::Required, "Admitting Diagnosis Code"),
1056
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1057
+ b::Element(e::Required, "Condition Code"),
216
1058
  b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
217
1059
  b::Element(e::NotUsed, "Date Time Period"),
218
1060
  b::Element(e::NotUsed, "Monetary Amount"),
@@ -220,22 +1062,9 @@ module Stupidedi
220
1062
  b::Element(e::NotUsed, "Version Identifier"),
221
1063
  b::Element(e::NotUsed, "Industry Code"),
222
1064
  b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
223
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
224
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
225
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
226
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
227
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
228
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
229
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
230
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
231
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
232
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
233
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION")),
234
- b::Segment(2310, s::HI, "Patient's Reason For Visit",
235
- r::Situational, d::RepeatCount.bounded(1),
236
- b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
237
- b::Element(e::Required, "Code List Qualifier", b::Values("APR", "PR")),
238
- b::Element(e::Required, "Patient Reason For Visit"),
1065
+ b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1066
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1067
+ b::Element(e::Required, "Condition Code"),
239
1068
  b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
240
1069
  b::Element(e::NotUsed, "Date Time Period"),
241
1070
  b::Element(e::NotUsed, "Monetary Amount"),
@@ -244,8 +1073,8 @@ module Stupidedi
244
1073
  b::Element(e::NotUsed, "Industry Code"),
245
1074
  b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
246
1075
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
247
- b::Element(e::Required, "Code List Qualifier", b::Values("APR", "PR")),
248
- b::Element(e::Required, "Patient Reason For Visit"),
1076
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1077
+ b::Element(e::Required, "Condition Code"),
249
1078
  b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
250
1079
  b::Element(e::NotUsed, "Date Time Period"),
251
1080
  b::Element(e::NotUsed, "Monetary Amount"),
@@ -254,8 +1083,8 @@ module Stupidedi
254
1083
  b::Element(e::NotUsed, "Industry Code"),
255
1084
  b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
256
1085
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
257
- b::Element(e::Required, "Code List Qualifier", b::Values("APR", "PR")),
258
- b::Element(e::Required, "Patient Reason For Visit"),
1086
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1087
+ b::Element(e::Required, "Condition Code"),
259
1088
  b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
260
1089
  b::Element(e::NotUsed, "Date Time Period"),
261
1090
  b::Element(e::NotUsed, "Monetary Amount"),
@@ -263,1040 +1092,208 @@ module Stupidedi
263
1092
  b::Element(e::NotUsed, "Version Identifier"),
264
1093
  b::Element(e::NotUsed, "Industry Code"),
265
1094
  b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
266
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
267
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
268
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
269
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
270
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
271
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
272
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
273
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
274
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION")),
275
- b::Segment(2310, s::HI, "External Cause of Injury",
276
- r::Situational, d::RepeatCount.bounded(1),
277
- b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
278
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
279
- b::Element(e::Required, "External Cause of Injury Code"),
280
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
281
- b::Element(e::NotUsed, "Date Time Period"),
282
- b::Element(e::NotUsed, "Monetary Amount"),
283
- b::Element(e::NotUsed, "Quantity"),
284
- b::Element(e::NotUsed, "Version Identifier"),
285
- b::Element(e::NotUsed, "Industry Code"),
286
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
287
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
288
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
289
- b::Element(e::Required, "External Cause of Injury Code"),
290
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
291
- b::Element(e::NotUsed, "Date Time Period"),
292
- b::Element(e::NotUsed, "Monetary Amount"),
293
- b::Element(e::NotUsed, "Quantity"),
294
- b::Element(e::NotUsed, "Version Identifier"),
295
- b::Element(e::NotUsed, "Industry Code"),
296
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
297
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
298
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
299
- b::Element(e::Required, "External Cause of Injury Code"),
300
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
301
- b::Element(e::NotUsed, "Date Time Period"),
302
- b::Element(e::NotUsed, "Monetary Amount"),
303
- b::Element(e::NotUsed, "Quantity"),
304
- b::Element(e::NotUsed, "Version Identifier"),
305
- b::Element(e::NotUsed, "Industry Code"),
306
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
307
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
308
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
309
- b::Element(e::Required, "External Cause of Injury Code"),
310
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
311
- b::Element(e::NotUsed, "Date Time Period"),
312
- b::Element(e::NotUsed, "Monetary Amount"),
313
- b::Element(e::NotUsed, "Quantity"),
314
- b::Element(e::NotUsed, "Version Identifier"),
315
- b::Element(e::NotUsed, "Industry Code"),
316
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
317
1095
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
318
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
319
- b::Element(e::Required, "External Cause of Injury Code"),
320
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
321
- b::Element(e::NotUsed, "Date Time Period"),
322
- b::Element(e::NotUsed, "Monetary Amount"),
323
- b::Element(e::NotUsed, "Quantity"),
324
- b::Element(e::NotUsed, "Version Identifier"),
325
- b::Element(e::NotUsed, "Industry Code"),
326
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1096
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1097
+ b::Element(e::Required, "Condition Code"),
1098
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1099
+ b::Element(e::NotUsed, "Date Time Period"),
1100
+ b::Element(e::NotUsed, "Monetary Amount"),
1101
+ b::Element(e::NotUsed, "Quantity"),
1102
+ b::Element(e::NotUsed, "Version Identifier"),
1103
+ b::Element(e::NotUsed, "Industry Code"),
1104
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
327
1105
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
328
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
329
- b::Element(e::Required, "External Cause of Injury Code"),
330
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
331
- b::Element(e::NotUsed, "Date Time Period"),
332
- b::Element(e::NotUsed, "Monetary Amount"),
333
- b::Element(e::NotUsed, "Quantity"),
334
- b::Element(e::NotUsed, "Version Identifier"),
335
- b::Element(e::NotUsed, "Industry Code"),
336
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1106
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1107
+ b::Element(e::Required, "Condition Code"),
1108
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1109
+ b::Element(e::NotUsed, "Date Time Period"),
1110
+ b::Element(e::NotUsed, "Monetary Amount"),
1111
+ b::Element(e::NotUsed, "Quantity"),
1112
+ b::Element(e::NotUsed, "Version Identifier"),
1113
+ b::Element(e::NotUsed, "Industry Code"),
1114
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
337
1115
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
338
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
339
- b::Element(e::Required, "External Cause of Injury Code"),
340
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
341
- b::Element(e::NotUsed, "Date Time Period"),
342
- b::Element(e::NotUsed, "Monetary Amount"),
343
- b::Element(e::NotUsed, "Quantity"),
344
- b::Element(e::NotUsed, "Version Identifier"),
345
- b::Element(e::NotUsed, "Industry Code"),
346
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1116
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1117
+ b::Element(e::Required, "Condition Code"),
1118
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1119
+ b::Element(e::NotUsed, "Date Time Period"),
1120
+ b::Element(e::NotUsed, "Monetary Amount"),
1121
+ b::Element(e::NotUsed, "Quantity"),
1122
+ b::Element(e::NotUsed, "Version Identifier"),
1123
+ b::Element(e::NotUsed, "Industry Code"),
1124
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
347
1125
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
348
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
349
- b::Element(e::Required, "External Cause of Injury Code"),
350
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
351
- b::Element(e::NotUsed, "Date Time Period"),
352
- b::Element(e::NotUsed, "Monetary Amount"),
353
- b::Element(e::NotUsed, "Quantity"),
354
- b::Element(e::NotUsed, "Version Identifier"),
355
- b::Element(e::NotUsed, "Industry Code"),
356
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1126
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1127
+ b::Element(e::Required, "Condition Code"),
1128
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1129
+ b::Element(e::NotUsed, "Date Time Period"),
1130
+ b::Element(e::NotUsed, "Monetary Amount"),
1131
+ b::Element(e::NotUsed, "Quantity"),
1132
+ b::Element(e::NotUsed, "Version Identifier"),
1133
+ b::Element(e::NotUsed, "Industry Code"),
1134
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
357
1135
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
358
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
359
- b::Element(e::Required, "External Cause of Injury Code"),
360
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
361
- b::Element(e::NotUsed, "Date Time Period"),
362
- b::Element(e::NotUsed, "Monetary Amount"),
363
- b::Element(e::NotUsed, "Quantity"),
364
- b::Element(e::NotUsed, "Version Identifier"),
365
- b::Element(e::NotUsed, "Industry Code"),
366
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1136
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1137
+ b::Element(e::Required, "Condition Code"),
1138
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1139
+ b::Element(e::NotUsed, "Date Time Period"),
1140
+ b::Element(e::NotUsed, "Monetary Amount"),
1141
+ b::Element(e::NotUsed, "Quantity"),
1142
+ b::Element(e::NotUsed, "Version Identifier"),
1143
+ b::Element(e::NotUsed, "Industry Code"),
1144
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
367
1145
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
368
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
369
- b::Element(e::Required, "External Cause of Injury Code"),
370
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
371
- b::Element(e::NotUsed, "Date Time Period"),
372
- b::Element(e::NotUsed, "Monetary Amount"),
373
- b::Element(e::NotUsed, "Quantity"),
374
- b::Element(e::NotUsed, "Version Identifier"),
375
- b::Element(e::NotUsed, "Industry Code"),
376
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1146
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1147
+ b::Element(e::Required, "Condition Code"),
1148
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1149
+ b::Element(e::NotUsed, "Date Time Period"),
1150
+ b::Element(e::NotUsed, "Monetary Amount"),
1151
+ b::Element(e::NotUsed, "Quantity"),
1152
+ b::Element(e::NotUsed, "Version Identifier"),
1153
+ b::Element(e::NotUsed, "Industry Code"),
1154
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
377
1155
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
378
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
379
- b::Element(e::Required, "External Cause of Injury Code"),
380
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
381
- b::Element(e::NotUsed, "Date Time Period"),
382
- b::Element(e::NotUsed, "Monetary Amount"),
383
- b::Element(e::NotUsed, "Quantity"),
384
- b::Element(e::NotUsed, "Version Identifier"),
385
- b::Element(e::NotUsed, "Industry Code"),
386
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1156
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1157
+ b::Element(e::Required, "Condition Code"),
1158
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1159
+ b::Element(e::NotUsed, "Date Time Period"),
1160
+ b::Element(e::NotUsed, "Monetary Amount"),
1161
+ b::Element(e::NotUsed, "Quantity"),
1162
+ b::Element(e::NotUsed, "Version Identifier"),
1163
+ b::Element(e::NotUsed, "Industry Code"),
1164
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
387
1165
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
388
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABN", "BN")),
389
- b::Element(e::Required, "External Cause of Injury Code"),
390
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
391
- b::Element(e::NotUsed, "Date Time Period"),
392
- b::Element(e::NotUsed, "Monetary Amount"),
393
- b::Element(e::NotUsed, "Quantity"),
394
- b::Element(e::NotUsed, "Version Identifier"),
395
- b::Element(e::NotUsed, "Industry Code"),
396
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y")))),
397
- b::Segment(2310, s::HI, "Diagnosis Related Group (DRG) Information",
398
- r::Situational, d::RepeatCount.bounded(1),
399
- b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
400
- b::Element(e::Required, "Code List Qualifier Code", b::Values("DR")),
401
- b::Element(e::Required, "Diagnosis Related Group (DRG) Code"),
402
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
403
- b::Element(e::NotUsed, "Date Time Period"),
404
- b::Element(e::NotUsed, "Monetary Amount"),
405
- b::Element(e::NotUsed, "Quantity"),
406
- b::Element(e::NotUsed, "Version Identifier"),
407
- b::Element(e::NotUsed, "Industry Code"),
408
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
409
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
410
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
411
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
412
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
413
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
414
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
415
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
416
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
417
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
418
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
419
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION")),
420
- b::Segment(2310, s::HI, "Other Diagnosis Information",
1166
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1167
+ b::Element(e::Required, "Condition Code"),
1168
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1169
+ b::Element(e::NotUsed, "Date Time Period"),
1170
+ b::Element(e::NotUsed, "Monetary Amount"),
1171
+ b::Element(e::NotUsed, "Quantity"),
1172
+ b::Element(e::NotUsed, "Version Identifier"),
1173
+ b::Element(e::NotUsed, "Industry Code"),
1174
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
1175
+ b::Segment(2310, s::HI, "Treatment Code Information",
421
1176
  r::Situational, d::RepeatCount.bounded(2),
422
- b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
423
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
424
- b::Element(e::Required, "Other Diagnosis"),
425
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
426
- b::Element(e::NotUsed, "Date Time Period"),
427
- b::Element(e::NotUsed, "Monetary Amount"),
428
- b::Element(e::NotUsed, "Quantity"),
429
- b::Element(e::NotUsed, "Version Identifier"),
430
- b::Element(e::NotUsed, "Industry Code"),
431
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1177
+ b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
1178
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1179
+ b::Element(e::Required, "Treatment Code"),
1180
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1181
+ b::Element(e::NotUsed, "Date Time Period"),
1182
+ b::Element(e::NotUsed, "Monetary Amount"),
1183
+ b::Element(e::NotUsed, "Quantity"),
1184
+ b::Element(e::NotUsed, "Version Identifier"),
1185
+ b::Element(e::NotUsed, "Industry Code"),
1186
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
432
1187
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
433
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
434
- b::Element(e::Required, "Other Diagnosis"),
435
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
436
- b::Element(e::NotUsed, "Date Time Period"),
437
- b::Element(e::NotUsed, "Monetary Amount"),
438
- b::Element(e::NotUsed, "Quantity"),
439
- b::Element(e::NotUsed, "Version Identifier"),
440
- b::Element(e::NotUsed, "Industry Code"),
441
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1188
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1189
+ b::Element(e::Required, "Treatment Code"),
1190
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1191
+ b::Element(e::NotUsed, "Date Time Period"),
1192
+ b::Element(e::NotUsed, "Monetary Amount"),
1193
+ b::Element(e::NotUsed, "Quantity"),
1194
+ b::Element(e::NotUsed, "Version Identifier"),
1195
+ b::Element(e::NotUsed, "Industry Code"),
1196
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
442
1197
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
443
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
444
- b::Element(e::Required, "Other Diagnosis"),
445
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
446
- b::Element(e::NotUsed, "Date Time Period"),
447
- b::Element(e::NotUsed, "Monetary Amount"),
448
- b::Element(e::NotUsed, "Quantity"),
449
- b::Element(e::NotUsed, "Version Identifier"),
450
- b::Element(e::NotUsed, "Industry Code"),
451
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1198
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1199
+ b::Element(e::Required, "Treatment Code"),
1200
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1201
+ b::Element(e::NotUsed, "Date Time Period"),
1202
+ b::Element(e::NotUsed, "Monetary Amount"),
1203
+ b::Element(e::NotUsed, "Quantity"),
1204
+ b::Element(e::NotUsed, "Version Identifier"),
1205
+ b::Element(e::NotUsed, "Industry Code"),
1206
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
452
1207
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
453
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
454
- b::Element(e::Required, "Other Diagnosis"),
455
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
456
- b::Element(e::NotUsed, "Date Time Period"),
457
- b::Element(e::NotUsed, "Monetary Amount"),
458
- b::Element(e::NotUsed, "Quantity"),
459
- b::Element(e::NotUsed, "Version Identifier"),
460
- b::Element(e::NotUsed, "Industry Code"),
461
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1208
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1209
+ b::Element(e::Required, "Treatment Code"),
1210
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1211
+ b::Element(e::NotUsed, "Date Time Period"),
1212
+ b::Element(e::NotUsed, "Monetary Amount"),
1213
+ b::Element(e::NotUsed, "Quantity"),
1214
+ b::Element(e::NotUsed, "Version Identifier"),
1215
+ b::Element(e::NotUsed, "Industry Code"),
1216
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
462
1217
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
463
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
464
- b::Element(e::Required, "Other Diagnosis"),
465
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
466
- b::Element(e::NotUsed, "Date Time Period"),
467
- b::Element(e::NotUsed, "Monetary Amount"),
468
- b::Element(e::NotUsed, "Quantity"),
469
- b::Element(e::NotUsed, "Version Identifier"),
470
- b::Element(e::NotUsed, "Industry Code"),
471
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1218
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1219
+ b::Element(e::Required, "Treatment Code"),
1220
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1221
+ b::Element(e::NotUsed, "Date Time Period"),
1222
+ b::Element(e::NotUsed, "Monetary Amount"),
1223
+ b::Element(e::NotUsed, "Quantity"),
1224
+ b::Element(e::NotUsed, "Version Identifier"),
1225
+ b::Element(e::NotUsed, "Industry Code"),
1226
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
472
1227
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
473
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
474
- b::Element(e::Required, "Other Diagnosis"),
475
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
476
- b::Element(e::NotUsed, "Date Time Period"),
477
- b::Element(e::NotUsed, "Monetary Amount"),
478
- b::Element(e::NotUsed, "Quantity"),
479
- b::Element(e::NotUsed, "Version Identifier"),
480
- b::Element(e::NotUsed, "Industry Code"),
481
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1228
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1229
+ b::Element(e::Required, "Treatment Code"),
1230
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1231
+ b::Element(e::NotUsed, "Date Time Period"),
1232
+ b::Element(e::NotUsed, "Monetary Amount"),
1233
+ b::Element(e::NotUsed, "Quantity"),
1234
+ b::Element(e::NotUsed, "Version Identifier"),
1235
+ b::Element(e::NotUsed, "Industry Code"),
1236
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
482
1237
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
483
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
484
- b::Element(e::Required, "Other Diagnosis"),
485
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
486
- b::Element(e::NotUsed, "Date Time Period"),
487
- b::Element(e::NotUsed, "Monetary Amount"),
488
- b::Element(e::NotUsed, "Quantity"),
489
- b::Element(e::NotUsed, "Version Identifier"),
490
- b::Element(e::NotUsed, "Industry Code"),
491
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1238
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1239
+ b::Element(e::Required, "Treatment Code"),
1240
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1241
+ b::Element(e::NotUsed, "Date Time Period"),
1242
+ b::Element(e::NotUsed, "Monetary Amount"),
1243
+ b::Element(e::NotUsed, "Quantity"),
1244
+ b::Element(e::NotUsed, "Version Identifier"),
1245
+ b::Element(e::NotUsed, "Industry Code"),
1246
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
492
1247
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
493
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
494
- b::Element(e::Required, "Other Diagnosis"),
495
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
496
- b::Element(e::NotUsed, "Date Time Period"),
497
- b::Element(e::NotUsed, "Monetary Amount"),
498
- b::Element(e::NotUsed, "Quantity"),
499
- b::Element(e::NotUsed, "Version Identifier"),
500
- b::Element(e::NotUsed, "Industry Code"),
501
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1248
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1249
+ b::Element(e::Required, "Treatment Code"),
1250
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1251
+ b::Element(e::NotUsed, "Date Time Period"),
1252
+ b::Element(e::NotUsed, "Monetary Amount"),
1253
+ b::Element(e::NotUsed, "Quantity"),
1254
+ b::Element(e::NotUsed, "Version Identifier"),
1255
+ b::Element(e::NotUsed, "Industry Code"),
1256
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
502
1257
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
503
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
504
- b::Element(e::Required, "Other Diagnosis"),
505
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
506
- b::Element(e::NotUsed, "Date Time Period"),
507
- b::Element(e::NotUsed, "Monetary Amount"),
508
- b::Element(e::NotUsed, "Quantity"),
509
- b::Element(e::NotUsed, "Version Identifier"),
510
- b::Element(e::NotUsed, "Industry Code"),
511
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1258
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1259
+ b::Element(e::Required, "Treatment Code"),
1260
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1261
+ b::Element(e::NotUsed, "Date Time Period"),
1262
+ b::Element(e::NotUsed, "Monetary Amount"),
1263
+ b::Element(e::NotUsed, "Quantity"),
1264
+ b::Element(e::NotUsed, "Version Identifier"),
1265
+ b::Element(e::NotUsed, "Industry Code"),
1266
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
512
1267
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
513
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
514
- b::Element(e::Required, "Other Diagnosis"),
515
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
516
- b::Element(e::NotUsed, "Date Time Period"),
517
- b::Element(e::NotUsed, "Monetary Amount"),
518
- b::Element(e::NotUsed, "Quantity"),
519
- b::Element(e::NotUsed, "Version Identifier"),
520
- b::Element(e::NotUsed, "Industry Code"),
521
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1268
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1269
+ b::Element(e::Required, "Treatment Code"),
1270
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1271
+ b::Element(e::NotUsed, "Date Time Period"),
1272
+ b::Element(e::NotUsed, "Monetary Amount"),
1273
+ b::Element(e::NotUsed, "Quantity"),
1274
+ b::Element(e::NotUsed, "Version Identifier"),
1275
+ b::Element(e::NotUsed, "Industry Code"),
1276
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
522
1277
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
523
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
524
- b::Element(e::Required, "Other Diagnosis"),
525
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
526
- b::Element(e::NotUsed, "Date Time Period"),
527
- b::Element(e::NotUsed, "Monetary Amount"),
528
- b::Element(e::NotUsed, "Quantity"),
529
- b::Element(e::NotUsed, "Version Identifier"),
530
- b::Element(e::NotUsed, "Industry Code"),
531
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y"))),
1278
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1279
+ b::Element(e::Required, "Treatment Code"),
1280
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1281
+ b::Element(e::NotUsed, "Date Time Period"),
1282
+ b::Element(e::NotUsed, "Monetary Amount"),
1283
+ b::Element(e::NotUsed, "Quantity"),
1284
+ b::Element(e::NotUsed, "Version Identifier"),
1285
+ b::Element(e::NotUsed, "Industry Code"),
1286
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
532
1287
  b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
533
- b::Element(e::Required, "Code List Qualifier Code", b::Values("ABF", "BF")),
534
- b::Element(e::Required, "Other Diagnosis"),
535
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
536
- b::Element(e::NotUsed, "Date Time Period"),
537
- b::Element(e::NotUsed, "Monetary Amount"),
538
- b::Element(e::NotUsed, "Quantity"),
539
- b::Element(e::NotUsed, "Version Identifier"),
540
- b::Element(e::NotUsed, "Industry Code"),
541
- b::Element(e::Situational, "Present on Admission Indicator", b::Values("N", "U", "W", "Y")))
542
- ),
543
- b::Segment(2310, s::HI, "Principal Procedure Information",
544
- r::Situational, d::RepeatCount.bounded(1),
545
- b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
546
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBR", "BR", "CAH")),
547
- b::Element(e::Required, "Principal Procedure Code"),
548
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
549
- b::Element(e::Required, "Principal Procedure Date"),
550
- b::Element(e::NotUsed, "Monetary Amount"),
551
- b::Element(e::NotUsed, "Quantity"),
552
- b::Element(e::NotUsed, "Version Identifier"),
553
- b::Element(e::NotUsed, "Industry Code"),
554
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
555
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
556
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
557
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
558
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
559
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
560
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
561
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
562
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
563
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
564
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION"),
565
- b::Element(e::NotUsed, "HEALTH CARE CODE INFORMATION")
566
- ),
567
- b::Segment(2310, s::HI, "Other Procedure Information",
568
- r::Situational, d::RepeatCount.bounded(2),
569
- b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
570
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
571
- b::Element(e::Required, "Procedure Code"),
572
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
573
- b::Element(e::Required, "Procedure Date"),
574
- b::Element(e::NotUsed, "Monetary Amount"),
575
- b::Element(e::NotUsed, "Quantity"),
576
- b::Element(e::NotUsed, "Version Identifier"),
577
- b::Element(e::NotUsed, "Industry Code"),
578
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
579
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
580
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
581
- b::Element(e::Required, "Procedure Code"),
582
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
583
- b::Element(e::Required, "Procedure Date"),
584
- b::Element(e::NotUsed, "Monetary Amount"),
585
- b::Element(e::NotUsed, "Quantity"),
586
- b::Element(e::NotUsed, "Version Identifier"),
587
- b::Element(e::NotUsed, "Industry Code"),
588
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
589
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
590
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
591
- b::Element(e::Required, "Procedure Code"),
592
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
593
- b::Element(e::Required, "Procedure Date"),
594
- b::Element(e::NotUsed, "Monetary Amount"),
595
- b::Element(e::NotUsed, "Quantity"),
596
- b::Element(e::NotUsed, "Version Identifier"),
597
- b::Element(e::NotUsed, "Industry Code"),
598
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
599
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
600
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
601
- b::Element(e::Required, "Procedure Code"),
602
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
603
- b::Element(e::Required, "Procedure Date"),
604
- b::Element(e::NotUsed, "Monetary Amount"),
605
- b::Element(e::NotUsed, "Quantity"),
606
- b::Element(e::NotUsed, "Version Identifier"),
607
- b::Element(e::NotUsed, "Industry Code"),
608
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
609
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
610
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
611
- b::Element(e::Required, "Procedure Code"),
612
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
613
- b::Element(e::Required, "Procedure Date"),
614
- b::Element(e::NotUsed, "Monetary Amount"),
615
- b::Element(e::NotUsed, "Quantity"),
616
- b::Element(e::NotUsed, "Version Identifier"),
617
- b::Element(e::NotUsed, "Industry Code"),
618
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
619
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
620
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
621
- b::Element(e::Required, "Procedure Code"),
622
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
623
- b::Element(e::Required, "Procedure Date"),
624
- b::Element(e::NotUsed, "Monetary Amount"),
625
- b::Element(e::NotUsed, "Quantity"),
626
- b::Element(e::NotUsed, "Version Identifier"),
627
- b::Element(e::NotUsed, "Industry Code"),
628
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
629
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
630
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
631
- b::Element(e::Required, "Procedure Code"),
632
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
633
- b::Element(e::Required, "Procedure Date"),
634
- b::Element(e::NotUsed, "Monetary Amount"),
635
- b::Element(e::NotUsed, "Quantity"),
636
- b::Element(e::NotUsed, "Version Identifier"),
637
- b::Element(e::NotUsed, "Industry Code"),
638
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
639
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
640
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
641
- b::Element(e::Required, "Procedure Code"),
642
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
643
- b::Element(e::Required, "Procedure Date"),
644
- b::Element(e::NotUsed, "Monetary Amount"),
645
- b::Element(e::NotUsed, "Quantity"),
646
- b::Element(e::NotUsed, "Version Identifier"),
647
- b::Element(e::NotUsed, "Industry Code"),
648
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
649
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
650
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
651
- b::Element(e::Required, "Procedure Code"),
652
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
653
- b::Element(e::Required, "Procedure Date"),
654
- b::Element(e::NotUsed, "Monetary Amount"),
655
- b::Element(e::NotUsed, "Quantity"),
656
- b::Element(e::NotUsed, "Version Identifier"),
657
- b::Element(e::NotUsed, "Industry Code"),
658
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
659
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
660
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
661
- b::Element(e::Required, "Procedure Code"),
662
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
663
- b::Element(e::Required, "Procedure Date"),
664
- b::Element(e::NotUsed, "Monetary Amount"),
665
- b::Element(e::NotUsed, "Quantity"),
666
- b::Element(e::NotUsed, "Version Identifier"),
667
- b::Element(e::NotUsed, "Industry Code"),
668
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
669
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
670
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
671
- b::Element(e::Required, "Procedure Code"),
672
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
673
- b::Element(e::Required, "Procedure Date"),
674
- b::Element(e::NotUsed, "Monetary Amount"),
675
- b::Element(e::NotUsed, "Quantity"),
676
- b::Element(e::NotUsed, "Version Identifier"),
677
- b::Element(e::NotUsed, "Industry Code"),
678
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
679
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
680
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BBQ", "BQ")),
681
- b::Element(e::Required, "Procedure Code"),
682
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
683
- b::Element(e::Required, "Procedure Date"),
684
- b::Element(e::NotUsed, "Monetary Amount"),
685
- b::Element(e::NotUsed, "Quantity"),
686
- b::Element(e::NotUsed, "Version Identifier"),
687
- b::Element(e::NotUsed, "Industry Code"),
688
- b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
689
- b::Segment(2310, s::HI, "Occurrence Span Information",
690
- r::Situational, d::RepeatCount.bounded(2),
691
- b::Element(e::Required, "HEALTH CLAIM CODE INFORMATION",
692
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
693
- b::Element(e::Required, "Occurrence Span Code"),
694
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
695
- b::Element(e::Required, "Occurrence Span Code Date"),
696
- b::Element(e::NotUsed, "Monetary Amount"),
697
- b::Element(e::NotUsed, "Quantity"),
698
- b::Element(e::NotUsed, "Version Identifier"),
699
- b::Element(e::NotUsed, "Industry Code"),
700
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
701
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
702
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
703
- b::Element(e::Required, "Occurrence Span Code"),
704
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
705
- b::Element(e::Required, "Occurrence Span Code Date"),
706
- b::Element(e::NotUsed, "Monetary Amount"),
707
- b::Element(e::NotUsed, "Quantity"),
708
- b::Element(e::NotUsed, "Version Identifier"),
709
- b::Element(e::NotUsed, "Industry Code"),
710
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
711
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
712
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
713
- b::Element(e::Required, "Occurrence Span Code"),
714
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
715
- b::Element(e::Required, "Occurrence Span Code Date"),
716
- b::Element(e::NotUsed, "Monetary Amount"),
717
- b::Element(e::NotUsed, "Quantity"),
718
- b::Element(e::NotUsed, "Version Identifier"),
719
- b::Element(e::NotUsed, "Industry Code"),
720
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
721
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
722
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
723
- b::Element(e::Required, "Occurrence Span Code"),
724
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
725
- b::Element(e::Required, "Occurrence Span Code Date"),
726
- b::Element(e::NotUsed, "Monetary Amount"),
727
- b::Element(e::NotUsed, "Quantity"),
728
- b::Element(e::NotUsed, "Version Identifier"),
729
- b::Element(e::NotUsed, "Industry Code"),
730
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
731
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
732
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
733
- b::Element(e::Required, "Occurrence Span Code"),
734
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
735
- b::Element(e::Required, "Occurrence Span Code Date"),
736
- b::Element(e::NotUsed, "Monetary Amount"),
737
- b::Element(e::NotUsed, "Quantity"),
738
- b::Element(e::NotUsed, "Version Identifier"),
739
- b::Element(e::NotUsed, "Industry Code"),
740
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
741
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
742
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
743
- b::Element(e::Required, "Occurrence Span Code"),
744
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
745
- b::Element(e::Required, "Occurrence Span Code Date"),
746
- b::Element(e::NotUsed, "Monetary Amount"),
747
- b::Element(e::NotUsed, "Quantity"),
748
- b::Element(e::NotUsed, "Version Identifier"),
749
- b::Element(e::NotUsed, "Industry Code"),
750
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
751
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
752
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
753
- b::Element(e::Required, "Occurrence Span Code"),
754
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
755
- b::Element(e::Required, "Occurrence Span Code Date"),
756
- b::Element(e::NotUsed, "Monetary Amount"),
757
- b::Element(e::NotUsed, "Quantity"),
758
- b::Element(e::NotUsed, "Version Identifier"),
759
- b::Element(e::NotUsed, "Industry Code"),
760
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
761
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
762
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
763
- b::Element(e::Required, "Occurrence Span Code"),
764
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
765
- b::Element(e::Required, "Occurrence Span Code Date"),
766
- b::Element(e::NotUsed, "Monetary Amount"),
767
- b::Element(e::NotUsed, "Quantity"),
768
- b::Element(e::NotUsed, "Version Identifier"),
769
- b::Element(e::NotUsed, "Industry Code"),
770
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
771
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
772
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
773
- b::Element(e::Required, "Occurrence Span Code"),
774
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
775
- b::Element(e::Required, "Occurrence Span Code Date"),
776
- b::Element(e::NotUsed, "Monetary Amount"),
777
- b::Element(e::NotUsed, "Quantity"),
778
- b::Element(e::NotUsed, "Version Identifier"),
779
- b::Element(e::NotUsed, "Industry Code"),
780
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
781
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
782
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
783
- b::Element(e::Required, "Occurrence Span Code"),
784
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
785
- b::Element(e::Required, "Occurrence Span Code Date"),
786
- b::Element(e::NotUsed, "Monetary Amount"),
787
- b::Element(e::NotUsed, "Quantity"),
788
- b::Element(e::NotUsed, "Version Identifier"),
789
- b::Element(e::NotUsed, "Industry Code"),
790
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
791
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
792
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
793
- b::Element(e::Required, "Occurrence Span Code"),
794
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
795
- b::Element(e::Required, "Occurrence Span Code Date"),
796
- b::Element(e::NotUsed, "Monetary Amount"),
797
- b::Element(e::NotUsed, "Quantity"),
798
- b::Element(e::NotUsed, "Version Identifier"),
799
- b::Element(e::NotUsed, "Industry Code"),
800
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
801
- b::Element(e::Situational, "HEALTH CLAIM CODE INFORMATION",
802
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BI")),
803
- b::Element(e::Required, "Occurrence Span Code"),
804
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("RD8")),
805
- b::Element(e::Required, "Occurrence Span Code Date"),
806
- b::Element(e::NotUsed, "Monetary Amount"),
807
- b::Element(e::NotUsed, "Quantity"),
808
- b::Element(e::NotUsed, "Version Identifier"),
809
- b::Element(e::NotUsed, "Industry Code"),
810
- b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
811
- b::Segment(2310, s::HI, "Occurrence Information",
812
- r::Situational, d::RepeatCount.bounded(2),
813
- b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
814
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
815
- b::Element(e::Required, "Occurrence Code"),
816
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
817
- b::Element(e::Required, "Occurrence Code Date"),
818
- b::Element(e::NotUsed, "Monetary Amount"),
819
- b::Element(e::NotUsed, "Quantity"),
820
- b::Element(e::NotUsed, "Version Identifier"),
821
- b::Element(e::NotUsed, "Industy Code"),
822
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
823
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
824
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
825
- b::Element(e::Required, "Occurrence Code"),
826
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
827
- b::Element(e::Required, "Occurrence Code Date"),
828
- b::Element(e::NotUsed, "Monetary Amount"),
829
- b::Element(e::NotUsed, "Quantity"),
830
- b::Element(e::NotUsed, "Version Identifier"),
831
- b::Element(e::NotUsed, "Industy Code"),
832
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
833
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
834
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
835
- b::Element(e::Required, "Occurrence Code"),
836
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
837
- b::Element(e::Required, "Occurrence Code Date"),
838
- b::Element(e::NotUsed, "Monetary Amount"),
839
- b::Element(e::NotUsed, "Quantity"),
840
- b::Element(e::NotUsed, "Version Identifier"),
841
- b::Element(e::NotUsed, "Industy Code"),
842
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
843
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
844
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
845
- b::Element(e::Required, "Occurrence Code"),
846
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
847
- b::Element(e::Required, "Occurrence Code Date"),
848
- b::Element(e::NotUsed, "Monetary Amount"),
849
- b::Element(e::NotUsed, "Quantity"),
850
- b::Element(e::NotUsed, "Version Identifier"),
851
- b::Element(e::NotUsed, "Industy Code"),
852
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
853
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
854
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
855
- b::Element(e::Required, "Occurrence Code"),
856
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
857
- b::Element(e::Required, "Occurrence Code Date"),
858
- b::Element(e::NotUsed, "Monetary Amount"),
859
- b::Element(e::NotUsed, "Quantity"),
860
- b::Element(e::NotUsed, "Version Identifier"),
861
- b::Element(e::NotUsed, "Industy Code"),
862
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
863
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
864
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
865
- b::Element(e::Required, "Occurrence Code"),
866
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
867
- b::Element(e::Required, "Occurrence Code Date"),
868
- b::Element(e::NotUsed, "Monetary Amount"),
869
- b::Element(e::NotUsed, "Quantity"),
870
- b::Element(e::NotUsed, "Version Identifier"),
871
- b::Element(e::NotUsed, "Industy Code"),
872
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
873
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
874
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
875
- b::Element(e::Required, "Occurrence Code"),
876
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
877
- b::Element(e::Required, "Occurrence Code Date"),
878
- b::Element(e::NotUsed, "Monetary Amount"),
879
- b::Element(e::NotUsed, "Quantity"),
880
- b::Element(e::NotUsed, "Version Identifier"),
881
- b::Element(e::NotUsed, "Industy Code"),
882
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
883
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
884
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
885
- b::Element(e::Required, "Occurrence Code"),
886
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
887
- b::Element(e::Required, "Occurrence Code Date"),
888
- b::Element(e::NotUsed, "Monetary Amount"),
889
- b::Element(e::NotUsed, "Quantity"),
890
- b::Element(e::NotUsed, "Version Identifier"),
891
- b::Element(e::NotUsed, "Industy Code"),
892
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
893
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
894
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
895
- b::Element(e::Required, "Occurrence Code"),
896
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
897
- b::Element(e::Required, "Occurrence Code Date"),
898
- b::Element(e::NotUsed, "Monetary Amount"),
899
- b::Element(e::NotUsed, "Quantity"),
900
- b::Element(e::NotUsed, "Version Identifier"),
901
- b::Element(e::NotUsed, "Industy Code"),
902
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
903
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
904
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
905
- b::Element(e::Required, "Occurrence Code"),
906
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
907
- b::Element(e::Required, "Occurrence Code Date"),
908
- b::Element(e::NotUsed, "Monetary Amount"),
909
- b::Element(e::NotUsed, "Quantity"),
910
- b::Element(e::NotUsed, "Version Identifier"),
911
- b::Element(e::NotUsed, "Industy Code"),
912
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
913
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
914
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
915
- b::Element(e::Required, "Occurrence Code"),
916
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
917
- b::Element(e::Required, "Occurrence Code Date"),
918
- b::Element(e::NotUsed, "Monetary Amount"),
919
- b::Element(e::NotUsed, "Quantity"),
920
- b::Element(e::NotUsed, "Version Identifier"),
921
- b::Element(e::NotUsed, "Industy Code"),
922
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
923
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
924
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BH")),
925
- b::Element(e::Required, "Occurrence Code"),
926
- b::Element(e::Required, "Date Time Period Format Qualifier", b::Values("D8")),
927
- b::Element(e::Required, "Occurrence Code Date"),
928
- b::Element(e::NotUsed, "Monetary Amount"),
929
- b::Element(e::NotUsed, "Quantity"),
930
- b::Element(e::NotUsed, "Version Identifier"),
931
- b::Element(e::NotUsed, "Industy Code"),
932
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
933
- ),
934
- b::Segment(2310, s::HI, "Value Information",
935
- r::Situational, d::RepeatCount.bounded(2),
936
- b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
937
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
938
- b::Element(e::Required, "Value Code"),
939
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
940
- b::Element(e::NotUsed, "Date Time Period"),
941
- b::Element(e::Required, "Value Code Amount"),
942
- b::Element(e::NotUsed, "Quantity"),
943
- b::Element(e::NotUsed, "Version Identifier"),
944
- b::Element(e::NotUsed, "Industry Code"),
945
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
946
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
947
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
948
- b::Element(e::Required, "Value Code"),
949
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
950
- b::Element(e::NotUsed, "Date Time Period"),
951
- b::Element(e::Required, "Value Code Amount"),
952
- b::Element(e::NotUsed, "Quantity"),
953
- b::Element(e::NotUsed, "Version Identifier"),
954
- b::Element(e::NotUsed, "Industry Code"),
955
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
956
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
957
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
958
- b::Element(e::Required, "Value Code"),
959
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
960
- b::Element(e::NotUsed, "Date Time Period"),
961
- b::Element(e::Required, "Value Code Amount"),
962
- b::Element(e::NotUsed, "Quantity"),
963
- b::Element(e::NotUsed, "Version Identifier"),
964
- b::Element(e::NotUsed, "Industry Code"),
965
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
966
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
967
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
968
- b::Element(e::Required, "Value Code"),
969
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
970
- b::Element(e::NotUsed, "Date Time Period"),
971
- b::Element(e::Required, "Value Code Amount"),
972
- b::Element(e::NotUsed, "Quantity"),
973
- b::Element(e::NotUsed, "Version Identifier"),
974
- b::Element(e::NotUsed, "Industry Code"),
975
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
976
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
977
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
978
- b::Element(e::Required, "Value Code"),
979
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
980
- b::Element(e::NotUsed, "Date Time Period"),
981
- b::Element(e::Required, "Value Code Amount"),
982
- b::Element(e::NotUsed, "Quantity"),
983
- b::Element(e::NotUsed, "Version Identifier"),
984
- b::Element(e::NotUsed, "Industry Code"),
985
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
986
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
987
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
988
- b::Element(e::Required, "Value Code"),
989
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
990
- b::Element(e::NotUsed, "Date Time Period"),
991
- b::Element(e::Required, "Value Code Amount"),
992
- b::Element(e::NotUsed, "Quantity"),
993
- b::Element(e::NotUsed, "Version Identifier"),
994
- b::Element(e::NotUsed, "Industry Code"),
995
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
996
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
997
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
998
- b::Element(e::Required, "Value Code"),
999
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1000
- b::Element(e::NotUsed, "Date Time Period"),
1001
- b::Element(e::Required, "Value Code Amount"),
1002
- b::Element(e::NotUsed, "Quantity"),
1003
- b::Element(e::NotUsed, "Version Identifier"),
1004
- b::Element(e::NotUsed, "Industry Code"),
1005
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1006
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1007
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
1008
- b::Element(e::Required, "Value Code"),
1009
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1010
- b::Element(e::NotUsed, "Date Time Period"),
1011
- b::Element(e::Required, "Value Code Amount"),
1012
- b::Element(e::NotUsed, "Quantity"),
1013
- b::Element(e::NotUsed, "Version Identifier"),
1014
- b::Element(e::NotUsed, "Industry Code"),
1015
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1016
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1017
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
1018
- b::Element(e::Required, "Value Code"),
1019
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1020
- b::Element(e::NotUsed, "Date Time Period"),
1021
- b::Element(e::Required, "Value Code Amount"),
1022
- b::Element(e::NotUsed, "Quantity"),
1023
- b::Element(e::NotUsed, "Version Identifier"),
1024
- b::Element(e::NotUsed, "Industry Code"),
1025
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1026
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1027
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
1028
- b::Element(e::Required, "Value Code"),
1029
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1030
- b::Element(e::NotUsed, "Date Time Period"),
1031
- b::Element(e::Required, "Value Code Amount"),
1032
- b::Element(e::NotUsed, "Quantity"),
1033
- b::Element(e::NotUsed, "Version Identifier"),
1034
- b::Element(e::NotUsed, "Industry Code"),
1035
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1036
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1037
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
1038
- b::Element(e::Required, "Value Code"),
1039
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1040
- b::Element(e::NotUsed, "Date Time Period"),
1041
- b::Element(e::Required, "Value Code Amount"),
1042
- b::Element(e::NotUsed, "Quantity"),
1043
- b::Element(e::NotUsed, "Version Identifier"),
1044
- b::Element(e::NotUsed, "Industry Code"),
1045
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1046
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1047
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BE")),
1048
- b::Element(e::Required, "Value Code"),
1049
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1050
- b::Element(e::NotUsed, "Date Time Period"),
1051
- b::Element(e::Required, "Value Code Amount"),
1052
- b::Element(e::NotUsed, "Quantity"),
1053
- b::Element(e::NotUsed, "Version Identifier"),
1054
- b::Element(e::NotUsed, "Industry Code"),
1055
- b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
1056
- b::Segment(2310, s::HI, "Condition Information",
1057
- r::Situational, d::RepeatCount.bounded(2),
1058
- b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
1059
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1060
- b::Element(e::Required, "Condition Code"),
1061
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1062
- b::Element(e::NotUsed, "Date Time Period"),
1063
- b::Element(e::NotUsed, "Monetary Amount"),
1064
- b::Element(e::NotUsed, "Quantity"),
1065
- b::Element(e::NotUsed, "Version Identifier"),
1066
- b::Element(e::NotUsed, "Industry Code"),
1067
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1068
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1069
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1070
- b::Element(e::Required, "Condition Code"),
1071
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1072
- b::Element(e::NotUsed, "Date Time Period"),
1073
- b::Element(e::NotUsed, "Monetary Amount"),
1074
- b::Element(e::NotUsed, "Quantity"),
1075
- b::Element(e::NotUsed, "Version Identifier"),
1076
- b::Element(e::NotUsed, "Industry Code"),
1077
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1078
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1079
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1080
- b::Element(e::Required, "Condition Code"),
1081
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1082
- b::Element(e::NotUsed, "Date Time Period"),
1083
- b::Element(e::NotUsed, "Monetary Amount"),
1084
- b::Element(e::NotUsed, "Quantity"),
1085
- b::Element(e::NotUsed, "Version Identifier"),
1086
- b::Element(e::NotUsed, "Industry Code"),
1087
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1088
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1089
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1090
- b::Element(e::Required, "Condition Code"),
1091
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1092
- b::Element(e::NotUsed, "Date Time Period"),
1093
- b::Element(e::NotUsed, "Monetary Amount"),
1094
- b::Element(e::NotUsed, "Quantity"),
1095
- b::Element(e::NotUsed, "Version Identifier"),
1096
- b::Element(e::NotUsed, "Industry Code"),
1097
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1098
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1099
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1100
- b::Element(e::Required, "Condition Code"),
1101
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1102
- b::Element(e::NotUsed, "Date Time Period"),
1103
- b::Element(e::NotUsed, "Monetary Amount"),
1104
- b::Element(e::NotUsed, "Quantity"),
1105
- b::Element(e::NotUsed, "Version Identifier"),
1106
- b::Element(e::NotUsed, "Industry Code"),
1107
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1108
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1109
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1110
- b::Element(e::Required, "Condition Code"),
1111
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1112
- b::Element(e::NotUsed, "Date Time Period"),
1113
- b::Element(e::NotUsed, "Monetary Amount"),
1114
- b::Element(e::NotUsed, "Quantity"),
1115
- b::Element(e::NotUsed, "Version Identifier"),
1116
- b::Element(e::NotUsed, "Industry Code"),
1117
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1118
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1119
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1120
- b::Element(e::Required, "Condition Code"),
1121
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1122
- b::Element(e::NotUsed, "Date Time Period"),
1123
- b::Element(e::NotUsed, "Monetary Amount"),
1124
- b::Element(e::NotUsed, "Quantity"),
1125
- b::Element(e::NotUsed, "Version Identifier"),
1126
- b::Element(e::NotUsed, "Industry Code"),
1127
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1128
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1129
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1130
- b::Element(e::Required, "Condition Code"),
1131
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1132
- b::Element(e::NotUsed, "Date Time Period"),
1133
- b::Element(e::NotUsed, "Monetary Amount"),
1134
- b::Element(e::NotUsed, "Quantity"),
1135
- b::Element(e::NotUsed, "Version Identifier"),
1136
- b::Element(e::NotUsed, "Industry Code"),
1137
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1138
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1139
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1140
- b::Element(e::Required, "Condition Code"),
1141
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1142
- b::Element(e::NotUsed, "Date Time Period"),
1143
- b::Element(e::NotUsed, "Monetary Amount"),
1144
- b::Element(e::NotUsed, "Quantity"),
1145
- b::Element(e::NotUsed, "Version Identifier"),
1146
- b::Element(e::NotUsed, "Industry Code"),
1147
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1148
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1149
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1150
- b::Element(e::Required, "Condition Code"),
1151
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1152
- b::Element(e::NotUsed, "Date Time Period"),
1153
- b::Element(e::NotUsed, "Monetary Amount"),
1154
- b::Element(e::NotUsed, "Quantity"),
1155
- b::Element(e::NotUsed, "Version Identifier"),
1156
- b::Element(e::NotUsed, "Industry Code"),
1157
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1158
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1159
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1160
- b::Element(e::Required, "Condition Code"),
1161
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1162
- b::Element(e::NotUsed, "Date Time Period"),
1163
- b::Element(e::NotUsed, "Monetary Amount"),
1164
- b::Element(e::NotUsed, "Quantity"),
1165
- b::Element(e::NotUsed, "Version Identifier"),
1166
- b::Element(e::NotUsed, "Industry Code"),
1167
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1168
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1169
- b::Element(e::Required, "Code List Qualifier Code", b::Values("BG")),
1170
- b::Element(e::Required, "Condition Code"),
1171
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1172
- b::Element(e::NotUsed, "Date Time Period"),
1173
- b::Element(e::NotUsed, "Monetary Amount"),
1174
- b::Element(e::NotUsed, "Quantity"),
1175
- b::Element(e::NotUsed, "Version Identifier"),
1176
- b::Element(e::NotUsed, "Industry Code"),
1177
- b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
1178
- b::Segment(2310, s::HI, "Treatment Code Information",
1179
- r::Situational, d::RepeatCount.bounded(2),
1180
- b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
1181
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1182
- b::Element(e::Required, "Treatment Code"),
1183
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1184
- b::Element(e::NotUsed, "Date Time Period"),
1185
- b::Element(e::NotUsed, "Monetary Amount"),
1186
- b::Element(e::NotUsed, "Quantity"),
1187
- b::Element(e::NotUsed, "Version Identifier"),
1188
- b::Element(e::NotUsed, "Industry Code"),
1189
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1190
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1191
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1192
- b::Element(e::Required, "Treatment Code"),
1193
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1194
- b::Element(e::NotUsed, "Date Time Period"),
1195
- b::Element(e::NotUsed, "Monetary Amount"),
1196
- b::Element(e::NotUsed, "Quantity"),
1197
- b::Element(e::NotUsed, "Version Identifier"),
1198
- b::Element(e::NotUsed, "Industry Code"),
1199
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1200
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1201
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1202
- b::Element(e::Required, "Treatment Code"),
1203
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1204
- b::Element(e::NotUsed, "Date Time Period"),
1205
- b::Element(e::NotUsed, "Monetary Amount"),
1206
- b::Element(e::NotUsed, "Quantity"),
1207
- b::Element(e::NotUsed, "Version Identifier"),
1208
- b::Element(e::NotUsed, "Industry Code"),
1209
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1210
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1211
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1212
- b::Element(e::Required, "Treatment Code"),
1213
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1214
- b::Element(e::NotUsed, "Date Time Period"),
1215
- b::Element(e::NotUsed, "Monetary Amount"),
1216
- b::Element(e::NotUsed, "Quantity"),
1217
- b::Element(e::NotUsed, "Version Identifier"),
1218
- b::Element(e::NotUsed, "Industry Code"),
1219
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1220
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1221
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1222
- b::Element(e::Required, "Treatment Code"),
1223
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1224
- b::Element(e::NotUsed, "Date Time Period"),
1225
- b::Element(e::NotUsed, "Monetary Amount"),
1226
- b::Element(e::NotUsed, "Quantity"),
1227
- b::Element(e::NotUsed, "Version Identifier"),
1228
- b::Element(e::NotUsed, "Industry Code"),
1229
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1230
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1231
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1232
- b::Element(e::Required, "Treatment Code"),
1233
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1234
- b::Element(e::NotUsed, "Date Time Period"),
1235
- b::Element(e::NotUsed, "Monetary Amount"),
1236
- b::Element(e::NotUsed, "Quantity"),
1237
- b::Element(e::NotUsed, "Version Identifier"),
1238
- b::Element(e::NotUsed, "Industry Code"),
1239
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1240
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1241
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1242
- b::Element(e::Required, "Treatment Code"),
1243
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1244
- b::Element(e::NotUsed, "Date Time Period"),
1245
- b::Element(e::NotUsed, "Monetary Amount"),
1246
- b::Element(e::NotUsed, "Quantity"),
1247
- b::Element(e::NotUsed, "Version Identifier"),
1248
- b::Element(e::NotUsed, "Industry Code"),
1249
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1250
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1251
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1252
- b::Element(e::Required, "Treatment Code"),
1253
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1254
- b::Element(e::NotUsed, "Date Time Period"),
1255
- b::Element(e::NotUsed, "Monetary Amount"),
1256
- b::Element(e::NotUsed, "Quantity"),
1257
- b::Element(e::NotUsed, "Version Identifier"),
1258
- b::Element(e::NotUsed, "Industry Code"),
1259
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1260
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1261
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1262
- b::Element(e::Required, "Treatment Code"),
1263
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1264
- b::Element(e::NotUsed, "Date Time Period"),
1265
- b::Element(e::NotUsed, "Monetary Amount"),
1266
- b::Element(e::NotUsed, "Quantity"),
1267
- b::Element(e::NotUsed, "Version Identifier"),
1268
- b::Element(e::NotUsed, "Industry Code"),
1269
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1270
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1271
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1272
- b::Element(e::Required, "Treatment Code"),
1273
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1274
- b::Element(e::NotUsed, "Date Time Period"),
1275
- b::Element(e::NotUsed, "Monetary Amount"),
1276
- b::Element(e::NotUsed, "Quantity"),
1277
- b::Element(e::NotUsed, "Version Identifier"),
1278
- b::Element(e::NotUsed, "Industry Code"),
1279
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1280
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1281
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1282
- b::Element(e::Required, "Treatment Code"),
1283
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1284
- b::Element(e::NotUsed, "Date Time Period"),
1285
- b::Element(e::NotUsed, "Monetary Amount"),
1286
- b::Element(e::NotUsed, "Quantity"),
1287
- b::Element(e::NotUsed, "Version Identifier"),
1288
- b::Element(e::NotUsed, "Industry Code"),
1289
- b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
1290
- b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
1291
- b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1292
- b::Element(e::Required, "Treatment Code"),
1293
- b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1294
- b::Element(e::NotUsed, "Date Time Period"),
1295
- b::Element(e::NotUsed, "Monetary Amount"),
1296
- b::Element(e::NotUsed, "Quantity"),
1297
- b::Element(e::NotUsed, "Version Identifier"),
1298
- b::Element(e::NotUsed, "Industry Code"),
1299
- b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
1288
+ b::Element(e::Required, "Code List Qualifier Code", b::Values("TC")),
1289
+ b::Element(e::Required, "Treatment Code"),
1290
+ b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
1291
+ b::Element(e::NotUsed, "Date Time Period"),
1292
+ b::Element(e::NotUsed, "Monetary Amount"),
1293
+ b::Element(e::NotUsed, "Quantity"),
1294
+ b::Element(e::NotUsed, "Version Identifier"),
1295
+ b::Element(e::NotUsed, "Industry Code"),
1296
+ b::Element(e::NotUsed, "Yes/No Condition or Response Code"))),
1300
1297
  b::Segment(2410, s::HCP, "Claim Pricing/Repricing Information",
1301
1298
  r::Situational, d::RepeatCount.bounded(1),
1302
1299
  b::Element(e::Required, "Pricing Methodology", b::Values("00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14")),
@@ -1309,8 +1306,8 @@ module Stupidedi
1309
1306
  b::Element(e::Situational, "Repriced Approved Revenue Code"),
1310
1307
  b::Element(e::NotUsed, "Product/Service Qualifier"),
1311
1308
  b::Element(e::NotUsed, "Product/Service ID"),
1312
- b::Element(e::Situational, "Unit or Basis of Measurement Code", b::Values("DA", "UN")),
1313
- b::Element(e::Situational, "Repriced Approved Service Unit Count"),
1309
+ b::Element(e::Situational, "Unit or Basis of Measurement Code", b::Values("DA", "UN")),
1310
+ b::Element(e::Situational, "Repriced Approved Service Unit Count"),
1314
1311
  b::Element(e::Situational, "Reject Reason Code", b::Values("T1", "T2", "T3", "T4", "T5", "T6")),
1315
1312
  b::Element(e::Situational, "Policy Compliance Code", b::Values("1", "2", "3", "4", "5")),
1316
1313
  b::Element(e::Situational, "Exception Code", b::Values("1", "2", "3", "4", "5", "6"))),
@@ -1333,12 +1330,12 @@ module Stupidedi
1333
1330
  b::Element(e::NotUsed, "Name Last or Organization Name")),
1334
1331
  b::Segment(2550, s::PRV, "Attending Provider Specialty Information",
1335
1332
  r::Situational, d::RepeatCount.bounded(1),
1336
- b::Element(e::Required, "Provider Code", b::Values("AT")),
1337
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("PXC")),
1338
- b::Element(e::Required, "Provider Taxonomy Code"),
1339
- b::Element(e::NotUsed, "State or Province Code"),
1340
- b::Element(e::NotUsed, "PROVIDER SPECIALITY INFORMATION"),
1341
- b::Element(e::NotUsed, "Provider Organization Code")),
1333
+ b::Element(e::Required, "Provider Code", b::Values("AT")),
1334
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("PXC")),
1335
+ b::Element(e::Required, "Provider Taxonomy Code"),
1336
+ b::Element(e::NotUsed, "State or Province Code"),
1337
+ b::Element(e::NotUsed, "PROVIDER SPECIALITY INFORMATION"),
1338
+ b::Element(e::NotUsed, "Provider Organization Code")),
1342
1339
  b::Segment(2710, s::REF, "Attending Provider Secondary Information",
1343
1340
  r::Situational, d::RepeatCount.bounded(3),
1344
1341
  b::Element(e::Required, "Reference Identification Qualifier", b::Values("0B", "1G", "G2")),
@@ -1446,24 +1443,24 @@ module Stupidedi
1446
1443
  b::Element(e::Situational, "Country Subdivision Code")),
1447
1444
  b::Segment(2710, s::REF, "Service Facility Location Secondary Identification",
1448
1445
  r::Situational, d::RepeatCount.bounded(3),
1449
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("0B", "G2", "LU")),
1450
- b::Element(e::Required, "Laboratory or Facility Secondary Identifier"),
1451
- b::Element(e::NotUsed, "Description"),
1452
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER"))),
1446
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("0B", "G2", "LU")),
1447
+ b::Element(e::Required, "Laboratory or Facility Secondary Identifier"),
1448
+ b::Element(e::NotUsed, "Description"),
1449
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER"))),
1453
1450
 
1454
1451
  d::LoopDef.build("2310F REFERRING PROVIDER NAME",
1455
1452
  d::RepeatCount.bounded(1),
1456
1453
  b::Segment(2500, s::NM1, "Referring Provider Name",
1457
- r::Situational, d::RepeatCount.bounded(2),
1454
+ r::Situational, d::RepeatCount.bounded(1),
1458
1455
  b::Element(e::Required, "Entity Identifier Code", b::Values("DN")),
1459
1456
  b::Element(e::Required, "Entity Type Qualifier", b::Values("1")),
1460
1457
  b::Element(e::Required, "Referring Provider Last Name"),
1461
- b::Element(e::Situational, "Referring Provider First Name"),
1462
- b::Element(e::Situational, "Referring Provider Middle Name or Initial"),
1458
+ b::Element(e::Situational, "Referring Provider First Name"),
1459
+ b::Element(e::Situational, "Referring Provider Middle Name or Initial"),
1463
1460
  b::Element(e::NotUsed, "Name Prefix"),
1464
- b::Element(e::Situational, "Referring Provider Name Suffix"),
1465
- b::Element(e::Situational, "Identification Code Qualifier", b::Values("XX")),
1466
- b::Element(e::Situational, "Identification Code"),
1461
+ b::Element(e::Situational, "Referring Provider Name Suffix"),
1462
+ b::Element(e::Situational, "Identification Code Qualifier", b::Values("XX")),
1463
+ b::Element(e::Situational, "Identification Code"),
1467
1464
  b::Element(e::NotUsed, "Entity Relationship Code"),
1468
1465
  b::Element(e::NotUsed, "Entity Identifier Code"),
1469
1466
  b::Element(e::NotUsed, "Name Last or Organization Name")),
@@ -1520,9 +1517,9 @@ module Stupidedi
1520
1517
  b::Element(e::NotUsed, "Credit/Debit Flag")),
1521
1518
  b::Segment(3000, s::AMT, "Coordination of Benefits (COB) Total Non-Covered Amount",
1522
1519
  r::Situational, d::RepeatCount.bounded(1),
1523
- b::Element(e::Required, "Amount Qualifier Code", b::Values("A8")),
1524
- b::Element(e::Required, "Non-Covered Charge Amount"),
1525
- b::Element(e::NotUsed, "Credit/Debit Flag Code")),
1520
+ b::Element(e::Required, "Amount Qualifier Code", b::Values("A8")),
1521
+ b::Element(e::Required, "Non-Covered Charge Amount"),
1522
+ b::Element(e::NotUsed, "Credit/Debit Flag Code")),
1526
1523
  b::Segment(3100, s::OI, "Other Insurance Coverage Information",
1527
1524
  r::Required, d::RepeatCount.bounded(1),
1528
1525
  b::Element(e::NotUsed, "Claim Filing Indicator Code"),
@@ -1533,8 +1530,8 @@ module Stupidedi
1533
1530
  b::Element(e::Required, "Release of Information Code", b::Values("I", "Y"))),
1534
1531
  b::Segment(3150, s::MIA, "Inpatient Adjudication Information",
1535
1532
  r::Situational, d::RepeatCount.bounded(1),
1536
- b::Element(e::Required, "Covered Days or Visits Count"),
1537
- b::Element(e::NotUsed, "Monetary Amount"),
1533
+ b::Element(e::Required, "Covered Days or Visits Count"),
1534
+ b::Element(e::NotUsed, "Monetary Amount"),
1538
1535
  b::Element(e::Situational, "Lifetime Psychiatric Days Count"),
1539
1536
  b::Element(e::Situational, "Claim DRG Amount"),
1540
1537
  b::Element(e::Situational, "Claim Payment Remark Code"),
@@ -1789,47 +1786,47 @@ module Stupidedi
1789
1786
  d::RepeatCount.bounded(1),
1790
1787
  b::Segment(3250, s::NM1, "Other Payer Referring Provider",
1791
1788
  r::Situational, d::RepeatCount.bounded(1),
1792
- b::Element(e::Required, "Entity Identifier Code", b::Values("DN")),
1793
- b::Element(e::Required, "Entity Type Qualifier", b::Values("1")),
1794
- b::Element(e::NotUsed, "Name Last or Organization Name"),
1795
- b::Element(e::NotUsed, "Name First"),
1796
- b::Element(e::NotUsed, "Name Middle"),
1797
- b::Element(e::NotUsed, "Name Prefix"),
1798
- b::Element(e::NotUsed, "Name Suffix"),
1799
- b::Element(e::NotUsed, "Identification Code Qualifier"),
1800
- b::Element(e::NotUsed, "Identification Code"),
1801
- b::Element(e::NotUsed, "Entity Relationship Code"),
1802
- b::Element(e::NotUsed, "Entity Identifier Code"),
1803
- b::Element(e::NotUsed, "Name Last or Organization Name")),
1789
+ b::Element(e::Required, "Entity Identifier Code", b::Values("DN")),
1790
+ b::Element(e::Required, "Entity Type Qualifier", b::Values("1")),
1791
+ b::Element(e::NotUsed, "Name Last or Organization Name"),
1792
+ b::Element(e::NotUsed, "Name First"),
1793
+ b::Element(e::NotUsed, "Name Middle"),
1794
+ b::Element(e::NotUsed, "Name Prefix"),
1795
+ b::Element(e::NotUsed, "Name Suffix"),
1796
+ b::Element(e::NotUsed, "Identification Code Qualifier"),
1797
+ b::Element(e::NotUsed, "Identification Code"),
1798
+ b::Element(e::NotUsed, "Entity Relationship Code"),
1799
+ b::Element(e::NotUsed, "Entity Identifier Code"),
1800
+ b::Element(e::NotUsed, "Name Last or Organization Name")),
1804
1801
  b::Segment(3550, s::REF, "Other Payer Referring Provider Secondary Identification",
1805
1802
  r::Required, d::RepeatCount.bounded(3),
1806
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("0B", "1G", "G2")),
1807
- b::Element(e::Required, "Other Payer Referring Provider Identifier"),
1808
- b::Element(e::NotUsed, "Description"),
1809
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER"))),
1803
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("0B", "1G", "G2")),
1804
+ b::Element(e::Required, "Other Payer Referring Provider Identifier"),
1805
+ b::Element(e::NotUsed, "Description"),
1806
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER"))),
1810
1807
 
1811
1808
  d::LoopDef.build("2330I OTHER PAYER BILLING PROVIDER",
1812
1809
  d::RepeatCount.bounded(1),
1813
1810
  b::Segment(3250, s::NM1, "Other Payer Billing Provider",
1814
1811
  r::Situational, d::RepeatCount.bounded(1),
1815
- b::Element(e::Required, "Entity Identifier Code", b::Values("85")),
1816
- b::Element(e::Required, "Entity Type Qualifier", b::Values("2")),
1817
- b::Element(e::NotUsed, "Name Last or Organization Name"),
1818
- b::Element(e::NotUsed, "Name First"),
1819
- b::Element(e::NotUsed, "Name Middle"),
1820
- b::Element(e::NotUsed, "Name Prefix"),
1821
- b::Element(e::NotUsed, "Name Suffix"),
1822
- b::Element(e::NotUsed, "Identification Code Qualifier"),
1823
- b::Element(e::NotUsed, "Identification Code"),
1824
- b::Element(e::NotUsed, "Entity Relationship Code"),
1825
- b::Element(e::NotUsed, "Entity Identifier Code"),
1826
- b::Element(e::NotUsed, "Name Last or Organization Name")),
1812
+ b::Element(e::Required, "Entity Identifier Code", b::Values("85")),
1813
+ b::Element(e::Required, "Entity Type Qualifier", b::Values("2")),
1814
+ b::Element(e::NotUsed, "Name Last or Organization Name"),
1815
+ b::Element(e::NotUsed, "Name First"),
1816
+ b::Element(e::NotUsed, "Name Middle"),
1817
+ b::Element(e::NotUsed, "Name Prefix"),
1818
+ b::Element(e::NotUsed, "Name Suffix"),
1819
+ b::Element(e::NotUsed, "Identification Code Qualifier"),
1820
+ b::Element(e::NotUsed, "Identification Code"),
1821
+ b::Element(e::NotUsed, "Entity Relationship Code"),
1822
+ b::Element(e::NotUsed, "Entity Identifier Code"),
1823
+ b::Element(e::NotUsed, "Name Last or Organization Name")),
1827
1824
  b::Segment(3550, s::REF, "Other Payer Billing Provider Secondary Information",
1828
1825
  r::Required, d::RepeatCount.bounded(2),
1829
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("G2", "LU")),
1830
- b::Element(e::Required, "Other Payer Billing Provider Identifier"),
1831
- b::Element(e::NotUsed, "Description"),
1832
- b::Element(e::NotUsed, "REFERENCE IDENTIFIER"))),
1826
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("G2", "LU")),
1827
+ b::Element(e::Required, "Other Payer Billing Provider Identifier"),
1828
+ b::Element(e::NotUsed, "Description"),
1829
+ b::Element(e::NotUsed, "REFERENCE IDENTIFIER"))),
1833
1830
 
1834
1831
  d::LoopDef.build("2400 SERVICE LINE NUMBER",
1835
1832
  d::RepeatCount.bounded(999),
@@ -1840,14 +1837,14 @@ module Stupidedi
1840
1837
  r::Required, d::RepeatCount.bounded(1),
1841
1838
  b::Element(e::Required, "Service Line Revenue Code"),
1842
1839
  b::Element(e::Situational, "COMPOSITE MEDICAL PROCEDURE IDENTIFIER",
1843
- b::Element(e::Required, "Product or Service ID Qualifier", b::Values("ER", "HC", "HP", "IV", "WK")),
1844
- b::Element(e::Required, "Procedure Code"),
1840
+ b::Element(e::Required, "Product or Service ID Qualifier", b::Values("ER", "HC", "HP", "IV", "WK")),
1841
+ b::Element(e::Required, "Procedure Code"),
1845
1842
  b::Element(e::Situational, "Procedure Modifier"),
1846
1843
  b::Element(e::Situational, "Procedure Modifier"),
1847
1844
  b::Element(e::Situational, "Procedure Modifier"),
1848
1845
  b::Element(e::Situational, "Procedure Modifier"),
1849
1846
  b::Element(e::Situational, "Description"),
1850
- b::Element(e::NotUsed, "Product/Service ID")),
1847
+ b::Element(e::NotUsed, "Product/Service ID")),
1851
1848
  b::Element(e::Required, "Line Item Charge Amount"),
1852
1849
  b::Element(e::Required, "Unit or Basis for Measurement Code", b::Values("DA", "UN")),
1853
1850
  b::Element(e::Required, "Service Unit Count"),
@@ -2014,12 +2011,12 @@ module Stupidedi
2014
2011
  b::Element(e::Required, "Operating Physician Secondary Identifier"),
2015
2012
  b::Element(e::NotUsed, "Description"),
2016
2013
  b::Element(e::Situational, "REFERENCE IDENTIFIER",
2017
- b::Element(e::Required, "Reference Identification Qualifier", b::Values("2U")),
2018
- b::Element(e::Required, "Other Payer Primary Identifier"),
2019
- b::Element(e::NotUsed, "Reference Identification Qualifier"),
2020
- b::Element(e::NotUsed, "Reference Identification"),
2021
- b::Element(e::NotUsed, "Reference Identification Qualifier"),
2022
- b::Element(e::NotUsed, "Reference Identification")))),
2014
+ b::Element(e::Required, "Reference Identification Qualifier", b::Values("2U")),
2015
+ b::Element(e::Required, "Other Payer Primary Identifier"),
2016
+ b::Element(e::NotUsed, "Reference Identification Qualifier"),
2017
+ b::Element(e::NotUsed, "Reference Identification"),
2018
+ b::Element(e::NotUsed, "Reference Identification Qualifier"),
2019
+ b::Element(e::NotUsed, "Reference Identification")))),
2023
2020
 
2024
2021
  d::LoopDef.build("2420B OTHER OPERATING PHYSICIAN NAME",
2025
2022
  d::RepeatCount.bounded(1),