We present a data model for office documents and a practically useful algebraic language for the retrieval and manipulation of such objects. A document in our model is represented in a structured form, called a 'frame instance'. Users can group different frame instances into a folder. Our algebra offers operations to manipulate both frame instances and folders. We extend the classical relational algebra by associating attributes with types, and supporting attribute inheritance. We also provide aggregate operators which can be applied to different frame instances in a folder. The proposed algebra is used as a sound basis to express the semantics of a high level query language for an office information system.