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—These can be created on a map using the Trace Locations pane or the Add Trace Locations tool, or by specifying a user-defined feature class or table to serve as a barrier.
  • Dynamic barriers—Network features that meet criteria defined by traversability barriers and filters

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

You can configure all subnetworks in a tier to include barrier features when performing a trace or executing update or export subnetwork. When the Include Barrier Features option is enabled, the results of a trace include barrier features; exported information includes barriers; and during a subnetwork update operation, the barrier features are updated. This is configured as part of the subnetwork trace configuration section of the subnetwork definition for a tier. In the Trace tool, use the Include Barrier Features parameter to accomplish the same thing.

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 the 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. You can select records from nonspatial edge and junction object tables and add them 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.

You can use the Aggregated Geometry option of the Result Types parameter to return partial feature results when performing trace operations. When a barrier is placed along an edge, trace results stop at the barrier and return partial feature geometry for the edge feature.

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

Barriers can also be specified in a user-defined feature class or created by using the Add Trace Locations tool. This tool creates an output feature class with the same schema as the UN_Temp_Barriers and allows selected spatial network features to be output to a user-defined feature class for use in a script or model.

When an existing user-defined feature class or table is used to specify barriers for the Trace tool, the following are requirements:

  • The schema of the user-defined feature class or table must contain a FEATUREGLOBALID field of type guid similar to that found in the UN_Temp_Barriers feature class and contain a value for it to be applied to the corresponding network feature as a barrier.
    • When this field is not populated, features without a corresponding value are not used to place a barrier. This option is helpful when you want to maintain granularity over which features are used as barriers.
  • The schema of the user-defined feature class or table must contain a PERCENTALONG field of type double to place a barrier along an edge feature or edge object.
    • The PERCENTALONG field must contain a value between 0.0 and 1.0 to indicate the location of the barrier along the edge.
    • If the PERCENTALONG field is not present or does not contain an appropriate value, it is assumed the barrier is to be placed on a junction and placement along an edge is ignored.
  • The schema of the user-defined feature class or table must contain a TERMINALID field of type long to place a barrier on a junction feature or junction object.
    • If the TERMINALID field is not present or does not contain an appropriate value, it is assumed the barrier is to be placed on an edge feature and placement on a junction is ignored.

You can treat feature barriers like filter barriers in subnetwork-based traces where they restrict the traversal from the trace starting points to the subnetwork controllers. This allows you to identify the subnetwork controllers for the subnetwork from the starting point before the barriers are applied on the second traversal of the network features. This is useful for subnetwork-based traces in which feature barriers are added to 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 use the Filter Barrier parameter of the Add Trace Locations tool.

Note:

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

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

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 prevents the trace from continuing, and only features positioned before the traversability barrier are updated.
  • Export Subnetwork—Information about a subnetwork is exported to a JSON file. Part of the 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 prevents the trace from continuing, and only information about features up to that point is exported.
  • Trace—During a trace using the Trace tool, both types of barriers are considered. When both traversability barriers and filter barriers are present during a trace, traversability barriers are before 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 can 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 option (define an AND or an OR condition). 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. For example, 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 can use a barrier condition to control the type of open device that stops a trace, and you can 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 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. The features returned in the results of the trace will add up to less than 500 meters. The Trace and Set Subnetwork Definition tool parameters 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, you can use the Aggregated Geometry option for the Result Types parameter of the Trace tool 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 which 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 and does not travel beyond it.

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

You can control the types of features that can be barriers with the Apply Filter To parameter of the Trace tool. This applies to 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. Use the Nearest Categories and Nearest Asset Groups/Types parameters to 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 similar to 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 option (define an AND or an OR condition). 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 stops. When a trace meets this condition, it stops. Filter function barriers are similar to function barriers in the Traversability section of the Trace tool. When both are present, function barriers are considered before filter function barriers.

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. The features returned in the results of the trace will add up to less than 500 meters. The Trace and Set Subnetwork Definition tool parameters 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.