stupidedi 1.4.1 → 1.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +10 -4
- data/Rakefile +4 -4
- data/lib/stupidedi/config.rb +1 -0
- data/lib/stupidedi/transaction_sets/004010/implementations/IN810.rb +162 -0
- data/lib/stupidedi/transaction_sets/004010/implementations.rb +1 -0
- data/lib/stupidedi/transaction_sets/004010/standards/IN810.rb +38 -0
- data/lib/stupidedi/transaction_sets/004010/standards/PR855.rb +2 -1
- data/lib/stupidedi/transaction_sets/004010/standards.rb +1 -0
- data/lib/stupidedi/transaction_sets/005010/implementations/X220A1-BE834.rb +1 -1
- data/lib/stupidedi/transaction_sets/005010/implementations/X222A1-HC837.rb +26 -26
- data/lib/stupidedi/transaction_sets/005010/implementations/X223A2-HC837.rb +5 -5
- data/lib/stupidedi/transaction_sets/005010/implementations/X223A3-HC837.rb +5 -5
- data/lib/stupidedi/transaction_sets/005010/implementations/X279-HB271.rb +1 -1
- data/lib/stupidedi/transaction_sets/005010/implementations/X279-HS270.rb +1 -1
- data/lib/stupidedi/transaction_sets/005010/implementations/X279A1-HB271.rb +1 -1
- data/lib/stupidedi/transaction_sets/005010/implementations/X279A1-HS270.rb +2 -2
- data/lib/stupidedi/version.rb +1 -1
- data/lib/stupidedi/versions/003010/element_defs.rb +5 -2
- data/lib/stupidedi/versions/004010/element_defs.rb +72 -2
- data/lib/stupidedi/versions/004010/segment_defs/ACK.rb +43 -0
- data/lib/stupidedi/versions/004010/segment_defs/BIG.rb +25 -0
- data/lib/stupidedi/versions/004010/segment_defs/IT1.rb +39 -0
- data/lib/stupidedi/versions/004010/segment_defs/ITD.rb +29 -0
- data/lib/stupidedi/versions/004010/segment_defs/SAC.rb +31 -0
- data/lib/stupidedi/versions/004010/segment_defs/TDS.rb +18 -0
- data/lib/stupidedi/versions/004010/segment_defs/TXI.rb +24 -0
- data/lib/stupidedi/versions/004010/segment_defs.rb +7 -0
- data/lib/stupidedi/versions/005010/element_defs.rb +6 -8
- data/lib/stupidedi/versions/common/element_types/r.rb +3 -1
- metadata +11 -3
@@ -196,7 +196,7 @@ module Stupidedi
|
|
196
196
|
b::Segment(2310, s::HI, "Principal Diagnosis",
|
197
197
|
r::Required, d::RepeatCount.bounded(1),
|
198
198
|
b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
|
199
|
-
b::Element(e::Required, "Code List Qualifier", b::Values("ABK", "BK")),
|
199
|
+
b::Element(e::Required, "Code List Qualifier Code", b::Values("ABK", "BK")),
|
200
200
|
b::Element(e::Required, "Principal Diagnosis Code"),
|
201
201
|
b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
|
202
202
|
b::Element(e::NotUsed, "Date Time Period"),
|
@@ -219,7 +219,7 @@ module Stupidedi
|
|
219
219
|
b::Segment(2310, s::HI, "Admitting Diagnosis",
|
220
220
|
r::Situational, d::RepeatCount.bounded(1),
|
221
221
|
b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
|
222
|
-
b::Element(e::Required, "Code List Qualifier", b::Values("ABJ", "BJ")),
|
222
|
+
b::Element(e::Required, "Code List Qualifier Code", b::Values("ABJ", "BJ")),
|
223
223
|
b::Element(e::Required, "Admitting Diagnosis Code"),
|
224
224
|
b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
|
225
225
|
b::Element(e::NotUsed, "Date Time Period"),
|
@@ -242,7 +242,7 @@ module Stupidedi
|
|
242
242
|
b::Segment(2310, s::HI, "Patient's Reason For Visit",
|
243
243
|
r::Situational, d::RepeatCount.bounded(1),
|
244
244
|
b::Element(e::Required, "HEALTH CARE CODE INFORMATION",
|
245
|
-
b::Element(e::Required, "Code List Qualifier", b::Values("APR", "PR")),
|
245
|
+
b::Element(e::Required, "Code List Qualifier Code", b::Values("APR", "PR")),
|
246
246
|
b::Element(e::Required, "Patient Reason For Visit"),
|
247
247
|
b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
|
248
248
|
b::Element(e::NotUsed, "Date Time Period"),
|
@@ -252,7 +252,7 @@ module Stupidedi
|
|
252
252
|
b::Element(e::NotUsed, "Industry Code"),
|
253
253
|
b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
|
254
254
|
b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
|
255
|
-
b::Element(e::Required, "Code List Qualifier", b::Values("APR", "PR")),
|
255
|
+
b::Element(e::Required, "Code List Qualifier Code", b::Values("APR", "PR")),
|
256
256
|
b::Element(e::Required, "Patient Reason For Visit"),
|
257
257
|
b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
|
258
258
|
b::Element(e::NotUsed, "Date Time Period"),
|
@@ -262,7 +262,7 @@ module Stupidedi
|
|
262
262
|
b::Element(e::NotUsed, "Industry Code"),
|
263
263
|
b::Element(e::NotUsed, "Yes/No Condition or Response Code")),
|
264
264
|
b::Element(e::Situational, "HEALTH CARE CODE INFORMATION",
|
265
|
-
b::Element(e::Required, "Code List Qualifier", b::Values("APR", "PR")),
|
265
|
+
b::Element(e::Required, "Code List Qualifier Code", b::Values("APR", "PR")),
|
266
266
|
b::Element(e::Required, "Patient Reason For Visit"),
|
267
267
|
b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
|
268
268
|
b::Element(e::NotUsed, "Date Time Period"),
|
@@ -657,7 +657,7 @@ module Stupidedi
|
|
657
657
|
|
658
658
|
d::LoopDef.build("2115D DEPENDENT ELIGIBILITY OR BENEFIT ADDITIONAL INFORMATION", d::RepeatCount.bounded(10),
|
659
659
|
b::Segment(2600, s::III, "Dependent Eligibility or Benefit Additional Information", r::Situational, d::RepeatCount.bounded(1),
|
660
|
-
b::Element(e::Situational, "Code List Qualifier", b::Values("GR", "NI", "ZZ")),
|
660
|
+
b::Element(e::Situational, "Code List Qualifier Code", b::Values("GR", "NI", "ZZ")),
|
661
661
|
b::Element(e::Situational, "Industry Code"),
|
662
662
|
b::Element(e::Situational, "Code Category", b::Values("44")),
|
663
663
|
b::Element(e::Situational, "Injured Body Part Name"),
|
@@ -500,7 +500,7 @@ module Stupidedi
|
|
500
500
|
b::Element(e::Situational, "Diagnosis Code Pointer"),
|
501
501
|
b::Element(e::Situational, "Diagnosis Code Pointer"))),
|
502
502
|
b::Segment(1700, s::III, "Dependent Eligibility or Benefit Additional Inquiry Information", r::Situational, d::RepeatCount.bounded(1),
|
503
|
-
b::Element(e::Required, "Code List Qualifier", b::Values("ZZ")),
|
503
|
+
b::Element(e::Required, "Code List Qualifier Code", b::Values("ZZ")),
|
504
504
|
b::Element(e::Required, "Industry Code"),
|
505
505
|
b::Element(e::NotUsed, "Code Category"),
|
506
506
|
b::Element(e::NotUsed, "Free-form Message Text"),
|
@@ -668,7 +668,7 @@ module Stupidedi
|
|
668
668
|
|
669
669
|
d::LoopDef.build("2115D DEPENDENT ELIGIBILITY OR BENEFIT ADDITIONAL INFORMATION", d::RepeatCount.unbounded,
|
670
670
|
b::Segment(2600, s::III, "Dependent Eligibility or Benefit Additional Information", r::Situational, d::RepeatCount.bounded(1),
|
671
|
-
b::Element(e::Situational, "Code List Qualifier", b::Values("GR", "NI", "ZZ")),
|
671
|
+
b::Element(e::Situational, "Code List Qualifier Code", b::Values("GR", "NI", "ZZ")),
|
672
672
|
b::Element(e::Situational, "Industry Code"),
|
673
673
|
b::Element(e::Situational, "Code Category", b::Values("44")),
|
674
674
|
b::Element(e::Situational, "Injured Body Part Name"),
|
@@ -146,7 +146,7 @@ module Stupidedi
|
|
146
146
|
b::Segment(1000, s::DMG, "Subscriber Demographic Information", r::Situational, d::RepeatCount.bounded(1),
|
147
147
|
b::Element(e::Situational, "Date Time Period Format Qualifier"),
|
148
148
|
b::Element(e::Situational, "Subscriber Birth Date"),
|
149
|
-
b::Element(e::Situational, "Subscriber Gender Code", b::Values("F", "M")),
|
149
|
+
b::Element(e::Situational, "Subscriber Gender Code", b::Values("F", "M", "U")),
|
150
150
|
b::Element(e::NotUsed, "Marital Status Code"),
|
151
151
|
b::Element(e::NotUsed, "COMPOSITE RACE OR ETHNICITY INFORMATION"),
|
152
152
|
b::Element(e::NotUsed, "Citizenship Status Code"),
|
@@ -500,7 +500,7 @@ module Stupidedi
|
|
500
500
|
b::Element(e::Situational, "Diagnosis Code Pointer"),
|
501
501
|
b::Element(e::Situational, "Diagnosis Code Pointer"))),
|
502
502
|
b::Segment(1700, s::III, "Dependent Eligibility or Benefit Additional Inquiry Information", r::Situational, d::RepeatCount.bounded(1),
|
503
|
-
b::Element(e::Required, "Code List Qualifier", b::Values("ZZ")),
|
503
|
+
b::Element(e::Required, "Code List Qualifier Code", b::Values("ZZ")),
|
504
504
|
b::Element(e::Required, "Industry Code"),
|
505
505
|
b::Element(e::NotUsed, "Code Category"),
|
506
506
|
b::Element(e::NotUsed, "Free-form Message Text"),
|
data/lib/stupidedi/version.rb
CHANGED
@@ -2664,7 +2664,9 @@ module Stupidedi
|
|
2664
2664
|
E301 = t::ID.new(:E301 , "Car Type Code" , 1, 4)
|
2665
2665
|
E305 = t::ID.new(:E305, "Transaction Handling Code" , 1, 1,
|
2666
2666
|
s::CodeList.build(
|
2667
|
-
"I" => "Remittance Information Only"
|
2667
|
+
"I" => "Remittance Information Only",
|
2668
|
+
"C" => "Payment Accompanies Remittance Advice",
|
2669
|
+
"X" => "Make Payment and Send Remittance Advice"))
|
2668
2670
|
E306 = t::ID.new(:E306 , "Action Code" , 1, 2,
|
2669
2671
|
s::CodeList.build(
|
2670
2672
|
"0" => "Authorize",
|
@@ -4704,7 +4706,8 @@ module Stupidedi
|
|
4704
4706
|
"ZZ" => "Mutually Defined"))
|
4705
4707
|
E591 = t::ID.new(:E591, "Payment Method Code" , 3, 3,
|
4706
4708
|
s::CodeList.build(
|
4707
|
-
"PBC" => "Pay by Check"
|
4709
|
+
"PBC" => "Pay by Check",
|
4710
|
+
"ZZZ" => "Mutually Defined"))
|
4708
4711
|
E595 = t::ID.new(:E595 , "Compartment ID Code" , 1, 1,
|
4709
4712
|
s::CodeList.build(
|
4710
4713
|
"1" => "Brake End",
|
@@ -30,7 +30,7 @@ module Stupidedi
|
|
30
30
|
"RC" => "Refrigerated (Reefer) Car",
|
31
31
|
"RT" => "Controlled Temperature Trailer (Reefer)",
|
32
32
|
"SU" => "Supplier/Manufacturer",
|
33
|
-
"TF" => "Trailer,
|
33
|
+
"TF" => "Trailer, Dry Freight",
|
34
34
|
"TL" => "Trailer (not otherwise specified)",
|
35
35
|
"TV" => "Truck, Van"))
|
36
36
|
E46 = t::AN.new(:E46 , "Ex Parte" , 4, 4)
|
@@ -4045,6 +4045,8 @@ module Stupidedi
|
|
4045
4045
|
"BL" => "Brand/Label",
|
4046
4046
|
"CB" => "Buyer's Part Number",
|
4047
4047
|
"ER" => "Jurisdiction Specific Procedure and Supply Codes",
|
4048
|
+
"EN" => "European Article Number (EAN)",
|
4049
|
+
"GC" => "Grade Code",
|
4048
4050
|
"HC" => "Health Care Financing Administration Common Procedural Coding System (HCPCS) Codes",
|
4049
4051
|
"ID" => "International Classification of Diseases Clinical Modification (ICD-9-CM) - Procedure",
|
4050
4052
|
"IV" => "Home Infusion EDI Coalition (HIEC) Product/Service Code",
|
@@ -4678,6 +4680,7 @@ module Stupidedi
|
|
4678
4680
|
E310 = t::AN.new(:E310 , "Location Identifier" , 1, 30)
|
4679
4681
|
E319 = t::AN.new(:E319 , "Temperature Control" , 3, 6)
|
4680
4682
|
E324 = t::AN.new(:E324 , "Purchase Order Number" , 1, 22)
|
4683
|
+
E326 = t::AN.new(:E326 , "Request Reference Number" , 1, 45)
|
4681
4684
|
E328 = t::AN.new(:E328 , "Release Number" , 1, 30)
|
4682
4685
|
E329 = t::ID.new(:E329 , "Transaction Set Control Number" , 4, 9)
|
4683
4686
|
E330 = t:: R.new(:E330 , "Quantity Ordered" , 1, 15)
|
@@ -5411,7 +5414,9 @@ module Stupidedi
|
|
5411
5414
|
s::CodeList.build(
|
5412
5415
|
"PE" => "Price per Each",
|
5413
5416
|
"PP" => "Price per Pound",
|
5414
|
-
"UM" => "Price per Unit of Measure"
|
5417
|
+
"UM" => "Price per Unit of Measure",
|
5418
|
+
"PC" => "Price per Case",
|
5419
|
+
"ZZ" => "Mutually Defined"))
|
5415
5420
|
E640 = t::ID.new(:E640 , "Transaction Type Code" , 2, 2,
|
5416
5421
|
s::CodeList.build(
|
5417
5422
|
"01" => "Location Address Message",
|
@@ -9461,6 +9466,71 @@ module Stupidedi
|
|
9461
9466
|
s::CodeList.external("559"))
|
9462
9467
|
E1715 = t::ID.new(:E1715, "Country Subdivision Code" , 1, 3,
|
9463
9468
|
s::CodeList.external("5"))
|
9469
|
+
E1716 = t::AN.new(:E1716, "Change Order Sequence Number" , 1, 8)
|
9470
|
+
E1717 = t::ID.new(:E1717, "Allowance or Charge Indicator" , 1, 1,
|
9471
|
+
s::CodeList.build(
|
9472
|
+
"A" => "Allowance",
|
9473
|
+
"C" => "Charge",
|
9474
|
+
"N" => "No Allowance or Charge"))
|
9475
|
+
E1718 = t::ID.new(:E1718, "Allowance or Charge Indicator" , 4, 4,
|
9476
|
+
s::CodeList.build(
|
9477
|
+
"A310" => "Air Express Charge",
|
9478
|
+
"A930" => "Carrier Credit Allowance",
|
9479
|
+
"B720" => "Cooperative Advertising Allowance",
|
9480
|
+
"B820" => "Currency Adjustment",
|
9481
|
+
"B860" => "Customs Broker Fee",
|
9482
|
+
"B870" => "Customs Charge",
|
9483
|
+
"B872" => "Customs Duty",
|
9484
|
+
"B994" => "Declared Value for Customs",
|
9485
|
+
"C000" => "Defective Allowance",
|
9486
|
+
"C040" => "Delivery",
|
9487
|
+
"C260" => "Discount - Incentive",
|
9488
|
+
"C860" => "Expedited Shipments",
|
9489
|
+
"D170" => "Free Goods",
|
9490
|
+
"D240" => "Freight",
|
9491
|
+
"D360" => "Goods and Services Tax Charge",
|
9492
|
+
"D500" => "Handling",
|
9493
|
+
"D900" => "Installation",
|
9494
|
+
"E170" => "Labeling",
|
9495
|
+
"F155" => "Packaging",
|
9496
|
+
"F330" => "Pick-up and Delivery",
|
9497
|
+
"F920" => "Quantity Surcharge",
|
9498
|
+
"G740" => "Service Charge",
|
9499
|
+
"G970" => "Small Order Charge",
|
9500
|
+
"H090" => "Special Handling",
|
9501
|
+
"H151" => "Special Services",
|
9502
|
+
"H640" => "Tax - Excist Tax - Destination",
|
9503
|
+
"H740" => "Tax - Sate and Use",
|
9504
|
+
"H770" => "Tax - Sate Tax",
|
9505
|
+
"H750" => "Tax - Sales Tax",
|
9506
|
+
"H800" => "Tax - VAT",
|
9507
|
+
"I170" => "Trade Discountt",
|
9508
|
+
"ZZZZ" => "Mutually Defined"))
|
9509
|
+
E1719 = t::AN.new(:E1719, "Agency Service, Promotion, Allowance, or Charge Code", 1, 10)
|
9510
|
+
E1720 = t::ID.new(:E1720, "Allowance/Charge Percent Qualifier" , 1, 1)
|
9511
|
+
E1721 = t:: R.new(:E1721, "Rate" , 1, 10)
|
9512
|
+
E1722 = t::ID.new(:E1722, "Allowance or Charge Method of Handling Code", 2, 2)
|
9513
|
+
E1723 = t::AN.new(:E1723, "Option Number" , 1, 20)
|
9514
|
+
E1724 = t::ID.new(:E1724, "Tax Type Code" , 2, 2)
|
9515
|
+
E1725 = t::ID.new(:E1725, "Tax Jurisdiction Code Qualifier" , 2, 2)
|
9516
|
+
E1726 = t::AN.new(:E1726, "Tax Jurisdiction Code" , 1, 10)
|
9517
|
+
E1727 = t::ID.new(:E1727, "Tax Exempt Code" , 1, 1)
|
9518
|
+
E1728 = t::ID.new(:E1728, "Relationship Code" , 1, 1)
|
9519
|
+
E1729 = t:: R.new(:E1729, "Dollar Basis for Percent" , 1, 9)
|
9520
|
+
E1730 = t::AN.new(:E1730, "Tax Identification Number" , 1, 20)
|
9521
|
+
E1731 = t::AN.new(:E1731, "Assigned Identification" , 1, 20)
|
9522
|
+
E1732 = t:: R.new(:E1732, "Quantity Invoiced" , 1, 10)
|
9523
|
+
E1733 = t::ID.new(:E1733, "Terms Type Code" , 2, 2)
|
9524
|
+
E1734 = t::ID.new(:E1734, "Terms Basis Date Code" , 1, 2)
|
9525
|
+
E1735 = t::DT.new(:E1735, "Terms Discount Due Date" , 8, 8)
|
9526
|
+
E1736 = t::Nn.new(:E1736, "Terms Discount Days Due" , 1, 3, 0)
|
9527
|
+
E1737 = t::DT.new(:E1737, "Terms Net Due Date" , 8, 8)
|
9528
|
+
E1738 = t::Nn.new(:E1738, "Terms Net Days" , 1, 3, 0)
|
9529
|
+
E1739 = t::Nn.new(:E1739, "Terms Discount Amount" , 1, 10, 2)
|
9530
|
+
E1740 = t::DT.new(:E1740, "Terms Deferred Due Date" , 8, 8)
|
9531
|
+
E1741 = t::Nn.new(:E1741, "Deferred Amount Due" , 1, 10, 2)
|
9532
|
+
E1742 = t::Nn.new(:E1742, "Day of Month" , 1, 2, 0)
|
9533
|
+
E1743 = t::ID.new(:E1743, "Payment Method Code" , 1, 2)
|
9464
9534
|
C001 = Schema::CompositeElementDef.build(:C001,
|
9465
9535
|
"Composite Unit of Measure",
|
9466
9536
|
"To identify a composite unit of measure",
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Stupidedi
|
3
|
+
module Versions
|
4
|
+
module FortyTen
|
5
|
+
module SegmentDefs
|
6
|
+
s = Schema
|
7
|
+
e = ElementDefs
|
8
|
+
r = ElementReqs
|
9
|
+
|
10
|
+
ACK = s::SegmentDef.build(:ACK, "Line Item Acknowledgment", "To start acknowledgement of a line item",
|
11
|
+
e::E668 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
12
|
+
e::E380 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
13
|
+
e::E355 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
14
|
+
e::E374 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
15
|
+
e::E373 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
16
|
+
e::E326 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
17
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
18
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
19
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
20
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
21
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
22
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
23
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
24
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
25
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
26
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
27
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
28
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
29
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
30
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
31
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
32
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
33
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
34
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
35
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
36
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
37
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
38
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
39
|
+
e::E1271 .simple_use(r::Optional, s::RepeatCount.bounded(1)))
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Stupidedi
|
3
|
+
module Versions
|
4
|
+
module FortyTen
|
5
|
+
module SegmentDefs
|
6
|
+
s = Schema
|
7
|
+
e = ElementDefs
|
8
|
+
r = ElementReqs
|
9
|
+
|
10
|
+
BIG = s::SegmentDef.build(:BIG, "Beginning Segment for Invoice",
|
11
|
+
"To indicate the beginning of the Invoice Transaction Set and transmit identifying numbers and dates",
|
12
|
+
e::E32 .simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
|
13
|
+
e::E76 .simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
|
14
|
+
e::E32 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
15
|
+
e::E324 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
16
|
+
e::E328 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
17
|
+
e::E1716.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
18
|
+
e::E640 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
19
|
+
e::E353 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
20
|
+
e::E306 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
21
|
+
e::E76 .simple_use(r::Optional, s::RepeatCount.bounded(1)))
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Stupidedi
|
3
|
+
module Versions
|
4
|
+
module FortyTen
|
5
|
+
module SegmentDefs
|
6
|
+
s = Schema
|
7
|
+
e = ElementDefs
|
8
|
+
r = ElementReqs
|
9
|
+
|
10
|
+
IT1 = s::SegmentDef.build(:IT1, "Baseline Item Data (Invoice)", "Invoice Lines",
|
11
|
+
e::E1731.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
12
|
+
e::E1732.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
13
|
+
e::E355 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
14
|
+
e::E212 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
15
|
+
e::E639 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
16
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
17
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
18
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
19
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
20
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
21
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
22
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
23
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
24
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
25
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
26
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
27
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
28
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
29
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
30
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
31
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
32
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
33
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
34
|
+
e::E235 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
35
|
+
e::E234 .simple_use(r::Optional, s::RepeatCount.bounded(1)))
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Stupidedi
|
3
|
+
module Versions
|
4
|
+
module FortyTen
|
5
|
+
module SegmentDefs
|
6
|
+
s = Schema
|
7
|
+
e = ElementDefs
|
8
|
+
r = ElementReqs
|
9
|
+
|
10
|
+
ITD = s::SegmentDef.build(:ITD, "Terms of Sale/Deferred Terms of Sale", "Terms of Sale/Deferred Terms of Sale",
|
11
|
+
e::E1733.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
12
|
+
e::E1734.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
13
|
+
e::E954 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
14
|
+
e::E1735.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
15
|
+
e::E1736.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
16
|
+
e::E1737.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
17
|
+
e::E1738.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
18
|
+
e::E1739.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
19
|
+
e::E1740.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
20
|
+
e::E1741.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
21
|
+
e::E954 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
22
|
+
e::E352 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
23
|
+
e::E1742.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
24
|
+
e::E1743.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
25
|
+
e::E954 .simple_use(r::Optional, s::RepeatCount.bounded(1)))
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Stupidedi
|
3
|
+
module Versions
|
4
|
+
module FortyTen
|
5
|
+
module SegmentDefs
|
6
|
+
s = Schema
|
7
|
+
e = ElementDefs
|
8
|
+
r = ElementReqs
|
9
|
+
|
10
|
+
SAC = s::SegmentDef.build(:SAC, "Service, Promotion, Allowance, or Charge Information",
|
11
|
+
"To indicate the header charge information",
|
12
|
+
e::E1717.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
13
|
+
e::E1718.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
14
|
+
e::E559 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
15
|
+
e::E1719.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
16
|
+
e::E782 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
17
|
+
e::E1720.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
18
|
+
e::E954 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
19
|
+
e::E1721.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
20
|
+
e::E355 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
21
|
+
e::E380 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
22
|
+
e::E380 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
23
|
+
e::E1722.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
24
|
+
e::E127 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
25
|
+
e::E1723.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
26
|
+
e::E352 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
27
|
+
e::E819 .simple_use(r::Optional, s::RepeatCount.bounded(1)))
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Stupidedi
|
3
|
+
module Versions
|
4
|
+
module FortyTen
|
5
|
+
module SegmentDefs
|
6
|
+
s = Schema
|
7
|
+
e = ElementDefs
|
8
|
+
r = ElementReqs
|
9
|
+
|
10
|
+
TDS = s::SegmentDef.build(:TDS, "Total Monetary Value Summary", "Total Monetary Value Summary",
|
11
|
+
e::E610.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
12
|
+
e::E610.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
13
|
+
e::E610.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
14
|
+
e::E610.simple_use(r::Optional, s::RepeatCount.bounded(1)))
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Stupidedi
|
3
|
+
module Versions
|
4
|
+
module FortyTen
|
5
|
+
module SegmentDefs
|
6
|
+
s = Schema
|
7
|
+
e = ElementDefs
|
8
|
+
r = ElementReqs
|
9
|
+
|
10
|
+
TXI = s::SegmentDef.build(:TXI, "Tax Information", "Tax Information",
|
11
|
+
e::E1724.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
12
|
+
e::E782 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
13
|
+
e::E954 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
14
|
+
e::E1725.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
15
|
+
e::E1726.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
16
|
+
e::E1727.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
17
|
+
e::E1728.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
18
|
+
e::E1729.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
19
|
+
e::E1730.simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
20
|
+
e::E1731.simple_use(r::Optional, s::RepeatCount.bounded(1)))
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -3,6 +3,7 @@ module Stupidedi
|
|
3
3
|
module Versions
|
4
4
|
module FortyTen
|
5
5
|
module SegmentDefs
|
6
|
+
autoload :ACK, "stupidedi/versions/004010/segment_defs/ACK"
|
6
7
|
autoload :AK1, "stupidedi/versions/004010/segment_defs/AK1"
|
7
8
|
autoload :AK2, "stupidedi/versions/004010/segment_defs/AK2"
|
8
9
|
autoload :AK3, "stupidedi/versions/004010/segment_defs/AK3"
|
@@ -20,6 +21,12 @@ module Stupidedi
|
|
20
21
|
autoload :BAK, "stupidedi/versions/004010/segment_defs/BAK"
|
21
22
|
autoload :BCT, "stupidedi/versions/004010/segment_defs/BCT"
|
22
23
|
autoload :BEG, "stupidedi/versions/004010/segment_defs/BEG"
|
24
|
+
autoload :BIG, "stupidedi/versions/004010/segment_defs/BIG"
|
25
|
+
autoload :ITD, "stupidedi/versions/004010/segment_defs/ITD"
|
26
|
+
autoload :IT1, "stupidedi/versions/004010/segment_defs/IT1"
|
27
|
+
autoload :TXI, "stupidedi/versions/004010/segment_defs/TXI"
|
28
|
+
autoload :TDS, "stupidedi/versions/004010/segment_defs/TDS"
|
29
|
+
autoload :SAC, "stupidedi/versions/004010/segment_defs/SAC"
|
23
30
|
autoload :BFR, "stupidedi/versions/004010/segment_defs/BFR"
|
24
31
|
autoload :BPR, "stupidedi/versions/004010/segment_defs/BPR"
|
25
32
|
autoload :BSN, "stupidedi/versions/004010/segment_defs/BSN"
|
@@ -239,7 +239,6 @@ module Stupidedi
|
|
239
239
|
"DN" => "Referring Provider",
|
240
240
|
"DQ" => "Supervising Physician",
|
241
241
|
"DO" => "Dependent Name",
|
242
|
-
"DQ" => "Supervising Physician",
|
243
242
|
# RESTART HERE
|
244
243
|
"E1" => "Person or Other Entity Legally Responsible for a Child",
|
245
244
|
"E2" => "Person or Other Entity With Whom a Child Resides",
|
@@ -261,7 +260,6 @@ module Stupidedi
|
|
261
260
|
"GK" => "Previous Insured",
|
262
261
|
"GM" => "Spouse Insured",
|
263
262
|
"GP" => "Gateway Provider",
|
264
|
-
"GD" => "Guardian",
|
265
263
|
"GW" => "Group",
|
266
264
|
"GY" => "Treatment Facility",
|
267
265
|
"HF" => "Healthcare Professional Shortage Area (HPSA) Facility",
|
@@ -316,13 +314,11 @@ module Stupidedi
|
|
316
314
|
"QY" => "Medical Doctor",
|
317
315
|
"R3" => "Next Scheduled Destination",
|
318
316
|
"RC" => "Receiving Location",
|
319
|
-
"RW" => "Rural Health Clinic",
|
320
317
|
"S1" => "Parent",
|
321
318
|
"S3" => "Custodial Parent",
|
322
|
-
"S4" => "Skilled Nursing Facility",
|
323
319
|
"SEP" => "Secondary Payer",
|
324
320
|
"SJ" => "Service Provider",
|
325
|
-
"SU" => "
|
321
|
+
"SU" => "Supplier/Manufacturer",
|
326
322
|
# Used to identify the geographic location where a patient is transferred or diverted
|
327
323
|
"T4" => "Transfer Point",
|
328
324
|
"TL" => "Testing Laboratory",
|
@@ -2182,7 +2178,7 @@ module Stupidedi
|
|
2182
2178
|
"24" => "Dependent of a Minor Dependent",
|
2183
2179
|
"25" => "Ex-spouse",
|
2184
2180
|
"26" => "Guardian",
|
2185
|
-
"29" => "
|
2181
|
+
"29" => "Significant Other",
|
2186
2182
|
"31" => "Court Appointed Guardian",
|
2187
2183
|
"32" => "Mother",
|
2188
2184
|
"33" => "Father",
|
@@ -2213,7 +2209,7 @@ module Stupidedi
|
|
2213
2209
|
"14" => "Medicare Secondary, No-fault Insurance including Auto is Primary",
|
2214
2210
|
"15" => "Medicare Secondary Worker's Compensation",
|
2215
2211
|
"16" => "Medicare Secondary Public Health Service (PHS) or Other Federal Agency",
|
2216
|
-
"41" => "Medicare Secondary
|
2212
|
+
"41" => "Medicare Secondary Black Lung",
|
2217
2213
|
"42" => "Medicare Secondary Veteran's Administration",
|
2218
2214
|
"43" => "Medicare Secondary Disabled Beneficiary Under Age 65 with Large Group Health Plan (LGHP)",
|
2219
2215
|
"44" => "Nature of Injury",
|
@@ -2353,6 +2349,8 @@ module Stupidedi
|
|
2353
2349
|
E1204 = t::AN.new(:E1204, "Plan Coverage Description" , 1, 50)
|
2354
2350
|
E1205 = t::ID.new(:E1205, "Insurance Line Code" , 2, 3,
|
2355
2351
|
s::CodeList.build(
|
2352
|
+
"AC" => "Basic Life",
|
2353
|
+
"ADD" => "Accidental Death and Dismemberment",
|
2356
2354
|
"AG" => "Preventative Care/Wellness",
|
2357
2355
|
"AH" => "24 Hour Care",
|
2358
2356
|
"AJ" => "Medicare Risk",
|
@@ -2773,7 +2771,7 @@ module Stupidedi
|
|
2773
2771
|
"14" => "Medicare Secondary, No-fault Insurance including Auto is Primary",
|
2774
2772
|
"15" => "Medicare Secondary Worker's Compensation",
|
2775
2773
|
"16" => "Medicare Secondary Public Health Service (PHS) or Other Federal Agency",
|
2776
|
-
"41" => "Medicare Secondary
|
2774
|
+
"41" => "Medicare Secondary Black Lung",
|
2777
2775
|
"42" => "Medicare Secondary Veteran's Administration",
|
2778
2776
|
"43" => "Medicare Secondary Disabled Beneficiary Under Age 65 with Large Group Health Plan (LGHP)",
|
2779
2777
|
"47" => "Medicare Secondary, Other Liability Insurance is Primary",
|
@@ -284,7 +284,9 @@ module Stupidedi
|
|
284
284
|
if rounded.zero?
|
285
285
|
"0" * definition.min_length
|
286
286
|
else
|
287
|
-
|
287
|
+
base = rounded.abs
|
288
|
+
base = base.is_a?(BigDecimal) ? base : BigDecimal(base)
|
289
|
+
sign + base.to_s("F").
|
288
290
|
gsub(/^0+/, ""). # leading zeros
|
289
291
|
gsub(/0+$/, ""). # trailing zeros
|
290
292
|
gsub(/\.$/, ""). # trailing decimal point
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stupidedi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kyle Putnam
|
@@ -253,6 +253,7 @@ files:
|
|
253
253
|
- lib/stupidedi/transaction_sets/004010/implementations/FA997.rb
|
254
254
|
- lib/stupidedi/transaction_sets/004010/implementations/GF990.rb
|
255
255
|
- lib/stupidedi/transaction_sets/004010/implementations/IM210.rb
|
256
|
+
- lib/stupidedi/transaction_sets/004010/implementations/IN810.rb
|
256
257
|
- lib/stupidedi/transaction_sets/004010/implementations/OW940.rb
|
257
258
|
- lib/stupidedi/transaction_sets/004010/implementations/PO850.rb
|
258
259
|
- lib/stupidedi/transaction_sets/004010/implementations/PS830.rb
|
@@ -270,6 +271,7 @@ files:
|
|
270
271
|
- lib/stupidedi/transaction_sets/004010/standards/GF990.rb
|
271
272
|
- lib/stupidedi/transaction_sets/004010/standards/HP835.rb
|
272
273
|
- lib/stupidedi/transaction_sets/004010/standards/IM210.rb
|
274
|
+
- lib/stupidedi/transaction_sets/004010/standards/IN810.rb
|
273
275
|
- lib/stupidedi/transaction_sets/004010/standards/OW940.rb
|
274
276
|
- lib/stupidedi/transaction_sets/004010/standards/PO850.rb
|
275
277
|
- lib/stupidedi/transaction_sets/004010/standards/PR855.rb
|
@@ -748,6 +750,7 @@ files:
|
|
748
750
|
- lib/stupidedi/versions/004010/element_types/tm.rb
|
749
751
|
- lib/stupidedi/versions/004010/functional_group_def.rb
|
750
752
|
- lib/stupidedi/versions/004010/segment_defs.rb
|
753
|
+
- lib/stupidedi/versions/004010/segment_defs/ACK.rb
|
751
754
|
- lib/stupidedi/versions/004010/segment_defs/AK1.rb
|
752
755
|
- lib/stupidedi/versions/004010/segment_defs/AK2.rb
|
753
756
|
- lib/stupidedi/versions/004010/segment_defs/AK3.rb
|
@@ -766,6 +769,7 @@ files:
|
|
766
769
|
- lib/stupidedi/versions/004010/segment_defs/BCT.rb
|
767
770
|
- lib/stupidedi/versions/004010/segment_defs/BEG.rb
|
768
771
|
- lib/stupidedi/versions/004010/segment_defs/BFR.rb
|
772
|
+
- lib/stupidedi/versions/004010/segment_defs/BIG.rb
|
769
773
|
- lib/stupidedi/versions/004010/segment_defs/BPR.rb
|
770
774
|
- lib/stupidedi/versions/004010/segment_defs/BSN.rb
|
771
775
|
- lib/stupidedi/versions/004010/segment_defs/BSS.rb
|
@@ -784,6 +788,8 @@ files:
|
|
784
788
|
- lib/stupidedi/versions/004010/segment_defs/GS.rb
|
785
789
|
- lib/stupidedi/versions/004010/segment_defs/H3.rb
|
786
790
|
- lib/stupidedi/versions/004010/segment_defs/HL.rb
|
791
|
+
- lib/stupidedi/versions/004010/segment_defs/IT1.rb
|
792
|
+
- lib/stupidedi/versions/004010/segment_defs/ITD.rb
|
787
793
|
- lib/stupidedi/versions/004010/segment_defs/JIT.rb
|
788
794
|
- lib/stupidedi/versions/004010/segment_defs/K1.rb
|
789
795
|
- lib/stupidedi/versions/004010/segment_defs/L0.rb
|
@@ -829,6 +835,7 @@ files:
|
|
829
835
|
- lib/stupidedi/versions/004010/segment_defs/R3.rb
|
830
836
|
- lib/stupidedi/versions/004010/segment_defs/REF.rb
|
831
837
|
- lib/stupidedi/versions/004010/segment_defs/S5.rb
|
838
|
+
- lib/stupidedi/versions/004010/segment_defs/SAC.rb
|
832
839
|
- lib/stupidedi/versions/004010/segment_defs/SCH.rb
|
833
840
|
- lib/stupidedi/versions/004010/segment_defs/SDP.rb
|
834
841
|
- lib/stupidedi/versions/004010/segment_defs/SE.rb
|
@@ -840,9 +847,11 @@ files:
|
|
840
847
|
- lib/stupidedi/versions/004010/segment_defs/TD3.rb
|
841
848
|
- lib/stupidedi/versions/004010/segment_defs/TD4.rb
|
842
849
|
- lib/stupidedi/versions/004010/segment_defs/TD5.rb
|
850
|
+
- lib/stupidedi/versions/004010/segment_defs/TDS.rb
|
843
851
|
- lib/stupidedi/versions/004010/segment_defs/TRN.rb
|
844
852
|
- lib/stupidedi/versions/004010/segment_defs/TS2.rb
|
845
853
|
- lib/stupidedi/versions/004010/segment_defs/TS3.rb
|
854
|
+
- lib/stupidedi/versions/004010/segment_defs/TXI.rb
|
846
855
|
- lib/stupidedi/versions/004010/segment_defs/UIT.rb
|
847
856
|
- lib/stupidedi/versions/004010/segment_defs/W01.rb
|
848
857
|
- lib/stupidedi/versions/004010/segment_defs/W03.rb
|
@@ -1063,8 +1072,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1063
1072
|
- !ruby/object:Gem::Version
|
1064
1073
|
version: '0'
|
1065
1074
|
requirements: []
|
1066
|
-
|
1067
|
-
rubygems_version: 2.7.8
|
1075
|
+
rubygems_version: 3.4.6
|
1068
1076
|
signing_key:
|
1069
1077
|
specification_version: 4
|
1070
1078
|
summary: Parse, generate, validate ASC X12 EDI
|