1. A method of generating an application accessible by a user through one or more computer-based devices, the method comprising the steps of: representing interactions that the user is permitted to have with the one or more computer-based devices used to access the application by interaction-based programming components, wherein the interaction-based programming components are independent of content/application logic and presentation requirements associated with the application, and further wherein the interaction-based programming components may be transcoded on a component by component basis to generate one or more modality-specific renderings of the application renderable in accordance with one or more modality-specific browsers associated with the one or more computer-based devices, such that the interaction-based programming components are independent of any modality and any modality-specific browser; and authoring the application using at least a portion of the interaction-based programming components; wherein representation by the interaction-based programming components permits synchronization of the one or more modality-specific renderings of the application on the one or more computer-based devices.
29. The method of claim 1 , further comprising the step of defining logical input events and an association between the logical input events and physical input events that trigger the defined logical input events, such that the application may be authored using at least a portion of the definitions.