---
title: "confRev and the change record"
---

# confRev and the change record

Keep the change record IEC 61850-6 gives the SCL file itself: confRev warnings against the previous version with a quick fix, Record Revision for the Header and History, and the SCL History view.

**State:** modelled. Tested on hand-written files and a generated 100-IED SCD; RiseClipse 1.3.0 found nothing new in what Record Revision (281 files) and the confRev fix (129) write on the public files. The Git path was tested with a stand-in for the Git extension. The confRev rule is the module's reading of IEC 61850-7-2 Edition 2 from secondary sources, **not verified against the standard's text**.

IEC 61850-6 gives each SCL file its own change record: the Header's id, version and revision with its History items (when, who, what, why), and the confRev of each control block.

## Set the previous version

The checks and Record Revision compare the file with its previous version. By default that is the file committed at Git `HEAD`, read through the Git extension (the extension must be enabled and the file committed).

To change it, run **Set Previous Version of SCL File...** and choose:

- **Use the version committed at Git HEAD**, or
- **Pick a file...** and pick the earlier file.

## confRev warnings

A GOOSE, Sampled Values or report control block whose data set changed since the previous version (a member removed, added or reordered, or `datSet` changed) while its confRev did not increase is a warning on its start tag in Problems, from **IEC 61850 revision check**.

1. Put the cursor on the line and press Ctrl+. (or click the light bulb).
2. Take **Increase confRev of <block> to N**: N is the previous value plus one. Only that confRev value changes, as one Undo step.

A lowered or missing confRev is also a warning. A changed `appID`, a new or renamed block, or a previous confRev that is not a number are not findings. If your configurator counts confRev differently, follow your configurator.

## Record a revision

Run **Record Revision...** on the SCL file:

1. **Version:** a new revision, a new version, keep the current one, or type the version and revision.
2. **Who:** taken from Git's `user.name`; asked only when Git has none.
3. **What:** filled with the changes since the previous version, from the [semantic compare](https://neuralinverse.com/docs/modules/energy/compare/) (up to 20 sentences, with the count of the rest); edit it as needed.
4. **Why:** type the reason, for example a work order.
5. Optionally accept the suggested confRev increases.

The Header's version and revision are set and a `Hitem` with the time in UTC is appended; a History is created when there is none. All of it is one Undo step, and the file is not saved. A file without a Header is refused.

Next versions and revisions are offered for numbers (keeping their width) and single letters.

## SCL History

The **SCL History** view in the Explorer shows the Header and History of the SCL file in the active editor, latest first, following the text as you type. Hover an item to see who, what and why; click it to open the file at its line.

## Size

On a generated 100-IED SCD, 49 control blocks were found; compare, check and record take about 0.2 s.

## Limits

- Vendor project versioning (DIGSI 5 project versions, PCM600 project history, SEL QuickSet Device Manager) is not read.
- IED `configVersion` is compared but no rule is checked for it.

## Not verified

- The confRev rule against the text of IEC 61850-7-2.
- The Git path with the real Git extension, and `git config user.name` on a real machine.
- Real files; Windows.
