Patent ID: 7305669

Claim:
A method implemented by a computer to provide access to a software program, the method comprising: receiving a client request to invoke the software program, the client request including information that can be used to determine a particular version of the software program that the client request is compatible with; determining, based upon the information in the client request whether the client request is compatible with a current version of the software program; if the client request is compatible with the current version of the software program, forwarding the request to the current version of the software program; if the client request is not compatible with the current version of the software program: determining whether the current version is higher or lower than the particular version; if the current version is higher than the particular version: translating the client request into a higher version translated request that is compatible with the current version of the software program, wherein translating the client request into a higher version translated request comprises using a higher version translator object; and forwarding the higher version translated request to the current version of the software program; if the current version is lower than the particular version: translating the client request into a lower version translated request that is compatible with the current version of the software program, wherein translating the client request into a lower version translated request comprises using a lower version translator object; and forwarding the lower version translated request to the current version of the software program.