Total Waters Geometry Service
Description
Returns summary information about the surface water and the EPA water quality and other information within an arbitrary geometry.
Usage Scenarios
Summary for Current Map
|
Problem Statement
Examining a local area for impaired waters on intermittent water features – need a summary of total surface water and listed waters information for the current map window broken out by intermittent and perennial classifications. Desired InformationLength and area of surface water and listed waters by NHD FTYPE shown on the current map. Information Returned from ServiceTable elements of surface water and impaired waters broken down by surface water NHD FTYPE classification clipped to the bounding box of the map canvas. |
Congressional District Query for Congressperson
|
Problem Statement
As part of a “state of my district” report for a congressional office, show a table of water quality information for a congressional district. Desired InformationTable showing impaired waters, assessed waters, beaches, clean watershed needs, nonpoint source projects, water discharges, TMDLs, and surface water miles and acres for a congressional district. Information Returned from ServiceTable elements of surface water and water quality data for the selected congressional district. |
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. |
| pGeometry | String | Input polygon geometry. |
| pGeometryMod | String | Modifier explaining the input geometry. 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
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 | Huc 8 (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 feature summarized. |
HTTP Service Notes
The output format for this service is JSON with GEOJSON formatted geometries.
SOAP Service Notes
The SOAP service does not return any geometries with results.
Javascript Library
| Function Name |
|---|
| WATERS.Services.TotalWatersGeomService |
HTTP Service
| Resource | Location |
|---|---|
| Runtime Endpoint | http://oaspub.epa.gov/waters10/waters_services/TotalWatersGeomService |
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:totalWatersGeomService>
<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>
<pInputGeometry xsi:type="xsd:string">POLYGON((-87.90 42.58,-87.81 42.58,-87.81 42.63,-87.90 42.63,-87.90 42.58))</pInputGeometry>
<pInputGeometrySrid xsi:type="xsd:decimal">8265</pInputGeometrySrid>
<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:totalWatersGeomService>
</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:totalWatersServiceBbResponse
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[14]"
>
<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">0.015</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">0.045</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">3390</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">1130</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">0.045</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">0.015</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">3390</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">1130</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">NHD</pgmSys>
<featureTotal xsi:type="xsd:decimal">0.015</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">NHD</pgmSys>
<featureTotal xsi:type="xsd:decimal">0.03</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">NHD</pgmSys>
<featureTotal xsi:type="xsd:decimal">1130</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">NHD</pgmSys>
<featureTotal xsi:type="xsd:decimal">2260</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">NHD</pgmSys>
<featureTotal xsi:type="xsd:decimal">1526</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">NHD</pgmSys>
<featureTotal xsi:type="xsd:decimal">3052</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>
</array>
</results>
</return>
</ns1:totalWatersServiceBbResponse>
</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 | ow_service.total_waters_service.main_dynamic_srv |
Changelog
Version: 2.0 - Released: August 31, 2009
![[logo] US EPA](http://www.epa.gov/epafiles/images/logo_epaseal.gif)