Version and commit

Dear All

Heath and I have been discussing issues about commiting and attesting data. We want to be able to attest something that is immutable - the data of the composition and the commit details. There are two types of versioned data (page 41 of the Common IM) - the Version and the imported version.

The parts that need to be immutable are:

  • UID

  • preceding_version_id

  • lifecycle_state

  • create_audit - (presently a function which calls the commit_audit if not imported and the original_create_audit if it is imported)

  • data
    In the Ocean implementation we store the composition as a blob and would like to store everything that is immutable - nothing that changes (e.g. attestations, contribution ID etc). I have proposed that this set of attributes makes up the X_Version - that information to send as part of an extract - as it is unchanging. Heath is keen to have the Version be able to deal with this and store it consistently - he would like to make the reference model deal with this more elegantly. He has suggested that we change what is now called commit_audit to create_audit and change the IMPORTED_VERSION original_create_audit to local_commit_audit.

This would mean that commit_audit became a function on each class (now called create_audit) returning the create_audit on the VERSION and the local_commit_audit on the IMPORTED_VERSION.

Any ideas - it is a very minor change but I think meets both our needs.

Cheers, Sam

Actually I suggested Import_Commit_Audit not Local_Commit_Audit.

Heath