System and method for generating automatic user interface for arbitrarily complex or large databases
DC CAFCFirst Claim
1. A method for operating a server comprising a processor for automatically generating an end-user interface for working with the data within a relational database defined within a relational DBMS whose data is stored in machine-readable media and which is accessible to said server, wherein said relational database comprises a plurality of tables, constraints and relationships stored in said DBMS in accordance with a data model comprising said tables and their column-complements and datatypes, said constraints, and the relationships across said tables, and wherein said relational database may be of any arbitrary size or complexity, said method comprising(a) providing an output stream from said server, for user display and input devices, defining a user interface paradigm comprising a set of modes for interacting with a given database table, said modes comprising create, retrieve, update and delete, and a corresponding display format for each mode;
- (b) causing said server to scan said database and apply a body of rules to determine the table structures, constraints and relationships of said data model, and store representations thereof in machine-readable media accessible to said server; and
(c) causing said server to use said representations to construct a corresponding client application for access through said user display and input devices, wherein said client application provides a connection to said database, provides displays of the table contents of said database for each of said modes in accordance with the display formats of said paradigm, integrates into each said mode display processes for representing, navigating, and managing said relationships across tables, for selecting among said modes, and for navigating across said tables and interacting in accordance the selected mode with the data in the tables that are reached by said navigation, while observing and enforcing relational interdependencies among data across said tables.
1 Assignment
Litigations
3 Petitions
Accused Products
Abstract
A software system automatically and dynamically generates a fully functional user interface (UI) based upon, and connected directly to, an underlying data model (as instantiated within a relational database management system (RDBMS)). The UI derives from an automated interrogation of the RDBMS, and comprises all mode displays (e.g., browse, search, edit, add) for all tables, and a full complement of mechanisms—integrated directly into the mode displays—for representing, navigating, and managing relationships across tables, regardless of the complexity of the underlying RDBMS schema. It utilizes a hierarchical “context stack” for suspending the working state of a particular table while “drilling down” to work with related-table information and return relevant changes to the base table. The embodiment further provides methods to enhance and extend the internal representation of table structures, constraints, relationships, and-special requirements (“business rules”) for improved revelation of the schema structure through external interrogation.
-
Citations
6 Claims
-
1. A method for operating a server comprising a processor for automatically generating an end-user interface for working with the data within a relational database defined within a relational DBMS whose data is stored in machine-readable media and which is accessible to said server, wherein said relational database comprises a plurality of tables, constraints and relationships stored in said DBMS in accordance with a data model comprising said tables and their column-complements and datatypes, said constraints, and the relationships across said tables, and wherein said relational database may be of any arbitrary size or complexity, said method comprising
(a) providing an output stream from said server, for user display and input devices, defining a user interface paradigm comprising a set of modes for interacting with a given database table, said modes comprising create, retrieve, update and delete, and a corresponding display format for each mode; -
(b) causing said server to scan said database and apply a body of rules to determine the table structures, constraints and relationships of said data model, and store representations thereof in machine-readable media accessible to said server; and (c) causing said server to use said representations to construct a corresponding client application for access through said user display and input devices, wherein said client application provides a connection to said database, provides displays of the table contents of said database for each of said modes in accordance with the display formats of said paradigm, integrates into each said mode display processes for representing, navigating, and managing said relationships across tables, for selecting among said modes, and for navigating across said tables and interacting in accordance the selected mode with the data in the tables that are reached by said navigation, while observing and enforcing relational interdependencies among data across said tables. - View Dependent Claims (2, 3)
-
-
4. A computer-implemented system for automatically generating an end-user interface for working with the data within a relational database defined within a relational DBMS whose data is stored in machine-readable media and which is accessible to said system, wherein said relational database comprises a plurality of tables, constraints and relationships in accordance with a data model comprising said tables and their column-complements and datatypes, said constraints, and the relationships across said tables, and wherein said relational database may be of any arbitrary size or complexity, said system comprising a server comprising a processor, said server further comprising:
-
(a) machine-readable routines to provide an output stream for user display and input devices, defining a user interface paradigm comprising a set of modes for interacting with a given database table, said modes comprising create, retrieve, update and delete, and a corresponding display format for each mode; (b) machine-readable routines for scanning said database and applying a body of rules to determine the table structures, constraints and relationships of said data model, and for storing representations thereof; and (c) machine-readable routines for using said representations to construct a corresponding client application, wherein said client application provides a connection to said database, provides displays of the table contents of said database for each of said modes in accordance with the display formats of said paradigm, integrates into each said mode display processes for representing, navigating, and managing said relationships across tables, for selecting among said modes, and for navigating across said tables and interacting in accordance the selected mode with the data in the tables that are reached by said navigation, while observing and enforcing relational interdependencies among data across said tables.
-
-
5. A computer-readable storage medium containing a set of instructions for a general purpose computer, for automatically generating an end-user interface for working with the data within a relational database, wherein said relational database comprises a plurality of tables, constraints and relationships in accordance with a data model comprising said tables and their column-complements and datatypes, said constraints, and the relationships across said tables, and wherein said relational database may be of any arbitrary size or complexity, said set of instructions comprising:
-
(a) a routine for providing a user interface paradigm comprising a set of modes for interacting with a given database table, said modes comprising create, retrieve, update and delete, and a corresponding display format for each mode; (b) a routine for scanning said database and applying a body of rules to determine the table structures, constraints and relationships of said data model, and for storing representations thereof; and (c) a routine for using said representations to construct a corresponding client application, wherein said client application provides a connection to said database, provides displays of the table contents of said database for each of said modes in accordance with the display formats of said paradigm, integrates into each said mode display processes for representing, navigating, and managing said relationships across tables, for selecting among said modes, and for navigating across said tables and interacting in accordance the selected mode with the data in the tables that are reached by said navigation, while observing and enforcing relational interdependencies among data across said tables. - View Dependent Claims (6)
-
Specification