xmlns:xsd = "http://v
i_v3_0.xsd , xmlns:nei = "http://vu
           elementFormDefault^
           version-"3.0
           
         ^ 
:network
             aLocation= EN_NEI.http://www.c
                De     qual
                 '>
                 :hemaLocatio
tion>Schema Name: NE
)cumentation>
Cion>Current Version
p://www.epa.gov/excha,h:ion>Scf

:ion>Description: The NEI >in>Cur
c/xsd:documentation>      //ww
:ion>Application: Varies by
:umentation>             >De:
:ion>Developed By: Environrm1:do

                        *Z
                          *\
://www.epa.gov/exchangenetw'
w. w3.org/2001/XMLSchema1
M. epa.gov/exchangenet work"
jalified" attributeFormDefault="unqi

ition="EN NEI Common v3 O.xsc
                                        ICIS-NPDES Batch System
                                        Flow Configuration
                                        Document
                                        Version 2.1

                                        FINAL - Revised
                                        Date: October26,2010

                                        Prepared for:
                                        United States Environmental Protection Agency

                                        Prepared by:
                                        Booz Allen Hamilton
Schema Name: NEI XML 3.0
:ntation>
Current Version
trww.epa.gov/exchangenetwork<,

description: The NEI XML 3.0 Poin
: documentation >
Application: Varies by
tation>
                                                     Environmental Information
                                                     eXjphange
                                                           ^Network

-------

-------
Office of Enforcement and Compliance Assurance
                                                                              ICIS
                        DOCUMENT CHANGE RECORD
Version Number
0.1
0.2
0.9
0.91
0.92
1.0
2.0
2.1
Date
May, 01,2007
May, 22, 2007
Jun 22, 2007
Jul 20, 2007
Aug 20, 2007
Aug 29, 2007
Sep28, 2010
Oct21,2010
Description
Draft
Updated the document to include details of the
processing.
Updated the document based on the working
sessions with CDX.
Incorporated EPA comments.
Incorporated comments from state users
Final Delivery
Revised for Full Batch Phase 1
Incorporated EPA Comments
ICIS-NPDES Batch System Flow Configuration Document

-------
Office of Enforcement and Compliance Assurance
                           TABLE OF CONTENTS

