A data store is provided for storing, relating and for allowing use of
data associated with a computer-generated document. Data for structuring
information associated with a document, such as document metadata, is
maintained in the data store where relationships between different pieces
of data are maintained in a location distinct from the surface level view
of a document. The data store exposes interfaces to the various pieces of
data in the data store for allowing different applications to access and
operate on one or more of the data pieces. The pieces of data may be
structured according to a markup language such as the Extensible Markup
Language (XML), and XML schemas may be associated with each piece of data
for allowing the data store to validate the structure applied to the data
based on an XML schema associated with a given piece of data.