1.1 Glossary

This document uses the following terms:

address book container: An Address Book object that describes an address list.

Address Book object: An entity in an address book that contains a set of attributes, each attribute with a set of associated values.

Attachment object: A set of properties that represents a file, Message object, or structured storage that is attached to a Message object and is visible through the attachments table for a Message object.

attachments table: A Table object whose rows represent the Attachment objects that are attached to a Message object.

code page: An ordered set of characters of a specific script in which a numerical index (code-point value) is associated with each character. Code pages are a means of providing support for character sets and keyboard layouts used in different countries. Devices such as the display and keyboard can be configured to use a specific code page and to switch from one code page (such as the United States) to another (such as Portugal) at the user's request.

contents table: A Table object whose rows represent the Message objects that are contained in a Folder object.

Coordinated Universal Time (UTC): A high-precision atomic time standard that approximately tracks Universal Time (UT). It is the basis for legal, civil time all over the Earth. Time zones around the world are expressed as positive and negative offsets from UTC. In this role, it is also referred to as Zulu time (Z) and Greenwich Mean Time (GMT). In these specifications, all references to UTC refer to the time at UTC-0 (or GMT).

distribution list: A collection of users, computers, contacts, or other groups that is used only for email distribution, and addressed as a single recipient.

Folder object: A messaging construct that is typically used to organize data into a hierarchy of objects containing Message objects and folder associated information (FAI) Message objects.

global identifier: A form of encoding for an internal identifier that makes it unique across all stores. Global identifiers are a subset of external identifiers, and they consist of a REPLGUID followed by a 6-byte global counter.

globally unique identifier (GUID): A term used interchangeably with universally unique identifier (UUID) in Microsoft protocol technical documents (TDs). Interchanging the usage of these terms does not imply or require a specific algorithm or mechanism to generate the value. Specifically, the use of this term does not imply or require that the algorithms described in [RFC4122] or [C706] must be used for generating the GUID. See also universally unique identifier (UUID).

handle: Any token that can be used to identify and access an object such as a device, file, or a window.

hierarchy table: A Table object whose rows represent the Folder objects that are contained in another Folder object.

little-endian: Multiple-byte values that are byte-ordered with the least significant byte stored in the memory location with the lowest address.

Logon object: A Server object that provides access to a private mailbox or a public folder. A client obtains a Logon object by issuing a RopLogon remote operation (ROP) to a server.

long ID (LID): A 32-bit quantity that, in combination with a GUID, defines a named property.

mail user: An Address Book object that represents a person or entity that can receive deliverable messages.

Message object: A set of properties that represents an email message, appointment, contact, or other type of personal-information-management object. In addition to its own properties, a Message object contains recipient properties that represent the addressees to which it is addressed, and an attachments table that represents any files and other Message objects that are attached to it.

message store: A unit of containment for a single hierarchy of Folder objects, such as a mailbox or public folders.

multibyte character set (MBCS): An alternative to Unicode for supporting character sets, like Japanese and Chinese, that cannot be represented in a single byte. Under MBCS, characters are encoded in either one or two bytes. In two-byte characters, the first byte, or "lead" byte, signals that both it and the following byte are to be interpreted as one character. The first byte comes from a range of codes reserved for use as lead bytes. Which ranges of bytes can be lead bytes depends on the code page in use. For example, Japanese code page 932 uses the range 0x81 through 0x9F as lead bytes, but Korean code page 949 uses a different range.

named property: A property that is identified by both a GUID and either a string name or a 32-bit identifier.

property ID: A 16-bit numeric identifier of a specific attribute. A property ID does not include any property type information.

property name: A string that, in combination with a property set, identifies a named property.

property set: A set of attributes, identified by a GUID. Granting access to a property set grants access to all the attributes in the set.

property tag: A 32-bit value that contains a property type and a property ID. The low-order 16 bits represent the property type. The high-order 16 bits represent the property ID.

property type: A 16-bit quantity that specifies the data type of a property value.

public folder: A Folder object that is stored in a location that is publicly available.

recipient table: The part of a Message object that represents users to whom a message is addressed. Each row of the table is a set of properties that represents one recipient.

remote operation (ROP): An operation that is invoked against a server. Each ROP represents an action, such as delete, send, or query. A ROP is contained in a ROP buffer for transmission over the wire.

ROP buffer: A structure containing an array of bytes that encode a remote operation (ROP). The first byte in the buffer identifies the ROP. This byte is followed by ROP-specific fields. Multiple ROP buffers can be packed into a single remote procedure call (RPC) request or response.

ROP request: See ROP request buffer.

ROP request buffer: A ROP buffer that a client sends to a server to be processed.

ROP response: See ROP response buffer.

ROP response buffer: A ROP buffer that a server sends to a client to be processed.

Server object: An object on a server that is used as input or created as output for remote operations (ROPs).

Server object handle: A 32-bit value that identifies a Server object.

Server object handle table: An array of 32-bit handles that are used to identify input and output Server objects for ROP requests and ROP responses.

Store object: An object that is used to store mailboxes and public folder content.

Stream object: A Server object that is used to read and write large string and binary properties.

string property: A property whose property type is PtypString8 or PtypString.

tagged property: A property that is defined by a 16-bit property ID and a 16-bit property type. The property ID for a tagged property is in the range 0x001 – 0x7FFF. Property IDs in the range 0x8000 – 0x8FFF are reserved for assignment to named properties.

Unicode: A character encoding standard developed by the Unicode Consortium that represents almost all of the written languages of the world. The Unicode standard [UNICODE5.0.0/2007] provides three forms (UTF-8, UTF-16, and UTF-32) and seven schemes (UTF-8, UTF-16, UTF-16 BE, UTF-16 LE, UTF-32, UTF-32 LE, and UTF-32 BE).

MAY, SHOULD, MUST, SHOULD NOT, MUST NOT: These terms (in all caps) are used as defined in [RFC2119]. All statements of optional behavior use either MAY, SHOULD, or SHOULD NOT.