1.   INTRODUCTION [[[ 1
  1.1    PURPOSE [[[ 1
  1.2    ASSUMPTIONS AND CONSTRAINTS [[[ 1
  1.3    AUDIENCE [[[ 2
  1.4    DOCUMENT OVERVIEW [[[ 2
2.   XML SUBMISSION DOCUMENT [[[ 3
  2.1    OVERVIEW [[[ 3
  2.2    XML SUBMISSION DOCUMENT STRUCTURE [[[ 3
    2.2.1    Header [[[ 4
    2.2.2    Payload [[[ 6
3.   RESPONSE DOCUMENTS [[[ 7
  3.1    FULL BATCH RESPONSE [[[ 8
    3.1.1    Batch Audit Report [[[ 8
    3.1.2    Batch XML Response Files [[[ 13
    3.1.3    Batch File-Level Error Report [[[ 18
    3.1.4    Batch File-Level Error XML Report [[[ 18
  3.2    NETDMR RESPONSE [[[ 19
  3.3    ICIS BATCH DMR HYBRID RESPONSE [[[ 20

-------
Office of Enforcement and Compliance Assurance
                                 LIST OF FIGURES
Figure 2-1 - XML Submission Document Sample	4
Figure 3-1 - Accepted Transactions PDF Report Screen Shot	8
Figure 3-2 - Rejected Transactions PDF Report Screen Shot	9
Figure 3-3 - Batch Transactions Summary PDF Report Screen Shot	11
Figure 3-4 - Accepted Transactions XML Report Screen Shot	13
Figure 3-5 - Rejected Transactions XML Report Screen Shot	14
Figure 3-6 - Batch Transactions Summary XML Report Screen Shot	15
Figure 3-7 - Batch File-Level Error Report Screen Shot	18
Figure 3-8 - Batch File-Level Error XML File Screen Shot	18
Figure 3-9-NetDMR Report Screen Shot	19
Figure 3-10 - ICIS Batch DMR Hybrid Report Screen Shot	20
Figure 4-1 - File Exchange in Node to Node Configuration	21
Figure 4-2 - File Exchange in Client to Node Configuration	24

                                  LIST OF TABLES
Table 2-1 - XML Submission Document Header Details	4
Table 2-2 - XML Submission Document Payload Details	6
Table 3-1 - Batch Response Files Details	7
Table 3-2-Batch Audit Report Details	13
Table 3-3 - Batch XML Response Files Details	16
Table 3-4-Batch File Level Error XML File Details	18
Table 3-5 - NetDMR Response File Details	19
ICIS-NPDES Batch System Flow Configuration Document                                          m

-------

-------
Office of Enforcement and Compliance Assurance
1.     INTRODUCTION
The  Integrated Compliance Information  System - National Pollutant Discharge  Elimination
System (ICIS-NPDES) is being extended to support an integrated data flow to process electronic
batch submissions using extensible Markup Language (XML) technology. Authorized states,
tribes, and regional users submit National Pollutant Discharge Elimination System (NPDES) data
via batch to ICIS-NPDES. They compose their transactions into predefined XML formatted files
contained in a zip archive file to submit to ICIS-NPDES through the Environmental Protection
Agency's (EPA) Central Data Exchange (CDX).

Document submissions to CDX must be preceded by NAAS authentication. Upon successful
authentication, the client node receives a security token that must be used in all subsequent
service requests with CDX. Afterwards, the batch is submitted to CDX, passing in the security
token. If the security token is valid, CDX generates a transaction ID for the request and returns it
to the client node.

Upon receipt of the batch, CDX performs important functions on batch files such as validating
the submitted data against approved  XML schemas, scanning for viruses, archiving all XML
files, and authenticating the submitters prior to making the XML files available for processing.
CDX provides a Web services interface for distributing files to ICIS-NPDES for processing.

A Web service is deployed in the ICIS-NPDES environment to receive XML files from CDX.
ICIS-NPDES  is  responsible for receiving  and parsing  the  XML files,  sequencing the
transactions, and processing the transactions against the ICIS-NPDES  service tier.  For any
transactions  that  are not  successfully  processed,  detailed business-rule based errors  will be
generated. Finally, ICIS-NPDES records  the batch processing results and sends the processing
status back to CDX.
  1.1  PURPOSE
The  Flow Configuration Document (FCD) defines  the  required details to implement  and
configure a flow across CDX and ICIS-NPDES nodes to exchange XML data. These nodes will
implement a subset of the web  methods from the Network Node Functional Specification to
facilitate the exchange of data between the state users and the ICIS-NPDES Batch system. This
document should be referenced in the context of submitting ICIS-NPDES data to ICIS Batch.
The NetDMR Flow Configuration Document addresses data exchanges between ICIS-NPDES
and NetDMR.
  1.2  ASSUMPTIONS AND CONSTRAINTS
The following assumptions apply to the ICIS-NPDES Batch flow configuration:

       All batch files will be zipped by the submitting party prior to submittal to CDX.
       Upon receiving files from states, CDX validates the received files against the target XML
       schema. Only valid batches are submitted to ICIS-NPDES. A batch is valid if at least one
ICIS-NPDES Batch System Flow Configuration Document

-------
Office of Enforcement and Compliance Assurance
      of the files in that batch is a valid XML file. A file is valid if it is well formed and
      complies with the ICIS NPDES schema.
      CDX scans the received files for any viruses. Files with viruses will be rejected.
      CDX archives the received files from state users.
      CDX supports both manual  and automatic batch submissions.  For manual submissions,
      users can log in to the ICIS-NPDES CDX Web Form to submit batches. For automatic
      submissions, users will choose to configure a node in their environment to submit
      ("push") the files to CDX.

  1.3 AUDIENCE
The  primary  audience  for  this  document  is  developers,  project managers and  architects
throughout the ICIS-NPDES Batch implementation stakeholder organizations.

  1.4 DOCUMENT OVERVIEW
The following sections comprise the rest of the document:
      Section 2: XML Document Structure - This section describes the overall structure of
      the ICIS-NPDES Batch XML Schemas.
      Section 3: ICIS-NPDES Batch Flow Description - This section describes the overall
      flow details for exchanging  data between states, CDX and ICIS-NPDES.
   •  Section 4: ICIS-NPDES Batch Node Web Methods - This section describes the Web
      methods implemented by the ICIS-NPDES Batch node.
      Section 5: CDX Node Web Methods - This section describes the Web methods
      implemented by CDX.
      Section 6: Web Methods Used by State Node - This section describes the Web
      methods a state node can use to retrieve the required information from CDX.
ICIS-NPDES Batch System Flow Configuration Document

-------
Office of Enforcement and Compliance Assurance
2.     XML SUBMISSION DOCUMENT
  2.1  OVERVIEW
The ICIS-NPDES Batch Submission Document is a XML file that contains metadata to facilitate
the data processing and  sandwiching of ICIS-NPDES data  for a specific submission type.
Authorized states, tribes, or regions submitting Batch data to ICIS-NPDES must comply with the
ICIS-NPDES Batch Document schema.  Appendix A - ICIS-NPDES Batch Submission Type
lists all the submission types supported by ICIS-NPDES Batch. Instructions to create XML
instance submission documents for different submission types are contained in the ICIS-NPDES
Batch User Guide.

A batch submission may consist of one  or more submission documents.  Batches must be
submitted in compressed format (zip file).

  2.2  XML SUBMISSION DOCUMENT STRUCTURE
The XML Submission Document is divided into two main sections, namely the header section
and the payload section.  The following sub-sections describe their structure, providing a brief
description and example values for their major elements and attributes.

Figure 2-1 - XML Submission Document Sample, represents an example of instance document
for the Basic Permit submission type. In the picture, the header portion of the document is
highlighted in yellow, while the payload portion is highlighted in green.
ICIS-NPDES Batch System Flow Configuration Document

-------
                                                                                                      T
Office of Enforcement and Compliance Assurance                                                 .-. .r* JL
                         Figure 2-1 - XML Submission Document Sample
         

               UUStafferl
               Jajne Doe
               UU Department af Environmental Pratectian
               Bsaic Psrmic Sui»i3aiQn</lirla>
               <CreBtionTime>200I-l£-17TO§:30:47-OZ</CreationTime>
               ^Ccszment.>2nd reaubmittsl cf rejected tr:ansacticns frcir. May gtibmissicrK/CDicitLent^
               <Ccnt;actInfQ>123 Main Street, Anytaim UU, OOS5SF  (SSSJ
               <PrcpeEt^>
                  <name>e-mail</name>
                  <vslL3s>doe ,3ohn@sti«e .us</value>
               </Propert^>
               <Prcperty>
                  <name>Saurce</naiae>
                  <value>FullBatch.</vaIue>
                           •<H£ilingAddressIex-E>1200 Pennsylvania Avenue WEK/MailingAddressText^
2.2.1       Header

The header section contains information about the document, such as the author, his/her
employer and creation time. Table 2-1- XML  Submission Document Header Details, describes
the elements and attributes of the header and briefly explains how they are utilized during the
processing of submitted data.
                     Table 2-1 - XML Submission Document Header Details
Element          | Description              |  Example Value                | Required   | Notes
ICIS-NPDES Batch System Flow Configuration Document
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                                ICIS
Element
Id
Author
Organization
Title
CreationTime
Comment
DataService
Contactlnfo
Property
Name
Value
Description
The ICIS username of the
user submitting the XML
document
The first and last name of
the person generating the
XML document
The name of the
company generating the
XML document
The type of submission
The date and time the
document was created
Free text information of
the message contents
Name of backend
application
Name, mailing address,
city, state, zip, telephone
number, and email
address of the person
who may be contacted
with questions
concerning the
submission
Name-value pairs used to
provide additional
information about the
submitter
Name of the property
Value of the property
Example Value
Jdoe
John Doe
State X Department of
Environmental Quality
Discharge Monitoring Report
Submission
2007-06-15T01:30:OO.OZ
2nd resubmission of rejected
transactions from May
submission
ICIS-NPDES
John Doe
100 Somewhere St
McLean, VA 22 102
N/A (parent element)
e-mail
jdoe@epa.gov
Required
Yes
No
No
No
No
No
No
No
No
Yes, if e-
mail
notification
is desired,
otherwise
No
Yes, if
name
element is
present
Notes
The username is
used to
authenticate and
authorize the user
in ICIS
Reference
Reference
Reference
Reference
Reference
Always ICIS
Reference
When the
property name is
"Source", its
value is used to
identify the
source of the
batch submission
and therefore the
appropriate
response. Refer to
Section 3 for
details.
Used to identify
the type of
property. These
are custom
properties to
facilitate the
efficient
communication of
status.
Used to
communicate the
processing status
to the submitter.
ICIS-NPDES Batch System Flow Configuration Document
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                           ICIS
2.2.2     Payload

The payload section contains ICIS-NPDES data to submit to the ICIS-NPDES system. The data
include  the payload  submission type, transaction  time, transaction type,  and NPDES data
corresponding to the selected submission type. Table 2-2- XML Submission Document Payload
Details,  describes required elements and attributes of the payload section. Other elements  and
attributes must be present, depending on the specific submission type. An XML  Submission
Document may contain multiple payloads.
                 Table 2-2 - XML Submission Document Payload Details
Element
Operation
(attribute)
Transaction Type
Transaction
Timestamp
Description
This attribute provides
the payload submission
type
The type of transaction
that should be performed
on the submitted data.
The date and time the
data was extracted.
Example Value
Discharge Monitoring Report
Submission,
BasicPermitSubmission,
ParameterLimitsSubmission
N,R,X
2001-12-17T09:30:47.0Z
Required
Yes
Yes
No
Notes
Refer to the ICIS-
NPDES Batch
User Guide for a
complete list of
the possible
submission types.
Refer to the ICIS-
NPDES Batch
User Guide for
the transaction
types available
for each
submission types

ICIS-NPDES Batch System Flow Configuration Document
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                            ICIS
3.     RESPONSE DOCUMENTS
After batch data is submitted and processed, ICIS returns response files with information
regarding the processing outcome of the submission to the user.

Response files are different for ICIS Full Batch Users, NetDMR Users, and ICIS Batch DMR
Hybrid Users. ICIS distinguishes between the three sources for batch submissions based on the
information included in the header of the XML submission files. Specifically, the Name and
Value tags under the Property tag are used to identify the source of the batch submission and
therefore the appropriate response.

For ICIS Full Batch Users, the Property tag contains the following data:

<Property>
       <Name> S ource</Name>
       <Value>FullBatch</Value>
</Property>.
For NetDMR Users, the Property contains the following data:

<Property>
       <Name> S ource</Name>
       <Value>NetDMR</Value>
</Property>.

If no source information is provided, ICIS interprets the source of the submission as a DMR
Hybrid user. DMR Hybrid users only submit DMR files through batch to ICIS.

Table 3-1 - Batch Response Files Details, lists the response reports for different batch origins.
The following sub-sections describe each report.
                        Table 3-1 - Batch Response Files Details
Origin
FullBatch
Archive File Name
transaction ID> Oubmitting
Party>_<TimeStamp>_Response.zip
Report Name
Batch Audit Report
Accepted
Transactions XML
Report
RejectedTransactions
XML Report
Batch Transactions
Summary XML
Report
Batch File-Level Error
Report
Report File Name
transaction ID>_<Submitting Party>_<TimeStamp>_ Response.pdf
<Transaction_ID>_<SubmittingParty>_<TimeStamp>_Accepted_Response.xml
<Transaction_ID>_<SubmittingParty>_<TimeStamp>_Rejected_Response.xml
<Transaction_ID>_<SubmittingParty>_<TimeStamp>_Summary_Response.xml
<Transaction_ID>_<SubmissionDate>_File_Error_Response.pdf
ICIS-NPDES Batch System Flow Configuration Document
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                             ICIS
Origin

NetDMR
DMR
Hybrid
Archive File Name

<Transaction ID>_Response.zip
N/A
Report Name
Batch File-Level Error
XML Report
NetDMR Report
ICIS Batch DMR
Hybrid Report
Report File Name
<Transaction_ID>_<SubmissionDate>_File_Error_Response.xml
<Transaction ID>_Response.xml
<Transaction ID>_Response.pdf
  3.1  FULL BATCH RESPONSE
Full Batch Users receive a Batch Audit Report in PDF format, with details about accepted
transactions, rejected transactions, and totals for the accepted and rejected transactions on
separate tabs. Users also receive report files in XML format, with data similar to the one in the
PDF file.


3.1.1     Batch Audit Report
The Batch Audit Report includes:

 -   the Accepted Transactions report,

 -   the Rejected Transactions report

 -   the Batch Transactions Summary report.

The Accepted Transactions Report displays information about transactions that were processed
in ICIS without errors.  Warning messages may also be displayed on the Report, if they were
generated during transaction processing. Figure 3-1 - Accepted Transactions PDF Report Screen
Shot, displays a sample Accepted Transactions report.

               Figure 3-1 - Accepted Transactions PDF Report Screen Shot
ICIS-NPDES Batch System Flow Configuration Document
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                                              I CIS
                                                       Environmental Protection Agency
                                                    Integrated Compliance Information System
                                                         Accepted Transactions Report
                                               Batch Submission Date From: * To: *
                                                             Batch ID(s): f8Q2a1c8-38f4-4fa5-95a9-aeOa168e8dee
                                                         Submitting Party: HQ
                                                               User ID(s): *
                                                                                 Created Dat<
                                                                                 Refresh Dab
                                                                                   Created 85
   Submitting Party: Region HQ
    Batch ID
                                      User ID
                                                    Run Date
                                                                    Submission Date
                                      JSGERA
                                                    OQ.'24.i'2010
                                                                    D5.'24,'2D10
    Submission Type
Trans Type
Key Value
Error / Warning Messages!
    Basic Permil

    Basic Permit
    Basic Permit
    PermiRed feature
    Batch ID
New

Change
Replace
New
WYREPOOD1

WYREPOD02
WYREP0003
WYREPOQ02002
Warning: Telephone Extension Number is no" a valid tag
Mumber Type Code PGE. The Telephone Extension Num
                                      User ID
                                                    Run Date
                                                                    Submission Date
    KC2s' c8-38f4-4-'a5-95a6-aeOaie8eBdee
                                     WESTS
                                                    06724/2010
                                                                    Q8/24,'2D10
    Submission Type
                              Trans Type
            Key Value
                                                                                    Error I Warning Message(s)
    Basic Permit

    Baste Permit
    Base Permit
    Permitted Feature
New

Change
Replace
New
WYREPOCC4

WYREPOCC5
WYREPOCW
WYREPOQD5002
Warning: Telephone Extensbn Number is not a valid tag
MumberType Code PGE. The Telephone Extension Num
The Rejected Transactions Report displays information about transactions that did not complete
processing in ICIS because of errors caused by business rule violations and/or transaction
processing errors. Figure 3-2 - Rejected Transactions PDF Report Screen  Shot, displays a
sample Rejected Transactions report.
                  Figure 3-2 - Rejected Transactions PDF Report Screen Shot
ICIS-NPDES Batch System Flow Configuration Document
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                                           I CIS
                                                      Environmental Protection Agency
                                                   Integrated Compliance Information System
                                                        Rejected Transactions Report

                                              Batch Submission Date From:' To: *
                                                            Batch ID(s): f802a1c8-38f44fa5-95a9-aeOa16Be8dee
                                                        Submitting Party: HQ
                                                             User ID(s): *
Created Dat<
Refresh Dati
 Created 85
   Submitting Party: Region HO
Batch ID
User ID Run Date
Submission Date
fSC2a'c8-38f4-4sa5-85a8-ae03l68e8dee UNGERA 08/24.2010 06724/2010
Submission Type
Basic Permi!
Basic Permit
Basic Permit


Permitted Feature

Batch ID
Trans Type
New
Change
Replace


New

Key Value
WYREPOD07
WYREPOCCB
WY^EPC'DCa


WYREPOD10001

User ID Run Date
18D2atc8-38f4-4fa5-85a&-aeQa1fi8eBdee WE
Submission Type
Basic Permit


Basic Permit
Basic Permit


Permitted Feature

Trans Type
New


Change
Replace


New

STB 06/24/2010
Key Value
WYREPOD11


WYREPOD12
WYREPQD13


WY??EPOC 14001

Error / Warning Messagejs)
The Permit Type Code NPJ is invalid for the Basic Permit
A [sennit does not exist for the key data entered.;
At least one Permittee Address must be entered for the pi
Text ZZB does not have an Affiliation_Ca5egory of Non-G
exist or is inactive in the ICIS reference tabfe.;
A Permitted Feature cannot be added because the Permr
in ICIS.;
Submission Date
08/24/2010
Err or ' 'A'jirning MeEs;ui*;s.|
The Permit Type Code NPJ is invalid for the Basic Permit
Telephone Extension Number is not a valid tag for Contat
Type Code PGE. The Telephone Extension Number 423 '
A perm it does nor. exist for she key data entered.;
At least one Permittee Address must be entered for the pi
Text ZZB does not have an AfHIiation_Ca:egory o' Non-G
exist or is inactive in the ICIS reference table.;
A Permitted Feature cannot be added because the Permr
in ICIS.;
ICIS-NPDES Batch System Flow Configuration Document
                                                                                                     10
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                                    ICIS
The Transactions Summary PDF Report displays the total number of transactions accepted, total number of transactions rejected, and
the percentage of transactions accepted, at both the submission type level and at the batch level. Figure 3-3 -Batch Transactions
Summary PDF Report Screen Shot, displays a sample Transactions Summary report.
                               Figure 3-3 - Batch Transactions Summary PDF Report Screen Shot
                                                  Environmental Protection Agency
                                                Integrated Compliance Information System
                                                   Batch Transactions Summary Report

                                                       Submission Date From: * To:*
                                                Batch ID{s): f802a1c8-38f44fa5-95a9-aeOa168e8dee
                                                          Submitting Party: HO
                                                            User ID(s):'

                                                      Submitting Party: Region HO

                                                Batch ID: f802a1 c8-38f<PMa5-95a9-aeQa168e8dee
                                                       Submission Date: 06/2*2010
Created Date: 05/17/2007
Refresh Date: 06;24/2010
  Created By: HO
Transaction
Type
Submission
Type
Basic Permit
Permitted
Feature
Total
N
Accepted
2
2
4
N
Rejected
2
:
4
R
Accepted
2
0
2
R
Rejected
2
0
2
C
Accepted
2
o
2
C
Rejected
2
0
2
X
Accepted
0
0
0
X
Rejected
C
C
0
D
Accepted
D
0
0
C
Rejected
0
0
0

Total
Transactions
12
4
16

% Transactions
Accepted
fDOC *
fDC'C =*
50.00%

Total
Submissions
12
4
16
ICIS-NPDES Batch System Flow Configuration Document
                                                                                                                                 11
</pre><hr><pre>
-------
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                            ICIS
The following table, Table 3-2 - Batch Audit Report Details, describes the fields included in the
Batch Audit Report.

                         Table 3-2- Batch Audit Report Details
Element
Information
Example
All Reports
Submitting Party
Batch ID
Submission Date
Submission Type
Transaction Type
Two character postal code for a State or two
digit number for a Region of the user that
submitted the XML. EPA Headquarters is also
able to submit XML batches to ICIS.
Identification string provided to the user by CDX
after a batch is submitted to ICIS.
Date the batch was submitted by the user.
Name of the data family being updated.
The type of the transaction.
HQ, AL, or 01
f802a1c8-38f4-4fa5-95a9-aeOa168e8dee
06/24/2010
Basic Permit
New
Accepted/Rejected Report
User ID
Run Date
Key Value
Error/Warning Message
ICIS ID of the person submitting the XML
Date the batch was processed by ICIS.
Key tags submitted for the XML transaction.
Error/Warning Message generated when a
business rule is violated during processing.
UNGERA
06/24/2010
WYREP0007
The Permit Type Code NPJ is invalid for
the Basic Permit Data Payload
Summary Report
Accepted
Rejected
Total Transactions
% Transactions
Accepted
Total Submissions
Total
Total number of accepted transactions per
transaction type and submission type.
Total number of rejected transactions per
transaction type and submission type.
Total number of transactions per submission
type.
Percentage of transactions that were accepted
by ICIS.
Total number of submissions for a submission
type.
Total number of submissions for the entire
batch.
2
2
12
50.00%
12
16
3.1.2     Batch XML Response Files
In addition to the Batch Audit Report, ICIS returns three separate response files in XML format:

-  the Accepted Transactions Report

   the Rejected Transactions Report

   the Batch Transactions Summary Report.

The Accepted Transactions Report provides the same information included in the corresponding
PDF report.  Figure 3-4 - Accepted Transactions XML Report Screen Shot, displays a sample
Accepted Transactions report.

              Figure 3-4 - Accepted Transactions XML Report Screen Shot
ICIS-NPDES Batch System Flow Configuration Document
                                                                                    13
</pre><hr><pre>
-------
                                                                                                      T <P  I  S
Office of Enforcement and Compliance Assurance                                                    JLJ-^>AJ*^
<?jcr.l veE=icn='f1.0"?>
<Subir..i35ian.?iespcn5e X3j.ns :X5±=11 http://www.w3, Qrg/2Q01/XKLScheir;a-inat5nce" xrr.ln=="http : //www.exchangenecwcrk .net /schema /icis/l">
    <TrsnsactionIdentifiezr>_457b7249-cb09-47€4-98ac-ec5Q2443c52a</Trsji3BctianIdenti£ier>
    < Suijir.it tingE a rty>
        <U3errID>hq3l</UserID>
        < Sufcici s 3 i cnl yp e >
           <SubiEi5siQnTypell5Jce>]!lB3ter  General Pe:nr.it</Siib:r.i = 3ianTypeNe3ie>
           < Sufcir.i 3 3 i ons Accept e d>
               < SiibiLi s s i cnAc c ep n ed>
                  < SiibTti s 3 i onAccep t e dKe y >
                      < E e rrci r ?.e cc rdl dene i f i e r >
                         <Peritit;Identifier>TXMGP100Q</Per3ticIdent;ifier>
                      < / Pe nti i:?.e CQ r dl denr. i f i e r >
                      <SiibaLi33icnTran35CT:io
                  </Sutir.issiQnAccept;edKey>
               < / S uhiF-i 3 5 1 « nAc c ep t e d >
        < S ubiti 3 3 i c nT yp e >
           <3afc^.i3sionTypeN£^r,e>Ferir.itted Fes ture</Siib:r.a 5
           < S ub2c.i a a i ans Ac c ep t e d>
               <Siifcnii33icn&ccepted>
                       i 3 s i anAc cep t e dKe y >
                          -^PeETtitldentif ieE>AK110001G</Eernd.tIdentifier>
                          <Pernr.ii.-cedFe£tureIdentifier>001</Eemrj.i.-D.edFe£tureIdentifier>
                         er3rj.ttedFeature^ecardIdentif ier>
                  < / Subiti s s i cnAcc ep t e dKe y >
               < / S ubn^i 5 3 i s nAc c ep t e d>
           < / Sub:r.i s s i cnsAccept ed>
        < / Submi s a i anT ype >
    -i/Sub:r.ittingFarty>
< / S ubaii 3 a i a mle ap ens e >
The Rejected Transactions Report provides the same information included in the corresponding
PDF report. Figure 3-5 - Rejected Transactions XML Report Screen Shot, displays a sample
Rejected Transactions report.

                   Figure 3-5 - Rejected Transactions XML Report Screen Shot
ICIS-NPDES Batch System Flow Configuration Document                                                        14
</pre><hr><pre>
-------
                                                                                                  T  <P I  S
Office of Enforcement and Compliance Assurance                                                  JLJ-^>AJ*^

<?xrr.l ver5icn="l.n"?>
<Sufcmis3icnRespon3e xrtlns :xsi="http: //www.wS _ai:g/20Ql/XKLSch.e]ra-in5tance"' xrtilns="http: //www. exchangenetwcEk_net/3cheir.a/ici3/l1'>
    <Tran3acticnIdentifier>_4a7b7249-cba9-47€4-93ec-ec502443c52a</Ti:ansactic;nIdentifiei:>
    <Sut:r.i55icnDete>2010-Q?-19</Suh:r:is3icnDate>
    <Erocessed:)=te>2 0 10-07-23</ Processed:: s, te>
    < Subiti 1 1 ingP E E t y >
       <U5eElD>hqal</U3erID>
       < Subiti s 5 i onTi'pe >
          < Submi 3 a i cnT yp eHsjce >Liici t S e t < / Sub^.i s = i cnlyp etlaice >
          -; S ubnr.i s s i onE r r c r s >
              <SubmissicnZrror>
                 < Subrr.i s s i a nZ r r a r Ke y >
                     <Limit Sen Identified
                        <EerrEitIden-Cifier>VAIMTTEST</EerTc.it;IdencifieE>
                        <Penr.it.t.edFeECureIdentif ierXJQK/EeritittedFestureldentif ier>
                        <Limit Set: Designatcr>S< /Limit SetDesignat or >
                     </LimitSetIdentifier>
                     <Subrr.issionTr5n3acT;icnXjIrpeCode>N</Sub^.i33iGnTr£ns5CLicnTiipe^'i:!;:ie>
                 < / Subini s s ionS rrc cKe y >
                 <SrEorRepoEt>
                     <ZEEcrCcde>L3110</ErEcrCcde>
                     <ErEt3rTypeCcde>Error</ErrcrTypeCGde>
                     <Errar-ie3cript:icnitLiiEiit Set Modi fi cat i en Effective Dste icust exist , </ErrorDescripticn>
                 </Srror Report >
                     <ErrQEZiescript:icn>Liitit  Set Modi zi cat ion Type Cede is inactive _</Errc:rDe3cripticn>
                 </Ei:i:oi:RepoEt>
              </Sufc-ici3sicnErrci:>
< / Sub^.i s s icnSe sp ens e >
The Batch Transactions Summary XML Report provides the same information included in the
corresponding PDF report, with the difference that the total accepted, total rejected, and
percentage of accepted transactions are listed by ICIS User ID and then by Submission Type for
each Batch, instead of by Submission Type only. Figure 3-6 - Batch Transactions Summary
XMLReport Screen Shot, displays a sample Transactions  Summary report.

              Figure 3-6 - Batch Transactions Summary  XML Report Screen Shot
ICIS-NPDES Batch System Flow Configuration Document                                                     15
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                                                          I  CIS
      veEsicn="l.Q'"?>
        iQn3.e3pCin5e xnilns :xsi="http://www.w3 . CEg/2Q01/XMLSch.eir.a-in3tance" 3cnlns="http: //www. exchangeneLwcrk _net/3ch.eir.a/icia/lt*>
    <TE5nsac:tiQnIdentif ier>_e3f Sf43a-b€7e-42dS-bfSd-192ec9e2€elO</Trsns5ctiDnIdentifieE>
    < Subiti s s i cnl?a t e >201G-07-Q2</ Subiti s s i snUa t e >
    <PEceessedDate>201G-Q7-15</FEacessedI>3te>
    < Subnii 1 1 ingP a E t y >
        <UseElD>HQSK/U3erID>
        -« Subrci s s i cnTyp e >
           < Sufcimi s s i cnl ypelT=a:.e >Liic.i t S e t < / Sufcjti 331 onTyp eNsir.e >
           < Subiti 33i cnSurcrts r y >
               <TranssctiQnIypeTGt.5ls>
               </Iran3acticnTypelQtal3>
               <TctalIrans5ctiQns>2</TQt£lIransecticns>
               <Percent;TE5n3acticnsAccepted>0. 0< / Pe r cent Trans a c:l;icnsAccepted>
           < / Subir.i a a i onSuiar.5 r y >
              s s i c nT yp e >
           ^i s s i Q nT yp e >
            < Sufcrci 3 3 i onSuTTJts r y >
                   <u3r.ssGnEan3accDnypece><iTr;33CinransactQn
                   <Tct£lAcceptedTran3actians>0</TotalAcceptedTran3actiGns>
                   <TctalSejectedTrEn3actiQn3>l</TDCal5.ejectedTran3acticn3>
               </Iran3actiQnTypeTotals>
               <TQtalTi:ansat:tiQn3>l</TatalIransactiGn3>
               < Fe r cent Trans a ctionsAccepted>0_ 0</FeEcentTransacticnsAccepted>
            < / Sub jr.i 3 = i cn£u^jr.5 r y >
        < / Subiti s 3 i a nT yp e >
                                               a! Per cent! EEn3E.cticn5Accepted>
        •^TctslEeEcentTEansacticnsAccepted>0 , D
    < I Siobrti 1 1 ingPa E t y ">
< / S ubxi s s i sn^e 3p ens e >
The following table,  Table 3-3: Batch XML Response File Details, provides a brief description
of the elements in the XML response files
                              Table 3-3 - Batch XML Response Files Details
Element
Information
Example Value
All Files
Transactionldentifier
SubmissionDate
ProcessedDate
SubmittingParty
UserlD
SubmissionType
SubmissionTypeName
Identifier returned to the user from CDX
after the batch submission.
Date of XML Submission
Date the batch was processed
Data related to a certain user submission
ICIS User ID of the person submitting
the XML
Data related to a certain data family
Descriptive name for a submission type
e3f8f43a-b67e-42d8-bf6d-
192e69e26e10
2010-06-01
2010-06-01
N/A (parent element)
HQS1
N/A (parent element)
Basic Permit
Accepted Report
SubmissionsAccepted
SubmissionAccepted
SubmissionAcceptedKey
List of accepted submissions for a
certain User ID and submission type
Data related to an accepted submission
Business key and transaction type for an
accepted submission
N/A (parent element)
N/A (parent element)
N/A (parent element)
ICIS-NPDES Batch System Flow Configuration Document
                                                                                                                    16
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                                ICIS
Element
< SubmissionType >ldentifier
SubmissionTransactionTypeCode
AcceptedReport
InformationCode
InformationTypeCode
InformationDescription
Information
Business key for a submission
Transaction type for a submission
Warning message for a submission
Warning message code
Warning message type
Warning message.
Example Value
N/A (parent element).
Note: The actual name and content of
the element depends upon the
submission type
N
N/A (parent element).
DMR300
Warning
Warning: The following Numeric
Condition Quantity(ies) has a Percent
Exceedence greater than 500%: Value
will be listed for each column that has
this error.
Rejected Report
SubmissionsErrors
SubmissionError
SubmissionErrorKey
< SubmissionType >ldentifier
SubmissionTransactionTypeCode
ErrorReport
ErrorCode
ErrorTypeCode
ErrorDescription
List of rejected submissions for a certain
User ID and submission type
Data related to a rejected submission
Business key and transaction type for a
rejected submission
Business key for a submission
Transaction type for a submission
Error/Warning message for a submission
Error/Warning message code
Error/Warning message type
Error/Warning message.
N/A (parent element)
N/A (parent element)
N/A (parent element)
N/A (parent element).
Note: The actual name and content of
the element depends upon the
submission type
R
N/A (parent element).
LS110
Error
Limit Set Modification Effective Date
must exist.
Summary Report
SubmissionSummary
TransactionTypeTotals
SubmissionTransactionTypeCode
TotalAcceptedTransactions
TotalRejectedTransactions
TotalTransactions
PercentTransactionsAccepted
TotalSubmissions
TotalPercentTransactionsAccepted
Summary data for a certain User ID and
submission type
Summary data per transaction type
Transaction type
Total number of accepted transactions
per transaction type
Total number of rejected transactions
per transaction type
Total number of transactions per
submission type.
Percentage of accepted transactions per
submission type.
Total number of submissions per User
ID.
Total number of accepted transactions
per User ID.
N/A (parent element).
N/A (parent element).
C
4
1
5
80.00%
12
97.25
ICIS-NPDES Batch System Flow Configuration Document
                                                                                        17
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                                       I  CIS
3.1.3      Batch File-Level Error Report
The Batch File Level Error Report is a PDF file generated in case critical errors (e.g., an invalid
ICIS user id populated in the XML files) prevented the processing of a received batch. The
report includes the Transaction ID for the Batch, along with a list of the critical errors that
occurred during batch processing. Figure 3-7 - Batch File-Level Error Report Screen Shot,
displays a sample File-Level Error PDF report.

                   Figure 3-7 - Batch File-Level Error Report Screen Shot
                  Batch _3e134e25-5e7a-4d7d-abd9-6d2626ba279f has
                  processed in ICIS.

                  Some files could not be processed due to the following errors:
                  - Unable to parse file Unpermitted_Facility.xml because 'xxx' is an invalid ICIS user
                  - Batch parsing failed
3.1.4      Batch File-Level Error XML Report
The Batch File Level Error XML Report provides the same information included in the
corresponding PDF report. Figure 3-8 - Batch File-Level Error XML Report Screen Shot,
displays a sample File-Level Error XML report.
                Figure 3-8 - Batch File-Level Error XML Report Screen Shot

<?xrcl ver3ian="l . Q"?>
OubsLLSsionSespcnse ictlns :x=i="http ://www.w3 .org/ 2 001/XMLScheir.a- instance" xjtlns="htcp: //www.excnangenetwcrk.net/scheita/icis/l''>
   <TransactionIdentifier>_3el34e2S-5e7a-4d7d-abd3-Sd262Sbs279f</TransactiDnIdentifier>
         File£rrerrlepGrt>
           <ErrorTypeCode>2rror</ErrarTypeCode>
           <SrrarDe5CEiptiDii>Unafcle co parse file tJnpermicted_Facility.KirJ. because
                                                                   is an invalid ICIS uaer</ZiEorDe3cripticn>
           <£rrarTypeCode>irrar</IrrcirTypeCade>
           <ErrorDescription>Bat.ch parsing failed<.-TrrorDe5cripcion>
         </File£rrorSeport>
< / SiibiLiB. 3 ion-le spans e>
                     Table 3-4 - Batch File Level Error XML File Details
Element
Transaction Identifier
SubmissionDate
ProcessedDate
FileSubmissionErrors
FileSubmissionError
Information
Identifier returned to the user from CDX
after the batch submission.
Date of XML submission
Date the batch was processed
List of file-level errors occurred during
batch processing
List of file-level errors occurred during
batch processing
Example Value
457b7249-cb09-4764-98ac-
ec502443c52a
2010-08-01
2010-08-01
N/A (parent element).
N/A (parent element).
ICIS-NPDES Batch System Flow Configuration Document
                                                                                                18
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                                              I CIS
FileErrorReport
ErrorTypeCode
ErrorDescription
Data related to a file-level error
Error message type
Error message.
N/A (parent element).
Error
Batch parsing failed
  3.2  NETDMR RESPONSE
The NetDMR response report is an XML file including the errors that occurred for each DMR
transaction in a batch submission. In case critical errors prevented the batch from being
processed, the report lists the file-level errors that occurred.  The response file is sent from ICIS
to NetDMR, where it be can retrieved by NetDMR Users after login. Figure 3-9 - NetDMR
Report Screen Shot, displays a sample NetDMR report.

                             Figure 3-9 - NetDMR Report Screen Shot
   rsi=n="l. 0"3>
   ionResponae xrc.lns : KS±= "http://www.w3 . crg/2QQl/XKLScheir.5-in5tance" xrtLlns="http: //w
<Tran3acticnIdenti£ier>_b631e454-13Sd-42 30-95 a£-d3eSlcadQOa8</Ti:an3acticnIdent if ier>
                                                                          . exchsngenetwcrk .
   <Cre5ticnZi&te>2010-Q7-20</CreaticnDste>
   < Subini s s i cnZ r r cr s >
       < Subici s si onZ rr or >
          < Sub:r,i 3 s i onl r r a rKe y >
             -OMSJarajteterldentifiers-
                <PencitIdentifieE>AK1234567</PenEitIdentifiei:>
                <Eer:iiittedFe£tuEeIdentifieE>QQl</PerTr.ittedFeBtuEeIdentif ier>
                <Liaiit Set Designs t or >XX</LiiiiitSet Designator >
                <MonitoringPericdZndD5te>2 010-02-2 S</MonitoringPeciodEndDate>
                <F£rair.eterCade>30383</EsES3EeterCade>
                ^MenitGringLacetienTypeCade>J</ManitaringLccstiGnTypeC'ade>
                < See s en I dent if ier>0</3eesonldentifier>
             </DMa.F&raic.eterIdentifier>
          < / SiibitLi s s i onZ r r c rKe y >
             <ErrorDe3criptiQn>A Parajceter does net exist that nistchea the data enteEed-</Er:i:QEDe3CEiptian>
          </ErrorRepcrt>
       < / Subiti s s i cnZ r r a r >
   < / Siibnii s s i cnZ r r c r a >
< / Submi s s ± onRe gp^ons e>


Table 3-5 - NetDMR Response File Details summarizes the tags included in the XML response
file, providing a brief description and an example for each tag.
                            Table 3-5 - NetDMR Response File Details
Element
Transactionldentifier
SubmissionDate
CreationDate
SubmissionsErrors
SubmissionError
Information
identifier returned to user from CDX after
the DMR batch submission.
Date of batch submission
Date the batch was received
List of rejected DMR transactions
Data related to a rejected DMR
transaction
Example Value
_b631 e454-1 95d-4230-95a6-
d3e51cadOOa8
2010-08-01
2010-08-01
N/A (parent element)
N/A (parent element)
ICIS-NPDES Batch System Flow Configuration Document
                                                                                                       19
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                          ICIS
Element
SubmissionErrorKey
DMRParameterldentifier
Permitldentifier
PermittedFeatureldentifier
LimitSetDesignator
MonitoringPeriodEndDate
ParameterCode
MonitoringLocationTypeCode
Seasonldentifier
SubmissionTransactionTypeCode
ErrorReport
ErrorCode
ErrorTypeCode
ErrorDescription
Information
Business key and transaction type for a
rejected DMR transaction
Business key for a DMR transaction
Permit NPDES ID
Permitted Feature ID
Limit Set Designator
Monitoring Period End Date
ParameterCode
Monitoring Location Code
Season Identifier
Transaction type for the DMR
transaction
Error/Warning message data for the
DMR submission
Error/Warning message code for the
DMR submission
Error/Warning message type for the
DMR submission
Error/Warning message for the DMR
submission
Example Value
N/A (parent element)
N/A (parent element).
AK1 234567
001
A
2010-10-31
00950
J
0
C
N/A (parent element).
DMR080
Error
A Parameter does not exist that
matches the entered data.
  3.3  ICIS BATCH DMR HYBRID RESPONSE

ICIS Batch DMR Hybrid Users receive a PDF file that simply informs whether the batch was
processed in ICIS. If it was not, the file lists the files that were not processed along with errors.
Figure 3-10 - ICIS Batch DMR Hybrid Report Screen Shot, displays a sample ICIS Batch
Hybrid report.
               Figure 3-10 - ICIS Batch DMR Hybrid Report Screen Shot

               Batch _7a3da61e-674d-4472-8aOe-3db946474e5d has
               processed in ICIS. Please log on to ICIS to retrieve the audit
               reports.
ICIS-NPDES Batch System Flow Configuration Document
                                                                                  20
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                         I CIS
4.     ICIS-NPDES BATCH FLOW DESCRIPTION	

A node is a service provider on  the Exchange Network conforming to the Network Node
Functional Specification. The Network Node Functional Specification describes the behavior and
interfaces of the service provider component. The specification  is available on  the Exchange
Network website (www.exchangenetwork.net). CDX deploys a node to accept batch submissions
from the state  users.  The ICIS-NPDES  Batch system deploys a node in the  ICIS-NPDES
environment to  allow the receipt of batch submissions from CDX.

  4.1   FILE EXCHANGE IN NODE TO NODE CONFIGURATION
Figure 4-1 - File Exchange in Node to Node Configuration, describes the steps involved in
exchanging the  files between the states, CDX and ICIS-NPDES Batch for this configuration. In
this deployment, an exchange node is configured in the state, CDX and ICIS-NPDES Batch
environments. The following steps describe the details of the batch submissions in this
configuration:
               Figure 4-1 - File Exchange in Node to Node Configuration
      Before submitting a batch document to CDX, the state node uses the Authenticate method
      by  supplying  a  CDX  user  id  and  password to  authenticate.  Upon  successful
      authentication CDX returns a security Token to the state node. If the supplied user id,
      password combination is invalid, a SOAP fault with "E_UnknownUser" as the error code
      is returned to the invoker.
ICIS-NPDES Batch System Flow Configuration Document
                                                                                21
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
   2.  The state node uses the Submit method to submit the batch data and the issued security
       Token (from Step 1) to CDX.
          a.   CDX validates the security token.  If the security token is invalid, the entire batch
              is rejected, a SOAP fault is returned to  the client, and batch processing ends.
              Otherwise processing continues to step b.
          b.   CDX  archives the received batch files.  They will be maintained in an  easily
              accessible archive for one month. After  a month, the archived batches will be
              moved to a secondary storage device like a tape. Tapes will  be maintained for a
              total of five years from the batch receipt date.
          c.   CDX  saves the submitted XML  files in  the batch. The batch status  is  set to
              "Received" and a Transaction ID is generated and returned to  the client. Non-
              XML  files are silently ignored. If no XML files are submitted,  CDX rejects the
              batch and no further processing takes place.

   3.  Upon  receiving  the files  from the state  node, CDX unzips the compressed  batch
       submissions and performs the following process:
          a.   Invokes its virus scanning service to validate that the submitted files are free from
              viruses.  If all of the files contain  viruses, the entire batch submission is rejected
              and the batch status is  set to "Failed". Otherwise, virus-laden  files are silently
              ignored, and processing continues with the valid files.
          b.   Valid files from step "a" are validated against the target XML schema. If all of the
              files are invalid, the entire batch submission is rejected and the batch status is set
              to "Failed".  If any files are valid, the batch status remains set to "Received" and
              the valid files continue processing  at step c.
          c.   The QA server at CDX creates a report with the status of the validations. This
              report can be downloaded using the "Download" web method  on CDX.
          d.   If steps "a" through "c" complete  successfully, valid files  from the batch  are
              archived.   Valid batches to be  passed to ICIS-NPDES will be archived in an
              easily accessible  storage area for one month.   At the end of the month,  the
              archived batches will be permanently deleted.
          e.   If steps a through d complete successfully, the batch status is set to "Pending" and
              the process continues at step 4.

   4.  CDX submits the valid files from the batch to the ICIS-NPDES Batch node by invoking
       the Submit method on the ICIS-NPDES Batch node. The ICIS-NPDES Batch node
       stores the received files and the corresponding Transaction ID supplied by CDX for
       parsing. The received files are  stored until the batch process for the corresponding files is
       complete.

   5.  ICIS-NPDES Batch validates the ICIS-NPDES user id submitted with the batch
       submission.
          a.   If the user id is invalid, an error message is captured in the ICIS-NPDES batch
              logs. If all of the submitted files have invalid user ids, the process continues at
              step 6.
ICIS-NPDES Batch System Flow Configuration Document                                           22
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
          b.  If the user id is valid for at least one of the files in the submission, valid files are
             parsed, and payloads are extracted and saved in the ICIS Batch Operation
             Database.

   6.  In preparing to submit the processing details to CDX, the ICIS-NPDES Batch node
       authenticates itself by invoking the Authenticate method on CDX. On successful
       authentication, CDX returns a security Token.

   7.  Depending on the Batch origin, ICIS-NPDES Batch creates the processing report
       according to the following guidelines:
          a.  Critical errors (e.g., an invalid ICIS user id populated in the XML files) that
             prevented the processing of a received batch are reported in the response files, as
             described in Sections 3.1-3.3. If no critical errors occurred, processing continues
             at step b.
          b.  After the batch is processed, ICIS-NPDES Batch creates response files based on
             the batch origin, as described in Section 3.
          c.  The ICIS-NPDES Batch node uses the Submit method to send the documents
             created in step "a" or "b" to CDX. CDX archives the received documents.

   8.  After submitting the processing report to CDX, ICIS-NPDES Batch uses the Notify
       method to update the processing status of the batch at CDX. CDX updates the batch
       status to "Completed".

   9.  In preparation for retrieving the batch processing status and the processing documents the
       state node obtains a securityToken by supplying the user id and password to the
       Authenticate  method on CDX. As described in step 1, the Authenticate method returns a
       SOAP fault in case of failed authentication.

   10. Using the Transaction ID provided by CDX in step 2, the state node retrieves the batch
       status at regular intervals using the getStatus method.

   11. When the batch status is "Completed", the state node downloads the batch processing
       documents for that specific Transaction ID from CDX using the Download method.
  4.2  FILE EXCHANGE IN WEB FORM TO NODE CONFIGURATION
In this configuration, state users submit batches using the ICIS-NPDES CDX Web Form. Before
submitting a batch, the user logs into CDX using a pre-established user id and password. Upon
successful authentication, the user can submit  the files to CDX.  All  batch  files  should  be
compressed prior to submitting to CDX. CDX returns a Transaction ID after receiving the batch
submission. Figure 3-2 - File Exchange in Client to Node Configuration,  describes the steps
involved in exchanging the  files  between the  states, CDX and ICIS-NPDES Batch  for this
configuration.
ICIS-NPDES Batch System Flow Configuration Document                                          23
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
                                                                               I CIS
                Figure 4-2 - File Exchange in Client to Node Configuration
          State/Regions
            webFonn
   CDX
                         1. Authenticate*

                          2. Submit- -*
                       I -9. Download-*.
CDX node
 ICIS
                                           I
                                       3, Process
                 4. Submit-"
                 8. Notify

              N  7. Submi

              6. Authenticate
ICIS Batch
  Node
                                                                        ouiMii Batch
                                      Pre-Process
                                                                      ICIS Batch
    1.  Before submitting a document to CDX, the  state user logs into CDX using the ICIS-
       NPDES CDX Web Form.

    2.  Upon successful login, the state user uploads a batch to CDX.
          a.  CDX validates the security token. If the security token is invalid, the entire batch
              is rejected, a  SOAP fault is  returned to the client, and batch processing ends.
              Otherwise processing continues to Step b.
          b.  CDX archives the received batch  files. They  will be  maintained in an easily
              accessible archive for  one month. After a month, the archived batches will be
              moved to a secondary  storage device like a tape.  Tapes will be maintained for  a
              total of five years from the batch  receipt  date.
          c.  CDX saves  the  submitted XML files in the batch.  The batch status  is set to
              "Received" and  a  Transaction ID is generated and returned to the client. Non-
              XML files are silently ignored. If no  XML files are submitted, CDX rejects the
              batch and no further processing takes place.
   3.  Upon  receiving  the  files  from the  ICIS-NPDES  CDX  Web Form  CDX unzips
       compressed batch submissions and performs the following process:
          a.  Invokes its virus scanning service to validate that the submitted files are free from
              viruses. If all  of the files contain viruses, the entire batch submission is rejected
ICIS-NPDES Batch System Flow Configuration Document
                                                                                        24
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
              and the batch status is set to "Failed".  Otherwise, virus-laden files are silently
              ignored, and processing continues with the valid files.
          b.  Valid files from step "a" are validated against the target XML schema. If all of the
              files are invalid, the entire batch submission is rejected and the batch status is set
              to "Failed". If any files are valid, the batch status remains set to "Received" and
              the valid files continue processing at step c.
          c.  The QA server at CDX creates a report  with the status of the validations. This
              report can be downloaded to view the validation errors of the submitted files.
          d.  If steps "a" through "c"  complete successfully, valid files from the batch  are
              archived.   Valid  batches to be  passed to ICIS-NPDES will be archived in an
              easily  accessible storage  area  for one month.  At  the end  of the month,  the
              archived batches will be permanently deleted.
          e.  If steps a through d complete successfully, the batch status is set to "Pending" and
              the process continues at step 4.

   4.  CDX submits the valid files from the batch to the ICIS-NPDES Batch node by invoking
       the Submit method on the ICIS-NPDES Batch node. The ICIS-NPDES Batch node
       stores the received files and the corresponding Transaction ID supplied by CDX for
       parsing. The received  files are stored until the batch process for the corresponding files is
       complete.

   5.  ICIS-NPDES Batch validates the user id submitted with the batch submission.
          a.  If the user id is invalid, an error message is captured in the ICIS-NPDES batch
              logs. If all of the submitted files have invalid user ids, the process continues at
              step 6.
          b.  If the user id is valid for at least one file in the submission, ICIS-NPDES Batch
              parses and processes the valid files according to the predefined processing logic.

   6.  In preparing to submit the processing details to CDX, the ICIS-NPDES Batch node
       authenticates itself by invoking the Authenticate method on CDX. On successful
       authentication, CDX returns a security Token.

   7.  Depending on the Batch origin, ICIS-NPDES Batch creates the processing report
       according to the following guidelines:
          a.  Critical errors (e.g., an invalid ICIS user id populated in the XML files) that
              prevented the processing of a received batch are reported in the response files, as
              described in Sections 3.1-3.3. If no critical errors occurred, processing continues
              at step b.
          b.  After the batch is processed, ICIS-NPDES Batch creates response files based on
              the batch origin, as described in Section 3.
          c.  The ICIS-NPDES Batch node uses the Submit method to send the documents
              created in step "a" or "b" to CDX. CDX archives the received documents.

   8.  After submitting the processing report to CDX, ICIS-NPDES Batch node uses the Notify
       method to update the processing  status of the batch at CDX. CDX updates the batch
       status to "Complete".
ICIS-NPDES Batch System Flow Configuration Document                                           25
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
   9.  The state user logs in to the ICIS-NPDES CDX Web Form, which shows a status of
       "Complete", and selects the transaction history to view all the processing details and
       documents related to the batch transaction including the ICIS-NPDES Batch Processing
       Status PDF.
ICIS-NPDES Batch System Flow Configuration Document                                          26
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
5.     ICIS-NPDES BATCH NODE WEB METHODS	

ICIS-NPDES Batch implements the following Web services from the methods defined in the
Network Node Functional Specification to accept batch submissions from CDX:

   •   Submit - CDX invokes this Web method to submit files to ICIS-NPDES Batch.

  5.1   SUBMIT WEB METHOD
   Description:
   Submit is a utility method used to send one or more files to a service provider. A positive
   response from the node indicates that the files were successfully received.  An exception
   message means that the submitted documents were not delivered to the recipient. The ICIS-
   NPDES Batch node returns the Transaction ID it received in the submission to indicate the
   files were received successfully.

   Arguments:
   The Submit method has four arguments
          •     security Token: A security ticket issued by the service provider.
          •     transactionld: CDX sends a unique transactionld along with the submission.
          •     dataflow: The name of the target dataflow.  In this case, "ICIS-NPDES".
          •     documents: An array of documents of type nodeDocument. This argument
                contains the XML documents for the specific Transaction ID.

   Return:
          •     When successful, the Submit method returns the transactionld it received from
                CDX. In case of an error, the ICIS-NPDES Batch node returns a  SOAP Fault
                with the details of the errors that occurred while receiving the batch.
ICIS-NPDES Batch System Flow Configuration Document                                        27
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
6.     CDX NODE WEB METHODS
CDX implements the following Web methods from the methods defined in the Network Node
Functional Specification to facilitate authentication and accept batch processing status from the
ICIS-NPDES Batch node:

   •    Authenticate - ICIS-NPDES Batch obtains a security Token before initiating Submit and
        Notify.
   •    Submit - ICIS-NPDES Batch Submits an ICIS-NPDES Batch Processing Status PDF
        document with Batch/File level errors or a notice of successful processing to CDX.
   •    Notify - ICIS-NPDES Batch notifies CDX of the final Batch Processing Status.
  6.1  AUTHENTICATE WEB METHOD
   Description:
   The Authenticate method authenticates a user using the supplied credentials. Upon successful
   authentication, it returns a security Token. The securityToken is used while invoking the
   Notify and Submit methods on CDX.

   Arguments:
   The Authenticate method has three arguments:
          •     userld: The User id to be authenticated. The ICIS-NPDES Batch node sends
                the user id assigned to the ICIS-NPDES Batch node.
          •     credential: User password for accessing CDX.
          •     authenticationMethod: Specifies the authentication method to be used. In this
                case, it will be "password".

   Return:
          •     Upon successful authentication, the service provider returns a securityToken
                wrapped in a SOAP message. If authentication fails, a SOAP fault message
                with error details is returned.
  6.2  SUBMIT WEB METHOD
   Description:
   ICIS-NPDES Batch invokes the Submit method on CDX to send the processing status
   document to CDX. In case of critical errors which cause a file or batch to be rejected (e.g.,
   invalid user id), the ICIS-NPDES Batch Processing Status Document will report these errors.
   If no critical errors are received while processing a batch, the ICIS-NPDES Batch Processing
   Status Document will contain a message indicating the successful completion of processing
   for that batch.

   Arguments:
   The Submit method has eight arguments:
ICIS-NPDES Batch System Flow Configuration Document                                        28
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
          •     URL: URL for CDX.
          •     security Token: A security token issued by the service provider (NAAS).
          •     transactionld:  The transactionld associated with the processed batch. CDX
                assigns a unique transactionld for each batch submitted to ICIS-NPDES
                Batch.
          •     dataflow:  The target dataflow name. In this case, "ICIS-NPDES".
          •     flowOperation: The target dataflow operation. In this case no value is passed
                for this argument.
          •     recipient:  The target recipient. In this case no value is passed for this
                argument.
          •     notification URI: The target notification URL In this case no value is passed
                for this argument.
          •     documents: An array of documents of type nodeDocument. ICIS-NPDES
                Batch will submit the ICIS-NPDES Batch Processing Status Document.

   Return:
          •     The Submit method returns the transactionld submitted while invoking the
                Submit method. If the  submission fails, a SOAP fault with details of the error
                will be returned.
  6.3  NOTIFY WEB METHOD
   Description:
   The Notify method can be used for three purposes: document notification, event notification,
   and status notification. ICIS-NPDES Batch uses the notify method to inform CDX about the
   status of a processed batch for a given Transaction ID.

   Arguments:
   The Notify method has four arguments:
          •      security Token:  A security ticket issued by the service provider (NAAS).
          •      nodeAddress: Address of node to notify. No value is passed for status
                 notification.
          •      dataflow:  This parameter contains a URL to indicate the type of notification.
                 There are three kinds of notifications, an event, a status or a document. ICIS-
                 NPDES Batch node uses "http://www.exchangenetwork.net/node/status" to
                 indicate status notification.
          •      documents: An array of documents of type nodeDocument.  ICIS-NPDES
                 Batch will provide a nodeDocument with the transaction ID and batch
                 processing status of "Processed".

   Return:
          •      For status notification, CDX returns a string other than transactionld signaling
                 the acceptance of the status.
ICIS-NPDES Batch System Flow Configuration Document                                         29
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
7.    WEB METHODS USED BY STATE NODE
State nodes will invoke the following Web methods on CDX to submit batches to CDX, get
status of a batch submission  and download any processing status documents including error
reports from CDX:

   •    Authenticate - The state node obtains a securityToken before initiating Submit,
        GetStatus, or Download.
   •    Submit - The state node invokes this method on CDX to submit a batch.
   •    GetStatus - The state node invokes this method on CDX to obtain the batch status.
   •    Download - The state node invokes this method on CDX to download the processing
        status documents related to a batch submission.
  7.1  AUTHENTICATE WEB METHOD
   Description:
   The State node invokes the Authenticate method on CDX to authenticate a user using the
   supplied credentials like user id and password. Upon successful authentication, CDX returns
   a securityToken. The securityToken is used while invoking the Submit, GetStatus and
   Download methods on CDX.

   Arguments:
   The Authenticate method has three arguments:
          •      userld: The User id to be authenticated. The state node sends CDX userid
                assigned to the state node.
          •      credential: User password for accessing CDX.
          •      authenticationMethod: Specifies the authentication method to be used. In this
                case, it will be "password".

   Return:
          •      Upon successful authentication, the service provider returns a securityToken
                wrapped in a SOAP message.  If authentication fails, a SOAP fault message
                with error details is returned.
  7.2 SUBMIT WEB METHOD
   Description:
   The state node invokes the Submit method on CDX to submit a batch.

   Arguments:
   The Submit method has eight arguments:
          •     URL: URL for CDX.
          •     securityToken: A security token issued by the service provider (NAAS).
ICIS-NPDES Batch System Flow Configuration Document                                        30
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
          •      transactionld: The transactionld associated with the batch. While submitting
                 batches this is always empty.
          •      dataflow: The target dataflow name. In this case, "ICIS-NPDES".
          •      flowOperation: The target dataflow operation. In this case no value is passed
                 for this argument.
          •      recipient: The target recipient. In this case no value is passed for this
                 argument.
          •      notification URI:  The target notification URL In this case no value is passed
                 for this argument.
          •      documents: An array of documents of type nodeDocument. ICIS-NPDES The
                 state node will submit XML document(s).
   Return:
          •      The Submit method returns the transactionld associated with the batch
                 submission. If the submission fails, a SOAP fault with details of the error will
                 be returned.
  7.3  GET STATUS WEB METHOD
   Description:
   The GetStatus web method is used for retrieving the current status of the batch. As described
   in section 3.1, a batch could be in Receiving, Pending, Processing, Completed, or Failed
   status.

   Arguments:
   The GetStatus method has two arguments:
          •     security Token: A security ticket issued by the service provider (NAAS).
          •     transactionld: The transactionld associated with the batch. When a batch is
                submitted to CDX, a transactionld is returned for successful submissions.

   Return:
          •     This method returns a description of the current status of the batch if the
                operation is successful. Possible responses correspond to the batch states
                described in Step 1 through 7 of Section 3.1: "Receiving", "Pending",
                "Processing", "Completed", or "Failed" This method returns a SOAP Fault
                with an error code of E_TransactionId if the transaction ID is invalid; it
                returns a SOAP Fault with an error code of E_InvalidToken or
                E_TokenExpired if the securityToken is invalid or expired.
  7.4  DOWNLOAD WEB METHOD
   Description:
   The state node invokes the Download method on CDX to download all of the processing
   status documents associated with a batch submission. These documents include the QA
   report (contains XML validation errors if any), Batch processing status and processing error
ICIS-NPDES Batch System Flow Configuration Document                                          31
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
   reports from ICIS-NPDES. Prior to invoking this method it is recommended to call the
   GetStatus method to verify the batch status.

   Arguments:
   The Download method has four arguments:
          •      security Token: A security ticket issued by the service provider (NAAS).
          •      transactionld: The transactionld associated with the batch. When a batch is
                 submitted to CDX, a transactionld is returned for successful submissions.
          •      dataflow: The target dataflow name. In this case, "ICIS-NPDES".
          •      documents: An array of documents of type nodeDocument. This should be set
                 to empty.

   Return:
          •      The response contains a dataflow identifier and a set of documents.
                 Documents transmitted can be either embedded payloads or separate
                 attachments. If the Download fails, a SOAP fault with details of the error will
                 be returned.
ICIS-NPDES Batch System Flow Configuration Document                                          32
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
APPENDIX A: ICIS-NPDES BATCH SUBMISSION TYPES

ICIS-NPDES Batch supports the submission types listed below. Instructions to create XML
instance submission documents for different submission types are contained in the ICIS-NPDES
Batch User Guide.

 • Discharge Monitoring Report
 • Basic Permit
 • Biosolids Permit
 • CAFO Permit
 • CSO Permit
 • General Permit
 • Limit Set
 • Limits
 • Master General Permit
 • Narrative Condition Schedule
 • Parameter Limits
 • Permit Reissuance
 • Permit Tracking Event
 • Permitted Feature
 • POTW Permit
 • Pretreatment Permit
 • SW Construction Permit
 • SW Industrial Permit
 • SW MS4 Large Permit
 • SW MS4 Small Permit
 • Unpermitted Facility
 • Compliance Monitoring
 • Biosolids Program Report
 • CAFO Annual  Report
 • Compliance Monitoring Linkage
 • Compliance Schedule
 • CSO Event Report
 • DMR Program Report Linkage
 • DMR Violation
 • Effluent Trade  Partner
 • Enforcement Action Milestone
 • Enforcement Action Violation Key
 • Formal Enforcement Action
 • Informal Enforcement Action
 • Local Limits Program Report
 • Pretreatment Performance Summary
 • Schedule Event Violation
ICIS-NPDES Batch System Flow Configuration Document                                        33
</pre><hr><pre>
-------
Office of Enforcement and Compliance Assurance
   Single Event Violation
   SSO Annual Report
   SSO Event Report
   SSO Monthly Event Report
   SW Event Report
   SW MS4 Program Report
ICIS-NPDES Batch System Flow Configuration Document                                          34
</pre><hr><pre>
-------</pre></td></tr></table></body></html>