Geoprocessing considerations for cartographic representations
Beginning with ArcGIS 9.2, geodatabase feature classes have the capability to store information, using a flexible and rule-based structure, about the way their features should be drawn. One feature class can support multiple representations, each of which defines a specific cartographic appearance of the same source features. Once a representation is added to a feature class, two representation fields appear in the feature class attribute table:
- The RuleID field stores a reference to the representation rule for each feature. The representation rules themselves are stored within the geodatabase system tables.
- The Override field stores feature-specific overrides to the representation rules. The Override field is BLOB field type.
Representation rules are used to generate display geometries and their symbology. Additional geometric effects, such as smoothing or offsetting, can be applied at drawing time such that the generated display geometries may differ from their source feature geometries. There may be times when it becomes necessary to make exceptions to these rules to resolve visual congestion or highlight special features. These exceptions, or overrides, can be made for individual feature representations during an edit session, or with geoprocessing tools from the Cartography toolbox.
Any point, line, or polygon feature class in a personal, file, or ArcSDE geodatabase can support representations. The geodatabase must be upgraded to ArcGIS 9.2 or higher prior to creating representations. The following data types cannot support representations: shapefiles, coverages, annotation feature classes, dimension feature classes, raster data, and tables.
Representations are part of the feature class schema, and geoprocessing tools make considerations for schema changes between input and output features. As a result of the geoprocessing operation, the properties found on the input features may or may not be found on the output features.
Determine if a feature class contains a representation
In ArcCatalog or the Catalog window
- Right-click the name of the feature class and choose Properties.
- Click the Representations tab. If there is a representation listed, representations are present in the data.
- Right-click the name of the feature layer in the Table of Contents and choose Properties.
- Click the Symbology tab. Look for the Representations option in the Show list. If it is there, representations are present in the data.
Determining if a feature class has representation overrides
- Open the Select Feature By Override geoprocessing tool.
- Choose GEOMETRY_OVERRIDE from the Select Option list to obtain features with shape overrides.
- Choose REPRESENTATION_PROPERTY_OVERRIDE from the Select Option list to obtain features with property overrides.
Rules for preserving representations in output
General principle: When the input data for a geoprocessing tool contains representations, the representations and their properties are preserved wherever possible in the output. The following rules apply to geoprocessing tools:
Rule 1: Feature geometry is not altered
When a geoprocessing tool does not make any changes to feature geometry, the representations and all overrides still apply and therefore are transferred to the output.
Examples include Copy Features, Select, and Near.
Rule 2: Feature geometry is altered on a one-to-one basis
When a geoprocessing tool alters feature geometry on a one-to-one basis so that each output feature will be a modified version of its corresponding input feature, the representations and all overrides still apply and therefore are transferred to the output.
Examples include Simplify Line and Smooth Polygon.
Rule 3: Feature geometry is altered on a one-to-many or many-to-one basis
When a geoprocessing tool alters feature geometry on the basis that each output feature can be a portion of its correspondent input feature, the representations and property overrides still apply and therefore are transferred to the output. The geometry overrides will no longer apply to the output features and therefore are cleared in the output.
Examples include Clip, Erase, and Multipart To Singlepart.
Rule 4: Schema is inherited from the primary input
When a geoprocessing tool involves multiple inputs (a primary input and one or more additional inputs) and inherits schema from the primary input, the representations and all overrides from the primary input will be transferred to the output. Representations from nonprimary inputs are not merged into the output.
Examples include Identity, Intersect, and Spatial Join.
Rules for excluding representations in output
General principle: When the output data type does not support representations or the input representations can no longer apply to the output features, the representations will not be transferred to the output. The following rules apply to geoprocessing tools:
Rule 5: Multiple inputs involved and none are primary
When a geoprocessing tool involves multiple inputs but the output does not inherit schema from any of the inputs, no representations will be transferred to the output.
Examples include Merge and Union.
Rule 6: Output data types do not support representations
When a geoprocessing tool produces any output data types that cannot support representations, no representations will be transferred to the output. This applies to shapefiles, coverages, annotation feature classes, dimension feature classes, raster data, and tables.
Examples include shapefile output of Copy Features and raster output of Point To Raster.
Rule 7: Input data types do not support representations
When a geoprocessing tool takes any input data types that cannot support representations, no representations will be involved in the output. This applies to shapefiles, coverages, annotation feature classes, dimension feature classes, raster data, and tables.
Examples include all Coverage tools and all From Raster tools.
Rule 8: New features derived without inheriting schema
When a geoprocessing tool derives new features that have a different schema from the input, the input representations will not be transferred to the output.
Examples include Buffer, Feature To Point, and Aggregate Polygons.
Rule 9: New information derived without inheriting schema
When a geoprocessing tool analyzes input features and produces calculated results, no representations will be transferred to the output.
Examples include tools from the Spatial Statistics and Network Analyst toolboxes.
Rules for representation fields in output
General principle: Representation fields are classified as required by geodatabases and, as a result, are treated in a special way by geoprocessing tools. The following rules apply to geoprocessing tools:
Rule 10: Field lists
Representation override fields are not shown when the geoprocessing tool contains a parameter for field lists. The representation override fields are BLOB type, and queries and calculations cannot be performed.
Examples include Field Name parameter in Calculate Field and Fields list in Query Builder for expression.
Rule 11: Unique names
A field name that is the same as an existing representation field name will be rejected by a geoprocessing tool that contains a parameter where a field name can be specified.
Examples include Add Field.
Rule 12: Attribute transfer operations
All representation fields are not shown in a parameter for field lists when the output of the geoprocessing tool will contain the representations from the input features. The representation fields are part of the representation and therefore will be in the output feature class.
Examples include Join Attributes in Identity and Feature Class To Feature Class.