Barriers

Barriers are used in traces, export subnetwork operations, and update subnetwork operations to mark the locations to stop tracing, exporting, or updating, respectively.

There are two types of barriers in a utility network:

  • Feature barriers—Created on a map using the Trace Locations pane or the Add Trace Locations tool
  • Dynamic barriers—Network features that meet criteria defined by traversability barriers and filters

Feature barriers are created by specifying the network features to serve as barriers when configuring a trace. Dynamic barriers allow you to use information about your network features to create barriers. For example, you can use a network attribute such as status to stop a trace at open switches.

All subnetworks in a tier can be configured to Include Barrier Features when performing a trace, or executing update or export subnetwork. With this option enabled, the results of a trace will include barrier features; exported information will include barriers; and during a subnetwork update operation, the barrier features will be updated. This is configured as part of the subnetwork trace configuration section of the subnetwork definition for a tier. In the Trace tool, this can be manually specified in the Include Barrier Features parameter.

Note:

The Include Barrier Features configuration option does not apply to features with terminals.

Feature barriers

Feature barriers are optional during tracing events. To include them, you use a tool to set features in your network as barriers for a trace.

Any network feature can be used as a barrier. When working with spatial features, a coincident point is created on the map to denote the location of the barrier for the trace. Records from nonspatial edge and junction object tables can be selected and added to the Trace Locations pane to serve as barriers:

  • For points, devices with terminals can specify a specific terminal to set as the barrier.
  • For lines, a barrier can be placed anywhere along the line feature.
  • For polygons, a point is placed at the centroid to mark the barrier.
  • For junction objects, features with terminals can specify a specific terminal to set as the barrier.
  • For edge objects, a barrier is placed on the record to specify the location of the barrier.

The Result Types option Aggregated Geometry can be used to return partial feature results when performing trace operations. When a barrier is placed along an edge, trace results will stop at the barrier and return partial feature geometry for the edge feature.

Barrier features are created and removed using the Barriers tab in the Trace Locations pane. With this pane, you can create one or more barriers at a time. When a barrier is created, a feature class named UN_Temp_Barriers is created in the project's home geodatabase. Successive barriers are appended to this class. To remove all barriers, click the Clear All button Clear in the Trace Locations pane.

Feature barriers can be treated like filter barriers in subnetwork-based traces where they would restrict the traversal from the trace starting points to the subnetwork controllers. This allows you to first discover the subnetwork controllers for the subnetwork from the starting point, and then apply the barriers on the second traversal of the network features. This is useful for subnetwork-based traces where feature barriers are added on network features between the starting points and subnetwork controllers. To enable this behavior, use the Filter Barrier option on the Barriers tab of the Trace Locations pane or on the Add Trace Locations tool.

Note:

Using the Filter Barrier option with feature barriers requires ArcGIS Enterprise 10.8.1 or later.

Learn more about how to set starting points and barriers using the Trace Locations pane

Barriers can also be set using the Add Trace Locations tool. This tool allows selected spatial network features or trace locations to be output to a feature class for use in a script or model. This can be useful when loading the output of a trace as an input for a subsequent trace operation via a model.

Dynamic barriers

In addition to feature barriers, utility networks can dynamically set barriers on features based on network attributes, network categories, and function conditions. Dynamic barriers are always used during an update or export subnetwork operation. During a trace operation, dynamic barriers can be modified.

There are two types of dynamic barriers: traversability barriers and filters. They are used in the following operations:

  • Subnetwork update—A subnetwork is updated starting at the subnetwork controller. During an update, a subnetwork trace also occurs. Any traversability barrier feature the trace encounters will prevent the trace from continuing. Therefore, only features positioned before the traversability barrier will be updated.
  • Export Subnetwork—Information about a subnetwork is exported to a JSON file. Part of that information includes connectivity (what is connected to what). As with a subnetwork update, a subnetwork trace is run at the same time as the export operation, starting at the subnetwork controller. Any traversability barrier feature the trace encounters will prevent the trace from continuing, and only information about features up to that point will be exported.
  • Trace—During a trace using the Trace tool, both types of barriers are considered. When both traversability barriers and filters are present during a trace, traversability barriers are honored first, and then filter barriers.

Additional configurations allow you to choose whether the barrier features are included in certain operations: trace results and calculations, updated with subnetwork information, or exported with subnetwork information. During an export, for example, the JSON file could optionally include information about the barrier feature encountered.

Traversability barriers

Traversability barriers define the extent of subnetworks.

Traversability barriers can be established for all subnetworks in a tier by the administrator using the Set Subnetwork Definition tool. At this level, traversability barriers represent the standard conditions for defining subnetwork boundaries in a tier. The Update Subnetwork, Export Subnetwork, and Trace tools all use established traversability barriers. However, only the Trace tool allows you to modify these types of barriers. Traversability barriers can be applied to junctions, edges, or both.

When you select a tier with preset traversability barriers in the Trace tool, the Traversability parameter is updated with that information. The settings in this parameter can be adjusted as needed. At this level, traversability barriers model an alternative representation of a subnetwork.

There are two types of traversability barriers: condition barriers and function barriers.

Condition barriers

