X12 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/CHANGELOG +13 -0
  2. data/COPYING +502 -0
  3. data/README +309 -0
  4. data/Rakefile +157 -0
  5. data/TODO +6 -0
  6. data/doc/classes/X12.html +174 -0
  7. data/doc/classes/X12/Base.html +677 -0
  8. data/doc/classes/X12/Composite.html +156 -0
  9. data/doc/classes/X12/Empty.html +186 -0
  10. data/doc/classes/X12/Field.html +339 -0
  11. data/doc/classes/X12/Loop.html +202 -0
  12. data/doc/classes/X12/Parser.html +306 -0
  13. data/doc/classes/X12/Segment.html +277 -0
  14. data/doc/classes/X12/Table.html +198 -0
  15. data/doc/created.rid +1 -0
  16. data/doc/files/CHANGELOG.html +108 -0
  17. data/doc/files/README.html +474 -0
  18. data/doc/files/TODO.html +95 -0
  19. data/doc/files/lib/X12/Base_rb.html +83 -0
  20. data/doc/files/lib/X12/Composite_rb.html +83 -0
  21. data/doc/files/lib/X12/Empty_rb.html +83 -0
  22. data/doc/files/lib/X12/Field_rb.html +83 -0
  23. data/doc/files/lib/X12/Loop_rb.html +83 -0
  24. data/doc/files/lib/X12/Parser_rb.html +83 -0
  25. data/doc/files/lib/X12/Segment_rb.html +83 -0
  26. data/doc/files/lib/X12/Table_rb.html +83 -0
  27. data/doc/files/lib/X12_rb.html +100 -0
  28. data/doc/fr_class_index.html +35 -0
  29. data/doc/fr_file_index.html +38 -0
  30. data/doc/fr_method_index.html +62 -0
  31. data/doc/index.html +27 -0
  32. data/doc/rdoc-style.css +208 -0
  33. data/example/factory.rb +92 -0
  34. data/example/parse.rb +56 -0
  35. data/lib/X12.rb +50 -0
  36. data/lib/X12/Base.rb +192 -0
  37. data/lib/X12/Composite.rb +37 -0
  38. data/lib/X12/Empty.rb +43 -0
  39. data/lib/X12/Field.rb +81 -0
  40. data/lib/X12/Loop.rb +74 -0
  41. data/lib/X12/Parser.rb +98 -0
  42. data/lib/X12/Segment.rb +92 -0
  43. data/lib/X12/Table.rb +44 -0
  44. data/lib/X12/x12syntax.treetop +256 -0
  45. data/misc/997.d12 +885 -0
  46. data/misc/rdoc_template.rb +697 -0
  47. data/test/tc_factory_997.rb +130 -0
  48. data/test/tc_parse_997.rb +146 -0
  49. data/test/ts_x12.rb +27 -0
  50. metadata +108 -0
