OLE Property Set

From Just Solve the File Format Problem
Revision as of 14:34, 27 July 2018 by Jsummers (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
File Format
Name OLE Property Set
Ontology

OLE Property Set is a Microsoft serialization and metadata format. It does not typically appear in a file by itself, but is used in some file formats, especially formats based on Microsoft Compound File format.

Contents

Disambiguation

OLE Property Set Storage is a particular kind of Microsoft Compound File that contains Property Sets. OLE Structured Storage apparently means something similar, or it might refer to the related APIs and ecosystem.

The data structure that is the main topic of this article (the one that begins with a "ByteOrder" field) may be more properly called a Property Set Stream. This structure usually contains exactly one set of properties, but for historical reasons, the "DocSummaryInformation" FMTID (and only that FMTID) is allowed to contain two sets of properties.

Format details

Each property is identified by a coded integer, but (with a few exceptions) the codes are not unique. Each property set has an "FMTID" field in the form of a GUID, which must be taken into account to make sense or the properties. Some FMTIDs and their associated properties are defined in the main specification, but for most you must look elsewhere. Sometimes there is a "Dictionary" segment that reveals the names of the properties.

Though the format implies that big-endian byte order could be possible, the modern specification only allows little-endian byte order.

Identification

A Property Set stream usually begins with bytes 0xfe 0xff.

This field is named "ByteOrder", but be careful. While it resembles a UTF-16 Byte Order Mark, it works in the exact opposite way.

Related formats

Specifications

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox