7. A non-transitory computer-readable medium including program instructions for supporting a plurality of graphical user interface (GUI) application programming interfaces (APIs), the program instructions which when executed by a computer system cause the computer system to execute a method comprising: translating a plurality of elements of a query model into objects that are independent of any type of data structure associated with the plurality of GUI APIs, the plurality of elements being translated through use of a model content provider in communication with the query model, the plurality of elements representing a database statement; passing the translated objects from the model content provider to a first content viewer in communication with the model content provider, the first content viewer supporting multiple GUI APIs; passing the translated objects from the first content viewer to a second content viewer, the second content viewer being in communication with the first content viewer and a GUI application written to run on a specific GUI API of the plurality of GUI APIs, wherein the first and second content viewers interface with the model content provider within a GUI-model infrastructure, wherein the first and second content viewers are defined by a hierarchical set of classes, wherein the first content viewer is a higher level, non-GUI specific structure that is created without regard to which GUI API will be used, wherein the second content viewer is a lower level GUI-specific structure that is created specifically to the GUI API with which it communicates; and using the second content viewer to manipulate the translated objects into one or more types of data structures required by the specific GUI API for use by the application.
7. A non-transitory computer-readable medium including program instructions for supporting a plurality of graphical user interface (GUI) application programming interfaces (APIs), the program instructions which when executed by a computer system cause the computer system to execute a method comprising: translating a plurality of elements of a query model into objects that are independent of any type of data structure associated with the plurality of GUI APIs, the plurality of elements being translated through use of a model content provider in communication with the query model, the plurality of elements representing a database statement; passing the translated objects from the model content provider to a first content viewer in communication with the model content provider, the first content viewer supporting multiple GUI APIs; passing the translated objects from the first content viewer to a second content viewer, the second content viewer being in communication with the first content viewer and a GUI application written to run on a specific GUI API of the plurality of GUI APIs, wherein the first and second content viewers interface with the model content provider within a GUI-model infrastructure, wherein the first and second content viewers are defined by a hierarchical set of classes, wherein the first content viewer is a higher level, non-GUI specific structure that is created without regard to which GUI API will be used, wherein the second content viewer is a lower level GUI-specific structure that is created specifically to the GUI API with which it communicates; and using the second content viewer to manipulate the translated objects into one or more types of data structures required by the specific GUI API for use by the application. 8. The computer-readable medium of claim 7 wherein the one or more types of data structures comprise tables, trees, or lists.