Search This Blog

Monday, June 27, 2011

Repository Objects and Storage

Persistent Objects
Those object that are stored in the repository on permanent basis. Type of the persistent object is called persistent type. These objects have following properties:
r_object_id: Unique identifier that helps in identifying the object and is assigned by the Content Server.
i_is_replica: This is used in replication and tells whether an object is a replica of another in a different repository.
i_vstamp: This is used internally and holds the number of committed transactions that have altered this object.
Non Persistent Objects
Those object that are not stored in the repository. They are created during a session and vanish when session ends.
Object Naming
ObjectId represents type of object, repository id and unique id. For example an object id 0900055080007FIC
09 – Represents Type of the Object
000550 – Represents repository id
80007FIC Unique id
Type Storage
The Content server stores properties of each object type in up to 2 database tables:
TypeName_s (Single valued property)
TypeName_r (Repeating valued property)
Note:
1). Object type dm_folder contains no single-valued attributes of its own so its properties are stored only in one table dm_folder_r.
2). Object type dm_cabinet contains no repeating valued attributes so it has only dm_cabinet_s table.
3). Object type dm_document has no unique properties of its own so all of its properties are stored in dm_sysobject tables.
Type Name and Property Name
a).Each object type has a label and internal name. For example the object type dm_document has the label Document. For content server, internal names start with the word dm. For example:
·         dm_ : represents general objects such as dm_document, which is used for storing documents.
·         dmr_ : represents read-only object type such as dmr_content, which stores information about the content file.
·         dmi_ : represents internal object type such as dmi_workitem, which stores information about a task.
·         dmc_ : represents object types supporting Documentum client applications. For example, Collaboration services use object such as dmc_calendar.
b).Each property like an object type also has a label and internal name. For example, the label for property object_name is Name. Following prefixes are used with properties:
·         Property name starting with r_  exhibits following characteristics:
a)      It is read only and cannot be modified by users or applications.
b)      It is controlled by the Content Server.
Example: r_object_id represents the unique ID for the object while r_version_label on the other hand is a repeating property has at least one value supplied by the Content Server while others may be supplied by users or applications.

·         Property name starting with i_ exhibits following characteristics:
a)      It is internal property and cannot be seen by users or applications
b)      The property is used internally by the Content Server
Example: i_chronical_id property binds all the versions together into a version tree and managed by the Content Server

·         Property name starting with a_ exhibits following characteristics:
a)      It is intended to be used by applications.
b)      It can be modified by applications and users
Example: a_content_type property is used to store the format of the document. This property helps WebTop to launch the appropriate desktop application to open the document.

·         Property name starting with _ (underscore) exhibits following characteristics:
a)      This property is normally read-only for applications and not stored in the repository.
b)      Content server computes it as required.
c)       Many computed properties are related to security while other used to store caching information in the user session.
Example: Each object in the repository has a property _changed, which indicated whether it has been changed since it was last saved.
Type Category
Object types are divided into various categories for internal processing by the Content Server. Here are these categories:
Standard: Most of the commonly used types are standard types.
Shareable: These objects are used in conjunction with the lightweight object types. A single instance of shareable type can be shared among many lightweight objects.
Lightweight: These objects are used to minimize storage for multiple objects that share common system information. The shared properties reside in an instance of a shareable type while rest of the properties in the lightweight objects. A lightweight type is a subtype of a shareable type.
Data Table: This is a collaboration feature that facilitates user to manage structured collection of information.
Aspect property: Aspects enable addition of properties to any object regardless of its type. Users and client applications are not aware of these types.
The Content server uses dm_type.type_category property of the object type to determine the object category.
Value
Category Description
0
Standard object type
1
Aspect property object type
2
Shareable object type
4
Lightweight object type
8
Data table type


No comments:

Post a Comment