2.4.5 Message Objects

A Message object is a composite structure, but unlike a Folder object, all the data of a Message object is contained in a single top-level node (that is, accessed through a single top-level NID). Both the data block and subnode are used in a Message object node, where the data block contains a PC structure that contains the immediate properties of the Message object, and the subnode contains a number of composite structures that contain information such as the Recipient List and Attachment objects, if any.

Components of a Message object

Figure 11: Components of a Message object

The preceding diagram is an illustration of the various components of a Message object node. The data block contains the Message object PC, which contains the properties associated with this Message object. The subnode of the Message object can contain a number of objects, such as: a Recipient Table TC, an optional Attachment Table TC, optional Attachment object PCs, as well as variable-size data from the Message object PC that cannot fit directly into the Message object PC heap. The subnode BTree contains an array of subnodes that are identified using internal NIDs (that is, unique within the Message object node only). The contents of each subnode are identified primarily by the NID_TYPE. The following table lists the NID_TYPEs that can be found in the subnode of a Message object node.

NID_TYPE

Description

Required?

NID_TYPE_RECIPIENT_TABLE

The subnode is a Message Recipient Table.

Y

NID_TYPE_ATTACHMENT_TABLE

The subnode is an Attachment Table (optional).

N

NID_TYPE_ATTACHMENT

The subnode is an Attachment object.

N

NID_TYPE_LTP

The subnode contains raw LTP data for the Message PC.

N