Model: a tree of components
Problem: Different parts of documents are best constructed by different applications.
- (and the parts don’t map to pages)
Solution: Documents are composed of components created in different applications.
- E.g. OLE, OpenDoc, SGML
- Assumes a wrapper format
- Other examples: DOM, Java Document Model, various C++ document models