IP Library Granted Patent US 9,141,701
Granted Patent B2
US 9,141,701 · App. 13/634,712 · Granted Sep 22, 2015

Device and method for distributed database keyword searching

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 9,141,701
App. No.
13/634,712
Granted
Sep 22, 2015
Kind
B2
Abstract

A method performed by a mobile communications device, including: populating a central database on the device with a title for each of a plurality of software modules installed on the device and associating each title with its software module; populating the central database with at least one keyword associated with each of the plurality of software modules and associating each keyword with its software module; receiving at the device a search query; displaying at the device a search result identifying at least one of the software modules installed on the device having either a title or one or more associated keywords matching the search query; and in response to receiving at the device a selection of a software module identified in the search result, activating the selected software module.

Claims (84)

1. A method performed by a mobile communications device, comprising:

receiving at the device a plurality of software modules, each software module including metadata, the metadata comprising a title and one or more keywords associated with the software module;

installing the plurality of software modules on the device;

for each of the plurality of software modules installed on the device:

populating a central database on the device with the title associated with the software module and associating the title with the software module in the central database;

populating the central database with the one or more keywords associated with the software module and associating the one or more keywords with the software module in the central database;

receiving at the device a search query;

displaying at the device a search result identifying at least one of the software modules installed on the device having either a title or one or more associated keywords matching the search query; and

in response to receiving at the device a selection of a software module identified in the search result, activating the selected software module.

2. The method of claim 1 , wherein:

at least one of the plurality of software modules has one or more associated actions it is capable of performing;

at least one of the actions has at least one keyword associated with it;

the search result displayed at the device identifies at least one action having an associated keyword matching the search query; and

receiving at the device a selection of a software module includes receiving a selection, from the search result, of an action associated with the software module, and activating the selected software module comprises instructing the software module associated with the selected action to perform the selected action.

3. The method of claim 2 , wherein displaying at the device the search result comprises:

displaying one or both of text or an icon representing each software module identified in the search result on a display of the device; and

displaying one or both of text or an icon representing each action identified in the search result,

wherein the text or icon for each action identified in the search result is displayed in visual association with the text or icon for the software module associated with the action.

4. The method of claim 2 , further comprising:

populating the central database with at least one synonym record provided by at least one of the plurality of software modules, wherein each synonym record comprises a synonym text string associated with a root text string,

wherein the displayed search result identifies at least one action having one or more keywords matching the search query modified to substitute one or more synonym text strings present in the search query with their associated root text strings.

5. The method of claim 1 , wherein receiving the plurality of software modules comprises receiving at least one software module from each of a plurality of software providers.

6. The method of claim 1 , wherein the metadata identifies one or more actions and one or more keywords associated with each of the one or more actions.

7. The method of claim 1 , wherein the metadata further comprises an indicator indicating if the software module uses a module-specific database.

8. The method of claim 1 , wherein one or more of the installed software modules have stored on the device an associated module-specific database having data records associated with one or more keywords

wherein the search result displayed at the device identifies at least one data record having an associated keyword matching the search query; and

receiving at the device a selection of a software module includes receiving a selection of a data record from a module-specific database associated with the software module, and activating the selected software module comprises instructing the software module associated with the selected data record to display the selected data record.

9. The method of claim 8 , further comprising:

populating the central database with at least one synonym record provided by at least one of the plurality of software modules, wherein each synonym record comprises a synonym text string associated with a root text string,

wherein the displayed search result communicated to the user identifies at least one data record in the module-specific database having one or more keywords matching the search query modified to substitute one or more synonym text strings present in the search query with their associated root text strings.

10. The method of claim 1 , further comprising:

populating the central database with at least one synonym record provided by at least one of the plurality of software modules, wherein each synonym record comprises a synonym text string associated with a root text string,

wherein the displayed search result identifies at least one module having a title or one or more keywords matching the search query modified to substitute one or more synonym text strings present in the search query with their associated root text strings.

11. A mobile communication device, comprising:

a memory comprising a central database;

at least one user input device;

at least one user output device; and

a processor configured to:

receive a plurality of software modules, each software module including metadata, the metadata comprising a title and one or more keywords associated with the software module;

install the plurality of software modules on the device;

for each of the plurality of software modules installed on the device:

populate the central database on the device with the title associated with the software module and associate the title with the software module in the central database;

populate the central database with the one or more keywords associated with the software module and associate the one or more keywords with the software module in the central database;

