NATL INST. OF STAND & TECH R.I.C.

A111D5 MDS7ME

NIST

PUBLiCATiONS^

W

QC

100

.U57

NO. 881-37

1998

Nisr

NIST Special Publication 881-37

Federal Implementation Guideline

for Electronic Data Interchange

ASC X12 003070 Transaction Set 997

Functional Acknowledgment

Implementation Convention

U.S. DEPARTMENT OF COMMERCE

Technology Administration

National Institute of

Standards and Technology
rhe National Institute of Standards and Technology was established in 1988 by Congress to "assist industry in the development of technology . . . needed to improve product quality, to modernize manufacturing processes,

to ensure product reliability . . . and to facilitate rapid commercialization ... of products based on new scientific

discoveries."

NIST, originally founded as the National Bureau of Standards in 1901, works to strengthen U.S. industry's

competitiveness; advance science and engineering; and improve public health, safety, and the environment. One

of the agency's basic functions is to develop, maintain, and retain custody of the national standards of

measurement, and provide the means and methods for comparing standards used in science, engineering,

manufacturing, commerce, industry, and education with the standards adopted or recognized by the Federal

Government.

As an agency of the U.S. Commerce Department's Technology Administration, NIST conducts basic and

applied research in the physical sciences and engineering, and develops measurement techniques, test methods, standards, and related services. The Institute does generic and precompetitive work on new and

advanced technologies. NIST's research facilities are located at Gaithersburg, MD 20899, and at Boulder, CO 80303.

Major technical operating units and their principal activities are listed below. For more information contact the

Publications and Program Inquiries Desk, 301-975-3058.

Office of the Director

• National Quality Program

• International and Academic Affairs

Technology Services

• Standards Services

• Technology Partnerships

• Measurement Services

• Technology Innovation

• Information Services

Advanced Technology Program

• Economic Assessment

• Information Technology and Applications

• Chemical and Biomedical Technology

• Materials and Manufacturing Technology

• Electronics and Photonics Technology

Manufacturing Extension Partnership

Program

• Regional Programs

• National Programs

• Program Development

Electronics and Electrical Engineering

Laboratory

• Microelectronics

• Law Enforcement Standards

• Electricity

• Semiconductor Electronics

• Electromagnetic Fields'

• Electromagnetic Technology'

• Optoelectronics'

Chemical Science and Technology

Laboratory

• Biotechnology

• Physical and Chemical Properties^

• Analytical Chemistry

• Process Measurements

• Surface and Microanalysis Science

Physics Laboratory

• Electron and Optical Physics

• Atomic Physics

• Optical Technology

• Ionizing Radiation

• Time and Frequency'

• Quantum Physics'

Materials Science and Engineering

Laboratory

• Intelligent Processing of Materials

• Ceramics

• Materials Reliability'

• Polymers

• Metallurgy

• NIST Center for Neutron Research

Manufacturing Engineering

Laboratory

• Precision Engineering

• Automated Production Technology

• Intelligent Systems

• Fabrication Technology

• Manufacturing Systems Integration

Building and Fire Research

Laboratory

• Structures

• Building Materials

• Building Environment

• Fire Safety Engineering

• Fire Science

Information Technology Laboratory

• Mathematical and Computational Sciences"

• Advanced Network Technologies

• Computer Security

• Information Access and User Interfaces

• High Performance Systems and Services

• Distributed Computing and Information Services

• Software Diagnostics and Conformance Testing

'At Boulder, CO 80303. ^Some elements at Boulder, CO.
NIST Special Publication 881-37

Federal Implementation Guideline

for Electronic Data Interchange

ASC X12 003070 Transaction Set 997

Functional Acknowledgment

Implementation Convention

Electronic Commerce Acquisition Program Management Office

Standard Management Committee - Secretariat

National Institute of Standards and Technology

Gaithersburg, MD 20899-0001

Editor: Dr. Jean-Philippe Favreau

January 1998

U.S. DEPARTMENT OF COMMERCE

William M. Daley, Secretary

Technology Administration

Gary R. Bachula, Acting Under Secretary for Technology

National Institute of Standards and Technology

Robert E. Hebner, Acting Director
Reports on Information Technology

The National Institute of Standards and Technology (NIST)'s Information Technology Laboratory (ITL)

develops standards and guidelines, provides technical assistance, and conducts research for computers

and resources. As part of the overall federal effort to establish a single face to industry for conducting

electronic commerce, ITL has been designated as the organization responsible for coordinating the

development of Federal Implementation Conventions (ICs) for Electronic Data Interchange (EDI). ICs are defined by functional-area experts who create and select options from standard EDI Transaction Sets to

yield the implementations to be used for practical EDI. These ICs are made available to federal agencies

and industry by electronic means and this Special Publication Series.

National Institute of Standards and Technology Special Publication 881-37

Natl. Inst. Stand. Technol. Spec. Publ. 881-37, 12 pages (Jan. 1998)

CODEN: NSPUE2

U.S. GOVERNMENT PRINTING OFFICE

WASHINGTON: 1998

For sale by the Superintendent of Documents, U.S. Government Printing Office, Washington, DC 20402
997 Functional Acknowledgement

Functional Group ID=

Introduction:

This Draft Standard for Trial Use contains the format and estabhshes the data contents of the Functional

Acknowledgement Transaction Set (997) for use within the context of an Electronic Data Interchange (EDI)

environment. The transaction set can be used to define the control structures for a set of acknowledgements to indicate the results of the syntactical analysis of the electronically encoded documents. The encoded documents are the transaction sets, which are grouped in functional groups, used in defining transactions for business data

interchange. This standard does not cover the semantic meaning of the information encoded in the transaction sets.

Notes:

Use this implementation convention to acknowledge receipt, and acceptance or rejection ofafunctional group

and the transaction set(s) contained within it based upon EDItranslation software syntax edits.

Pos. No.Seg.

ID Name

Req.

Des. Max.Use

Loop

Repeat

Notes and

Comments

Must Use 010 ST Transaction Set Header M 1 nl

Must Use 020 AKl Functional Group Response Header M 1 n2

LOOP ID - AK2 999999

030 AK2 Transaction Set Response Header 0 1 ii3 LOOP ID - AK3 999999

040 AK3 Data Segment Note 0 1 cl

050 AK4 Data Element Note 0 99

Must Use 060 AK5 Transaction Set Response Trailer M 1

Must Use 070 AK9 Functional Group Response Trailer M 1

Must Use 080 SE Transaction Set Trailer M I

Transaction Set Notes

1. These acknowledgements shall not be acknowledged, thereby preventing an endless cycle of

acknowledgements of acknowledgements.

The Functional Group Header Segment (GS) is used to start the envelope for the Functional

Acknowledgement Transaction Sets. In preparing the functional group of acknowledgements, the application

sender's code and the application receiver's code, taken from the functional group being acknowledged, are exchanged; therefore, one acknowledgement functional group responds to only those functional groups from

one application receiver's code to one application sender's code.

There is only one Functional Acknowledgement Transaction Set per acknowledged functional group.

2. AKl is used to respond to the functional group header and to start the acknowledgement for a functional

group. There shall be one AKl segment for the functional group that is being acknowledged.

3. AK2 is used to start the acknowledgement of a transaction set within the received functional group. The AK2

segments shall appear in the same order as the transaction sets in the functional group that has been received

and is being acknowledged.

Transaction Set Comments

1. The data segments of this standard are used to report the results of the syntactical analysis of the functional

groups of transaction sets; they report the extent to which the syntax complies with the standards for

transaction sets and functional groups. They do not report on the semantic meaning of the transaction sets (for

example, on the ability of the receiver to comply with the request of the sender).

003070F997_0 15 July 1997
997 Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

ST Transaction Set Header

010

Mandatory

1To indicate the start of a transaction set and to assign a control number

1 The transaction set identifier (STOl) used by the translation routines of the

interchange partners to select the appropriate transaction set definition (e.g., 810

selects the Invoice Transaction Set).

Must Use

Must Use

Ref.

Pes.

STOl

ST02

Data

Element

143

329

Data Element Summary

Name Attributes

Transaction Set Identifier Code M ID 3/3

Code uniquely identifying a Transaction Set

997 Functional Acknowledgement

Transaction Set Control Number M AN 4/9

Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set Use to transmit a unique number assigned by the originator ofthe

transaction set. The number may be system generated. This same number

will be cited in SE02.

003070F997 0 2 15 July 1997
997 Functional Acknowledgement

Segment: AKl Functional Group Response Header

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

020

Mandatory

1To start acknowledgement of a functional group

