Add connectivity rules to a network

Allow a junction-edge connection

The connectivity rules in a utility network allow you to define what kinds of features are allowed to connect to each other. These rules are checked every time edits are validated and allow you to quickly identify areas of your data that are not captured correctly in the GIS. This module will show you how to add new rules to an existing utility network to resolve connectivity errors.

Error 8: Invalid connectivity – No junction edge rule is most often caused when a user attempts to connect two features that aren’t allowed to connect. As an administrator, you can control which features are allowed to connect by adding or deleting connectivity rules. In this section, you will review a junction-edge error (error 8) that your users say should not occur. You’ll add a rule to allow the connection and resolve the error.

  1. Download the Utility Network Configuration project package.

    A file named Utility Network Configuration.ppkx is downloaded to your computer.

    Note:

    A .ppkx file is an ArcGIS Pro project package and may contain maps, data, and other files that you can open in ArcGIS Pro. Learn more about managing .ppkx files in this guide.

  2. Locate the downloaded file on your computer. Double-click Utility_Network_Configuration.ppkx to open it in ArcGIS Pro.
  3. If prompted, sign in with your ArcGIS account.
    Note:

    If you don't have access to ArcGIS Pro or an ArcGIS organizational account, see options for software access.

    A map appears, showing a water distribution utility network in Naperville, Illinois, USA.

    Water utility network map

  4. In the Contents pane, expand the Water Utility Network layer and its Dirty Areas sublayer.

    Dirty Areas legend in the Contents pane

    Dirty areas serve as an indicator that a change to the network has taken place that is not reflected in the network topology. The blue background of the map is a Disabled dirty area, indicating that the network topology is currently disabled.

    Do not enable the network topology. The network topology must be disabled to modify utility network rules. In addition, some steps in this tutorial will only work if the network topology has never been enabled.

    Note:

    To complete the steps in this tutorial with your own utility network data later, you must first disconnect any users from your database and stop any services.

    It is recommended that you change configurations on a test database first to verify that it corrects the desired errors and to ensure that you are properly accounting for any side effects.

  5. On the ribbon, click the Map tab. In the Navigate group, click Bookmarks.
  6. In the bookmark gallery, click Bookmark 1.

    Bookmark 1

    The map zooms to a location with two instances of error 8: Invalid connectivity – No junction edge rule. The red hatched rectangles are the Error dirty areas.

    Map with error 8

  7. In the Contents pane, check the box next to Labels to turn this layer on.

    Labels layer in the Contents pane

    Labels appear on the map. These are not the typical labels found in a utility network map but are intended to make feature identification easier throughout this tutorial.

    Labels on the map

    The error areas surround a fire service line (labeled as Service, Fire Service) and a corporation stop fitting (labeled as Fitting, Corporation Stop). The error labels indicate that there is no junction edge rule available to allow these two features to connect. While connecting fire services to corporation stop fittings is not common, your users claim it is a valid situation and they want it to be allowed, so you will add a rule to allow them to connect.

    Note:

    To learn how to resolve this error by editing, see Fix junction-edge errors in the tutorial Fix connectivity errors in a utility network.

  8. Above the ribbon, click Command Search and type add rule.
  9. In the search results, click Add Rule (Utility Network Tools).

    Add Rule (Utility Network Tools) in the Command Search menu

    The Geoprocessing pane appears, open to the Add Rule tool. You’ll configure a new rule in the utility network that allows corporation stop fittings from the Water Junction layer to connect to fire service lines from the Water Line layer.

  10. For Input Utility Network, click the Browse button.

    Browse button

  11. In the Input Utility Network window, under Project, expand Databases and Utility Network Configuration.gdb. Click UtilityNetwork.

    Utility Network in the Input Utility Network window

  12. Select the Network item and click OK.
  13. Set the following parameters for the Add Rule tool:
    • For Rule Type, choose Junction-edge connectivity.
    • For From Table, choose WaterJunction.
    • For From Asset Group, choose Fitting.
    • For From Asset Type, choose Corporation Stop.
    • For To Table, choose WaterLine.
    • For To Asset Group, choose Service.
    • For To Asset Type, choose Fire Service.

    Add Rule tool parameters

  14. Click Run.

    Next, you’ll generate errors to see the effect of your new rule.

  15. At the top of the Geoprocessing pane, click the Back button.

    Back button in the Geoprocessing pane

  16. In the search bar, type enable network topology. In the search results, click Enable Network Topology (Utility Network Tools).
    Caution:

    Ensure that you do not choose Enable Network Topology (Trace Network Tools).

    Enable Network Topology (Utility Network Tools) in the Geoprocessing pane

  17. For Input Utility Network, choose Water Utility Network.
    Tip:

    If any tool in this tutorial fails to run, use the Browse button to set the Input Utility Network parameter instead of the drop-down menu.

  18. Expand the Advanced Options section and check the Only generate errors check box.

    Only generate errors box checked

    This option allows you to validate the changes you’ve made and generate errors without actually enabling the topology. It is an important option for administrators because changes can’t be made to the utility network when the network topology is enabled.

  19. Click Run.

    The errors disappear from the map.

    Map with no errors

    In this section, you resolved a junction-edge error (Error 8: Invalid connectivity – No junction edge rule) by creating a rule that allowed fire service lines to connect to corporation stop fittings. You determined that this rule should be added to the utility network based on a conversation with your users.

