# Revision history

## Availability

[\[SINCE Orbeon Forms 2023.1\]](https://doc.orbeon.com/release-notes/orbeon-forms-2023.1)

## Introduction

Each time Form Runner saves data to the database, it saves a new *revision* of the data. Each revision of the data has an associated timestamp.

Until Orbeon Forms 2023.1, the revision history was only accessible through the database, for [auditing purposes](https://doc.orbeon.com/form-runner/persistence/auditing), or for restoring an older version manually. Starting with Orbeon Forms 2023.1, Form Runner provides a user interface to access the revision history of a given form data.

Note that this feature is distinct from [form definition versioning](https://doc.orbeon.com/form-runner/features/versioning), which regards the versioning of published form definitions.

## Enabling the feature

The feature is disabled by default. You can enable it globally by setting the following property to `true`:

```xml
<property
    as="xs:boolean"
    name="oxf.fr.navbar.revision-history.enable.*.*"
    value="true"/>
```

This adds a "Revision History" icon in the [navigation bar](https://doc.orbeon.com/form-runner/features/navbar).

![Revision History icon](https://4129616727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LEkBiSDvlXs3VWiO0Zu%2Fuploads%2Fgit-blob-2eb73ae5e16a1b3c172f74a4724d518df7924f63%2Ffr-revision-history-icon.png?alt=media)

Activating the icon opens the Revision History pane:

![Revision History pane](https://4129616727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LEkBiSDvlXs3VWiO0Zu%2Fuploads%2Fgit-blob-f1021b221d24430ee7fae127988b4438aca17558%2Ffr-revision-history-pane.png?alt=media)

\[SINCE Orbeon Forms 2026.1] You can disable revision history on an app and form basis using the [`oxf.fr.persistence.proxy.disable-version-history.*.*` property](https://doc.orbeon.com/configuration/properties/form-runner/persistence#disabling-version-history).

## The Revision History pane

The Revision History pane shows the list of revisions for the current form data, with the following information:

* date and time of the change
* username of the user that made the change, or "Anonymous user"
* a description of the changes, including
  * value entered
  * value cleared
  * value changed
  * iteration added
  * iteration removed
  * other change
  * no change

For a given revision, you can click on the "View this revision" link to view the form data as it was at the time of that revision.

![Viewing a specific revision](https://4129616727-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LEkBiSDvlXs3VWiO0Zu%2Fuploads%2Fgit-blob-1bf332afe2ea546c47f67cec00fbd1f980268f89%2Ffr-revision-history-view-revision.png?alt=media)

## See also

* Blog post: [Data Revision History](https://www.orbeon.com/2024/08/revision-history)
* [Form Runner navigation bar](https://doc.orbeon.com/form-runner/features/navbar)
* [Auditing](https://doc.orbeon.com/form-runner/persistence/auditing)
* [Purging historical data](https://doc.orbeon.com/form-runner/features/purging-historical-data)
* [Purging old data using SQL](https://doc.orbeon.com/form-runner/persistence/purging-old-data)
* [Form definition versioning](https://doc.orbeon.com/form-runner/features/versioning)
* [Revision History API](https://doc.orbeon.com/form-runner/api/persistence/revision-history)
* [Persistence proxy properties](https://doc.orbeon.com/configuration/properties/form-runner/persistence#persistence-proxy-properties)