1 AKl 01 is the functional ID found in the GS segment (GSOl) in the functional group

being acknowledged.

2 AKl 02 is the fiinctional group control number found in the GS segment in the

functional group being acknowledged.

1. Use to identify the unique identification number ofthefunctional group in which

the transaction set(s) being acknowledged was received.

2. Only onefunctional group may be referenced in a single 997 acknowledgement

transaction set

Must Use

Ref.

Pes.

AKIOI

Must Use AKl02

Data

Element

479

28

Data Element Summary

Name Attributes

Functional Identifier Code M ID 2/2

Code identifying a group of application related transaction sets

Cite, using the appropriate codefrom the XI2 code list, thefunctional group

IDfound in GSOl ofthefunctional group being acknowledged

Refer to 003070 Data Element Dictionary for acceptable code values.

Group Control Number M NO 1/9

Assigned number originated and maintained by the sender

Use to identify the number cited in GS06 ofthefunctional group being

acknowledged.

003070F997 0 3 15 July 1997
997 Functional Acknowledgement

Segment: AK2 Transaction Set Response Header

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

Must Use

Ref.

Pes.

AK201

Must Use AK202

030

AK2 Optional

Optional

1To start acknowledgement of a single transaction set

1 AK201 is the transaction set ID found in the ST segment (STOl) in the transaction

set being acknowledged.

2 AK202 is the transaction set control number found in the ST segment in the

transaction set being acknowledged.

1. Use to identify the unique identification number ofthe transaction set being

acknowledged.

2. AK2 and AK5 shall be providedfor each transaction set that is accepted.

3. Also, AK2 and AK5 shall be providedfor each transaction set being rejectedfor

containing a syntactical error.

Data Element Summary

Data

Element Name

143

Attributes

Transaction Set Identifier Code M ID 3/3

Code uniquely identifying a Transaction Set

Refer to 003070 Data Element Dictionary for acceptable code values.

329 Transaction Set Control Number M AN 4/9

Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set Use to identify the number cited in SE02/ST02 ofthe transaction set being

acknowledged.

003070F997 0 4 15 July 1997
997 Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

AK3 Data Segment Note

040

AK3 Optional

Optional

1To report errors in a data segment and identify the location of the data segment

This 1/AK3/040 loop shall be used only to identify one or more segments containing

syntactical errors resulting in rejection ofthe transaction set orfunctional group. This

loop shall not be used when transaction set andfunctional group receipt and

acceptance is being acknowledged.

Must Use

Ref.

Pes.

AK301

Must Use AK302

AK303

AK304

Data

Element

721

719

447

720

Data Element Summary

Name Attributes

Segment ID Code M ID 2/3

Code defining the segment ID of the data segment in error (See Appendix A - Number 77)

Use to identify the segment containing syntactical errors, as it appears in the

ASCX12 Data Segment Dictionary, e.g., DTM, Nl, REF, etc. Segment Position in Transaction Set M NO 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 Use to identify the segment's sequentialposition within the data stream of

the transaction set as transmitted. This number is not the segment's position

numberportrayed in the transaction set structure. For example, ifthe

segments used in an 810 requestfor progress payment were asfollows: ST,

BIG, REF, Nl, Nl, PER, ITD, DTM, ITl, ITl, SLN, SLN, SLN, TDS, CTT,

SE, and there was a syntax error in the second use ofthe Nl segment, the

number cited would be 5. Ifthe syntax error was in the third use ofthe SLN

segment, the number cited would be 13.

Loop Identifier Code O AN 1/6

The loop ID number given on the transaction set diagram is the value for this data element in segments LS and LE

Segment Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a segment

1. Use only when a segment is being rejected, to identify the basis for

rejection. Do not use when the error is in a data element within the segment

and editing is being done at least to that level

Refer to 003070 Data Element Dictionary for acceptable code values.

003070F997 0 5 15 July 1997
997 Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

Ref.

Pes.

Must Use AK401

Must Use C03001

C03002

Must Use AK402

Must Use AK403

AK404

AK4 Data Element Note

050

AK3 Optional

Optional

99

To report errors in a data element and identify the location of the data element

Use to identify an error with a data element. WJten used, there must be a use ofthe

AK3 segment citing the segment in which the data element with the error appears. Use

multiple occurrences ofthis segment to identify all data element errors within the

