1. A method for providing a user interface in a computer, comprising: providing a template that represents data and functions for a user interaction for the user interface, wherein the user interaction is defined generically with respect to the user interface; providing an interaction-specific decoder for the computer to present the user interface with the data and functions according to the interaction; deriving a class from the template, the class defining specific parameters to add particulars of a data-type while preserving the interaction to provide a user interaction specific to the user interface; instantiating the class with data, in accordance with the particulars of the data-type; and evoking the decoder to read the instantiated class and to present the user interface according to the user interaction.