ArcNews Online

Summer 2002

E-mail to a Friend

ArcGIS Brings Topology to the Geodatabase

  types of topology, click to see enlargement

Topology—the spatial relationships between geographic features—is fundamental to ensuring data quality. Topology enables advanced spatial analysis and plays a fundamental role in ensuring the quality of a GIS database. In the ArcInfo "coverage" model, hundreds of thousands of GIS users worldwide learned the benefits of topology by performing the build and clean operations on their databases. At ArcGIS 8.3, Esri introduced a new suite of editing tools necessary to construct and maintain user-defined topological relationships with a geodatabase. In ArcGIS, the validate topology capability will ensure data integrity by validating the features of a geodatabase against a set of topology rules.

One of the primary objectives of the ArcGIS release is to add full topology to the geodatabase. Until release 8.3, topology was a feature of the ArcInfo coverage data model. The introduction of the new ArcGIS geodatabase provides an opportunity to expand what topology means for GIS users as well as the possible uses it has in modeling spatial data. This article introduces geodatabase topology and describes a simplified parcel data model.


Geodatabase Topology in a Nutshell

To date, topology has been inexorably linked to the ArcInfo coverage data model. While build and clean operations will continue to be a key part of the ArcInfo user's repertoire for years to come, the geodatabase data model allows a new approach for topology. In the ArcGIS 8.3 release, ArcEditor and ArcInfo users will be given new tools to define, validate, and maintain topology in a geodatabase.

The integrity rules for coverage topology have equivalent rules in geodatabase topology. Yet there are a number of benefits with geodatabase topology that are not possible in the coverage model.

  • Users define which layers participate in a topology.
  • Multiple polygon, point, and line layers can participate in the same topology.
  • There are a greater number of spatial constraints (topology rules).
  • Users can specify which rules are appropriate for their data layers.
  • Topology is stored in a multiuser, continuous, commercial off-the-shelf DBMS.
  • Users can perform a partial build for increased performance.

In summary, the coverage model is a tightly controlled environment in which topological integrity as defined by that model is persistently maintained. On the other hand, topology in the geodatabase model offers a more flexible environment in which the user can apply a wider set of rules and constraints to maintain topological integrity.

Storing and Modeling Data in the Geodatabase

The geodatabase is an open storage structure for storing and managing GIS-related data (spatial geometry, tabular, and imagery) in a database management system (DBMS). The geodatabase follows the fundamental relational data model in which each object and its attributes are stored as a row in a table. An object represents a feature or a real-world entity that the GIS is designed to emulate (e.g., a parcel, a building, a streetlight, a river, or a customer). A collection of similar features (objects), such as parcels, buildings, or rivers, stored in a DBMS table is called a feature class. Collections of related feature classes that share the same spatial reference can be organized into a larger structure called a feature data set.

Each feature in a geodatabase (e.g., a parcel polygon) contains its own shape (geometry) and can exist on its own, as opposed to the coverage data model that models a polygon as a collection of arcs and label points. The ability to store the complete geometry of a simple feature (such as a parcel polygon) is one of the advantages of the geodatabase model, as the feature is always available for display and analysis.

How Is Topology Implemented in ArcGIS?

Topology is implemented as a set of integrity rules that define the behavior of spatially related geographic features and feature classes. Topology rules, when applied to geographic features or feature classes in a geodatabase, enable GIS users to model such spatial relationships as connectivity (are all of my road lines connected?) and adjacency (are there gaps between my parcel polygons?). Topology is also used to manage the integrity of coincident geometry between different feature classes (e.g., are the coastlines and country boundaries coincident?).

ArcGIS also includes a collection of spatial operators (editing tools) to edit the shared geometry and to help discover errors in the spatial relationships based on the rules the user has applied.

As an example of how topology can be applied in the ArcGIS data model, the illustration below represents a simple geodatabase containing parcels, lots, lot lines, and building footprints and displays an example of the topology rules that might be applicable to this data.

click to see enlargement
The figure above represents a simple geodatabase.
  click to see enlargement
The diagram above displays topology rules that could be applied to this data.

Why Is Topology Needed?

Topology applies GIS behaviors to spatial data. Topology enables GIS software to answer questions such as adjacency, connectivity, proximity, and coincidence. In ArcGIS, a topology provides a powerful and flexible way for users to specify the rules for establishing and maintaining the quality and integrity of your spatial data. You want to be able to know, for example, that all your parcel polygons completely form closed rings, they don't overlap one another, and there are no gaps between parcels. You can also use topology to validate the spatial relationships between feature classes. For example, the lot lines in your parcel data model must share coincident geometry with the parcel boundaries.

click to see enlargement
The New Topology wizard.
  click to see enlargement
The selected feature classes participate in the topology.

Topological relationships can be considered as spatial constraints you want to apply to spatial data. ArcGIS software will enforce these relationships and let you know when any of these constraints have been broken. To support this, the tools contained in the GIS software must recognize the spatial constraints and provide the tools you need to find and fix any of these rule violations.

How Is Topology Modeled in the Geodatabase?

In ArcGIS, a topology can be defined for one or more of the feature classes contained in a feature data set. It can be defined for multiple point, line, and polygon feature classes. A topology is a set of integrity rules for the spatial relationships along with a few important properties: a cluster tolerance, feature class ranks (for coordinate accuracy), errors (rule violations), and any exceptions to the rules you've defined. ArcEditor and ArcInfo include a topology wizard to select which feature classes will participate in a topology and define these properties.

  click to see enlargement
Rules are used to specify the spatial relationship between features in the feature class as well as between feature classes.

