# ReformVal

## Attribute ReformVal

This attribute is used by the Analytica user interface to remember the most recent pivot for a result table. It is also used when determining the pivot of result graphs.

The attribute contains a list of items, surrounded with brackets. In the simplest case, the attribute contains two items, [«columnIndex», «rowIndex»], for example,

[In1, In2]

would say that index In1 should be the column headers, and In2 should be the row header. Either item might be Undefined if never set (for example, you've only viewed a 1-D array), or Null if it has been explicitly set to be no-index.

The result table needs to adapt to numerous pivot changes gracefully, including changes to dimensionality and changes to statistical view. To enable some stability when changing between statistical views and back, additional elements may be added to the list:

 [colIndex, rowIndex, bandIdx, statisticsIdx, stepIdx, runIdx]

The four items shown here with the suffix Idx correspond to the distinguished local index in each of the statistical views, and is set to one of these values:

• 0 = The special index is a slicer
• 1 = The special index is the column
• 2 = The special index is the row
• Undefined = The position of the special index has not been explicitly set (see Undefined for explanation).

So, for example, in an uncertain result with indexes In1 and In2, and a ReformVal of

[In1, In2, 1]

This says that is mid- or mean- views, In1 will be on the column and In2 on the row. But in Probability Bands view, the .Probability index will be on the column and In2 will be on the row. The third value allows it to remember which non-special indexes appear on the axes, even after the user has pivoted while viewing a band view. If there were only two slots, one would be populated by the special .Probability index, and then when you return to the Mid- view, it would forget.

### Default inference

When the ReformVal is not set, or when one or both items are Undefined, or when of the stored indexes does not appear anymore in the result, the result table will select the index for that pivot position using a set of heuristic rules, or if no heuristics apply, will be selected arbitrarily from the indexes that appear in the result.

### Graph pivots

Graphs also use this attribute so as to synchronize table and graph pivots. But for graphs, many other attribute values and properties of the result are brought to bear. How these are used is a function of which graph type is used, which graphing attributes are explicitly set (for example, the Att_XRole or Att_ColorRole attributes), etc. In common cases, the column index will serve as the independent axis (usually X-axis) or as the common (running) index in a scatter plot, and the row will serve as the primary key (usually color).