Skip To Content

Edge Source Properties

Summary

The properties below are returned by the edgeSources object when using Describe on a utility network.

Properties

PropertyExplanationData Type
assetGroups
(Read Only)

The assetGroups object. This object can be used to retrieve properties of the edge source asset groups.

Object
assetTypeFieldName
(Read Only)

The asset type field name for the edge source.

String
objectClassID
(Read Only)

The object class ID for the edge source.

Integer
shapeType
(Read Only)

The shape type of the edge source.

String
sourceID
(Read Only)

The source ID for the edge source.

Integer
sourceName
(Read Only)

The name of the edge source.

String
supportedProperties
(Read Only)

The name of the edge source.

String
usesGeometry
(Read Only)

Whether the edge source uses geometry or not.

Boolean
utilityNetworkFeatureClassUsageType
(Read Only)

The feature class usage type for the edge source.

String

Code sample

edgeSource properties example (stand-alone script)

This stand-alone Python script is a report of the edgeSources properties of a utility network.

'''****************************************************************************
Name:        DescribeUN_EdgeSourceProperties.py
Description: This script reports the edge source properties of a utility network
Created by:  Esri
****************************************************************************'''

# Import required modules
import arcpy

# Describe functions on a Utility Network
UN = "C:\\Projects\\MyProject\\unowner.sde\\Naperville.UNOWNER.Naperville\\Naperville.UNOWNER.Naperville" 
d = arcpy.Describe(UN)

# Domain Network properties
domnets = d.domainNetworks
for dom in domnets:
    print("*** - Domain Network properties - ***")
    print("Domain Network Creation Time: {0}".format(dom.creationTime))
    print("Domain Network Release Number: {0}".format(dom.releaseNumber))
    print("Domain Network is Structure Network: {0}".format(dom.isStructureNetwork))
    print("Domain Network ID: {0}".format(dom.domainNetworkId))
    print("Domain Network Name: {0}".format(dom.domainNetworkName))
    print("Domain Network Alias Name: {0}".format(dom.domainNetworkAliasName))
    print("Domain Network Subnetwork Table Name: {0}".format(dom.subnetworkTableName))
    print("Domain Network Subnetwork Label Field Name: {0}".format(dom.subnetworkLabelFieldName))
    print("Domain Network Tier Definition: {0}".format(dom.tierDefinition))
    print("Domain Network Subnetwork Controller Type: {0} \n".format(dom.subnetworkControllerType))

    # Edge Source Properties
    for edgeSource in dom.edgeSources:
        print(" -- Edge Source Properties -- ")
        print("Edge Source Id: {0}".format(edgeSource.sourceId))
        print("Object Class ID: {0}".format(edgeSource.objectClassId))
        print("Edge Source Name: {0}".format(edgeSource.sourceName))
        print("Uses Geometry: {0}".format(edgeSource.usesGeometry))
        print("Shape Type: {0} \n".format(edgeSource.shapeType))
        print("Feature Class Usage: {0}".format(edgeSource.utilityNetworkFeatureClassUsageType))
        print("Asset Type Field Name: {0}".format(edgeSource.assetTypeFieldName))
        print("Supported Properties: {0} \n".format(edgeSource.supportedProperties))

        # Asset Group Properties
        for ag in edgeSource.assetGroups:
            print(" - Asset Group Properties - ")
            print("Asset Group Code: {0}".format(ag.assetGroupCode))
            print("Asset Group Name: {0} \n".format(ag.assetGroupName))

            # Asset Type Properties
            for at in ag.assetTypes:
                print(" - Asset Type Properties - ")
                print("Asset Type Code: {0}".format(at.assetTypeCode))
                print("Asset Type Name: {0}".format(at.assetTypeName))
                print("Asset Type Connectivity Policy: {0}".format(at.connectivityPolicy))
                print("Asset Type Containment View Scale: {0}".format(at.containmentViewScale))
                print("Asset Type Association Delete Type: {0}".format(at.associationDeleteType))
                print("Asset Type Association Role Type: {0}".format(at.associationRoleType))
                print("Asset Type Categories: {0} \n".format(at.categories))