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