26. The method of claim 24 , wherein the at least one structured document comprises a hypertext markup language (HTML) structured document.
24. A method performed by a provisioning source that provisions at least one mobile software application to a mobile computing device, the method comprising: receiving, by a provisioning source, from a mobile computing device, via network interface means configured for communicating with the mobile computing device, a request to download at least one mobile software application from the provisioning source to the mobile computing device, wherein the provisioning source comprises computer processor means, non-transitory computer readable memory means operatively connected to the computer processor means, and configured to store executable computer code and the at least one mobile software application, and wherein the at least one mobile software application comprises executable computer code, at least one structured document, and wherein the mobile computing device comprises computer processor means configured to execute computer code, non-transitory computer readable memory means operatively connected to the computer processor means and configured to store the at least one mobile software application, and network interface means configured to communicate with the provisioning source; and sending, by the provisioning source, via the network interface means configured for communicating with the mobile computing device, the requested at least one mobile software application to the mobile computing device, wherein when stored on the non-transitory computer readable memory means of the mobile computing device and when executed by the computer processor means of the mobile computing device, the downloaded mobile software application will perform a method for using the mobile software application on the mobile computing device, the method to be performed comprising: executing, by the mobile computing device, the mobile software application received from the provisioning source, the mobile software application including programming code and the at least one structured document that together describe at least a portion of functionality provided by the mobile software application; populating, by an abstraction layer executing on the mobile computing device, a Document Object Model (“DOM”) structure, the DOM structure at least in part representing the running state of the mobile software application consistent with the portion of functionality provided by the mobile software application described in the received at least one structured document and the received programming code; presenting, by the abstraction layer, a device-independent application user interface responsive to the DOM structure; receiving, by the mobile software application, a user input event from within the rendered device-independent application user interface; receiving, by programming code referenced by the DOM structure, from the abstraction layer, the input event; reconfiguring, by the programming code referenced by the DOM structure, in response to the received input event, the DOM structure to update the running state of the mobile software application based on a response by the mobile software application, to the received input event; and updating, by the abstraction layer, the device-independent application user interface, responsive to the reconfiguring of the DOM structure.