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

 


Help: OASIS Mailing Lists Help | MarkMail Help

cmis message

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


Subject: [OASIS Issue Tracker] Commented: (CMIS-156) Reconsider deletedesign



    [ http://tools.oasis-open.org/issues/browse/CMIS-156?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=10269#action_10269 ] 

Florent Guillaume commented on CMIS-156:
----------------------------------------

> a typical repository has a notion of documents and versions and treats versions as a substructure of a document

That's not true in my experience. For me it's very natural to think of a version as a separate object from what you call "the" document. And deleteObject is not at all ambiguous to me considering that the version has an separate id and identity.

> I would expect that the object service deals with documents and the version service deals with versions

The version service deals with version-specific features, but a version object is still an object and can be manipulated in normal ways by the object service (with the constraints imposed by the fact that it's a version of course).

> CMIS application that is not aware of versioning should have the possibility to delete a document in the repository

The application can delete whatever it has rights to using deleteObject. deleteAllVersions is just a shortcut/optimization I think.


> Reconsider delete design
> ------------------------
>
>                 Key: CMIS-156
>                 URL: http://tools.oasis-open.org/issues/browse/CMIS-156
>             Project: OASIS Content Management Interoperability Services (CMIS) TC
>          Issue Type: Improvement
>          Components: Domain Model
>    Affects Versions: Draft 0.61
>            Reporter: Jens Huebel
>            Assignee: Ethan Gur-esh
>            Priority: Minor
>
> We have two methods for deleting in the spec: deleteObject in the object service and deleteAllVersions in the versioning service. This design seems to be consistent, however I find it confusing:
> The deleteObject in the object service does not delete a document, it deletes a version. To delete a document I need to call deleteAllVersions which is not part of the object service but part of the versioning service. And to delete a version I have to use the object service
> To my understanding a typical repository has a notion of documents and versions and treats versions as a  substructure of a document. Therefore I would expect that the object service deals with documents and the version service deals with versions. The domain model reflects this design to my understanding in the complete spec except the delete semantics. Why was it designed that way?  I also would appreciate to see the versioning service as an optional component. A CMIS application that is not aware of versioning should have the possibility to delete a document in the repository. Currently it needs the versioning service just to do that.
> The spec is also not very precise what deleteObject should do if the object only has a single version. Is the document deleted in this case or does the comment mean that there has to remain something or is there an exception thrown?

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tools.oasis-open.org/issues/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


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