You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@chemistry.apache.org by Joeri Samson <jo...@xaop.com> on 2010/03/24 18:42:53 UTC

Some patches for OpenCMIS version handling

While I was trying to write a client library to interface with CMIS
through the AtomPub interface I encountered a few issues in OpenCMIS.
(issues are not numbered in the same way as the patches)
For example I could not check in a document with the checkin parameter
that is specified in the CMIS specification (paragraph 3.20.3.2)
because the opencmis atom server expected a checkIn parameter (it
might be better for the server to check for parameters in a case
insensitive manner).
The version-history link also did not work because the ID expected by
the InMemoryVersioningService was the ID of the version series, while
the ID in the atom link was that of the document itself (I changed the
server to accept such links instead of changing the generated Atom
links, because it did not seem to be possible to do this in a backend
agnostic way).
The third change is not to provide rel="via" links if the document is
not a PWC (this is in line with the specification, no "via" link is
mentioned for normal document entries).
A fourth change is to return the actual PWC objects in the checkedout
collection, I did not test this for the cases where a folderId is
given. I don't find this in the spec, but this article:
https://www.ibm.com/developerworks/xml/library/x-cmis1/ claims that it
should return the actual PWCs.

Kr,
Joeri

RE: Some patches for OpenCMIS version handling

Posted by Florian Müller <fm...@opentext.com>.
Hi Joeri,

Re issue 1:
Good catch! I made the parameter recognition case-insensitive. So that shouldn't be an issue anymore.

Re issues 2 and 3:
These are specific to the InMemory repository. I leave that to Jens.

Re issue 4:
The spec is ambiguous here. But my interpretation is different. A PWC is only visible to the user that created that PWC. If the checkedout collection would return PWCs than that would be a list of the documents checked out by this user. 

The spec says: "Gets the list of documents that are checked out that the user has access to."
For me that sounds that there could be documents that user hasn't checked out but could access.

If this would be a list of PWCs, I would have excepted something like:
"Gets the list of documents that the user has checked out.


Thanks for the feedback,

Florian


-----Original Message-----
From: Joeri Samson [mailto:joeri@xaop.com] 
Sent: Mittwoch, 24. März 2010 18:43
To: chemistry-dev
Subject: Some patches for OpenCMIS version handling

While I was trying to write a client library to interface with CMIS
through the AtomPub interface I encountered a few issues in OpenCMIS.
(issues are not numbered in the same way as the patches)
For example I could not check in a document with the checkin parameter
that is specified in the CMIS specification (paragraph 3.20.3.2)
because the opencmis atom server expected a checkIn parameter (it
might be better for the server to check for parameters in a case
insensitive manner).
The version-history link also did not work because the ID expected by
the InMemoryVersioningService was the ID of the version series, while
the ID in the atom link was that of the document itself (I changed the
server to accept such links instead of changing the generated Atom
links, because it did not seem to be possible to do this in a backend
agnostic way).
The third change is not to provide rel="via" links if the document is
not a PWC (this is in line with the specification, no "via" link is
mentioned for normal document entries).
A fourth change is to return the actual PWC objects in the checkedout
collection, I did not test this for the cases where a folderId is
given. I don't find this in the spec, but this article:
https://www.ibm.com/developerworks/xml/library/x-cmis1/ claims that it
should return the actual PWCs.

Kr,
Joeri