Jump to main content.


Total Waters Service

Description

Returns precalculated summary information about the surface water and the EPA water quality and other information by state, Hydrologic Unit Code (HUC) 8 subbasins and NHD Feature Codes.

Usage Scenarios

Hydrologic Unit Code (HUC) Based Strategic Measure Support

Problem Statement

Need to periodically generate acres, miles, and counts of impaired waters by 8 digit HUC to compare values to baseline numbers for strategic measures.

Desired Information

By HUC (and potentially by state as a subcategory for additional management planning), provide a table of acres, miles, and counts of impaired waters.

Information Returned from Service

Table by HUC of square kilometers, meters, and counts of impaired water events.

 

Input

Parameters

Parameter Datatype Description
pPrograms String Array of program abbreviations to be examined. See Appendix B for a list of current RAD programs. The public web service cannot view restricted program information and attempts to view those programs will be ignored. A single string value of '*' will query all available programs.
pProgramsMod String Modifier explaining the array format used in pPrograms. See the complex object modifier descriptions for more information.
pStates String Array of state abbreviations to be examined. A single string value of '*' will query all states.
pStatesMod String Modifier explaining the array format used in pStates. See the complex object modifier descriptions for more information.
pHucs String Array of HUC codes to be examined.
pHucsMod String Modifier explaining the array format used in pHucs. See the complex object modifier descriptions for more information.
pBorderPolicy String TRUE/FALSE - TRUE indicates to group state results out by border water codes while FALSE indicates to use full state codes only.
pGroupingName String FCODE/BASE_MAP/INT_PEREN/ALL - Parameter indicating whether to group results into predefined fcode categories. See Appendix C for list of FCODE groupings.
pNHDCustom String TRUE/FALSE - Indicates whether to include custom or nonstandard events in results.
pStGrouping String TRUE/FALSE - Indicates whether to group by the state type indicated by the p_border_policy flag.
pHucGrouping String TRUE/FALSE - Indicates whether to group by HUC values (results may be extensive).

HTTP Service Notes

Additional parameters specific to HTTP services are listed in the WATERS HTTP Services documentation.

SOAP Service Notes

The parameter listing for SOAP services is slightly different.  Array parameters are not followed by a "mod" parameter as the array format is specified by the WSDL documentation.  For SOAP services, the input geometry parameter is always OGC Well-Known Text (WKT) and thus the secondary "mod" parameter is simply a numeric value of the Oracle Spatial Reference ID.

Output

UML Diagram

Total Waters Service UML

Return Object

total_waters_service_output

Property Datatype Description
total_waters_service_results Object Object Type: total_waters_service_results

Supporting Objects

total_waters_service_results object

Property Datatype Description
st String State code for nhd or event records including border waters codes if state grouping and border waters flags have been chosen. See Appendix D for a complete list of border waters codes.
nhdSt String State code for nhd or event records if state grouping flag has been chosen. All border waters are allocated to the state best covering the nhd or event record.
huc String Subbasin values for nhd or events records if huc grouping flag has been chosen.
pgmSys String 'NHD' or program abbreviation. See Appendix B for a complete list of program abbreviations.
fcodeGroup String Fcode group chosen in p_grouping_name parameter.
borderFlag String 1/0 equaling Y/N values in p_border_policy parameter.
nhdFlag String 1/0 equaling Y/N values in p_nhd_custom parameter.
featureClass String A/L/P value indicating area, line or point records.
featureTotal Number Sum of area record area, line record length or count of point records.  For point records, this is the count of total records, for line records this the sum of records in kilometers, for area records, this is the sum of records in square kilometers.
shape Geometry Geometry representing the summed feature.

HTTP Service Notes

Additional parameters specific to HTTP services are listed in the WATERS HTTP Services documentation.

SOAP Service Notes

The parameter listing for SOAP services is slightly different.  Array parameters are not followed by a "mod" parameter as the array format is specified by the WSDL documentation.  For SOAP services, the input geometry parameter is always OGC Well-Known Text (WKT) and thus the secondary "mod" parameter is simply a numeric value of the Oracle Spatial Reference ID.

