As you may be aware, the substation dataset from the US government’s HIFLD dataset has been removed from the public since 2022. This post is about how we are integrating those substations into OSM.
Overview
The substation dataset from HIFLD was withdrawn from the public in 202. It can still be downloaded here (you need to click the “Electrical Substations” layer in the layer list on the right, then click “Download”.)
Each substation in HIFLD is represented as a point with additional attributes. OSM recommends that all objects tagged with ‘power=substation’ be a polygon. In addition, we have found that most of the data is unreliable or out of date. Because of these issues we have created a manual process that uses the substations in HIFLD to guide us in creating and integrating those substations in OSM. This is a manual process that involves looking at the location where HIFLD states a substation exists, verifying that it does not already exist IN OSM, verifying that it exists in reality using satellite imagery, and then drawing the polygon that represents the substation using the satellite imagery as a background.
Our Workflow
Working on a per-state basis, we download the OSM data for that state from Geofabrik and extract all objects with a tag ‘power=substation’. We then remove the HIFLD substations that already exist within OSM using Point-in-Polygon (ST_CONTAINS). From there we load the HIFLD substations into a custom desktop application that displays the HIFLD substations over an OSM layer and a satellite layer. If we find the HIFLD substation at or near an object in OSM we go to OSM to figure out what the deal is. Sometimes the HIFLD substation is near the OSM substation in which case we ignore it and move on. Sometimes the object in OSM is a substation, but was not tagged as ‘power=substation’. In these cases we use the ID editor to make the minor corrections directly within OSM and skip the HIFLD substation in our application.
Once we have manually verified that the HIFLD substation is not in OSM, we verify that it exists in reality by looking for a substation on a satellite image. We will also use Google StreetView if the satellite image is not clear enough.
If the satellite image and / or Google SV is good enough to verify the actual existence of the HIFLD substation, we draw the outline of the substation which is then saved to a GeoJSON file along with the name of the substation from HIFLD.
Once we finish a state, we load the GeoJSON file into JOSM, visually look at the substations again, and run its validation function. If everything is OK, we use JOSM to upload the data into OSM.
The following columns exist in the HIFLD data that we do not bring into OSM:
- OBJECTID, ID - I assume this has some relevance to the backend system someplace in the government but has no relevance in OSM.
- CITY, STATE, ZIP, COUNTY, COUNTYFIPS, COUNTRY - This is the address of the substation and I have found this information to be unreliable.
- VAL_METHOD, VAL_DATE, LINES - If these have a corresponding tag in OSM let me know.
- MAX_VOLT, MIN_VOLT, MAX_INFER, MIN_INFER - OSM does have a tag for this called ‘voltage’, however, I have found the data in HIFLD to be unreliable and not comprehensive. For example, there could be voltages between the MIN and the MAX but we would never know. Because of this unreliability we do not import these columns into OSM.
- TYPE - this is an enumeration with the following values: DEAD END, NOT AVAILABLE, RISER, SUBSTATION and TAP. During our conversion process we only work with rows with a TYPE=“SUBSTATION”.
- STATUS - This is an enumeration of the following strings: IN SERVICE, INACTIVE, NOT AVAILABLE, PROPOSED, and UNDER CONSTRUCTION. We only deal with rows with a STATUS=“IN SERVICE”.
Upon upload the following OSM tags are set:
- power=substation
- name= (only if a name exists in the HIFLD data)
In theory, we could also set the ‘addr:state’ tag to the state we are working on. We could also set the ‘addr:country’ tag as well. I have found the other “address” related tags in HIFLD to be unreliable.
So, why am I writing this? We are currently in the process of adding substations to OSM using the HIFLD substations as a guide and was told to stop and go through the import process. All of the data we had uploaded was reverted. My feeling is that this is not an import, as we are manually verifying everything (except the name of the substation), including manually drawing the substations. So the question is, is this truly an import into OSM or can we proceed with what we were doing?
Thanks.
