Upstream/Downstream Service
Description
The Upstream/Downstream service is designed to provide standard stream network traversal and discovery functions. The traversal request may include a description of where, on the stream network, to begin the traversal, a description of where or how to end the traversal, and a list of one or more formats for the returned results. The Upstream/Downstream service receives the stream network traversal request, performs the traversal, and returns the requested results. The Upstream/Downstream service is an elemental function to be used by applications as a stand alone service or in combination with other WATERS services. All Upstream/Downstream executions require a navigation type and at least one start point. All other input parameters are optional.
Usage Scenarios
Reviewing a TMDL for a single listed water and pollutant
|
Problem Statement
Reviewing a TMDL for a single listed water and pollutant. Desired InformationUpstream surface water permitted dischargers for waters within 50 miles of the downstream end of the listed water. Information Returned from ServiceList of NPDES IDs upstream of or coincident with the listed water.
|
|
Permit Example
|
Problem Statement
Need to evaluate downstream potential impacts for a NPDES permit renewal application approval. NOTE: If the NPDES discharge location is stored in the RAD, only the NPDES ID will be required. If the location has not been indexed (or not stored in the RAD), then this service can be combined with the point indexing service to obtain a network location to start the upstream/downstream navigation from. If the discharge point is on a feature in the medium resolution NHD, then the snap option should be used, however, if the discharge point is on a tributary to a medium resolution NHD feature (i.e., not in the medium resolution NHD dataset), then the raindrop option should be selected in the point indexing service. Desired InformationAll impaired waters and drinking water intakes within 40 miles downstream of the NPDES discharge point. Information Returned from ServiceTable object with all NPDES, DWI, and impaired waters downstream with divergences within 40 miles of the discharge point. In addition, return the navigation track as a spatial object.
|
Hazardous Chemical Spill
|
Problem Statement
Identify potentially impacted facilities and areas downstream of a leaking storage tank. Note: This service can be combined with the Point Indexing service to take the spill location and return the point of entry into the surface water network as input to this service. Desired InformationWithin 48 hours travel time downstream of the spill location, return all NPDES and drinking water facilities, assessed waters, assessed for human contact or fishing, as well as a spatial coverage that can be overlaid with population centers (and other layers of interest). Information Returned from ServiceTable object with all NPDES, DWI, and assessed waters downstream with divergences within 48 hours travel time of the point of entry of the spill into the medium resolution NHD. In addition, return the navigation track as a spatial object.
|
Input
Parameters
| Parameter | Datatype | Description |
|---|---|---|
| pNavigationType | String |
'UM'; for upstream mainstem navigation 'UT' for upstream with tributaries navigation 'DM' for downstream mainstream navigation 'DD' for downstream with divergences navigation |
| pStartComid | Number | NHD flowline comid to begin navigating from. Must be greater than 0 and less than 999999999. |
| pStartReachcode | String | NHD reach code to begin navigating from. Must be length 14 and contain all digits. |
| pStartMeasure | Number | Measure on the NHD reach code to begin navigating from. Must be between 0 and 100 inclusive, or NULL. A value of NULL means that a measure will be calculated to be either the bottom or the top of the NHD flowline (depending on whether the navigation type is upstream or downstream and whether it is a start or stop measure). |
| pStartSourceFeatureid | String | Event source feature id to begin navigating from. |
| pStartSourceProgram | String | Event source feature id program. |
| pStopComid | Number | NHD flowline comid to stop navigating at. Must be greater than 0 and less than 999999999. |
| pStopReachcode | String | NHD reach code to stop navigating at. Must be length 14 and contain all digits. |
| pStopMeasure | Number | Measure on the NHD reach code to stop navigating at. Must be between 0 and 100 inclusive, or NULL. |
| pStopSourceFeatureid | String | Event source feature id to stop navigating at. |
| pStopSourceProgram | String | Event source feature id program |
| pStopDistancekm | Number | Distance in KM to navigate. If neither pStopDistancekm or pStopTimeOfTravel are provided, then distance to travel defaults to 50 km. |
| pStopTimeOfTravel | Number | Time of travel in hours to navigate |
| pStopBottomOfPath | String | TRUE/FALSE - Navigate to the end of path overruling pStopDistancekm and pStopTimeOfTravel. Only valid with UM and DM navigation types. |
| pTraversalSummary | String | TRUE/FALSE - Indicates whether to populate and include the updn_recTraversal_summary object in results. |
| pFlowlinelist | String | TRUE/FALSE - Indicates whether to populate and include the updn_recFlowline_traversed object in results. |
| pEventList | String | Array of program abbreviations to search for along the navigation route. See Appendix B for a complete list of program abbreviations. |
| pEventListMod | String | Modifier explaining the array format used in pEventList. See the complex object modifier descriptions for more information. |
| pNearestEntityList | String | Array of entity IDs for each program. |
| pNearestEntityListMod | String | Modifier explaining the array format used in pNearestEntityListMod. See the complex object modifier descriptions for more information. |
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
updn_obj_output
| Property | Datatype | Description |
|---|---|---|
| return_code | Number |
Return Code
indicate success or failure of the navigation process. 0 = Up/Down Service completed as requested 1nn= Interpreter errors 2nn= Resolver errors 3nn=Traverser errors 4nn=Pruner errors 5nn=Outputer errors 999=General error |
| status_message | String | Status message provides text details for return codes 1nn thru 5nn. |
| resolved_starts | Array of Object | Oracle object: updn_recFlowLineInfo |
| resolved_stops | Array of Object | Oracle object: updn_recFlowLineInfo |
| updn_traversal_summary | Array of Object | Oracle object: updn_recTraversal_summary |
| flowlines_traversed | Array of Object | Oracle object: updn_recFlowline_traversed |
| events_encountered | Array of Object | Oracle object: updn_recEvent_encountered |
| nearest_entities_encountered | Array of Object | Oracle object: updn_recEntity_encountered |
Supporting Objects
updn_recFlowLineInfo
| Property | Datatype | Description |
|---|---|---|
| comid | Number | NHD flowline comid. |
| measure | Number | NHD reach code measure. |
updn_recTraversal_summary
| Property | Datatype | Description |
|---|---|---|
| total_km_navigated | Number | Total KM navigated during process. |
| total_flowlines_traversed | Number | Total number of flowlines traversed during navigation. |
updn_recFlowline_traversed
| Property | Datatype | Description |
|---|---|---|
| startcomid | Number | NHD flowline comid of the flowline beginning the navigation. |
| comid | Number | NHD flowline comid. |
| reachcode | String | NHD reach code. |
| frommeas | Number | NHD reach code beginning measure. |
| tomeas | Number | NHD reach code ending measure. |
| totaldist | Number | Total distance of the flowline in KM for the traversal. |
| totaltime | Number | Total navigation time of the flowline in hours for the traversal. |
| hydroseq | Number | The hydrologic sequence of the flowline in the total traversal. |
updn_recEvent_encountered
| Property | Datatype | Description |
|---|---|---|
| startcomid | Number | NHD flowline comid of the flowline beginning the navigation. |
| flcomid | Number | NHD flowline comid containing the RAD event. |
| evtcomid | Number | RAD event comid. |
| reachcode | Number | NHD reach code containing the RAD event. |
| source_featureid | String | RAD event source featureid value. |
| source_program | String | RAD event program. |
| from_measure | Number | NHD reach code beginning measure of the RAD event. |
| to_measure | Number | NHD reach code ending measure of the RAD event. |
| start_measure | Number | Represents the first point of intersection between the event and the traversal. |
| traveled_distancekm | Number | Total distance of the traversal in KM. |
| traveled_time | Number | Total navigation time of the traversal in hours. |
updn_recEntity_encountered
| Property | Datatype | Description |
|---|---|---|
| source_featureid | String | RAD event source featureid value. |
| source_program | String | RAD event program. |
| reachcode | String | NHD reach code containing the RAD event. |
| measure | Number | NHD reach code measure at which the event occurs. |
| startcomid | Number | NHD flowline comid of the flowline beginning the traversal. |
| traveled_distancekm | Number | Total distance of the traversal in KM. |
| traveled_time | Number | Total navigation time of the traversal in hours. |
HTTP Service Notes
The output format for this service is JSON with GEOJSON formatted geometries.
SOAP Service Notes
The SOAP service returns
OGC GML 2.1
formatted geometries.
Javascript Library
| Function Name |
|---|
| WATERS.Services.PointIndexingService |
HTTP Service
| Resource | Location |
|---|---|
| Runtime Endpoint | http://oaspub.epa.gov/waters10/waters_services/upstreamDownStreamService |
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:xsi="http://www.w3.org/1999/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/1999/XMLSchema"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
<SOAP-ENV:Body>
<ns1:upstreamDownstreamService>
<pNavigationType xsi:type="xsd:string">UT</pNavigationType>
<pStartComid xsi:type="xsd:decimal">19608363</pStartComid>
<pStartReachcode xsi:type="xsd:string" xsi:nil="true"/>
<pStartMeasure xsi:type="xsd:decimal">100</pStartMeasure>
<pStartSourceFeatureid xsi:type="xsd:string" xsi:nil="true"/>
<pStartSourceProgram xsi:type="xsd:string" xsi:nil="true"/>
<pStopComid xsi:type="xsd:decimal">-9999</pStopComid>
<pStopReachcode xsi:type="xsd:string" xsi:nil="true"/>
<pStopMeasure xsi:type="xsd:decimal">-9999</pStopMeasure>
<pStopSourceFeatureid xsi:type="xsd:string" xsi:nil="true"/>
<pStopSourceProgram xsi:type="xsd:string" xsi:nil="true"/>
<pStopDistancekm xsi:type="xsd:decimal">5</pStopDistancekm>
<pStopTimeOfTravel xsi:type="xsd:decimal">-9999</pStopTimeOfTravel>
<pStopBottomOfPath xsi:type="xsd:string">N</pStopBottomOfPath>
<pTraversalSummary xsi:type="xsd:string">Y</pTraversalSummary>
<pFlowlinelist xsi:type="xsd:string">Y</pFlowlinelist>
<pEventList
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">305B</string>
<string xsi:type="xsd:string">303D</string>
</array>
</pEventList>
<pNearestEntityList
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[0]"
></array>
</pNearestEntityList>
</ns1:upstreamDownstreamService>
</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:upstreamdownstreamResponse 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_UpdnObjoutputUser">
<updnTraversalSummary xsi:type="ns2:waters_waters_UpdnRectraversalSummaryUser">
<totalKmNavigated xsi:type="xsd:decimal">5</totalKmNavigated>
<totalFlowlinesTraversed xsi:type="xsd:decimal">8</totalFlowlinesTraversed>
</updnTraversalSummary>
<flowlinesTraversed xsi:type="ns2:waters_waters_UpdnNttypeflowlinesTraversed">
<array xmlns:ns3="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns3:Array"
ns3:arrayType="ns2:waters_waters_UpdnRecflowlineTraversedUser[8]">
<item xsi:type="ns2:waters_waters_UpdnRecflowlineTraversedUser">
<frommeas xsi:type="xsd:decimal">0</frommeas>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<totaldist xsi:type="xsd:decimal">5</totaldist>
<reachcode xsi:type="xsd:string">06030003001725</reachcode>
<hydroseq xsi:type="xsd:decimal">785501146</hydroseq>
<comid xsi:type="xsd:decimal">19608359</comid>
<tomeas xsi:type="xsd:decimal">93.5804</tomeas>
<totaltime xsi:type="xsd:decimal">7.107</totaltime>
</item>
<item xsi:type="ns2:waters_waters_UpdnRecflowlineTraversedUser">
<frommeas xsi:type="xsd:decimal">0</frommeas>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<totaldist xsi:type="xsd:decimal">1.441</totaldist>
<reachcode xsi:type="xsd:string">06030003001728</reachcode>
<hydroseq xsi:type="xsd:decimal">785501154</hydroseq>
<comid xsi:type="xsd:decimal">19608365</comid>
<tomeas xsi:type="xsd:decimal">100</tomeas>
<totaltime xsi:type="xsd:decimal">0.959</totaltime>
</item>
<item xsi:type="ns2:waters_waters_UpdnRecflowlineTraversedUser">
<frommeas xsi:type="xsd:decimal">0</frommeas>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<totaldist xsi:type="xsd:decimal">4.363</totaldist>
<reachcode xsi:type="xsd:string">06030003001742</reachcode>
<hydroseq xsi:type="xsd:decimal">785501155</hydroseq>
<comid xsi:type="xsd:decimal">19608395</comid>
<tomeas xsi:type="xsd:decimal">100</tomeas>
<totaltime xsi:type="xsd:decimal">4.791</totaltime>
</item>
<item xsi:type="ns2:waters_waters_UpdnRecflowlineTraversedUser">
<frommeas xsi:type="xsd:decimal">0</frommeas>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<totaldist xsi:type="xsd:decimal">4.608</totaldist>
<reachcode xsi:type="xsd:string">06030003001744</reachcode>
<hydroseq xsi:type="xsd:decimal">785501156</hydroseq>
<comid xsi:type="xsd:decimal">19608399</comid>
<tomeas xsi:type="xsd:decimal">100</tomeas>
<totaltime xsi:type="xsd:decimal">5.311</totaltime>
</item>
<item xsi:type="ns2:waters_waters_UpdnRecflowlineTraversedUser">
<frommeas xsi:type="xsd:decimal">0</frommeas>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<totaldist xsi:type="xsd:decimal">5</totaldist>
<reachcode xsi:type="xsd:string">06030003001143</reachcode>
<hydroseq xsi:type="xsd:decimal">785501157</hydroseq>
<comid xsi:type="xsd:decimal">19606325</comid>
<tomeas xsi:type="xsd:decimal">21.574</tomeas>
<totaltime xsi:type="xsd:decimal">5.771</totaltime>
</item>
<item xsi:type="ns2:waters_waters_UpdnRecflowlineTraversedUser">
<frommeas xsi:type="xsd:decimal">0</frommeas>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<totaldist xsi:type="xsd:decimal">4.729</totaldist>
<reachcode xsi:type="xsd:string">06030003001745</reachcode>
<hydroseq xsi:type="xsd:decimal">785501158</hydroseq>
<comid xsi:type="xsd:decimal">19608401</comid>
<tomeas xsi:type="xsd:decimal">100</tomeas>
<totaltime xsi:type="xsd:decimal">5.292</totaltime>
</item>
<item xsi:type="ns2:waters_waters_UpdnRecflowlineTraversedUser">
<frommeas xsi:type="xsd:decimal">0</frommeas>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<totaldist xsi:type="xsd:decimal">5</totaldist>
<reachcode xsi:type="xsd:string">06030003001142</reachcode>
<hydroseq xsi:type="xsd:decimal">785501159</hydroseq>
<comid xsi:type="xsd:decimal">19606605</comid>
<tomeas xsi:type="xsd:decimal">5.3127</tomeas>
<totaltime xsi:type="xsd:decimal">5.528</totaltime>
</item>
<item xsi:type="ns2:waters_waters_UpdnRecflowlineTraversedUser">
<frommeas xsi:type="xsd:decimal">0</frommeas>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<totaldist xsi:type="xsd:decimal">5</totaldist>
<reachcode xsi:type="xsd:string">06030003001734</reachcode>
<hydroseq xsi:type="xsd:decimal">785501160</hydroseq>
<comid xsi:type="xsd:decimal">19608379</comid>
<tomeas xsi:type="xsd:decimal">78.4439</tomeas>
<totaltime xsi:type="xsd:decimal">3.341</totaltime>
</item>
</array>
</flowlinesTraversed>
<nearestEntitiesEncountered xsi:type="ns2:waters_waters_UpdnNttypeentitiesEncounter" xsi:nil="true"></nearestEntitiesEncountered>
<eventsEncountered xsi:type="ns2:waters_waters_UpdnNttypeeventsEncountered">
<array xmlns:ns4="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns4:Array" ns4:arrayType="ns2:waters_waters_UpdnReceventEncounteredUser[4]">
<item xsi:type="ns2:waters_waters_UpdnReceventEncounteredUser">
<traveledDistancekm xsi:type="xsd:decimal">0</traveledDistancekm>
<flcomid xsi:type="xsd:decimal">19608365</flcomid>
<evtcomid xsi:type="xsd:decimal">2253508</evtcomid>
<sourceFeatureid xsi:type="xsd:string">TN06030003016_1000</sourceFeatureid>
<startMeasure xsi:type="xsd:decimal">0</startMeasure>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<reachcode xsi:type="xsd:string">06030003001728</reachcode>
<toMeasure xsi:type="xsd:decimal">100</toMeasure>
<fromMeasure xsi:type="xsd:decimal">0</fromMeasure>
<sourceProgram xsi:type="xsd:string">305B</sourceProgram>
<traveledTime xsi:type="xsd:decimal">0</traveledTime>
</item>
<item xsi:type="ns2:waters_waters_UpdnReceventEncounteredUser">
<traveledDistancekm xsi:type="xsd:decimal">1.441</traveledDistancekm>
<flcomid xsi:type="xsd:decimal">19608395</flcomid>
<evtcomid xsi:type="xsd:decimal">2253495</evtcomid>
<sourceFeatureid xsi:type="xsd:string">TN06030003016_1000</sourceFeatureid>
<startMeasure xsi:type="xsd:decimal">0</startMeasure>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<reachcode xsi:type="xsd:string">06030003001742</reachcode>
<toMeasure xsi:type="xsd:decimal">100</toMeasure>
<fromMeasure xsi:type="xsd:decimal">0</fromMeasure>
<sourceProgram xsi:type="xsd:string">305B</sourceProgram>
<traveledTime xsi:type="xsd:decimal">0.959</traveledTime>
</item>
<item xsi:type="ns2:waters_waters_UpdnReceventEncounteredUser">
<traveledDistancekm xsi:type="xsd:decimal">4.363</traveledDistancekm>
<flcomid xsi:type="xsd:decimal">19608399</flcomid>
<evtcomid xsi:type="xsd:decimal">2253527</evtcomid>
<sourceFeatureid xsi:type="xsd:string">TN06030003016_1000</sourceFeatureid>
<startMeasure xsi:type="xsd:decimal">0</startMeasure>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<reachcode xsi:type="xsd:string">06030003001744</reachcode>
<toMeasure xsi:type="xsd:decimal">100</toMeasure>
<fromMeasure xsi:type="xsd:decimal">0</fromMeasure>
<sourceProgram xsi:type="xsd:string">305B</sourceProgram>
<traveledTime xsi:type="xsd:decimal">4.791</traveledTime>
</item>
<item xsi:type="ns2:waters_waters_UpdnReceventEncounteredUser">
<traveledDistancekm xsi:type="xsd:decimal">4.363</traveledDistancekm>
<flcomid xsi:type="xsd:decimal">19608401</flcomid>
<evtcomid xsi:type="xsd:decimal">2253497</evtcomid>
<sourceFeatureid xsi:type="xsd:string">TN06030003016_1000</sourceFeatureid>
<startMeasure xsi:type="xsd:decimal">0</startMeasure>
<startcomid xsi:type="xsd:decimal">19608363</startcomid>
<reachcode xsi:type="xsd:string">06030003001745</reachcode>
<toMeasure xsi:type="xsd:decimal">100</toMeasure>
<fromMeasure xsi:type="xsd:decimal">0</fromMeasure>
<sourceProgram xsi:type="xsd:string">305B</sourceProgram>
<traveledTime xsi:type="xsd:decimal">4.791</traveledTime>
</item>
</array>
</eventsEncountered>
<statusMessage xsi:type="xsd:string" xsi:nil="true"></statusMessage>
<resolvedStarts xsi:type="ns2:waters_waters_UpdnNttypestartFlowlines">
<array xmlns:ns5="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns5:Array" ns5:arrayType="ns2:waters_waters_UpdnRecflowlineinfoUser[1]">
<item xsi:type="ns2:waters_waters_UpdnRecflowlineinfoUser" xsi:nil="true"></item>
</array>
</resolvedStarts>
<returnCode xsi:type="xsd:decimal">0</returnCode>
<resolvedStops xsi:type="ns2:waters_waters_UpdnNttypestopFlowlines">
<array xmlns:ns6="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns6:Array" ns6:arrayType="ns2:waters_waters_UpdnRecflowlineinfoUser[0]"></array>
</resolvedStops>
</return>
</ns1:upstreamdownstreamResponse>
</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 | updn_main.main_upstream_downstream_srv |
Changelog
Version: 2.0 - Released: August 31, 2009
![[logo] US EPA](http://www.epa.gov/epafiles/images/logo_epaseal.gif)