ArcGIS Utility Network

Utility network: Fantastic Errors and How to Fix them - Part1

This is the first blog in a series that will discuss errors you may encounter while working with a utility network. In this blog post, we will review some of the most common network topology errors. I picked this list of errors based on input from the forums, questions from the Dev summit and feedback from the user conference.  The data used in this blog is Naperville which can be downloaded from the solutions team website here. Let’s get started!

At any point, you can explore all utility network errors by visiting the doc through this link.

Invalid connectivity – No junction edge rule – (Error code 8)

This is probably one of the common errors, especially after a migration. This error indicates the network topology engine found a point feature snapped to a mid or end line feature but there was no valid rule that allows them to connect. Let us try to simulate this scenario with Naperville. In the following picture, we have a Point feature with Asset Group Connection Point and Asset Type Unknown, the point is snapped to a Line feature with Asset Group Medium Voltage and Asset Type Overhead Single Phase. There are error features of code 8 indicating that there is no junction-edge rule that allows those two assets to connect.

The solution to fix this error really depends on your data model. Here are two ways to fix this:

I’ll fix this particular error by changing the asset type of connection point from unknown to another type which actually has a valid rule to connect to the medium voltage overhead single phase line.

After running Validate network topology we can see the error is no longer there. That is because the Point feature with Asset Group Connection Point  and Asset Type Attachment can connect to Line features of Asset Group Medium Voltage and Overhead Single phase.

Invalid connectivity – More than one junction edge rule applicable – (Error code 9)

This error is on the flip side of error 8. There is a point feature snapped to a line feature and the network topology engine found more than one rule that the point and line can connect. The network topology engine can’t decide which rule to pick to connect the two features. This is possible when your point feature is a device with terminals. Let’s take an example in Naperville. In the following picture, we have a Line feature with Asset Group Medium Voltage and Asset Type Underground Three Phase snapped to Point feature with Asset Group Circuit breaker and Asset Type Three Phase. There are error features of code 9 indicating that more than one junction edge rule is applicable.



If we looked at the rules for connecting the Circuit Breaker – Three phase to Medium Voltage – Underground Three phase line you can clearly see in the table below that there are two rules. The line can either connect to the DT:Load or DT:Source terminal which creates this ambiguity and therefore the error.

The key to fix this error is to disambiguate the rules and allow the network topology engine to correctly establish the connection. Here are a few ways to fix this error:

To fix this particular case I will use the terminal connections tool to connect the line to the Load side of the circuit breaker. This updates the FromTerminal/ToTerminal fields on the line to match the correct terminal on the connecting device.

After validating topology we can see the error is gone.

Invalid connectivity – The edges are different subtypes and cannot connect.  (Error code 10)

Connectivity in the utility network requires rules. However, there are built-in feature restrictions are applied by the network topology engine without a user-defined rule. An example of this is connecting two line features without a junction. When two line features meet at their endpoints without a user junction, the network topology engine will connect the two line features if their asset group and asset types match. If however the asset group and asset type do not match this will result in two error features with code 10. Here is an example from Naperville where we have two line features of the same asset group (Medium Voltage) but different asset types, Underground SinglePhase, and Overhead Single Phase.



There are several ways to fix this error detailed below are a few:

For our error we will create a point feature that will fix the error, the new point feature is a riser which has the rule to connect to an overhead line and an underground line.


Validate topology and the error is fixed.

Line feature has invalid terminal – (error code 36)

This error usually happens during migration or after editing in certain situations. This indicates that the ToTerminal and FromTerminal fields on a line feature are invalid and the topology engine did not find a corresponding device connected to the line feature that satisfies the from or to terminals. Let’s take a look at an example of this error in Naperville. Here is a picture of the error.


If we looked closely we notice that the From Device terminal field is set to DT:Load, however, the feature is not connected to any device. This could indicate that at one point this line was previously connected to a device that had terminals and the Terminal connections tool was used to set the terminal which updated the From device terminal. At a later stage, the device was deleted leaving the line with this incorrect value.


Here are some proposed fixes for this error.

In our case, since the line is clearly is not connected to any device, we should set the FromTerminal/ToTerminal to None.



Validate topology and the error is fixed



Feature in an unsupported structural attachment relationship (Error code 35)

You can create a structural association using the modify association pane or the import associations geoprocessing tool. Both of these methods will prevent you from adding an association without having a proper rule. So it is really difficult to receive this particular error. However, if you already have a structural association and either the target or source feature of the association have changed you might get this error.

Below is an example of a Structure Junction with an asset group Electric Medium Voltage Pole and an asset type Single Pole and an ElectricDistribtuionJunction AssetGroup: Connection Point, Asset Type Unknown, a structural association exist between the two features. Since there is no rule that can allow the structural association between those two features, therefore, we get error 35.


You can also create an association through the rest api through applyEdits.


To fix this kind of error, we can do the following:


We will fix this error by deleting the association as illustrated below.

The subtype or the discriminator are out of range or the combination is invalid. (Error code 23)

One of the easiest errors to fix. This error can originate as a result of migration where a value is persisted in the asset group or the asset type fields are outside the permitted domain values. Here is a structure junction from Naperville with an invalid value for Asset Type.



To fix this error feature, just make sure to pick a value that falls within the coded value domain of the asset type.  You can also use calculate fields to do a mass update.

Stacked point features – (Error code 25)

When certain point features have the same x,y,z, the network topology engine will create error features with this code. There are certain point features that can have the same x,y,z and the network topology engine will ignore it. Learn more about coincidence features.

In this example below, we have an overhead transformer in the same x,y,z as a connection point attachment.


Here are some proposed fixes for this error:

We will update the Z value for the transformer to 1 by using the modify vertices editing tool.



Validate topology and the error is fixed.

The point feature has invalid terminal configuration  – (Error code 39)

Users can assign Terminal configurations to the device class to enable multiple terminals on devices. This enables subnetwork management and advanced tracing. Learn more about terminal management.

This error usually happens during migration if the field TerminalConfiguration was incorrectly populated with an invalid terminal path. In the following example, the device class has been incorrectly populated with an invalid path. That is why we see this error.

If we look in the attributes of the device we can see the TerminalConfiguration field populated with a value. This value indicates that there is a path called “A->B” which is no longer applicable.

To fix this, we can use the Terminal Paths tool and select the device, we will be presented with only the valid paths. After which we can select one of the valid paths configured for that device.

About the author

Product Engineer at Esri, Author of several GIS books and Software Engineering Content Creator on YouTube and a podcast host.

Notify of
Inline Feedbacks
View all comments

Next Article

ArcGIS Utility Network at the 2024 Esri User Conference

Read this article