Representations are an ArcMap symbology option to customize the appearance of features by storing symbol information with the feature geometry inside feature classes. They are commonly used to meet stringent cartographic specifications or to achieve advanced symbol effects. A feature class can have more than one representation associated with it, allowing the same data to be displayed uniquely on different map products.
The symbol model of ArcGIS Pro supports representation rules and can be combined with attribute-driven symbology to achieve cartographic outcomes with field-based representation overrides. Since symbols and the attribute-driven symbology configuration are stored in the layer, this approach is more flexible than representations. Updates do not require a schema change to the feature class in the geodatabase, and the symbology can be applied to any feature layer data source, not just geodatabase feature classes.
Representations in ArcGIS Pro
Representations can be displayed in ArcGIS Pro, but the symbology cannot be modified. Representation symbology is listed in the Symbology menu for any layer whose source data includes representations. If the layer has multiple representations, there is a symbology option for each one.
To make modifications to the layer's symbology, convert the representation symbology to unique values symbology. This converts all representation rules and field overrides associated with the representation to layer symbology. Before converting, you must analyze the layer to identify unsupported aspects such as overrides stored in the override BLOB field, shape overrides, free representations, and representation marker overrides. Analysis produces a log file that lists each feature with overrides. You can then use ArcMap to either manually move the overridden attributes and geometries into appropriate fields, or use the Update Override geoprocessing tool to do this.
Convert representation symbology to unique values symbology
To convert representation symbology to unique values symbology, follow these steps:
- In the Contents pane, choose a feature layer drawn with representations. On the Feature Layer tab, in the Drawing group, click Symbology to open the Symbology pane.
The Symbology pane appears.
- Click Analyze to perform analysis on the representation.
The results of the analysis are shown at the bottom of the pane. If issues are found, a log file is produced listing the representation rules that have overrides. Individual features with these overrides can be identified in ArcMap using the Select Feature By Override tool.
- Click View log to open the log file.
After analysis is complete, the Convert button is enabled.
- If analysis found issues, resolve them in ArcMap by moving overrides to an explicit field, removing the overrides altogether, or you can ignore them in conversion.
- Click Convert to convert the representations to unique values symbology with field overrides applied. The unique value field is the representation RuleID field.
- After you have converted the representation symbology to unique values, you can optionally migrate your symbology to an expression-based symbology using original data values on which the representation RuleID was based. To do this, choose a different field to symbolize on, and optionally click the expression
button to write a symbology expression that relies on the attribution of the features rather than the RuleID.
Once features are assigned a RuleID in the representations workflow, that value is not automatically updated when other attribute values are changed. Therefore it is a preferred workflow to reestablish symbol classes based on the feature attribution itself instead of the RuleID.
Consider a layer of road features that you converted from representations to unique value symbology. The result is that the unique values symbology of the layer is now classified by a field named RuleID, with values of 1, 2, 3. A better workflow at this point is to disassociate the layer with the RuleID field altogether and instead classify it from a field named RoadType, with values of Street, Road, Highway. This is a very simple example. A more realistic scenario might rely on writing a symbol expression based on one or more attribute fields.