Allow a junction-edge connection with terminals

In this section, you’ll fix a junction edge error by adding two rules. The new rules will resolve the junction-edge error, but they will also cause a new ambiguous connectivity error.

  1. On the ribbon, on the Map tab, in the Navigate group, click Bookmarks.
  2. In the bookmark gallery, click Bookmark 2 to zoom to this bookmark.

    The map zooms to a location with two instances of error 8: Invalid connectivity – No junction edge rule. The errors surround a water storage tower and a Water Main, Distribution Main line.

    Map with error 8

  3. On the map, click the Storage, Tower feature to open its pop-up.
  4. Scroll to the bottom of the pop-up. Under Rules (3), expand the Junction Edge (2) section.

    Junction Edge rules in the pop-up

    According to the available rules, storage towers are only allowed to connect to transmission mains, not distribution mains. They are allowed to connect using either of the tower’s terminals, named Port One and Port Two.

    After discussing the situation with your users, you learn that they want to be allowed to connect distribution mains to storage towers as well through either port. This is so the tower can provide pressure to the distribution system. You’ll add two new rules to the network, one for each terminal on the storage tank.

    Note:

    You can configure pop-ups to include rules by downloading the Utility Data Management Support Tools from the Esri GitHub page and running the Configure UN Layers tool with the Rule Popup option.

  5. Close the pop-up.
  6. In the Geoprocessing pane, click the Back button twice.
  7. Under Recent, click Add Rule (Utility Network Tools).

    Add Rule tool in the Recent list in the Geoprocessing pane

  8. Set the following parameters for the Add Rule tool:
    • For Input Utility Network, choose Water Utility Network.
    • For Rule Type, choose Junction-edge connectivity.
    • For From Table, choose WaterDevice.
    • For From Asset Group, choose Storage.
    • For From Asset Type, choose Tower.
    • For From Terminal, choose ALL.
    • For To Table, choose WaterLine.
    • For To Asset Group, choose Water Main.
    • For To Asset Type, choose Distribution Main.

    Add Rule tool parameters

    Because you chose ALL for the From Terminal parameter, the tool will create two new rules at once, allowing distribution mains to connect to storage towers using either the Port One or Port Two terminals.

  9. Click Run.

    Next, you’ll generate errors to validate the two new rules.

  10. In the Geoprocessing pane, click the Back button. Under Recent, click Enable Network Topology (Utility Network Tools).

    Enable Network Topology tool in the Recent list in the Geoprocessing pane

  11. For Input Utility Network, choose Water Utility Network.
  12. Expand the Advanced Options section and check the Only generate errors check box.
  13. Click Run.

    The junction-edge errors (error 8) are replaced with error 9: Invalid connectivity—More than one junction-edge rule is applicable.

    Map with error 9

    When you change the rules of a utility network, you may solve some errors, but you may also create new ones. Sometimes this is an indication that the rule changes should not have been made, but not always.

    Error 9: Invalid connectivity—More than one junction-edge rule is applicable is also known as an ambiguous connectivity error. It appears here because there are two valid ways to connect the Water Main, Distribution Main line to the Storage, Tower device: using Port One or Port Two. It is unclear which port should be used. This error can be solved by editing. You can send the project back to your users and tell them they are now allowed to connect distribution mains to storage towers using either port, but they must modify terminal connections for the affected lines to specify the correct ports. After these edits are made and the topology is validated, error 9 will disappear.

    Note:

    To learn how to resolve this error by editing, see Fix ambiguous connectivity errors in the tutorial Fix connectivity errors in a utility network. You may need to save and close ArcGIS Pro before making the edit.

    In this section, you encountered a junction-edge error (error 8). You added two new rules to the utility network to allow distribution mains to connect to storage towers using either terminal. The new rules resolved error 8 but introduced an ambiguous connectivity error (error 9). This was an expected result, since one of the two terminals must be specified before the connection is valid. Error 9 should be fixed with editing rather than further configuration changes.

