Overview
Excerpt |
---|
Prerelease f4 |
---|
...
Within |
...
Fedora 4, snapshots of the current state of |
...
a resource may be saved into the version history |
...
. The |
...
RDF for historic version shapshots may be browsed and old non-RDF content may be downloaded. Furthermore, an object or subgraph may be reverted to the state that it existed in a historic version. |
Creating versions
When you wish to save a snapshot of the current version of a node to the version history you can use the REST API. When saving these versions you must provide a label that both serves to easily differentiate a version from another and allow easy retrieval of that version.
Expand | ||||||
---|---|---|---|---|---|---|
| ||||||
|
Note | ||
---|---|---|
| ||
If a resource has a version with a given label, you may not create another version with that label. If you later delete a labeled version, you may then create a new version with that label. |
Tip |
---|
Version creation is a relatively costly operation. With the ability to create versions whenever you wish, you can develop workflows that maximize the utility of the version historythis feature. Possible strategies include:
|
If you wish to save a full history of a node by having versions created every time the node is updated, you can set the property "fedora:version-policy" to "auto-version".
Tip |
---|
If your needs for digital preservation are highest and you're willing to sacrifice a little bit of performance, you can alter the node type definition to automatically set the auto-versioning policy on newly created objects and automatically save every revision. |
Viewing old Versions
From the HTML view (or by issuing HTTP GET methods in a browservia an HTTP client program) you can get the version history of a node by appending "/fcr:versions" to it's base URL.
Turn off Node Versioning
The fedora repository can operate with unversionable nodes as well as versionable nodes. By default, the "mix:versionable" mixin is applied to newly created fedora nodes. This enables versioning (though does not necessarily result in the creation of versions) for that node. Version-related operations will not work against unversionable nodes, an the presence of the "versioning-policy" will have no effect.
To disable versioning, remove mix:versionable from the node type definitions for the fedora:resource node type.
Brute force method: edit fcrepo-kernel/src/main/resources/fedora-node-types.cnd and remove the "mix:versionable" property from "fedora:resource", then run "mvn clean install" in fcrepo-kernel.
. Each version will be listed, with the version label as the title.
Previewing historic properties
By clicking on the box for a version you can expand and collapse a view of the version properties.
Navigating to the full view of an historic version
By clicking on the label of a version in the version listing you will be taken to the stored version of that resource. Because it's part of the historic record, you cannot edit it, but you can view it, download non RDF-content or revert the resource or subraph to that version.
Reverting to a previous version
If you wish to restore an object to a previous version, you may do so using the REST API, or even the HTML view. In the HTML view of a historic version, a button "Revert to this Version" exists, that when clicked restores the object (and possibly the sub-graph) to the version viewed.
Info |
---|
When restoring an old version, two operations occur:
|
Deleting a previous version
If you wish to remove historic version snapshots you may do so either using the REST API or the HTML view of the historic version. You may not, however, delete the most recent version snapshot