DATABASE QUERY BUILDER
First Claim
1. A system comprising:
- one or more processors;
a database schema including a plurality of data sources, each data source including one or more fields for storing data, and metadata defining relationships amongst the fields within or between data sources;
a schema parser executed by at least one of the processors and configured to determine one or more datasets of data stored within or referenced from the database schema, wherein a dataset includes one or more fields from the database schema and represents the data stored in the one or more fields;
an input handler executed by at least one of the processors and configured to receive a user'"'"'s selection of one or more of the datasets via a graphical user interface, wherein the input handler is configured to determine that a first graphical icon representing a first dataset is graphically associated within the graphical user interface with a second graphical icon representing a second dataset;
a translation engine executed by at least one of the processors and configured to provide operations for refining the data of the selected datasets into a result set via a query, wherein the translation engine is configured to determine which operations to provide based on the relationships identified by the metadata, wherein the translation engine is configured to provide, responsive to the graphical association of the first and second icons, operations to perform between the first dataset and the second dataset, wherein the operations are determined based on the relationships of the datasets as stored or derived from the metadata,wherein the input handler is configured to receive a selection of one of the operations provided by the translation engine; and
a query engine executed by at least one of the processors and configured to provide a graphical depiction of the query via the interface, the graphical query including operational flow indicators indicating a directional flow of the query from the selected datasets with the selected operation resulting in the result set.
1 Assignment
0 Petitions
Accused Products
Abstract
A schema parser may determine one or more datasets of a database schema, wherein the datasets include one or more fields from a data source and represents data corresponding to the one or more fields. An input handler may receive a selection of one or more of the datasets via an interface. A translation engine may provide operations for refining the data of the selected datasets into a result set via a query, wherein the operations may be determined based on metadata defining relationships amongst the data sources and fields. A query engine may provide a graphical query including operational flow indicators indicating a directional flow of the query from the selected datasets with the selected operation to the result set.
50 Citations
48 Claims
-
1. A system comprising:
-
one or more processors; a database schema including a plurality of data sources, each data source including one or more fields for storing data, and metadata defining relationships amongst the fields within or between data sources; a schema parser executed by at least one of the processors and configured to determine one or more datasets of data stored within or referenced from the database schema, wherein a dataset includes one or more fields from the database schema and represents the data stored in the one or more fields; an input handler executed by at least one of the processors and configured to receive a user'"'"'s selection of one or more of the datasets via a graphical user interface, wherein the input handler is configured to determine that a first graphical icon representing a first dataset is graphically associated within the graphical user interface with a second graphical icon representing a second dataset; a translation engine executed by at least one of the processors and configured to provide operations for refining the data of the selected datasets into a result set via a query, wherein the translation engine is configured to determine which operations to provide based on the relationships identified by the metadata, wherein the translation engine is configured to provide, responsive to the graphical association of the first and second icons, operations to perform between the first dataset and the second dataset, wherein the operations are determined based on the relationships of the datasets as stored or derived from the metadata, wherein the input handler is configured to receive a selection of one of the operations provided by the translation engine; and a query engine executed by at least one of the processors and configured to provide a graphical depiction of the query via the interface, the graphical query including operational flow indicators indicating a directional flow of the query from the selected datasets with the selected operation resulting in the result set. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer-implemented method of constructing a query with which to retrieve information from a database, the method comprising:
-
receiving one or more keywords input from a user; determining, by at least one processor of a computer system, a first dataset identified in a schema of the database based on the received one or more keywords; determining, by at least one processor of the computer system, a second dataset identified in the schema of the database based on input from the user; representing graphically, by a display of the computer system, the determined first dataset as a first icon and the determined second dataset as a second icon in a canvas presented to the user; receiving information that the user has graphically associated the first icon with the second icon on the canvas; in response to the user'"'"'s graphical association of the first and second icons, generating a combination dataset of the first and second datasets; representing graphically the combination dataset as a third icon in the canvas and representing graphically in the canvas a relationship between the combination dataset and the first and second datasets; constructing, by at least one processor of the computer system, a machine-readable structured query based on the first dataset, the second dataset, the combination dataset and the relationship between the first dataset, the second dataset, the combination dataset; and returning data from the database, the returned data corresponding to an execution of the machine-readable structured query against the database. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
-
25. A method of constructing a query with which to retrieve information from a database, the method comprising:
-
representing graphically a first dataset of a database as a first icon and a second dataset of the database as a second icon in a canvas presented to a user on a display of a computer system; receiving an indication to combine the first dataset with the second dataset, wherein the indication is received in response to the first icon being graphically associated with the second icon in the canvas; based on the received indication, presenting to the user on the display of the computer system options for combining elements of the first and second datasets; in response to the user'"'"'s selection of one of the presented options, generating a third icon in the canvas representing a combination dataset of elements of the first and second datasets; representing user-defined relationships between the first and second datasets and the combination dataset as a connected graph of the first, second and third icons, wherein the connected graph presents a graphical representation of the query to the user; constructing, by at least one processor of the computer system, a machine-readable structured query based on the connected graph; and returning data from the database, the returned data corresponding to an execution of the machine-readable structured query against the database. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A system comprising:
-
one or more processors; an input handler executed by at least one of the processors and configured to receive a keyword by which to search a content index of a database for a corresponding data source from a plurality of data sources associated with the database, the data sources including metadata, fields and data populating the database; a search engine executed by at least one of the processors and configured to search the content index for the keyword, and to provide metadata, a data source, a field and/or a data list from the content index corresponding to the keyword; the input handler being configured to receive a selection from the metadata, data source, field and/or data list; a query engine executed by at least one of the processors and configured to provide, responsive to the selection of the metadata, data source, field and/or data list, a first graphical icon in a graphical user interface, the first graphical icon representing the selected metadata, data source, field and/or data list and to provide in the graphical user interface a second graphical icon representing a corresponding second data source, second field and/or second data list, wherein the input handler is configured to determine that the first graphical icon is graphically associated within the graphical user interface with the second graphical icon; and a translation engine configured to provide, responsive to the graphical association of the first and second graphical icons, a list of operations to perform between the selected metadata, data source, field and/or data list and the second data source, second field and/or second data list, wherein the query engine is configured to query the database using query parameters based on the selected data source, field and/or data list, the second data source, second field and/or second data list and an operation selected from the list of operations. - View Dependent Claims (36, 37, 38, 39, 40)
-
-
41. A computer-implemented method comprising:
-
determining, by at least one processor of a computer system, based on metadata associated with data of a database, which of a plurality of operations may be performed on one or more datasets associated with a graphical query displayed to a user through a graphical user interface on a display of the computer system; determining, from the metadata, one or more natural language expressions (NLEs) of the operations; determining, from the graphical query, an alias corresponding to one or more of the datasets, wherein the alias includes a user-provided phrase by which to refer to the corresponding dataset; providing the one or more NLEs of the operations including the aliases of the one or more datasets to a user via the interface; receiving a selection by the user of one of the provided operations; and rendering, in the graphical query, a graphical depiction of the selected operation on the one or more datasets. - View Dependent Claims (42, 43)
-
-
44. A computer-implemented method comprising:
-
providing a graphical user interface displayed to a user on a display of a computer system, the interface being configured to allow the user to generate a graphical representation of a structured query for data of a database; receiving, via the graphical user interface, selections of dataset icons corresponding to respective datasets of the database, indications of graphical associations between two or more dataset icons, and operations to perform on the datasets, wherein at least one of the operations is selected from a plurality of operations that are provided based on an indication of a graphical association between the two or more dataset icons; generating, by at least one processor of the computer system, the graphical representation of the structured query in the graphical user interface based on the selections of the dataset icons and the operations to perform on the datasets, the graphical representation including the dataset icon and/or a representation of a selected operation; generating, by at least one processor of the computer system, the structured query based on the graphical representation; executing the structured query against the database; and providing results of the execution of the structured query. - View Dependent Claims (45, 46, 47, 48)
-
Specification