Network Attributes
Summary
Provides information about network attributes that are defined for a given network dataset.
Discussion
For a given network attribute, edgeDirectionX, sourceNameX, evaluatorTypeX, and dataX are dynamic properties where X indicates a particular evaluator. The possible range of values for X depends on the evaluatorCount property. For example, if a network attribute named DriveTime has two evaluators as indicated by the evaluatorCount property, the DriveTime attribute will support edgeDirection0, sourceName0, evaluatorType0, data0, edgeDirection1, sourceName1, evaluatorType1, and data1 properties.
Similarly, for a given network attribute, parameterNameX, parameterTypeX, and parameterDefaultValueX are dynamic properties where X indicates a particular parameter. The possible range of values for X depends on the parameterCount property. For example, if a network attribute named DriveTime has two parameters as indicated by the parameterCount property, the DriveTime attribute will support parameterName0, parameterType0, parameterDefaultValue0, parameterName1, parameterType1, and parameterDefaultValue1 properties.
Properties
| Name | Explanation | Data type |
|---|---|---|
|
dataType (Read only) |
The network attribute data type.
|
String |
|
dataX (Read only) |
The value of the network attribute assigned to a network source using the evaluator. In the case of a script evaluator, the entire expression is returned. The data type of the returned value depends on the data type and the evaluator type associated with the network attribute. |
Variant |
|
defaultEdgeData (Read only) |
The value for the network attribute that is associated by default with all the edge network sources in the network dataset. In the case of a script evaluator, the entire expression is returned. The data type of the returned value depends on the data type and the default edge evaluator type associated with the network attribute. |
Variant |
|
defaultEdgeEvaluatorType (Read only) |
The default edge evaluator type used by the network dataset.
|
String |
|
defaultJunctionData (Read only) |
The value for the network attribute that is associated by default with all the junction network sources in the network dataset. In case of a script evaluator, the entire expression is returned. The data type of the returned value depends on the data type and the default junction evaluator type associated with the network attribute. |
Variant |
|
defaultJunctionEvaluatorType (Read only) |
The default junction evaluator type used by the network dataset.
|
String |
|
defaultTurnData (Read only) |
The value for the network attribute that is associated by default with all the turn network sources in the network dataset. In the case of a script evaluator, the entire expression is returned. The property is available only if the network dataset supports turns that can be determined using the |
Variant |
|
defaultTurnEvaluatorType (Read only) |
The network dataset default turn evaluator type. The property is available only if the network dataset supports turns that can be determined using the
|
String |
|
edgeDirectionX (Read only) |
The direction for the edge network sources along which the evaluator assigns the value for the network attribute. There is no direction associated with junction and turn network sources.
|
String |
|
evaluatorCount (Read only) |
The total number of evaluators used to derive values from the given network source for this network attribute. |
Integer |
|
evaluatorTypeX (Read only) |
The type of evaluator.
|
String |
|
name (Read only) |
The name of the network attribute. |
String |
|
parameterCount (Read only) |
The total number of attribute parameters defined for the network attribute. |
Integer |
|
parameterDefaultValueX (Read only) |
The default value for the parameter.
|
Variant |
|
parameterNameX (Read only) |
The name of the parameter.
|
String |
|
parameterTypeX (Read only) |
The data type for the parameter.
|
String |
|
parameterUsageTypeX (Read only) |
The usage type for the parameter.
|
String |
|
sourceNameX (Read only) |
The name of the network source for which the evaluator calculates the value of a given network attribute. |
String |
|
trafficSupportType (Read only) |
The type of traffic data currently configured for the network attribute.
|
String |
|
units (Read only) |
The units for the network attribute. Units of a cost attribute are either distance or time units, for example, centimeters, meters, miles, minutes, or seconds. Descriptors, hierarchies, and restrictions have unknown units. |
String |
|
usageType (Read only) |
The network attribute usage type.
|
String |
|
useByDefault (Read only) |
Indicates if the network attribute is used by default on a newly created network analysis layer. Only one cost attribute in the network dataset can be set to be used by default. Descriptor attributes cannot be used by default. |
Boolean |
Code sample
Display the network attribute information for a network dataset.
# Name: NDSAttributeProperties_ex01.py
# Description: Print the information about network attributes defined for the
# network dataset
import arcpy
# Set workspace
arcpy.env.workspace = "C:/Data/Paris.gdb/Transportation"
# Create a Describe object from the network dataset
desc = arcpy.Describe("ParisMultimodal_ND")
# Get a list of network attributes
attributes = desc.attributes
#print information for each attribute
for attribute in attributes:
print("----------------------------------\n")
print("Name: ", attribute.name)
print("Units: ", attribute.units)
print("Usage Type: ", attribute.usageType)
print("Data Type: ", attribute.dataType)
print("Use By Default: ", str(attribute.useByDefault))
#Information about default evaluators
print("Default edge evaluator type: ", attribute.defaultEdgeEvaluatorType)
print("Default edge evaluator data: ", str(attribute.defaultEdgeData))
print("Default junction evaluator type: ",attribute.defaultJunctionEvaluatorType)
print("Default junction evaluator data: ",str(attribute.defaultJunctionData))
#Turn specific information is supported only if network dataset supports
#turns
if desc.supportsTurns:
print("Default turn evaluator type: ",attribute.defaultTurnEvaluatorType)
print("Default turn evaluator data: ", str(attribute.defaultTurnData))
#Describe all other evaluators
count = attribute.evaluatorCount
print("Evaluator count: ", count)
for i in range(0, count):
text = "Evaluator %d" % i
print(text, " ---")
edgeDir = getattr(attribute,"edgeDirection" + str(i))
print("Edge direction: ", edgeDir)
srcName = getattr(attribute,"sourceName" + str(i))
print("Source Name: ", srcName)
evaluatortype = getattr(attribute,"evaluatorType" + str(i))
evaluatordata = getattr(attribute,"data" + str(i))
print("Evaluator Type: ", evaluatortype)
print("Evaluator Data: ", evaluatordata)
#Describe attribute parameters
print("Parameter Information........")
paramcount = attribute.parameterCount
if paramcount == 0:
print("No Parameters defined.")
else:
print("Parameter Count: ", paramcount)
for i in range (0, paramcount):
paramName = getattr(attribute, "parameterName" + str(i))
paramType = getattr(attribute, "parameterType" + str(i))
paramDefaultValue = getattr(attribute, "parameterDefaultValue" + str(i))
print("Parameter Name: ", paramName)
print("Parameter Type: ", paramType)
print("Parameter Default Value: ", paramDefaultValue)