receive a search query via the at least one user input device;

communicate via the at least one user output device a search result identifying at least one of the software modules installed on the device having either a title or one or more associated keywords matching the search query; and

in response to receiving, via the at least one user input device, a selection of one of the software modules identified in the search result, activate the selected software module.

12. The device of claim 11 , wherein:

at least one of the plurality of software modules has one or more associated actions it is capable of performing;

at least one of the actions has at least one keyword associated with it;

the search result identifies at least one action having an associated keyword matching the search query; and

receiving the selection of one of the software modules comprises receiving a selection of an action associated with the software module and activating the selected software module comprises instructing the software module associated with the selected action to perform the selected action.

13. The device of claim 12 , wherein:

the at least one user output device comprises a display; and

communicating the search result comprises:

displaying information representing each software module identified in the search result; and

displaying information representing each action identified in the search result, wherein the displayed information for each action is displayed in visual association with the displayed information for the software module associated with the action.

14. The device of claim 12 , wherein the processor is configured to:

populate the central database with at least one synonym record provided by at least one of the plurality of software modules, wherein each synonym record comprises a synonym text string associated with a root text string,

wherein the search result identifies at least one action having one or more keywords matching the search query modified to substitute one or more synonym text strings present in the search query with their associated root text strings.

15. The device of claim 11 , wherein the metadata identifies one or more actions having one or more keywords associated with the action.

16. The device of claim 11 , wherein the metadata comprises an indicator indicating if the software module uses a module-specific database.

17. The device of claim 11 , wherein:

the memory further comprises one or more module-specific databases, each module-specific database being associated with an installed software module and having data records associated with one or more keywords; and

wherein the search result identifies at least one data record having an associated keyword matching the search query; and

receiving a selection of a software module includes receiving a selection of a data record from a module-specific database associated with the software module, and activating the selected software module comprises instructing the software module associated with the selected data record to display the selected data record.

18. The device of claim 17 , wherein the processor is configured to:

populate the central database with at least one synonym record provided by at least one of the plurality of software modules, wherein each synonym record comprises a synonym text string associated with a root text string,

wherein the search result identifies at least one data record in the module-specific database having one or more keywords matching the search query modified to substitute one or more synonym text strings present in the search query with their associated root text strings.

19. The device of claim 11 , wherein the processor is further configured to:

populate the central database with at least one synonym record provided by at least one of the plurality of software modules, wherein each synonym record comprises a synonym text string associated with a root text string,

wherein the search result identifies at least one software module having a title or one or more keywords matching the search query modified to substitute one or more synonym text strings present in the search query with their associated root text strings.

20. A system for initiating actions on a mobile communications device, comprising:

a mobile communications device adapted to download and install software installation packages via a communication link;

wherein each of the software installation packages comprises:

a software module installable on the mobile communication device and executable by a processor of the mobile communication device; and

metadata indicating at least a title and one or more keywords associated with the software module;

wherein installing software installation packages comprises, for each of the software installation packages, populating a central database of the mobile communication device with at least one keyword associated with the software module and associating each keyword with the module; and

wherein the mobile communications device includes:

at least one user input device and one output device; and

a processor configured to:

receive a search query via the at least one user input device;

communicate via the at least one output device a search result identifying at least one of the software modules installed on the device having either a title or one or more associated keywords matching the search query; and

in response to receiving via the at least one user input device a selection of one of the software modules identified in the search result, activate the selected software module.

21. A computer program product comprising a computer readable medium having stored thereon instructions configuring a communications device to implement the method of claim 1 .

Assignments (6)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064271/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2016
From: LAZARIDIS, MIHAL; BENEDEK, JOSEPH EYTAN; NIRANJAN, KARTHIGESU
To: RESEARCH IN MOTION LIMITED
Reel/Frame 039432/0110 →
CHANGE OF NAME Recorded Jun 1, 2015
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 035805/0534 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2012
From: LAZARIDIS, MIHAL; BENEDEK, JOSEPH EYTAN; NIRANJAN, KARTHIGESU
To: RESEARCH IN MOTION LIMITED
Reel/Frame 029211/0375 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2012
From: LAZARIDIS, MIHAL; BENEDEK, JOSEPH EYTAN; NIRANJAN, KARTHIGESU
To: RESEACH IN MOTION LIMITED
Reel/Frame 029011/0775 →