Patent application title: APPARATUS AND METHOD FOR SEARCH AND RETRIEVAL OF DOCUMENTS AND ADVERTISING TARGETING
Inventors:
Haim Zvi Melman (Kfar Saba, IL)
Haim Zvi Melman (Kfar Saba, IL)
IPC8 Class: AG06F1730FI
USPC Class:
707723
Class name: Database and file access post processing of search results ranking search results
Publication date: 2011-04-28
Patent application number: 20110099164
and management of search for documents is
presents. The system includes knowledge-database, query interface and
communication to a database of documents to be searched. Information
generated during a search session is collected by the system and is added
to the knowledge-database. The information is ranked automatically
according to the usage of that information by the user. During successive
search session, or during search made by other users, the system uses the
knowledge-database to support the users with keywords, queries and
reference to documents. The knowledge-database is used for improvement of
advertising targeting.Claims:
1. A computer implemented method for search and retrieval comprising at
least one of: a computer, a storage device, display means, input means, a
search engine; and comprising the steps of: submitting a first search
query; submitting at least one second search query, said at least one
second query is not identical to said first query; and display at least
one results page that contains items retrieved in response to said first
query and also items retrieved in response to said at least one second
query.
2. The method according to claim 1 whereas said first query is used for search in a first results repository and said at least one second query is used for search in at least one second results repository.
3. The method according to claim 17 whereas said stored items are those that are registered in reference to any of the following: a. the current user submitting said first query; b. a user included in a predetermined group of users, said predetermination is made in relation to the current user; c. a predetermined group of users selected by the current user; and d. at least two predetermined groups of users, said at least two groups of users are selected by the current user.
4. The method according to claim 3 whereas said registration in reference to users is made to those users who used said items.
5. The method according to claim 4 whereas said stored items are at least one of: a. queries submitted for search process; b. keywords from queries submitted for search process; and c. keywords from items retrieved in a search process in response to a query.
6. The method according to claim 1 including the steps of: after submitting said first query; searching in a storage device for at least one stored item, containing at list a part of said first query; and submitting at least a part of said at least one stored item as at least one of said second queries.
7. The method of claim 6 whereas said first query is used for search in a first results repository and said at least one second query is used for search in at least one second results repository.
8. The method of claim 1 whereas said at least one second query includes at least one stored keyword; said at least one stored keyword is extracted according to matching of said at least one stored keyword to at least one keyword of said first query; and said matching criteria is having said at least one stored keyword included in at least one submitted query that is stored in a storage device whereas said at least one stored query contains also said at least one keyword of said first query.
9. The method according to claim 1 additionally comprising the steps of: selecting, by the user, at least one item in a results page; indication, by the user, at least one target location; automatic composition of a new page containing only the selected items; and sending said new page to said at least one target location.
10. A computer implemented method for search and retrieval comprising at least one computer, storage device, display means, input means, and a search engine; said storage device stores: queries that have been submitted by users; reference to documents that were retrieved using said stored queries, said references to documents are saved with a registration of which of said stored queries were used to retrieve said documents; said references to documents include the path to said documents; each reference to a document is stored if a user submitting said stored query that retrieved said reference to a document indicated, through his interaction with the search results, that this document is relevant to said stored query; and a list of at least a part of paths to documents, whereas at list one of said path parts is associated with at least one stored item; comprising the steps of: submitting, by the user, a first search query; identifying at least one of said stored queries as containing at least a part of said first query; identifying at least one references to documents that is registered to said at least one identified stored query; finding a match between a unique part of the path included in said identified at least one references to documents and at least one of the stored at least a part of paths; and displaying at least one of said stored items associated with said matching at least one of the stored at least a part of paths.
11. The method according to claim 10 whereas at least a part of: a. said stored queries; and b. said stored references to documents; is registered in reference to any of the following: a. the current user submitting said first query; b. a user included in a predetermined group of users, said predetermination is made in relation to the current user; c. a predetermined group of users selected by the current user; and d. at least two predetermined groups of users, said at least two groups of users are selected by the current user.
12. The method according to claim 11 whereas at least one of the following conditions is maintained: a. said registration of a stored query in reference to a user is made to a user who used said query; and b. said registration of a reference to a document in reference to a user is made to a user who interacted with said reference to a document.
13. The method according to claim 10 whereas said displaying is arranged in order according to at least one of: a. ranking of said stored queries; and b. ranking of said stored references to documents.
14. A computer implemented method for delivering search results comprising the steps of: submitting, by a user, of a first search query; displaying search results page including results retrieved with said first query; selecting, by the user, at least one result in said results page; indication, by the user, at least one target location; automatic composition of a new results page containing only the results selected by the user; and sending said new results page to said at least one target location.
15. The method of claim 14 whereas said at least one target location is at least one of the following: a. display device; b. a folder on a storage device; and c. an email address.
16. The method of claim 14 whereas said results page includes also items retrieved with at least one second search query; said at least one second query is not identical to said first query; and said automatically composed new results page contains also items retrieved with said second search query.
17. The method according to claim 1 including the steps of: after submitting said first query; searching in a storage device for at least one stored item, containing at list a part of said first query; and submitting at least a part of said at least one stored item as at least a part of one of said second queries.
18. The method according to claim 10 including the steps of: selecting, by the user, at least one item in a results page; indication, by the user, at least one target location; automatic composition of a new page containing only the selected items; and sending said new page to said at least one target location.
19. The method according to claim 16 whereas said first query is used for search in a first results repository and said at least one second query is used for search in a second results repository.
20. The method according to claim 16 including the steps of after submitting said first query; searching in a storage device for at least one stored item, containing at list a part of said first query; and submitting at least a part of said at least one stored item as at least a part of one of said second queries.Description:
FIELD OF THE INVENTION
[0001] The invention is related to the field of digital information management and, in particular, to search and retrieval of the same.
BACKGROUND OF THE INVENTION
[0002] The growth of the Internet introduced broad access to information not available before. Access to digital information sources, once an asset of a small group of professional, holding information technology skills, has become a daily tool for millions of the Internet users.
[0003] Lower skill levels for search of such information is now an inseparable part of searches made for information by most of the users. Skill and knowledge aspects became limiting factors for successful search and retrieve of such information. Such limitations present themselves in the composition of Boolean queries, knowledge of relevant information sources such as the AltaVista index at www.altavista.digital.com (maximum coverage of Internet documents by a single index is less then 40%). Many of the documents are accessed only by a direct reference from a person with a specific knowledge. Many of the information provided by querying an index such as Yahoo are not relevant. The search process is long, queries are modified many times and many information pieces are missed.
[0004] Natural language query is one suggested replacement for Boolean query method. However, a research from Search Insider (www.searchinsider.com) indicates clearly that users prefer the Boolean query methods and that search engines such as AltaVista and Yahoo (www.yahoo.com) provide require much improvement.
[0005] The present status of information search and retrieval in the Internet is characterized by long and tedious search process, poor relevancy of retrieved documents and low level of success in retrieval of relevant documents.
[0006] It is the purpose of the present invention to provide a method and tools for efficient search and retrieval of documents. The description in reference to the Internet is maid in a way of example only. It would be appreciated by those skilled in the art, that the proposed method is applicable to any digital information source.
A SUMMARY OF THE INVENTION
[0007] In a preferred embodiment of the present invention, the system comprises a Server, Clients having a Human Interface (H/I) and communication with the server, a Database, a connection to the Internet and Software of that system. A User of the Client is using the H/I to compose a query view various information pieces including retrieved documents or titles or summary of those documents. The Software traces the user's search activity, collecting data such as queries and relevant or irrelevant documents and information sources. The data is evaluated and stored in the Database.
[0008] The data is also compared to other data, collected from all users, available from the Database. A data that is relevant to assist the current search process is presented to the user. This data include highly ranked queries that are similar to the query composed by the current user and highly ranked documents retrieved in the past by those queries.
[0009] As the Database is the accumulation of many such search processes, made by a single user or by many users, in the same subject, the current user can benefit from the many hours invested by himself or by others to find information in this subject.
[0010] This method is effective for a single user searching the internet or his own computer and it is particularly effective when used within an organization or work group, whereas the organization members search for information that is relevant to the activity of that organization. Thus the Database generated overtime is highly relevant to all members of such organization or work group.
[0011] The invention will be better understood in reference to the following Figures:
[0012] FIG. 1.
[0013] A general block diagram of a preferred embodiment of the system of the present invention.
[0014] FIG. 2.
[0015] A description of a preferred embodiment of a Human Interface of the present invention.
[0016] FIG. 3A and FIG. 3B (referred to as FIG. 3).
[0017] A workflow chart, describing a preferred process of working with the system of the present invention.
A DETAILED DESCRIPTION OF THE INVENTION
[0018] Reference is made now to FIG. 1, which is a general description of one preferred embodiment of the system, presented in the form of a block diagram. A preferred embodiment of the invention is presented. System 100 for search and retrieval of documents includes: [0019] 1. Server 102 which is any suitable computer such as IBM Netfinity 3000, available from IBM Corporation, North Carolina, U.S.A. with a suitable server software (Server S/W 106) such as Microsoft Windows NT, available from Microsoft Corporation, Washington, U.S.A. [0020] 2. At least one Client Station 104 which is any personal computer such as IBM PC 300XL with suitable software (Client S/W 112) such as Microsoft Windows NT (the drawing illustrates multiple Client Stations 104). [0021] 3. Server 102 includes also System Database 108. [0022] 4. Each of Client Stations 104 is connected to the Server by any means of communication 110 (such as LAN) and any standard communication protocol (such as TCP/IP). [0023] 5. Each of the Client Stations contains also Human Interface 114, such as described in details in reference to FIG. 2.
[0024] 6. System 100 is also connected to at least one source of digital information 116 by communication means 118. In the preferred embodiment presented here, such a source of digital information is the Internet. This connection may be done using any method, some of the methods are described in "Using the Internet", 2nd edition by Mary Ann Pike, © 1995.
[0025] It would be appreciated that the above embodiment is provided as example and that, for example, all the functionality of system 100 can be implemented in a single computer, on a web-server or using any other infrastructure or technology.
Initial Search Process:
[0026] Initial search is characterized by no data in System Database 108. At this stage System 100 can not assist the user to find the information he is looking for. In this stage System 100 traces the user's search session, collects data from the search session, processes the data and stores the results in the database.
[0027] In the present embodiment of the invention, the user composes a Boolean query using Human Interface 114. The user then submits the query to a search engine such as AltaVista. A set of titles and summaries is presented to the user by the search engine.
[0028] The user may now select some of the titles for a detailed review and ignore the others.
[0029] When the detailed document is presented to the user it is desired that the evaluation of the document, by the user, will be provided to the System. For that purpose a window is displayed with the document. The window contains a dual button interface indicating Y and N. To change from the document display back to the search session the user must click either the Y or the N. Y indicates that the document is relevant to the user and N indicates irrelevant document. System 100 also traces activities such as printing a document or saving a document on disk. These actions are considered as parts of positive evaluations of a document.
[0030] The user, repetitively composes improved queries, submits them to the search engine and evaluates results (direct or indirect evaluation). During the search session the user may submit queries to different sources such as AltaVista, Yahoo and Lycos (www.lycos.com). Also meta-search engines such as MetaCrawler (www.metacrawler.com) may be used.
[0031] When the user finishes the search session, the system has collected raw data ready for process. This data includes at least some details such as the following: [0032] 1. Queries submitted by the user. [0033] 2. URLs of documents (URL: Uniform Resource Locator) [0034] 3. One query to many URLs relations for the URLs retrieved by each one of the submitted queries. [0035] 4. A set of evaluation parameters for each URL: [0036] Y, N [0037] Review of detailed document [0038] Document printed [0039] Document saved on storage device [0040] Documents summaries--those that are available [0041] Document generation date, last update date [0042] 5. Date and time session ended. [0043] 6. Register indications of who maid any of the above actions. [0044] 7. Register indications of within which users group the user maid any of the above actions. [0045] 8. Date URL introduced to System Database.
[0046] A process of the data is begun at this stage to produce a set of valuable information in the System Database, the information contains details such as: [0047] 1. Ranking each of the URLs as per the following example: [0048] A new URL (not exists in the System Database) acquires a preliminary rank 1. [0049] Add 10 points for `Y`. [0050] Add 3 points for review of the document. [0051] Add 1 point for printing the document, [0052] Add 1 point for storing the document on a storage device. [0053] Subtract 1 point for `N`. [0054] This ranking method enables increase of URL ranking either by direct or indirect evaluation by the user. Also, Rank reduction effectiveness is limited to avoid unintentional negative ranking of a URL. [0055] 2. A ranking method for a query is provided hereinbelow as an example: [0056] Generate ranking parameters for each submitted query: [0057] Number of URLs related to this query that are ranked over 0 (n1). [0058] The sum of ranks of these URLs (v1). [0059] Number of URLs related to this query that are ranked 0 (n2). [0060] Number of URLs related to this query that are ranked lower then 0 (n3). [0061] The sum of ranks of these URLs (v3). [0062] Number of terms in the query (T1). [0063] `Term` is used here in the broad sense. For example, a `term` may be a single word, expression containing more then one word and a sequence of characters with indication to refer to all words and expressions containing that sequence of characters. [0064] A query may then be ranked using a formula such as:
[0064] Rank=K1×(v1/n1)+K2×(v3/n.sub- .3)+K3×T1 (1) [0065] This formula may use a relatively high value for K1 to make valuable URLs more effective in ranking the query as a useful query. K2 may be a relatively low value to limit the effect of irrelevant URLs retrieved by this query. This satisfies the need to reduce the rank of a query if many irrelevant URLs are retrieved by the query but, at the same time, make sure that the query maintains a good rank if it also retrieves valuable URLs. [0066] T1 is an indication for the sophistication of the query that adds to the value of such query to the user. [0067] It would be appreciated that ranking formula (1) is an example and many other formulas may produce valuable solution. [0068] Additional ranking methods are described hereinblow. [0069] 3. Generating a set of related terms: each query is analyzed for terms related by Boolean operators such as OR, AND and NOT. This generates a many to many relations among terms of the query. [0070] Consider the following query example: [0071] (car or automobile or vehicle not bus) and (road or sand or mud). [0072] The following relation table may be generated:
TABLE-US-00001 [0072] car automobile vehicle bus road sand mud car -- OR OR NOT AND AND AND automobile OR -- OR NOT AND AND AND vehicle OR OR -- NOT AND AND AND bus NOT NOT NOT -- NOT NOT NOT road AND AND AND NOT -- OR OR sand AND AND AND NOT OR -- OR mud AND AND AND NOT OR OR --
[0073] This vocabulary, with the Boolean relations, is useful in identifying terms that are relevant to other terms, in the sense of composing a Boolean query. For example, when the word `vehicle` is introduced in a query, the System may use the System Database to present the user with other terms that may be useful, under the relevant category: [0074] OR: car, automobile [0075] AND: road, sand, mud [0076] NOT: bus [0077] The user may then use these related terms to enhance his query. [0078] Terms without Boolean relations may be treated per default rules such as: [0079] a) Assign the relation the Boolean expression "OR" [0080] or [0081] b) Assign a relation such as "spece" and allow search engines assign their own default interpretation to "space" between terms submitted in a query. [0082] 4. Ranking each of the terms. The terms may be ranked according to the number of times they appear, in relation to a given term, in all queries. The ranking may be separate for each type of Boolean relation, such as OR, AND and NOT. [0083] This ranking may also be modified, by weighting each appearance by the rank of the query, that generates said relation. [0084] This will enable to present the terms, such as `road`, `sand` and `mud` in appropriate order: most useful term at the top. [0085] It would be appreciated that a regular thesaurus will not provide such relations nor contain many professional terms (such as densitometer and "SELFOC lens"). The method of this invention generates a database containing such terms, introduced by the users during search sessions.
[0086] The data collected during the search session is then stored in the System Database together with the set of parameters and calculated ranks. This also includes submitted queries, URLs, summaries, terms and their relations and ranking.
[0087] The amount of such data accumulates more rapidly when the System is used by a group of users. This is the case in organizations, where many members of the organization search for information regarding similar subjects.
[0088] Reference is made now to FIG. 2, which demonstrates a preferred embodiment of Human Interface 114 of FIG. 1.
[0089] In order to enable a comprehensive explanation, it is assumed that an amount of data has already been collected in System Database 108 by the process described hereinabove and this data is available for assistance of searches made by individuals.
Query Composition Section:
[0090] In a preferred embodiment of the invention, Query Composition section 200 contains Query window 202 where the current query is composed and Related Queries window 204 for display of relevant queries stored in System Database 108. It will be appreciated that although this preferred embodiment is explained in reference to complex Boolean queries, other embodiments of the present invention may be implemented without or partial Boolean relations. Example: Ther query "Term1 OR Term2 AND Term3" maybe used in a relaxed form "Term1 Term2 Term3" and allow the search engine default Boolean interpretation to take place.
[0091] Basic query composition is done in Query window 202, by typing words, expressions, Boolean operators and conventional singes. Following are some examples: [0092] Words: car, road, table, . . . [0093] Expressions: "racing car", "road map", "Tolman's coffee tables", . . . [0094] Boolean operators: OR, AND, NOT, ADJ, . . . [0095] Indefinite termination: info* stands for: (information OR inform OR Infocenter OR . . . )
[0096] Related queries are displayed in Related Queries window 204. In a simple implementation of the present invention, terms from Query window 202 are used to search System Database for stored queries that contains such terms. The queries are displayed in Related Query window according to their rank, highest rank first.
[0097] In a more sophisticated implementation of the present invention, the queries containing terms of Query window 202 are specially ranked for display in Related Queries window 204. This ranking may first rank the queries in accordance to the number of terms from Query window 202 that are contained in these queries and then, a sub-level sorting is performed, where all queries of the same ranking are sub-sorted by their own rank (as stored in System Database 108). Other ranking schemes are possible.
[0098] In default, the top query of Related Query window 204 is highlighted. Any other query of window 204 can be highlighted by clicking on it. More then one query may be highlighted simultaneously. Double clicking a query of Query window 204 will copy the query to Query window 202, instead of what was previously in that window. Related Query window 204 will refresh then, according to the new query in Query window 202.
[0099] More queries may be observed in Related Queries window 204 by using Roll Slider 236. [0100] The method of clicking, double clicking, highlighting, window rolling with a roll slider and other such elements are in accordance to the conventions of Windows'XP from Microsoft Corporation, Seattle, Wash., U.S.A. It will be assumed that the reader is familiar with these conventions and they will not be described here in more details.
Related Terms Section:
[0101] Related Terms section 206 within Query Composition section 200 supports the process of query composition by listing terms that are related to the terms of the query in Query window 202. Related Terms section 206 contains four windows: [0102] 1. Key Terms window 208 is used for controlling key terms. Such terms, indicated as KeyTerm1, KeyTerm2 . . . (KT1, KT2 . . . ) are automatically selected from Query window 202, excluding Boolean operators and Boolean syntax. The user may add, remove or select any terms of window 208. In a simplified implementation of the present invention, the terms of window 208 are presented in the same order of appearance in the query of Query window 202. [0103] In another implementation of the invention, the terms are presented in accordance to their ranking-high ranking first. [0104] Other sorting methods for display order are possible. [0105] In default, the first term of Related Terms window 208 is highlighted. The user may highlight any other term. Terms may be added, edited and removed from window 208. [0106] 2. `Or` window 210 contains terms that we are related to the terms of Key Terms window 208. The relation is established by the Boolean operator `OR` in queries composed and stored in System Database 108 in previous search sessions. For example `Term1` in window 210 appears in at least one query stored in System Database 108, [0107] either in the form [0108] . . . KeyTerm1 OR Term1 . . . [0109] or in the form [0110] . . . KeyTerm2 OR Term1 . . . [0111] The order of the terms presented in window 210 may be according to the following sorting: [0112] First: terms that are related to the highlighted term of window 208. [0113] Then: terms are sorted according to their ranking (described hereinabove). [0114] Then: terms that are related to non highlighted terms of window 208, arranged in groups of the same order as the ranking of the non highlighted terms of window 208. [0115] Then: each of the group of terms relating to a non highlighted term of window 208 is sub-sorted according to their own ranking. [0116] 3. `And` window 212 contains terms that we are related to the terms of Key Terms window 208. The relation is established by the Boolean operator `AND` in queries composed and stored in System Database 108 in previous search sessions. For example `Term4` in window 212 appears in at least one query stored in System Database 108, [0117] either in the form [0118] . . . KeyTerm1 AND Term4 . . . [0119] or in the form [0120] . . . KeyTerm2 AND Term4 . . . [0121] Order of display is according to the method of window 210. [0122] 4. `Not` window 214 contains terms that we are related to the terms of Key Terms window 208. The relation is established by the Boolean operator `NOT` in queries composed and stored in System Database 108 in previous search sessions. For example `Term7` in window 214 appears in at least one query stored in System Database 108, [0123] either in the form [0124] . . . KeyTerm1 NOT Term7 . . . [0125] or in the form [0126] . . . KeyTerm2 NOT Term7 . . . [0127] Order of display is according to the method of window 210.
[0128] Nested Boolean relations are supported. For example, query of the type [0129] (A OR B) AND (C OR D) NOT (E OR F) will generate the following relations:
TABLE-US-00002 [0129] Key Term Or And Not A B C, D E, F B A C, D E, F C D A, B E, F D C A, B E, F E F A, B, C, D F E A, B, C, D
[0130] Button `Go`, 216, is used to indicate that the composition of the query is complete and the system is to retrieve information in accordance to that query.
[0131] It would be appreciated that the above example of preferred embodiment can be used in a more simple form such as displaying to the user only a list of Related Terms, in a single window. For example, the Related Terms section may display the list of "Term1, Term2, . . . , Term9" in a single window without any additional information.
Documents Section:
[0132] Document section 218 is used to display titles and summaries of documents in accordance to the highlighted Query in Related Queries section 204.
Title Window:
[0133] The titles of the documents are displayed in Title window 220 are titles that are highly relater to the highlighted query of window 204, Query2 in the example of FIG. 2.
[0134] The titles are available from System Database 108 and are displayed in order according to their ranking. High rank displayed first.
[0135] If the number of such titles is lower then No. of Titles 228 (20 in the example of FIG. 2), the next group of titles is extracted from System Database 108. These titles are related to the non-highlighted title with the highest rank in window 208. If this does not provide the required number of titles, the next group of titles is extracted from System Database 108. These titles are related to the non-highlighted title with the second highest rank in window 208. This procedure is repeated until the required number of titles is provided.
[0136] Each such group of titles is sub-sorted according to the rank of the titles.
[0137] Titles are also filtered for display by Which Title? window 232. In the example of FIG. 2, only New titles are presented. These are titles that have not been reviewed yet by the present user. The filtering action of the preferences is explained in more details hereinbelow, in the Preference section part.
[0138] A single click on a title of window 220 will effect the display of summaries in Summary window 222 as explained hereinbelow.
[0139] A double click on a title of window 220 will display the document of that title.
[0140] Window 224 is an indicative window that displays the URL of the highlighted title of Window 220.
Summary Window:
[0141] The summaries of the documents that are displayed in Summary window 222 are related to the list of titles in window 220. The summary of the highlighted title, Title3 of window 220 in the example of FIG. 2, is displayed in bold underlined characters, at the top of window 222, indicated as Summary3. Unused area, below Summary3, is used for summaries of subsequent tiles, as provided by the size of window 222. These summaries are presented in the same order as the titles of window 220. The roll slider of this window allows both up-rolling for summaries preceding Sammary3 and down-rolling for summaries succeeding Sammary3.
[0142] Double clicking a summary will display the document of that summary.
Preferences Section:
[0143] Preferences section 226 is used for input, by the user, of preferences for the search session. A maximum number of titles to be presented is indicated in window 228, adjustable by the user. Date Range windows 230 indicate the earliest and latest dates of that rang. Only documents that were updated in System Database 108 within this range will be presented. The dates are adjustable by the user. Which Title window 232 contains multi-choice options. Three such options may be: [0144] 1. `New`: documents that the current user did not see before the present search session--documents that are new to the current user. [0145] 2. `Reviewed`: only documents that have been reviewed by the current user in a previous session. This is useful when the user is interested in a document he reviewed in the past but does not know the location of that document. [0146] 3. `Any`: displays both `New` and `Reviewed` documents.
[0147] Database windows 234 indicates the database to be used by the system.
[0148] Local window 238 is used to select the preferred local database to perform as System Database 108. This may be one of few local databases or a portion of a database. The different options may be indicated by names such as: [0149] Electronics: the portion of the database related to the electronic engineers. [0150] Marketing: the portion of the database related to the marketing people. [0151] All: All database.
[0152] This arrangement is described in more details in Israeli patent application number 119183 dated Sep. 2, 1996 (Haim Zvi Melman et al.).
[0153] The selected database is used during the user's interaction with the human interface of FIG. 2 including when a query is submitted for search (old or new query).
[0154] Internet window 240 is used to select the preferred Internet database sources. This is useful for submission of queries for search of new documents (or titles) that are not in the local database. Pre-configured selections of sources are available at this window.
Aided Search Session:
[0155] The aided search session will be described hereinbelow in reference to FIG. 2 and FIG. 3.
[0156] For simplicity, all elements of FIG. 2 are indicated with the digit 2 for the hundreds digit, such as 202, 206 and 214.
[0157] All elements of FIG. 3 are indicated with the digit 3 for the hundreds digit such as 302, 306 and 314.
[0158] It will be appreciated that the system can handle multiple simultaneous search sessions, conducted by different users, independently. Each user may use his own preferences configuration in Preferences window 226. The data collected from each user is added to System Database 108 to serve all users. Parts of System Database 108 may be limited for use by only few users, not accessible to others.
[0159] In this example, the preferences of window 226 will be as indicated in FIG. 2:
TABLE-US-00003 No. of Titles: 20 Which Title: New Date Range Earliest: 14 Feb. 1997 Latest: 01 Jan. 1998 Source: Local: Mechanics Internet: Set 5
[0160] 1. The user types KeyTerm1 (KT1) and space in window 202 (step 304 of FIG. 3). [0161] 2. The space is interpreted by System 100 as a term separator. [0162] 3. KT1 is the only term at this stage and it is the only term (Key Term1) displayed in Key Terms window 208 (step 306 of FIG. 3). [0163] 4. System 100 is searching System Database 108 for stored terms that are related to KT1 (step 308 of FIG. 3). [0164] 5. The terms that are related to KT1 are displayed in windows 210, 212 and 214 according to the presentation rules of these windows (step 310 of FIG. 3) [0165] 6. System 100 is searching System Database 108 for stored queries that contain KT1 (step 312 of FIG. 3). [0166] 7. The selected queries are displayed in window 204 according to the display rules of that window (step 314 of FIG. 3). First query is highlighted by default. Another query can be highlighted by the user by a single click on the query. [0167] 8. In step 316 System Database 108 is searched for titles that are related to the queries of window 204. [0168] 9. The related titles are displayed in window 220 according to the display rules of that window (step 318 of FIG. 3)). First title is highlighted by default. Another title can be highlighted by the user by a single click on the title. [0169] 10. System 100 is searching System Database 108 for stored summaries associated with the titles of window 220 (step 320 of FIG. 3). [0170] 11. The selected summaries are displayed in window 222 according to the display rules of that window (step 322 of FIG. 3). [0171] 12. The user may now select to add a Key Term in window 202 either by typing in the term or by selecting a Term from any of windows 210, 212 and 214 by double clicking a Term. If he double clicks a term from said window, the Term will be added to the term in window 202 together with its' Boolean operator: OR, AND or NOT, according to the window from which the term was selected. This term will be added as Key Term2 (KT2) to window 202. [0172] The user may introduce editorial changes to the content of window 202 such as changing the Key Terms or the Boolean operators. [0173] 13. System 100 repeats steps 306 through 322 of FIG. 3, applying all the display rules of the relevant windows. [0174] 14. The above process is repeated until the user is satisfied with the query he composed or by one of the queries displayed in window 204. [0175] 15. At this stage the user has made his choice of a query (326 of FIG. 3B). If his decision is for a query from window 204, the user will double click that query (step 328). The selected query is copied to window 202, replacing the text that was previously there (step 330). Steps 306 through 322 are repeated by System 100 (step 332). [0176] It will be appreciated that the user may edit the query in window 202 even if it was copied there from window 204 or double click another query of window 204. [0177] 16. If the user is satisfied with the query of window 202 and has not found yet the information he is looking for in System Database 108 (as specified by the reference window 226), window 216 is clicked once (step 334). [0178] 17. System 100 performs then a search for documents in accordance with the query of window 202 and preferences of window 226. The search is limited to sources specified in windows 238 and 240, filtering out documents outside of Date Range 230 and documents that have been seen in the past by the current user, as required by window 232 (step 336). [0179] 18. In step 338 the search results are displayed in windows 220 (titles) and 222 (summaries). Summaries of documents that are new to the database may be extracts from the document by a variety of methods such as reading the content of the relevant Meta Tag in an html file type or just reading the first few lines of the document. [0180] 19. The user may select a summary and double click it (step 340). [0181] 20. The selected document is displayed in a dedicated window, such as a Netscape browser window (step 342).
[0182] The user may view documents, step back to the search process modifying his search activity in a variety of ways such as composing new queries, editing queries and changing preferences of window 226.
[0183] Following predetermined conditions (such as every 10 minutes or end of search session or every logout) System 100 is processing the new search information and generates new data for System Database 108. This data is added to the previously stored data for future aided search sessions, as described hereinabove (section of Initial search process).
Aided Search with Key Terms and Queries External to Accumulated Database
[0184] It is appreciated that when a user uses the system for the first time or searches a new subject, the database might not contain Related Terms or Related Queries to support the user with the query composition process.
[0185] In the following preferred embodiment of the invention, a method is presented to support the query composition in such a case.
[0186] In this embodiment, the query composed by the user is submitted to the internet sources, such as Alta Vista (www.altavista.com). When server 102 finds no Related Terms or Related Queries; the server analyses the results page received from the internet source in search for relevant terms and or expressions.
[0187] In the following example the query "sharon" was placed to www.altavista.com. A section of the results page received is displayed here (the term "sharon" is underlined with double-line for easy reference):
TABLE-US-00004 ">More pages from en.wikipedia.org</A> <BR><BR><BR class=lb><A class=res href="http://av.rds.yahoo.com/_ylt=A0geulwYBzhlGxABCitrCqMX;_ylu=X3 oDMTBvdmM3bGlxBHBndANhdl93ZWJfcmVzdWx0BHNlYwNzcg-- /SIG=12lb2st5a/EXP=1211717784/**http://www.jewishvirtuallibrary.org/jsourc- e /biography/sharon.html">Jewish Virtual Library: Ariel <B>Sharon</B></A><BR><SPAN class=s>Brief profile of Ariel <B>Sharon</B>, the former Prime Minister of Israel.<BR></SPAN><SPAN class=ngrn>www.jewishvirtuallibrary.org/jsource/biography/sharon.html </SPAN><SPAN class=rgy></SPAN><BR><A class=rgy href=http://av.rds.yahoo.com/_ylt=A0geulwYBzhlGxABCytrCqMX;_ylu=X3 oDMTBoMXBjOWUxBHBndANhdl93ZWJfcmVzdWx0/SIG=13ik8r56t/EXP =1211717784/**http://www.altavista.com/web/results?sc=off&q=sharon +domain%3Ajewishvirtuallibrary.org >More pages from jewishvirtuallibrary.org</A> <BR><BR><- ;BR class=lb><A class=res href="http://av.rds.yahoo.com/_ylt=A0geulwYBzhlGxABDCtrCqMX;_ylu=X 3oDMTBvdmM3bGlxBHBndANhdl93ZWJfcmVzdWx0BHNlYwNzcg-- /SIG=11n7bfa4b/EXP=1211717784/**http://en.wikipedia.org/wiki/Sharon"> <B>Sharon</B> - Wikipedia, the free encyclopedia</A><BR><SPAN class=s><B>Sharon</B> Mann, American voice actress working in Paris, France. <B>Sharon</B> Osbourne, music promoter and TV <B>...</B> <B>Sharon</B> Stone, American actress, model and producer <B>...</B><BR></SPAN><SPAN class=ngrn>en.wikipedia.org/wiki/Sharon </SPAN><SPAN class=rgy></SPAN><BR><A class=rgy href="http://av.rds.yahoo.com/_ylt=A0geulwYBzhlGxABDStrCqMX;_ylu=X 3oDMTBoMXBjOWUxBHBndANhdl93ZWJfcmVzdWx0/SIG=13al9kbnr/EXP =1211717784/**http://www.altavista.com/web/results?sc=off&q=sharon +domain%3Aen.wikipedia.org">More
[0188] Related terms search algorithm may consist of a simple method such as: fins first word adjacent to the term "sharon". Select only single words that are separated from "sharon" by expressions <B> or </B>, ignore connection words and punctuation marks.
[0189] This simple algorithm will provide the following Related Terms from the above section of Alta Vista results page (underlined with a single-line for easy reference): [0190] a) Ariel [0191] b) Mann [0192] c) Osbourne [0193] d) Stone.
[0194] These terms may be offered to the user as Related Terms to help him improve his query.
[0195] It would be appreciated that, using other terms extraction algorithms, additional Related terms and even Related queries may be extracted from the results pages of the internet resources.
[0196] For example, the complete term "Sharon Mann, American voice actress working in Paris, France" can be extracted from the result page and offered as a Related Query.
[0197] In yet another preferred embodiment of the invention, the commonly html search results of the internet source can be saved as a text file using the save function of the operation system such as Microsoft Windows XP.
[0198] A section of the results page after saving as a text file is displayed here (the term "sharon" is underlined with double-line for easy reference): [0199] Jewish Virtual Library: Ariel Sharon [0200] Brief profile of Ariel Sharon, the former Prime Minister of Israel. [0201] www.jewishvirtuallibrary.org/jsource/biography/sharon.html [0202] More pages from jewishvirtuallibrary.org [0203] Sharon--Wikipedia, the free encyclopedia [0204] Sharon Mann, American voice actress working in Paris, France. Sharon Osbourne, [0205] music promoter and TV . . . Sharon Stone, American actress, model and producer . . . [0206] en.wikipedia.org/wiki/Sharon [0207] More pages from en.wikipedia.org [0208] Sharon Osbourne [0209] Official site with news, bio, gallery, and links. [0210] www.sharonosbourne.com [0211] More pages from sharonosbourne.com [0212] Welcome to the Town of Sharon, Conn. [0213] Official web site of the Town of Sharon, Conn. . . . Sharon Beach. [0214] Available [0215] Forms, Licenses for download. Download the Luke-Fitting Report . . . [0216] www.sharonct.org [0217] More pages from sharonct.org
[0218] Also here, a simple algorithm will extract relevant Related Terms. For example:
[0219] Select one word before or after the term "Sharon" with one space or new-line separation, ignore connection words and punctuation marks.
[0220] This will extract the terms underlined above with a single line: [0221] a) Ariel [0222] b) Brief [0223] c) Former [0224] d) Wikipedia [0225] e) Encyclopedia [0226] f) Mann [0227] g) France [0228] h) Osbourne [0229] i) Stone [0230] j) Town [0231] k) Connecticut [0232] l) Beach
[0233] These terms can be ranked using on-page criteria such as number of appearance in the page to provide a higher relevancy presentation order.
[0234] It is understood by those skilled in the art that expressions to serve as queries may also be extracted form this page by using more then first neighbor to the term "Sharon".
[0235] In yet additional preferred embodiment of the present invention, the Related Queries presented to the user as response to his query may contain a composition of Related Queries extracted from the internet source result page and system database 108. Same way, Related Terms presented to the user as response to his query may contain a composition of Related Terms extracted from the internet source result page and system database 108.
[0236] As it might be desired by the user to distinguish Related Terms (or Queries) from internet sources and Related Terms (or Queries) from system database 108, the terms from the different sources may be displayed using different colors (example: blue for terms extracted from Internet resources search results and black for terms extracted from system database 108). Other distinguishing methods can be used such as underlining one group or presenting each group in a separate window.
[0237] This will enable the user to see which support is based on general algorithm and which support is based on his (or his group) pervious work.
[0238] In another embodiment of the invention, the user may select display options that provide any of the combinations such as: [0239] 1. Display terms from system database 108 [0240] 2. Display terms from internet sources search results [0241] 3. Display terms from both system database 108 and from internet sources search results [0242] 4. Display terms from internet sources search results only if not terms are available from system database 108
Search Session
[0243] Simple queries such as of one or two Key Terms are the most intuitive and are frequently the first ones composed in a search session. In another embodiment of the invention, the user may submit such a simple query that in a present art search system will fail to produce useful results and provide many falls results. In the present invention, submission of such a query will actually result in submission of a number of more sophisticated queries, these are Related Queries available from System Database 108. These queries may be those of a rank above a predetermined threshold. The results will be those that are associated with the highly ranked Related Queries. This methods enables valuable results from a simple and intuitive query--not effective by itself.
[0244] A method is presented hereinbelow, to associate such simple queries that, in most cases, do not provide the desired results, with more sophisticated queries that are usually not intuitive and are composed only after few interaction with search results and query modifications accordingly.
[0245] A search session is defined to be the process of searching information related to a specific subject. A search session includes the composing of queries, submission of queries to a search engine, evaluation of results, modification of queries as a response to such search results, submission of such modified queries--and so on.
[0246] Two sessions are different if the subject is different.
[0247] In the present embodiment of the invention, semi-automatic session tracing is performed by the system. Queries are identified to belong to the same search session in the following way:
[0248] New search session starts by a query (normally after the application is activated). Each new or modified query is compared to all the previous queries. If at least one keyword of this query is used in one of the previous queries of that session--the new query is belongs of the same session.
[0249] If the user go through strategy change in his queries there may be no keyword relation anymore to previous queries even if this is the same search session. For example, a user may search for information on 35 mm film dimensions. He may start with a query "film and 35 mm" and change strategy to search for standard organizations with the query "iso". To overcome this problem in the present embodiment, when this occurs, the system responds to the user with a question: "Have you started a new search session? Y/N". If the user answers "N" the queries "film and 35 mm" and "iso" are associated with the same search session.
[0250] Next time that the query "film and 35 mm" will be composed by a user, a reference will also be made to the query "iso" as a relevant query. Useful titles retrieved by the query "iso" will be available then also for the query "film and 35 mm".
[0251] If the user replies "Y", the previous set of queries are associated with one search session while the new query is the first one of the new search session.
[0252] In yet another embodiment of the invention, the data that is collected and processed trough the search sessions is used to generate and support direct information exchange and communication among the members of an organization.
[0253] As described hereinabove, during the search session Related Queries and Titles from System Database 108 are associated with the search activity of the user. Since such queries and titles are related also to other users who used them in the past, the names of such users can be presented to the current user for user to user communication.
[0254] In the present example, after the user has worked through at least a part of his search session, such a relation to Related Queries and Titles of System Database 108 has been established. The user interface of FIG. 2 may contain "Names" indicator. By clicking this indicator, System 100, opens a new window. This window contains names, email addresses and phone numbers of the users who used the Related Queries and Titles in the past.
[0255] The order of names in the window may by according to the order of Related Queries of window 236 of FIG. 2. Where two or more names are related to a query the order of presentation of these names would be according to the number of Related Queries with which the names are associated, names associated with more queries to appear first.
[0256] The names are adjacent to checkboxes. The user may now, for example, use the checkboxes to select a subgroup of the names and then select an Email option. An email form addressed to the checked names will be opened. The user may then write an email to this group of user, asking for more information about their activity in the subject of his search session.
[0257] Of course, the user may also select to use the phone numbers to call these people.
[0258] An example that highlights the usefulness of this method is provided hereinbelow:
[0259] A user may look for an international standard in a specific matter. By looking at the ISO Internet site (www.iso.ch) He may find a reference to the standard he needs but the standard itself is not available there. The standard has to be ordered separately, be paid for and delivered by mail.
[0260] In this example the user may place a relevant query in query window 202 in order to get names of people, in the organization, who are involved in that subject. Then he can email them an inquiry to find whether they have in possession the requested document. By doing so he may shorten the time and cost to get the required document.
Search-Targeted Promotions
[0261] In yet another preferred embodiment of the invention, the information accumulated in the system database 108 can be used to provide the user with Search Targeted Promotions.
[0262] In this embodiment, a Promotions Database containing items such as advertisements, coupons and special discount or other types of information is stored in the system database or another database in the system computer or any other storage accessible by the system.
[0263] These items are associated with the providers of the promotions. The association may be made in a variety of ways. In the present example the association is made by the URL of the provider. As demonstrated in the following table:
TABLE-US-00005 Promotion URL Ad1 www.a.com Coupon1 www.a.com Ad2 www.b.com Coupon2 www.c.com
[0264] Ad2 for example is associated with URL www.b.com.
[0265] An example step-by-step usage of the accumulated information in system database 108 is described hereinbelow: [0266] 1. The user submits a query through query window 202 (FIG. 2). [0267] 2. The server searches system database 108 for related queries and subsequent related titles. [0268] 3. The system extracts the URLs of the related titles [0269] 4. The system searches for related URLs in the Promotion Database (see, on the next paragraph, how such a related URL can be searched) [0270] 5. In case such a URL is found in the Promotion Database, the system presents the associated promotion to the user.
[0271] It would be appreciated that searching for a related URL in the database is not limited to the complete and exact URL only. A more sophisticated algorithm may search for a useful fraction of the complete URL. For example, when given a title-related URL such as "http://www.coveo.com/en/News/Default.aspx", the system can extract only ".coveo.com" and search for this string in the Promotion Database. In such a case a related URL such as "http://www.coveo.com/en/Contact/ContactUs.aspx" may be the result of this process. The string used to search a related URL can be extracted from the complete URL using simple algorithms such as: [0272] 1. Search for first point following "http://" [0273] 2. Extract all that is between this dot and the next dot, including the dots. [0274] 3. Compare a set of pre-stored strings to the string starting after the second dot, first character to first character, second to second etc. Such a pre-stored set may include strings such as: "com", "co.", "net", "org", "info", "biz", "mobi", "me" etc. [0275] 4. Alternatively the step of extracting the string following the second dot might use "end of string" indicating characters such as "." (dot) or "/" (slash), [0276] 5. Add the matching string to the string extracted in step 2 above.
[0277] The promotion may be presented in a variety of ways including, but not limited to, on a specific area in the results page, a separate pop-up page or a banner.
[0278] The order of displaying such promotions may be according to the order of the titles in the search results page. This will fit an already implemented relevancy algorithm generated by the user activity and thus, be of the same relevancy value to the user. If more then one promotion is in the list for the same URL, the system can be designed to display them in a pre-determined order such as alphabetic order, present only one promotion for each URL, selected arbitrarily from the promotions available for this URL or any other method.
[0279] In the following section a specific example is provided for Search Targeted Promotions.
[0280] In this example the user query database includes the following list of queries with related titles, associated URLs and ranking.
[0281] The list should be interpreted per the following key: [0282] 1. Query [Ranking] [0283] a. Title--URL [Ranking]
[0284] The list in this example: [0285] 1. Vancouver restaurants [5] [0286] b. C Restaurant--www.crestaurant.com [1] [0287] 2. Beethoven symphony 5 [12] [0288] c. Beethoven Symphony #5--www.wwnorton.com/classical/covers/47651.htm [29] [0289] d. The Beethoven Symphonies page--www.all-about-beethoven.com/symphony.html [17] [0290] 3. Vancouver Indian restaurants [3] [0291] e. Indian Oven Restaurant Ltd--www.theindianoven.com [-3] [0292] f. India Gate Restaurant Ltd--www.indiagatefood.com [7] [0293] g. Chutney Villa South Indian Cuisine Inc--maps.google.com [2] [0294] h. Nirvana Restaurant--www.nirvanarestaurant.ca [4] [0295] 4. Vancouver restaurants Chinese [8] [0296] i. Pink Pearl Chinese Seafood Restaurant--www.pinkpearl.com [9] [0297] j. Shanghai Chinese Bistro--www.shanghaichinesebistro.com [2] [0298] 5. Racing car 5 liter [6]
[0299] In this example the promotion database includes the following items:
TABLE-US-00006 Promotion URL Ad1 www.crestaurant.com Coupon1 www.amazon.com Ad2 www.ebay.com Coupon2 www.pinkpearl.com
[0300] The step by step process is described herein as a specific and non limiting example: [0301] 1. The user submits a query comprised of one term: "Vancouver" [0302] 2. System database 108 is searched for Related Queries. [0303] 3. Queries 1, 3 and 4 are found and displayed in the ranking order: [0304] a. Vancouver restaurants Chinese [8] [0305] b. Vancouver restaurants [5] [0306] c. Vancouver Indian restaurants [3] [0307] 4. Associated titles are presented in ranked order [0308] a. Pink Pearl Chinese Seafood Restaurant--www.pinkpearl.com [9] [0309] b. Shanghai Chinese Bistro--www.shanghaichinesebistro.com [2] [0310] c. C Restaurant--www.crestaurant.com [1] [0311] d. Indian Oven Restaurant Ltd--www.theindianoven.com [-3] [0312] e. India Gate Restaurant Ltd--www.indiagatefood.com [7] [0313] f. Chutney Villa South Indian Cuisine Inc--maps.google.com [2] [0314] g. Nirvana Restaurant--www.nirvanarestaurant.ca [4] [0315] Note: in this example the order is driven first by the query ranking and then by the title ranking [0316] 5. The URLs of the associated titles in the search results are compared with the URLs in Promotion Database. [0317] a. Two URLs match:
TABLE-US-00007 [0317] Promotion URL Ad1 www.crestaurant.com Coupon2 www.pinkpearl.com
[0318] 6. Ad1 and Coupon2 are presented to the user, having the benefit that these promotions are associated with providers ranked highly by this specific user.
[0319] It would be appreciated that in a case of a database created and used by multiple users, the user may be presented with promotions that are selected with the above process except that the queries, titles and URLs used in the process are an aggregate of at least a part of the queries, titles and URLs from all users or from a users sub-group selected by the user.
[0320] In yet another embodiment of the present invention, the accumulated database can be used to target advertising or promotions to the user without the use of promotions database. In this embodiment the accumulated database is used to provide the advertising source with more information that is normally available, to support this source with better selection of more suitable advertisement. This method will be explained by the following example.
[0321] In this example the user query database includes the following queries with related titles, associated URLs and ranking [R]: [0322] 6. Vancouver restaurants [5] [0323] k. C Restaurant--www.crestaurant.com [1] [0324] 7. Beethoven symphony 5 [12] [0325] l. Beethoven Symphony #5--www.wwnorton.com/classical/covers/47651.htm [29] [0326] m. The Beethoven Symphonies page--www.all-about-beethoven.com/symphony.html [17] [0327] 8. Vancouver Indian restaurants [3] [0328] n. Indian Oven Restaurant Ltd--www.theindianoven.com [-3] [0329] o. India Gate Restaurant Ltd--www.indiagatefood.com [7] [0330] p. Chutney Villa South Indian Cuisine Inc--maps.google.com [2] [0331] q. Nirvana Restaurant--www.nirvanarestaurant.ca [4] [0332] 9. Vancouver restaurants Chinese [8] [0333] r. Pink Pearl Chinese Seafood Restaurant--www.pinkpearl.com [9] [0334] s. Shanghai Chinese Bistro--www.shanghaichinesebistro.com [2] [0335] 10. Racing car 5 liter [6]
[0336] In addition, in this example the following terms database and terms ranking is available from the query database:
TABLE-US-00008 Key Term Related Key Terms [and ranking] Vancouver Restaurants[14], Indian[2], Chinese[6] Restaurants Vancouver[7], Indian[3], Chinese[15] Indian Vancouver[5], Restaurants[7] Chinese Vancouver[8], Restaurants[3] Beethoven Symphony[7], 5[1] Symphony 5[2], Beethoven[21] 5 Beethoven[3], Symphony[4] Racing Car[6], 5[2], Liter[8] Car Racing[7], 5[1], Liter[3] 5 Racing[2], Car[1], Liter[4] Liter Racing[7], Car[19], 5[2]
[0337] The Related Key Terms are related to the Key Terms because the user once included them in a single query, meaning that he considers this relation valid for himself.
[0338] We also assume here an Internet source that includes functionality to receive a query and deliver advertisement in response to the query. Such an example is Goggle (www.google.com) Sponsored Links enabled by AdSense and AdWords programs. The term "Sponsored Ads" will be used here to refer to these advertisements.
[0339] The usage of this database for delivering of better-targeted promotions or advertising is explained here step-by-step. [0340] 1. The user places a query containing one term: "Vancouver" [0341] 2. The Internet source will provide typical search results for such a query The Sponsored Ads (advertising sponsored by advertisers), based on this query will include the following (as exercised with www.google.com on 26 May, 2008, 21:50 GMT): [0342] 30 Hotels in Vancouver--Canada [0343] Great rates, guest-reviews. No reservation fee, you pay at the hotel. [0344] Booking.com/Hotels-Vancouver-Canada [0345] Book Hostels in Vancouver [0346] Cheapest Beds--No Booking Fees. 2,000 Destinations. Book Online Now. [0347] www.HostelBookers.com/Vancouver [0348] Vancouver Bc Hotel [0349] Compare hotel prices from over 120 top websites and save up to 70%. [0350] Hotels.SideStep.com [0351] Cheap Hotel in Vancouver [0352] Find cheap deals on 100+ hotel sites with 1 search! No booking fees. [0353] www.Kayak.com/Hotels [0354] Lord Stanley Suites: Vancouver [0355] Premier boutique hotel overlooking Coal Harbour and Stanley Park. [0356] www.lordstanley.com [0357] Vancouver B.c--Vancouver, BC [0358] Need a virtual office? Fully furnished? We have what you need. [0359] www.awardbusinesscentres.com [0360] Vancouver Hotels [0361] Save on Vancouver Hotels. Sort by price, location and star rating . . . [0362] book.hotelreservations.com [0363] BC Hotel Vancouver Hotel [0364] Need a Hotel in Vancouver? BC Hotel Vancouver Hotel Bargains. [0365] www.Calibex.com/Hotels [0366] None of the above advertisements targets the clear main interest of this specific user in Vancouver, which is Indian and Chinese restaurants. [0367] 3. In this preferred embodiment however, in addition to the query "Vancouver" used for search results, another query may be submitted using the terms database. In this example one word from the 3 words associated with "Vancouver" is selected, the word with the highest ranking: "restaurant". The second query submitted to the internet source is then "Vancouver restaurants", reflecting the user personal interest. This query is submitted as a background activity, unseen by the user. [0368] 4. This query generates a new results page and a new set of Sponsored Ads, the sponsored ads being highly relevant to the user personal interest in restaurants: [0369] Vancouver Restaurants [0370] Hundreds of Tasty Listings Photos, Menus, Reviews and More. [0371] www.clubZone.com [0372] T Online: Vancouver, B.C. [0373] Read about Vancouver's nightlife, hotels, restaurants and more. [0374] www.nytimes.com [0375] 5. Both result pages: (1) The result page for the user query "Vancouver" and (2) The result page for the system automatic background query "Vancouver restaurants" are received by the system of the current invention. [0376] 6. The search results from the first page are combined with the Sponsored Ads of the second page to create a third page containing the search results for "Vancouver" and the Sponsored Ads for "Vancouver restaurants" [0377] 7. The combined page is now displayed to the user offering the search results he asked for with advertising that suites better his interest.
[0378] It would also be appreciated that the above process can be executed by the Internet source. In this example www.Google.com may receive both queries and generate the combined result page and send it to the user already containing the search results for "Vancouver" and the Sponsored Ads for "Vancouver restaurants".
[0379] If the user database is available to the Internet source, the whole process can take place at the Internet source, such as www.google.com.
[0380] It would be appreciated that submitting a single term as the preliminary query is suggested hereinabove only as an example and that any query can be used at this stage.
[0381] The invention is not limited to the above usage of related terms. Also complete queries used in the past by the user can be used for this process. For example, when submitting the query "Vancouver" the system can search for a related query and find "Vancouver Indian restaurants" as a highly ranked query in the user database. This query can be used to search for relevant Sponsored Ads.
[0382] Also more then one related term might be added to a query, and more then one subsequent queries can be submitted to extract relevant Sponsored Ads.
Using User's Document History for Search-Targeted Promotions
[0383] The above methods described using the user's related terms or query database to enhance the relevancy of Sponsored Ads to the specific user.
[0384] In addition to the user's related terms or query database, the system can use also documents that are registered to the user. Such documents can be registered to the user via the URLs in his database, as described in this invention or via "Favorites" as provided by Internet Explorer of Microsoft Corporation. Related terms can be extracted from such documents using the method of "Aided search with Key Terms and Queries external to accumulated database" described hereinabove. These terms can be used to compose the secondary query aimed for the extraction of Sponsored Ads that are better targeted to the specific user.
[0385] It would be appreciated, throughout the above examples, that at least a part of databases of different users may be integrated to serve a given user so that he can benefit from search activity of these users. So are documents and other similar sources that might resident on separate and unrelated databases. A typical such integration might be based on importing such data to a single database.
Additional Ranking Methods
[0386] In another embodiment of the present invention, ranking can be a weighted balance between older ranking and newer ranking. This approach serves to fit better possible changes in user activity.
[0387] One such weighting method can be time driven. The ranking of an item (query, URL or any other item) is eroded as a function of time that passed since it was last used.
[0388] In this example, existing ranking of an item (R) might be multiplied each month by a factor (F). By doing so, the ranking of such item is reduced over time when not used.
[0389] For example, selecting F=0.99, the ranking of the item relative to the ranking it was last used (or ranked) will be as shown in the table below, using the following formula:
R(now)=R(last)*Fm. (2)
R(now) is the current rank R(last) is the rank of the item following the last ranking action F is the monthly rank reduction factor m is the number of months passed since the last ranking action
TABLE-US-00009 Year Relative ranking 1 0.89 2 0.79 3 0.70 4 0.62 5 0.55 6 0.48 7 0.43 8 0.38 9 0.34 10 0.30
[0390] If the user is ranking now and already ranked item, the ranking process may take a weighted sum of the old ranking (R0) and the new one (R1) to create the new ranking (R):
R=R0*Fm+R1 (3)
[0391] The above specific example provides few time-depended features for ranking management: [0392] 1. Each ranking of a given item uses the highest weight to the last ranking and lowest weight to old ranking. [0393] 2. This means that items are considered more relevant if they were used lately and less relevant if they have not been used lately. [0394] 3. If items are not used for long time (and not ranked), it means that these items are not relevant anymore to the users. The reduced rank will then serve to avoid presentation of such items as relevant to the user. [0395] 4. Wherever the system is used by a single user of a collaborating group, the system "follows" the trend of interest of the users. "Low Interest" items will decline in their ranking while "High Interest" items will have an increasing ranking. A person skilled in the art would appreciate that there is also a level of inters that will keep the ranking unchanged. [0396] 5. Ranking of an item that is reduced overtime does not make it inaccessible with the methods described in this invention: [0397] a. If they belong to a subject that is active (being searched now), it means that they will be displayed to the user at a "low location" in search results lists (whichever URLs or related queries). [0398] b. If they constitute the subject that is active (that is, there are no other items in the active subject) they will be presented high in the results lists.
[0399] In another embodiment of the current invention the "ranking erosion" may be used on a basing of "ordered ranking weights" and not as a function of time. This can be implemented using equation (3) above without the time parameter m:
R=R0*F+R1 (4)
[0400] In such a case a ranking of an item does not change due to passing time without ranking. The contribution of each ranking event to the accumulated ranking is lowest for the first ranking and highest for the last ranking.
[0401] Both equations (3) and (4) represent methods for weighted ranking reflecting the usage and interest of the users. The specific implementation of these or other methods depends on the needs of the user and can be configured to combine these equations and also configured to use other weighting methods.
Selecting Results to Create a New Page and Send to a User
[0402] In another embodiment of the present invention the search results can be presented with checkbox associated with each reference, as shown by reference number 242 in FIG. 2.
[0403] Part of these checkboxes, or all of them, can be checked to indicate that a specific action is desired in relation to the associated references. The action can be selected by a variety of means, such as a pull-down menu shown by reference number 244 in FIG. 2.
[0404] A particular action is a generation of a new results page containing only the items selected by checking the checkboxes. The selections made by the user are fed-back to the system. The program is configured to generate a new document containing only the selected items.
[0405] This new document containing only the selected results can be used to serve a variety of needs: [0406] 1. Be presented to the user for additional interaction. [0407] 2. Be saved in a storage device as a single document that is relevant to the subject of this search. [0408] This page can be retrieved then by any indexing search engine or by the system of the current invention, with association to the query or search session that was active while this document was created. [0409] 3. Be sent by email to another user.
[0410] It would be appreciated by those skilled in the art that efficiency of System 100 depends on the computers in use, communication networks and other device parameters.
[0411] The flow of process, as described hereinabove may be modified to suit less efficient devices by avoiding updating the windows of FIG. 2 following any change in any window. Instead, update may be performed as a response to a predetermined partial group of changes or only by an explicit request from the user.
[0412] It is also appreciated that non-Boolean query systems, such as Natural Language Queries, may be used in the present invention.
[0413] The hereinabove embodiments are described in a way of example only and do not restrict the scope of the invention.
[0414] The scope of the invention is defined solely by the claims provided hereinbelow:
Claims:
1. A computer implemented method for search and retrieval comprising at
least one of: a computer, a storage device, display means, input means, a
search engine; and comprising the steps of: submitting a first search
query; submitting at least one second search query, said at least one
second query is not identical to said first query; and display at least
one results page that contains items retrieved in response to said first
query and also items retrieved in response to said at least one second
query.
2. The method according to claim 1 whereas said first query is used for search in a first results repository and said at least one second query is used for search in at least one second results repository.
3. The method according to claim 17 whereas said stored items are those that are registered in reference to any of the following: a. the current user submitting said first query; b. a user included in a predetermined group of users, said predetermination is made in relation to the current user; c. a predetermined group of users selected by the current user; and d. at least two predetermined groups of users, said at least two groups of users are selected by the current user.
4. The method according to claim 3 whereas said registration in reference to users is made to those users who used said items.
5. The method according to claim 4 whereas said stored items are at least one of: a. queries submitted for search process; b. keywords from queries submitted for search process; and c. keywords from items retrieved in a search process in response to a query.
6. The method according to claim 1 including the steps of: after submitting said first query; searching in a storage device for at least one stored item, containing at list a part of said first query; and submitting at least a part of said at least one stored item as at least one of said second queries.
7. The method of claim 6 whereas said first query is used for search in a first results repository and said at least one second query is used for search in at least one second results repository.
8. The method of claim 1 whereas said at least one second query includes at least one stored keyword; said at least one stored keyword is extracted according to matching of said at least one stored keyword to at least one keyword of said first query; and said matching criteria is having said at least one stored keyword included in at least one submitted query that is stored in a storage device whereas said at least one stored query contains also said at least one keyword of said first query.
9. The method according to claim 1 additionally comprising the steps of: selecting, by the user, at least one item in a results page; indication, by the user, at least one target location; automatic composition of a new page containing only the selected items; and sending said new page to said at least one target location.
10. A computer implemented method for search and retrieval comprising at least one computer, storage device, display means, input means, and a search engine; said storage device stores: queries that have been submitted by users; reference to documents that were retrieved using said stored queries, said references to documents are saved with a registration of which of said stored queries were used to retrieve said documents; said references to documents include the path to said documents; each reference to a document is stored if a user submitting said stored query that retrieved said reference to a document indicated, through his interaction with the search results, that this document is relevant to said stored query; and a list of at least a part of paths to documents, whereas at list one of said path parts is associated with at least one stored item; comprising the steps of: submitting, by the user, a first search query; identifying at least one of said stored queries as containing at least a part of said first query; identifying at least one references to documents that is registered to said at least one identified stored query; finding a match between a unique part of the path included in said identified at least one references to documents and at least one of the stored at least a part of paths; and displaying at least one of said stored items associated with said matching at least one of the stored at least a part of paths.
11. The method according to claim 10 whereas at least a part of: a. said stored queries; and b. said stored references to documents; is registered in reference to any of the following: a. the current user submitting said first query; b. a user included in a predetermined group of users, said predetermination is made in relation to the current user; c. a predetermined group of users selected by the current user; and d. at least two predetermined groups of users, said at least two groups of users are selected by the current user.
12. The method according to claim 11 whereas at least one of the following conditions is maintained: a. said registration of a stored query in reference to a user is made to a user who used said query; and b. said registration of a reference to a document in reference to a user is made to a user who interacted with said reference to a document.
13. The method according to claim 10 whereas said displaying is arranged in order according to at least one of: a. ranking of said stored queries; and b. ranking of said stored references to documents.
14. A computer implemented method for delivering search results comprising the steps of: submitting, by a user, of a first search query; displaying search results page including results retrieved with said first query; selecting, by the user, at least one result in said results page; indication, by the user, at least one target location; automatic composition of a new results page containing only the results selected by the user; and sending said new results page to said at least one target location.
15. The method of claim 14 whereas said at least one target location is at least one of the following: a. display device; b. a folder on a storage device; and c. an email address.
16. The method of claim 14 whereas said results page includes also items retrieved with at least one second search query; said at least one second query is not identical to said first query; and said automatically composed new results page contains also items retrieved with said second search query.
17. The method according to claim 1 including the steps of: after submitting said first query; searching in a storage device for at least one stored item, containing at list a part of said first query; and submitting at least a part of said at least one stored item as at least a part of one of said second queries.
18. The method according to claim 10 including the steps of: selecting, by the user, at least one item in a results page; indication, by the user, at least one target location; automatic composition of a new page containing only the selected items; and sending said new page to said at least one target location.
19. The method according to claim 16 whereas said first query is used for search in a first results repository and said at least one second query is used for search in a second results repository.
20. The method according to claim 16 including the steps of after submitting said first query; searching in a storage device for at least one stored item, containing at list a part of said first query; and submitting at least a part of said at least one stored item as at least a part of one of said second queries.
Description:
FIELD OF THE INVENTION
[0001] The invention is related to the field of digital information management and, in particular, to search and retrieval of the same.
BACKGROUND OF THE INVENTION
[0002] The growth of the Internet introduced broad access to information not available before. Access to digital information sources, once an asset of a small group of professional, holding information technology skills, has become a daily tool for millions of the Internet users.
[0003] Lower skill levels for search of such information is now an inseparable part of searches made for information by most of the users. Skill and knowledge aspects became limiting factors for successful search and retrieve of such information. Such limitations present themselves in the composition of Boolean queries, knowledge of relevant information sources such as the AltaVista index at www.altavista.digital.com (maximum coverage of Internet documents by a single index is less then 40%). Many of the documents are accessed only by a direct reference from a person with a specific knowledge. Many of the information provided by querying an index such as Yahoo are not relevant. The search process is long, queries are modified many times and many information pieces are missed.
[0004] Natural language query is one suggested replacement for Boolean query method. However, a research from Search Insider (www.searchinsider.com) indicates clearly that users prefer the Boolean query methods and that search engines such as AltaVista and Yahoo (www.yahoo.com) provide require much improvement.
[0005] The present status of information search and retrieval in the Internet is characterized by long and tedious search process, poor relevancy of retrieved documents and low level of success in retrieval of relevant documents.
[0006] It is the purpose of the present invention to provide a method and tools for efficient search and retrieval of documents. The description in reference to the Internet is maid in a way of example only. It would be appreciated by those skilled in the art, that the proposed method is applicable to any digital information source.
A SUMMARY OF THE INVENTION
[0007] In a preferred embodiment of the present invention, the system comprises a Server, Clients having a Human Interface (H/I) and communication with the server, a Database, a connection to the Internet and Software of that system. A User of the Client is using the H/I to compose a query view various information pieces including retrieved documents or titles or summary of those documents. The Software traces the user's search activity, collecting data such as queries and relevant or irrelevant documents and information sources. The data is evaluated and stored in the Database.
[0008] The data is also compared to other data, collected from all users, available from the Database. A data that is relevant to assist the current search process is presented to the user. This data include highly ranked queries that are similar to the query composed by the current user and highly ranked documents retrieved in the past by those queries.
[0009] As the Database is the accumulation of many such search processes, made by a single user or by many users, in the same subject, the current user can benefit from the many hours invested by himself or by others to find information in this subject.
[0010] This method is effective for a single user searching the internet or his own computer and it is particularly effective when used within an organization or work group, whereas the organization members search for information that is relevant to the activity of that organization. Thus the Database generated overtime is highly relevant to all members of such organization or work group.
[0011] The invention will be better understood in reference to the following Figures:
[0012] FIG. 1.
[0013] A general block diagram of a preferred embodiment of the system of the present invention.
[0014] FIG. 2.
[0015] A description of a preferred embodiment of a Human Interface of the present invention.
[0016] FIG. 3A and FIG. 3B (referred to as FIG. 3).
[0017] A workflow chart, describing a preferred process of working with the system of the present invention.
A DETAILED DESCRIPTION OF THE INVENTION
[0018] Reference is made now to FIG. 1, which is a general description of one preferred embodiment of the system, presented in the form of a block diagram. A preferred embodiment of the invention is presented. System 100 for search and retrieval of documents includes: [0019] 1. Server 102 which is any suitable computer such as IBM Netfinity 3000, available from IBM Corporation, North Carolina, U.S.A. with a suitable server software (Server S/W 106) such as Microsoft Windows NT, available from Microsoft Corporation, Washington, U.S.A. [0020] 2. At least one Client Station 104 which is any personal computer such as IBM PC 300XL with suitable software (Client S/W 112) such as Microsoft Windows NT (the drawing illustrates multiple Client Stations 104). [0021] 3. Server 102 includes also System Database 108. [0022] 4. Each of Client Stations 104 is connected to the Server by any means of communication 110 (such as LAN) and any standard communication protocol (such as TCP/IP). [0023] 5. Each of the Client Stations contains also Human Interface 114, such as described in details in reference to FIG. 2.
[0024] 6. System 100 is also connected to at least one source of digital information 116 by communication means 118. In the preferred embodiment presented here, such a source of digital information is the Internet. This connection may be done using any method, some of the methods are described in "Using the Internet", 2nd edition by Mary Ann Pike, © 1995.
[0025] It would be appreciated that the above embodiment is provided as example and that, for example, all the functionality of system 100 can be implemented in a single computer, on a web-server or using any other infrastructure or technology.
Initial Search Process:
[0026] Initial search is characterized by no data in System Database 108. At this stage System 100 can not assist the user to find the information he is looking for. In this stage System 100 traces the user's search session, collects data from the search session, processes the data and stores the results in the database.
[0027] In the present embodiment of the invention, the user composes a Boolean query using Human Interface 114. The user then submits the query to a search engine such as AltaVista. A set of titles and summaries is presented to the user by the search engine.
[0028] The user may now select some of the titles for a detailed review and ignore the others.
[0029] When the detailed document is presented to the user it is desired that the evaluation of the document, by the user, will be provided to the System. For that purpose a window is displayed with the document. The window contains a dual button interface indicating Y and N. To change from the document display back to the search session the user must click either the Y or the N. Y indicates that the document is relevant to the user and N indicates irrelevant document. System 100 also traces activities such as printing a document or saving a document on disk. These actions are considered as parts of positive evaluations of a document.
[0030] The user, repetitively composes improved queries, submits them to the search engine and evaluates results (direct or indirect evaluation). During the search session the user may submit queries to different sources such as AltaVista, Yahoo and Lycos (www.lycos.com). Also meta-search engines such as MetaCrawler (www.metacrawler.com) may be used.
[0031] When the user finishes the search session, the system has collected raw data ready for process. This data includes at least some details such as the following: [0032] 1. Queries submitted by the user. [0033] 2. URLs of documents (URL: Uniform Resource Locator) [0034] 3. One query to many URLs relations for the URLs retrieved by each one of the submitted queries. [0035] 4. A set of evaluation parameters for each URL: [0036] Y, N [0037] Review of detailed document [0038] Document printed [0039] Document saved on storage device [0040] Documents summaries--those that are available [0041] Document generation date, last update date [0042] 5. Date and time session ended. [0043] 6. Register indications of who maid any of the above actions. [0044] 7. Register indications of within which users group the user maid any of the above actions. [0045] 8. Date URL introduced to System Database.
[0046] A process of the data is begun at this stage to produce a set of valuable information in the System Database, the information contains details such as: [0047] 1. Ranking each of the URLs as per the following example: [0048] A new URL (not exists in the System Database) acquires a preliminary rank 1. [0049] Add 10 points for `Y`. [0050] Add 3 points for review of the document. [0051] Add 1 point for printing the document, [0052] Add 1 point for storing the document on a storage device. [0053] Subtract 1 point for `N`. [0054] This ranking method enables increase of URL ranking either by direct or indirect evaluation by the user. Also, Rank reduction effectiveness is limited to avoid unintentional negative ranking of a URL. [0055] 2. A ranking method for a query is provided hereinbelow as an example: [0056] Generate ranking parameters for each submitted query: [0057] Number of URLs related to this query that are ranked over 0 (n1). [0058] The sum of ranks of these URLs (v1). [0059] Number of URLs related to this query that are ranked 0 (n2). [0060] Number of URLs related to this query that are ranked lower then 0 (n3). [0061] The sum of ranks of these URLs (v3). [0062] Number of terms in the query (T1). [0063] `Term` is used here in the broad sense. For example, a `term` may be a single word, expression containing more then one word and a sequence of characters with indication to refer to all words and expressions containing that sequence of characters. [0064] A query may then be ranked using a formula such as:
[0064] Rank=K1×(v1/n1)+K2×(v3/n.sub- .3)+K3×T1 (1) [0065] This formula may use a relatively high value for K1 to make valuable URLs more effective in ranking the query as a useful query. K2 may be a relatively low value to limit the effect of irrelevant URLs retrieved by this query. This satisfies the need to reduce the rank of a query if many irrelevant URLs are retrieved by the query but, at the same time, make sure that the query maintains a good rank if it also retrieves valuable URLs. [0066] T1 is an indication for the sophistication of the query that adds to the value of such query to the user. [0067] It would be appreciated that ranking formula (1) is an example and many other formulas may produce valuable solution. [0068] Additional ranking methods are described hereinblow. [0069] 3. Generating a set of related terms: each query is analyzed for terms related by Boolean operators such as OR, AND and NOT. This generates a many to many relations among terms of the query. [0070] Consider the following query example: [0071] (car or automobile or vehicle not bus) and (road or sand or mud). [0072] The following relation table may be generated:
TABLE-US-00001 [0072] car automobile vehicle bus road sand mud car -- OR OR NOT AND AND AND automobile OR -- OR NOT AND AND AND vehicle OR OR -- NOT AND AND AND bus NOT NOT NOT -- NOT NOT NOT road AND AND AND NOT -- OR OR sand AND AND AND NOT OR -- OR mud AND AND AND NOT OR OR --
[0073] This vocabulary, with the Boolean relations, is useful in identifying terms that are relevant to other terms, in the sense of composing a Boolean query. For example, when the word `vehicle` is introduced in a query, the System may use the System Database to present the user with other terms that may be useful, under the relevant category: [0074] OR: car, automobile [0075] AND: road, sand, mud [0076] NOT: bus [0077] The user may then use these related terms to enhance his query. [0078] Terms without Boolean relations may be treated per default rules such as: [0079] a) Assign the relation the Boolean expression "OR" [0080] or [0081] b) Assign a relation such as "spece" and allow search engines assign their own default interpretation to "space" between terms submitted in a query. [0082] 4. Ranking each of the terms. The terms may be ranked according to the number of times they appear, in relation to a given term, in all queries. The ranking may be separate for each type of Boolean relation, such as OR, AND and NOT. [0083] This ranking may also be modified, by weighting each appearance by the rank of the query, that generates said relation. [0084] This will enable to present the terms, such as `road`, `sand` and `mud` in appropriate order: most useful term at the top. [0085] It would be appreciated that a regular thesaurus will not provide such relations nor contain many professional terms (such as densitometer and "SELFOC lens"). The method of this invention generates a database containing such terms, introduced by the users during search sessions.
[0086] The data collected during the search session is then stored in the System Database together with the set of parameters and calculated ranks. This also includes submitted queries, URLs, summaries, terms and their relations and ranking.
[0087] The amount of such data accumulates more rapidly when the System is used by a group of users. This is the case in organizations, where many members of the organization search for information regarding similar subjects.
[0088] Reference is made now to FIG. 2, which demonstrates a preferred embodiment of Human Interface 114 of FIG. 1.
[0089] In order to enable a comprehensive explanation, it is assumed that an amount of data has already been collected in System Database 108 by the process described hereinabove and this data is available for assistance of searches made by individuals.
Query Composition Section:
[0090] In a preferred embodiment of the invention, Query Composition section 200 contains Query window 202 where the current query is composed and Related Queries window 204 for display of relevant queries stored in System Database 108. It will be appreciated that although this preferred embodiment is explained in reference to complex Boolean queries, other embodiments of the present invention may be implemented without or partial Boolean relations. Example: Ther query "Term1 OR Term2 AND Term3" maybe used in a relaxed form "Term1 Term2 Term3" and allow the search engine default Boolean interpretation to take place.
[0091] Basic query composition is done in Query window 202, by typing words, expressions, Boolean operators and conventional singes. Following are some examples: [0092] Words: car, road, table, . . . [0093] Expressions: "racing car", "road map", "Tolman's coffee tables", . . . [0094] Boolean operators: OR, AND, NOT, ADJ, . . . [0095] Indefinite termination: info* stands for: (information OR inform OR Infocenter OR . . . )
[0096] Related queries are displayed in Related Queries window 204. In a simple implementation of the present invention, terms from Query window 202 are used to search System Database for stored queries that contains such terms. The queries are displayed in Related Query window according to their rank, highest rank first.
[0097] In a more sophisticated implementation of the present invention, the queries containing terms of Query window 202 are specially ranked for display in Related Queries window 204. This ranking may first rank the queries in accordance to the number of terms from Query window 202 that are contained in these queries and then, a sub-level sorting is performed, where all queries of the same ranking are sub-sorted by their own rank (as stored in System Database 108). Other ranking schemes are possible.
[0098] In default, the top query of Related Query window 204 is highlighted. Any other query of window 204 can be highlighted by clicking on it. More then one query may be highlighted simultaneously. Double clicking a query of Query window 204 will copy the query to Query window 202, instead of what was previously in that window. Related Query window 204 will refresh then, according to the new query in Query window 202.
[0099] More queries may be observed in Related Queries window 204 by using Roll Slider 236. [0100] The method of clicking, double clicking, highlighting, window rolling with a roll slider and other such elements are in accordance to the conventions of Windows'XP from Microsoft Corporation, Seattle, Wash., U.S.A. It will be assumed that the reader is familiar with these conventions and they will not be described here in more details.
Related Terms Section:
[0101] Related Terms section 206 within Query Composition section 200 supports the process of query composition by listing terms that are related to the terms of the query in Query window 202. Related Terms section 206 contains four windows: [0102] 1. Key Terms window 208 is used for controlling key terms. Such terms, indicated as KeyTerm1, KeyTerm2 . . . (KT1, KT2 . . . ) are automatically selected from Query window 202, excluding Boolean operators and Boolean syntax. The user may add, remove or select any terms of window 208. In a simplified implementation of the present invention, the terms of window 208 are presented in the same order of appearance in the query of Query window 202. [0103] In another implementation of the invention, the terms are presented in accordance to their ranking-high ranking first. [0104] Other sorting methods for display order are possible. [0105] In default, the first term of Related Terms window 208 is highlighted. The user may highlight any other term. Terms may be added, edited and removed from window 208. [0106] 2. `Or` window 210 contains terms that we are related to the terms of Key Terms window 208. The relation is established by the Boolean operator `OR` in queries composed and stored in System Database 108 in previous search sessions. For example `Term1` in window 210 appears in at least one query stored in System Database 108, [0107] either in the form [0108] . . . KeyTerm1 OR Term1 . . . [0109] or in the form [0110] . . . KeyTerm2 OR Term1 . . . [0111] The order of the terms presented in window 210 may be according to the following sorting: [0112] First: terms that are related to the highlighted term of window 208. [0113] Then: terms are sorted according to their ranking (described hereinabove). [0114] Then: terms that are related to non highlighted terms of window 208, arranged in groups of the same order as the ranking of the non highlighted terms of window 208. [0115] Then: each of the group of terms relating to a non highlighted term of window 208 is sub-sorted according to their own ranking. [0116] 3. `And` window 212 contains terms that we are related to the terms of Key Terms window 208. The relation is established by the Boolean operator `AND` in queries composed and stored in System Database 108 in previous search sessions. For example `Term4` in window 212 appears in at least one query stored in System Database 108, [0117] either in the form [0118] . . . KeyTerm1 AND Term4 . . . [0119] or in the form [0120] . . . KeyTerm2 AND Term4 . . . [0121] Order of display is according to the method of window 210. [0122] 4. `Not` window 214 contains terms that we are related to the terms of Key Terms window 208. The relation is established by the Boolean operator `NOT` in queries composed and stored in System Database 108 in previous search sessions. For example `Term7` in window 214 appears in at least one query stored in System Database 108, [0123] either in the form [0124] . . . KeyTerm1 NOT Term7 . . . [0125] or in the form [0126] . . . KeyTerm2 NOT Term7 . . . [0127] Order of display is according to the method of window 210.
[0128] Nested Boolean relations are supported. For example, query of the type [0129] (A OR B) AND (C OR D) NOT (E OR F) will generate the following relations:
TABLE-US-00002 [0129] Key Term Or And Not A B C, D E, F B A C, D E, F C D A, B E, F D C A, B E, F E F A, B, C, D F E A, B, C, D
[0130] Button `Go`, 216, is used to indicate that the composition of the query is complete and the system is to retrieve information in accordance to that query.
[0131] It would be appreciated that the above example of preferred embodiment can be used in a more simple form such as displaying to the user only a list of Related Terms, in a single window. For example, the Related Terms section may display the list of "Term1, Term2, . . . , Term9" in a single window without any additional information.
Documents Section:
[0132] Document section 218 is used to display titles and summaries of documents in accordance to the highlighted Query in Related Queries section 204.
Title Window:
[0133] The titles of the documents are displayed in Title window 220 are titles that are highly relater to the highlighted query of window 204, Query2 in the example of FIG. 2.
[0134] The titles are available from System Database 108 and are displayed in order according to their ranking. High rank displayed first.
[0135] If the number of such titles is lower then No. of Titles 228 (20 in the example of FIG. 2), the next group of titles is extracted from System Database 108. These titles are related to the non-highlighted title with the highest rank in window 208. If this does not provide the required number of titles, the next group of titles is extracted from System Database 108. These titles are related to the non-highlighted title with the second highest rank in window 208. This procedure is repeated until the required number of titles is provided.
[0136] Each such group of titles is sub-sorted according to the rank of the titles.
[0137] Titles are also filtered for display by Which Title? window 232. In the example of FIG. 2, only New titles are presented. These are titles that have not been reviewed yet by the present user. The filtering action of the preferences is explained in more details hereinbelow, in the Preference section part.
[0138] A single click on a title of window 220 will effect the display of summaries in Summary window 222 as explained hereinbelow.
[0139] A double click on a title of window 220 will display the document of that title.
[0140] Window 224 is an indicative window that displays the URL of the highlighted title of Window 220.
Summary Window:
[0141] The summaries of the documents that are displayed in Summary window 222 are related to the list of titles in window 220. The summary of the highlighted title, Title3 of window 220 in the example of FIG. 2, is displayed in bold underlined characters, at the top of window 222, indicated as Summary3. Unused area, below Summary3, is used for summaries of subsequent tiles, as provided by the size of window 222. These summaries are presented in the same order as the titles of window 220. The roll slider of this window allows both up-rolling for summaries preceding Sammary3 and down-rolling for summaries succeeding Sammary3.
[0142] Double clicking a summary will display the document of that summary.
Preferences Section:
[0143] Preferences section 226 is used for input, by the user, of preferences for the search session. A maximum number of titles to be presented is indicated in window 228, adjustable by the user. Date Range windows 230 indicate the earliest and latest dates of that rang. Only documents that were updated in System Database 108 within this range will be presented. The dates are adjustable by the user. Which Title window 232 contains multi-choice options. Three such options may be: [0144] 1. `New`: documents that the current user did not see before the present search session--documents that are new to the current user. [0145] 2. `Reviewed`: only documents that have been reviewed by the current user in a previous session. This is useful when the user is interested in a document he reviewed in the past but does not know the location of that document. [0146] 3. `Any`: displays both `New` and `Reviewed` documents.
[0147] Database windows 234 indicates the database to be used by the system.
[0148] Local window 238 is used to select the preferred local database to perform as System Database 108. This may be one of few local databases or a portion of a database. The different options may be indicated by names such as: [0149] Electronics: the portion of the database related to the electronic engineers. [0150] Marketing: the portion of the database related to the marketing people. [0151] All: All database.
[0152] This arrangement is described in more details in Israeli patent application number 119183 dated Sep. 2, 1996 (Haim Zvi Melman et al.).
[0153] The selected database is used during the user's interaction with the human interface of FIG. 2 including when a query is submitted for search (old or new query).
[0154] Internet window 240 is used to select the preferred Internet database sources. This is useful for submission of queries for search of new documents (or titles) that are not in the local database. Pre-configured selections of sources are available at this window.
Aided Search Session:
[0155] The aided search session will be described hereinbelow in reference to FIG. 2 and FIG. 3.
[0156] For simplicity, all elements of FIG. 2 are indicated with the digit 2 for the hundreds digit, such as 202, 206 and 214.
[0157] All elements of FIG. 3 are indicated with the digit 3 for the hundreds digit such as 302, 306 and 314.
[0158] It will be appreciated that the system can handle multiple simultaneous search sessions, conducted by different users, independently. Each user may use his own preferences configuration in Preferences window 226. The data collected from each user is added to System Database 108 to serve all users. Parts of System Database 108 may be limited for use by only few users, not accessible to others.
[0159] In this example, the preferences of window 226 will be as indicated in FIG. 2:
TABLE-US-00003 No. of Titles: 20 Which Title: New Date Range Earliest: 14 Feb. 1997 Latest: 01 Jan. 1998 Source: Local: Mechanics Internet: Set 5
[0160] 1. The user types KeyTerm1 (KT1) and space in window 202 (step 304 of FIG. 3). [0161] 2. The space is interpreted by System 100 as a term separator. [0162] 3. KT1 is the only term at this stage and it is the only term (Key Term1) displayed in Key Terms window 208 (step 306 of FIG. 3). [0163] 4. System 100 is searching System Database 108 for stored terms that are related to KT1 (step 308 of FIG. 3). [0164] 5. The terms that are related to KT1 are displayed in windows 210, 212 and 214 according to the presentation rules of these windows (step 310 of FIG. 3) [0165] 6. System 100 is searching System Database 108 for stored queries that contain KT1 (step 312 of FIG. 3). [0166] 7. The selected queries are displayed in window 204 according to the display rules of that window (step 314 of FIG. 3). First query is highlighted by default. Another query can be highlighted by the user by a single click on the query. [0167] 8. In step 316 System Database 108 is searched for titles that are related to the queries of window 204. [0168] 9. The related titles are displayed in window 220 according to the display rules of that window (step 318 of FIG. 3)). First title is highlighted by default. Another title can be highlighted by the user by a single click on the title. [0169] 10. System 100 is searching System Database 108 for stored summaries associated with the titles of window 220 (step 320 of FIG. 3). [0170] 11. The selected summaries are displayed in window 222 according to the display rules of that window (step 322 of FIG. 3). [0171] 12. The user may now select to add a Key Term in window 202 either by typing in the term or by selecting a Term from any of windows 210, 212 and 214 by double clicking a Term. If he double clicks a term from said window, the Term will be added to the term in window 202 together with its' Boolean operator: OR, AND or NOT, according to the window from which the term was selected. This term will be added as Key Term2 (KT2) to window 202. [0172] The user may introduce editorial changes to the content of window 202 such as changing the Key Terms or the Boolean operators. [0173] 13. System 100 repeats steps 306 through 322 of FIG. 3, applying all the display rules of the relevant windows. [0174] 14. The above process is repeated until the user is satisfied with the query he composed or by one of the queries displayed in window 204. [0175] 15. At this stage the user has made his choice of a query (326 of FIG. 3B). If his decision is for a query from window 204, the user will double click that query (step 328). The selected query is copied to window 202, replacing the text that was previously there (step 330). Steps 306 through 322 are repeated by System 100 (step 332). [0176] It will be appreciated that the user may edit the query in window 202 even if it was copied there from window 204 or double click another query of window 204. [0177] 16. If the user is satisfied with the query of window 202 and has not found yet the information he is looking for in System Database 108 (as specified by the reference window 226), window 216 is clicked once (step 334). [0178] 17. System 100 performs then a search for documents in accordance with the query of window 202 and preferences of window 226. The search is limited to sources specified in windows 238 and 240, filtering out documents outside of Date Range 230 and documents that have been seen in the past by the current user, as required by window 232 (step 336). [0179] 18. In step 338 the search results are displayed in windows 220 (titles) and 222 (summaries). Summaries of documents that are new to the database may be extracts from the document by a variety of methods such as reading the content of the relevant Meta Tag in an html file type or just reading the first few lines of the document. [0180] 19. The user may select a summary and double click it (step 340). [0181] 20. The selected document is displayed in a dedicated window, such as a Netscape browser window (step 342).
[0182] The user may view documents, step back to the search process modifying his search activity in a variety of ways such as composing new queries, editing queries and changing preferences of window 226.
[0183] Following predetermined conditions (such as every 10 minutes or end of search session or every logout) System 100 is processing the new search information and generates new data for System Database 108. This data is added to the previously stored data for future aided search sessions, as described hereinabove (section of Initial search process).
Aided Search with Key Terms and Queries External to Accumulated Database
[0184] It is appreciated that when a user uses the system for the first time or searches a new subject, the database might not contain Related Terms or Related Queries to support the user with the query composition process.
[0185] In the following preferred embodiment of the invention, a method is presented to support the query composition in such a case.
[0186] In this embodiment, the query composed by the user is submitted to the internet sources, such as Alta Vista (www.altavista.com). When server 102 finds no Related Terms or Related Queries; the server analyses the results page received from the internet source in search for relevant terms and or expressions.
[0187] In the following example the query "sharon" was placed to www.altavista.com. A section of the results page received is displayed here (the term "sharon" is underlined with double-line for easy reference):
TABLE-US-00004 ">More pages from en.wikipedia.org</A> <BR><BR><BR class=lb><A class=res href="http://av.rds.yahoo.com/_ylt=A0geulwYBzhlGxABCitrCqMX;_ylu=X3 oDMTBvdmM3bGlxBHBndANhdl93ZWJfcmVzdWx0BHNlYwNzcg-- /SIG=12lb2st5a/EXP=1211717784/**http://www.jewishvirtuallibrary.org/jsourc- e /biography/sharon.html">Jewish Virtual Library: Ariel <B>Sharon</B></A><BR><SPAN class=s>Brief profile of Ariel <B>Sharon</B>, the former Prime Minister of Israel.<BR></SPAN><SPAN class=ngrn>www.jewishvirtuallibrary.org/jsource/biography/sharon.html </SPAN><SPAN class=rgy></SPAN><BR><A class=rgy href=http://av.rds.yahoo.com/_ylt=A0geulwYBzhlGxABCytrCqMX;_ylu=X3 oDMTBoMXBjOWUxBHBndANhdl93ZWJfcmVzdWx0/SIG=13ik8r56t/EXP =1211717784/**http://www.altavista.com/web/results?sc=off&q=sharon +domain%3Ajewishvirtuallibrary.org >More pages from jewishvirtuallibrary.org</A> <BR><BR><- ;BR class=lb><A class=res href="http://av.rds.yahoo.com/_ylt=A0geulwYBzhlGxABDCtrCqMX;_ylu=X 3oDMTBvdmM3bGlxBHBndANhdl93ZWJfcmVzdWx0BHNlYwNzcg-- /SIG=11n7bfa4b/EXP=1211717784/**http://en.wikipedia.org/wiki/Sharon"> <B>Sharon</B> - Wikipedia, the free encyclopedia</A><BR><SPAN class=s><B>Sharon</B> Mann, American voice actress working in Paris, France. <B>Sharon</B> Osbourne, music promoter and TV <B>...</B> <B>Sharon</B> Stone, American actress, model and producer <B>...</B><BR></SPAN><SPAN class=ngrn>en.wikipedia.org/wiki/Sharon </SPAN><SPAN class=rgy></SPAN><BR><A class=rgy href="http://av.rds.yahoo.com/_ylt=A0geulwYBzhlGxABDStrCqMX;_ylu=X 3oDMTBoMXBjOWUxBHBndANhdl93ZWJfcmVzdWx0/SIG=13al9kbnr/EXP =1211717784/**http://www.altavista.com/web/results?sc=off&q=sharon +domain%3Aen.wikipedia.org">More
[0188] Related terms search algorithm may consist of a simple method such as: fins first word adjacent to the term "sharon". Select only single words that are separated from "sharon" by expressions <B> or </B>, ignore connection words and punctuation marks.
[0189] This simple algorithm will provide the following Related Terms from the above section of Alta Vista results page (underlined with a single-line for easy reference): [0190] a) Ariel [0191] b) Mann [0192] c) Osbourne [0193] d) Stone.
[0194] These terms may be offered to the user as Related Terms to help him improve his query.
[0195] It would be appreciated that, using other terms extraction algorithms, additional Related terms and even Related queries may be extracted from the results pages of the internet resources.
[0196] For example, the complete term "Sharon Mann, American voice actress working in Paris, France" can be extracted from the result page and offered as a Related Query.
[0197] In yet another preferred embodiment of the invention, the commonly html search results of the internet source can be saved as a text file using the save function of the operation system such as Microsoft Windows XP.
[0198] A section of the results page after saving as a text file is displayed here (the term "sharon" is underlined with double-line for easy reference): [0199] Jewish Virtual Library: Ariel Sharon [0200] Brief profile of Ariel Sharon, the former Prime Minister of Israel. [0201] www.jewishvirtuallibrary.org/jsource/biography/sharon.html [0202] More pages from jewishvirtuallibrary.org [0203] Sharon--Wikipedia, the free encyclopedia [0204] Sharon Mann, American voice actress working in Paris, France. Sharon Osbourne, [0205] music promoter and TV . . . Sharon Stone, American actress, model and producer . . . [0206] en.wikipedia.org/wiki/Sharon [0207] More pages from en.wikipedia.org [0208] Sharon Osbourne [0209] Official site with news, bio, gallery, and links. [0210] www.sharonosbourne.com [0211] More pages from sharonosbourne.com [0212] Welcome to the Town of Sharon, Conn. [0213] Official web site of the Town of Sharon, Conn. . . . Sharon Beach. [0214] Available [0215] Forms, Licenses for download. Download the Luke-Fitting Report . . . [0216] www.sharonct.org [0217] More pages from sharonct.org
[0218] Also here, a simple algorithm will extract relevant Related Terms. For example:
[0219] Select one word before or after the term "Sharon" with one space or new-line separation, ignore connection words and punctuation marks.
[0220] This will extract the terms underlined above with a single line: [0221] a) Ariel [0222] b) Brief [0223] c) Former [0224] d) Wikipedia [0225] e) Encyclopedia [0226] f) Mann [0227] g) France [0228] h) Osbourne [0229] i) Stone [0230] j) Town [0231] k) Connecticut [0232] l) Beach
[0233] These terms can be ranked using on-page criteria such as number of appearance in the page to provide a higher relevancy presentation order.
[0234] It is understood by those skilled in the art that expressions to serve as queries may also be extracted form this page by using more then first neighbor to the term "Sharon".
[0235] In yet additional preferred embodiment of the present invention, the Related Queries presented to the user as response to his query may contain a composition of Related Queries extracted from the internet source result page and system database 108. Same way, Related Terms presented to the user as response to his query may contain a composition of Related Terms extracted from the internet source result page and system database 108.
[0236] As it might be desired by the user to distinguish Related Terms (or Queries) from internet sources and Related Terms (or Queries) from system database 108, the terms from the different sources may be displayed using different colors (example: blue for terms extracted from Internet resources search results and black for terms extracted from system database 108). Other distinguishing methods can be used such as underlining one group or presenting each group in a separate window.
[0237] This will enable the user to see which support is based on general algorithm and which support is based on his (or his group) pervious work.
[0238] In another embodiment of the invention, the user may select display options that provide any of the combinations such as: [0239] 1. Display terms from system database 108 [0240] 2. Display terms from internet sources search results [0241] 3. Display terms from both system database 108 and from internet sources search results [0242] 4. Display terms from internet sources search results only if not terms are available from system database 108
Search Session
[0243] Simple queries such as of one or two Key Terms are the most intuitive and are frequently the first ones composed in a search session. In another embodiment of the invention, the user may submit such a simple query that in a present art search system will fail to produce useful results and provide many falls results. In the present invention, submission of such a query will actually result in submission of a number of more sophisticated queries, these are Related Queries available from System Database 108. These queries may be those of a rank above a predetermined threshold. The results will be those that are associated with the highly ranked Related Queries. This methods enables valuable results from a simple and intuitive query--not effective by itself.
[0244] A method is presented hereinbelow, to associate such simple queries that, in most cases, do not provide the desired results, with more sophisticated queries that are usually not intuitive and are composed only after few interaction with search results and query modifications accordingly.
[0245] A search session is defined to be the process of searching information related to a specific subject. A search session includes the composing of queries, submission of queries to a search engine, evaluation of results, modification of queries as a response to such search results, submission of such modified queries--and so on.
[0246] Two sessions are different if the subject is different.
[0247] In the present embodiment of the invention, semi-automatic session tracing is performed by the system. Queries are identified to belong to the same search session in the following way:
[0248] New search session starts by a query (normally after the application is activated). Each new or modified query is compared to all the previous queries. If at least one keyword of this query is used in one of the previous queries of that session--the new query is belongs of the same session.
[0249] If the user go through strategy change in his queries there may be no keyword relation anymore to previous queries even if this is the same search session. For example, a user may search for information on 35 mm film dimensions. He may start with a query "film and 35 mm" and change strategy to search for standard organizations with the query "iso". To overcome this problem in the present embodiment, when this occurs, the system responds to the user with a question: "Have you started a new search session? Y/N". If the user answers "N" the queries "film and 35 mm" and "iso" are associated with the same search session.
[0250] Next time that the query "film and 35 mm" will be composed by a user, a reference will also be made to the query "iso" as a relevant query. Useful titles retrieved by the query "iso" will be available then also for the query "film and 35 mm".
[0251] If the user replies "Y", the previous set of queries are associated with one search session while the new query is the first one of the new search session.
[0252] In yet another embodiment of the invention, the data that is collected and processed trough the search sessions is used to generate and support direct information exchange and communication among the members of an organization.
[0253] As described hereinabove, during the search session Related Queries and Titles from System Database 108 are associated with the search activity of the user. Since such queries and titles are related also to other users who used them in the past, the names of such users can be presented to the current user for user to user communication.
[0254] In the present example, after the user has worked through at least a part of his search session, such a relation to Related Queries and Titles of System Database 108 has been established. The user interface of FIG. 2 may contain "Names" indicator. By clicking this indicator, System 100, opens a new window. This window contains names, email addresses and phone numbers of the users who used the Related Queries and Titles in the past.
[0255] The order of names in the window may by according to the order of Related Queries of window 236 of FIG. 2. Where two or more names are related to a query the order of presentation of these names would be according to the number of Related Queries with which the names are associated, names associated with more queries to appear first.
[0256] The names are adjacent to checkboxes. The user may now, for example, use the checkboxes to select a subgroup of the names and then select an Email option. An email form addressed to the checked names will be opened. The user may then write an email to this group of user, asking for more information about their activity in the subject of his search session.
[0257] Of course, the user may also select to use the phone numbers to call these people.
[0258] An example that highlights the usefulness of this method is provided hereinbelow:
[0259] A user may look for an international standard in a specific matter. By looking at the ISO Internet site (www.iso.ch) He may find a reference to the standard he needs but the standard itself is not available there. The standard has to be ordered separately, be paid for and delivered by mail.
[0260] In this example the user may place a relevant query in query window 202 in order to get names of people, in the organization, who are involved in that subject. Then he can email them an inquiry to find whether they have in possession the requested document. By doing so he may shorten the time and cost to get the required document.
Search-Targeted Promotions
[0261] In yet another preferred embodiment of the invention, the information accumulated in the system database 108 can be used to provide the user with Search Targeted Promotions.
[0262] In this embodiment, a Promotions Database containing items such as advertisements, coupons and special discount or other types of information is stored in the system database or another database in the system computer or any other storage accessible by the system.
[0263] These items are associated with the providers of the promotions. The association may be made in a variety of ways. In the present example the association is made by the URL of the provider. As demonstrated in the following table:
TABLE-US-00005 Promotion URL Ad1 www.a.com Coupon1 www.a.com Ad2 www.b.com Coupon2 www.c.com
[0264] Ad2 for example is associated with URL www.b.com.
[0265] An example step-by-step usage of the accumulated information in system database 108 is described hereinbelow: [0266] 1. The user submits a query through query window 202 (FIG. 2). [0267] 2. The server searches system database 108 for related queries and subsequent related titles. [0268] 3. The system extracts the URLs of the related titles [0269] 4. The system searches for related URLs in the Promotion Database (see, on the next paragraph, how such a related URL can be searched) [0270] 5. In case such a URL is found in the Promotion Database, the system presents the associated promotion to the user.
[0271] It would be appreciated that searching for a related URL in the database is not limited to the complete and exact URL only. A more sophisticated algorithm may search for a useful fraction of the complete URL. For example, when given a title-related URL such as "http://www.coveo.com/en/News/Default.aspx", the system can extract only ".coveo.com" and search for this string in the Promotion Database. In such a case a related URL such as "http://www.coveo.com/en/Contact/ContactUs.aspx" may be the result of this process. The string used to search a related URL can be extracted from the complete URL using simple algorithms such as: [0272] 1. Search for first point following "http://" [0273] 2. Extract all that is between this dot and the next dot, including the dots. [0274] 3. Compare a set of pre-stored strings to the string starting after the second dot, first character to first character, second to second etc. Such a pre-stored set may include strings such as: "com", "co.", "net", "org", "info", "biz", "mobi", "me" etc. [0275] 4. Alternatively the step of extracting the string following the second dot might use "end of string" indicating characters such as "." (dot) or "/" (slash), [0276] 5. Add the matching string to the string extracted in step 2 above.
[0277] The promotion may be presented in a variety of ways including, but not limited to, on a specific area in the results page, a separate pop-up page or a banner.
[0278] The order of displaying such promotions may be according to the order of the titles in the search results page. This will fit an already implemented relevancy algorithm generated by the user activity and thus, be of the same relevancy value to the user. If more then one promotion is in the list for the same URL, the system can be designed to display them in a pre-determined order such as alphabetic order, present only one promotion for each URL, selected arbitrarily from the promotions available for this URL or any other method.
[0279] In the following section a specific example is provided for Search Targeted Promotions.
[0280] In this example the user query database includes the following list of queries with related titles, associated URLs and ranking.
[0281] The list should be interpreted per the following key: [0282] 1. Query [Ranking] [0283] a. Title--URL [Ranking]
[0284] The list in this example: [0285] 1. Vancouver restaurants [5] [0286] b. C Restaurant--www.crestaurant.com [1] [0287] 2. Beethoven symphony 5 [12] [0288] c. Beethoven Symphony #5--www.wwnorton.com/classical/covers/47651.htm [29] [0289] d. The Beethoven Symphonies page--www.all-about-beethoven.com/symphony.html [17] [0290] 3. Vancouver Indian restaurants [3] [0291] e. Indian Oven Restaurant Ltd--www.theindianoven.com [-3] [0292] f. India Gate Restaurant Ltd--www.indiagatefood.com [7] [0293] g. Chutney Villa South Indian Cuisine Inc--maps.google.com [2] [0294] h. Nirvana Restaurant--www.nirvanarestaurant.ca [4] [0295] 4. Vancouver restaurants Chinese [8] [0296] i. Pink Pearl Chinese Seafood Restaurant--www.pinkpearl.com [9] [0297] j. Shanghai Chinese Bistro--www.shanghaichinesebistro.com [2] [0298] 5. Racing car 5 liter [6]
[0299] In this example the promotion database includes the following items:
TABLE-US-00006 Promotion URL Ad1 www.crestaurant.com Coupon1 www.amazon.com Ad2 www.ebay.com Coupon2 www.pinkpearl.com
[0300] The step by step process is described herein as a specific and non limiting example: [0301] 1. The user submits a query comprised of one term: "Vancouver" [0302] 2. System database 108 is searched for Related Queries. [0303] 3. Queries 1, 3 and 4 are found and displayed in the ranking order: [0304] a. Vancouver restaurants Chinese [8] [0305] b. Vancouver restaurants [5] [0306] c. Vancouver Indian restaurants [3] [0307] 4. Associated titles are presented in ranked order [0308] a. Pink Pearl Chinese Seafood Restaurant--www.pinkpearl.com [9] [0309] b. Shanghai Chinese Bistro--www.shanghaichinesebistro.com [2] [0310] c. C Restaurant--www.crestaurant.com [1] [0311] d. Indian Oven Restaurant Ltd--www.theindianoven.com [-3] [0312] e. India Gate Restaurant Ltd--www.indiagatefood.com [7] [0313] f. Chutney Villa South Indian Cuisine Inc--maps.google.com [2] [0314] g. Nirvana Restaurant--www.nirvanarestaurant.ca [4] [0315] Note: in this example the order is driven first by the query ranking and then by the title ranking [0316] 5. The URLs of the associated titles in the search results are compared with the URLs in Promotion Database. [0317] a. Two URLs match:
TABLE-US-00007 [0317] Promotion URL Ad1 www.crestaurant.com Coupon2 www.pinkpearl.com
[0318] 6. Ad1 and Coupon2 are presented to the user, having the benefit that these promotions are associated with providers ranked highly by this specific user.
[0319] It would be appreciated that in a case of a database created and used by multiple users, the user may be presented with promotions that are selected with the above process except that the queries, titles and URLs used in the process are an aggregate of at least a part of the queries, titles and URLs from all users or from a users sub-group selected by the user.
[0320] In yet another embodiment of the present invention, the accumulated database can be used to target advertising or promotions to the user without the use of promotions database. In this embodiment the accumulated database is used to provide the advertising source with more information that is normally available, to support this source with better selection of more suitable advertisement. This method will be explained by the following example.
[0321] In this example the user query database includes the following queries with related titles, associated URLs and ranking [R]: [0322] 6. Vancouver restaurants [5] [0323] k. C Restaurant--www.crestaurant.com [1] [0324] 7. Beethoven symphony 5 [12] [0325] l. Beethoven Symphony #5--www.wwnorton.com/classical/covers/47651.htm [29] [0326] m. The Beethoven Symphonies page--www.all-about-beethoven.com/symphony.html [17] [0327] 8. Vancouver Indian restaurants [3] [0328] n. Indian Oven Restaurant Ltd--www.theindianoven.com [-3] [0329] o. India Gate Restaurant Ltd--www.indiagatefood.com [7] [0330] p. Chutney Villa South Indian Cuisine Inc--maps.google.com [2] [0331] q. Nirvana Restaurant--www.nirvanarestaurant.ca [4] [0332] 9. Vancouver restaurants Chinese [8] [0333] r. Pink Pearl Chinese Seafood Restaurant--www.pinkpearl.com [9] [0334] s. Shanghai Chinese Bistro--www.shanghaichinesebistro.com [2] [0335] 10. Racing car 5 liter [6]
[0336] In addition, in this example the following terms database and terms ranking is available from the query database:
TABLE-US-00008 Key Term Related Key Terms [and ranking] Vancouver Restaurants[14], Indian[2], Chinese[6] Restaurants Vancouver[7], Indian[3], Chinese[15] Indian Vancouver[5], Restaurants[7] Chinese Vancouver[8], Restaurants[3] Beethoven Symphony[7], 5[1] Symphony 5[2], Beethoven[21] 5 Beethoven[3], Symphony[4] Racing Car[6], 5[2], Liter[8] Car Racing[7], 5[1], Liter[3] 5 Racing[2], Car[1], Liter[4] Liter Racing[7], Car[19], 5[2]
[0337] The Related Key Terms are related to the Key Terms because the user once included them in a single query, meaning that he considers this relation valid for himself.
[0338] We also assume here an Internet source that includes functionality to receive a query and deliver advertisement in response to the query. Such an example is Goggle (www.google.com) Sponsored Links enabled by AdSense and AdWords programs. The term "Sponsored Ads" will be used here to refer to these advertisements.
[0339] The usage of this database for delivering of better-targeted promotions or advertising is explained here step-by-step. [0340] 1. The user places a query containing one term: "Vancouver" [0341] 2. The Internet source will provide typical search results for such a query The Sponsored Ads (advertising sponsored by advertisers), based on this query will include the following (as exercised with www.google.com on 26 May, 2008, 21:50 GMT): [0342] 30 Hotels in Vancouver--Canada [0343] Great rates, guest-reviews. No reservation fee, you pay at the hotel. [0344] Booking.com/Hotels-Vancouver-Canada [0345] Book Hostels in Vancouver [0346] Cheapest Beds--No Booking Fees. 2,000 Destinations. Book Online Now. [0347] www.HostelBookers.com/Vancouver [0348] Vancouver Bc Hotel [0349] Compare hotel prices from over 120 top websites and save up to 70%. [0350] Hotels.SideStep.com [0351] Cheap Hotel in Vancouver [0352] Find cheap deals on 100+ hotel sites with 1 search! No booking fees. [0353] www.Kayak.com/Hotels [0354] Lord Stanley Suites: Vancouver [0355] Premier boutique hotel overlooking Coal Harbour and Stanley Park. [0356] www.lordstanley.com [0357] Vancouver B.c--Vancouver, BC [0358] Need a virtual office? Fully furnished? We have what you need. [0359] www.awardbusinesscentres.com [0360] Vancouver Hotels [0361] Save on Vancouver Hotels. Sort by price, location and star rating . . . [0362] book.hotelreservations.com [0363] BC Hotel Vancouver Hotel [0364] Need a Hotel in Vancouver? BC Hotel Vancouver Hotel Bargains. [0365] www.Calibex.com/Hotels [0366] None of the above advertisements targets the clear main interest of this specific user in Vancouver, which is Indian and Chinese restaurants. [0367] 3. In this preferred embodiment however, in addition to the query "Vancouver" used for search results, another query may be submitted using the terms database. In this example one word from the 3 words associated with "Vancouver" is selected, the word with the highest ranking: "restaurant". The second query submitted to the internet source is then "Vancouver restaurants", reflecting the user personal interest. This query is submitted as a background activity, unseen by the user. [0368] 4. This query generates a new results page and a new set of Sponsored Ads, the sponsored ads being highly relevant to the user personal interest in restaurants: [0369] Vancouver Restaurants [0370] Hundreds of Tasty Listings Photos, Menus, Reviews and More. [0371] www.clubZone.com [0372] T Online: Vancouver, B.C. [0373] Read about Vancouver's nightlife, hotels, restaurants and more. [0374] www.nytimes.com [0375] 5. Both result pages: (1) The result page for the user query "Vancouver" and (2) The result page for the system automatic background query "Vancouver restaurants" are received by the system of the current invention. [0376] 6. The search results from the first page are combined with the Sponsored Ads of the second page to create a third page containing the search results for "Vancouver" and the Sponsored Ads for "Vancouver restaurants" [0377] 7. The combined page is now displayed to the user offering the search results he asked for with advertising that suites better his interest.
[0378] It would also be appreciated that the above process can be executed by the Internet source. In this example www.Google.com may receive both queries and generate the combined result page and send it to the user already containing the search results for "Vancouver" and the Sponsored Ads for "Vancouver restaurants".
[0379] If the user database is available to the Internet source, the whole process can take place at the Internet source, such as www.google.com.
[0380] It would be appreciated that submitting a single term as the preliminary query is suggested hereinabove only as an example and that any query can be used at this stage.
[0381] The invention is not limited to the above usage of related terms. Also complete queries used in the past by the user can be used for this process. For example, when submitting the query "Vancouver" the system can search for a related query and find "Vancouver Indian restaurants" as a highly ranked query in the user database. This query can be used to search for relevant Sponsored Ads.
[0382] Also more then one related term might be added to a query, and more then one subsequent queries can be submitted to extract relevant Sponsored Ads.
Using User's Document History for Search-Targeted Promotions
[0383] The above methods described using the user's related terms or query database to enhance the relevancy of Sponsored Ads to the specific user.
[0384] In addition to the user's related terms or query database, the system can use also documents that are registered to the user. Such documents can be registered to the user via the URLs in his database, as described in this invention or via "Favorites" as provided by Internet Explorer of Microsoft Corporation. Related terms can be extracted from such documents using the method of "Aided search with Key Terms and Queries external to accumulated database" described hereinabove. These terms can be used to compose the secondary query aimed for the extraction of Sponsored Ads that are better targeted to the specific user.
[0385] It would be appreciated, throughout the above examples, that at least a part of databases of different users may be integrated to serve a given user so that he can benefit from search activity of these users. So are documents and other similar sources that might resident on separate and unrelated databases. A typical such integration might be based on importing such data to a single database.
Additional Ranking Methods
[0386] In another embodiment of the present invention, ranking can be a weighted balance between older ranking and newer ranking. This approach serves to fit better possible changes in user activity.
[0387] One such weighting method can be time driven. The ranking of an item (query, URL or any other item) is eroded as a function of time that passed since it was last used.
[0388] In this example, existing ranking of an item (R) might be multiplied each month by a factor (F). By doing so, the ranking of such item is reduced over time when not used.
[0389] For example, selecting F=0.99, the ranking of the item relative to the ranking it was last used (or ranked) will be as shown in the table below, using the following formula:
R(now)=R(last)*Fm. (2)
R(now) is the current rank R(last) is the rank of the item following the last ranking action F is the monthly rank reduction factor m is the number of months passed since the last ranking action
TABLE-US-00009 Year Relative ranking 1 0.89 2 0.79 3 0.70 4 0.62 5 0.55 6 0.48 7 0.43 8 0.38 9 0.34 10 0.30
[0390] If the user is ranking now and already ranked item, the ranking process may take a weighted sum of the old ranking (R0) and the new one (R1) to create the new ranking (R):
R=R0*Fm+R1 (3)
[0391] The above specific example provides few time-depended features for ranking management: [0392] 1. Each ranking of a given item uses the highest weight to the last ranking and lowest weight to old ranking. [0393] 2. This means that items are considered more relevant if they were used lately and less relevant if they have not been used lately. [0394] 3. If items are not used for long time (and not ranked), it means that these items are not relevant anymore to the users. The reduced rank will then serve to avoid presentation of such items as relevant to the user. [0395] 4. Wherever the system is used by a single user of a collaborating group, the system "follows" the trend of interest of the users. "Low Interest" items will decline in their ranking while "High Interest" items will have an increasing ranking. A person skilled in the art would appreciate that there is also a level of inters that will keep the ranking unchanged. [0396] 5. Ranking of an item that is reduced overtime does not make it inaccessible with the methods described in this invention: [0397] a. If they belong to a subject that is active (being searched now), it means that they will be displayed to the user at a "low location" in search results lists (whichever URLs or related queries). [0398] b. If they constitute the subject that is active (that is, there are no other items in the active subject) they will be presented high in the results lists.
[0399] In another embodiment of the current invention the "ranking erosion" may be used on a basing of "ordered ranking weights" and not as a function of time. This can be implemented using equation (3) above without the time parameter m:
R=R0*F+R1 (4)
[0400] In such a case a ranking of an item does not change due to passing time without ranking. The contribution of each ranking event to the accumulated ranking is lowest for the first ranking and highest for the last ranking.
[0401] Both equations (3) and (4) represent methods for weighted ranking reflecting the usage and interest of the users. The specific implementation of these or other methods depends on the needs of the user and can be configured to combine these equations and also configured to use other weighting methods.
Selecting Results to Create a New Page and Send to a User
[0402] In another embodiment of the present invention the search results can be presented with checkbox associated with each reference, as shown by reference number 242 in FIG. 2.
[0403] Part of these checkboxes, or all of them, can be checked to indicate that a specific action is desired in relation to the associated references. The action can be selected by a variety of means, such as a pull-down menu shown by reference number 244 in FIG. 2.
[0404] A particular action is a generation of a new results page containing only the items selected by checking the checkboxes. The selections made by the user are fed-back to the system. The program is configured to generate a new document containing only the selected items.
[0405] This new document containing only the selected results can be used to serve a variety of needs: [0406] 1. Be presented to the user for additional interaction. [0407] 2. Be saved in a storage device as a single document that is relevant to the subject of this search. [0408] This page can be retrieved then by any indexing search engine or by the system of the current invention, with association to the query or search session that was active while this document was created. [0409] 3. Be sent by email to another user.
[0410] It would be appreciated by those skilled in the art that efficiency of System 100 depends on the computers in use, communication networks and other device parameters.
[0411] The flow of process, as described hereinabove may be modified to suit less efficient devices by avoiding updating the windows of FIG. 2 following any change in any window. Instead, update may be performed as a response to a predetermined partial group of changes or only by an explicit request from the user.
[0412] It is also appreciated that non-Boolean query systems, such as Natural Language Queries, may be used in the present invention.
[0413] The hereinabove embodiments are described in a way of example only and do not restrict the scope of the invention.
[0414] The scope of the invention is defined solely by the claims provided hereinbelow:
User Contributions:
Comment about this patent or add new information about this topic: