IP Library › Granted Patent US 7,711,742
Granted Patent B2
US 7,711,742 · App. 10/734,043 · Granted May 4, 2010

Intelligent data query builder

Assignee: International Business Machines Corporation
View Patent ↗
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 7,711,742
App. No.
10/734,043
Granted
May 4, 2010
Kind
B2
Abstract

Techniques are disclosed for programmatically determining one or more logical choices to be offered to users as conditions of a data query (e.g., for searching a content source), and enabling extensions to already-established queries to be programmatically created. A number of different aspects are described, and include programmatically determining all query conditions as well as allowing a user to specify (or request programmatic determination of) further conditions.

Claims (48)

1. A computer-implemented method of programmatically building a query user interface to build a query command to query content of a Web page, wherein the Web page lacks a query user interface, comprising:

programmatically determining a current context of a user of a device on which the Web page is rendered, the current context comprising at least one of: an identification of the user; a role of the user; the device used by the user; and a geographical location of the user;

programmatically determining a plurality of content values specified in the Web page;

programmatically determining, based on the specified content values, a plurality of content types corresponding thereto;

using the programmatically-determined current context and at least one of the programmatically-determined content types to consult a lookup component which obtains at least two query parameter names to display on the programmatically-built query user interface;

programmatically identifying, for each of the obtained query parameter names, at least one selectable query qualifier corresponding thereto, wherein each of the selectable query qualifiers indicates a particular comparison to be performed when subsequently comparing selected ones of the content values to that query parameter name;

programmatically identifying, for each of the obtained query parameter names, at least one selectable parameter value corresponding thereto;

programmatically building a plurality of query parameters by associating, with each of the obtained query parameter names, each of the at least one programmatically-identified selectable query qualifiers corresponding thereto and each of the at least one programmatically-identified selectable parameter values corresponding thereto;

displaying on the query user interface, for each of the programmatically-built query parameters, the obtained query parameter name, a first selector for selecting one of the at least one query qualifiers associated therewith and a second selector for selecting at least one of the at least one parameter values associated therewith; and

accepting input from the user to build the query command to query the Web page, further comprising:

accepting, from the user for each of the displayed query parameter names, one of the associated query qualifiers selected by the user with the first selector and at least one of the associated parameter values selected by the user with the second selector; and

programmatically building the query command to specify, for each of the displayed query parameter names, the selected query qualifier and each of the at least one selected parameter values.

2. The method according to claim 1 , further comprising:

programmatically identifying at least one query extension parameter for the query command, responsive to a request from the user, further comprising:

using the programmatically-determined current context and at least one of the obtained query parameter names to consult a mapping, thereby obtaining a related query parameter name;

programmatically identifying at least one selectable query qualifier corresponding to the obtained related query parameter name, wherein each of the selectable query qualifiers indicates a particular comparison to be performed if subsequently comparing selected ones of the content values to the obtained related query parameter name;

programmatically identifying at least one selectable parameter value corresponding to the obtained related query parameter name; and

programmatically building the query extension parameter by associating, with the obtained related query parameter name, the programmatically-identified at least one selectable query qualifier corresponding thereto and each of the at least one programmatically-identified selectable parameter values corresponding thereto; and

wherein the displaying further comprises also displaying the programmatically-built query extension parameter for each of the at least one programmatically-identified query extension parameters as additional ones of the programmatically-built query parameters.

3. The method according to claim 1 , further comprising:

programmatically determining preferences of the user; and

wherein the using the programmatically-determined current context and at least one of the programmatically-determined content types further comprises using the programmatically-determined preferences of the user to consult the lookup component.

4. A computer-implemented system configured to programmatically build a query user interface to build a query command to query content of a Web page, wherein the Web page lacks a query user interface, comprising:

a computer comprising a processor; and

instructions which execute using the processor to implement functions comprising:

programmatically determining a current context of a user of a device on which the Web page is rendered, the current context comprising at least one of: an identification of the user; a role of the user; the device used by the user; and a geographical location of the user;

