# KVMetadataType

This enumerated type defines the data type of metadata that can be extracted from a subfile in a mail message or mail store. If a metadata field has a corresponding KeyView type in `KVMetadataType`, the metadata is converted to the KVMetadataElem structure, and the structure member `isDataValid` is `1`. This enumerated type is defined in `kvtypes.h`.

## Definition

    typedef enum
    {
      KVMetadata_Unknown       = 0,
      KVMetadata_Bool          = 1,
      KVMetadata_Binary        = 2,
      KVMetadata_Int4          = 3,
      KVMetadata_UInt4         = 4,
      KVMetadata_Int8          = 5,
      KVMetadata_UInt8         = 6,
      KVMetadata_String        = 7,
      KVMetadata_Unicode       = 8,
      KVMetadata_DateTime      = 9,
      KVMetadata_Float         = 10,
      KVMetadata_Double        = 11,
      KVMetadata_Last
    }
    KVMetadataType;

## Enumerators

`KVMetadata_Unknown` | The value in the property is of an unknown type.
`KVMetadata_Bool` | The value in the property is a Boolean value. The corresponding MAPI type is `PT_BOOLEAN`.
`KVMetadata_Binary` | The value in ``the property is a byte array. The corresponding MAPI type is `PT_BINARY`.
`KVMetadata_Int4` | The value in the property is a signed 4-byte integer. The corresponding MAPI types are `PT_I2`, `PT_SHORT`, `PT_I4`, and `PT_LONG`.
`KVMetadata_UInt4` | The value in the property is an unsigned 4-byte integer. This type is not currently supported.
`KVMetadata_Int8` | The value in the property is a signed 8-byte integer. This type is not currently supported.
`KVMetadata_UInt8` | The value in the property is an unsigned 8-byte integer. This type is not currently supported.
`KVMetadata_String` | The value in the property is a string. The corresponding MAPI type is `PT_STRING8`.
`KVMetadata_Unicode` | The value in the property is a Unicode string. The corresponding MAPI type is `PT_UNICODE`.
`KVMetadata_DateTime` | The value in the property is a date and time. The corresponding MAPI type is `PT_SYSTIME`.
`KVMetadata_Float` | The value in the property is a 4-byte float. The corresponding MAPI type is `PT_FLOAT`.
`KVMetadata_Double` | The value in the property is an 8-byte double. The corresponding MAPI type is `PT_DOUBLE`.

## Discussion

New types might be added to this enumerated type. When you use this type, your code should ensure binary compatibility with future releases. See Programming Guidelines.

_FT_HTML5_bannerTitle.htm