In this module you saw several examples of how to add rules to your utility network to resolve connectivity errors. As with all schema and configuration change you must consider these changes carefully before making them, as you may inadvertently be allowing for bad data to be considered valid or you may introduce new errors in the form of ambiguous connectivity.


Modify terminal configurations

Fix invalid terminal connection errors

The utility network allows you to define some assets to have terminals. This is done when it is important that an edge be connected to a specific way to a device or junction object. This is incredibly important with devices like pumps and flow valves, where water is only allowed to flow one direction through the device.

Topology errors are usually caused by data editing mistakes. However, they can also be caused by a missing configuration that must be addressed by an administrator. In this module, a user has encountered an instance of error 36: Line feature has invalid terminal that they say should not have occurred. You’ll assign a terminal configuration to resolve the error and prevent it from reoccurring.

  1. Zoom to the Bookmark 3 bookmark.

    The map zooms to an area with three instances of error 36: Line feature has invalid terminal. This error is also referred to as an invalid terminal connection error. The errors surround a Flow Valve, Altitude device. Your users reported that the errors appeared when they changed the asset type of the flow valve from Air Gap to Altitude.

    You’ll examine the properties of both the lines and the device to find the cause of this error.

    Map with error 36

  2. On the map, click one of the Water Main Distribution Main lines on either side of the Flow Valve, Altitude feature to open its pop-up.
  3. In the pop-up, look for the From device terminal and To device terminal fields.

    To device terminal set to Port Two in the pop-up

    The From device terminal attribute of one of the lines is Port One. The To device terminal attribute of the other line is Port Two. The lines are trying to connect to the flow valve through the Port One and Port Two terminals. Next, you’ll check if these terminals are available on the flow valve.

  4. Close the pop-up.
  5. In the Contents pane, right-click Water Utility Network and click Properties.

    Properties in the Water Utility Network context menu

  6. In the Layer Properties window, click the Network Properties tab.
  7. Expand the Water Network section and the Water Device section.
  8. In the Asset Type Name column, find the Altitude row.

    Altitude asset type in the Water Device table

    The Altitude asset type is not assigned any terminal configuration. This means that altitude flow valves have no terminals.

    Note:

    To learn how to resolve this error by editing, see Fix terminal connections after editing a feature in the tutorial Fix connectivity errors in a utility network.

    Your users say that the flow valve should have the same terminal configuration even though its asset type has changed. The old asset type was Air Gap, which is assigned the Pipe Bidirectional Dual Terminal configuration. You’ll assign the same terminal configuration to the Altitude asset type.

  9. Collapse the Water Network section. Expand the Terminal Configurations section.

    The Pipe Bidirectional Dual Terminal configuration has two terminals: Port One and Port Two.

    Pipe Bidirectional Dual Terminal in the Terminal Configurations table

    When you assign this configuration to the Altitude asset type, these terminals will become available to altitude flow valves.

  10. Close the Layer Properties window.
  11. In the Geoprocessing pane, click the Back button.
  12. In the search bar, type set terminal configuration. In the search results, click the Set Terminal Configuration tool.

    Set Terminal Configuration tool in the geoprocessing pane

  13. Set the following properties:
    • For Input Utility Network, choose Water Utility Network.
    • For Domain Network, choose Water.
    • For Input Table, choose WaterDevice.
    • For Asset Group, choose Flow Valve.
    • For Asset Type, choose Altitude.
    • For Terminal Configuration, choose Pipe Bidirectional Dual Terminal.

    Set Terminal Configuration tool parameters

    A bidirectional terminal configuration indicates there are no distinct upstream and downstream terminals; the water can flow in either direction. The previous terminal configuration was Single Terminal, which is the default state and equivalent to having no terminal configuration.

    Caution:

    Ensure that the tool’s parameters are set correctly. Once you’ve enabled the topology for the first time, you won’t be able to remove terminal configurations from asset types.

  14. Click Run.
  15. Reopen the Enable Network Topology tool. Check the Only generate errors check box and click Run.

    The invalid terminal connection errors (error 36: Line feature has invalid terminal) disappear. Now that the device has a new terminal configuration, the To device Terminal and From device terminal attributes on the lines are valid again: they once more reference terminals that are available. However, error 36 has been replaced by error 8: Invalid connectivity – No junction edge rule.

    Map with error 8

    This happened because there are no rules yet that allow Water Main, Distribution Main lines to connect to Flow Valve, Altitude devices through the Port One or Port Two terminals. Whenever you change the terminal configuration for an asset type, you must add rules to the utility network that specify the connectivity allowed for the available terminals.

  16. Reopen the Add Rule geoprocessing tool.

    When the device was an air gap flow valve, the distribution main lines connected to it using the Port One and Port Two terminals, and rules existed to allow these connections. You’ll add two rules to the network to allow the same kind of connections for altitude flow valves.

  17. Set the following parameters:
    • For Input Utility Network, choose Water Utility Network.
    • For Rule Type, choose Junction-edge connectivity.
    • For From Table, choose WaterDevice.
    • For From Asset Group, choose Flow Valve.
    • For From Asset Type, choose Altitude.
    • For From Terminal, choose ALL.
    • For To Table, choose WaterLine.
    • For To Asset Group, choose Water Main.
    • For To Asset Type, choose Distribution Main.

    Add Rule tool parameters

  18. Click Run.

    The utility network now has rules that allow Water Main, Distribution Main lines to connect to Flow Valve, Altitude devices using Port One or Port Two

  19. Run the Enable Network Topology tool with the Only generate errors box checked.

    The errors disappear from the map.

    Map with no errors

    In this section, a user changed the asset type of a device. This caused an invalid terminal connection error (error 36) because the new asset type did not have the same terminals as the old one. To resolve the error, you assigned the correct terminal configuration to the new asset type. You also added two new rules to allow distribution mains to connect to altitude flow valves using the correct terminals.