programmatically determining a plurality of content values specified in the Web page;

programmatically determining, based on the specified content values, a plurality of content types corresponding thereto;

using the programmatically-determined current context and at least one of the programmatically-determined content types to consult a lookup component which obtains at least two query parameter names to display on the programmatically-built query user interface;

programmatically identifying, for each of the obtained query parameter names, at least one selectable query qualifier corresponding thereto, wherein each of the selectable query qualifiers indicates a particular comparison to be performed when subsequently comparing selected ones of the content values to that query parameter name;

programmatically identifying, for each of the obtained query parameter names, at least one selectable parameter value corresponding thereto;

programmatically building a plurality of query parameters by associating, with each of the obtained query parameter names, each of the at least one programmatically-identified selectable query qualifiers corresponding thereto and each of the at least one programmatically-identified selectable parameter values corresponding thereto;

displaying on the query user interface, for each of the programmatically-built query parameters, the obtained query parameter name, a first selector for selecting one of the at least one query qualifiers associated therewith and a second selector for selecting at least one of the at least one parameter values associated therewith; and

accepting input from the user to build the query command to query the Web page, further comprising:

accepting, from the user for each of the displayed query parameter names, one of the associated query qualifiers selected by the user with the first selector and at least one of the associated parameter values selected by the user with the second selector; and

programmatically building the query command to specify, for each of the displayed query parameter names, the selected query qualifier and each of the at least one selected parameter values.

5. A computer program product configured to programmatically build a query user interface to build a query command to query content of a Web page, wherein the Web page lacks a query user interface, the computer program product embodied on one or more computer-readable storage media and comprising computer-readable program code for:

programmatically determining a current context of a user of a device on which the Web page is rendered, the current context comprising at least one of: an identification of the user; a role of the user; the device used by the user; and a geographical location of the user;

programmatically determining a plurality of content values specified in the Web page;

programmatically determining, based on the specified content values, a plurality of content types corresponding thereto;

using the programmatically-determined current context and at least one of the programmatically-determined content types to consult a lookup component which obtains at least two query parameter names to display on the programmatically-built query user interface;

programmatically identifying, for each of the obtained query parameter names, at least one selectable query qualifier corresponding thereto, wherein each of the selectable query qualifiers indicates a particular comparison to be performed when subsequently comparing selected ones of the content values to that query parameter name;

programmatically identifying, for each of the obtained query parameter names, at least one selectable parameter value corresponding thereto;

programmatically building a plurality of query parameters by associating, with each of the obtained query parameter names, each of the at least one programmatically-identified selectable query qualifiers corresponding thereto and each of the at least one programmatically-identified selectable parameter values corresponding thereto;

displaying on the query user interface, for each of the programmatically-built query parameters, the obtained query parameter name, a first selector for selecting one of the at least one query qualifiers associated therewith and a second selector for selecting at least one of the at least one parameter values associated therewith; and

accepting input from the user to build the query command to query the Web page, further comprising:

accepting, from the user for each of the displayed query parameter names, one of the associated query qualifiers selected by the user with the first selector and at least one of the associated parameter values selected by the user with the second selector; and

programmatically building the query command to specify, for each of the displayed query parameter names, the selected query qualifier and each of the at least one selected parameter values.

Assignments (8)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL 062079, FRAME 0677) Recorded Mar 3, 2026
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 075015/0574 →
RELEASE OF SECURITY INTEREST Recorded Apr 30, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 071127/0240 →
RELEASE OF SECURITY INTEREST Recorded Mar 27, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 070670/0857 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 062079/0677 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0001 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0086 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: TWITTER, INC.
Reel/Frame 032075/0404 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2004
From: BENNETT, VALERIE M.; FRIDRICH, GEORGE L.; JAIN, MOHIT
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 014482/0298 →
Continuity (1)
Related Publication 20050131889A1 · Jun 16, 2005