The topology rules require that buildings (blue) not overlap parcels (tan) and that lot lines share coincident geometry with lot polygons. After running Validate, errors are generated and displayed (magenta).

click to see enlargement
The rank values indicate that the vertices in the land use feature class will snap to vertices in the lot lines feature class when they are within the cluster tolerance.

Topology Rules

Topology rules can be defined for the features within a feature class or for the features between two or more feature classes. Example rules include polygons must not overlap, lines must not have dangles, points must be covered by the boundary of a polygon, polygon class must not have gaps, lines must not intersect, and points must be located at an endpoint. Topology rules can also be defined for the subtypes of a feature class. Geodatabase topology is flexible since you select which rules apply to the data in your feature class or feature data set.

Topology Properties

The cluster tolerance is similar to the fuzzy tolerance. It is a distance range in which vertices are considered coincident. Vertices and endpoints falling within the cluster tolerance are snapped during the validate topology process.

Coordinate accuracy ranks are defined at a feature class level and control how much the features in that class can potentially move in relation to features in other classes when a topology is validated. The higher the rank (one being the highest), the less the features move during the validate process.

Validate Topology Errors

The validate topology operation is used to snap feature geometry where vertices fall within the cluster tolerance and to check for violations of the specified topology rules. Validate topology begins by snapping together feature vertices that fall within the cluster tolerance taking into account the ranks (as described above) of the feature classes. If feature vertices are found within the cluster tolerance, the features from the feature class with the lowest rank of coordinate accuracy will be moved to the features with the higher rank. As part of the snapping routine, validate topology will also add vertices where features intersect if a vertex does not already exist.

click to see enlargement
The Error Inspector can be used to display the errors and exceptions present in the topology. In this case, the Error Inspector lists the errors generated for buildings overlapping easements.

Also, any rule violations discovered during validate topology are marked as errors. A complete error listing is available in the properties of the topology in ArcCatalog and ArcMap. In ArcMap, errors can be searched for, displayed, or listed in the Error Inspector.

Correcting Errors in the Topology

When an error is discovered during the validate topology operation, the user has three options:

  1. Correct the error using the Fix Topology Error tool or some other method.
  2. Leave the error unresolved.
  3. Mark the error as an exception. The Fix Topology Error tool offers a variety of methods for resolving an error depending on the error and the feature type.


When resolving errors, the user always has the option of marking an individual error or a collection of errors as exceptions. There are instances when the occurrence of a defined error may actually be acceptable. In these cases the error should be marked as an exception; for example, if the building shown in the example was actually a shopping mall, the one building overlapping several parcels would not be an error but rather an exception to the rule. Once an error has been marked as an exception, it remains as such until it is reset back to an error. Running validate topology on the same area will not generate an error for an instance that has been marked as an exception.

Shared Geometry

One of the real benefits of running validate topology is that it adjusts geometry between features and feature classes (so vertices within the cluster tolerance become coincident or share the same x,y coordinate locations). The shared geometry is not physically stored in the database as it is in the coverage data model, rather topological elements such as coincident boundaries and other topological relationships are discovered when required on the fly (based on the coincident geometry). For example, when you click on a line or point with the Topology Edit tool, the tool determines the features that share geometry with selected features. Edits will be performed on all the features that share geometry.

 Shared Features dialog listing
The Show Shared Features command displays a dialog listing the features that share geometry with the selected edge.

Discovering shared geometries on the fly as opposed to storing relationships in the database provides significant performance benefits when editing your data. The editing tools in ArcGIS also provide more flexibility during edit operations. For example, when working in an environment in which polygon boundaries are only stored once, it is not uncommon to discover that certain boundaries between layers (feature classes) are not really coincident. Redigitizing lines and rebuilding topology can be a time-consuming process. With the editing tools in ArcGIS, you simply select the edge and view the features sharing that edge. Unchecking the unrelated features allows you to update one or more feature classes independent of the others.

Geodatabase Topology Benefits

The ArcInfo coverage model explicitly defines, stores, and maintains the topological information within the coverage structure and employs a fixed set of tools for creating and maintaining topology. The result is a tightly controlled environment in which the work flow is dictated by the software and topological integrity is steadfastly maintained. The data model does not allow much flexibility. Thus, application development (ArcEdit macros) for editing is required to build and maintain more sophisticated data models than many GIS applications require.

In ArcGIS, geodatabase topology provides a powerful, flexible way for you to specify the rules for establishing and maintaining the quality and integrity of your data, as well as providing a suite of tools specifically designed to support topological geodatabase editing and maintenance (see sidebar). The benefits of defining a topology in the geodatabase model include

  • Better data management--You select which feature classes participate in a topology.
  • More flexibility--Multiple polygon, point, and line feature classes can participate in a topology.
  • Improved data integrity--You specify the appropriate topological rules for your data.
  • More opportunities for data modeling--A much greater number of possible spatial constraints can be applied to your data.
  • ArcSDE multiuser environment--Take advantage of ArcSDE and the multiuser editing environment.
  • Large map layers--Extremely large continuous map layers are stored in a single database.

Topology in the geodatabase model offers a more flexible environment along with the ability to define and apply a wider set of integrity rules and constraints. As a result, almost any work flow can be employed in which topological integrity is analyzed only at designated times specified by the user. The user is no longer forced to rerun a clean command to rebuild topology. The user can choose to validate the geodatabase topology at any time, perform queries and analyses using the geodatabase data, and continue to produce high-quality maps.

For more information on ArcGIS, visit or call your Esri regional office, or contact your local reseller. Outside the United States, please contact your local Esri distributor.

Printer-friendly version of this article. [PDF-2.81 MB]

Contact Us | Privacy | Legal | Site Map