Content Management Interoperability Services (CMIS) Version 1.1 Errata 01

OASIS Approved Errata 01

19 September 2015

Specification URIs

This version:

http://docs.oasis-open.org/cmis/CMIS/v1.1/errata01/os/CMIS-v1.1-errata01-os.pdf (Authoritative)

http://docs.oasis-open.org/cmis/CMIS/v1.1/errata01/os/CMIS-v1.1-errata01-os.html

http://docs.oasis-open.org/cmis/CMIS/v1.1/errata01/os/CMIS-v1.1-errata01-os.doc

Previous version:

N/A

Latest version:

http://docs.oasis-open.org/cmis/CMIS/v1.1/CMIS-v1.1.pdf (Authoritative)

http://docs.oasis-open.org/cmis/CMIS/v1.1/CMIS-v1.1.html

http://docs.oasis-open.org/cmis/CMIS/v1.1/errata01/CMIS-v1.1-errata01.doc

Technical Committee:

OASIS Content Management Interoperability Services (CMIS) TC

Chair:

David Choy (david.choy500@gmail.com), Individual

Editors:

Florian Müller (florian.mueller02@sap.com), SAP

Ken Baclawski (kenb@ccs.neu.edu), Northeastern University

Additional artifacts:

This prose specification is one component of a Work Product that also includes:

·         Content Management Interoperability Services (CMIS) Version 1.1 Plus Errata 01. Edited by Florian Müller and Ken Baclawski. 19 September 2015. OASIS Standard Incorporating Approved Errata 01. http://docs.oasis-open.org/cmis/CMIS/v1.1/errata01/os/CMIS-v1.1-errata01-os-complete.html.

·         XML schemas, WSDL and Orderly schema: http://docs.oasis-open.org/cmis/CMIS/v1.1/errata01/os/schema/.

·         XML and JSON examples: http://docs.oasis-open.org/cmis/CMIS/v1.1/errata01/os/examples/.

·         TeX source files for this prose document: http://docs.oasis-open.org/cmis/CMIS/v1.1/errata01/os/tex/.

Related work:

This specification is related to:

·         Content Management Interoperability Services (CMIS) Version 1.1. Edited by Florian Müller, Ryan McVeigh, and Jens Hübel. 23 May 2013. OASIS Standard. http://docs.oasis-open.org/cmis/CMIS/v1.1/os/CMIS-v1.1-os.html.

Declared XML namespaces:

·         http://docs.oasis-open.org/ns/cmis/core/200908/

·         http://docs.oasis-open.org/ns/cmis/restatom/200908/

·         http://docs.oasis-open.org/ns/cmis/messaging/200908/

·         http://docs.oasis-open.org/ns/cmis/ws/200908/

·         http://docs.oasis-open.org/ns/cmis/link/200908/

Abstract:

This document lists errata for the OASIS Standard Content Management Interoperability Services (CMIS) Version 1.1.

Status:

This document was last revised or approved by the OASIS Content Management Interoperability Services (CMIS) TC on the above date. The level of approval is also listed above. Check the “Latest version” location noted above for possible later revisions of this document. Any other numbered Versions and other technical work produced by the Technical Committee (TC) are listed at https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis#technical.

TC members should send comments on this specification to the TC’s email list. Others should send comments to the TC’s public comment list, after subscribing to it by following the instructions at the “Send A Comment” button on the TC’s web page at https://www.oasis-open.org/committees/cmis/.

