OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

cmis-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [cmis-comment] Can I continue to use the same cmis:objectId when a document is version upped?


Hello linzhixing,

Thank you for your question and proposal on version management.

The CMIS versioning feature is intended to accommodate a variety of object versioning schemes used by different repositories. By design, there can be many compliant implementations supporting different versioning schemes.
But, regardless of the scheme used by a repository, a CMIS client is assured that each CMIS object instance will have a permanent Object ID, and all version instances of an object will share the same permanent Version Series ID. The former permanently identifies a specific version instance and the latter permanently identifies an object regardless of its version. Using a Version Series ID, a client can get the latest version or all versions of an object.
This identity requirement is important to many applications. If the Object ID of a version instance can change, as in your (B) case, then all references to a specific version instance kept in an application could suddenly become invalid (and worse, could point to a wrong instance). For this reason, (B) should not be allowed. It certainly does not comply with the current CMIS spec as you have noticed, and it should not be.

Regards,

david



On Tue, Apr 16, 2013 at 4:24 AM, Tomoyuki Hayashi <tomoyuki.hayashi@aegif.jp> wrote:
Hello,

I'm linzhixing, new to this mailing list, and now involved with developing a CMIS compliant server/client products.

I have a question with regard to the "version" and the "objectId" in the specification.
Each version is a document, I see, and it has a new unique id different from other versions having the same versionSeriesId. But I think there can be still two interpretation / implementation.

(A)New document with new id is created as the latest version. The former id now indicate a old version.
(B)New document is unchanged and the ex-latest object's id is now replaced with a new one.

(A) would be a natural interpretation of the specification, but (B) is I think still worthy to be considered.
In (B), whatever version it is, we can express a URI relating to a document object with a invariable objectId. 
In (A), the URI could become stale indicating an old version before users know it.
As far as I can see, Alfresco continues to use the same id when a document is version upped. 

The question:
The(B) can be allowed as the interpretation of CMIS spec?

In this case, I‘m worrying about conflicts against other CMIS spec like objectId immutability, creationDate and so on. 
For example, (B) can be thought to be an abbreviation of the following:
every time before a document is version upped, copy the latest document to the new id object, delete the original document and create the new version document with the original id, though It would be a little tricky...


Regards,
linzhixing.


-----------------------------------------------------
Tomoyuki Hayashi : 林 智行
aegif corporation 
e-mail : tomoyuki.hayashi@aegif.jp
tel : 03-5771-1566
-----------------------------------------------------



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]