@@ -0,0 +1,256 @@
1
+ module X12
2
+
3
+ grammar X12syntax
4
+
5
+ # $Id: x12syntax.treetop 36 2008-11-13 18:36:36Z ikk $
6
+ # This is a syntax definition for the X12-syntax files.
7
+
8
+ rule x12syntax
9
+ (table / segment / composite / loop )+
10
+ {
11
+ def get
12
+ elements.inject({}){|s, i|
13
+ if i.nonterminal?
14
+ r = i.get
15
+ s[r.class] ||= {}
16
+ s[r.class][r.name]=r
17
+ end
18
+ s
19
+ }
20
+ end
21
+ }
22
+ end
23
+
24
+ # LOOP
25
+
26
+ rule loop
27
+ space? 'loop' space loop_name space repeat space? '{' space? loop_components space? '}' space?
28
+ {
29
+ def get
30
+ Loop.new(loop_name.text_value, loop_components.get, repeat.get)
31
+ end
32
+ }
33
+ end
34
+
35
+ rule loop_components
36
+ loop_component+
37
+ {
38
+ def get
39
+ elements.map{|i| i.get}
40
+ end
41
+ }
42
+ end
43
+
44
+ rule loop_component
45
+ loop_segment / loop
46
+ end
47
+
48
+ rule loop_segment
49
+ space? 'segment' space identifier space repeat space? '{' space? fields space? '}'
50
+ {
51
+ def get
52
+ Segment.new(identifier.text_value, fields.get, repeat.get)
53
+ end
54
+ }
55
+ /
56
+ space? 'segment' space identifier space repeat space?
57
+ {
58
+ def get
59
+ Segment.new(identifier.text_value, [], repeat.get)
60
+ end
61
+ }
62
+ end
63
+
64
+ # COMPOSITE
65
+ rule composite
66
+ space? 'composite' space composite_name space? '{' space? fields space? '}' space?
67
+ {
68
+ def get
69
+ Composite.new(composite_name.text_value, fields.get)
70
+ end
71
+ }
72
+ end
73
+
74
+ # SEGMENT
75
+
76
+ rule segment
77
+ space? 'segment' space identifier space? '{' space? fields space? '}' space?
78
+ {
79
+ def get
80
+ Segment.new(identifier.text_value, fields.get)
81
+ end
82
+ }
83
+ end
84
+
85
+ rule fields
86
+ field+
87
+ {
88
+ def get
89
+ elements.map{|i| i.get}
90
+ end
91
+ }
92
+ end
93
+
94
+ rule field
95
+ space? field_name space field_type space field_required space field_min_length '-' field_max_length field_validation space?
96
+ {
97
+ def get
98
+ #elements.each{|i| puts "*** [#{i.text_value}] #{i.inspect}"}
99
+ Field.new(*[field_name.text_value,
100
+ field_type.text_value,
101
+ field_required.text_value,
102
+ field_min_length.text_value,
103
+ field_max_length.text_value,
104
+ field_validation.get,
105
+ ])
106
+ end
107
+ }
108
+ end
109
+
110
+ rule field_name
111
+ identifier
112
+ end
113
+
114
+ rule field_type
115
+ 'I' / 'S' / composite_name / constant
116
+ end
117
+
118
+ rule composite_name
119
+ 'C' numeric_char+
120
+ end
121
+
122
+ rule field_required
123
+ 'R' / 'O'
124
+ end
125
+
126
+ rule field_min_length
127
+ numeric_char+
128
+ end
129
+
130
+ rule field_max_length
131
+ numeric_char+
132
+ end
133
+
134
+ rule field_validation
135
+ [ ]+ identifier
136
+ {
137
+ def get
138
+ identifier.text_value
139
+ end
140
+ }
141
+ / space
142
+ {
143
+ def get
144
+ nil
145
+ end
146
+ }
147
+ end
148
+
149
+ # TABLE
150
+
151
+ rule table
152
+ space? 'table' space identifier space? '{' space? name_value_lines space? '}' space?
153
+ {
154
+ def get
155
+ Table.new(identifier.text_value, name_value_lines.get)
156
+ end
157
+ }
158
+ end
159
+
160
+ rule name_value_lines
161
+ name_value_line+
162
+ {
163
+ def get
164
+ elements.inject({}){|s, i| s[i.get_name] = i.get_value; s}
165
+ end
166
+ }
167
+ end
168
+
169
+ rule name_value_line
170
+ space? name space value
171
+ {
172
+ def get_name
173
+ name.text_value
174
+ end
175
+ def get_value
176
+ value.text_value
177
+ end
178
+ }
179
+ end
180
+
181
+ rule name
182
+ alphanumeric_char+
183
+ end
184
+
185
+ rule value
186
+ [^\r\n]+
187
+ end
188
+
189
+ rule repeat
190
+ min_required ':' max_allowed
191
+ {
192
+ def get
193
+ Range.new(min_required.text_value.to_i, max_allowed.text_value.to_i)
194
+ end
195
+ }
196
+ end
197
+
198
+ rule min_required
199
+ numeric_char+
200
+ end
201
+
202
+ rule max_allowed
203
+ numeric_char+
204
+ end
205
+
206
+ rule loop_name
207
+ alphanumeric_char+
208
+ end
209
+
210
+ # UTILITY
211
+
212
+ rule constant
213
+ '"' [^"]* '"'
214
+ end
215
+
216
+ rule identifier
217
+ alpha_char alphanumeric_char*
218
+ end
219
+
220
+ rule non_space_char
221
+ !space .
222
+ end
223
+
224
+ rule alpha_char
225
+ [A-Za-z_]
226
+ end
227
+
228
+ rule alphanumeric_char
229
+ alpha_char / numeric_char
230
+ end
231
+
232
+ rule numeric_char
233
+ [0-9]
234
+ end
235
+
236
+ rule space
237
+ (white / comment_c_style / comment_to_eol)+
238
+ end
239
+
240
+ rule comment_c_style
241
+ '/*' (!'*/' . )* '*/'
242
+ end
243
+
244
+ rule comment_to_eol
245
+ '#' (!"\n" .)+
246
+ end
247
+
248
+ rule white
249
+ [ \t\n\r]
250
+ end
251
+
252
+ rule eol
253
+ "\n" / "\r"
254
+ end
255
+ end
256
+ end
@@ -0,0 +1,885 @@
1
+ /*
2
+ This file is part of the X12Parser library that provides tools to
3
+ manipulate X12 messages using Ruby native syntax.
4
+
5
+ http://x12parser.rubyforge.org
6
+
7
+ Copyright (C) 2008 APP Design, Inc.
8
+
9
+ This library is free software; you can redistribute it and/or
10
+ modify it under the terms of the GNU Lesser General Public
11
+ License as published by the Free Software Foundation; either
12
+ version 2.1 of the License, or (at your option) any later version.
13
+
14
+ This library is distributed in the hope that it will be useful,
15
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
16
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17
+ Lesser General Public License for more details.
18
+
19
+ You should have received a copy of the GNU Lesser General Public
20
+ License along with this library; if not, write to the Free Software
21
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
22
+
23
+ $Id: 997.d12 36 2008-11-13 18:36:36Z ikk $
24
+
25
+ */
26
+ table TblI01 {
27
+ 00 No Authorization Information Present (No Meaningful Information in I02)
28
+ 01 UCS Communications ID
29
+ 02 EDX Communications ID
30
+ 03 Additional Data Identification
31
+ 04 Rail Communications ID
32
+ 05 Department of Defense (DoD) Communication Identifier
33
+ 06 United States Federal Government Communication Identifier
34
+ } # TblI01
35
+
36
+ table TblI03 {
37
+ 00 No Security Information Present (No Meaningful Information in I04)
38
+ 01 Password
39
+ } # TblI01
40
+
41
+ table TblI05 {
42
+ 01 Duns (Dun & Bradstreet)
43
+ 02 SCAC (Standard Carrier Alpha Code)
44
+ 03 FMC (Federal Maritime Commission)
45
+ 04 IATA (International Air Transport Association)
46
+ 08 UCC EDI Communications ID (Comm ID)
47
+ 09 X.121 (CCITT)
48
+ 10 Department of Defense (DoD) Activity Address Code
49
+ 11 DEA (Drug Enforcement Administration)
50
+ 12 Phone (Telephone Companies)
51
+ 13 UCS Code (The UCS Code is a Code Used for UCS Transmissions; it includes the Area Code and Telephone Number of a Modem; it Does Not Include Punctuation, Blanks or Access Code)
52
+ 14 Duns Plus Suffix
53
+ 15 Petroleum Accountants Society of Canada Company Code
54
+ 16 Duns Number With 4-Character Suffix
55
+ 17 American Bankers Association (ABA) Transit Routing Number (Including Check Digit, 9 Digit)
56
+ 18 Association of American Railroads (AAR) Standard Distribution Code
57
+ 19 EDI Council of Australia (EDICA) Communications ID Number (COMM ID)
58
+ 20 Health Industry Number (HIN)
59
+ 21 Integrated Postsecondary Education Data System, or (IPEDS)
60
+ 22 Federal Interagency Commission on Education, or FICE
61
+ 23 National Center for Education Statistics Common Core of Data 12-Digit Number for Pre-K-Grade 12 Institutes, or NCES
62
+ 24 The College Board's Admission Testing Program 4-Digit Code of Postsecondary Institutes, or ATP
63
+ 25 American College Testing Program 4-Digit Code of Postsecondary Institutions, or ACT
64
+ 26 Statistics of Canada List of Postsecondary Institutions
65
+ 27 Carrier Identification Number as assigned by Health Care Financing Administration (HCFA)
66
+ 28 Fiscal Intermediary Identification Number as assigned by Health Care Financing Administration (HCFA)
67
+ 29 Medicare Provider and Supplier Identification Number as assigned by Health Care Financing Administration (HCFA)
68
+ 30 U.S. Federal Tax Identification Number
69
+ 31 Jurisdiction Identification Number Plus 4 as assigned by the International Association of Industrial Accident Boards and Commissions (IAIABC)
70
+ 32 U.S. Federal Employer Identification Number (FEIN)
71
+ 33 National Association of Insurance Commissioners Company Code (NAIC)
72
+ 34 Medicaid Provider and Supplier Identification Number as assigned by individual State Medicaid Agencies in conjunction with Health Care Financing Administration (HCFA)
73
+ 35 Statistics Canada Canadian College Student Information System Institution Codes
74
+ 36 Statistics Canada University Student Information System Institution Codes
75
+ 37 Society of Property Information Compilers and Analysts
76
+ AM Association Mexicana del Codigo de Producto (AMECOP) Communication ID
77
+ NR National Retail Merchants Association (NRMA) - Assigned
78
+ SN Standard Address Number
79
+ ZZ Mutually Defined
80
+ } # TblI05
81
+
82
+ table TblI10 {
83
+ U U.S. EDI Community of ASC X12, TDCC, and UCS
84
+ } # TblI10
85
+
86
+ table TblI11 {
87
+ 00200 Standard Issued as ANSI X12.5-1987
88
+ 00201 Draft Standard for Trial Use Approved by ASC X12 Through August 1988
89
+ 00204 Draft Standard for Trial Use Approved by ASC X12 Through May 1989
90
+ 00300 Standard Issued as ANSI X12.5-1992
91
+ 00301 Draft Standard for Trial Use Approved for Publication by ASC X12 Procedures Review Board Through October 1990
92
+ 00302 Draft Standard for Trial Use Approved for Publication by ASC X12 Procedures Review Board Through October 1991
93
+ 00303 Draft Standard for Trial Use Approved for Publication by ASC X12 Procedures Review Board Through October 1992
94
+ 00304 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1993
95
+ 00305 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1994
96
+ 00306 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1995
97
+ 00307 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1996
98
+ 00400 Standard Issued as ANSI X12.5-1997
99
+ 00401 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1997
100
+ 00402 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1998
101
+ } # TblI11
102
+
103
+ table TblI13 {
104
+ 0 No Acknowledgment Requested
105
+ 1 Interchange Acknowledgment Requested
106
+ } # TblI13
107
+
108
+ table TblI14 {
109
+ I Information
110
+ P Production Data
111
+ T Test Data
112
+ } # TblI14
113
+
114
+ table Tbl143 {
115
+ 100 Insurance Plan Description
116
+ 101 Name and Address Lists
117
+ 104 Air Shipment Information
118
+ 105 Business Entity Filings
119
+ 106 Motor Carrier Rate Proposal
120
+ 107 Request for Motor Carrier Rate Proposal
121
+ 108 Response to a Motor Carrier Rate Proposal
122
+ 109 Vessel Content Details
123
+ 110 Air Freight Details and Invoice
124
+ 112 Property Damage Report
125
+ 120 Vehicle Shipping Order
126
+ 121 Vehicle Service
127
+ 124 Vehicle Damage
128
+ 125 Multilevel Railcar Load Details
129
+ 126 Vehicle Application Advice
130
+ 127 Vehicle Baying Order
131
+ 128 Dealer Information
132
+ 129 Vehicle Carrier Rate Update
133
+ 130 Student Educational Record (Transcript)
134
+ 131 Student Educational Record (Transcript) Acknowledgment
135
+ 135 Student Loan Application
136
+ 138 Testing Results Request and Report
137
+ 139 Student Loan Guarantee Result
138
+ 140 Product Registration
139
+ 141 Product Service Claim Response
140
+ 142 Product Service Claim
141
+ 143 Product Service Notification
142
+ 144 Student Loan Transfer and Status Verification
143
+ 146 Request for Student Educational Record (Transcript)
144
+ 147 Response to Request for Student Educational Record (Transcript)
145
+ 148 Report of Injury, Illness or Incident
146
+ 149 Notice of Tax Adjustment or Assessment
147
+ 150 Tax Rate Notification
148
+ 151 Electronic Filing of Tax Return Data Acknowledgment
149
+ 152 Statistical Government Information
150
+ 153 Unemployment Insurance Tax Claim or Charge Information
151
+ 154 Uniform Commercial Code Filing
152
+ 155 Business Credit Report
153
+ 157 Notice of Power of Attorney
154
+ 159 Motion Picture Booking Confirmation
155
+ 160 Transportation Automatic Equipment Identification
156
+ 161 Train Sheet
157
+ 163 Transportation Appointment Schedule Information
158
+ 170 Revenue Receipts Statement
159
+ 175 Court and Law Enforcement Notice
160
+ 176 Court Submission
161
+ 180 Return Merchandise Authorization and Notification
162
+ 185 Royalty Regulatory Report
163
+ 186 Insurance Underwriting Requirements Reporting
164
+ 188 Educational Course Inventory
165
+ 189 Application for Admission to Educational Institutions
166
+ 190 Student Enrollment Verification
167
+ 191 Student Loan Pre-Claims and Claims
168
+ 194 Grant or Assistance Application
169
+ 195 Federal Communications Commission (FCC) License Application
170
+ 196 Contractor Cost Data Reporting
171
+ 197 Real Estate Title Evidence
172
+ 198 Loan Verification Information
173
+ 199 Real Estate Settlement Information
174
+ 200 Mortgage Credit Report
175
+ 201 Residential Loan Application
176
+ 202 Secondary Mortgage Market Loan Delivery
177
+ 203 Secondary Mortgage Market Investor Report
178
+ 204 Motor Carrier Load Tender
179
+ 205 Mortgage Note
180
+ 206 Real Estate Inspection
181
+ 210 Motor Carrier Freight Details and Invoice
182
+ 211 Motor Carrier Bill of Lading
183
+ 212 Motor Carrier Delivery Trailer Manifest
184
+ 213 Motor Carrier Shipment Status Inquiry
185
+ 214 Transportation Carrier Shipment Status Message
186
+ 215 Motor Carrier Pick-up Manifest
187
+ 216 Motor Carrier Shipment Pick-up Notification
188
+ 217 Motor Carrier Loading and Route Guide
189
+ 218 Motor Carrier Tariff Information
190
+ 219 Logistics Service Request
191
+ 220 Logistics Service Response
192
+ 222 Cartage Work Assignment
193
+ 223 Consolidators Freight Bill and Invoice
194
+ 224 Motor Carrier Summary Freight Bill Manifest
195
+ 225 Response to a Cartage Work Assignment
196
+ 242 Data Status Tracking
197
+ 244 Product Source Information
198
+ 248 Account Assignment/Inquiry and Service/Status
199
+ 249 Animal Toxicological Data
200
+ 250 Purchase Order Shipment Management Document
201
+ 251 Pricing Support
202
+ 252 Insurance Producer Administration
203
+ 255 Underwriting Information Services
204
+ 256 Periodic Compensation
205
+ 260 Application for Mortgage Insurance Benefits
206
+ 261 Real Estate Information Request
207
+ 262 Real Estate Information Report
208
+ 263 Residential Mortgage Insurance Application Response
209
+ 264 Mortgage Loan Default Status
210
+ 265 Real Estate Title Insurance Services Order
211
+ 266 Mortgage or Property Record Change Notification
212
+ 267 Individual Life, Annuity and Disability Application
213
+ 268 Annuity Activity
214
+ 270 Eligibility, Coverage or Benefit Inquiry
215
+ 271 Eligibility, Coverage or Benefit Information
216
+ 272 Property and Casualty Loss Notification
217
+ 273 Insurance/Annuity Application Status
218
+ 275 Patient Information
219
+ 276 Health Care Claim Status Request
220
+ 277 Health Care Claim Status Notification
221
+ 278 Health Care Services Review Information
222
+ 280 Voter Registration Information
223
+ 285 Commercial Vehicle Safety and Credentials Information Exchange
224
+ 286 Commercial Vehicle Credentials
225
+ 288 Wage Determination
226
+ 290 Cooperative Advertising Agreements
227
+ 300 Reservation (Booking Request) (Ocean)
228
+ 301 Confirmation (Ocean)
229
+ 303 Booking Cancellation (Ocean)
230
+ 304 Shipping Instructions
231
+ 306 Dock Receipt
232
+ 309 U.S. Customs Manifest
233
+ 310 Freight Receipt and Invoice (Ocean)
234
+ 311 Canadian Customs Information
235
+ 312 Arrival Notice (Ocean)
236
+ 313 Shipment Status Inquiry (Ocean)
237
+ 315 Status Details (Ocean)
238
+ 317 Delivery/Pickup Order
239
+ 319 Terminal Information
240
+ 321 Demurrage Guarantee (Ocean)
241
+ 322 Terminal Operations and Intermodal Ramp Activity
242
+ 323 Vessel Schedule and Itinerary (Ocean)
243
+ 324 Vessel Stow Plan (Ocean)
244
+ 325 Consolidation of Goods in Container
245
+ 326 Consignment Summary List
246
+ 350 U.S. Customs Status Information
247
+ 352 U.S. Customs Carrier General Order Status
248
+ 353 U.S. Customs Events Advisory Details
249
+ 354 U.S. Customs Automated Manifest Archive Status
250
+ 355 U.S. Customs Acceptance/Rejection
251
+ 356 U.S. Customs Permit to Transfer Request
252
+ 357 U.S. Customs In-Bond Information
253
+ 358 U.S. Customs Consist Information
254
+ 361 Carrier Interchange Agreement (Ocean)
255
+ 362 Cargo Insurance Advice of Shipment
256
+ 404 Rail Carrier Shipment Information
257
+ 410 Rail Carrier Freight Details and Invoice
258
+ 411 Freight Details and Invoice Summary (Rail)
259
+ 414 Rail Carhire Settlements
260
+ 417 Rail Carrier Waybill Interchange
261
+ 418 Rail Advance Interchange Consist
262
+ 419 Advance Car Disposition
263
+ 420 Car Handling Information
264
+ 421 Estimated Time of Arrival and Car Scheduling
265
+ 422 Shipper's Car Order
266
+ 423 Rail Industrial Switch List
267
+ 425 Rail Waybill Request
268
+ 426 Rail Revenue Waybill
269
+ 429 Railroad Retirement Activity
270
+ 431 Railroad Station Master File
271
+ 432 Rail Deprescription
272
+ 433 Railroad Reciprocal Switch File
273
+ 434 Railroad Mark Register Update Activity
274
+ 435 Standard Transportation Commodity Code Master
275
+ 436 Locomotive Information
276
+ 437 Railroad Junctions and Interchanges Activity
277
+ 440 Shipment Weights
278
+ 451 Railroad Event Report
279
+ 452 Railroad Problem Log Inquiry or Advice
280
+ 453 Railroad Service Commitment Advice
281
+ 455 Railroad Parameter Trace Registration
282
+ 456 Railroad Equipment Inquiry or Advice
283
+ 460 Railroad Price Distribution Request or Response
284
+ 463 Rail Rate Reply
285
+ 466 Rate Request
286
+ 468 Rate Docket Journal Log
287
+ 470 Railroad Clearance
288
+ 475 Rail Route File Maintenance
289
+ 485 Ratemaking Action
290
+ 486 Rate Docket Expiration
291
+ 490 Rate Group Definition
292
+ 492 Miscellaneous Rates
293
+ 494 Scale Rate Table
294
+ 500 Medical Event Reporting
295
+ 501 Vendor Performance Review
296
+ 503 Pricing History
297
+ 504 Clauses and Provisions
298
+ 511 Requisition
299
+ 517 Material Obligation Validation
300
+ 521 Income or Asset Offset
301
+ 527 Material Due-In and Receipt
302
+ 536 Logistics Reassignment
303
+ 540 Notice of Employment Status
304
+ 561 Contract Abstract
305
+ 567 Contract Completion Status
306
+ 568 Contract Payment Management Report
307
+ 601 U.S. Customs Export Shipment Information
308
+ 602 Transportation Services Tender
309
+ 620 Excavation Communication
310
+ 622 Intermodal Ramp Activity
311
+ 625 Well Information
312
+ 650 Maintenance Service Order
313
+ 715 Intermodal Group Loading Plan
314
+ 805 Contract Pricing Proposal
315
+ 806 Project Schedule Reporting
316
+ 810 Invoice
317
+ 811 Consolidated Service Invoice/Statement
318
+ 812 Credit/Debit Adjustment
319
+ 813 Electronic Filing of Tax Return Data
320
+ 814 General Request, Response or Confirmation
321
+ 815 Cryptographic Service Message
322
+ 816 Organizational Relationships
323
+ 818 Commission Sales Report
324
+ 819 Operating Expense Statement
325
+ 820 Payment Order/Remittance Advice
326
+ 821 Financial Information Reporting
327
+ 822 Account Analysis
328
+ 823 Lockbox
329
+ 824 Application Advice
330
+ 826 Tax Information Exchange
331
+ 827 Financial Return Notice
332
+ 828 Debit Authorization
333
+ 829 Payment Cancellation Request
334
+ 830 Planning Schedule with Release Capability
335
+ 831 Application Control Totals
336
+ 832 Price/Sales Catalog
337
+ 833 Mortgage Credit Report Order
338
+ 834 Benefit Enrollment and Maintenance
339
+ 835 Health Care Claim Payment/Advice
340
+ 836 Procurement Notices
341
+ 837 Health Care Claim
342
+ 838 Trading Partner Profile
343
+ 839 Project Cost Reporting
344
+ 840 Request for Quotation
345
+ 841 Specifications/Technical Information
346
+ 842 Nonconformance Report
347
+ 843 Response to Request for Quotation
348
+ 844 Product Transfer Account Adjustment
349
+ 845 Price Authorization Acknowledgment/Status
350
+ 846 Inventory Inquiry/Advice
351
+ 847 Material Claim
352
+ 848 Material Safety Data Sheet
353
+ 849 Response to Product Transfer Account Adjustment
354
+ 850 Purchase Order
355
+ 851 Asset Schedule
356
+ 852 Product Activity Data
357
+ 853 Routing and Carrier Instruction
358
+ 854 Shipment Delivery Discrepancy Information
359
+ 855 Purchase Order Acknowledgment
360
+ 856 Ship Notice/Manifest
361
+ 857 Shipment and Billing Notice
362
+ 858 Shipment Information
363
+ 859 Freight Invoice
364
+ 860 Purchase Order Change Request - Buyer Initiated
365
+ 861 Receiving Advice/Acceptance Certificate
366
+ 862 Shipping Schedule
367
+ 863 Report of Test Results
368
+ 864 Text Message
369
+ 865 Purchase Order Change Acknowledgment/Request - Seller Initiated
370
+ 866 Production Sequence
371
+ 867 Product Transfer and Resale Report
372
+ 868 Electronic Form Structure
373
+ 869 Order Status Inquiry
374
+ 870 Order Status Report
375
+ 871 Component Parts Content
376
+ 872 Residential Mortgage Insurance Application
377
+ 875 Grocery Products Purchase Order
378
+ 876 Grocery Products Purchase Order Change
379
+ 877 Manufacturer Coupon Family Code Structure
380
+ 878 Product Authorization/De-Authorization
381
+ 879 Price Information
382
+ 880 Grocery Products Invoice
383
+ 881 Manufacturer Coupon Redemption Detail
384
+ 882 Direct Store Delivery Summary Information
385
+ 883 Market Development Fund Allocation
386
+ 884 Market Development Fund Settlement
387
+ 885 Retail Account Characteristics
388
+ 886 Customer Call Reporting
389
+ 887 Coupon Notification
390
+ 888 Item Maintenance
391
+ 889 Promotion Announcement
392
+ 891 Deduction Research Report
393
+ 893 Item Information Request
394
+ 894 Delivery/Return Base Record
395
+ 895 Delivery/Return Acknowledgment or Adjustment
396
+ 896 Product Dimension Maintenance
397
+ 920 Loss or Damage Claim - General Commodities
398
+ 924 Loss or Damage Claim - Motor Vehicle
399
+ 925 Claim Tracer
400
+ 926 Claim Status Report and Tracer Reply
401
+ 928 Automotive Inspection Detail
402
+ 940 Warehouse Shipping Order
403
+ 943 Warehouse Stock Transfer Shipment Advice
404
+ 944 Warehouse Stock Transfer Receipt Advice
405
+ 945 Warehouse Shipping Advice
406
+ 947 Warehouse Inventory Adjustment Advice
407
+ 980 Functional Group Totals
408
+ 990 Response To a Load Tender
409
+ 994 Administrative Message
410
+ 996 File Transfer
411
+ 997 Functional Acknowledgment
412
+ 998 Set Cancellation
413
+ } # Tbl143
414
+
415
+ table Tbl479 {
416
+ AA Account Analysis (822)
417
+ AB Logistics Service Request (219)
418
+ AD Individual Life, Annuity and Disability Application (267)
419
+ AF Application for Admission to Educational Institutions (189)
420
+ AG Application Advice (824)
421
+ AH Logistics Service Response (220)
422
+ AI Automotive Inspection Detail (928)
423
+ AK Student Educational Record (Transcript) Acknowledgment (131)
424
+ AL Set Cancellation (998) and Application Acceptance/Rejection Advice (499)
425
+ AN Return Merchandise Authorization and Notification (180)
426
+ AO Income or Asset Offset (521)
427
+ AR Warehouse Stock Transfer Shipment Advice (943)
428
+ AS Transportation Appointment Schedule Information (163)
429
+ AT Animal Toxicological Data (249)
430
+ AW Warehouse Inventory Adjustment Advice (947)
431
+ BC Business Credit Report (155)
432
+ BE Benefit Enrollment and Maintenance (834)
433
+ BF Business Entity Filings (105)
434
+ BL Motor Carrier Bill of Lading (211)
435
+ BS Shipment and Billing Notice (857)
436
+ CA Purchase Order Change Acknowledgment/Request - Seller Initiated (865)
437
+ CB Unemployment Insurance Tax Claim or Charge Information (153)
438
+ CC Clauses and Provisions (504)
439
+ CD Credit/Debit Adjustment (812)
440
+ CE Cartage Work Assignment (222)
441
+ CF Corporate Financial Adjustment Information (844 and 849)
442
+ CG Administrative Message (994)
443
+ CH Car Handling Information (420)
444
+ CI Consolidated Service Invoice/Statement (811)
445
+ CJ Manufacturer Coupon Family Code Structure (877)
446
+ CK Manufacturer Coupon Redemption Detail (881)
447
+ CM Component Parts Content (871)
448
+ CN Coupon Notification (887)
449
+ CO Cooperative Advertising Agreements (290)
450
+ CP Electronic Proposal Information (251, 805)
451
+ CR Rail Carhire Settlements (414)
452
+ CS Cryptographic Service Message (815)
453
+ CT Application Control Totals (831)
454
+ CV Commercial Vehicle Safety and Credentials Information Exchange (285)
455
+ D3 Contract Completion Status (567)
456
+ D4 Contract Abstract (561)
457
+ D5 Contract Payment Management Report (568)
458
+ DA Debit Authorization (828)
459
+ DD Shipment Delivery Discrepancy Information (854)
460
+ DF Market Development Fund Allocation (883)
461
+ DI Dealer Information (128)
462
+ DM Shipper's Car Order (422)
463
+ DS Data Status Tracking (242)
464
+ DX Direct Exchange Delivery and Return Information (894, 895)
465
+ EC Educational Course Inventory (188)
466
+ ED Student Educational Record (Transcript) (130)
467
+ EI Railroad Equipment Inquiry or Advice (456)
468
+ ER Revenue Receipts Statement (170)
469
+ ES Notice of Employment Status (540)
470
+ EV Railroad Event Report (451)
471
+ EX Excavation Communication (620)
472
+ FA Functional Acknowledgment (997)
473
+ FB Freight Invoice (859)
474
+ FC Court and Law Enforcement Information (175, 176)
475
+ FG Motor Carrier Loading and Route Guide (217)
476
+ FH Motor Carrier Tariff Information (218)
477
+ FR Financial Reporting (821, 827)
478
+ FT File Transfer (996)
479
+ GB Average Agreement Demurrage (423)
480
+ GC Damage Claim Transaction Sets (920, 924, 925, 926)
481
+ GE General Request, Response or Confirmation (814)
482
+ GF Response to a Load Tender (990)
483
+ GL Intermodal Group Loading Plan (715)
484
+ GP Grocery Products Invoice (880)
485
+ GR Statistical Government Information (152)
486
+ GT Grant or Assistance Application (194)
487
+ HB Eligibility, Coverage or Benefit Information (271)
488
+ HC Health Care Claim (837)
489
+ HI Health Care Services Review Information (278)
490
+ HN Health Care Claim Status Notification (277)
491
+ HP Health Care Claim Payment/Advice (835)
492
+ HR Health Care Claim Status Request (276)
493
+ HS Eligibility, Coverage or Benefit Inquiry (270)
494
+ IA Air Freight Details and Invoice (110, 980)
495
+ IB Inventory Inquiry/Advice (846)
496
+ IC Rail Advance Interchange Consist (418)
497
+ ID Insurance/Annuity Application Status (273)
498
+ IE Insurance Producer Administration (252)
499
+ IG Direct Store Delivery Summary Information (882)
500
+ II Rail Freight Details and Invoice Summary (411)
501
+ IJ Report of Injury, Illness or Incident (148)
502
+ IM Motor Carrier Freight Details and Invoice (210, 980)
503
+ IN Invoice Information (810,819)
504
+ IO Ocean Shipment Billing Details (310, 312, 980)
505
+ IP Intermodal Ramp Activity (622)
506
+ IR Rail Carrier Freight Details and Invoice (410, 980)
507
+ IS Estimated Time of Arrival and Car Scheduling (421)
508
+ KM Commercial Vehicle Credentials (286)
509
+ LA Federal Communications Commission (FCC) License Application (195)
510
+ LB Lockbox (823)
511
+ LI Locomotive Information (436)
512
+ LN Property and Casualty Loss Notification (272)
513
+ LR Logistics Reassignment (536)
514
+ LS Asset Schedule (851)
515
+ LT Student Loan Transfer and Status Verification (144)
516
+ MA Motor Carrier Summary Freight Bill Manifest (224)
517
+ MC Request for Motor Carrier Rate Proposal (107)
518
+ MD Department of Defense Inventory Management (527)
519
+ ME Mortgage Origination (198, 200, 201, 261, 262, 263, 833, 872)
520
+ MF Market Development Funds Settlement (884)
521
+ MG Mortgage Servicing Transaction Sets (203, 206, 260, 264, 266)
522
+ MH Motor Carrier Rate Proposal (106)
523
+ MI Motor Carrier Shipment Status Inquiry (213)
524
+ MJ Secondary Mortgage Market Loan Delivery (202)
525
+ MK Response to a Motor Carrier Rate Proposal (108)
526
+ MM Medical Event Reporting (500)
527
+ MN Mortgage Note (205)
528
+ MO Maintenance Service Order (650)
529
+ MP Motion Picture Booking Confirmation (159)
530
+ MQ Consolidators Freight Bill and Invoice (223)
531
+ MR Multilevel Railcar Load Details (125)
532
+ MS Material Safety Data Sheet (848)
533
+ MT Electronic Form Structure (868)
534
+ MV Material Obligation Validation (517)
535
+ MW Rail Waybill Response (427)
536
+ MX Material Claim (847)
537
+ MY Response to a Cartage Work Assignment (225)
538
+ NC Nonconformance Report (842)
539
+ NL Name and Address Lists (101)
540
+ NP Notice of Power of Attorney (157)
541
+ NT Notice of Tax Adjustment or Assessment (149)
542
+ OC Cargo Insurance Advice of Shipment (362)
543
+ OG Order Group - Grocery (875, 876)
544
+ OR Organizational Relationships (816)
545
+ OW Warehouse Shipping Order (940)
546
+ PA Price Authorization Acknowledgment/Status (845)
547
+ PB Railroad Parameter Trace Registration (455)
548
+ PC Purchase Order Change Request - Buyer Initiated (860)
549
+ PD Product Activity Data (852)
550
+ PE Periodic Compensation (256)
551
+ PF Annuity Activity (268)
552
+ PG Insurance Plan Description (100)
553
+ PH Pricing History (503)
554
+ PI Patient Information (275)
555
+ PJ Project Schedule Reporting (806)
556
+ PK Project Cost Reporting (839) and Contractor Cost Data Reporting (196)
557
+ PL Railroad Problem Log Inquiry or Advice (452)
558
+ PN Product Source Information (244)
559
+ PO Purchase Order (850)
560
+ PQ Property Damage Report (112)
561
+ PR Purchase Order Acknowledgement (855)
562
+ PS Planning Schedule with Release Capability (830)
563
+ PT Product Transfer and Resale Report (867)
564
+ PU Motor Carrier Shipment Pick-up Notification (216)
565
+ PV Purchase Order Shipment Management Document (250)
566
+ PY Payment Cancellation Request (829)
567
+ QG Product Information (878, 879, 888, 889, 893, 896)
568
+ QM Transportation Carrier Shipment Status Message (214)
569
+ QO Ocean Shipment Status Information (313, 315)
570
+ RA Payment Order/Remittance Advice (820)
571
+ RB Railroad Clearance (470)
572
+ RC Receiving Advice/Acceptance Certificate (861)
573
+ RD Royalty Regulatory Report (185)
574
+ RE Warehouse Stock Receipt Advice (944)
575
+ RH Railroad Reciprocal Switch File (433)
576
+ RI Routing and Carrier Instruction (853)
577
+ RJ Railroad Mark Register Update Activity (434)
578
+ RK Standard Transportation Commodity Code Master (435)
579
+ RL Rail Industrial Switch List (423)
580
+ RM Railroad Station Master File (431)
581
+ RN Requisition Transaction (511)
582
+ RO Ocean Booking Information (300, 301,303)
583
+ RP Commission Sales Report (818)
584
+ RQ Request for Quotation (840) and Procurement Notices (836)
585
+ RR Response to Request For Quotation (843)
586
+ RS Order Status Information (869, 870)
587
+ RT Report of Test Results (863)
588
+ RU Railroad Retirement Activity (429)
589
+ RV Railroad Junctions and Interchanges Activity (437)
590
+ RW Rail Revenue Waybill (426)
591
+ RX Rail Deprescription (432)
592
+ RY Request for Student Educational Record (Transcript) (146)
593
+ RZ Response to Request for Student Educational Record (Transcript) (147)
594
+ SA Air Shipment Information (104)
595
+ SB Switch Rails (424)
596
+ SC Price/Sales Catalog (832)
597
+ SD Student Loan Pre-Claims and Claims (191)
598
+ SE Shipper's Export Declaration (601)
599
+ SG SG Receiving Advice - Grocery (885)
600
+ SH Ship Notice/Manifest (856)
601
+ SI Shipment Information (858)
602
+ SJ Transportation Automatic Equipment Identification (160)
603
+ SL Student Loan Application and Guarantee (135, 139)
604
+ SM Motor Carrier Load Tender (204)
605
+ SN Rail Route File Maintenance (475)
606
+ SO Ocean Shipment Information (304, 306, 309, 311, 317, 319, 321, 322, 323, 324, 325, 350, 352, 353, 354, 355, 356, 357, 358, 361)
607
+ SP Specifications/Technical Information (841)
608
+ SQ Production Sequence (866)
609
+ SR Rail Carrier Shipment Information (404, 419)
610
+ SS Shipping Schedule (862)
611
+ ST Railroad Service Commitment Advice (453)
612
+ SU Account Assignment/Inquiry and Service/Status (248)
613
+ SV Student Enrollment Verification (190)
614
+ SW Warehouse Shipping Advice (945)
615
+ TA Electronic Filing of Tax Return Data Acknowledgment (151)
616
+ TC Court Submission (176)
617
+ TD Trading Partner Profile (838)
618
+ TF Electronic Filing of Tax Return Data (813)
619
+ TI Tax Information Exchange (826)
620
+ TM Motor Carrier Delivery Trailer Manifest (212)
621
+ TN Tax Rate Notification (150)
622
+ TO Real Estate Title Services (197, 199, 265)
623
+ TP Rail Rate Transactions (460, 463, 466, 468, 485, 486, 490, 492, 494)
624
+ TR Train Sheet (161)
625
+ TS Transportation Services Tender (602)
626
+ TT Testing Results Request and Report (138)
627
+ TX Text Message (864)
628
+ UA Retail Account Characteristics (885)
629
+ UB Customer Call Reporting (886)
630
+ UC Uniform Commercial Code Filing (154)
631
+ UD Deduction Research Report (891)
632
+ UI Underwriting Information Services (255)
633
+ UP Motor Carrier Pick-up Manifest (215)
634
+ UW Insurance Underwriting Requirements Reporting (186)
635
+ VA Vehicle Application Advice (126)
636
+ VB Vehicle Baying Order (127)
637
+ VC Vehicle Shipping Order (120)
638
+ VD Vehicle Damage (124)
639
+ VE Vessel Content Details (109)
640
+ VH Vehicle Carrier Rate Update (129)
641
+ VI Voter Registration Information (280)
642
+ VS Vehicle Service (121)
643
+ WA Product Service Transaction Sets (140, 141, 142, 143)
644
+ WB Rail Carrier Waybill Interchange (417)
645
+ WG Vendor Performance Review (501)
646
+ WI Wage Determination (288)
647
+ WL Well Information (625)
648
+ WR Shipment Weights (440)
649
+ WT Rail Waybill Request (425)
650
+ } # Tbl479
651
+
652
+ table Tbl715 {
653
+ A Accepted
654
+ E Accepted, But Errors Were Noted.
655
+ M Rejected, Message Authentication Code (MAC) Failed
656
+ P Partially Accepted, At Least One Transaction Set Was Rejected
657
+ R Rejected
658
+ W Rejected, Assurance Failed Validity Tests
659
+ X Rejected, Content After Decryption Could Not Be Analyzed
660
+ } # Tbl715
661
+
662
+ table Tbl716 {
663
+ 1 Functional Group Not Supported
664
+ 2 Functional Group Version Not Supported
665
+ 3 Functional Group Trailer Missing
666
+ 4 Group Control Number in the Functional Group Header and Trailer Do Not Agree
667
+ 5 Number of Included Transaction Sets Does Not Match Actual Count
668
+ 6 Group Control Number Violates Syntax
669
+ 10 Authentication Key Name Unknown
670
+ 11 Encryption Key Name Unknown
671
+ 12 Requested Service (Authentication or Encryption) Not Available
672
+ 13 Unknown Security Recipient
673
+ 14 Unknown Security Originator
674
+ 15 Syntax Error in Decrypted Text
675
+ 16 Security Not Supported
676
+ 17 Incorrect Message Length (Encryption Only)
677
+ 18 Message Authentication Code Failed
678
+ 19 S1E Security End Segment Missing for S1S Security Start Segment
679
+ 20 S1S Security Start Segment Missing for S1E End Segment
680
+ 21 S2E Security End Segment Missing for S2S Security Start Segment
681
+ 22 S2S Security Start Segment Missing for S2E Security End Segment
682
+ 23 S3E Security End Segment Missing for S3S Security Start Segment
683
+ 24 S3S Security Start Segment Missing for S3E End Segment
684
+ 25 S4E Security End Segment Missing for S4S Security Start Segment
685
+ 26 S4S Security Start Segment Missing for S4E Security End Segment
686
+ } # Tbl716
687
+
688
+ table Tbl717 {
689
+ A Accepted
690
+ E Accepted But Errors Were Noted
691
+ M Rejected, Message Authentication Code (MAC) Failed
692
+ R Rejected
693
+ W Rejected, Assurance Failed Validity Tests
694
+ X Rejected, Content After Decryption Could Not Be Analyzed
695
+ } # Tbl717
696
+
697
+ table Tbl718 {
698
+ 1 Transaction Set Not Supported
699
+ 2 Transaction Set Trailer Missing
700
+ 3 Transaction Set Control Number in Header and Trailer Do Not Match
701
+ 4 Number of Included Segments Does Not Match Actual Count
702
+ 5 One or More Segments in Error
703
+ 6 Missing or Invalid Transaction Set Identifier
704
+ 7 Missing or Invalid Transaction Set Control Number
705
+ 8 Authentication Key Name Unknown
706
+ 9 Encryption Key Name Unknown
707
+ 10 Requested Service (Authentication or Encrypted) Not Available
708
+ 11 Unknown Security Recipient
709
+ 12 Incorrect Message Length (Encryption Only)
710
+ 13 Message Authentication Code Failed
711
+ 15 Unknown Security Originator
712
+ 16 Syntax Error in Decrypted Text
713
+ 17 Security Not Supported
714
+ 19 S1E Security End Segment Missing for S1S Security Start Segment
715
+ 20 S1S Security Start Segment Missing for S1E Security End Segment
716
+ 21 S2E Security End Segment Missing for S2S Security Start Segment
717
+ 22 S2S Security Start Segment Missing for S2E Security End Segment
718
+ 23 Transaction Set Control Number Not Unique within the Functional Group
719
+ 24 S3E Security End Segment Missing for S3S Security Start Segment
720
+ 25 S3S Security Start Segment Missing for S3E Security End Segment
721
+ 26 S4E Security End Segment Missing for S4S Security Start Segment
722
+ 27 S4S Security Start Segment Missing for S4E Security End Segment
723
+ } # Tbl718
724
+
725
+ table Tbl720 {
726
+ 1 Unrecognized segment ID
727
+ 2 Unexpected segment
728
+ 3 Mandatory segment missing
729
+ 4 Loop Occurs Over Maximum Times
730
+ 5 Segment Exceeds Maximum Use
731
+ 6 Segment Not in Defined Transaction Set
732
+ 7 Segment Not in Proper Sequence
733
+ 8 Segment Has Data Element Errors
734
+ } # Tbl720
735
+
736
+ table Tbl723 {
737
+ 1 Mandatory data element missing
738
+ 2 Conditional required data element missing.
739
+ 3 Too many data elements.
740
+ 4 Data element too short.
741
+ 5 Data element too long.
742
+ 6 Invalid character in data element.
743
+ 7 Invalid code value.
744
+ 8 Invalid Date
745
+ 9 Invalid Time
746
+ 10 Exclusion Condition Violated
747
+ } # Tbl723
748
+
749
+ /* Code indicating the relative position of a simple data element, or
750
+ the relative position of a composite data structure combined with the
751
+ relative position of the component data element within the composite
752
+ data structure, in error; the count starts with 1 for the simple data
753
+ element or composite data structure immediately following the segment
754
+ ID */
755
+
756
+ composite C030 {
757
+ ElementPositionInSegment I R 1-2 /* This is used to indicate the relative position of a simple data element, or the relative position of a composite data structure with the relative position of the component within the composite data structure, in error; in the data segment the count starts with 1 for the simple data element or composite data structure immediately following the segment ID */
758
+ ComponentDataElementPositionInComposite I O 1-2 /* To identify the component data element position within the composite that is in error */
759
+ } # C030
760
+
761
+ /* To define the end of an interchange of zero or more functional
762
+ groups and interchange-related control segments */
763
+
764
+ segment IEA {
765
+ NumberOfIncludedFunctionalGroups I R 1-5 /* A count of the number of functional groups included in an interchange */
766
+ InterchangeControlNumber I R 9-9 /* A control number assigned by the interchange sender */
767
+ } # IEA
768
+
769
+ /* To start and identify an interchange of zero or more functional
770
+ groups and interchange-related control segments */
771
+
772
+ segment ISA {
773
+ AuthorizationInformationQualifier S R 2-2 TblI01 /* Code to identify the type of information in the Authorization Information */
774
+ AuthorizationInformation S R 10-10 /* Information used for additional identification or authorization of the interchange sender or the data in the interchange; the type of information is set by the Authorization Information Qualifier (I01) */
775
+ SecurityInformationQualifier S R 2-2 TblI03 /* Code to identify the type of information in the Security Information */
776
+ SecurityInformation S R 10-10 /* This is used for identifying the security information about the interchange sender or the data in the interchange; the type of information is set by the Security Information Qualifier (I03) */
777
+ InterchangeIdQualifier1 S R 2-2 TblI05 /* Qualifier to designate the system/method of code structure used to designate the sender or receiver ID element being qualified */
778
+ InterchangeSenderId S R 15-15 /* Identification code published by the sender for other parties to use as the receiver ID to route data to them; the sender always codes this value in the sender ID element */
779
+ InterchangeIdQualifier2 S R 2-2
780
+ InterchangeReceiverId S R 15-15 /* Identification code published by the receiver of the data; When sending, it is used by the sender as their sending ID, thus other parties sending to them will use this as a receiving ID to route data to them */
781
+ InterchangeDate S R 6-6 /* Date of the interchange */
782
+ InterchangeTime S R 4-4 /* Time of the interchange */
783
+ InterchangeControlStandardsIdentifier S R 1-1 TblI10 /* Code to identify the agency responsible for the control standard used by the message that is enclosed by the interchange header and trailer */
784
+ InterchangeControlVersionNumber S R 5-5 TblI11 /* This version number covers the interchange control segments */
785
+ InterchangeControlNumber I R 9-9 /* A control number assigned by the interchange sender */
786
+ AcknowledgmentRuested S R 1-1 TblI13 /* Code sent by the sender to request an interchange acknowledgment (TA1) */
787
+ UsageIndicator S R 1-1 TblI14 /* Code to indicate whether data enclosed by this interchange envelope is test, production or information */
788
+ ComponentElementSeparator S R 1-1 /* Type is not applicable; the component element separator is a delimiter and not a data element; this field provides the delimiter used to separate component data elements within a composite data structure; this value must be different than the data element separator and the segment terminator */
789
+ } # ISA
790
+
791
+ /* To indicate the end of the transaction set and provide the count of
792
+ the transmitted segments (including the beginning (ST) and ending (SE)
793
+ segments) */
794
+
795
+ segment SE {
796
+ NumberOfIncludedSegments I R 1-10 /* Total number of segments included in a transaction set including ST and SE segments */
797
+ TransactionSetControlNumber S R 4-9 /* Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set */
798
+ } # SE
799
+
800
+ /* To indicate the start of a transaction set and to assign a control number */
801
+ segment ST {
802
+ TransactionSetIdentifierCode S R 3-3 Tbl143 /* Code uniquely identifying a Transaction Set */
803
+ TransactionSetControlNumber S R 4-9 /* Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set */
804
+ } # ST
805
+
806
+ /* To start acknowledgment of a functional group */
807
+ segment AK1 {
808
+ FunctionalIdentifierCode S R 2-2 Tbl479 /* Code identifying a group of application related transaction sets */
809
+ GroupControlNumber I R 1-9 /* Assigned number originated and maintained by the sender */
810
+ } # AK1
811
+
812
+ /* To start acknowledgment of a single transaction set */
813
+ segment AK2 {
814
+ TransactionSetIdentifierCode S R 3-3 Tbl143 /* Code uniquely identifying a Transaction Set */
815
+ TransactionSetControlNumber S R 4-9 /* Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set */
816
+ } # AK2
817
+
818
+ /* To report errors in a data segment and identify the location of the data segment */
819
+ segment AK3 {
820
+ SegmentIdCode S R 2-3 /* Code defining the segment ID of the data segment in error (See Appendix A - Number 77) */
821
+ SegmentPositionInTransactionSet I R 1-6 /* The numerical count position of this data segment from the start of the transaction set: the transaction set header is count position 1 */
822
+ LoopIdentifierCode S O 1-6 /* The loop ID number given on the transaction set diagram is the value for this data element in segments LS and LE */
823
+ SegmentSyntaxErrorCode S O 1-3 Tbl720 /* Code indicating error found based on the syntax editing of a segment */
824
+ } # AK3
825
+
826
+ /* To report errors in a data element or composite data structure and identify the location of the data element */
827
+ segment AK4 {
828
+ PositionInSegment C030 R 0-0 /* Code indicating the relative position of a simple data element, or the relative position of a composite data structure combined with the relative position of the component data element within the composite data structure, in error; the count starts with 1 for the simple data element or composite data structure immediately following the segment ID */
829
+ DataElementReferenceNumber I O 1-4 /* Reference number used to locate the data element in the Data Element Dictionary */
830
+ DataElementSyntaxErrorCode S R 1-3 Tbl723 /* Code indicating the error found after syntax edits of a data element */
831
+ CopyOfBadDataElement S O 1-99 /* This is a copy of the data element in error */
832
+ } # AK4
833
+
834
+ /* To acknowledge acceptance or rejection and report errors in a transaction set */
835
+ segment AK5 {
836
+ TransactionSetAcknowledgmentCode S R 1-1 Tbl717 /* Code indicating accept or reject condition based on the syntax editing of the transaction set */
837
+ TransactionSetSyntaxErrorCode1 S O 1-3 Tbl718 /* Code indicating error found based on the syntax editing of a transaction set */
838
+ TransactionSetSyntaxErrorCode2 S O 1-3 Tbl718 /* Code indicating error found based on the syntax editing of a transaction set */
839
+ TransactionSetSyntaxErrorCode3 S O 1-3 Tbl718 /* Code indicating error found based on the syntax editing of a transaction set */
840
+ TransactionSetSyntaxErrorCode4 S O 1-3 Tbl718 /* Code indicating error found based on the syntax editing of a transaction set */
841
+ TransactionSetSyntaxErrorCode5 S O 1-3 Tbl718 /* Code indicating error found based on the syntax editing of a transaction set */
842
+ } # AK5
843
+
844
+ /* To acknowledge acceptance or rejection of a functional group and report the number of included transaction sets from the original trailer, the accepted sets, and the received sets in this functional group */
845
+ segment AK9 {
846
+ FunctionalGroupAcknowledgeCode S R 1-1 Tbl715 /* Code indicating accept or reject condition based on the syntax editing of the functional group */
847
+ NumberOfTransactionSetsIncluded I R 1-6 /* Total number of transaction sets included in the functional group or interchange (transmission) group terminated by the trailer containing this data element */
848
+ NumberOfReceivedTransactionSets I R 1-6 /* Number of Transaction Sets received */
849
+ NumberOfAcceptedTransactionSets I R 1-6 /* Number of accepted Transaction Sets in a Functional Group */
850
+ FunctionalGroupSyntaxErrorCode1 S O 1-3 Tbl716 /* Code indicating error found based on the syntax editing of the functional group header and/or trailer */
851
+ FunctionalGroupSyntaxErrorCode2 S O 1-3 Tbl716 /* Code indicating error found based on the syntax editing of the functional group header and/or trailer */
852
+ FunctionalGroupSyntaxErrorCode3 S O 1-3 Tbl716 /* Code indicating error found based on the syntax editing of the functional group header and/or trailer */
853
+ FunctionalGroupSyntaxErrorCode4 S O 1-3 Tbl716 /* Code indicating error found based on the syntax editing of the functional group header and/or trailer */
854
+ FunctionalGroupSyntaxErrorCode5 S O 1-3 Tbl716 /* Code indicating error found based on the syntax editing of the functional group header and/or trailer */
855
+ } # AK9
856
+
857
+
858
+ /* This Draft Standard for Trial Use contains the format and
859
+ establishes the data contents of the Functional Acknowledgment
860
+ Transaction Set (997) for use within the context of an Electronic Data
861
+ Interchange (EDI) environment. The transaction set can be used to
862
+ define the control structures for a set of acknowledgments to indicate
863
+ the results of the syntactical analysis of the electronically encoded
864
+ documents. The encoded documents are the transaction sets, which are
865
+ grouped in functional groups, used in defining transactions for
866
+ business data interchange. This standard does not cover the semantic
867
+ meaning of the information encoded in the transaction sets. */
868
+
869
+ loop 997 1:1
870
+ {
871
+ segment ST 1:1
872
+ segment AK1 1:1
873
+ loop L1000 0:999999
874
+ {
875
+ segment AK2 0:1
876
+ loop L1010 0:999999
877
+ {
878
+ segment AK3 0:1
879
+ segment AK4 0:99
880
+ } # L1010
881
+ segment AK5 1:1
882
+ } # L1000
883
+ segment AK9 1:1
884
+ segment SE 1:1
885
+ } # 997