Abstract:
An apparatus and method for simultaneously displaying both record names and the associated files responsive to a user&#39;s search over a database. A user conducts a routine search query over a database or group of databases of records containing, for example, text documents, or alphabetical concordances thereof. The search engine returns a list of records responsive to the user&#39;s query. In contrast to the standard list of record identifiers, the apparatus displays both the identifiers and selected portions of those records or other useful information, as defined by the user, facilitating quick review. The user is able to sort the list of these responsive records in a variety of ways, either before the search, or within the list of results, to expedite review. The apparatus identifies records that have been reviewed previously by marking them as “viewed” links. Finally, when reviewing any responsive record in full, the complete list of records is displayed in a side panel, in a way that still allows resorting by the user. This side panel display may be re-sorted “on the fly.” It also allows the user to see the identifiers of records anywhere in the list, and to easily jump, such as with a single mouse click, to any record in the list.

Description:
RELATED APPLICATIONS  
       [0001]     This application claims priority under 35 U.S.C. § 119 to provisional application No. 60/164,549, filed Nov. 10, 1999, the entirety of which is incorporated herein by reference. This application also relates to co-pending application Ser. No. ______, filed on even date herewith, entitled “Improved Relevance Sorting for Database Searches,” the entirety of which is incorporated herein by reference. 
     
    
     FIELD OF THE INVENTION  
       [0002]     The present invention pertains to the field of computerized information search, display, and retrieval systems and methods. More particularly, the present invention relates to an apparatus and method of expediting the review of records responsive to such a search, by more efficiently displaying, representing, sorting, and navigating such responsive records.  
       BACKGROUND OF THE INVENTION  
       [0003]     For centuries, researchers have pored over books, reading document after document to inform their knowledge of a certain field. These searches are time-consuming and cumbersome, frequently involving the review of documents that are not on point failure to locate relevant documents. With the advent of computers, companies have created searchable databases of research materials. In a computerized search, the user enters a search query, usually using “keywords” or Boolean search terms, and is given a list of documents in the database that meet the requirements of the search. The user can then review responsive documents, search within that subset of responsive documents, or conduct another query. Research of this sort generally takes place on a local computer system, on compact discs or other storage devices, over a dial-up modem connection, and more recently via the Internet.  
         [0004]     Research materials can comprise files in various formats, from unstructured strings of characters, sentences, or text files, to very highly structured data. They can be of a wide variety of data classes, such as words, numbers, graphics, etc. In other cases, the research materials might be contained, for example, in a database. A simple database might be comprised of a single file containing many records, each of which contains the same set of elements (sometimes referred to as fields, items, etc.) where each element is a certain fixed width and a certain format. More complex databases often contain a large number of files, with each file itself containing many, many records of both fixed and variable-width elements in a variety of formats. One great advantage of searching databases by computer is that the user may determine how broadly or narrowly to conduct searches, allowing the user, to a certain extent, to control the number of responsive records. This is especially helpful because researchers, to be thorough, frequently must review each responsive record, often numbering in the hundreds or thousands. One example of this type of text retrieval system is Anglo-Dutch conglomerate Reed-Elsevier&#39;s “Lexis/Nexis” system.  
         [0005]     Despite great advances in computer-assisted research, reviewing responsive records remains time consuming, inefficient, and dreadfully dull. Searches yield sets of responsive records that are both underinclusive and overinclusive—queries do not return important records that are not literally responsive to a user&#39;s Boolean request, and they often return irrelevant records that are incidentally responsive to a user&#39;s query. In order to tell whether a query was well formulated, researchers must often review, one record at a time, scores of responsive records. In a long list of records, the user may be required to review all responsive records in order to guarantee the comprehensiveness of the research assignment. Many times, reviewing records responsive to a query is akin to looking for a needle in a haystack.  
         [0006]     A further disadvantage with typical computerized research systems is that search engines will return a list of only the titles or other identifiers of responsive records, which tells very little about the contents of those records. To view in full a record in the list, the user must use a mouse or other pointing device to click on a link in the list, which takes the user to the beginning of that individual record. The user can either skip sequentially from record to record, through the entire list of records, in the order they were listed, or jump back and forth between individual records and a list of identifiers. For a user to skip several records ahead or back in the list, she must either review all the records in between, or return to the list of identifiers and click a separate link. Review of results involves a lot of toggling back and forth between a list of responsive records and the full body of the records themselves, and especially with slow connections to the Internet, this can be time consuming.  
         [0007]     A further disadvantage of current computerized research systems is that users frequently retrieve the same records, over and over, in subsequent searches. One common problem is illustrated by the following scenario. Assume that a user conducts a search over the database of research materials, yielding 80 results. The user reads all 80 records and decides that she did not find a record responsive to her needs. The user then reformulates the query, to which the search engine returns 50 responsive records. Unable to remember all the titles of the 80 records already reviewed, the user must then read through all 50 records returned by the second query, even records she has already reviewed.  
         [0008]     Therefore, what is needed is an apparatus and method for expediting computerized research by allowing users to view more information about responsive records in a summary fashion. This would allow users to view, in a list of responsive records, both the record identifier, as well as certain portions, fields or elements of those records, as determined by the user. Researchers then more easily could skim a list of responsive records to determine whether they are important to the research task at hand. The apparatus would further allow users to change the type or length of fields or elements that are listed, either at the time of the query or while reviewing the list of results. Furthermore, when a user reviews a record in full, the apparatus would display the list of responsive records in a “side panel,” so that the user could re-sort the list “on the fly,” or jump effortlessly several records forward or back in the list of responsive records.  
       SUMMARY OF THE INVENTION  
       [0009]     In view of the problems associated with digital search and retrieval systems, the present invention advantageously expedites computerized research by providing an apparatus and method for displaying, representing, sorting, and navigating responsive records.  
         [0010]     The present invention also provides a mechanism for displaying a list of records responsive to a user&#39;s search that includes user-defined portions of responsive records. Providing more information in a list of responsive records reduces the need to access the full text of records in order to determine whether the record is relevant to the user&#39;s research.  
         [0011]     The invention also reduces the user&#39;s need to switch back and forth between lists of identifiers of responsive records and the full body of those records, by displaying fields or other portions of the records in the list of responsive records along with the record identifiers, and by displaying the list of responsive records (e.g., by displaying their identifiers) along with the display of a portion of any responsive record, such as displaying the record in full.  
         [0012]     The invention advantageously expedites review of responsive records, both by allowing users to sort the list of such records, and by showing users which records they have already reviewed. This may also be achieved by listing identifiers for responsive records in a side panel while the user reviews any responsive record in full. This allows the user to select different records or to jump forward or back a number of records at a time by clicking on the identifiers. This also allows users to re-sort the list of responsive records in the side panel.  
         [0013]     One embodiment of the present invention provides a method for displaying records responsive to a database query comprising the steps of: (i) displaying a list of identifiers for a plurality of responsive records; and (ii) displaying selected elements of at least one of the responsive records, wherein the list of identifiers and selected elements are displayed simultaneously.  
         [0014]     In yet another embodiment, an apparatus for displaying records responsive to a database query is presented. The apparatus comprises means for displaying a list of responsive records, and means for displaying selected elements of at least one of the responsive records, wherein the list of identifiers and selected elements are displayed simultaneously.  
         [0015]     In other aspects of the present invention, an apparatus and a method for expediting legal research, in computerized searches of legal materials, including without limitation judicial opinions, statutes, regulations, regulatory decisions, Security and Exchange Commission filings, briefs, pleadings, docket entries, treatises, articles, and other law-related information, are provided.  
         [0016]     In yet another aspect of the present invention, information retrieved from searches over databases of subsequent history information for such legal materials is displayed in user-defined lists. This embodiment includes displaying a list of document titles in a side panel while viewing the full text of any document returned by the search. In a further aspect of the present invention, a list of the titles of responsive records, as well as user-defined portions of those records, are displayed. In yet a further aspect of the present invention, the responsive records whose identifiers, title, or other elements are to be displayed, are identified by use of an apparatus that uses the searching and sorting methods described below.  
         [0017]     Typically, although not necessarily, the present invention is implemented along with, or as part of, a computerized information search and retrieval system. The user conducts a search by selecting a database and parameters for the search (including, for example, date or field restrictions), then enters a Boolean or other search query. The user then selects display preferences, such as how she wants to sort the responsive records and what portions of those records (if any) should be displayed in the list. The computer system performs a search of a database and/or associated alphabetical concordance and returns a list of records that are responsive to the user&#39;s search.  
         [0018]     The search of the database may be done by standard methods, such as standard Boolean searching. Alternatively, or in addition, the search may be modified or replaced with other kinds of searches, such as natural language searches. These alternative searches may return records that would not normally be responsive to a Boolean search. In another embodiment, a standard Boolean search might be followed by an “extended reference search.” The extended reference search begins by checking which documents are referenced by those returned by the standard Boolean search. Any document referenced by more than a predetermined percentage, e.g., 15% in a preferred embodiment, of the responsive documents, is then added to the search result even if it is not originally part of the search result. This process may be repeated recursively.  
         [0019]     In another class of embodiments, the results of prior searches, either by the same user, by similar users, or by all users, are tracked. In one embodiment, the number of times a record is returned by a search for given terms or keywords is recorded in a table or array in a manner in which the number is linked to the search terms or keywords. Using this table or array, it is possible to perform a search of a database by returning records that were frequently returned by other similar searches (e.g., those using the same or similar terms or keywords) without actually performing a Boolean search. In another embodiment, the results of similar searches are used to supplement the results of performing a standard Boolean search. In another embodiment, the table or array of similar results is used to modify the relevance of records. If a record is found with high frequency on that table, its relevance score is increased, affecting the position in which it, its identifier, or some other element, will be displayed. All of the embodiments involving the array or table containing counts of the number of times each record is returned by similar searches may be enhanced by tracking instances in which the record was not only returned as responsive to a search, but also was selected by the user. In this embodiment, for example, the search would be counted in the table or array only if the user actually printed, downloaded, or read the record in full.  
         [0020]     Some of the advantages of the non-Boolean search features of the present invention are illustrated in the preferred embodiment of a legal research system. Here, the user searches, for example, judicial opinions for certain terms or keywords. In one embodiment, a Boolean search is first performed, returning a set of opinions. The search engine then checks each opinion to determine which other documents are referenced by those opinions. In another embodiment, rather than using a search engine, a table or array is used to store a list of all references by each document, to each document, or both. Then, any document referenced by 15% of the documents in the initial search result are added to the search result. The process may be repeated over the new set of documents. The number of references to each document may also be used in determining its relevance and the position where each document or its citation may be displayed. For example, any documents cited by more than 50% of the search result may be placed ahead of those only cited by 30% of the search result. In another embodiment, the percentage of documents citing each document is only one relevance factor, combined with other measures of relevance to allow sorting. In another embodiment, a table is constructed with all or most search words or keywords. Then, each time a search is performed with those words or keywords, the results are added to the table with those words or keywords. In another embodiment, the records are only recorded in the table when a user accesses the document, for example to download or print it. However constructed, this table is used to identify documents that other users have found to be important for certain terms or keywords. If a user searches for “breach” and “contract,” for example, the documents that appear most often under these terms (or only those that appear most often under both terms) can be returned, either as an independent search result or as a supplement to a standard Boolean search result. The number of times a given document has been found responsive to similar searches can also be used as a measure of relevance, either alone or in combination with another relevance index.  
         [0021]     Preferably, the system then displays a list of responsive records according to the user&#39;s preferences. For the preferred embodiment of a display of a list of responsive legal documents, the list may include, for example, any combination of the following elements: a descriptive title of each document, its docket number, citation, source, authorship, date information, a search relevance ranking, as well as any text the user elected to display. Displayed text could include, by way of example and not limitation, the first paragraph of the document, the first 50 words of the document, the first n lines of the document (where n is an integer), the paragraph of the document most relevant to the search, or no text at all.  
         [0022]     Relevance is computed as a function of the frequency of appearance of the search terms and their proximity. For example, in one preferred embodiment, records that have a higher frequency of search terms are considered more relevant than those with a lower frequency. In another preferred embodiment, extra weight is given to records that contain all or most of the search terms, even if the absolute frequency is lower. In a further preferred embodiment, the number of words between each search term and the nearest search term is computed. Records that have a higher frequency of pairs of search terms with few words between them are deemed more relevant that those with lesser proximity between them. In another preferred embodiment, frequency and proximity are combined.  
         [0023]     For example, assume there are three documents, 1, 2, and 3, found by a Boolean search for three search terms, A, B, and C. Assume the documents have the following frequencies and proximities:  
         [0024]     Document 1: A at positions 2, 76, 756, 767, 4956, and 95654.  
         [0025]     Document 2: A at 2 and 6, B at 3 and 9, C at 17  
         [0026]     Document 3: A at 2 B at 877 and C at 8604  
         [0027]     If simple frequency is the measure of relevance, document 1 is the most relevant with six search terms, then documents 2 and 3. If double weighting is given for occurrences of all three search terms, 2 is the most relevant, with 1 and 3 tied for second most relevant. Using proximity, document 2 is the most relevant because the first A and the first B are adjacent, the second A and second B are 3 apart, and the last B and first C are 8 apart. If an index is created by summing the proximity of the nearest three pairs, the index for document 3 is 12. For document 1, the index is 775 and for document 3 there are not enough pairs to evaluate proximity. In order of relevance, the documents are sorted 2, 1, 3. Frequency and proximity may be combined in a variety of ways. For example, they both can be applied separately and the results averaged. Alternately, the proximity index can be normalized to the greatest frequency of search terms found in any record and then added to the frequency.  
         [0028]     The user could scroll up and down the list, reviewing both the titles (or other identifiers of responsive records) and the relevant portions of those documents. The user could re-sort the list on the fly, by any information in the list. She could also change the amount or type of text, fields, or other portions of records displayed in the list. This allows the user, at a glance and without accessing the documents in full, to better evaluate the usefulness of her query, and to evaluate which records are important to the research task at hand more efficiently.  
         [0029]     The display also may allow the user to determine which records, if any, have been returned by prior searches or that have been selected by the user, for example, for printing. To do this, a running list of records, identified by their unique identifier, is preserved and associated with the user&#39;s unique ID. When a subsequent set of records is to be displayed, the identifiers of those records are checked against the preserved list to find the repeated documents. Repeated records are identified in the display, for example, by making their identifier&#39;s bold or of a different color. Similarly, if the user selects the document, for example by clicking on its identifier or by printing it, that document&#39;s identifier is added to a different list which is also associated with the user&#39;s ID. The identifier&#39;s of new records to be displayed are also checked against this list to determine those already selected. They are displayed in a different fashion, for example by using a different color, boldness, or a special icon.  
         [0030]     Typically, the user selects any document on the list, using input devices such as a mouse, keyboard, stylus, microphone, or other selection device. For the preferred embodiment where the system or method of displaying records is combined with a search to first identify those records, the computer system then displays the full record with search terms highlighted therein. The user can jump from term to term, page to page, or field to field, or element to element, within a record, or jump from one record to the next using, for example, navigation keys. In addition, the system displays a list of the titles of all responsive records in a side panel. This list may be re-sorted on the fly, and the user may scroll up and down the list of responsive records, independent of the individual record being displayed. Using the methods described above, the user can select any record in the side panel—including records several places ahead or behind the displayed record in the complete list—and the system will display the selected record in full (or in part), with the complete list of responsive records in a side panel.  
         [0031]     In one preferred embodiment of the present invention, the database is highly structured using XML tagging. This permits ready identification of all elements, fields and other unique portions of each record, such as the record identifier. XML-identified content is then used in the displays in a variety of ways, including to identify the records.  
         [0032]     Another preferred embodiment of the invention is to apply it to legal databases of cases, statutes, regulations, and administrative opinions. This embodiment is illustrated in the drawings. The steps in all methods may be performed in any order, unless expressly stated otherwise. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0033]     The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:  
         [0034]      FIG. 1  illustrates an exemplary embodiment of a window displayed on a CRT or other display, which can be used as a user interface for the present invention, including a search dialog box.  
         [0035]      FIG. 2  illustrates a list of records returned by the user&#39;s search, including several sorting, display, and navigation features.  
         [0036]      FIG. 3  illustrates the display of the full text of a responsive record, along with a side panel including the list of titles of the returned records.  
         [0037]      FIG. 4  illustrates a flow diagram for a query in one embodiment of the invention.  
         [0038]      FIG. 5  illustrates a flow diagram of options provided to a user by one embodiment of the invention after a query is performed.  
         [0039]      FIG. 6  illustrates a flow diagram of one embodiment of the invention after responsive records are displayed in part or in full. 
     
    
     DETAILED DESCRIPTION  
       [0040]     An apparatus and method are described for displaying records. In the preferred embodiment, such apparatus and method are combined with an apparatus and method for expediting legal research by displaying, representing, sorting, and navigating text files identified by a search engine. In the following description, for the purposes of explanation, numerous specific details such as mathematical formulae, algorithms, menus, and the like are set forth in order to provide the best mode of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these specific details, and is not limited to the specific details shown and described. In other instances, well known structures and devices are shown in block diagram form to more clearly set forth the present invention.  
         [0041]      FIG. 1  shows a search screen or window  100 , as may be displayed on a CRT, as an example of one possible user interface for the query screen on a research system. A user first selects a database or group of databases on which to conduct a search  103 , for example, cases of the U.S. Supreme Court. The user then delimits the search using such factors as date restrictions  104 , and then enters either a Boolean text search  106 , a field search within the database  105 , or a combination of the two.  
         [0042]     Before or after conducting the search, the user may customize the list of records that will be returned, including how the results of the search will be organized and what information the system will return about each record. She may select fields by which to sort results on the search screen  100 , such as the date of the record, the relevance of the record to the search, or by which database the record came from  101 . The user may sort first by one criteria, then break ties using second- and third-order sorting fields. So, for example, if the user chose to sort by “Court Hierarchy,” then by “Date,” then by “Search Relevance,” the system would display documents issued by the highest court first, for example from the U.S. Supreme Court. Supreme Court documents would be further sorted in date order, and cases from the same date would be listed in order of relevance. In the preferred embodiment, instead of customizing the sort order, a user could also use the system default.  
         [0043]     The system also allows the user to decide how many records to list per page in the list of returned records  107 . The user may select a smaller number of records to display on each web page, for example, to speed the loading time of the web page. Conversely, the user may select a large number so that she can view all the returned records without having to link to another page. Finally, the user may customize what kind of text or other portions of the record will be displayed in the list of returned records  102 . For example, with text documents, the user may select the first 6 lines of the document, the first 12 lines of the document, the first paragraph of the document, the most relevant passage or paragraph from the document, or no text at all. In one embodiment, the user then conducts the query by selecting “Search”  107 .  
         [0044]     In one preferred embodiment of the invention, it is combined with a search engine that searches the selected database and returns a user-customized screen  200  listing responsive records, which is illustrated in  FIG. 2 . For each responsive record, the system lists, for example, a document title or other identifier  210 , which is hyperlinked to the full record. Each entry also may display information that identifies the record, its source, date, and a relevance score for the query, as well as selected text or other portions of the record itself  201 . Records previously viewed by the user would be identified as such, for example, either through the use of text, icons, or display of the record identifier as a “viewed hyperlink,” using, for example, either a different color for the identifier, or the browser default for viewed hyperlinks. In a preferred embodiment, records that appeared in a previous list of responsive records, but which were not selected for a full-text view, are identified as such, either with text, an icon, or by the use of a different color for the hyperlinked identifier. Thus the user can avoid duplication of effort, by choosing not to view records in full that she has already reviewed. She would also be able to identify records added to the list after she modified a search query or conducted a new search with different terms.  
         [0045]     As requested by the user, the system will display a certain number of records per page  202 , as well as a link the user can use to jump to the next n records in the list  203 . This display allows the user to scroll through the list of records in whatever order is most helpful in the search. The display of text or other portions of each record reduces the amount of time and effort spent by the user switching back and forth between screens trying to discern whether a given document is important to the research being conducted. Because the user can customize and view text or other portions of records in the list, she has more information on the list screen, allowing her to avoid reading records that are demonstrably unimportant or demonstrably irrelevant, based on a reading of the displayed portion.  
         [0046]     In one preferred embodiment, the user can re-sort the document list on the fly, either by clicking any of the headers  204 , in this example “Case,” “Court,” “Date,” or “Relevance.” Clicking “Date,” for example, would re-sort the records in descending order of the record&#39;s issue date. The user could also re-sort the list using the sorting options in the side panel  205 , which offers the same multi-level sorting options as the search query screen  101 .  
         [0047]     From the list of displayed cases in  FIG. 2 , the user can also change the number of records displayed per page  206  and the amount and type of text or other portions of the record to display in the list  207 , the same options offered in the search query screen in  107  and  102 . When the user has selected new display properties, she presses “Resort”  208 , and the system re-sorts the list. These sorting and re-sorting options allow the user to review the list of responsive records more efficiently—especially when the list is long, or when the user is looking for a specific document. Re-sorting allows the user to manipulate the list to bring important records to the top, using any of a number of different sorting algorithms. The user can conduct a new search (“N”), modify the current search query (“M”), or search within the displayed results (“R”) by clicking the appropriate button  209  for those tasks. The user may also decide to sort the results by other sorting mechanisms, such as the extended reference search method described above by clicking similar buttons or choosing different options in a tab.  
         [0048]     In order to view any record in the list in full (or to view an expanded portion of any record), the user would click the hyperlinked identifier of the record. The system would then display the record in full, as illustrated in  FIG. 3 . One section of the screen would display the full record itself  301 . The user can navigate the text using a standard browser scroll bar, by using a keyboard to move the cursor within the record, or by way of navigation buttons  305 - 307 . By using “Term” navigation buttons  305 , the user can jump from search term to search term within the document  305 . Similarly, by using “Page” navigation buttons  306 , the user can jump ahead or back one page at a time. Finally, the user can use the “Case” or “Document” navigation buttons  307  to jump one record forward or back in the list of responsive records. During this process, no matter what part of the record the user is viewing, the record&#39;s title or other identifier and citation information appear in a navigation bar  308  at the bottom of the screen.  
         [0049]     A section of the display screen, depicted as panel  302  in  FIG. 3 , is used to display a list of responsive records  302 . The list displays in the same order as it last appeared in the record list in  FIG. 2 , that is, before the user selected the full text or other portion of a record on the list. The user may scroll through this list independently of the full text or other portion of a record from within the list. The title of the displayed record will appear highlighted within the list in this side panel. This allows the user to view the list of responsive records without returning to the full list, and greatly facilitates navigation of the list. For example, the user could select to view the full text of a record five titles down the list by scrolling down and selecting the hyperlinked title or other identifier of that record, without having to go back to the complete list of responsive records. This reduces the transaction time of the standard mode of reviewing records in the list.  
         [0050]     As with the responsive record list illustrated in  FIG. 2 , the preferred embodiment identifies records previously viewed by the user, either through the use of text, icons, or display of the title as a “viewed hyperlink,” using either a different color for the title or identifier, or the browser default for viewed hyperlinks. Again, records that appeared in a previous list of responsive records, but which were not selected for a full-text view, can be identified as such, either with text, an icon, or by the use of a different color for the hyperlinked title.  
         [0051]     The user has the option of re-sorting the list on the fly from the full record text screen of  FIG. 3 . By selecting the “Re-sort” tab  303 , the user is given all of the same multi-level sorting options from the search query screen  101 , and from the screen listing the responsive record  200 . This facilitates review of recording the list, allowing the user to full the most helpful records to the top of the list, without having to go back to the full list of responsive records illustrated in  FIG. 2 .  
         [0052]     Finally, from the full text view illustrated in  FIG. 3 , the user has a series of navigation options. She may return to the full list of responsive records illustrated in  FIG. 2  by selecting a button option  304 . She may also conduct a new search, modify her existing query, or search within the results by selecting one of those button options  309 , similar to the options  209  in the list of responsive records illustrated in  FIG. 2 .  
         [0053]      FIG. 4  is a flowchart illustrating one embodiment of the steps involved in a simple search of a database as part of this invention. First, in step  401 , the user formulates and enters a query. The query may use key words or phrases and be constructed using Boolean logic. The user may then select the databases in which the search will run, for example, the U.S. Supreme Court, or the Fourth Circuit Court of Appeals (step  402 ). Next, the user selects the amount of text to be displayed for each responsive document in the list of responsive documents. See step  403 . The user may also select the sort order for responsive documents (step  404 ). Documents can be sorted, for example, by court hierarchy, date, and relevance, in any order. The user may also select more advanced document sorting options. Alternatively, the user may skip steps  402 ,  403 , and  404 , instead relying on default values.  
         [0054]     The user then submits the query, and the system judges whether or not the query is well-formed (e.g., if the query is a Boolean search, whether the syntax is correct; alternatively, whether the user selected at least one database to search over) in step  405 . If the query is not well-formed, the system returns an error message in step  406 , then displays the query for editing in step  407 . If the search is well-formed, the system queries the relevant database or look-up table associated with selected database in step  408 . If one or more responsive records is not found via step  409 , the query is again displayed for editing when processing is returned to step  407 , perhaps with a message indicating that no responsive records were found. If responsive records do exist, the system selects text from each responsive record by default or as defined by user, as shown in step  410 .  
         [0055]     Next, the system sorts the responsive records by a default method or by a method defined by the user in step  411 . Subsequently, the system displays the sorted list of records and, if requested by user or required by a default rule, an amount of text from each document. See step  412 . The user then reviews the list (shown as step  413 ) and decides if the documents returned are sufficiently germane to the research topic (step  414 ). If the documents are germane, the user reviews the full records list in step  415 . If not, the user may choose either (i) to modify the query, as shown in step  417 , in which case the system displays the last query for editing and accepts editing commands, step  407 , or (ii) to begin a new search, as shown in step  416 , wherein the system displays a blank search page and the process begins anew in step  401 .  
         [0056]      FIG. 5  is a flowchart illustrating an embodiment of steps after a user has chosen to view a record list resulting from a search, as shown in step  415 . First, in step  501  the system compares the responsive records with records that the user has previously reviewed, if any. Next, the system displays a sorted list of responsive records, clearly marking records that the user has viewed before, and user-defined text (if any). See step  502 . The user then decides in step  503  if the list is sorted in a helpful way. If not, the user may, as shown in step  504 , select new sort criteria from a supplied list and click page header to re-sort. The system then re-sorts the records in step  505  and displays them in an updated list (step  502 ).  
         [0057]     If the method of sorting is satisfactory, the user must then decide whether or not the displayed text is useful. See step  506 . If the user determines that it is not, the user selects a new text type to display in step  507 . Continuing with this scenario, the system extracts the newly selected text from responsive records in step  508  and again displays the sorted list of responsive records, identifying records that the user has previously viewed, and user-defined text (if any) in step  502 . If, alternately, the displayed text is acceptable, the user decides if the listed records are sufficiently germane to the research in step  509 . If not, the user may start a new query as shown in step  510 , or modify the current query, step  511 , returning to the steps in  FIG. 4  in either case. The user also may consider whether the percentage of germane records is sufficiently high. If it is not, the user may return to  FIG. 4  and further limit the search by conducting a query on responsive records only, as shown by step  513 . If the percentage is sufficiently high, the user browses through the list of responsive records and text in step  514 .  
         [0058]     Next, the user may choose to print a record, or view a record, or both, in any order. The user may print a record by selecting it in the list in step  515 . The system then displays the formatted record to the user in step  516 , and the user confirms the print in step  517 . Alternately, the user may choose to view a full record in step  518 , in which case the system displays the full record, without special formatting, shown in step  519 . This scenario is illustrated in  FIG. 6 .  
         [0059]      FIG. 6  illustrates an embodiment of the steps taken after a user opts to display a full record. In the main window, the system displays the selected record in step  601 . The system also compares responsive records with records previously viewed by the user in step  602 , and displays a sorted list of responsive records, identifying which of the records have been viewed previously (for example, by displaying their headings in different colors), and user-defined text (if any) in the side panel. See step  603 . The user can interact with the system through either window. Through the main window, which displays the text of the selected record (see step  601 ), the user may: 
        Jump to the next or previous appearance of a search term (step  604 ).     Jump to the next or previous record in sequence (step  605 ).     Jump to the next or previous page within a record (step  606 ).     Print the unformatted record (step  607 ).     Select formatted printing option (step  608 ), causing the system to display formatted record, as shown in step  609 . The user then confirms the print order which is then executed. See step  610 .          
         [0065]     From the list of responsive records in the side panel, the user may (i) decide that the listed records are not sorted in a helpful way (step  615 ), or (ii) decide that the listed records are not germane to research (step  611 ). In the first case, the user may either (i) click header to re-sort as in step  616 , or (ii) select new sort criteria from the list in the side panel as in step  617 .  
         [0066]     If the user decides that the listed records are not germane to research at step  611 , in one embodiment three options are presented: (i) the user may further limit search by conducting a query on responsive records (step  612 ); (ii) the user may modify the current query (step  613 ); or (iii) the user may start a new query (step  614 ).  
         [0067]     The present invention has been disclosed and described herein in what is considered to be its most preferred embodiments. It should be noted that variations and equivalents may occur to those skilled in the art upon reading the present disclosure and that such variations and equivalents are intended to come within the scope of the invention and the appended claims.