United States Forest Service Logo


The Forest Service, Region 10, developed an Extract Transform and Load (ETL) Tool as an ESRI ArcToolbox that transforms existing features in the USFS/AK Hydro dataset into USGS National Hydrography Dataset (NHD)-ready features. At the time, the tool operated on ArcGIS Desktop 10.5.1 and relied on Python scripts to review AK Hydro data with enhanced logic. This ensured compliance and facilitated the check-in process to the NHD Data Model maintained by the USGS.

The purpose of this task was to upgrade the existing NHD ETL tool used by the Alaska Regional Office of the Forest Service, ensuring compatibility with the desired version of ArcGIS Desktop 10.7.x, as specified by USFS personnel at the time of award. This project will also incorporate NHD schema changes, resolve invalid gaps and update a set of Data Reviewer rules.

Problem and Solution

The ETL Tool is an Esri ArcToolbox Python script tool that transforms existing features in the USFS/AK Hydro dataset into USGS NHD-ready features. The model was originally developed by the USFS for compatibility with ArcGIS Desktop v10.1 and was later upgraded to work with ArcGIS Desktop version 10.5.1, migrate from Model Builder to Python, and incorporate some enhanced logic. 

During the project, Xentity understood the National Hydrography Dataset (NHD) and existing Forest Service efforts in managing the NHD as the authoritative steward of NHD on Forest Service lands. We also understood that different, more specific, needs are met by the AK Hydro data model. Different mapping scales, different agency stakeholders, data managers and applications all justify the need for a more specific hydrography data model for Alaska. 


To update the ETL Tool, the Xentity team reviewed and revised the existing Python code as well as the associated ArcToolbox files to ensure new code will run using ArcGIS Desktop 10.7.x.  We also updated the NHD Schema. We reviewed and edited the types and codes within the NHD to conform to the current standard as provided by the USFS. Also, we updated the AK Hydro Schema. Xentity provided a new definition in the Python code to transform the TypeClass attribute, the FlowType attribute, and the Stream_PL Type attribute as needed into the NHD feature class output. Furthermore, we updated Bezier Curve Processing Capabilities. Xentity added in Python transformations to remove Bezier curves before processing to produce line segments that will remain curved during the transformation process. 

Xentity also provided updated batch files compatible with the 10.7.x release of ArcGIS Desktop and the required changes as defined by the USFS and communicated to Xentity during coordination meetings. We also updated the existing Python script through adding parameters for the coordinate system for data transformation use. Finally, Xentity provided an updated batch file for Data Reviewer use compatible with the ArcGIS Desktop 10.7.x release to incorporate into the USFS environment