IP Library Patent Application 14231880
Patent Application
App. No. 14/231,880

QUERY BUILDING USING SCHEMA

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
14/231,880
Abstract

A query building mechanism in which a query builder component assists a user in generating queries to be used to populate user interface elements. A control provides a query schema to the query builder component. The query schema identifies available query parameters that the control is capable of using to populate a corresponding user interface element. The query builder component presents at least some of the available query parameters the user, such that the user may edit these parameters. The query builder component gathers those edits and generates a query therefrom. The query parameters may be provided to the query builder component in consistent manner across a wide variety of possible user interface controls. Furthermore, the resulting query is provided in a uniform query format.

Claims (44)

1 . A computer program product comprising one or more computer-readable storage media having thereon computer-executable instructions that are structured such that, when executed by one or more processors of a computing system, cause the computing system to instantiate and/or operate the following:

a query builder component that is configured to read schemas provided by controls associated with user interface elements, the schemas including a given schema provided by a given control identifying available query parameters that that the given control is capable of using to populate a corresponding user interface element,

the query builder user interface configured to present at least some of the available query parameters to a user for editing by a user, and configured to generate a query based on the edits provided by the user.

2 . The computer program product in accordance with claim 1 , the schema also describing presentation options for results of the query, the query builder user interface configured to present at least some of the presentation options to the user, and configured to provide user selection of the presentation options back to the given control.

3 . The computer program product in accordance with claim 2 , the given control using the selected presentation options in order to present the user interface element.

4 . The computer program product in accordance with claim 1 , the query builder user interface further configured to provide the generated query in a uniform format.

5 . The computer program product in accordance with claim 4 , wherein the computer-executable instructions are further structured such that, when executed by the one or more processors of the computing system, cause the computing system to instantiate and/or operate the following:

a first query transforming component that transforms queries in the uniform form to a first specific format.

6 . The computer program product in accordance with claim 5 , wherein the computer-executable instructions are further structured such that, when executed by the one or more processors of the computing system, cause the computing system to instantiate and/or operate the following:

a second query transforming component that transforms queries in the uniform form to a second specific format.

7 . The computer program product in accordance with claim 1 , wherein the computer-executable instructions are further structured such that, when executed by the one or more processors of the computing system, cause the computing system to instantiate and/or operate the following:

a first control capable of running queries to populate a first user interface element and that offers a first schema identifying available parameters for composing the query.

8 . The computer program product in accordance with claim 7 , wherein the computer-executable instructions are further structured such that, when executed by the one or more processors of the computing system, cause the computing system to instantiate and/or operate the following:

a second control capable of running queries to populate a second user interface element and that offers a second schema identifying available query parameters for composing queries.

9 . The computer program product in accordance with claim 8 , the first control provided by system provider that provides a system, and the second control provided by an application developer of an application that runs in the system.

10 . A method for constructing a query using a query builder component, the method comprising:

an act of the query builder component receiving a schema from a user interface control, the schema identifying available parameters for composing queries that the user interface control is capable of using to populate a user interface element corresponding to the user interface control;

an act of the query builder component generating a query builder user interface that is customized to the user interface control by presenting at least some of the available parameters to a user;

an act of the query builder component determining that a query is to be constructed based on current values of the available parameters displayed in the query builder user interface; and

an act of the query builder component providing the query on an output interface that is accessible by the user interface component.

11 . The method in accordance with claim 10 , the schema being a first schema, the user interface control being a first user interface control, the available parameters being first available parameters, the query being a first query, the user interface element being a first user interface element, the query builder user interface being a first query builder user interface, the method further comprising:

an act of the query builder component receiving a second schema from a second user interface control, the second schema identifying second available parameters for composing queries that the second user interface control is capable of using to populate a second user interface element corresponding to the second user interface control;

an act of the query builder component generating a second query builder user interface that is customized to the second user interface control by presenting at least some of the second available parameters to a user;

an act of the query builder component determining that a second query is to be constructed based on current values of the second available parameters displayed in the second query builder user interface; and

an act of the query builder component providing the second query on the output interface that is also accessible by the second user interface component.

12 . A method in accordance with claim 11 , the first and second query builder user interface being of the same class.

13 . A method in accordance with claim 12 , the first and second query being of the same uniform format.

14 . A method in accordance with claim 11 , further comprising:

an act of transforming the first query from the uniform format to a first specific format; and

an act of transforming the second query from the uniform format to a second specific format.

15 . A method in accordance with claim 10 , the first user interface control being provided by system provider that provides a system, and the second user interface control provided by an application developer of an application that runs in the system.

16 . A method in accordance with claim 10 , the first user interface control being provided by system an application developer of a first application that runs in the system, the second user interface control being provided by an application developer of a second application that runs in the system.

17 . A method in accordance with claim 10 , the query builder component allowing query fields to be edited, but not allowing the structure of the query to be altered.

18 . A method in accordance with claim 10 , the query builder component the structure of the query to be altered.

19 . A method for constructing queries using a query builder component, the method comprising:

an act of the query builder component exposing an input interface through which a plurality of user interface controls may each provide a corresponding schema identifying available parameters for composing queries that the corresponding user interface control is capable of using to populate a corresponding user interface element;

for each of at least some of the user interface controls that provide schemas to the query builder component via the input interface, an act of generating a query corresponding to the schema by performing the following:

an act of the query builder component generating a query builder user interface that is of the same class when generating any of the queries for any of the at least some of the user interface controls, the query builder user interface being customized to the corresponding user interface control by presenting at least some of the available parameters to a user;

an act of the query builder component determining that a query is to be constructed based on current values of the available parameters displayed in the query builder user interface;

an act of the query builder component generating a query using the current values of the available parameters, the query being in a predetermined format that is of the same format when generating any of the queries for any of the at least some of the user interface controls; and

an act of the query builder component providing the generated query on an output interface that is accessible by the user interface component.

20 . A method in accordance with claim 19 , further comprising the following for each of at least some of the user interface controls that provide schemas to the query builder component via the input interface:

an act of generating multiple query corresponding to the schema provided by a particular user interface control; and

an act of saving the multiple queries in a manner associated with the particular user interface control.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 039025/0454 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 2, 2014
From: OLENICK, BRAD; WELICKI, LEON EZEQUIEL; MCBRIDE, TIMOTHY MICHAEL; ARMAS, FEDERICO SILVA; LUCERO, JONATHAN; BHOJAWALA, NAFISA; ANSON, DAVID; OWENS, KRISTOFER JOHN; BIRCK, ANDREW; JOSHI, VISHAL R.; HARRIS, JON; DANTON, STEPHEN MICHAEL; ANAND, KARANDEEP SINGH; MILLINGTON, BRADLEY D.; ABDELHAMED, ADAM MOHAMED; BECKWITH, JUSTIN; WONG, ERIC HWA-WEI
To: MICROSOFT CORPORATION
Reel/Frame 033653/0244 →