A condition barrier is an expression based on network attributes or categories; for example, stop at all closed devices in a water network. When a feature meets the condition set in the expression, the trace, update subnetwork, or export subnetwork operation does not continue to the next feature.

More than one condition barrier can be implemented using the Combine Using parameter (AND or OR). Expressions based on network attributes can be compared with other network attributes; for example, the Current Pressure attribute value of stop a trace does not match the Normal Pressure value.

Learn more about using multiple conditional expressions

Function barriers

Function barriers define the boundary of subnetworks based on whether a function condition has been satisfied. Function barriers can be used for such things as distinguishing a subnetwork in a pipe network based on a threshold pressure value (for example, 50). In this scenario, each feature considered during a trace, update, or export operation, with the Pressure attribute present, will contribute to the value of the total pressure calculated for the subnetwork (for example, 5 + 10 + 20 + 5 + 10). Once that value reaches 50, all features past that point are not traced, updated, or exported.

Networks often have paths that fork into multiple paths. You may at times want to consider all forked paths together (global), and at other times as separate from one another (local). Consider an example where you want to trace a set distance along a pipe network. In this scenario, if the starting point is placed at a fork with three paths, and the trace is set to trace 3 miles down the pipes using global values, the trace will travel 1 mile down each of the three forked paths. By enabling the Use Local Values option, the trace will travel 3 miles down each of the three forked paths.

More than one barrier type can be used at once. Combining barriers allows you to control a group of diverse, precise types of barriers. Suppose you want to run a trace and have it stop at any open device, but you don't want the trace to travel more than 500 meters beyond the starting point. To accomplish this, you'd use a barrier condition to control the type of open device that stops a trace, and you'd use a function barrier to calculate the length of the line you travel and set a limit of 500.

Function barriers support apportionable situations and therefore return a portion of the function value calculated for a line that has a barrier located midspan. For example, in a pipe network, you want a trace to stop when it reaches 500 meters. The 500th meter may not be at the end of a pipe; it may be midspan along a pipe. In this case, the trace stops midspan, but the entire pipe is considered a barrier. So, the features returned in the results of your trace will add up to less than 500 meters. Parameters on the Trace and Set Subnetwork Definition tools allow you to control whether a barrier is included in the results. In the previous example, if the barrier pipe was included, the total length of the assets in the results of the trace would exceed 500 meters. In scenarios such as this, the Result Types option in the Trace tool, Aggregated Geometry may be useful to return partial features for more accurate results. To learn more, see Configure a trace.

Note:

When executing a trace using a function barrier with the Use Local Values option selected, only one starting point is allowed.

Filters

Filters are defined using the Trace tool and allow you to establish dynamic barriers for a trace operation. Filters use a network attribute, a network category, or a combination of both to determine what features to consider as barriers; for example, stop at closed protective devices. When a trace reaches a feature meeting the condition of the filter, it stops there and does not travel beyond it.

Note:
If traversability barrier features are present, they will be considered before filters.

You can control the types of features that can be barriers with the Apply Filter To parameter on the Trace tool. This is applicable in situations in which you want to consider attribute values for only certain types of features; for example, only consider pressure for pipes, or stop a trace when a pressure threshold is reached. The Nearest Categories and Nearest Asset Groups/Types parameters can further refine the specific types of assets that can act as barriers or be considered during function calculations; for example, only consider the pressure for pipes that are above 10 PSI.

There are two types of filters: filter barriers and filter function barriers. Both types of barriers can be used in the same trace.

Filter barriers

A filter barrier uses an expression you define to determine what features are barriers in a subnetwork. Filter barriers are like condition barriers, and when both are present, condition barriers are considered first.

An isolation trace requires that a filter barrier be defined in the trace configuration to help pinpoint which features are isolating the starting point or points. This uses a specific network attribute or network category to stop the trace. For example, a filter barrier can be used with Category = Isolating. In this example, Isolating is a user-defined network category that is assigned to specific asset groups and asset types that are considered isolating. Additional filter barriers can be used to return valves with specific properties. For example, you can choose to return only accessible and operable valves: ones that are not paved over or rusted shut.

More than one filter barrier can be implemented using the Combine Using parameter (AND or OR). Filters with expressions based on network attributes can be compared with other network attributes; for example, stop a trace where the Phase Current attribute value does not include the Phases Built attribute value. Another example is during a structural trace: stop at structures with an installation date later than 1990 owned by the municipality.

Learn more about using multiple conditional expressions

Filter function barriers

Filter function barriers use a condition to determine when a trace should stop. When a trace meets this condition, it stops. Filter function barriers are like function barriers in the Traversability section on the Trace tool. Note that when both are present, the function barrier is considered before filters.

Filter function barriers support apportionable situations; for example, in a pipe network, you want a trace to stop when it reaches 500 meters. The 500th meter may not be at the end of a pipe; it may be midspan along a pipe. In this case, the trace stops midspan, but the entire pipe is considered a barrier. So, the features returned in the results of your trace will add up to less than 500 meters. Parameters on the Trace and Set Subnetwork Definition tools allow you to control whether a barrier is included in the results. In the previous example, if the barrier pipe was included, the total length of the assets in the results of the trace would exceed 500 meters.

Note:

When executing a trace using a filter function barrier with the Use Local Values option selected, only one starting point is allowed.