Select Features By Specifications Difference (Production Mapping)
Summary
Selects features from feature classes or feature layers with representation rule IDs or calculated field values that do not match a selected visual specification.
Visual specifications use relational queries to apply symbology to many layers and calculate field values. This allows you to use sets of features, selected by attributes, to define representation rules and label expressions. Visual specifications provide a single production workflow to create and maintain symbology and text.
Usage
You can add tables, table views, feature classes, or feature layers to the Input Features list. Each entry must have representation rule IDs or calculated field values defined.
You must specify a workspace that contains a VST_Specification table in the Visual Specification Workspace parameter. The tool uses the VST_Specification table to process the features in the Input Features list.
-
Once you have set Visual Specification Workspace, the Visual Specifications list will populate with visual specifications. You use these visual specifications to check for specifications differences in the Input Features list.
The tool will select features or rows from items in the Input Features list. Use Select Option to control the selection.
Syntax
Parameter | Explanation | Data Type |
in_layers_or_views [in_layers_or_views,...] |
The list of feature layers, feature classes, tables, or table views to search for specifications differences. | Table View |
vs_workspace |
The location of the workspace that contains the visual specifications table. The VST_Specification table can be stored in a personal, file, or enterprise geodatabase. | Workspace |
specifications [specifications,...] |
The visual specifications you want to apply to the selected feature layers. | String |
select_option | Specifies the type of visual specifications difference to use as a selection criteria.
| Long |
Code Sample
The following stand-alone script demonstrates how to use the SelectFeaturesBySpecificationsDifference tool.
# Name: SelectFeaturesBySpecificationsDifference.py
# Description: Selects features having representation rules IDs and/or calculated field values
# that do not match a selected specification
# Requirements: Esri Production Mapping
import arcpy
# check out a production mapping extension license
arcpy.CheckOutExtension("Foundation")
# set gp environment
arcpy.env.workspace="c:/data"
# local variables used by tool
roadL = "Austin.gdb/TopographicMap/RoadL"
roadLayer="roadLayer"
productLibrary = "ProductLibrary.gdb"
visualspec="'TopoMap 1:24,000 :: TopoMap 1:24,000 Specification'"
if arcpy.Exists(roadLayer)==False:
arcpy.MakeFeatureLayer_management(roadL,roadLayer)
# exec Select Features by Specification Override
arcpy.SelectFeaturesBySpecificationsDifference_production(roadLayer, productLibrary, visualspec)
# Describe the feature layer to find selected features
desc=arcpy.Describe(roadLayer)
selectedFids = desc.FIDSet
if len(selectedFids) > 0:
print "Tool selected " + str(len(selectedFids)) + " features"