Vermont Town Boundary Import 2018
- 1 Background
- 2 Object and Tagging details
- 3 People/Accounts
- 4 Process
- 4.1 1. Data sources
- 4.2 2. Data cleanup
- 4.3 3. Conflation
- 4.4 4. Final data preparation
- 4.5 5. Upload
- 5 Previous efforts by others
This page documents a proposed import of Vermont town boundaries. As can be seen from this OSM screen-shot, only a portion of the state of Vermont has Town boundaries:
As described in United_States_admin_level Vermont Towns, Cities, and Gores encompass the entire area of the state should have admin-level 8. Additionally, incorporated villages are embedded within Towns with admin-level 9. Village polygons are available in the VT Boundaries - village polygons data-set.
Object and Tagging details
Care will be taken to ensure that each town, village, and county exists as a a relation, with the following tags:
- admin_level=[6,8,9] (county, town/city/gore, incorporated village)
The member ways will each be given the following tags:
- admin_level=[2,4,6,8,9] - (national, state, county, town/city/gore, incorporated village) The way will have the lowest-number admin_level of the relations it is a part of.
1. Data sources
Loading OSM Data
The OSM data is first loaded into JOSM via an OverPass Query to select all current boundary ways and relations for Vermont, (as well as a few relations joining its boarders:
/* This has been generated by the overpass-turbo wizard. The original search was: “place=village and boundary=administrative and admin_level=8 and is_in:state_code=VT” */ [out:xml]/*fixed by auto repair*/[timeout:25]; // gather results ( area[admin_level=4]["name"="Vermont"][boundary=administrative]->.boundaryarea; // query part for: “place=village and boundary=administrative and admin_level=8 and "is_in:state_code"=VT” way["boundary"="administrative"]["admin_level"="6"](area.boundaryarea); way["boundary"="administrative"]["admin_level"="8"](area.boundaryarea); way["boundary"="administrative"]["admin_level"="9"](area.boundaryarea); relation["boundary"="administrative"]["admin_level"="6"](area.boundaryarea); relation["boundary"="administrative"]["admin_level"="8"](area.boundaryarea); relation["boundary"="administrative"]["admin_level"="9"](area.boundaryarea); ); // print results out meta;/*fixed by auto repair*/ >; out meta qt;/*fixed by auto repair*/
Once opened in JOSM, all relations are selected and "Download members" is performed to ensure that ways not directly tagged with boundary=administrative are also loaded.
Loading Reference data
The VT Boundaries - all lines shape
2. Data cleanup
OSM data tweaks
Split existing county boundaries
Many of the existing boundary ways are not split on town-borders, but rather include multiple town borders that make up a previously imported county boundary. By overlaying both data-sets in JOSM, it is easy to see these overly-long boundaries and split them at the town boundary:
There are several cases where town boundaries follow waterways and the way also has a water=stream or water=river tag. In these cases, the existing ways will be left as only water features and new ways will be created for the boundary.
Reference data tweaks
The ways in the shape-file mostly run the entire length of town boundaries, however some town-boundaries are made up of separate segments, each with different tags with things like differing data-sources for each segment. These will be joined into a single way so that its geometry can replace the one in OSM.
Splitting for external/other boundaries
Along the state boarder, the ways that make up the shared state-boundary, county-boundary, and town-boundary also serve as town/county boundaries for neighboring states. In these locations, individual nodes are added at the adjoining boundary position and the reference way is split.
Here is an example on the Vermont/New York border:
State and national boundaries
As the goal of this import is focused on the internal boundaries of Vermont, where possible existing national and state boundaries will be left with their geometry in place. In general the VCGI data is within 10 meters of the OSM data on the state borders, so there is little advantage to changing the border geometry.
1. Near Poultney, VT and Hampton, NY, the Vermont data has the state border following the course of the Poultney River until east of Poutlney, wOhile OSM has the border leaving he river north of Poultney and beginning a straight cross-country line.
The state border in this location will need to be verified via additional sources.
2. The western bank of the Connecticut river seems to define the border between Vermont and New Hampshire. The VCGI data set generally follows this shoreline more closely than the current OSM border. This border will be updated to reflect the VCGI data.
4. Final data preparation
Manually creating relations for missing towns...
admin_level tweaks to new and existing boundary ways...
Previous efforts by others
A previous import was discussed in 2012 at VCGI_Town_Boundary_Import.