Fix midspan terminal device errors

A device with terminals cannot be drawn midspan to a line, it must be placed on either end of a line instead. In this section, a device with terminals was placed midspan on a water line, causing error 38: Devices with multiple terminals cannot be midspan, otherwise known as a midspan terminal device error. The most common solution to this error is to split the underlying line and connect the new line ends to the terminals. However, your users decided that they don’t want to split these lines and would rather stop modeling terminals on these types of devices.

You’ll use the Set Terminal Configurations tool to remove terminal configuration from the device asset type as your users request. However, this change will require you to delete and rebuild many rules that were dependent on the terminal configuration.

Note:

You can only perform this configuration change before enabling network topology for the first time. If you have previously enabled the network topology for the tutorial data, you can revert Utility_Network_Configuration.ppkx to its default state.

  1. Zoom to the Bookmark 4 bookmark.

    The map zooms to an area with a Flow Valve, Air Gap device drawn midspan on a Water Main, Distribution Main line, resulting in error 8: Invalid connectivity – No junction edge rule and error 38: Devices with multiple terminals cannot be midspan.

    Map with errors 8 and 38

    When you encounter error 8, resolve other errors in the area first, since they may be the reason a junction and edge are unable to connect. You’ll focus on error 38 first.

    Error 38 occurred because the Flow Valve, Air Gap device has terminals. Devices with terminals cannot connect to lines midspan.

    Note:

    To learn how to resolve this error by editing, see Fix a midspan terminal device error in the tutorial Fix topology errors in a utility network.

    After reviewing this situation with your users, they decided that they do not want to split the water main. They would rather remove devices from air gap flow valves. They understand that this means that air gap flow valves will no longer be able to control flow in the utility network like they do in the real world. But if they choose to keep devices on air gap flow valves, they will need to split many lines. They will also need to generate new IDs for the split lines, which may result in a loss of data for maintenance records.

    Earlier in this tutorial, you learned that the Air Gap asset type is assigned the Pipe Bidirectional Dual Terminal configuration, which is configured with two terminals, Port One and Port Two. To remove these terminals from air gap flow valves, you must set the terminal configuration of the Air Gap asset type back to its default state, Single Terminal.

    When a device is assigned the Single Terminal configuration, it has no terminals and is sometimes said to have no terminal configuration. More accurately, it has no user-defined terminal configuration.

  2. Reopen the Set Terminal Configuration tool and set the following properties:
    • For Input Utility Network, choose Water Utility Network.
    • For Domain Network, choose Water.
    • For Input Table, choose WaterDevice.
    • For Asset Group, choose Flow Valve.
    • For Asset Type, choose Air Gap.
    • For Terminal Configuration, choose Single terminal.

    Set Terminal Configuration tool parameters

    Note:

    While many changes to the utility network can only be made when topology is disabled, removing a terminal configuration is even more restricted: it can only be performed before the network topology has been enabled for the first time. For the full list of network configuration tasks and their limitations, refer to the Utility network management tasks documentation page.

  3. Click Run.

    By setting the Air Gap asset type to Single terminal, you removed the previous terminal configuration assignment. Air gap flow valves now have no user-defined terminal configuration and therefore, no terminals.

  4. Run the Enable Network Topology tool with the Only generate errors box checked.

    Error 38: Devices with multiple terminals cannot be midspan is resolved. However, the junction-edge error (error 8) remains because no rules exist to allow air gap flow valves to connect to distribution mains without terminals.

    Map with error 8

  5. Click the Flow Valve, Air Gap feature to open its pop-up.
  6. Scroll to the bottom of the pop-up. Under Rules (24), expand both the Junction Edge (4) and Junction Junction (20) sections.

    Rules tables in the pop-up

    The existing rules for air gap flow valves only allow for connections via terminals (Port One and Port Two). However, you just removed the terminal configuration from the Air Gap asset type, so this type of flow valve no longer supports terminals. Now all the junction-edge and junction-junction rules for this asset type are invalid.

    To resolve error 8, you must add new rules for air gap flow valves that do not use terminals. Also delete the old rules to keep the utility network clean and prevent them from causing unnecessary errors elsewhere.

  7. Close the pop-up.
  8. In the Geoprocessing pane, search for and open the Delete Rule tool.

    Delete Rule tool in the Geoprocessing pane

    You’ll begin by deleting the four junction-edge rules between air gap flow valves and water mains.

  9. Set the following parameters:
    • For Input Utility Network, choose Water Utility Network.
    • For Rule Type, choose Junction-edge connectivity.
    • For Rules, choose 375: [WaterDevice.Flow Valve.Air Gap] [WaterLine.Water Main.Distribution Main].

    Delete Rule tool parameters

  10. Click Run.
  11. Run the Delete Rule tool three more times to delete the following rules:
    • 376: [WaterDevice.Flow Valve.Air Gap] [WaterLine.Water Main.Transmission Main]
    • 377: [WaterDevice.Flow Valve.Air Gap] [WaterLine.Water Main.Distribution Main]
    • 378: [WaterDevice.Flow Valve.Air Gap] [WaterLine.Water Main.Transmission Main]

    Next you will add two new rules to replace the four you deleted. The new rules will allow air gap flow valves to connect to distribution and transmission mains without a terminal.

  12. Reopen the Add Rule tool and set the following parameters:
    • For Input Utility Network, choose Water Utility Network.
    • for Rule Type, choose Junction-edge connectivity.
    • For From Table, choose WaterDevice.
    • For From Asset Group, choose Flow Valve.
    • For From Asset Type, choose Air Gap.
    • For To Table, choose WaterLine.
    • For To Asset Group, choose Water Main.
    • For To Asset Type, choose Distribution Main.

    Add Rule tool parameters

  13. Click Run.
  14. Change the To Asset Type parameter to Transmission Main and click Run again.
  15. Run the Enable Network Topology tool with the Only generate errors box checked.

    The error is resolved.

    Map with no errors

  16. On the map, click the Flow Valve, Air Gap feature to reopen its pop-up.
  17. Scroll to the bottom of the pop-up and expand the Junction Edge (2) and Junction Junction (20) sections.

    The four Junction Edge rules that connected via Port One and Port Two have been replaced by two rules that do not require terminals.

    Rules tables in the pop-up

    The 20 Junction Junction rules remain. Just as you replaced the Junction Edge rules, you must remove these 20 rules and create new ones. If you don’t, errors will occur wherever air gap flow valves connect to other junctions. Removing a terminal configuration assignment from an asset type has a large downstream impact on the rules configured in a utility network.

    Replacing the remaining rules will not be covered in this tutorial. You can address these changes afterward.

  18. Close the pop-up.

    You removed the terminals from a device to resolve error 38: Devices with multiple terminals cannot be midspan without splitting any lines.

