Patent ID: 8645944

Claim:
A method for deploying a server-side solution artifact to a client-side application program, comprising: receiving an instruction to deploy the server-side solution artifact to the client-side application program, wherein the server-side solution artifact comprises a collection of organized data in a first representation, wherein the client-side application operates in a second representation, and wherein the client-side application is unable to interface with the collection of organized data in the first representation; upon receiving the instruction, determining whether a package associated with the solution artifact and the client-side application program was previously generated, wherein the package comprises one or more application-specific metadata files and a solution manifest that enable the client-side application program operating in the second representation to access the collection of organized data in the first representation when the client-side application program is offline; upon determining that the package was previously generated, determining whether the package is current; upon determining that the package is not current or that the package was not previously generated, generating the package based on the solution artifact and the client-side application program, comprising: generating the one or more application-specific metadata files associated with the solution artifact and the client-side application program, the one or more application-specific metadata files configured to be accessed by the client-side application program, the one or more application-specific metadata files containing the same collection of organized data as provided in the solution artifact; and generating the solution manifest, the solution manifest enabling the client-side application program to install the one or more application-specific metadata files; and upon determining that the package is current or upon generating the package, deploying the package to the client-side application program, wherein the client-side application program operating in the second representation uses the package to access the collection of organized data.