"Multivalent documents" is a model of documents that addresses some of the shortcomings one currently encounters when manipulating documents in digital form. In the multivalent document model, a document is composed out of distributed data and program resources, called layers and behaviors, respectively. The model exposes virtually all aspects of document processing to behaviors, and provides the means to compose these components into a single coherent document. Behaviors allow the model to be highly extensible, including the capability to be extended to work with arbitrary document formats. We have implemented the model in Java, and developed behaviors that support multiple document types (scanned page images, HTML, and ASCII) and a number of different user-interface metaphors (e.g., "lenses" and "Notemarks"). The multivalent document model enables one to better use digital documents for tasks in which paper documents are still otherwise superior to digital documents, such as annotating someone else's document. We have shown how the model is naturally conducive to realizing powerful forms of distributed, open annotation by implementing a variety of annotation types, some familiar and some novel.