1. An application program interface embodied on one or more computer-readable storage media, the application program interface comprising: calling a first method to create a package that defines a document, wherein the package holds together a plurality of parts which represent different aspects of the document; calling a second method to create a relationship between the package and a particular part in the package; calling a third method to identify one or more relationships between the plurality of parts in the package, wherein each relationship identifies at least one connection between an associated part and at least one other of the plurality of parts, each relationship being stored in a relationships part independent of the plurality of parts, wherein the connections are discovered by analyzing relationships associated with the plurality of parts without looking at the content of the parts; and wherein the plurality of parts facilitates at least displaying the document independent of a platform on the computer.
9. An application program interface as recited in claim 1 , wherein each of the plurality of parts has an associated name.