Network topology

Every utility network has a network topology. The job of a network topology is to manage information about features and maintain the connectivity between features. Information regarding both processes is stored inside of a network topology. For features to connect, they must abide by the feature restrictions of a utility network and applicable network rules must exist.

Information inside of a network topology is stored in a graph persisted as binary pages. This allows tracing and diagram functions to read and process information about the network in an efficient manner (as opposed to retrieving information directly from features in a network). Each time a portion of the graph is accessed, that portion is cached and given a time stamp to record the last moment of access. This allows client applications to access the same portion of the graph, avoiding the need to go to the database directly, which can further improve processing time.

States of a network topology

A network topology has two states: enabled and disabled. Only the owner of the utility network can manage these states. To learn how to manage the network topology state, see the Tools and commands section below.

The Enable Network Topology tool can be used to generate errors against current network features or to fully enable the network topology for network functionality, such as tracing and generating diagrams. Network topology errors can be generated after a utility network has been configured to discover errors in your utility network before the data is registered as branch versioned. This uses the Only generate errors advanced option and is useful for doing preliminary QA of your data before the utility network is consumed. After the initial QA of your network data is complete, the utility network feature dataset is registered as branch versioned and the network topology can be enabled to allow tracing and network diagram tasks. After the network topology is enabled, dirty areas are created to track certain edits made to network features.

There are different requirements for using the Enable network topology tool. To understand the different workflows and requirements for enabling a network topology, see Enable a network topology.

A network topology is disabled to perform management tasks such as adding rules or assigning association roles to assets. Disabling a network topology is recommended when loading large amounts of data, as it helps to reduce processing time. When a network topology is disabled, a single dirty area covering the network is created. Dirty areas also remain for any features with errors. Any edits made while the network topology is disabled are not tracked by dirty areas. When the network topology is enabled again, all outstanding edits are validated.

The network properties for a utility network include network topology metadata in the Network Topology section. Information such as the current enabled state, dirty area count, time stamps, and duration for different network topology actions are maintained as part of the network properties. The network properties can also be used to view the count for errors.


There are some network configuration tasks that can only be performed before the network topology is enabled for the first time. To learn more, see Utility network management tasks.

Validate a network topology

After a network topology is enabled, portions of the network that have been edited or modified are not represented in the topology. The content you see on a map may not be what is stored in the network topology as the network topology for a given area of a network represents the last time it was enabled or validated (whichever occurred last). Analytics (tracing and diagrams) reading the network topology may be reading outdated information and could therefore return inaccurate results. Dirty areas are used to mark information that is new to the network and has not been reflected in the network topology. The network topology must be validated to include these changes in tracing and diagram operations.

Validation of a network topology is not an automatic operation that is performed after every edit. The validation process can be initiated by using the Validate command on the Utility Network tab, or via the Validate Network Topology tool. When working with an enterprise geodatabase, it is recommended that you use the Validate Network Topology tool for longer-running validation operations with a large extent or number of edits. The Validate Network Topology tool takes advantage of asynchronous processing.

See Validate a network topology for more information.

During a network topology validation event, various network properties, restrictions, and consistencies are evaluated for all network features. Among the items reviewed are network rules and edge connectivity policies. Items causing inconsistent or ambiguous conditions are tracked via errors.

Dirty areas that have associated errors will remain until the error situation is corrected. These could be resolved by making edits to the feature or by performing configuration changes to allow the error situation. Making configuration changes requires the network topology to be disabled.

The validate operation does not evaluate unlocatable junction and edge objects. The network topology must be disabled and enabled to reflect changes made to these objects.

For the list of error situations, see Utility network error IDs.

Two geographical extent options are offered when you initiate the validation process using the Validate command on the Utility Network tab:

  • Current Extent—The network topology is validated for the current extent of the map. This option is more common and recommended when edits have been performed in a localized area or work zone.
  • Entire Extent—Validating the entire extent involves a potentially heavy operation depending on the size, complexity, and number of dirty areas in your network. This operation is recommended when there are many edits scattered geographically throughout the network that need to be validated.

When you validate the network topology based on a specific extent, the dirty areas that intersect the validation extent are clipped. In the image below, the purple shaded polygons represent dirty areas and the extent of the validate operation is represented by the black box.

Validate network topology based on current extent
The left graphic represents dirty areas before a validate operation; the extent to be validated is shown by the black box. The right graphic represents dirty areas after a validate network topology operation.

When you validate the network topology based on a specific extent, it is important to be aware of the following:

  • The entire dirty area is evaluated when a dirty area associated with an error is partially contained within the validation extent.
  • After you validate a topology, dirty areas may still be present if the current extent was validated and it did not encompass all of the dirty areas in the network.
  • A network feature is not guaranteed to be valid until the full extent of the feature's dirty area is validated. If there are any dirty areas associated with a network feature, this will impact tracing and update subnetwork operations that use the validate consistency trace configuration option.

When a validate operation is performed, subnetworks that intersect the dirty areas are marked as dirty and the network diagrams are marked as inconsistent. The Update Subnetwork tool is used to update a dirty subnetwork and switch subnetwork system diagrams back to a consistent state. Non-system-generated network diagrams can be made consistent with network features by using the Update Diagram tool. To learn more about the process for updating subnetworks, see Update a subnetwork.

Dirty areas and errors

Dirty areas are created to flag areas that are not reflected in the network topology and to display errors. A network topology is validated to keep the network topology updated and remove dirty areas.

While tracing through a dirty area is allowed, it may yield unexpected results and therefore should not be relied on. Validating the topology for the area that will be traced will remove dirty areas and help ensure trace results reflect what is on the map. To learn more, read about the Validate Consistency option in the Trace tool configuration.

To learn more about these concepts, see Errors and Dirty areas.

Tools and commands

There are several tools and commands used to manage the state of the network topology for a utility network. Some topology management tasks can be performed client/server using data accessed directly from a geodatabase or via services using a feature layer. Regardless of the data source, all of the utility network configuration tools require an active portal connection using the portal utility network owner.

The following geoprocessing tools are provided to work with a network topology:

A Validate command exists on the Data tab. This command, along with the Validate Network Topology tool, allows you to validate a network topology for the current extent or the entire geographic extent of a utility network. A validation event (tool or command) can take place in the Default version or a named version by any user that has permissions to edit the version. See Validate a network topology to review both workflows.

The Disable Network Topology tool can be executed on the Default version or a user version. It is necessary to disable a network topology when performing configuration tasks for a utility network or performing a large data load.

The Enable Network Topology tool can only be executed on the Default version. You can enable a network topology to discover errors or to work with dirty areas, network diagrams, and tracing.

If the topology is disabled in a named version, the reconcile process can be used to inherit the topology state from the default branch version.

The Verify Network Topology tool is used to verify the consistency of a network topology and create an output log file with issues discovered. This tool can be used to discover potential issues in situations in which inconsistencies in the network topology impact the ability to validate.

The Repair Network Topology tool is used to review and perform repairs for consistency of a network topology and create an output log file with the issues discovered and repaired. This tool can be used to discover and repair inconsistencies in the network topology that impact the ability to validate.


Through the application of branch versioning, a utility network supports archiving and editor tracking capabilities. This allows edits to the network features and the network topology to be temporally aware. Analytic operations can be performed at the current moment or at a specified moment in the past. The topology must be enabled at these moments for a trace or diagram operation to be performed.

Learn more about how to work with historical moments