Property type mapping reference

Refer to this table to determine what CMIS property types are for a particular Content Manager EE attribute type or any time you need a quick reference.

Property type mapping: Content Manager EE to CMIS

The following table shows how Content Manager EE attribute types map to CMIS property types:

Table 1. Property type mapping:Content Manager EE to CMIS
Content Manager EE attribute types CMIS property types
BLOB (binary large object) Omitted
Char (fixed-length character string) String
CLOB (character large object) String
Date Datetime (date portion only)
Decimal Decimal
Double Decimal
Long integer Integer
Short integer Boolean if the following constraints are met:
  • Minimum value is 0
  • Maximum value is 1
  • The shortAsBooleanEnabled parameter is set to true

Otherwise, Integer

Varchar (variable-length string) String
Time Datetime (time portion only)
Timestamp Datetime
Reference Omitted
Attention:
  • The CMIS property type strings must be in lower case.
  • Property values that have the String property type can usually be converted to a Content Manager EE attribute type, but not always. If the submitted type and target type are incompatible, an error is reported.
  • Date and Time attributes might not reflect the original intended moment in time when viewed by different time zones and geographies. The Timestamp attribute is strongly recommended instead of separate Date and Time attributes. For more information, see the tips that are documented in the next section.

Property type mapping: CMIS to Content Manager EE

If you already have a CMIS type, you want to find what Content Manager EE attributes will map to it, use the following recommended mappings:
Table 2. Property mapping: CMIS to Content Manager EE
CMIS type Content Manager EE type Recommended Constraints
Datetime Timestamp, Date, Time  
Integer Short integer or long integer  
String Varchar (variable-length) or Char (fixed-length) Choose a reasonable maximum.
Decimal Decimal or double  
Boolean Short integer
  • Minimum value must be set to 0
  • Maximum value must be set to 1
  • The shortAsBooleanEnabled parameter must be set to true for IBM® CMIS for Content Manager

Consider the following information when you define attributes:

  • If string values for a particular property are always the same length, use Char, which is a fixed-length string attribute, instead of Varchar, which is a variable-length string attribute. Char performs much faster than Varchar. However, Char automatically pads white space for any string submitted that is smaller than the specified length. This makes fixed length strings harder to query by the exact string if any values are smaller than the full size. For the most flexibility, Varchar is a good choice if you have strings that greatly vary in length.
  • Choose reasonable maximum lengths for your string attribute definitions, because an item type's metadata is limited to 32K in the database. The actual metadata size limit depends on the tablespace size that is used when creating the repository database. Unicode strings can consume multiple bytes per character and can vary depending on actual characters in each string. Drafts of items with metadata that is less than approximately 25K perform much faster than drafts with more metadata. Draft instances with more metadata require expensive overflow storage that does not perform fast or scale for large numbers of such drafts.
  • Always choose Timestamp over Date-only or Time-only attribute types if possible. For globalized applications, all dates and times are relative to the time zones and local daylight-savings times, which can vary depending on the day, year, timezone, and country. Only the Timestamp attribute preserves the exact moment in time. Any date or time is calculated based on a moment in time by applications and servers, but when only the date portion or only the time portion is persisted, the precision is lost and cannot be mapped back to the exact moment in time. Therefore, when viewed by applications in different time zones, the value might not reflect the original moment in time from the perspective of different time zones. Date-only fields generally report the original date in GMT. Time-only fields might not recognize daylight-savings time as it applies to the exact moment in time, especially when viewed from different time zones. To preserve the local date without any time zone alterations, you can use a fixed-length string field.
  • If you define item types in Content Manager EE with required BLOB attribute and then create a CMIS document with those Content Manager EE item types, you might get an error message saying that the required property does not contain a value. The item types with required BLOB attributes are for custom applications only and the custom applications can set the BLOB attributes. Because there is no MIME type associated with a BLOB, any application cannot set the BLOB attributes. This means that you cannot create new documents with required BLOB attributes. You can edit existing documents from this document type, but cannot view or edit the BLOB attribute. The BLOB attributes are not recommended as a best practice. The existence of document types with BLOB attributes degrades the performance and scalability because the document types with BLOB attributes are not optimized for multi-item data retrieval.