Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The history of an item should be available, and it should be possible to cite a particular version of the item.

Higher Priority Requirements

  1.  Versioning Versioning is at the level of data files. 
  2. Wiki Markup
    Data packages and data files have a relationship between their identifiers. Each version of a file/package is represented by a separate DOI. The "base" DOI points to the most recent version of the file/package, but a version number can be added to the base DOI to access previous versions. See the \[\[\]\] page for more details about the DOI format.
  3. When a new version of data file is deposited, a new identifier will be created.
  4. Adding or changing README files or metadata will not result in creation of a new identifier.
  5. All metadata changes are logged by writing a metadata snapshot to the filesystem this allows us to retain a record of the changes, even though they are not available as explicit versions (and not viewable in the UI). - If all we are doing is adding a new bitstream without changing the existing bitstreams, there is no need to force a version number change.
  6. of individual Items, User should be able to generate a new version of the item via submission, sword or LNI deposit.
  7. Previous Versions of Items should continue to be visible, citable and accessible 
  8. Previous versions of bitstreams are retained. If something was once retrievable, it is always retrievable.
  9. Each version of an Item is represented by a separate "versioned" identifier (Handle or DOI)
  10. The relationships between versions should be visible in various Metadata Exports (OAI, Packagers, ItemExport)
  11. Expose Versioning detail in DSpace API and Services (I.E. OAI, Bagit, Etc.)
  12. The relationships between versions should not be brittle and breakable by manipulating Item metadata records.
  13. A base "versionhistory" Identifier points to the most recent version of the Item. 
  14. A revision identifier also exists that is unique to the specific version.
  15. When a new version of an Item is deposited, a new revision identifier will be created.
  16. When a new version of an Item is deposited the "versionhistory" identifier will resolve to the new versionWhen a new identifier is created for a data file, a new identifier is automatically created for the corresponding data package.
  17. Each version of the item includes metadata about who created the version and the date/time. (it is essentially a full copy of the item, with modifications)Only the most recent version of an item is available via the search interface.of the item, with modifications)
  18. On the item page, there is a link to view previous/subsequent versions.
  19. By examining the metadata, it is possible to determine whether an item is the most recent version, the original version, or an intermediate version.
  20. Previous versions of bitstreams are retained. If something was once retrievable, it is always retrievable.
  21. Creation of a new version is initiated by the author. On the "submissions" page, users should see all of their archived submissions. 
  22. Each archived submission should have a button to submit a new version of a data file - this button doesn't appear anywhere elseItem accessible by the Submitter or the Collection Manager, Administrators
  23. Only the most recent version of an item is available via the search interface (possibly configurable)

 Lower Priority Requirements

  1. All metadata and content changes within a "Version" should be logged in an audit trailExpose Versioning detail in DSpace API and Services (I.E. OAI, Bagit, Etc.)

Administration

  1. Current Code Locations
    1. https://dryad.googlecode.com/svn/trunk/dryad/dspace/modules/

...

  • Database Modifications
  • Data Access Objects and Domain Model definition
  • Enhancing DSpace XMLUI Item Adapter to expose Version Details on Items
  • Item User Interface Changes to support Versioning
    • Details that should be presented in User Interface
    • Actions that should be possible on existing versions (compare, revert, delete, withdraw)
    • Actions that should be possible to generate a new version (submission, deposit, import)
    • Roles for which new versions Actions that should be possible to users (submitter, author, curator)

...

General user actions that would generate a new Version of a new Dryad Item and their overal impact on creation of a new DSpace item.

Scenarios

Description

New Data Package Item Version

New Data File Version

Add Data File to Existing Data Package

Add a Data File Item to Dryad and add to existing Data Package

yes

yes

Delete Data File from Package

Remove a Data File from an existing Data Package

yes

yes

Replace Data File Bitstream in existing Package Item

Remove an existing Data File (2) and add a new one (1)

yes

yes

Edit Metadata in Data File Item

Metadata edits do not produce new Items

no

no

Edit Metadata in Data Package

Metadata Edits do not produce new Items

no

no

Metadata Mapping

General Versioning of DSpace Items

...