2.4.2.2 Named Properties

Named properties are a special type of properties which reside in a reserved range of property identifier values (that is, WORD values between 0x8000 and 0x8FFF). Named properties, unlike standard properties, have names and meanings that are context-specific.

The assignment of named property identifiers is sequential and starts from 0x8000. The first named property in the message store has a property identifier of 0x8000, followed by 0x8001, and so on. A mapping exists to map these property identifiers to property names. Note that a named property only maps a property identifier to a property name (which is a (GUID, Value) pair), but it says nothing about the data type of the named property. The data type of the named property is specified in property tag when the property is actually used (or stored). The effective scope of named properties is limited to the current PST only. In other words, the same named property identifier (for example, 0x8003) might map to different properties in different PSTs.

There are two ways to map a named property identifier (NPID) to a property name, the first way is to associate the NPID to a (GUID, string) value pair, and the second way is to associate the NPID to a (GUID, NameID) value pair. Each PST contains a special construct to provide the mapping between NPIDs to their property names. The technical details of this mapping mechanism are quite involved, and is presented in section 2.4.7.