Patent ID: 7770103

Claim:
A computer program product, tangibly embodied in a machine-readable storage device, the computer program product comprising instructions operable to cause a data processing apparatus to perform operations on a server comprising: providing a server-side framework to an application on said server, the server-side framework comprising a controller and a view external to the application, the framework supporting a plurality of predefined data types, each data type having a predefined rule; receiving in the controller from the application a request for an object, the request indicating one of the plurality of predefined data types; creating, by the controller, the object in response to the request, the object storing a default value of the indicated data type, the default value being stored in the object in a transfer format and in a process format, the process format being different from the transfer format, wherein the controller causes the view to retrieve the default value in the transfer format from the object; generating a markup language page including the default value in the transfer format; sending, by the view, the markup language page to a browser on a client; receiving, in the controller, a user-supplied value in the transfer format from the browser, wherein the controller sends the user-supplied value to the object; replacing in the object the default value in the transfer format with the user-supplied value in the transfer format, the object automatically converting the user-supplied value from the transfer format to the process format, the object storing the user-supplied value in the process format, the object automatically checking the compliance of the user-supplied value in the process format with the predefined rule; and if the user-supplied value in the process format complies with the predefined rule, forwarding, by the object, the user-supplied value in the process format from the object to the application and otherwise the controller causes the view to automatically resend the markup language page to the browser with the user-supplied value in the transfer format.