Javascript Library

Function Name
WATERS.Services.TotalWatersService

HTTP Service

Web Service (SOAP)

EPA hosted Oracle Application Servers currently utilize an older version of Oracle Containers for J2EE (OC4J). The SOAP endpoints generated for OC4J by Oracle Jdeveloper have several limitations that service users should be aware of. While many service parameters take a NULL value to indicate that a particular parameter is not applicable or not to used, the service endpoint may report an error if any numeric parameters are left empty. Users may choose to either utilize the "simple" service interfaces whereby all parameters are accepted as strings or users may enter numeric values of -9999 to indicate NULL.

Resource Location
Runtime Endpoint http://iaspub.epa.gov/WATERSWebServices/OWServices
WSDL Endpoint http://iaspub.epa.gov/WATERSWebServices/OWServices?WSDL

Sample SOAP Request (Oracle 10.2.0.2 OC4J):

<SOAP-ENV:Envelope
 xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
 xmlns:ns1="http://iaspub.epa.gov/WATERSWebServices/OWServices"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
>
   <SOAP-ENV:Body>
      <ns1:totalWatersServiceShf>
         <pPrograms
          xmlns:ns1="http://waters-waters/OWServices.xsd"
          xmlns:xsd="http://www.w3.org/2001/XMLSchema"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:type="ns1:waters_waters_OwStringVry"
         >
            <array
             xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
             xsi:type="SOAP-ENC:Array"
             SOAP-ENC:arrayType="xsd:string[2]"
            >
               <string xsi:type="xsd:string">303D</string>
               <string xsi:type="xsd:string">FISH</string>
            </array>
         </pPrograms>
         <pStates
          xmlns:ns1="http://waters-waters/OWServices.xsd"
          xmlns:xsd="http://www.w3.org/2001/XMLSchema"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:type="ns1:waters_waters_OwStringVry"
         >
            <array
             xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
             xsi:type="SOAP-ENC:Array"
             SOAP-ENC:arrayType="xsd:string[2]"
            >
               <string xsi:type="xsd:string">WI</string>
               <string xsi:type="xsd:string">MN</string>
            </array>
         </pStates>
         <pHucs
          xsi:nil="true"
          xsi:type="SOAP-ENC:Array"
          SOAP-ENC:arrayType="xsd:string[0]"
         />
         <pBorderPolicy xsi:type="xsd:string">FALSE</pBorderPolicy>
         <pGroupingName xsi:type="xsd:string">FCODE</pGroupingName>
         <pNhdCustom xsi:type="xsd:string">FALSE</pNhdCustom>
         <pStGrouping xsi:type="xsd:string">FALSE</pStGrouping>
         <pHucGrouping xsi:type="xsd:string">FALSE</pHucGrouping>
      </ns1:totalWatersServiceShf>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Sample Soap Response

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope 
 xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>
   <SOAP-ENV:Body>
      <ns1:totalWatersServiceShfResponse 
       xmlns:ns1="http://epadev.induscorp.com/WATERSWebServices/OWServices" 
       SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      >
         <return 
          xmlns:ns2="http://waters-waters/OWServices.xsd" 
          xsi:type="ns2:waters_waters_TotalWatersServiceOutputUser"
         >
            <results xsi:type="ns2:waters_waters_TotalWatersServiceList">
               <array 
                xmlns:ns3="http://schemas.xmlsoap.org/soap/encoding/" 
                xsi:type="ns3:Array" 
                ns3:arrayType="ns2:waters_waters_TotalWatersServiceResultsUser[18]"
               >
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">303D</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">10.87</featureTotal>
                     <featureClass xsi:type="xsd:string">L</featureClass>
                     <fcodeGroup xsi:type="xsd:string">33400</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">303D</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">8835.96</featureTotal>
                     <featureClass xsi:type="xsd:string">A</featureClass>
                     <fcodeGroup xsi:type="xsd:string">39004</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">303D</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">828.68</featureTotal>
                     <featureClass xsi:type="xsd:string">L</featureClass>
                     <fcodeGroup xsi:type="xsd:string">46003</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">303D</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">1</featureTotal>
                     <featureClass xsi:type="xsd:string">P</featureClass>
                     <fcodeGroup xsi:type="xsd:string">46003</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">303D</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">15169.38</featureTotal>
                     <featureClass xsi:type="xsd:string">L</featureClass>
                     <fcodeGroup xsi:type="xsd:string">46006</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                     <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">303D</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">6</featureTotal>
                     <featureClass xsi:type="xsd:string">P</featureClass>
                     <fcodeGroup xsi:type="xsd:string">46006</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">303D</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">9.82</featureTotal>
                     <featureClass xsi:type="xsd:string">L</featureClass>
                     <fcodeGroup xsi:type="xsd:string">46600</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">148.22</featureTotal>
                     <featureClass xsi:type="xsd:string">L</featureClass>
                     <fcodeGroup xsi:type="xsd:string">33400</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">29.91</featureTotal>
                     <featureClass xsi:type="xsd:string">A</featureClass>
                     <fcodeGroup xsi:type="xsd:string">39001</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">23712.56</featureTotal>
                     <featureClass xsi:type="xsd:string">A</featureClass>
                     <fcodeGroup xsi:type="xsd:string">39004</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">3</featureTotal>
                     <featureClass xsi:type="xsd:string">P</featureClass>
                     <fcodeGroup xsi:type="xsd:string">39004</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">31.36</featureTotal>
                     <featureClass xsi:type="xsd:string">L</featureClass>
                     <fcodeGroup xsi:type="xsd:string">42801</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">0.53</featureTotal>
                     <featureClass xsi:type="xsd:string">L</featureClass>
                     <fcodeGroup xsi:type="xsd:string">43612</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">50338.15</featureTotal>
                     <featureClass xsi:type="xsd:string">L</featureClass>
                     <fcodeGroup xsi:type="xsd:string">46003</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">2</featureTotal>
                     <featureClass xsi:type="xsd:string">P</featureClass>
                     <fcodeGroup xsi:type="xsd:string">46003</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">57902.21</featureTotal>
                     <featureClass xsi:type="xsd:string">L</featureClass>
                     <fcodeGroup xsi:type="xsd:string">46006</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">13</featureTotal>
                     <featureClass xsi:type="xsd:string">P</featureClass>
                     <fcodeGroup xsi:type="xsd:string">46006</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
                  <item xsi:type="ns2:waters_waters_TotalWatersServiceResultsUser">
                     <huc xsi:type="xsd:string" xsi:nil="true"></huc>
                     <nhdFlag xsi:type="xsd:int">1</nhdFlag>
                     <pgmSys xsi:type="xsd:string">FISH</pgmSys>
                     <featureTotal xsi:type="xsd:decimal">416.01</featureTotal>
                     <featureClass xsi:type="xsd:string">L</featureClass>
                     <fcodeGroup xsi:type="xsd:string">46600</fcodeGroup>
                     <nhdSt xsi:type="xsd:string" xsi:nil="true"></nhdSt>
                     <borderFlag xsi:type="xsd:int" xsi:nil="true"></borderFlag>
                     <st xsi:type="xsd:string" xsi:nil="true"></st>
                  </item>
               </array>
            </results>
         </return>
      </ns1:totalWatersServiceShfResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Database Service

Database service users will require the RAD_PUBLIC role for accessing unprotected RAD program results. Accessing protected RAD program data requires additional roles which must be may only be obtained through proper EPA channels.

Database Instance Schema Resource
WATERS10 ow_service total_waters_service.main_precalculated_srv

Changelog

Version: 2.0 - Released: August 31, 2009

  • Initial Release of HTTP Services and updated web page content

  • Local Navigation


    Jump to main content.