In this module you saw how you can set or remove the terminal configuration on a device, and the impacts this change has on the connectivity rules for that asset. Fortunately, each utility network data model includes a recommended set of connectivity rules and terminal configurations so you should only need to worry about whether a device should have terminals or not if you are adding new asset types to a data model.


Work with edge connectivity policies

Allow midspan connectivity on lines

In the last module, you saw that a device with terminals cannot be drawn midspan to a line. When an asset type, like pipe casing, must be physically split in the real world to connect features to it, it can be configured to not allow any midspan connectivity. Some lines are configured to not allow any midspan devices, even if they have no terminals. Error 13: Midspan connectivity not allowed occurs when a user places a feature midspan on a line and the line is configured to only allow features to connect at its endpoints.

In this section, your users want to allow hydrant service valves to connect midspan to hydrant service lines. You’ll use the Set Edge Connectivity tool to change this configuration for them.

  1. Zoom to the Bookmark 5 bookmark.

    The map zooms to a location with a hydrant service valve (labeled as Service Valve, Hydrant) drawn midspan on a hydrant service line (labeled as Service, Hydrant Service). There are two midspan connectivity errors (error 13) because services are configured to only allow features to connect at their endpoints.

    Map with error 13

    To fix this error, you can split the service line at the location of the valve. However, your users told you that instead of splitting the line, they would prefer that hydrant service valves be allowed to connect midspan on hydrant service lines. They are concerned about having to assign new IDs to many lines.

    Note:

    To learn how to resolve this error by editing, see Fix a midspan connectivity error in the tutorial Fix topology errors in a utility network.

    To allow the requested behavior, you’ll change the edge connectivity of hydrant service lines.

  2. In the Geoprocessing pane, search for and open the Set Edge Connectivity tool.
  3. Set the following parameters:
    • For Input Utility Network, choose Water Utility Network.
    • For Domain Network, choose Water.
    • For Input Table, choose WaterLine.
    • For Asset Group, choose Service.
    • For Asset Type, choose Hydrant Service.
    • For Edge Connectivity, choose Any vertex.

    Set Edge Connectivity tool parameters

    These settings will allow junctions to connect to hydrant service lines at any vertex, rather than only at end vertices.

  4. Click Run.
  5. Run the Enable Network Topology tool with the Only generate errors box checked.

    The error is resolved.

    Map with no errors

    In this section, you reconfigured hydrant service lines to allow devices to connect at any vertex, instead of only at endpoints. This resolved a midspan connectivity error (error 13). Setting the edge connectivity policy on a line is yet another way the utility network allows you to define rules, specific to your drawing standards and data model.

In this tutorial, you learned how to change utility network configurations to manage connectivity errors. You added rules, deleted rules, assigned a terminal configuration, removed a terminal configuration, and set edge connectivity. You also learned about some of the downstream impacts that configuration changes can have. Before making configuration changes, investigate the impacts of the change on user workflows, ensure that the change will correct the desired errors, and ensure that it will not result in additional errors.

To learn more about utility network topology errors, see the following resources:

You can find more tutorials in the tutorial gallery.