Custom Types in Documentum

4 min read

Custom Types

Documentum provides a large number of built-in object types that support the functionality of the platform. Some object types are general purpose and can be used for business purposes as well. However, all possible business needs can neither be anticipated nor supported by default. Therefore, Documentum allows creation of new object types, which are called custom types. This article addresses creation and management of custom types.

Before reading this article, it would be helpful to know about Objects and Types, since the majority of the concepts pertaining to object types apply here as well. Some concepts are explained here.

Managing Custom Types

A user-defined object type is called a custom type and the user-defined properties are called custom properties. Properties are also known as attributes. Custom types can be created, modified, and removed as long as certain rules are followed. This section describes the detail around managing custom types.

Creating a Custom Type

A custom type can be created using Documentum Application Builder (DAB), using Documentum Administrator (DA), or using DQL/API scripts. DAB is the most commonly used application for creating custom types since it fully supports the data dictionary (see Data Dictionary later in this article) and it has a Graphical User Interface (GUI) specifically designed for creating and managing custom types.

Further, DAB can also be used for packaging the types into a DocApp. The following screenshot shows the DAB screen for creating and updating a custom type:

Custom Types in Documentum

DA provides basic support for managing custom types. For example, DA does not provide an interface for defining value assistance for a property. The following screenshot shows the screen for creating and updating custom types in DA:

Creating a custom type is a privileged operation and only the users with following privileges can do so:

  • Create Type
  • Sysadmin
  • Superuser       

The user creating the type becomes the owner of the type.

A custom type can extend an existing type through inheritance (see Type Hierarchy in Documentum). A new custom type can have an existing custom type or one of the sets of Documentum object types as its supertype. The most common supertype for a new custom type for representing documents is dm_document.

It is also possible to create a custom type without a supertype. Such a type is called a NULL type. Only a user with Superuser privilege can create a NULL type. A NULL type is useful for storing data that does not need the usual object management features such as versioning. There are several built-in types that are NULL types such as dm_user, dm_session, and dm_alias_set. If a custom type is intended to only store non-versionable data, a NULL type may be appropriate for this purpose. Recall that any given type uses up to two tables (one for single-valued properties and one for repeating) of its own for storing non-inherited properties of its objects. There are additional views for retrieving all the properties together. The following key information is needed or captured in DAB when creating a new custom type:





Name of the type. A type name must be unique (caseinsensitive) in the repository and can be up to 27 characterslong. The additional constraints on the type name are that itcannot contain a space or punctuation nor can it be same asany DQL reserved word, such as SELECT or WHERE.

Further, it cannot start with dm_, dmi, dmr_, a number,

space, or a single quote. It is recommended that a custom

prefix be used for custom type names to distinguish them

from the other types.


The user creating the type.


The supertype of the new type. This can be NULL.


User-friendly version of the name, for display purposes in

Documentum client applications.

Default Lifecycle

A lifecycle that can be attached to a document of this type,

without identifying the lifecycle explicitly.

Default Storage Area

A storage area identifies where the content files are stored

for objects. The default storage area identifies where the

content files for objects of this type will be stored by default.

Default Permission Set

The default permission set is used when the default ACL

mode for the Content Server is set to Type.

In this case, a new object of this type gets this permission set.

Template Document

One or more template documents can be created for the

type, which are available to users when they are creating a

new object of this type. The template documents are stored

in the Templates cabinet in Documentum repository.


Please enter your comment!
Please enter your name here