chemistry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Florian Müller <>
Subject Re: Secondary Types - how to apply RM holds?
Date Wed, 29 Jun 2016 07:36:23 GMT
Hi Vyacheslav,

The idea is that secondary type cmis:rm_hold is sufficient to put an 
object under one or multiple holds.
You apply the secondary type and set the multivalue property 
cmis:rm_holdIds. You can add and remove different holds on the object at 
any time by updating the property cmis:rm_holdIds. Usually, the hold IDs 
have a meaning in the context of the repository and an application. They 
can reference, for example, a lawsuit. But these semantics are out of 
the CMIS scope.

A type derived from cmis:rm_hold is rather an exception. It allows 
repositories to provide additional information about holds. Because most 
CMIS clients don't understand the information (they can only display 
it), this not of much value. Nevertheless, the CMIS spec allows it to 
provide an easy data exchange between the repository and a specialized 

- Florian

> Hi,
> The section “2.1.16 Retentions and Holds” in CMIS 1.1 specification
> leaves a few gray areas. According to specs:
> 1.       “cmis:rm_hold” is a type inherited from “cmis:secondary” type
> 2.       “cmis:rm_hold” defines “cmis:rm_holdIds” property that
> contains list of holds applied to an object instance
> 3.       A repository MAY define its own secondary types for holds with
> additional properties. Those types MUST be derived from “cmis:rm_hold”
> My confusion with the specification is that “cmis:rm_hold” and
> inherited types are secondary types. If they are “regular” secondary
> types then applying holds means that hold type ids should appear in
> “cmis:secondaryObjectTypeIds” of object instance. In this case
> “cmis:rm_holdIds” defined by “cmis:rm_hold” type seems to be
> completely redundant.
> Can anybody clarify this confusion?
> Thanks,
> Vyacheslav Pascarel

View raw message