GRR Relations and Modeling UN Associations

The Utility Network (UN) has three types of associations: containment, connectivity, and structural attachment. Associations allow you to model connectivity, containment, and structural attachment between nonspatial objects and noncoincident network features.

In the component model, rather than “one-to-one-to-one” mappings of containment, connectivity, and attachment associations from the UN, the GRR has a structure relationship with both containment and attachment associations.

The connectivity model maps UN connectivity for geometric coincidence and “junction-to-junction” associations.

NOTE: Each component described in the Components section of the GRR can be located by its GUID, which corresponds to its Global ID in ArcGIS Pro.


Modeling Containment and Attachment Associations

In the Components section of the GRR file, BreakerBankWithTerminals and its devices ("id": "2802150c-2ed6-4f2a-b41e-781290eabf22") appear as such:

{        ...
      },
      "id": "2802150c-2ed6-4f2a-b41e-781290eabf22", // Global ID
      "deviceIds": [
        "b6c4989f-c136-3f69-03b3-3f7199fd5b12",
        "93b8c452-296a-0ee5-9ed2-c5bdce7b83d6",
        "c73b7f5b-4046-8cf7-9cb1-83d9228a1420"
      ],
      ...      
    },


A sample of the child units and their reference back to the “bankId” appears as such:

{
      "componentType": "BreakerUnit",
      "id": "b6c4989f-c136-3f69-03b3-3f7199fd5b12",
      "esriId": 0,
      "bankId": "2802150c-2ed6-4f2a-b41e-781290eabf22",
      ...
    },

NOTE: All child devices of BreakerBankWithTerminals, i.e., all its breakers (and any other BankWithTerminals component), are described in the Components section.


Containment for BreakerBankWithTerminalsIn is shown in the StructureRelationships section of the GRR. In this example, it is part of the SurfacePolygonStructure:

{
      "relationshipType": "Container",
      "parentId": "c42aadbb-f741-4f24-905c-82495bcc19cc",
      "childId": "2802150c-2ed6-4f2a-b41e-781290eabf22"
    },


Containment associations are split between component properties and StructureRelationships, while the attachment type of association is presented only in the StructureRelationships part of the GRR.

{
      "relationshipType": "Attachment",
      "parentId": "a3e993cd-b751-4674-a0f7-f78fcb56f777",
      "childId": "e4c1c8ba-7673-4650-a6db-554f75ebe3b3"
    },


In this example for SurfaceStructure, it has one SingleTerminal attached:

{
      "componentType": "SurfaceStructure",
      "id": "a3e993cd-b751-4674-a0f7-f78fcb56f777",
      "esriId": 5,
      "specId": "9a9ddea3-d6b1-4d00-a88d-e87e9ba93709",
      "geometry": {
        "type": "Point",
        "coordinates": [
          406879.15390000027,
          5009354.235200001
        ]
      },
      "workflowState": "Existing",
      "properties": {
        "AssetGroup": 809,
        "AssetType": 812,
        "SourceLayerName": "StructureJunction"
      },
      "lifecycleStatusType": "Unknown",
      "partialPushId": "00000000-0000-0000-0000-000000000000"
    },
...
"e4c1c8ba-7673-4650-a6db-554f75ebe3b3": [
      {
        "terminal": {
          "terminalId": 1,
          "terminalName": "Single Terminal",
          "isUpstreamTerminal": false
        },
        "connectedComponentIds": [
          "9e8c1faa-838d-467a-91b9-401bf57bcdd0",
          "88de146c-b49e-4382-b360-e744f0bd95e7"
        ]
      }
    ],


Modeling Connectivity Associations

For the same BreakerBankWithTerminals, in Network WithTerminalConnection, its connectivity is modeled for geometric coincidence.

"2802150c-2ed6-4f2a-b41e-781290eabf22": [
      {
        "terminal": {
          "terminalId": 8,
          "terminalName": "Source",
          "isUpstreamTerminal": true
        },
        "connectedComponentIds": []
      },
      {
        "terminal": {
          "terminalId": 9,
          "terminalName": "Load",
          "isUpstreamTerminal": false
        },
        "connectedComponentIds": [
          "88de146c-b49e-4382-b360-e744f0bd95e7"
        ]
      },
      {
        "connectedComponentIds": [
          "e64e1a01-2304-e3c0-35b3-f3cb76bcd1d6"
        ]
      }
    ],
...
"88de146c-b49e-4382-b360-e744f0bd95e7": [
      {
        "connectedComponentIds": [
          "2802150c-2ed6-4f2a-b41e-781290eabf22",
          "e4c1c8ba-7673-4650-a6db-554f75ebe3b3"
        ]
      }
    ],


Given that junction-to-junction associations are strongly discouraged in the ArcFM UN data model, they are all forcefully relocated to the networkAssociationConnection collection. It’s always best when that section of the GRR is empty.

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

Was this helpful?