Patent ID: 7451156

Claim:
An application program interface embodied on one or more computer-readable storage media, comprising: calling a first method to create a package that defines at least one of a plurality of versioned documents, wherein the package comprises at least a first and a second part that make up the at least one of a plurality of versioned documents, wherein the first and second part are defined in the package, wherein the first and the second part each have an associated name, and wherein the at least one of a plurality of versioned documents and its parts are described using extensible markup language (XML); calling a second method to create a relationship, wherein the relationship identifies connections to relate the second part to the first part in the package, the relationship being stored in an independent relationship part in the package, wherein the relationship part is associated with the first part, wherein the connections are discovered by analyzing relationships associated with the first and the second part in the package without looking at content in the first and the second part, and wherein the relationship part is written in the extensible markup language (XML); and calling a third method to identify relationships between relationship parts in the package and store the relationships in the independent relationship part in the package.