Model content provider with reusable components for supporting a plurality of GUI API's
First Claim
1. A computer system to support a plurality of graphical user interface (GUI) application programming interfaces (APIs), the computer system comprising:
- a processor executing a query assist tool, the processor being a hardware component within the computer system, the query assist tool comprising;
a model content provider in communication with a query model, the query model comprising a plurality of elements that represents a database statement, wherein the model content provider translates the plurality of elements of the 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 the model content provider in communication with the query model, the plurality of elements representing a database statement;
a first content viewer in communication with the model content provider, the first content viewer supporting multiple GUI APIs, wherein the first content viewer passes the translated objects from the model content provider to the first content viewer in communication with the model content provider, the first content viewer supporting multiple GUI APIs; and
a second content viewer 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, wherein the translated objects are passed from the first content viewer to the second content viewer, and wherein the second content viewer manipulates the translated objects into one or more types of data structures required by the specific GUI API for use by the application.
3 Assignments
0 Petitions
Accused Products
Abstract
A user-friendly query modeling tool, for representing, creating, modifying and modeling a query language statement for use in retrieving data from a database. In accordance with the present invention, the tool includes a user interface for receiving or building and manipulating a query, a query model definition for use in populating instances of one or more query models, and a model content provider for receiving query elements from the user interface and providing them to the query model, and conversely, for retrieving query elements from the query model and providing them to the user interface. The model content provider has a hierarchical architecture including lower level API specific components for supporting a plurality of GUI API'"'"'S, and higher level API-independent, reusable components. This architecture facilitates scalability in terms of adding support for new API'"'"'s.
-
Citations
21 Claims
-
1. A computer system to support a plurality of graphical user interface (GUI) application programming interfaces (APIs), the computer system comprising:
a processor executing a query assist tool, the processor being a hardware component within the computer system, the query assist tool comprising; a model content provider in communication with a query model, the query model comprising a plurality of elements that represents a database statement, wherein the model content provider translates the plurality of elements of the 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 the model content provider in communication with the query model, the plurality of elements representing a database statement; a first content viewer in communication with the model content provider, the first content viewer supporting multiple GUI APIs, wherein the first content viewer passes the translated objects from the model content provider to the first content viewer in communication with the model content provider, the first content viewer supporting multiple GUI APIs; and a second content viewer 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, wherein the translated objects are passed from the first content viewer to the second content viewer, and wherein the second content viewer manipulates the translated objects into one or more types of data structures required by the specific GUI API for use by the application. - View Dependent Claims (2, 3, 4, 5, 6)
-
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. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method for supporting a plurality of graphical user interface (GUI) application programming interfaces (APIs), the method being performed by a computer, the 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 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. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
-
21. A model content provider for supporting a plurality of graphical user interface (GUI) application programming interfaces (APIs), the model content provider stored in a storage device and being implemented by a computer, the model content provider configurable to:
-
translate 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 the model content provider in communication with the query model, the plurality of elements representing a database statement; pass the translated objects to a first content viewer in communication with the model content provider, the first content viewer supporting multiple GUI APIs; pass 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 use 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.
-
Specification