SEARCH SYSTEM HAVING USER-INTERFACE FOR SEARCHING ONLINE INFORMATION

Abstract: A system for facilitating the searching of data from an electronic data source (10). The invention teaches a method for presenting a large number of search terms rapidly and efficiently to a user. Users may scan a large number of search terms (10), move quickly from one search category to another (11), select a search term with minimal mechanical input and generate a series of "hits" that meet their search goals (18). The need to guide the computer with mechanical actions from a keyboard, mouse or other device is minimized. Graphics that distract the user from any task other than selecting hits are eliminated. Users are able to scan quickly and find electronic information with minimum effort.

Description: SEARCH SYSTEM HAVING USER- INTERFACE FOR SEARCHING ONLINE INFORMATION BACKGROUND OF THE INVENTION Information is available in quantities significantly larger than has even been known in human history. For example, EXCITE, one popular search engine on the World Wide Web, now claims to routinely examine and index 250 million pages of online information and to consider another 500 million pages for possible inclusion in the EXCITE search system. Information is also available to more people than ever before in human history. The use of electronic information has increased more than a thousand fold since 1990. Interface technology that assists searchers in locating target information from all available information is still evolving. One popular method for finding information online is a Key Word search. A user types a word or words in a search box provided for this purpose. The word(s) typed are used to search all available documents and return "hits" to the user. Most modern online electronic search engines, including well known search sites such as ALTAVISTA and LYCOS, include Key Word searching. A second popular method for finding information is by presenting a Directory. Typically, Directory searching involves presenting a list of categories. The user selects from among the choices that are displayed. Additional, more specific, search terms are then presented and selected by the user. The search process is organized hierarchically so that a selection from one category leads to a set of other choices contained within that category. A user moves down the "branches" of the directory "tree" until they find the information they want. YAHOO and MICROSOFT NETWORK are examples of the many publicly available electronic search engines that provide Directory listings. Cochran describes non-hierarchical searching m U.S. Patent No. 5,768,581, which is herein incorporated by reference. Instead of moving down a Directory tree, a user selects search terms from several search categories that are not organized m a branching tree structure. Selecting from one category does not eliminate the possibility of selecting from other categories because categories are mutually exclusive, unlike Directory searching. Cochran et al . , m U.S. Patent Nos . 4,879,648 and 5,206,949 herein incorporated by reference, describe two distinct ways of developing lists of search terms. Static lists are developed "logically" from what is already known about how information is organized and used. Static lists are constructed from theory and/or the expected use of the information and are prepared m advance of use of the lists. Static lists do not require a search through the information source, and remain the same unless a list of terms m the program itself is edited. For instance, a static list may be an alphabetical list of city names m a company's service area. It is relatively unchanging and can be constructed by management personnel m advance of any search. Dynamic lists, on the other hand, are developed by an active search of the information under consideration. Dynamic lists vary over time as the information source changes, and may change frequently. For instance, a dynamic list may be an alphabetical list of the names of people who have enrolled m an online promotion. The list changes from minute to minute as people sign up. The Cochran patents describe one way of constructing static and dynamic lists. All online information search systems that display selectable search terms are relatively slow. It often takes more than a minute to select multiple search terms from a Directory or non- hierarchical search system. A user must click repeatedly to scroll lists, to move down a page or to change pages m order to find the information they are looking for. People have the capacity to look at choices much faster than the choices are presented by these displays. As more users search more and larger sources of online information, there is a tremendous loss of time waiting for computer displays to catch up with the human ability to scan and select . The relative slowness of presenting search terms is not a function of search speed or communication speed. Computer hardware and communication bandwidth is now sufficient for quick interactions. The slowness of search technology is caused mainly by inadequate user- interface technology. A method for rapidly locating hyperlinked pages on a web site is shown, for instance at www.sherwin.com, a web site operated by The Sherwin-Williams Company. One page, Products and Services, (www.sherwin.com/productsservices/def ult.asp) , shows several menus and sub-menus that are made up of hyperlinks to other pages Vsherwin.cora/ Sub-menus that are not initially visible are displayed when a cursor is moved over a displayed menu item. The www.sherman.com site makes hyperlinks within it's website available quickly, in a relatively small amount of space. This rapid display is achieved using "mouse overs" in the programming code. However, the Sherwin-Williams website is not a search site and is not used to search a database or other information source. The site provides hyperlinks to individual pages within the Sherwin- Williams website. When a user has made one choice on sherwin.com/productsservices/default.asp, a different page is displayed and no additional choices are possible. With the Sherwin-Williams technology, a user cannot access information from a database of information. A user cannot make successive choices to refine their selection as they would with a Directory or non-hierarchical search. When the user selects any hyperlink, the user is then presented with a different page. The different page does not offer any menu choices as on the Services and Products page. There is no database search function associated with the display on the Sherwin-Williams site. Accordingly, there is a need to facilitate and speed up the presentation and selection of search technologies. This, in turn, will substantially increase the commercial value and practicability of online searching. Summary of the Invention It is an object of the present invention to reduce the amount of time needed to display and select search terms from any user- interface that displays search terms. It is an object of the invention to eliminate or minimize features that add unneeded complexity to a display. This includes eliminating the use of scroll bars, task bars and graphics that must be clicked to signal page reorganization or page changes. It is also an object of the present invention to eliminate the need for any mechanical activity on the part of the user that interferes with the users ability to scan large numbers of search terms and select search terms quickly. Users may scan and select quickly without the need to interpret a variety of icons and instructions and without the need to perform more than the minimum number of physical actions. The user is not slowed down by pick boxes, scrolling pages, scrolling lists of hyperlinked terms or selecting functions from a task bar, as required by conventional systems. These goals are achieved by presenting search terms that are meaningfully organized and then advancing the display of choices when a mouse or other pointing device passes over specific parts of the display screen. The display changes quickly to reveal different or additional search terms. If the user wants a list that is displayed to be removed from the visual display, the user simply moves the pointing device to a "blank" area of the display screen. The present invention reduces, and almost eliminates, the clicking, scrolling and page reorganization that has been required by search directories and non-hierarchical search systems heretofore. Hence, mechanical actions and unnecessary decision making that slow the selection of search terms are eliminated. The display of graphics is simplified so the user's attention is not distracted from the process of scanning and quickly selecting search terms . BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 shows a general configuration of a computer network used m accordance with the present invention. Figures 2a and 2b are flow charts showing the decision rules for implementing the invention. Figure 3 shows a preferred embodiment of the invention, an online database for searching a lodging database. Figures 4-6 show the displays of three lists from the lodging database . Figure 7 shows the selection on one of the displayed terms. Figure 8 shows the effect of the selection of the term m Figure 7. Figure 9 shows an alternative preferred embodiment of the invention, an Internet Search Engine. Figure 10 shows the display of Category Names on the Search Engine. Figure 11 shows the position of the cursor when selecting a term from a Category. Figure 12 shows a sub Category list. Figure 13 shows search terms that are displayed after selecting a sub-Category. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS In describing a preferred embodiment of the invention, specific terminology will be resorted to for the sake of clarity. However, the invention is not intended to be limited to the specific terms so selected, and it is understood that each specific term includes all technical equivalents that operate in a similar manner to accomplish a similar purpose. As user herein, the phrase, "search term" generally refers to any word, symbol or phrase that can be selected by a user. Search terms are used to search electronic information for the purpose of identifying and locating parts of information of interest to the user. The word "category" generally is used to refer to a group of search terms that are logically related. In some situations, the category name itself may also be a search term. A display device is a computer, television terminal, hand-held electronic device or any implement that allows a user to interact with a visual representation of an information source. A pointing device is a cursor, track ball, touch pad, pen light or other implement used to interact with iconic images and information displayed on a display device. An information source may be original information, m the form of a database or other collection of records, or it may be a secondary source that reorganizes original content m order to make it easier to search and retrieve information. When there are large quantities of information, the information is preferably stored on a server. The system and method of the present invention is implemented by computer software that permits the accessing of data from an electronic information source. The software and the information m accordance with the invention may be within a single, free-standing computer or it may be in a central computer networked to a group of other computers or other electronic devices. The information may be stored on a computer hard drive, on a CD ROM disk or on any other appropriate data storage device. FIG. 1 shows a simplified representation of a preferred overall implementation of the invention m a computer network 100 m accordance with the preferred embodiment. A plurality of client computers 120 are networked to a remotely located server 110 by a communication link 150 and bi-directional communication lines 130. Client computers 120 contain, at a minimum, memory 121, processing capability 123, a display device 125 and a pointing device 127. The server contains at a minimum, storage capacity 112, memory 116 and processing capability 119. As a practical matter, the server also has a display device 117 and a keyboard (not shown) . The Communication Link 150 and the communication lines 130 provide two way communication between clients 120 and the server 110. The link is established when a client 120 accesses the server at its electronic address 118. This is done, for example, by entering the Internet address of the server 118 using any Web Browser software. Programming language may be imbedded m the Browser to allow some of the processing required by the invention to be done on the client rather than having all of the programming done on the server. JavaScript, which was developed by Sun Microsystems Inc., is a well known language used to embed programming code into html documents. In addition, memory space 116 is optionally allocated so that server 110 may retain the status of search requests generated by individual computers 120 during any individual search session. Figs. 2a and 2b are a generalized overall method of finding information from an electronic information source m accordance with the preferred embodiment of the invention. For illustrative purposes specific examples will be discussed with respect to Figs. 3-12. Category Names can be generated as either static or dynamic lists 10. If they are dynamic ("yes" at 10) , a search is made of the information source and a list of search terms is generated 11. If the first list of Category Names exists as a static list ("no" at 10), the Category Names are identified 12. Initial lists of Search Terms for each category may be static or dynamic 13. If they are dynamic, a search is made of the information source and a list of terms is generated 14. IF the first list of search terms exist as a static list, the search term lists are identified 16. Category Names and lists of Search Terms associated with each Category Name are sent to the client 18 along with graphics and other information needed to display the page on which the search for information is to take place. Embedded programming code may also be sent to the client. Continuing with Fig. 2b, Category names are displayed with graphics and other information 20. Search Terms are displayed when the pointing device passes over a Category Name 22. The search terms are displayed quickly, using "mouse overs" to test the position of the pointing device. That is, when the pointing device is passed over a Category Name, the list of search terms appears on the screen "automatically". It is not necessary to activate the pointing device by, for example, clicking a cursor m order to display the list of search terms. Lists change when the pointing device is moved to cover any Category name. If the pointing device is not over a Category Name, no list is displayed. To select a term and proceed ("yes" at 24) , it is necessary to activate the pointing device 24. If a cursor is being used, the left button of a cursor is clicked on one of the terms to select that term. Activating the pointing device results m a search of the information source 25. There may be no more search terms from which to choose ("No" at 26) and the program is finished 28. However, m more complex situations, additional choices are possible ("Yes" at 26) . If the search design is hierarchical, as is the case with a Directory, Category Names are likely to change ("Yes" at 32) , because, by definition, Directories narrow the range of choices by moving to smaller and smaller divisions of the domain. Those divisions have different sub-category names. If the design is non-hierarchical , Category Names are not likely to change ("No" at 32) because m a non-hierarchical search, the search terms are reduced without necessarily changing the categories. If Category Names change ("Yes" at 32) , a new list of Category Names is generated. At step 34 the program determines whether the Category Names are at the server, or the client and whether they are static or dynamic 35, 37. If they are dynamic, the new list of Category Names is then generated at the server 38 or the client 36. If the Category Names are generated at the server, they are transmitted to the client 40. If Category Names do not change ("No" at 32) the program examines the status of the search terms 42 and proceeds . Lists of Search Terms may not change ("No" at 42) , m which case the user may select again 22. However, lists of Search Terms often do change ("Yes" at 42) . New lists of Terms may be generated on the server ("Yes" at 44) or the client ("No" at 44) . At steps 46 and 50, the system determines whether the Search Term lists are dynamic or static. If lists are dynamic, a search will be required 48, 54. If the new Terms are generated on the server, they are transmitted to the client 52. All lists of new terms are ultimately available to the user 22. This design provides maximum flexibility for search situations. The system may be used with hierarchical Directories and non-hierarchical search systems. The system may also be implemented as a server-based system, as a client -based system or as a combination of both. Users can manipulate the search process multiple times, very quickly, until the desired information is identified. Once a term is available ("Yes" at 26), every path m the flow chart returns to display Category Names and/or Lists 20, 22. Terms will be displayed rapidly m a small amount of space without repositioning the screen display. Figure 3 shows a preferred embodiment of the current invention, a non-hierarchical search system for finding lodging locations m the United States. Figure 3 is a second display at a web site named Lot ' a Places (www.lotaplaces.com) . Prior to seeing the display m Figure 3, a user selected from a page that presented choices about the location of the lodging. In the example that is used here, the state of Maryland was selected on the prior page. Once a State is selected, the preferred embodiment identifies static Category Names on the server, steps 11, 12, and Search Term lists. As described below, some lists are static and some dynamic, 13, 14, 16. The Category Names and Search Term lists are transmitted to the client 18 and the Category Names are displayed 20 as shown m Figure 3. A logo 210, as well as directions 212 of how to proceed, may optionally be displayed. The number of "hits" or listings m Maryland from which to choose 214 are displayed. Here, the total number of listings for Maryland is 402, as indicated. Nine Category Names appear m two columns 216-232. In this embodiment, 218, 220 and 222 have lists that are static. Each search term that appears m the list is known m advance of the search since the search terms are always the same. The six other lists are dynamic, and thus will be different for New York and other states than they are for Maryland. They are obtained by searching the information source. The non-hierarchical search system at Lot ' a Places is organized so that any of the nine categories can be used to reduce the number of hits from 402 to some smaller number. Near the bottom of the display, the beginning of an alphabetical list of the current hits is displayed 234. (The invention does not require hits 234 to be displayed as searching progresses. As an alternative, hits may only be displayed when requested by the user.) The cursor 200 is on an "empty" part of the screen so that no lists of search terms are displayed. Figure 4 shows the same display when the cursor 200 is passed over the Category Name, Features 216. A list of search terms for the category, Features, is displayed 236, step 22. The search terms are displayed "over" or "on top of" the original html page. Variations m page color or texture can be used to indicate that some material rests "on top of" other material . If the user moves the cursor to some "empty" place on the display, the list disappears. The user can then put the cursor over another category 218-232 and see another list. Alternatively, the user may click on one of the search terms m the list 24 and execute a search, step 25. Figure 5 shows a second list of search terms 238. This list is displayed when the cursor 200 is passed over the category, Lodging Name 224. The list is removed if the user moves the cursor off the category name. Figure 5 also shows the word "more" m the last position of the second column 240. If the user passes the cursor over this term, additional search terms m the same category are displayed. The use of the "more" option makes large numbers of choices available m a small amount of space at a fastest possible speed. The "more" option may be used multiple times within a list to display multiple pages. Figure 6 shows a list of Search Terms 242 that is displayed when the cursor 200 is over Price Category 220 Figure 7 shows the position of the cursor 200 on the list of search terms 242 when it is used to select the search term, Upscale, from the Price Category 220. Figure 8 shows the results of selecting Upscale at step 24 in Figure 7. A number of changes have taken place . A search of the database was conducted when the term, Upscale was selected, step 25. Instead of there being 402 hits m Maryland, there are now seventy- four hits, as shown at 214. The seventy- four hits that were selected correspond to lodging m Maryland rated with an upscale price (rather than Mid-range or Economy price, for example) . The alphabetical list of hits has changed 234 to show only upscale properties. At this point, the system determines if additional search terms are available amongst the Categories, step 26 and if the Category Names, have changed 32. In this example, Price Category 220 has been muted to show that the category is no longer available for selection during this search. In the present example, search terms are available in each of the remaining (non-muted) Categories 216-218, 222-232. When the cursor 200 is passed over the Category Name, Lodging Name 224, the list 244 is considerably shorter than the list of Lodging Names displayed in Figure 5. Lodging Names are now only the names in Maryland that are rated with an Upscale price. When the search was conducted as illustrated m Fig. 7, the domain under consideration was reduced from 402 hits to 74 hits and all dynamic lists of search terms were updated. A distinguishing feature of this invention is the quickness and fluidity of the selection process. This quickness and fluidity can be achieved even when space needed for lists of search terms exceeds the display space of the computer screen. There are no scroll bars and no pick boxes that change the display of search terms on this single, stable page. "Mouse overs" allows a list to be displayed when the cursor is passed over a Category Name, and is used m the present invention to obtain a quick and stable selection process. In addition, search terms are passed to the client or created on the client, and held m readiness on the client until the user passes the cursor over a Category Name to display a list of Terms. Actual searches of an information source such as a lodging database are planned so that new and additional information will flow to the user at appropriate times during the selection process. The downloading of lists and programming code is balanced to minimize delays experienced by users . Figures 3-8, for the Lot ' a Places Lodging search, illustrate the current invention applied to a non-hierarchical search system. Figures 9-13, illustrate the use of the current invention when the search system is a hierarchical Directory. Figure 9 shows the first page of an Internet Search Service. A title 246 appears at the top of the page. Category Names 248 preferably are displayed m a single column on the left side of the page. The cursor 200 is not covering any Category Names. Therefore, no lists of search terms are displayed. Figure 10 shows the list of search terms 250 that are displayed when the cursor 200 is passed over the name, Business & Economy 252. Search terms from any of the other Category Names will be displayed m the same way if the cursor is passed over those names. Lists are all available on the client and can be displayed by moving the cursor to the appropriate position. Figure 11 shows the position of the cursor 200 as the user selects Business Opportunity 254, the first Search Term m the list. Figure 12 shows the result of clicking on the Search Term, Business Opportunity 254 m Figure 11. A visual display of the Category and sub-category that was selected is presented at step 256. The search returns another list of Categories 258, which is displayed m place of the list of Category Names m Figures 9, 10 and 11. As described m connection with the flow chart, Figures 2a and 2b, Category Names sometimes change. In particular, Directories, like the Internet Search Engine m this figure, are likely to create subdirectories of additional Categories as the search process moves down the branches of a Directory tree. In this case, the result of selecting Business Opportunities 254 is a subdirectory that gives names of Business Opportunities. Passing the cursor over these terms may result m other subcategoπes or it may display a list of hits. Figure 13 shows the result of passing the cursor over Investment Opportunities m the Business Opportunities sub-category. Accordingly, non-hierarchical designs (Figures 3-8) and Directories (Figures 9-13) have different advantages and disadvantages. Yet, both operate more quickly with this new technology. The preferred embodiment uses a Java applet to manage the online display. The applet sets the maximum number of rows to be displayed in each column of search terms. It also sets the maximum number of columns and column width. The display technique of the present invention may also be implemented for e-commerce purchasing and corporate information systems. In addition, the system may be used m a local computer environment, such as searching files m local storage. It is not desired to limit the invention to the specific examples shown and described. Rather, all suitable modifications and equivalents may be resorted to, falling within the scope of the invention.

Claims: I CLAIM : 1. A method for searching an electronic information source using a display device and a pointing device displayed on the display device, the method comprising: displaying search category names on the display device; enabling the user to display a list of search terms associated with a category name by passing the pointing device over any of the displayed category names; and enabling the user to select one of the displayed search terms. 2. The method of claim 1, wherein the pointing device comprises a mouse having a button, and the step of enabling does not require the user to operate the button. 3. The method of claim 1, further comprising enabling the user to display a different list of search terms by passing the pointing device over a different category name. 4. The method of claim 1, further comprising enabling the user to clear the displayed search terms by moving the pointing device away from the displayed search terms and selected category. 5. The method of claim 1, wherein at least one list of search terms is updated in response to the selecting. 6. The method of claim 1, wherein the information source is located remote from the display device . 7. The method of claim 1, further comprising searching the information source and retrieving information from the information source in response to said selecting. 8. The method of claim 1, further comprising displaying on the display device an indicator indicating that additional search terms are available that are not displayed on the display device, and enabling the user to display the additional search terms by passing the pointing device over the indicator. 9. The method of claim 1, wherein at least one category name changes in response to said selecting. 10. The method of claim 1, wherein at least one list of search terms is dynamically generated by a search of the information source. 11. The method of claim 9, wherein the category names are arranged in a hierarchical manner. 12. The method of claim 1, wherein successive selections reduce available search terms. 13. The method of claim 1, further comprising searching the information source in response to said selecting. 14. The method of claim 13, wherein said searching is conducted at a client processor. 15. The method of claim 1, wherein at least one category name is updated in response to the selecting. 16. A method for searching a database on a computer having a display device and a pointing device controlling a cursor displayed on the display device, the database associated with at least one of a plurality of categories of information, at least one category having a sub-category of information, the method comprising: displaying each category on the display device; enabling the user to select a category by passing the cursor over one of the displayed categories; displaying on the display device, in response to the user selecting a category associated with sub-categories, each sub- category of information associated with the selected category; enabling the user to select a sub-category by passing the cursor over one of the displayed sub-categories; displaying on the display device, in response to the user selecting a sub-category, a list of search terms associated with the selected sub-category; enabling the user to select one of the displayed search terms; and, searching the database in response to the selected search term. 17. A system for searching a database on a computer from a user terminal including a display device and a manually-operable input unit controlling a cursor displayed on the display device and a select button, the database associated with at least one of a plurality of categories of information, the system comprising: a computer including a database and a computer processor for accessing the records in accordance with search terms selected at the user terminal : means for transferring a list of categories and search terms to the display device for simultaneous display of category names associated with each of said categories; means for enabling the user to select one of the categories by passing the cursor over one of the displayed category names; means for displaying the search terms associated with the selected category; means for enabling the user to select one of the displayed search terms; and, means for searching the available records of the database for records responsive to the selected search term. 18. A website having a user interface for searching a database of records from a user terminal having a display device and a controller for controlling a pointing device displayed on the display device, the website comprising: category names displayed on the display device; means for enabling the user to select a category by passing the pointing device over one of the displayed categories; a list of search terms displayed on the display device in response to the user selecting a category; and, means for enabling the user to select one of the displayed search terms . 19. The website of claim 18, wherein the database is located remote from the user terminal, further comprising means for searching the database in response to the selected search term. 20. A method for controlling a user interface for searching a database from a computer having a display device and a controller for controlling a pointing device displayed on the display device, the method comprising: displaying category names on the display device; enabling the user to select a category by passing the pointing device over one of the displayed categories; displaying a list of search terms on the display device in response to the user selecting a category; and, enabling the user to select one of the displayed search terms. 21. The method of claim 20, wherein the method is implemented by a website.

Inventors: COCHRAN NANCY P, COCHRAN, NANCY, P.
Applicants: COCHRAN NANCY P, COCHRAN, NANCY, P.
Application year: 2000
Main classification: G06F17
IPC codes: G06F17