```Steven Gay, GISP
Boone County Planning Commission
www.boonecountygis.com
Background
 Some complex spatial operations produced odd/unexpected results.
Some of the problems were traced back to imprecise geometry (slight
overshoots, gaps, slivers, dangles. etc).
 Planning began in the Spring of 2011, and design work kicked off in
August 2011. The first working version was put in place in our
production environment in October 2011.
 ESRI’s Geodatabase Xray tool was extremely helpful with quickly making
changes to the schema.
 Refinement of the topology has occurred incrementally, with each
iteration building on lessons learned from previous enhancements.
 Changes to data model and editing workflows weren’t overwhelming,
but did take some getting used to.
What is Topology?
Technical Definition
 Branch of mathematics that deals with spatial relationships
between geometric shapes
Short GIS Definition
 A way to assure geometric coincidence among point, line, and
polygon features
Longer GIS Definition
 Involves an in-depth analysis of the coordinate locations and
vertices of features stored in a GIS. Includes software logic that
tests the integration of feature coordinates/vertices against userdefined business rules which dictate how shapes in a GDB should
relate to one another
Why Implement Geodatabase Topology?
 GIS is all about graphic shapes, so using topology to study the spatial
relationships between shapes is only natural.
 Help ensure and promote GIS data integrity and the accuracy of
conclusions drawn from the GIS
 Avoid common problems often encountered when spatially analyzing
non-topological data.
 Leverage built-in software logic to alert users to data input errors as the
data gets edited; thereby making data management/production more
efficient, accurate and reliable.
Why Implement Topology?
Examples
 Performing unions between feature classes (e.g. constructing tax district
polygons from city, fire and school district feature classes)
 Enforcing regulations (e.g. zoning districts must follow parcel
boundaries)
 Generating accurate reports (e.g. create a street index table from the
centerline feature class)
 Ensure appropriate resource allocations (e.g. Police Beat polygons must
be nested within Police Emergency Service Zone polygons, which must
in turn be nested within Law Enforcement Jurisdiction boundary
polygons)
Topology Benefits
 Allows maintenance of addresses in one location - the Address Point feature
class. The address attribution that is published with Parcel polygons and
Building polygons originates from the Address point feature class, and topology
ensures that all Parcels and Buildings will contain the correct address
 Ensures that administrative boundaries (cities, fire districts, school districts,
etc.) are aligned with referenced features from other GIS layers, which
promotes accuracy and confidence in overlay analyses.
 Validates attribute coding for Parcel and Subdivision subtypes. This helps
ensure compliance with zoning regulations and provides an easy view of
variances.
 Eliminating gaps and overlaps promotes confidence in areal calculations.
 Parcels can be maintained at the unique deed level. Disallowing gaps and
overlaps guarantees the accuracy of Tax Parcels created from dissolving the
maintained Parcels.
FAIROAKS
Spatial Relationships
Parcels
Building Footprints
O
GR
TE
IN
PO
VE
Centerlines
KB
OA
Edge of Pavement
Hydrography
•Polygons
•Lines
ROX
Exterior Features
Y
SNE
RM E
K
DEE
CHE
O
RO
Y
BUR
Topology Design Considerations
Where to Locate Topology
•Topology Object must be
created within a feature
dataset
•Feature dataset must
contain all feature classes
that will participate in the
topology
•May have multiple
topology objects inside of
the same feature dataset;
but feature classes may
only belong to one
topology
Tolerance
•The maximum distance that two
distinct coordinates may be apart
and still be considered to be
coincident
•Used to compare coordinates and
vertices to determine if they occupy
the same physical location
•Used by topology to resolve inexact
intersection locations of coordinates
•Accept the default
Geodatabase Subtypes
•Allows for subclasses of
the features within a
feature class
•Used to categorize your
data and apply different
properties (defaults,
domains, relationships.
etc.) to each category
•In topologies, subtypes
can have different rules
and different coordinate
ranks
Feature Class Ranking
•A topology can support up
to 50 ranks to which feature
classes may be assigned
•Rankings can take
feature classes
•The lower the
rank/number, the less likely
features in that rank will
shift
•Changing the rank of any
feature class requires the
topology to be revalidated
Core
Feature
Class
Ranks
1. County Boundary
10. Recreation Features
16. Historic Site
1 feature
2. Parcels
54,138 features
3. Subdivisions
621 features
4. Centerlines
5,397 features
5. Hydrography Lines
34,568 features
24,224 features
7. Building Footprints
67,336 features
1,102 features
7 features
12. Parks
16. Places of Worship
41 features
80 features
13. Hydrography Polygons
3,417 features
80 features
15. Pathways
62,940 features
16. Day Care Facilities
62 features
16. Emergency Siren
9. Pavement
16. Fire Stations
6,699 features
16. Medical Care Facilities
63,130 features
8. Exterior Features
83,088 features
1,436 features
31 features
16 features
16. Police Stations
5 features
16. Polling Places
57 features
16. School Buildings
32 features
16. Food Service Licenses
501 features
409,009 Total Features
Simple vs. Composite Topology
Simple Topology
•Involves only 1 Feature Class
•Compares a feature’s shape to itself
•Compares a feature’s shape to the shape of another feature
from the same feature class
Composite Topology
•Involves multiple feature classes
•Compares a feature’s shape to the shape of another feature
from a different feature class
ESRI’s Topology Rules
Simple Topology
6 Point Topology Rules
Disjoint separated spatially from other points in FC1
 Each point in FC1 Must Be------------
Composite Topology
 Each point in FC1 Must Coincide With a point in FC2
Each point in FC1 Must Be Covered By Boundary Of a polygon in FC2
 Each point in FC1 Must Be Properly Inside a polygon in FC2
Each point in FC1 Must Be Covered By Endpoint Of a line in FC2
Each point in FC1 Must Be Covered By Line in FC2
11 Polygon Topology Rules
Simple Topology
 Each polygon in FC1 Must Be Larger Than Cluster Tolerance
 Each polygon in FC1 Must Not Overlap another polygon in FC1
 FC1 Must Not Have Gaps between its own polygon features
Composite Topology
 Each polygon in FC1 Must Not Overlap With a polygon in FC2
Each polygon in FC1 Must Be Covered By ----------------------Feature Class Of a polygon in FC2
The entire area covered by polygons in 2 different feature classes Must Cover Each Other
Each polygon in FC1 Must Be Covered By a polygon in FC2
FC1 polygons’ Boundary Must Be Covered By lines in FC2
 FC1 polygons’ Area Boundary Must Be Covered By Boundary Of polygons in FC2
Point at least 1 point in FC2
 Each polygon in FC1 Contains -------Point only 1 point in FC2
 Each polygon in FC1 Contains One --------
Simple Topology
16 Line Topology Rules
 Each line in FC1
 Each line in FC1
Each line in FC1
 Each line in FC1
Each line in FC1
 Each line in FC1
 Each line in FC1
 Each line in FC1
 Each line in FC1
Must Be Larger Than Cluster Tolerance
Must Not Overlap another line in FC1
Must Not Intersect another line in FC1
Must Not Have Dangles
Must Not Have Pseudonodes
Must Not Intersect Or Touch ----------Interior the interior of another line in FC1
Must Not Self-Overlap
Must Not Self-Intersect
Must Be Single Part
Composite Topology
Each line in FC1 Must Not Intersect With a line in FC2
Each line in FC1 Must Not Intersect Or Touch -----------------Interior With the interior of a line in FC2
Each line in FC1 Must Not Overlap With a line in FC2
Feature Class Of a line in FC2
 Each line in FC1 Must Be Covered By ----------------------Boundary Of a polygon boundary in FC2
 Each line in FC1 Must Be Covered By ----------------- Each line in FC1 Must Be Inside a polygon in FC2
FC1 lines’ Endpoint Must Be Covered By a point in FC2
Boone County Core Topology
Simple Polygon Topology
Parcel polygons:
Subdivision polygons:
Building polygons: 3 exceptions
Exterior Feature polygons:
Pavement polygons: 62 exceptions
Recreation Feature polygons:
Park polygons:
Hydrography polygons:
…must not overlap other polygons from the same feature class
Simple Polygon Topology
Parcel polygons:
…must not have gaps between polygons from the same feature class
3 exceptions
Simple Point Topology
…must be disjoint
Simple Line Topology
…must not have dangles
Centerline lines:
Hydrography lines:
Pathway lines:
…must be single part
…must not self-overlap it’s own shape
…must not self-intersect it’s own shape
…must not overlap other lines from the same feature class
…must not intersect or touch interior of other lines in the same FC
93 exceptions
Overlapping Polygons
Building Footprint polygons:
…must not overlap an Exterior Feature polygon
…must not overlap a Pavement polygon 24 exceptions
…must not overlap a Recreation Feature polygon
Exterior Feature polygons:
…must not overlap a Pavement polygon 1 exceptions
…must not overlap a Recreation Feature polygon
Recreation Feature polygons:
…must not overlap a Pavement polygon
Park polygons:
…area boundary must be covered by boundary of a Parcel polygon
Confirming Parcel & Subdivision Subtypes
Subdivision polygons (Subtype=‘Single Family’):
…must not overlap a Parcel polygon of subtype ‘Commercial’ 478 exceptions
…must not overlap a Parcel polygon of subtype ‘Industrial’
…must not overlap a Parcel polygon of subtype ‘Mobile Home Park’
Subdivision polygons (Subtype=‘Multi Family’):
…must not overlap a Parcel polygon of subtype ‘Commercial’ 9 exceptions
…must not overlap a Parcel polygon of subtype ‘Industrial’
…must not overlap a Parcel polygon of subtype ‘Mobile Home Park’
Subdivision polygons (Subtype=‘Commercial’):
…must not overlap a Parcel polygon of subtype ‘Condominium’
…must not overlap a Parcel polygon of subtype ‘Mobile Home Park’
…must not overlap a Parcel polygon of subtype ‘Multi Family’ 2 exceptions
…must not overlap a Parcel polygon of subtype ‘SingleFamily’
Subdivision polygons (Subtype=‘Mobile Home’):
…must not overlap a Parcel polygon of subtype ‘Commercial’
…must not overlap a Parcel polygon of subtype ‘Condominium’
…must not overlap a Parcel polygon of subtype ‘Industrial’
…must not overlap a Parcel polygon of subtype ‘Multi Family’
…must not overlap a Parcel polygon of subtype ‘Single Family’
Pathway Topology
Pathway lines (Subtype=‘Residential’):
Pathway lines (Subtype=‘Non-Residential’):
…must not intersect with a Street Centerline
…must be inside an Exterior Feature polygon of subtype ‘Sidewalk’
Pathway lines (Subtype=‘Inferred (Driveway)’):
…must not intersect with a Street Centerline
…must be inside an Exterior Feature polygon of subtype ‘Driveway’
35 exceptions
Pathway lines (Subtype=‘Park’):
…must not intersect with a Street Centerline
…must be inside a Recreation Feature polygon of subtype ‘Walking Trail’
Pathway lines (Subtype=‘Inferred (Parking Lot)’):
…must not intersect with a Street Centerline
…must be inside a Pavement polygon of subtype ‘Parking Lot’
Pathway lines (Subtype=‘Crosswalk)’):
…must be inside a Pavement polygon of subtype ‘Crosswalk’
Pathway lines (Subtype=‘Within Roadway)’):
…must be inside a Pavement polygon of subtype ‘Right-Of-Way’
Adminstrative lines (Subtype=‘Street Centerline’):
…must be covered by a Street Centerline feature
Administrative lines (Subtype=‘Hydro Centerline’):
…must be covered by a Hydrography line feature
Administrative lines (Subtype=‘Parcel Boundary’):
…must be covered by a Parcel polygon boundary
Administrative lines (Subtype=‘Subdivision Boundary’):
…must be covered by a Subdivision polygon boundary
…must be covered by a Pavement polygon boundary
Administrative lines (Subtype=‘County Boundary’):
…must be covered by a County polygon boundary
Address Point Conflation with Polygons
…must be properly inside a Parcel polygon
2 exceptions
Parcel polygons (Subtype=‘Acreage’):
Parcel polygons (Subtype=‘Temporary’):
Parcel polygons (Subtype=‘Commercial’):
Parcel polygons (Subtype=‘Community’):
Parcel polygons (Subtype=‘Industrial’):
Parcel polygons (Subtype=‘Mobile Home Park’):
Parcel polygons (Subtype=‘Multi Family’):
Parcel polygons (Subtype=‘Single Family’):
Parcel polygons (Subtype=‘Unknown’):
…contains point an Address point
…must be properly inside a Building polygon of subtype ‘Addressed Structure’
Building polygons (Subtype=‘Addressed Structure’):
…must contain one point an Address point of subtype ‘Building’
Park polygons:
…contains point an Address point of subtype ‘Building’
Address Point Conflation with Points
Day Care points:
Fire Station points:
Food Service License points:
Historic Site points:
Medical Care points: 4 exceptions
Place Of Worship points:
Police Station points:
Polling Place points:
School Building points:
…must coincide with an Address point of subtype ‘Building’
Emergency Siren points:
…must coincide with an Address point of subtype ‘Other’
Changes to the GIS Editing Workflow
Validating Topology
Topology must be validated in
order to compile the errors
Once a feature is edited, it’s
‘envelope’ is tagged as a “Dirty
Area”
All dirty areas must be cleaned to
verify if edits conform to topology
rules
Topology toolbar allows for
topology validation for
1) The current view extent
2) A user-defined area
Time it takes to validate will vary based on
1. The number and type of errors
2. The geographic extent
3. Tolerance setting
* Suggest clicking ‘validate current
view extent’ button immediately after
performing an edit, and before
zooming away from the area
Topology Toolbar in ArcMap
Map Topology
 Map Topology allows you to edit coincident geometry and enforce
topology on-they-fly during an edit session
 Specific topology rules do not come into play. Enforces “implied
topology”
 Doesn’t persist in the geodatabase. It is saved with the map document.
 Can be used with features classes or shapefiles housed in the same
workspace
Topology Toolbar in ArcMap
GDB Topology
 Geodatabase Topology allows you to verify geometry coincidence and
visualize errors in a layer.
 Allows you to specify very specific coincidence rules
 Topology persists in the geodatabase
 No setup within editing project required
 Requires periodic revalidation of topology (factors in recent edits and
refreshes list of errors)
Fixing Errors in ArcMap
Fixing Errors in ArcMap
Exceptions can be tagged and will persist in the topology implementation
Fixing Errors in ArcMap
Suggested fixes may provide quick way to correct topology error
Conclusions
```