chemistry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Florian Müller <>
Subject Re: AtomPub empty getAllVersions
Date Thu, 10 Nov 2011 16:18:53 GMT

The CMIS 1.0 still states for getAllVersions:
"The result set for this operation MUST include the Private Working Copy, subject to caller’s
access privileges."

Since that hasn't changed (yet) that is what a client expects. CMIS 1.1 is a different story
and we have to discuss how and when we implement it in OpenCMIS.

Nevertheless, we can change the AtomPub code to allow empty lists although I wouldn't recommend
to return an empty list.


On 10/11/2011 01:08, Florent Guillaume wrote:
> Hi,
> But as we discussed in the TC not all servers make the PWC part of the
> version series, and in fact in 1.1 this should be the mandated
> behavior. So until first checkin the version series is empty.
> Anyway I don't think the translation layer from server to AtomPub in
> o.a.c.o.server.impl.atompub.VersioningService.getAllVersions should
> decide what's allowed or not. For instance the SOAP bindings pass the
> value as is, and I think this is right.
> Florent
> On Wed, Nov 9, 2011 at 7:43 PM, Florian Müller
> <>  wrote:
>> Hi Florent,
>> Here is my view:
>> If the document type is versionable then there is always one version because the
version series is not empty. So the version list is not empty.
>> If the document type is not versionable then the allowable action for getAllVersions
should not be set and clients should not call it.
>> If a client ignores the allowable action the repository can either throw an exception
(the right way) or return a list with one version (the safe way).
>> In no case is the version list empty.
>> - Florian
>> On 09/11/2011 08:59, Florent Guillaume wrote:
>>> Hi,
>>> o.a.c.o.server.impl.atompub.VersioningService.getAllVersions fails if
>>> the underlying service returns no version.
>>> However, as discussed in the TC, the PWC should not really be
>>> considered a version, and returning nothing is a legitimate behavior
>>> if there never was a checkin.
>>> Does anyone object if I remove the code that requires the versions to
>>> not be empty?
>>> Regards,
>>> Florent

View raw message