Intelligently recommending schemas based on user input
Abstract
The present invention extends to methods, systems, and computer program products for intelligently recommending schemas based on user input that defines a portion of a data structure. An intelligent auto-complete function can identify characteristics of the user input and, based on these characteristics, recommend schemas that are most likely to be selected by the user to complete the data structure or portion of the data structure. The identified characteristics of the user input can be compared to characteristics of defined schemas or of other data structures to identify schemas that are most likely to match the user's intent. These schemas are then recommended to the user. Such schemas can define the recommended shape of the data structure being defined, including data types for a particular column, columns to add to the data structure, or can define additional data structures to be added such as additional tables to a database.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A computing system comprising:
one or more processors; and one or more storage devices having stored computer-executable instructions which, when executed by the one or more processors, implement a method for recommending schemas to a user during the processing of a data structure, the method comprising:
receiving user input at a computer interface, the user input defining a portion of a data structure;
identifying one or more characteristics of the user input by analyzing the user input;
based at least on the one or more identified characteristics, recommending one or more schemas, out of a plurality of schemas, to the user, at least one recommended schema predictive of user intent for defining one or more additional portions of the data structure;
displaying graphical data representing each of the one or more recommended schemas at the interface, the graphical data displayed for user selection;
receiving a user selection of the at least one recommended schema; and
in response to the user selection of the selected schema, defining an additional portion of the data structure in accordance with the selected schema.
2 . The computing system of claim 1 , wherein the portion of the data structure defined by the input is a name of a column of the data structure.
3 . The computing system of claim 2 , wherein the data structure is one of a database or a spreadsheet.
4 . The computing system of claim 2 , wherein identifying one or more characteristics of the input comprises matching at least a portion of the name of the column to at least a portion of the name of one or more other columns used in the one or more recommended schemas.
5 . The computing system of claim 1 , wherein at least one of the plurality of schemas is stored in a dataset in a cloud of computing systems, the method further comprising accessing the dataset in the cloud of computer systems to analyze the at least one of the plurality of schemas to identify whether to recommend the at least one of the plurality of schemas.
6 . The computing system of claim 1 , wherein the method further comprising:
analyzing one or more characteristics of previous input that define other portions of the data structure; and wherein recommending one or more schemas comprises recommending the one or more schemas based on one or more characteristics identified from previous user input.
7 . The computing system of claim 6 , wherein the previous user input comprises the name of another column of the data structure.
8 . The computing system of claim 1 , wherein defining the additional portion of the data structure comprises adding a definition of a data type of data that is to be stored within the additional portion of the data structure.
9 . The computing system of claim 1 , wherein defining the additional portion of the data structure comprises adding one or more constraints on data that is to be stored within the additional portion of the data structure.
10 . The computing system of claim 1 , wherein defining the additional portion of the data structure comprises adding input that defines one or more additional columns of the data structure.
11 . The computing system of claim 1 , wherein the method further comprises, prior to recommending the one or more schemas:
analyzing a store of schemas to determine common characteristics of schemas in the store; and based on the common characteristics, generating the plurality of schemas.
12 . The computing system of claim 1 , wherein the at least one recommended schema is associated with a policy, the method further comprising:
in response to user selection of the selected schema, generating telemetry information that identifies the selected schema from among the one or more recommended schemas including identifying whether the user selected the at least one schema that is associated with the policy; and using the telemetry information to refine the identification of recommended schemas during the creation of subsequent data structures and to determine whether the policy is being implemented.
13 . A computing system comprising:
one or more processors; and one or more storage devices having stored computer-executable instructions which, when executed by the one or more processors, implement a method for suggesting intelligent auto-completion to a user during the development of a data structure, the method comprising:
receiving input at an interface, the input defining a name of a column of a database;
based on one or more portions of the name, recommending one or more data types for the data of the column, wherein the recommendation is based on matching the one or more portions of the name of the column to one or more portions of the name of other columns defined in one or more schemas; and
upon receiving input that selects one of the one or more recommended data types, adding input to the interface that defines the selected data type as the data type for the data of the column.
14 . The computing system of claim 13 , wherein the method further includes recommending one or more additional columns to be included in the database, the one or more additional columns including a name and a data type.
15 . The computing system of claim 13 , wherein the method further comprises, based on the one or more portions of the name, recommending one or more constraints on data that is to be stored in the column.
16 . A computing system comprising:
one or more processors; and one or more storage devices having stored computer-executable instructions which, when executed by the one or more processors, implements a method for facilitating development of a data structure, the method comprising:
receiving input to an interface, the input defining the name of a column of a database;
comparing at least a portion of the name to names of columns in a plurality of schemas;
identifying one or more schemas, in the plurality of schemas, that each include a column having a name with at least a portion that matches the at least a portion of the name of the column input to the interface;
determining a data type of the data of each of the one or more identified columns;
determining one or more additional columns that are included in each of the one or more schemas; and
displaying information associated with the one or more identified columns.
17 . The computing system of claim 16 , wherein the displaying information associated with the one or more identified columns includes displaying data types of the one or more identified columns as recommended data types for the column of the database.
18 . The computing system of claim 16 , wherein the displaying information associated with the one or more identified columns includes displaying the one or more additional columns as recommended columns to be included in the database.
19 . The method of claim 16 , wherein the database is defined in the interface to include one or more other columns, and wherein identifying one or more schemas in the plurality of schemas that each include a column having a name with at least a portion that matches the at least a portion of the name of the column input to the interface further comprises:
identifying one or more schemas in the plurality of schemas that each include a column having a name with at least a portion that matches the at least a portion of the name of the column input to the interface, and that each include at least one of the one or more additional columns.
20 . The method of claim 16 , further comprising:
displaying the one or more schemas as recommended schemas for the database; and upon the user selecting one of the one or more schemas, adding input to the interface that defines the database to conform to the selected schema.Join the waitlist — get patent alerts
Track US2015205583A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.