segment specified in the preceding AK3 segment.

Data

Element

C030

722

1528

725

723

724

Data Element Summary

Name Attributes

Position in Segment M

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

Element Position in Segment M NO 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

Use to indicate the position ofthe data element, within the segment,

containing the error, e.g., 3, 12, etc. Component Data Element Position in Composite O NO 1/2

To identify the component data element position within the composite that is in error Data Element Reference Number O NO 1/4

Reference number used to locate the data element in the Data Element

Dictionary

Use to identify the data element number as it appears in the ASCX12 Data

Element Dictionary, for example, the data element numberfor NlOl is 98,

the data element numberfor Nl03 is 66. Data Element Syntax Error Code M ID 1/3

Code indicating the error found after syntax edits of a data element

Refer to 003070 Data Element Dictionary for acceptable code values.

Copy of Bad Data Element O AN 1/99

This is a copy of the data element in error

003070F997 0 6 15 July 1997
997 Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

Must Use

Ref.

Pes.

AK501

AK502

AK503

AK504

AK505

AK506

AK5 Transaction Set Response Trailer

060

AK2 Optional

Mandatory

1To acknowledge acceptance or rejection and report errors in a transaction set

Use to indicate whether the transaction set indicated in the corresponding AK2

segment was accepted or rejected. Iftlte transaction set is being rejected, use this

^gment to identify up to five (5) syntax errors at the transaction level.

Data

Element

717

718

718

718

718

718

Data Element Summary

Name Attributes

Transaction Set Acknowledgement Code M ID 1/1

Code indicating accept or reject condition based on the syntax editing of the

transaction set Refer to 003070 Data Element Dictionary for acceptable code values.

Transaction Set Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a transaction set

1. Use only when a transaction set is being rejected, to identify the basisfor

rejection. Ifmultiple codes apply, they may be carried in AK503 through

AK506, as necessary. No individual code may be used more than once in a

single use ofthis segment.

2. Use code 5 when the 1/AK3/040 loop is not used and syntactical errors fccurred below the transaction set level

Refer to 003070 Data Element Dictionary for acceptable code values.

Transaction Set Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a transaction set Refer to 003070 Data Element Dictionary for acceptable code values.

Transaction Set Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a transaction set Refer to 003070 Data Element Dictionary for acceptable code values.

Transaction Set Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a transaction set Refer to 003070 Data Element Dictionary for acceptable code values.

Transaction Set Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a transaction set Refer to 003070 Data Element Dictionary for acceptable code values.

003070F997 0 7 15 July 1997
997 Functional Acknowledgement

AK9

070

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

Must Use

Ref.

Pes.

AK901

Must Use AK902

Must Use

Must Use

AK903

AK904

AK905

AK906

AK907

AK908

Functional Group Response Trailer

Mandatory

1To 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

1 If AK901 contains the value "A" or "E", then the transmitted functional group is accepted. If AK901 contains the value "R", then the transmitted group is rejected.

1. Use only to indicate whether thefunctional group was accepted or rejected based on

syntax errors in thefunctional group header or trailer.

2. Ifafunctional group is rejected, all transaction sets within that group must be

rejected using theAK9, In this case, individual AK2sfor the rejected transaction sets need not be provided.

3. Ifthefunctional group is being rejected, use to identify up to five (5) syntax errors

at thefunctional group level

Data

Element

715

97

123

716

716

716

716

Data Element Summary

Name Attributes

Functional Group Acknowledge Code M ID 1/1

Code indicating accept or reject condition based on the syntax editing of the

functional group

Refer to 003070 Data Element Dictionary for acceptable code values.

Number of Transaction Sets Included M NO 1/6

Total number of transaction sets included in the fiinctional group or interchange (transmission) group terminated by the trailer containing this data

element

Number of Received Transaction Sets M NO 1/6

Number of Transaction Sets received

Number of Accepted Transaction Sets M NO 1/6

Number of accepted Transaction Sets in a Functional Group

Functional Group Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of the functional group

header and/or trailer

1. Use only when afunctional group is being rejected to identify the basis

for rejection.

2. Codes may also be carried in AK906 through AK909, but no individual

code may be used more than once in a single iteration ofthis segment.

Refer to 003070 Data Element Dictionary for acceptable code values.

Functional Group Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of the functional group

header and/or trailer Refer to 003070 Data Element Dictionary for acceptable code values.

