Associations model relationships between features that are not geometrically coincident. This allows modeling connectivity between points that are not coincident, the structural support of assets, and features encased within other features.
The three types of associations are as follows:
Each type of association has its own type of network rule that can be created to ensure data quality by restricting the types of features that can be associated. These rules are enforced when creating associations using the Modify Associations pane and also when importing. If a rule does not exist to support an association, the Import Associations tool will fail.
Work with associations
Associations are created, modified, and deleted using the Modify Associations pane. This is where association rules are checked to ensure the selected features can connect, attach, or be contained. Network rules can be created to allow associations to be established between features as long as utility network feature restrictions are honored.
All features in a utility network have an attribute called Association status. It indicates the type of association a feature participates in, the role the association plays in a relationship, and any properties that are set, for example, visible content. Analytic events use this attribute to determine the relationships between features.
See Association status attribute for more details.
Associations do not have attributes or a Shape field, and they do not support relationship classes or join tables. Associations are internally managed in a system table. Although associations do not have a Shape field, you can view associations using the following workflows:
- Use the Modify Associations pane to interactively view associated features. For example, using the Containment tab and selecting a container feature in a map, you can see features that are content. Connectivity associations will also show terminals for associated features if they exist.
- Create a network diagram to visualize the associations in a diagram view.
- Use the View Associations button to view connectivity or structural attachment associations.
- Use the View Content drop-down to show or hide containment association content. This works to enable or disable display filters configured using the association status attribute to toggle content feature display based on their visibility property.
See Control association visibility for more information about viewing associations.
Structural attachment and containment associations require that an appropriate association role be assigned to the feature classes representing the structure or container features. The Set Association Role tool is used to designate the specific association role type along with additional properties. The Role Type of Structure or Container is assigned to feature classes using specific asset groups and asset types.
- Container—features can be a container in a containment association
- Structure—features can be a structure in a structural attachment association
Association roles are only applicable to the Assembly feature class and all of the feature classes in the structure network. A specific combination of asset groups and asset types for a feature class can participate in only one association role. However, within an asset group, you may have a mix of association roles assigned at the asset type.
To determine if an assembly or structure network feature class has an association role set, go to the Network Properties tab in the utility network layer properties. From here, expand the appropriate domain or structure network and inspect the Association Role column for specific feature class asset groups and asset types.
Review the following section with additional properties that are set for association roles.
Deletion Semantics, View Scale, and Split Policy
There are additional properties that can be defined with the Set Association Role tool. The properties are applicable to specific associations roles, and will vary depending on the Role Type specified. See the list of association properties and if they apply to a Container or Structure.
- View Scale—Container only
- Deletion Semantics—Container and Structure
- Container Split Policy—Container only (structure line feature class)
The View Scale property is specific to the container role. It determines what map scale to set when you enter containment mode, for example, 1:100.
Deletion Semantics apply to both the container and structure association roles. They determine how child features are handled when the parent feature is deleted. For example, if a pole structure is deleted, the deletion semantics control how items that are attached are impacted. In regards to containment, when the container is deleted the deletion semantics control how content features are impacted.
The following are the three types of deletion semantics:
- Restricted—If content exists an error is returned when attempting to delete the container. The content must be removed before deleting the container.
- Cascade—When a container is deleted, its content is also deleted.
- Set to none—When a container is deleted, its content is not deleted; instead, it is removed from the containment association.
The Container Split Policy property is specific to the container association role and only set for Structure Line feature classes. It is used to determine how content is treated when a container feature is split. The options for the container split policy are Do Not Split Content (default) or Split Content. If using a split policy of Do Not Split Content, a new container feature is created from the split operation and content is not split. The content feature is maintained as content to both parent containers. With the policy of Split Content, content features will also be split and properly associated with the new container features created during the split operation. See Split container and content features for more details.
To set or modify association role assignments, see Set or modify an association role assignment.
Junction-junction connectivity associations
Junction-junction connectivity associations allow you to model the connectivity between two point features that are not coincident. A connectivity association is used by two points and supports connectivity using terminals for device features. Junction-junction connectivity rules manage this type of association.
Two points that are not coincident can be offset from each other by either x and y, or z. These point features can maintain connectivity using connectivity associations. For example, a transformer and a fuse can be side by side and connected. The fuse can also be located above a transformer and be connected. Some types of point features can be located in the same x, y, and z location. Points that cannot be coincident receive error features when the network topology is validated or enabled. To learn more, see Error feature management.
Device features with terminal configurations allow multiple connectivity associations as long as they are using unique terminals.
Structural attachment associations
Structural attachment associations allow you to model the relationship between structures that support equipment and their associated assets that are attached. For example, a pole can serve as the structure with a transformer as the attachment. A structure can have many structural attachments (for example, a pole with a transformer, ground, riser, and arrester attached to it). A structural attachment feature can only be attached to one structure.
A structural attachment is used to attach a point to another point. This type of association is not terminal aware.
- A point feature class must have the structure association role assigned to allow its features to be structures. This type of role allows other point features to be attached to it. Only point feature classes participating in a structure network can be assigned the structure association role.
Structural attachments are managed by structural attachment rules. Network rules are created to allow structural attachment associations between structure junction feature class as the structure and device, junction, assembly, and structure junction feature classes as the attachment. These rules are defined against network feature classes using specific asset group and asset type classification.
Point features can be directly attached to other point features (for example, a transformer attached to a pole). Line features, however, must have an intermediate point feature attached to either an endpoint or a midspan vertex. As shown in the following image, a connection point junction is used
As shown in the following image, a connection point junction is used to attach the electrical line to the pole. It is also used to connect the line to the transformer, allowing electricity to flow. Electricity can flow through the line to the transformer because of the connectivity association from the connection point on the line to the transformer. While electricity does not flow through features such as poles, the trace operation can be configured to include structures for work flows such as pole reports.
Containment allows for a dense collection of features to be represented by a single feature on the map. This improves visibility on a map during editing and promotes comprehensive maps. Devices, wires, and conductors can be placed inside objects such as substations, switch gears, trenches, and ducts. The feature containing other features is called a container, and the features being contained are called content.
There are three types of container features—polygon, linear, and point—described as follows:
- A polygon container defines a general area containing many features. An electrical substation is an example of a polygon container.
- A linear container represents a container that spans some length of space. An example of a linear container is a duct bank containing multiple underground lines.
- A point container contains several objects within a compact area, for example, a manhole or a cabinet.
For a feature to be set as a container, its asset group and asset type must have the container association role assigned. Only feature classes in the structure network or in the Assembly feature class of a domain network can be assigned the containment role to serve as containers.
Containment associations can be created using the Modify Associations pane. This is an interactive pane that allows you to select existing features in the map to establish containment associations between containers and content features. You can also edited in containment mode using the Enter Containment command. Containment Edit Mode requires that you first select a container feature in the map; any new features created are automatically associated with the container as content (provided there is a rule to support the association).
A utility network supports nested containment as well as a one-to-many relationship between content and containers. In nested containment, a container feature can contain another container feature, which in turn contains content. For example, a substation can contain a junction box, and the junction box contains electrical devices. In a one-to-many relationship, a single content feature is contained in more than one container, for example, a single line spanning many duct banks.
Containment associations improve visibility on a map and promote comprehensible production maps to share with others. An example of a containment association is three transformers contained in a transformer bank. The bank is attached to the pole, while the transformers are connected to the lines.
Similar to structural attachment associations, resources cannot flow through containers. In other words, a trace configured to traverse electrical features would trace along the span of overhead wire. The trace can be configured without containers, so the electrical line and the transformers in the bank are returned, but the transformer bank is not. This concept of associations are shown in the following image:
Display content features
The visibility of containment association content features is highly dependent on how the map is configured to use display filters and definition queries. The visible status value for the containment association content features can be used in a display filter or a definition query to show or hide the content features on the map. Without display filters or definition queries set up in the map using the AssociationStatus field values, all containment association content features are visible (regardless of the visible status for the features).
By default, when content is created or assigned to a container, the visible status for that content feature is false. The visibility setting can be changed in the Modify Associations pane on the Containment tab. The visible status value that is set on all content features can be used to filter content features from displaying in the map view. A display filter can be set up on all network layers where the AssociationStatus attribute field is equal to values for Visible Content.
To temporarily access nonvisible content, the Display Content command can be used in conjunction with display filters, or a network diagram can be generated. After display filters are properly configured on the AssociationStatus field for visibility status, the Display Content command can be used to switch display filters set up for all utility network layers in the map view as follows:
- Show—Disables display filters for all utility network layers to show all content
- Hide—Enables display filters for all utility network layers to hide nonvisible content
To learn more about the visibility of content features, see Control association visibility.
Split container and content features
Additional logic is used to maintain the relationship between container and content features when splitting line features that are part of a containment association. When a line feature that is a container is split, the system will default to not split any of the content features. Containment associations are reestablished following the split operation between the container features and content. Similarly splitting content features will reestablish containment associations between the content features and container.
An additional split policy can be set for features belonging to the structure line feature class to handle how content is treated when the parent container is split. This policy is configured using the Set Association Role tool when the containment association role type is set for network features.
When splitting container features that have the split policy set to true, a geographic analysis is performed to identify an analogous point on each of the content features where they will be split. Following the split, appropriate containment association records will be generated between container and content features using a system algorithm.
Splitting container features that have the split policy set to false, will not split content features but will still reestablish containment associations between the new content features and content.
In all cases, if the user is splitting content, the container is never split. Appropriate container association records are regenerated following the split operation.