Free text and attribute searching of electronic program guide (EPG) data
First Claim
1. A method of searching electronic program guide (EPG) data, comprising:
- receiving a text search string by way of a search string receiver, wherein the text search string contains one or more text terms and one or more attribute terms;
normalizing the text search string to make searchable terms by;
applying spell checking to the text search string,identifying a word as being misspelled, andappending a corrected form of the word identified as being misspelled to the searchable terms to conduct a conditional search based on the corrected form of the word;
separating the searchable terms into text terms and attribute terms by way of a string interpreter, the string interpreter parsing the text search string to separate the searchable terms into the text terms and the attribute terms by comparing the searchable terms with a list of attributes for identifying the attribute terms;
performing a text search in the EPG data for each text term;
performing an attribute search in the EPG data for each attribute term; and
ranking results from the text and attribute searches for displaying search results conforming to the text search string, the ranking comprising lowering a relevancy ranking of hits resulting from the conditional search on the corrected form of the word when search results are obtained based on the word identified as being misspelled.
2 Assignments
0 Petitions
Accused Products
Abstract
Subject matter includes a search engine for electronic program guide (EPG) data and related methods. In an exemplary method, a text search string can be normalized into searchable terms and the terms interpreted as either text search terms or attribute search terms. One or more queries having search conditions of varying degrees of complexity are created according to the interpretation of the terms of the search string. One or more searches in EPG databases and/or web-resources are performed based on interpretation of the text and attribute terms and results are given a relevancy ranking according to the interpretation. The combined search results may be grouped, ranked, and filtered for display to the user. Results may also be displayed progressively as each character of a search string is entered by the user.
-
Citations
29 Claims
-
1. A method of searching electronic program guide (EPG) data, comprising:
-
receiving a text search string by way of a search string receiver, wherein the text search string contains one or more text terms and one or more attribute terms; normalizing the text search string to make searchable terms by; applying spell checking to the text search string, identifying a word as being misspelled, and appending a corrected form of the word identified as being misspelled to the searchable terms to conduct a conditional search based on the corrected form of the word; separating the searchable terms into text terms and attribute terms by way of a string interpreter, the string interpreter parsing the text search string to separate the searchable terms into the text terms and the attribute terms by comparing the searchable terms with a list of attributes for identifying the attribute terms; performing a text search in the EPG data for each text term; performing an attribute search in the EPG data for each attribute term; and ranking results from the text and attribute searches for displaying search results conforming to the text search string, the ranking comprising lowering a relevancy ranking of hits resulting from the conditional search on the corrected form of the word when search results are obtained based on the word identified as being misspelled. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A search engine implemented by a processor executing instructions contained on computer-readable storage media, the search engine comprising:
-
a normalizer to apply spell checking to a search string for identifying a word as being misspelled, the normalizer appending a corrected form of the word identified as being misspelled to search terms in the search string to conduct a conditional search based on the corrected form of the word; a string interpreter communicatively coupled with a list of attributes, the string interpreter postulating the meaning of terms in the search string, the string interpreter further comprising an attribute identifier for separating attribute terms from text terms in the search string by comparing candidate attribute terms in the search string with the list of attributes for identifying the attribute terms; a query generator coupled with the string interpreter, the query generator generating one or more attribute queries for searching electronic program guide (EPG) data based upon the attribute terms identified and generates one or more text queries for searching the EPG data based on the text terms; and a results ranker to lower a relevancy ranking of hits resulting from the conditional search on the corrected form of the word when at least one of the one or more attribute queries or the one or more text queries return hits that contain the word identified as being misspelled. - View Dependent Claims (13, 14, 15, 16)
-
-
17. One or more computer readable storage media containing instructions that are executable by a computer to perform actions comprising:
-
receiving a text search string; formatting the text search string into search terms compatible with electronic program guide (EPG) data to be searched; deriving text terms and attribute terms from the search terms by comparing the search terms with a list of attributes for identifying the attribute terms based upon the list of attributes, the attributes being searchable characteristics of programs; applying spell checking to the text search string; identifying a word as being misspelled; appending a corrected form of the word identified as being misspelled to the search terms to conduct a conditional search based on the corrected form of the word; performing one or more text searches of program title data in the EPG data for each text term; performing one or more attribute searches of program attribute data in the EPG data for each attribute term identified; combining results of the one or more text searches with results of the one or more attribute searches to obtain search result hits; assigning a relevancy rank to each search result hit; lowering a relevancy ranking of hits resulting from the conditional search on the corrected form of the word when search results are obtained based on the word identified as being misspelled; and displaying hits filtered by relevancy. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A search engine for electronic program guide (EPG) data, the search engine being implemented by a processor executing instructions contained on computer-readable storage media, the search engine comprising:
-
a normalizer to apply spell checking to a text search string for identifying a word as being misspelled, the normalizer appending a corrected form of the word identified as being misspelled to search terms in the text search string to conduct a conditional search based on the corrected form of the word; an attribute identifier to separate attribute terms from text terms by parsing the text search string to achieve a text and attribute aware interpretation of the text search string; a query generator to generate a query for searching electronic program guide (EPG) data based upon the attribute terms and the text terms; and a results ranker to lower a relevancy ranking of hits resulting from the conditional search on the corrected form of the word when search results are obtained based on the word identified as being misspelled.
-
-
27. A method of searching electronic program guide (EPG) data, comprising:
-
receiving a text search string by way of a search string receiver, the text search string containing one or more text terms for searching program titles and one or more attribute terms for searching program characteristics; normalizing the text search string by removing or converting symbols in the text search string to form searchable terms, the normalizing further comprising; applying spell checking to the text string, identifying a word as being misspelled, and appending a corrected form of the word identified as being misspelled to the searchable terms to conduct a conditional search based on the corrected form of the word; determining, by a processor, one or more known attribute terms by comparing the searchable terms with a list of known attributes for identifying the known attribute terms, the list of known attributes relating to non-title characteristics of programs searchable in the EPG data; identifying as text terms remaining terms not identified as known attribute terms; performing a text search of program title data in the EPG data for each text term identified from the text search string to obtain first intermediate results; performing an attribute search in the EPG data for each known attribute term identified from the text search string to obtain second intermediate results; conducting an alternate attribute search of EPG data using one or more of the text terms to obtain third intermediate results for determining whether the one or more text terms are attribute terms not listed in the list of known attributes; conducting an alternate text search using one or more of the known attribute terms identified by comparing the searchable terms with the list of attributes to acquire additional information to obtain fourth intermediate results for verifying that the known attribute terms are not text terms; and performing one of combining, ranking, and filtering the first, second, third and fourth intermediate results from the text and attribute searches for displaying search results conforming to the text search string, the ranking comprising lowering a relevancy ranking of hits resulting from the conditional search on the corrected form of the word when search results are obtained based on the word identified as being misspelled. - View Dependent Claims (28, 29)
-
Specification