Functional Group Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of the functional group

header and/or trailer Refer to 003070 Data Element Dictionary for acceptable code values.

Functional Group Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of the functional group

003070F997 0 8 15 July 1997
997 Functional Acknowledgement

header and/or trailer Refer to 003070 Data Element Dictionary for acceptable code values.

AK909 716 Functional Group Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of the functional group

header and/or trailer Refer to 003070 Data Element Dictionary for acceptable code values.

003070F997 0 9 15 July 1997
997 Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

SE Transaction Set Trailer

080

Mandatory

1To indicate the end of the transaction set and provide the count of the transmitted

segments (including the beginning (ST) and ending (SE) segments)

1 SE is the last segment of each transaction set.

Data Element Summary

Ref. Data

Des. Element Name Attributes

Must Use SEOl 96 Number of Included Segments M NO 1/10

Total number of segments included in a transaction set including ST and SE

segments

Must Use SE02 329 Transaction Set Control Number M AN 4/9

Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set Use the same number cited in ST02.

003070F997 0 10 15 July 1997
Technical Publications

Periodical

Journal of Research of the National Institute of Standards and Technology—Reports NIST research

and development in those disciplines of the physical and engineering sciences in which the Institute is

active. These include physics, chemistry, engineering, mathematics, and computer sciences. Papers cover a broad range of subjects, with major emphasis on measurement methodology and the basic technology

underlying standardization. Also included from time to time are survey articles on topics closely related to the Institute's technical and scientific programs. Issued six times a year.

Nonperiodicals

Monographs—Major contributions to the technical literature on various subjects related to the

Institute's scientific and technical activities. Handbooks—Recommended codes of engineering and industrial practice (including safety codes) developed in cooperation with interested industries, professional organizations, and regulatory bodies.

Special Publications—Include proceedings of conferences sponsored by NIST, NIST annual reports, and

other special publications appropriate to this grouping such as wall charts, pocket cards, and bibliographies.

National Standard Reference Data Series—Provides quantitative data on the physical and chemical

properties of materials, compiled from the world's literature and critically evaluated. Developed under a worldwide program coordinated by NIST under the authority of the National Standard Data Act (Public

Law 90-396). NOTE: The Journal of Physical and Chemical Reference Data (JPCRD) is published

bimonthly for NIST by the American Chemical Society (ACS) and the American Institute of Physics (AIP).

Subscriptions, reprints, and supplements are available from ACS, 1155 Sixteenth St., NW, Washington, DC

20056.

Building Science Series—Disseminates technical information developed at the Institute on building

materials, components, systems, and whole structures. The series presents research results, test methods, and

performance criteria related to the structural and environmental functions and the durability and safety

characteristics of building elements and systems.

Technical Notes—Studies or reports which are complete in themselves but restrictive in their treatment of

a subject. Analogous to monographs but not so comprehensive in scope or definitive in treatment of the

subject area. Often serve as a vehicle for final reports of work performed at NIST under the sponsorship of

other government agencies.

Voluntary Product Standards—Developed under procedures published by the Department of Commerce

in Part 10, Title 15, of the Code of Federal Regulations. The standards establish nationally recognized

requirements for products, and provide all concerned interests with a basis for common understanding of

the characteristics of the products. NIST administers this program in support of the efforts of private-sector

standardizing organizations.

Order the following NIST publications—FIPS and NISTIRs—from the National Technical Information

Service, Springfield, VA 22161.

Federal Information Processing Standards Publications (FIPS PUB)—Publications in this series

collectively constitute the Federal Information Processing Standards Register. The Register serves as the

official source of information in the Federal Government regarding standards issued by NIST pursuant to the Federal Property and Administrative Services Act of 1949 as amended. Public Law 89-306 (79 Stat. 1127), and as implemented by Executive Order 11717 (38 FR 12315, dated May 11, 1973) and Part 6 of

Title 15 CFR (Code of Federal Regulations).

NIST Interagency Reports (NISTIR)—A special series of interim or final reports on work performed by

NIST for outside sponsors (both government and nongovernment). In general, initial distribution is handled

by the sponsor; public distribution is by the National Technical Information Service, Springfield, VA 22161,

in paper copy or microfiche form.
u

a>B

o

E

ndard 1 Co 0899- iS o

en

oo

Q

S 60 . Q M

o

I/)

u

c >