Skip To Content

Junction Source Properties

Summary

The properties below are returned by the junctionSources 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 junction source asset groups.

Object
assetTypeFieldName
(Read Only)

The asset type field name for the junction source.

String
objectClassID
(Read Only)

The object class ID for the junction source.

Integer
shapeType
(Read Only)

The shape type of the junction source.

String
sourceID
(Read Only)

The source ID for the junction source.

Integer
sourceName
(Read Only)

The name of the junction source.

String
supportedProperties
(Read Only)

The supported properties of the junction source.

String
usesGeometry
(Read Only)

Whether the junction source uses geometry or not.

Boolean
utilityNetworkFeatureClassUsageType
(Read Only)

The feature class usage type for the junction source.

String

Code sample

Junction source properties example (stand-alone script)

This stand-alone Python script is a report of the junctionSources properties.

'''****************************************************************************
Name:        DescribeUN_JunctionSourceProperties.py
Description: This script reports the junction 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))

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

        # Asset Group Properties
        for ag in jSource.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 Terminal Configuration Id: {0}".format(at.terminalConfigurationId))
                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))