Context-Aware Search Query Pre-Population via Foreground Event Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current search engines do not effectively pre-populate search queries based on the context of multiple application programs executing on a computing device, leading to inefficient information retrieval.

Innovation Solution

Maintaining a plurality of search contexts associated with each application program, detecting events to identify the foreground application, and obtaining search results based on the selected context to provide relevant information to the user.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple application programs are executed simultaneously on a computing device, then the device can perform multiple tasks, but it becomes difficult to determine which search context to use for search queries

Engineering Contradiction:
Improvemulti-tasking capabilityVSAvoidsearch context selection
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The system pre-populates search queries by detecting events associated with application programs before the user initiates a search. When an event is detected, the system proactively prepares the search context by identifying the foreground application and pre-formulating the search query, so that when the user activates the search function, the relevant context is already ready for immediate use.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If the system maintains multiple search contexts for different applications, then search relevance is improved, but system complexity increases

Engineering Contradiction:
Improvesearch relevanceVSAvoidcontext management system
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

Each application program automatically provides its own search context information when an event is detected. The foreground application self-identifies through the detected event, and the system automatically determines which context to use based on the application's current state and the event type, eliminating the need for manual context selection or complex user intervention.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system introduces an event detection mechanism as an intermediary between application programs and the search function. This mediator automatically monitors application events, identifies the foreground application, and translates application activities into appropriate search contexts, simplifying the overall system architecture by providing a standardized interface for context management.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If the system automatically detects events and identifies foreground applications, then search efficiency is improved, but processing overhead increases

Engineering Contradiction:
Improvesearch efficiencyVSAvoidprocessing overhead
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The system implements partial monitoring by detecting only specific events that are relevant to search operations, rather than continuously monitoring all application activities. The event detection is triggered selectively based on predefined criteria, and the foreground application identification is performed only when such events occur, reducing unnecessary processing while maintaining search efficiency.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8239363B2Query context selection using graphical properties
Publication Date: 2012.08.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8239363B2 patent drawing
  • US8239363B2 patent drawing
  • US8239363B2 patent drawing

AI summary

Maintaining a plurality of search contexts and selecting one of the search contexts based on graphical properties of a user interface. Each of the search contexts is provided by and corresponds to one of a plurality of executing application programs. Responsive to an event, one of the search contexts is selected. In some embodiments, the search context provided by the application program having a window displayed in the foreground of the user interface is selected. Search results based on the selected search context are obtained and provided to the user.