For information on whether any patents have been disclosed that may be essential to implementing this specification, and any offers of patent licensing terms, please refer to the Intellectual Property Rights section of the TC’s web page (https://www.oasis-open.org/committees/cmis/ipr.php).

Citation format:

When referencing this specification the following citation format should be used:

[CMIS-v1.1-Errata01]

Content Management Interoperability Services (CMIS) Version 1.1 Errata 01. Edited by Florian Müller and Ken Baclawski. 19 September 2015. OASIS Approved Errata 01. http://docs.oasis-open.org/cmis/CMIS/v1.1/errata01/os/CMIS-v1.1-errata01-os.html. Latest version: http://docs.oasis-open.org/cmis/CMIS/v1.1/CMIS-v1.1.html.

 

Notices

Copyright © OASIS Open 2015. All Rights Reserved.

All capitalized terms in the following text have the meanings assigned to them in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The full Policy may be found at the OASIS website.

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published, and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this section are included on all such copies and derivative works. However, this document itself may not be modified in any way, including by removing the copyright notice or references to OASIS, except as needed for the purpose of developing any document or deliverable produced by an OASIS Technical Committee (in which case the rules applicable to copyrights, as set forth in the OASIS IPR Policy, must be followed) or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.

This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

OASIS requests that any OASIS Party or any other party that believes it has patent claims that would necessarily be infringed by implementations of this OASIS Committee Specification or OASIS Standard, to notify OASIS TC Administrator and provide an indication of its willingness to grant patent licenses to such patent claims in a manner consistent with the IPR Mode of the OASIS Technical Committee that produced this specification.

OASIS invites any party to contact the OASIS TC Administrator if it is aware of a claim of ownership of any patent claims that would necessarily be infringed by implementations of this specification by a patent holder that is not willing to provide a license to such patent claims in a manner consistent with the IPR Mode of the OASIS Technical Committee that produced this specification. OASIS may include such claims on its website, but disclaims any obligation to do so.

OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS' procedures with respect to rights in any document or deliverable produced by an OASIS Technical Committee can be found on the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this OASIS Committee Specification or OASIS Standard, can be obtained from the OASIS TC Administrator. OASIS makes no representation that any information or list of intellectual property rights will at any time be complete, or that any claims in such list are, in fact, Essential Claims.

The name "OASIS" is a trademark of OASIS, the owner and developer of this specification, and should be used only to refer to the organization and its official outputs. OASIS welcomes reference to, and implementation and use of, specifications, while reserving the right to enforce its marks against misleading uses. Please see https://www.oasis-open.org/policies-guidelines/trademark for above guidance.

Table of Contents

1        Introduction. 5

1.1 Terminology. 5

1.2 Normative References. 5

2        Approved Errata. 6

2.1 CMIS Feature Extensions by the Technical Committee. 6

2.2 CMIS-748: cmis:objectTypeId definition: Updatability and Required attributes are wrong. 6

2.3 CMIS-749: cmis:contentStreamId has the wrong Property Type. 7

2.4 CMIS-750: The property cmis:allowedChildObjectTypeIds is included in the list of orderable properties  8

2.5 CMIS-751: Permission Mappings for canAddToFolder and canRemoveFromFolder have the wrong base type  9

2.6 CMIS-755: cmis:policyText definition: Updatability and Required attributes are wrong. 10

2.7 CMIS-756: Clarify that support for appendContentStream is optional 11

2.8 CMIS-757: cmis:sourceId and cmis:targetId definitions: Updatability attribute is wrong. 11

2.9 CMIS-760: Secondary Object-Type Definition lacks type mutability attributes. 12

2.10 CMIS-761: Rules for query names are described for properties but not for types. 13

2.11 CMIS-762: Clarify the impact of repository specific collation. 13

2.12 CMIS-765: Clarification for the GetContentChanges service. 13

2.13 CMIS-769: getContentChanges specs vs xsd. 13

2.14 CMIS-770: Clarification on the ordering for mixed-type objects. 13

2.15 CMIS-771: Clarify the query support for secondary types. 14

2.16 CMIS-775: Clarify the default for includeRelativePathSegment for the getObjectParents service. 14

2.17 CMIS-776: Typo in 2.1.3.1. 14

2.18 CMIS-783: Typo in 2.2.4.18. 14

2.19 CMIS-784: Typo in 2.2.1.2.1. 15

2.20 CMIS-787: CMIS-Core.xsd enumAllowableActionsKey missing canCreatePolicy.Folder 15

Appendix A.       Acknowledgments. 16

 

 


1      Introduction

This document lists the approved errata to the CMIS v1.1 OASIS Standard. Each one has a number that refers to the issue that triggered the erratum.

As required by the OASIS Technical Committee Process, the approved errata represent changes that are not “substantive”. The changes focus on clarifications to ambiguous or conflicting specification text, where different compliant implementations might have reasonably chosen different interpretations. The intent of the CMIS TC has been to resolve such issues in service of improved interoperability based on implementation and deployment experience.

In this document, errata change instructions are presented with surrounding context as necessary to make the intent clear. Original specification text is often presented as follows, with problem text highlighted in bold:

This is an original specification sentence. The second sentence needs to be changed, removed, or replaced.

New specification text is typically presented as follows, with new or changed text highlighted in bold:

This is a highly original specification sentence. This is the wholly new content to replace the old second sentence. It runs on and on and on.

In a few cases, text needs only to be struck, in which case the change is shown as follows, with text to be removed both highlighted in bold and struck through:

This is yet another original specification sentence which contains an in appropriately long description.

In addition to this normative document, non-normative “errata composite” documents may be provided that combine the prescribed corrections with the original specification text, illustrating the changes with margin change bars, struck-through original text, and highlighted new text. These documents, if available, will be found at the same location as this approved form.

1.1 Terminology

The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in [RFC2119].

1.2 Normative References

[RFC2119]               Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels”, BCP 14, RFC 2119, March 1997. http://www.ietf.org/rfc/rfc2119.txt.

[CMIS-v1.1]             Content Management Interoperability Services (CMIS) Version 1.1. 23 May 2013.
OASIS Standard. http://docs.oasis-open.org/cmis/CMIS/v1.1/os/CMIS-v1.1-os.html.

 

2      Approved Errata

Following are the approved errata to the CMIS v1.1 OASIS Standard.

2.1 CMIS Feature Extensions by the Technical Committee

Append the following sentences to section 2.1.1.3, page 19.

The CMIS Technical Committee defines feature extensions over time and publishes them on the CMIS TC web site: https://www.oasis-open.org/committees/cmis

These optional extensions are describing features that can be supported by a wide range of repositories and are likely to become part of the next CMIS specification version.

 

2.2 CMIS-748: cmis:objectTypeId definition: Updatability and Required attributes are wrong

Change section 2.1.4.3.3, page 36, section 2.1.5.4.2, page 53, section 2.1.6.1.3, page 61, and section 2.1.8.1.2, page 75.

(Please note that this errata only addresses the Updatability attribute.)

Original:

cmis:objectTypeId

Id of the object’s type.

Property Type:

Id

Inherited:

FALSE

Required:

FALSE

Cardinality:

single

Updatability:

readonly

Choices:

Not Applicable

Open Choice:

Not Applicable

Queryable:

SHOULD be TRUE

Orderable:

<repository specific>

The repository MUST return this property with a non-empty value if the property filter does not exclude it.

 

New:

cmis:objectTypeId

Id of the object’s type.

Property Type:

Id

Inherited:

FALSE

Required:

FALSE

Cardinality:

single

Updatability:

oncreate

Choices:

Not Applicable

Open Choice:

Not Applicable

Queryable:

SHOULD be TRUE

Orderable:

<repository specific>

The repository MUST return this property with a non-empty value if the property filter does not exclude it.

 

2.3 CMIS-749: cmis:contentStreamId has the wrong Property Type

Change section 2.1.4.3.3, page 46.

Original:

cmis:contentStreamId

Id of the content stream.
See also section 2.1.4.1 Content Stream.

Property Type:

String

Inherited:

FALSE

Required:

FALSE

Cardinality:

single

Updatability:

readonly

Choices:

Not Applicable

Open Choice:

Not Applicable

Queryable:

<repository specific>

Orderable:

<repository specific>

If the document has no content stream, the repository MUST return "not set".

 

New:

cmis:contentStreamId

Id of the content stream.

See also section 2.1.4.1 Content Stream.

Property Type:

Id

Inherited:

FALSE

Required:

FALSE

Cardinality:

single

Updatability:

readonly

Choices:

Not Applicable

Open Choice:

Not Applicable

Queryable:

<repository specific>

Orderable:

<repository specific>

If the document has no content stream, the repository MUST return "not set".

 


2.4 CMIS-750: The property cmis:allowedChildObjectTypeIds is included in the list of orderable properties

Change section 2.2.1.2.7, page 131.

The following set of properties SHOULD be supported by the repository if the optional capability capabilityOrderBy is common or custom.

  • cmis:name
  • cmis:objectId
  • cmis:objectTypeId
  • cmis:baseTypeId
  • cmis:createdBy
  • cmis:creationDate
  • cmis:lastModifiedBy
  • cmis:lastModificationDate
  • cmis:isImmutable
  • cmis:isPrivateWorkingCopy
  • cmis:isLatestVersion
  • cmis:isMajorVersion
  • cmis:isLatestMajorVersion
  • cmis:versionLabel
  • cmis:versionSeriesId
  • cmis:isVersionSeriesCheckedOut
  • cmis:versionSeriesCheckedOutBy
  • cmis:versionSeriesCheckedOutId
  • cmis:checkinComment
  • cmis:contentStreamLength
  • cmis:contentStreamMimeType
  • cmis:contentStreamFileName
  • cmis:contentStreamId
  • cmis:parentId
  • cmis:allowedChildObjectTypeIds
  • cmis:path

 

 

 

 


2.5 CMIS-751: Permission Mappings for canAddToFolder and canRemoveFromFolder have the wrong base type

Change section 2.1.12.3.2.3, page 91.

Original:

canAddObjectToFolder 

 

Description:

Can file an object in the specified folder (addObjectToFolder).

 

Base Type:

cmis:document, cmis:policy, cmis:item

 

Operand:

Folder

 

Key:

canAddToFolder.Folder

 

Permission:

cmis:read

New:

canAddObjectToFolder 

 

Description:

Can file an object in the specified folder (addObjectToFolder).

 

Base Type:

cmis:folder

 

Operand:

Folder

 

Key:

canAddToFolder.Folder

 

Permission:

cmis:read

 

Original:

canRemoveObjectFromFolder

 

Description:

Can file an object in the specified folder (addObjectToFolder).

 

Base Type:

cmis:document, cmis:policy

 

Operand:

Folder

 

Key:

canAddToFolder.Folder

 

Permission:

cmis:read

New:

canRemoveObjectFromFolder

 

Description:

Can unfile an object from the specified folder (removeObjectFromFolder).

 

Base Type:

cmis:folder

 

Operand:

Folder

 

Key:

canRemoveFromFolder.Folder

 

Permission:

cmis:read

 

2.6 CMIS-755: cmis:policyText definition: Updatability and Required attributes are wrong

Change section 2.1.7.1.2, page 71.

Original:

cmis:policyText

User-friendly description of the policy.

Property Type:

String

Inherited:

FALSE

Required:

FALSE

Cardinality:

single

Updatability:

readonly

Choices:

Not Applicable

Open Choice:

Not Applicable

Queryable:

<repository specific>

Orderable:

<repository specific>

 

New:

cmis:policyText

User-friendly description of the policy.

Property Type:

String

Inherited:

FALSE

Required:

FALSE

Cardinality:

single

Updatability:

readwrite

Choices:

Not Applicable

Open Choice:

Not Applicable

Queryable:

<repository specific>

Orderable:

<repository specific>

 


2.7 CMIS-756: Clarify that support for appendContentStream is optional

Add the following item to the Notes list in section 2.2.4.19, page 174.

Repositories that do not support this service MUST throw a notSupported exception.

 

2.8 CMIS-757: cmis:sourceId and cmis:targetId definitions: Updatability attribute is wrong

Change section 2.1.6.1.3, page 63.

Original:

cmis:sourceId

Id of the source object of the relationship.

Property Type:

Id

Inherited:

FALSE

Required:

FALSE

Cardinality:

single

Updatability:

readonly

Choices:

Not Applicable

Open Choice:

Not Applicable

Queryable:

<repository specific>

Orderable:

<repository specific>

The repository MUST return this property with a non-empty value if the property filter does not exclude it.

 

New:

cmis:sourceId

Id of the source object of the relationship.

Property Type:

Id

Inherited:

FALSE

Required:

FALSE

Cardinality:

single

Updatability:

SHOULD be oncreate

Choices:

Not Applicable

Open Choice:

Not Applicable

Queryable:

<repository specific>

Orderable:

<repository specific>

The repository MUST return this property with a non-empty value if the property filter does not exclude it.

 


Change section 2.1.6.1.3, page 64.

Original:

cmis:targetId

Id of the target object of the relationship.

Property Type:

Id

Inherited:

FALSE

Required:

FALSE

Cardinality:

single

Updatability:

readonly

Choices:

Not Applicable

Open Choice:

Not Applicable

Queryable:

<repository specific>

Orderable:

<repository specific>

The repository MUST return this property with a non-empty value if the property filter does not exclude it.

 

New:

cmis:targetId

Id of the target object of the relationship.

Property Type:

Id

Inherited:

FALSE

Required:

FALSE

Cardinality:

single

Updatability:

SHOULD be oncreate

Choices:

Not Applicable

Open Choice:

Not Applicable

Queryable:

<repository specific>

Orderable:

<repository specific>

The repository MUST return this property with a non-empty value if the property filter does not exclude it.

 

2.9 CMIS-760: Secondary Object-Type Definition lacks type mutability attributes

Add the following attributes to the list of type attributes in section 2.1.9.2.1, page 79.

typeMutability.create
Value: <repository-specific>

typeMutability.update
Value: <repository-specific>

typeMutability.delete
Value: <repository-specific>

 


2.10 CMIS-761: Rules for query names are described for properties but not for types

Change section 2.1.2.1.3, page 22.

All object types and properties MUST supply a string queryName attribute which is used for query and filter operations on object-types. 

 

2.11 CMIS-762: Clarify the impact of repository specific collation

Add the following sentences to section 2.1.14.2.4.1, page 107.

The collation rules used to evaluate comparison predicates for String properties are repository specific.

For example, a predicate of the form

... where cmis:name LIKE 'a%' ...

MUST match a cmis:name starting with 'a' and MAY match a cmis:name starting with 'A'

 

2.12 CMIS-765: Clarification for the GetContentChanges service

Add the following item to the Notes list in section 2.2.6.2, page 182.

If a change log token is specified and the repository knows the corresponding change event, then the repository MUST return this change event as the first entry in the result set. A client can then compare the first change event of the call with the last change event of the previous call. If they match, the client knows that it didn’t miss a change event. If they don’t match, the repository truncated the change log between this call and previous call. That is, the client missed one or more change events and may have to re-crawl the repository.

 

2.13 CMIS-769: getContentChanges specs vs xsd

Change section 2.2.6.2.2, page 182.

Original:

String latestChangeLogToken: The change log token corresponding to the last change event in changeEvents.

New:

String changeLogToken: The change log token corresponding to the last change event in changeEvents.

 

2.14 CMIS-770: Clarification on the ordering for mixed-type objects

Add the following sentences to the Description paragraph in section 2.2.1.2.7, page 130.

When mixed-type objects are returned (e.g. getChildren), an "orderBy" property may be orderable for one type but not orderable for another type. The order is then repository specific.

 

2.15 CMIS-771: Clarify the query support for secondary types

 

Append the following sentences to section 2.1.14.1, page 101.

Please note that the following text and the BNF grammar are inconsistent. The text allows the use of secondary object types in FROM clauses and the BNF grammar does not. Because the BNF grammar is the formal description of the query language, it takes precedence over the text. That is, secondary object types MUST NOT be used in FROM clauses.

The next version of the CMIS specification will correct the BNF grammar and allow the use of secondary object types in FROM clauses.

A CMIS feature extension has been defined by the CMIS Technical Committee that allows support of secondary object types in FROM clauses also for CMIS 1.1 repositories.

 

2.16 CMIS-775: Clarify the default for includeRelativePathSegment for the getObjectParents service

Change section 2.2.3.5.1, page 151.

Original:

Boolean includeRelativePathSegment: See section 2.1.5.3 Paths.

New:

Boolean includeRelativePathSegment: If TRUE, returns a relativePathSegment for each parent object for use in constructing that object's paths. The default is repository specific. See section 2.1.5.3 Paths.

 

2.17 CMIS-776: Typo in 2.1.3.1

Change section 2.1.3.1, page 23.

Original:

The scope of a query on a given object-type is automatically expanded to include all the descendant types of the given object-type with the attribute includedInSuperTypeQuery equals TRUE.

New:

The scope of a query on a given object-type is automatically expanded to include all the descendant types of the given object-type with the attribute includedInSupertypeQuery equals TRUE.

 

2.18 CMIS-783: Typo in 2.2.4.18

Change section 2.2.4.18, page 173.

Original:

A repository MAY automatically create new document versions as part of this service operations.

New:

A repository MAY automatically create new document versions as part of this service method.

 

2.19 CMIS-784: Typo in 2.2.1.2.1

Change section 2.2.1.2.1, page 127.

Original:

Example: cmis:name,amount,worflow.stage

New:

Example: cmis:name,amount,workflow.stage

 

 

2.20 CMIS-787: CMIS-Core.xsd enumAllowableActionsKey missing canCreatePolicy.Folder

Add the following sentences to the canCreatePolicy item in section 2.1.12.3.2.2, page 88.

The canCreatePolicy.Folder key has not been defined in the CMIS schema. CMIS implementations must ignore this permission mapping.

Appendix A. Acknowledgments

The following individuals have participated in the creation of this specification and are gratefully acknowledged:

Participants:

Baclawski, Ken              Northeastern University

Brown, Jay                    IBM

Carr, Derek                   IBM

Caruana, David             Alfresco Software

Chan, Eric                     Oracle

Chow, Alexander           Liferay, Inc.

Choy, David                  Individual

Churchland, David         Hewlett-Packard

Croisier, Stephane         RSD

Devasia, Alex                ASG Software Solutions

Eberding, Karsten         Individual

Fanning, Betsy              AIIM

Garroni, Paolo               ISIS Papyrus America Inc.

Guillaume, Florent         Nuxeo

Gur-esh, Ethan              Microsoft

Hind, Andrew                Alfresco Software

Huebel, Jens                 SAP SE

Janssen, Gershon         Individual

Macmillan, Alison          Oracle

Malabarba, Scott           IBM

Melahn, Greg                Alfresco Software

Miller, Pat                     Microsoft

Monks, Peter                Alfresco Software

Mooty, Mathew             Microsoft

Mueller, Florian              SAP SE

Newton, John                Alfresco Software

Pitfield, David               Oracle

Rodriguez, Celso           ASG Software Solutions

Ryan, Patrick                IBM

Schnabel, Bryan            Individual

Tazbaz, Paul                 Wells Fargo