PHRASE RECOGNITION METHOD AND APPARATUS

Abstract: A phrase recognition method breaks streams of text into text "chunks" and selects certain chunks as "phrases" useful for automated full text searching. The phrase recognition method uses a carefully assembled list of partition elements (10) to partition the text into chunks, and selects phrases from the chunks according to a small number of frequency based definitions (20). The method can also incorporate additional processes such as categorization of proper names (30) to enhance phrase recognition. The method selects phrases quickly and efficiently, referring simply to the phrases themselves and the frequency with which they are encountered, rather than relying on complex, time-consuming, resource-consuming grammatical analysis, or on collocation schemes of limited applicability, or on heuristical text analysis of limited reliability or utility.

Description: PHRASE RECOGNITION METHOD AND APPARATUS COPYRIGHT NOTICE: A portion of the disclosure (including all Appendices) of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the file or records of this international application or in the patent file or records of any national or regional phase patent application based on this international application, but the copyright owner reserves all other copyright rights whatsoever. BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to automated indexing of full-text documents to identify the content-bearing terms for later document retrieval. More specifically, the invention relates to computer-automated identification of phrases which are useful in representing the conceptual content of documents for indexing and retrieval. 2. Related Art A type of content-bearing term is the "phrase", a language device used in information retrieval to improve retrieval precision. For example, the phrase "product liability" indicates a concept that neither of the two component words can fully express. Without this phrase, a retrieval process is unable to find the documents in which the concept is discussed. In traditional Boolean retrieval systems, phrase recognition is not an issue. The systems are known as post-coordination indexing systems in that phrases can be discovered through examining the adjacency relationships among search words during the process of merging inverted lists associated with the words. However, in modern information retrieval systems, the statistical distribution characteristics of index terms are crucial to the relevance ranking process, and it is desirable to recognize phrases and derive their statistical characteristics in advance. In addition, in fabricating hypertext databases, recognized phrases are necessary for hypertext linkage. Known phrase recognition methods include three types: machine translation, statistical text analysis and heuristical text analysis. First, machine translation's approach to recognizing phrases (known as compound structures) is to analyze part-of-speech tags associated with the words in an input text string, usually a sentence. Noun phrases and verb phrases are two examples of such phrases. Syntactical context and lexical relationships among the words are key factors that determine successful parsing of the text. In machine translation, the goal is not of finding correct phrases, but of discovering the correct syntactical structure of the input text string to support other translation tasks. It is infeasible to use this syntactical parsing method for processing commercial full-text databases; the method is inefficient and is in practical terms not scalable. Regarding machine translation, reference may be made to U.S. Patent Nos. 5,299, 124, 5,289,375, 4,994,966, 4,914,590, 4,931,936, and 4,864,502. The second method of analysis, statistical text analysis, has two goals: disambiguating part of speech tagging, and discovering noun phrases or other compound terms. The statistics used include collocation information or mutual information, i.e. , the probability that a given pair of part-of-speech tags or a given pair of words tends to appear together in a given data collection. When a word has more than one part-of-speech tag associated with it in a dictionary, consulting the part of speech of the next word and calculating the probability of occurrence of the two tags would help select a tag. Similarly, a pair of words that often appear together in the collection is probably a phrase. However, statistical text analysis requires knowledge of collocation that can only be derived from an known data collection. Disadvantageously, the method is not suitable for processing unknown data. Regarding statistical text analysis, reference may be made to U.S. Patent Nos. 5,225,981, 5,146,405, and 4,868,750. The third method of analysis, heuristical text analysis, emphasizes textual pattern recognition. Textual patterns include any recognizable text strings that represent concepts, such as company names, peoples' names, or product names. For example, a list of capital words followed by a company indicator like "Limited" or "Corp" is an example pattem for recognizing company names in text. The heuristical text analysis method requires strong observation ability from a human analyst. Due to the limitation of humans' observation span, heuristical text analysis is only feasible for small subject domains (e.g. , company name, product names, case document names, addresses, etc.). Regarding heuristical text analysis, reference may be made to U.S. Patent Nos. 5,410,475, 5,287,278, 5,251,316, and 5,161,105. Thus, machine translation methods, involving potentially complex grammatical analysis, are too expensive and too error-prone for phrase recognition. Statistical text analysis, being based on collocation and being purely based on statistics, is still expensive because of the required full scale of part-of-speech tagging and pre-calculating collocation information, and also has difficulties processing unknown data without the collocation knowledge. Finally, heuristical text analysis, relying on "signal terms", is highly domain- dependent and has trouble processing general texts. Thus, there is a need in the art for a simple, time-efficient, resource-efficient, and reliable phrase recognition method for use in assisting text indexing or for forming a statistical thesaurus. It is desired that the phrase recognition method be applicable to both individual documents and to large collections of documents, so that the performance of not only real-time on-line systems, but also distributed and mainframe text search systems can be improved. It is also desired that the phrase recognition method have engineering scalability, and not be limited to particular domains of knowledge. The present invention is directed to fulfilling these needs. SUMMARY OF THE INVENTION The present invention provides a phrase recognition method which breaks text into text "chunks" and selects certain chunks as "phrases" useful for automated full text searching. The invention uses a carefully assembled list of partition words to partition the text into the chunks, and selects phrases from the chunks according to a small number of frequency-based definitions. The invention can also incorporate additional processes such as categorization of proper names to enhance phrase recognition. The invention achieves its goals quickly and efficiently, referring simply to the phrases and the frequency with which they are encountered, rather than relying on complex, time-consuming, resource-consuming grammatical analysis, or on collocation schemes of limited applicability, or on heuristical text analysis of limited reliability or utility. Additional objects, features and advantages of the invention will become apparent when the following Detailed Description of the Preferred Embodiments is read in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS The invention is better understood by reading the following Detailed Description of the Preferred Embodiments with reference to the accompanying drawing figures, in which like reference numerals refer to like elements throughout, and in which: FIG. 1 illustrates an exemplary hardware configuration on which the inventive phrase recognition method may be executed. FIG. 2 illustrates another exemplary hardware environment in which the inventive phrase recognition method may be practiced. FIG. 3 is a high level flow chart schematically indicating execution in an embodiment of the phrase recognition method according to the present invention. FIG. 4 A is a flow chart schematically indicating execution in a module for partitioning text and generating text chunks. FIG. 4B is a flow chart indicating execution of a module for selecting phrases using the data memory structure diagram of FIG. 5. FIG. 5 is a data memory structure diagram schematically illustrating data flow during the inventive phrase recognition method (FIGS. 3, 4A, 4B) and corresponding memory allocation for various types of data used in accordance with the process. FIG. 6 A is a flow chart of an optional processing module for consolidating with a thesaurus. FIG. 6B is a flow chart of an optional processing module for processing phrases with prepositions. FIG. 6C is a flow chart of an optional processing module for trimming phrases with their collection frequencies. FIG. 6D is a flow chart of an optional processing module for categorizing proper names. FIGS. 7 A, 7B and 7C illustrate exemplary applications of the inventive phrase recognition method according to the present invention. In particular: FIG. 7 A indicates a user's viewing of a document in accordance with a suitable on-line text search system, and invoking the inventive phrase recognition method to search for additional documents of similar conceptual content; FIG. 7B schematically illustrates implementation of the phrase recognition method in a batch phrase recognition system in a distributed development system; FIG. 7C schematically illustrates application of the inventive phrase recognition method in a batch process in a mainframe system. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS In describing preferred embodiments of the present invention illustrated in the drawings, specific terminology is employed for the sake of clarity. However, the invention is not intended to be limited to the specific terminology so selected, and it is to be understood that each specific element includes all technical equivalents which operate in a similar manner to accomplish a similar purpose. The concept of the present invention is first described on a particular example of a text stream. Then, block diagrams and flow charts are described, which illustrate non¬ limiting embodiments of the invention's structure and function. Very briefly, a preferred embodiment of the inventive method partitions an input text stream based on punctuation and vocabulary . As the method processes the text stream sequentially, it inserts partition symbols between words if certain punctuation exists, such as a comma, end of sentence, or change in capitalization. Further, each word encountered is checked against one or more vocabulary lists, and may be discarded and replaced by a partition symbols, based on the word and where it is encountered. After the document is thus processed, a set of candidate terms and "phrases" (a series of non-partitioned words) is produced. In the preferred embodiment, solitary words (individual words immediately surrounded by partitions) are ignored at this point. The phrases are processed to determine which phrases occur with higher frequency. Preferably, shorter phrases which occur with higher frequency and as subsets of lower-frequency but lengthier phrases are also sought. A set of phrases meeting or exceeding a given threshold frequency is produced. The inventive method is more easily understood with reference to a particular example. As mentioned above, members of a list of words (including punctuation) serve as "break points" to form text "chunks" within input text. A first (rudimentary) list includes words can be used as "stop words". The stop words usually carry little semantic information because they exist merely for various language functions. This list has a few hundred members and includes articles (e.g., "a", "the"), conjunctions (e.g., "and", "or"), adverbs (e.g. , "where", "why"), prepositions (e.g. , "of", "to", "for"), pronouns (e.g., "we", "his"), and perhaps some numeric items. However, this first list is too short for the present phrase recognition method because it causes generation of a list of text chunks that are too long to allow efficient generation of desirable phrases. Additional stop words or other partition items are needed for reducing the size of the text chunks, so that more desirable phrases may be found. The following example of text illustrates this problem. In this example, the text "chunks" are within square brackets, with the text chunks being separated by an members of the list of stop words (break points): [Citing] what is [called newly conciliatory comments] by the [leader] of the [Irish Republican ArmyJ's [political wing], the [Clinton Administration announced today] that it would [issue] him a [visa] to [attend] a [conference] on [Northern Ireland] in [Manhattan] on [Tuesday] . The [Administration] had been [leaning] against [issuing] the [visa] to the [official] , [Gerry Adams] , the [head] of [Sinn Fein] , [leaving] the [White House caught] between the [British Government] and a [powerful bloc] of [Irish-American legislators] who [favored] the [visa] . (Parsed text based on rudimentary list) Since desirable phrases include noun phrases (e.g. , "ice cream"), adjective-noun phrases (e.g. , "high school"), participle-noun phrases (e.g. , "operating system"), and proper names (e.g. , "White House"), it is safe to add adverbs (e.g., "fully") and non-participle verbs (e.g. , "have" , "is" , "obtain") to the list of stop words to form an enhanced stop word list. This enhanced stop word list allows the method to provide smaller text chunks, yet is still compact enough for efficient look-up by computer. With the enhanced list, the above example text is parsed into chunks and stop words as follows: [Citing] what is [called] newly [conciliatory comments] by the [leader] of the [Irish Republican Army]'s [political wing], the [Clinton Administration] announced [today] that it would issue him a [visa] to attend a [conference] on [Northern Ireland] in [Manhattan] on [Tuesday] . The [Administration] had been [leaning] against [issuing] the [visa] to the [official], [Gerry Adams], the [head] of [Sinn Fein], [leaving] the [White House] caught between the [British Government] and a [powerful bloc] of [Irish- American legislators] who favored the [visa] . (Second parsed text based on enhanced list) The theoretical justification of using this enhanced list derives from two sources. A first justification is that this list only represents about 13% of unique words in a general English dictionary. For example, in the Moby dictionary of 214,100 entries, there are 28,408 words that can be put into the list. This fact ensures that semantic information in texts is maintained at a maximum level. A second justification involves the lexical characteristics of these words. Most of the words bear little content. This second fact reduces the risk of losing semantic information in the text. The basic concept of the invention having been described, particular implementations of its structure and function are now presented. As will readily be appreciated, the invention is preferably embodied as software, instruction codes capable of being executed by digital computers, including commercially available general purpose digital computers well known to those skilled in the art. The particular, hardware on which the invention may be implemented varies with the particular desired application of the inventive phrase recognition method. Three examples of the such application of the phrase recognition method are described in greater detail below, with reference to FIGS. 7A, 7B, and 7C. Briefly, the dynamic recognition method involved in an on-line system (FIG. 7 A) may be implemented in IBM 370 assembly language code. Alternatively, in a batch recognition system in a distributed development system (FIG. 7B), the phrase recognition method may be implemented on a SUN work station using the PERL script interpretive prototyping language. As a still further implementation, the inventive phrase recognition method may be implemented on an Amdahl AMD 5995-1400-a mainframe so that another batch phrase recognition system (FIG. 7C) may be realized. Of course, the scope of the invention should not be limited by these exemplary embodiments or applications. Embodiments of the inventive phrase recognition method may be implemented as a software program including a series of executable modules on a computer system. As shown in Fig. 1, an exemplary hardware platform includes a central processing unit 110. The central processing unit interacts with a human user through a user interface 112. The user interface is used for inputting information into the system and for interaction between the system and the human user. The user interface 112 includes, for example, a video display 113 and a keyboard 115. A computer memory 114 provides storage for data and software programs which are executed by the central processing unit 110. Auxiliary memory 116, such as a hard disk drive or a tape drive, provides additional storage capacity and a means for retrieving large batches of information. All components shown in FIG. 1 are of a type well known in the art. For example, the FIG. 1 system may include a SUN ® work station including the execution platform Sparc 2 and SUN OS Version 4.1.2., available from SUN MICROSYSTEMS of Sunnyvale, California. Of course, the system of the present invention may be implemented on any number of modem computer systems. A second, more complex environment in which the inventive phrase recognition method may be practiced is shown in FIG. 2. In particular, a document search and retrieval system 30 is shown. The system allows a user to search a subset of a plurality of documents for particular key words or phrases. The system then allows the user to view documents that match the search request. The system 30 comprises a plurality of Search and Retrieval (SR) computers 32-35 connected via a high speed interconnection 38 to a plurality of Session Administrator (SA) computers 42-44. Each of the SR's 32-35 is connected to one or more document collections 46-49, . each containing text for a plurality of documents, indexes therefor, and other ancillary data. More than one SR can access a single document collection. Also, a single SR can be provided access to more than one document collection. The SR's 32-35 can be implemented using a variety of commercially available computers well known in the art, such as Model EX100 manufactured by Hitachi Data Systems of Santa Clara, California. Each of the S A's 42-44 is provided access to data representing phrase and thesaurus dictionaries 52-54. The SA's 42-44 can also be implemented using a variety of commercially available computers, such as Models 5990 and 5995 manufactured by Amdahl Corporation of Sunnyvale California. The interconnection 38 between the SR's and the SA's can be any one of a number of two-way high-speed computer data interconnections well known in the art, such as the Model 7200-DX manufactured by Network Systems Corporation of Minneapolis, Minnesota. Each of the SA's 42-44 is connected to one of a plurality of front end processors 56-58. The front end processors 56-58 provide a connection of the system 30 one or more commonly available networks 62 for accessing digital data, such as an X.25 network, long distance telephone lines, and/or SprintNet. Connected to the network 62 are plural terminals 64-66 which provide users access to the system 30. Terminals 64-66 can be dumb terminals which simply process and display data inputs and outputs, or they can be one of a variety of readily available stand-alone computers, such as IBM or IBM- compatible personal computers. The front end processors 56-58 can be implemented by a variety of commercially available devices, such as Models 4745 and 4705 manufactured by the Amdahl Corporation of Sunnyvale California. The number of components shown in FIG. 2 are for illustrative purposes only. The system 30 described herein can have any number of SA's, SR's, front end processors, etc. Also, the distribution of processing described herein may be modified and may in fact be performed on a single computer without departing from the spirit and scope of the invention. A user wishing to access the system 30 via one of the terminals 64-66 will use the network 62 to establish a connection, by means well known in the art, to one of the front end processors 56-58. The front end processors 56-58 handle communication with the user terminals 64-66 by providing output data for display by the terminals 64-66 and by processing terminal keyboard inputs entered by the user. The data output by the front end processors 56-58 includes text and screen commands. The front end processors 56-58 support screen control commands, such as the commonly known VT100 commands, which provide screen functionality to the terminals 64-66 such as clearing the screen and moving the cursor insertion point. The front end processors 56-58 can handle other known types of terminals and/or stand-alone computers by providing appropriate commands. Each of the front end processors 56-58 communicates bidirectionally, by means well known in the art, with its corresponding one of the SA's 42-44. It is also possible to configure the system, in a manner well known in the art, such that one or more of the front end processors can communicate with more than one of the SA's 42-44. The front end processors 56-58 can be configured to "load balance" the SA's 42-44 in response to data flow patterns. The concept of load balancing is well known in the art. Each of the SA's 42-44 contains an application program that processes search requests input by a user at one of the terminals 64-66 and passes the search request information onto one or more of the SR's 32-35 which perform the search and returns the results, including the text of the documents, to the SA's 42-44. The SA's 42-44 provide the user with text documents corresponding to the search results via the terminals 64-66. For a particular user session (i.e. a single user accessing the system via one of the terminals 64- 66), a single one of the SA's 42-44 will interact with a user through an appropriate one of the front end processors 56-58. Preferably, the inventive phrase recognition method is implemented in the session administrator SA computers 42-44, with primary memory being in the SA computer itself and further memory being illustrated within elements 52-54. The principles on which the inventive method is based, and hardware systems and software platforms on which it may be executed, having been described, a preferred embodiment of the inventive phrase recognition method is described as follows. FIG. 3 is a high level flow diagram of the phrase recognition method of the preferred embodiment. Referring to FIG. 3, the invention uses a carefully assembled list of English words (and other considerations such as punctuation) in a Partition Word List (more generally referred to as a Partition Entity List, or simply Partition List) to partition one or more input text streams into many text chunks. This partitioning process is illustrated in block 10. Block 20 indicates selection of phrases from among the chunks of text, according to frequency based definitions. A Phrase List, including the selected phrases, results from execution of the process in block 20. During the phrase selection process, solitary words (single-word chunks), as well as words from the decomposed phrases, can be maintained separate from the Phrase List as optional outputs for other indexing activities. Details of processes 10 and 20 are described with reference to FIGS. 4A and 4B. The invention can optionally incorporate one or more other processes, generically indicated as element 30. Such optional process may include categorization (examples described with reference to FIGS. 6A-6D) to enhance the list of recognized phrases. FIG. 4 A is a flow chart of FIG. 3 module 10, for partitioning text and generating text chunks. FIG. 4 A shows how the method, given a piece of text, partitions the text into many small text chunks. A critical component in this method is the Partition List (including words and punctuation) whose members serve as break points to generate the text chunks. As mentioned above, a Partition List ideally allows parsing of text into short phrases, but is itself still compact enough for efficient computer look-up during the parsing process. Preferably, the Partition List is generated using not only articles, conjunctions, adverbs, prepositions, pronouns, and numeric items, but also adverbs and verbs, to form an enhanced list. The text partitioning process starts off with looking up encountered text in the Partition List (at block 101) and replacing every matched partition word or other partition entity with a partition tag such as "####" (shown at block 102). Additional partition tags are added into those text chunks at the point where there is a case change, either from lower case to upper case or vice versa (shown at block 103). Block 104 indicates generation of the text chunk list which preserves the natural sequence of the chunks as encountered in the text. The frequency information for each chunk in the list is collected by scanning the text chunks in their natural sequence. The first occurrence of each unique chunk in the sequence is registered as a new entry with its frequency as 1. Subsequent occurrences are registered by incrementing its frequency count by 1. This generation of occurrence frequencies in association with the respective chunks is indicated by block 105. FIG. 4B is a flow chart of FIG. 3 module 20, illustrating details of a preferred process for selecting which chunks are phrases. FIG. 5 is a data memory structure diagram showing how data may be arranged in memory for the process, and how data flows into and out of various steps of the process. More specifically, the steps from FIG. 3 of text partitioning 10, phrase selection 20, and optional processing 30 (reproduced on the left side of FIG. 5) are illustrated in conjunction with an exemplary data memory structure diagram (on the right side of FIG. 5) to schematically illustrate data flow between major functional procedures and data structures. The various lists shown in the exemplary memory blocks on the right side of FIG. 5 are understood to include list members in conjunction with their respective frequencies of occurrence. The memory (broadly, any data storage medium such as RAM and/or magnetic disk and/or optical disk and/or other suitable computer readable medium) may be structured in memory blocks as schematically illustrated. A text stream file 300 and a Partition List 310 are used as inputs to the partitioning process 10 of the inventive phrase recognition method. The partitioning process 10 provides a chunk list (understood as including corresponding chunk frequencies) 315. Chunk list 315 is used by the phrase selection process 20 of the inventive phrase recognition method. The partitioning process produces various groupings of chunks, each with their respective frequencies of occurrence within the text stream. These groupings of chunks are illustrated on the right side of FIG. 5, with the understanding that the invention should not be limited to the particular memory structure so illustrated. Specifically, lower case words (that is, single- word chunks) are in memory block 320, capitalized or "allcaps" single-word chunks are in memory block 325, a Proper Name List (preferably of greater than one word, each being capitalized or in allcaps) is in memory block 330, lower case phrases of greater than one word occurring more than once are in memory block 335, lower case phrases of greater than one word which were encountered only once are in memory block 345, and, optionally, acronyms are in memory block 350. A synonym thesaurus in memory block 375 may be used in an optional process 30. A phrase frequency list derived from a collection of plural documents in which the phrase frequency throughout the collection is greater than a threshold, in memory block 380, may also be used in an optional processing procedure 30. Further, one or more special indicator lists, generally indicated as 385A-385E (company indicators, geographic names, product names, organization indicators, English first names, respectively, some of which are exemplified in the attached Appendices) may contribute to certain optional categorizing processes, and result in corresponding name lists (company names, geographic location names, product names, organization names, and English names) generally indicated as 390A-390E. Referring again to FIG. 4B, after the text chunk list is produced, it is the time to make decision whether each chunk in the list is a phrase useful for representing conceptual content of documents. The inventive phrase recognition method uses the frequency information of two types of the partitioned text chunks (namely, the proper names in block 330 and the lower case phrases in blocks 335 and 345) to make final phrase selection decisions. Preferably, the invention focuses on lower case phrases of more than one word, or on proper names ("John Hancock", "United States"). Referring to FIGS. 4B and 5, at block 201, entries consisting of a solitary lower case word are not selected as phrases. Rejected entries are stored in memory block 320. As shown at block 202, those chunks that include plural lower case words are determined to be phrases only if they occur at least twice in the text stream. These chunks are stored in memory block 335. Chunks not fitting these criteria are stored in block 345 for further processing. For chunks consisting of a solitary upper case word (either the first letter being capitalized or "allcaps"), no phrase decision is made at this stage, as shown at block 203. Such chunks are stored in memory block 325. In block 204, chunks including plural upper case words are determined to be proper names and are stored in a Proper Name List in memory block 330. Finally, other text chunks not fitting the previous criteria are simply discarded at this time, as indicated at block 205. Next, block 206 examines the lower case phrases having a single occurrence from memory block 245. They are examined for having one of its sub-phrases as part of an existing lower case phrase in the list. For efficiency, a sub-phrase may be defined to be the first or last two or three words in the phrases. When the existence of a sub-phrase is detected, it is merged into the corresponding phrase in the list in memory block 335, and its frequency count is updated. Otherwise, and the lower case phrase is decomposed into individual words for updating the lower case word list in memory block 320 as an optional output. As a result of this sub-phrase mapping in block 206, in our example the list is reduced to a list of lower case phrases and a list of proper names, both with their respective frequency counts: [political wing, 2] [Citing, 1] [Irish Republican Army, 1] [Clinton Administration, 1] [Northern Ireland, 1] [Manhattan, 1] [Tuesday, 1] [ Administration, 1] [Gerry Adams, 1] [Sinn Fein, 1] [White House, 1] [British Government, 1] The singleton upper case word could be used for referencing an existing proper name in the proper name list. To make the final frequency count accurate, the method makes one additional scan to the Proper Name List 330. It consolidates the upper case word that is either the first or the last word of a previously recognized proper name, and updates its frequency count. This use of upper case single words in memory block 325 to revise the Proper Name List 330 is indicated at block 207. The method stores the other upper case words in the upper case word list 325 as an optional output. A special case of the singleton upper case word is that of the acronym. An acronym is defined either as a string of the first character of each word (which is neither a preposition nor a conjunction) in a proper name or as a string of the first character of each word in a proper name followed by a period. As indicated at block 208, when an acronym in memory block 325 maps to a proper name in the proper name list 330, the frequency count of the proper name is incremented, and the pair of the proper name and its acronym is copied into an acronym list 350 as an optional output. In our example, this reference checking process further reduces the proper name list in this example to the following: [Irish Republican Army, 1] [Clinton Administration, 2] [Northern Ireland, 1] [Gerry Adams, 1] [Sinn Fein, 1] [White House, 1] [British Government, 1] If no additional processing is necessary, this method concludes by combining the lower case phrase list in memory block 335 and the Proper Name List in memory block 330 into a single Phrase List 340 which is provided as the final output of the phrase selection process 20. In another embodiment, the lower case phrases with frequency = 1 in memory block 345 are also included in the consolidation, in addition to the Proper Name List in memory block 330 and the lower case phrases having frequency greater than 1 in memory block 335. The choice of either including or excluding the lower case phrases in memory block 345 is determined by a frequency threshold parameter which determines the number of times a lower case phrase must be encountered before it is allowed to be consolidated into the final Phrase List. The example shown in FIG. 5 has this threshold set to 2, so that those phrases encountered only once (in memory block 345) are excluded from the consolidated Phrase List 340. The dotted line extending downward from Phrase List 340 to include memory block 345 shows how lower case phrases encountered only once can be included in the Phrase List if desired, however. In any event, the consolidation of memory blocks into a single Phrase List is indicated at block 209. For this text stream example, the final Phrase List is as follows: [political wing, 2] [Irish Republican Army, 1] [Clinton Administration, 2] [Northern Ireland, 1] [Gerry Adams, 1] [Sinn Fein, 1] [White House, 1] [British Government, 1] The invention envisions that optional processes are available for further enhancing the recognized phrases. FIG. 6A is a flow chart of an optional processing module for consolidating with a synonym thesaurus. Referring to FIG. 6A, the Phrase List can be further reduced with a synonym thesaurus, as indicated at block 301. The synonym thesaurus may be any suitable synonym thesaurus available from commercial vendors. As an example, the Phrase List may map "White House" to "Clinton Administration. " Using a synonym thesaurus is risky because its contents may not reflect the intended conceptual content of the text, and therefore may cause mapping errors. For example, it would be problematic if a synonym thesaurus maps "Bill Clinton" to "White House", because the two terms are not always equivalent. FIG. 6B is a flow chart of an optional processing module for processing phrases with prepositions. Referring to FIG. 6B, when a desirable lower case phrase contains one of a small set of prepositions (e.g. , "right to counsel", "standard of proof"), the method takes the set out of the Partition List used for generating text chunks so that the phrase including the preposition has an opportunity to reveal itself as being part of a "good" phrase. This process is indicated as block 302. Since it is statistically unlikely that any given occurrence of a preposition is in a "good" phrase, this optional process consumes substantial time for a relatively small increase in phrases, and is considered optional. It is necessary to have another process to further examine the unqualified phrase in memory block 345 that contains one of the selected prepositions, whether the sub-phrase on the left of the preposition or the sub-phrase on the right constitutes a valid phrase in the lower case phrase list in memory block 335. This process is illustrated as block 303. As a result of process blocks 302, 303, memory block 335 may be updated. FIG. 6C is a flow chart of an optional processing module for trimming phrases with their collection frequencies. Referring to FIG. 6C, still another optional process is that of editing the list of the Proper Name List 330 and lower case phrases 335 with additional frequency information 380 gathered from a text collection of more than one document. The assumption here is that, the more authors which use a phrase, the more reliable the phrase is for uniquely expressing a concept. In other words, a phrase occurring in more than one document is a "stronger" phrase than another phrase occurring only in a single document. Here, the "collection frequency" of a phrase is the number of documents that contain the phrase. A collection frequency threshold (e.g., five documents) can be set to trim down those phrases whose collection frequencies are below the threshold, as indicated at block 304. Essentially, FIG. 6C trims the entire Phrase List 340, including entries from either memory block 330 or 335. When collection frequency infoimation is available (as illustrated by memory block 380), the minimum frequency requirement of two encounters for the lower case phrases within a text (see FIG. 5) can be lowered to one encounter. "Mistaken" phrases will be rejected when consulting the collection frequency information when considering multiple documents. FIG. 6D is a flow chart of an optional processing module for categorizing proper names. Referring now to FIG. 6D, after proper names are identified and are stored in the Proper Name List 330, it is possible to categorize them into new sets of pre-defined 5 groups, such as company names, geographic names, organization names, peoples' names, and product names. A list 385A of company indicators (e.g., "Co. " and "Limited") is used for determining whether the last word in a proper name is such an indicator, and thereafter for categorizing it into the group of company name. Any word after this indicator is removed 10 from the proper name. With the knowledge of the company name, it may be useful to check the existence of the same company name in the list that does not have the indicator word. If the search is successful, the frequency count of the company name is updated. The recognized company names are kept in a Company Names list 390A as an optional output, as indicated 15 at block 305. Similarly, a list 385B of geographic names or a list 385C of product names may be used for looking up whether a proper name has a match and thereafter for categorizing it into the list of geographic names or a list of product names, respectively. The recognized geographic names or product names are kept in Geographic Location Names 390B or 20 Product Names 390C lists as optional outputs, as indicated at blocks 306 and 307. A list 385 D of words that designate organizations is used for determining whether the first or the last word of a proper name is the indicator of organization, and thereafter for categorizing it into the group of organizations. The recognized organization names may be kept in an Organization Names List 390D as an optional output, as indicated at block 25 308. Finally a list 385E of English first names is used for determining whether the first word of a proper name is a popular first name and thereafter for categorizing it into the group of peoples' names. Any word before the first name is removed from the proper name. The more comprehensive the lists are, the more people names can be categorized 30 properly. The recognized people names are kept in a separate English Names list 390E as an optional output for other indexing activities, as indicated at block 309. Appendices A through E present an exemplary Partition List 310 and exemplary Special Indicator/ Name lists 385A-385E. The inventive method having been described above, the invention also encompasses apparatus (especially programmable computers) for carrying out phrase recognition. Further, the invention encompasses articles of manufacture, specifically, computer readable memory on which the computer-readable code embodying the method may be stored, so that, when the code used in conjunction with a computer, the computer can carry out phrase recognition. Non-limiting, illustrative examples of apparatus which invention envisions are described above and illustrated in FIGS. 1 and 2. Each constitutes a computer or other programmable apparatus whose actions are directed by a computer program or other software. Non-limiting, illustrative articles of manufacture (storage media with executable code) may include the disk memory 116 (FIG. 1), the disk memories 52-54 (FIG. 2), other magnetic disks, optical disks, conventional 3.5-inch, 1.44MB "floppy" diskettes or other magnetic diskettes, magnetic tapes, and the like. Each constitutes a computer readable memory that can be used to direct the computer to function in a particular manner when used by the computer. Those skilled in the art, given the preceding description of the inventive method, are readily capable of using knowledge of hardware, of operating systems and software platforms, of programming languages, and of storage media, to make and use apparatus for phrase recognition, as well as computer readable memory articles of manufacture which, when used in conjunction with a computer can carry out phrase recognition. Thus, the invention's scope includes not only the method itself, but apparatus and articles of manufacture. Applications of the phrase recognition method. The phrase recognition method described above can be used in a variety of text searching systems. These include, but need not be limited to, dynamic phrase recognition in on-line systems, batch phrase recognition in a distributed development system, and batch phrase recognition in a mainframe system. The following description of the applications of the inventive phrase recognition method is illustrative, and should not limit the scope of the invention as defined by the claims. In an on-line system (OLS) envisioned as a target application for the inventive phrase recognition method, a user viewing a current document and entering a command to search for documents of similar conceptual content must wait for the phrase recognition process to be completed. Accordingly, the efficiency of the inventive phrase recognition method is important, as it allows reduced response time and uses minimal resources in a time-sharing environment. According to the application of the invention in a given on-line system, the method processes the text in a single document in real time to arrive at a list of "good" phrases, namely, ones which can be used as accurate and meaningful indications of the document's conceptual content, and which can be used as similarly accurate and meaningful queries in subsequent search requests. In particular, according to a preferred application, the Phrase List derived from the single document is used to construct a new search description to retrieve additional documents with similar conceptual content to the first document. This implementation of the phrase recognition method may, for example, be embedded in session administrator (FIG. 2) or other software which governs operation of the computer system on which the phrase recognition method. Of course, the particular implementation will vary with the software and hardware environment of the particular application in question. FIG. 7 A indicates a user's viewing of a document in accordance with a suitable on- line text search system, and invoking the inventive phrase recognition method to search for additional documents of similar conceptual content. In particular, block 701 assumes a user viewing a given document enters a command (such as " .more") to retrieve more documents similar in conceptual content to the current one being viewed. When the " .more" command is entered, control passes to block 702 which indicates retrieval of the document being viewed and passing it to the session administrator or other software which includes the inventive phrase recognition software. Block 703 indicates execution of the inventive phrase recognition method on the text in the retrieved document. A candidate phrase list is generated, based on that single document. Block 704 indicates how the candidate phrase list generated from the single document may be validated against an existing (larger) phrase dictionary. The static phrase dictionary may be generated as described below, with reference to the batch phrase recognition application in a distributed development system. If a candidate phrase does not already exist in the phrase dictionary, the candidate phrase is broken down into its component words. Ultimately, a list of surviving phrases is chosen, based on frequency of occurrence. At decision block 705, if at least a given threshold number of words or phrases (e.g., five words or phrases) is extracted, control passes from decision block 705 to block 708, described below. If, however, the given threshold number of words or phrases are not extracted, control passes from decision block 705 along path 706 back to block 701, after displaying an error message at block 707 which indicates that the displayed current document could not successfully be processed under the " .more" command. Block 708 indicates that the newly-added words or phrases are added to the search query which previously resulted in the user's viewing the current document. Block 709 indicates the system's displaying the new "combined" search query to the user. The user may edit the new query, or may simply accept the new query by pressing "enter" . FIG. 7B schematically indicates implementation of the phrase recognition method in a batch phrase recognition system in a distributed development system. In contrast to the implementation of the on-line system of FIG. 7 A, in the application shown in FIG. 7B, the phrase recognition method is applied to a large collection of documents, and produces a list of phrases associated with the entire collection. As mentioned above with reference to FIG. 7A, the phrase dictionary may be generated by this batch recognition process in the "distributed development domain" (DDD) when there is an abundance of idle system resources. When the on-line system then uses the resultant phrase dictionary, the phrase dictionary is essentially static, having been generated and modified outside the on-line sessions. The FIG. 7B application takes longer to execute than the single-document phrase recognition process occurring in the dynamic phrase recognition in the on-line application. Accordingly, the FIG. 7B process is preferably executed as a batch process at times when overall system usage is not impaired, such as overnight. In particular, the software implementation of the phrase recognition/phrase dictionary building process may be implemented on SUN work stations. As a background to FIG. 7B, a developer's control file defines which documents, and/or which portions of the documents, should be processed in a given run. Block 723 indicates a filtering process which filters out documents and portions of documents which are not desired to contribute to the phrase dictionary, based on the control file. Block 724 indicates application of the inventive phrase recognition method to the documents and portions of documents which have passed through filter process 723. The output of the phrase recognition process is a phrase list (PL) which, in the illustrated non-limiting embodiment, is stored as a standard UNIX text file on disk. In a preferred embodiment, single- word terms which are encountered are discarded, so that only multiple word phrases are included in the phrase list (PL). For simplicity, each phrase is provided on a single line in the file. Block 725 indicates how the UNIX file is sorted using, for example, the standard UNIX sort utility, causing duplicate phrases to be grouped together. Block 725 also calculates the frequency of each of the grouped phrases. If a given phrase occurs less than a given threshold number of times (e.g. , five times as tested by decision block 727) it is discarded, as indicated by decision block 726. Only phrases which have been encountered at least that threshold number of times survive to be included in the revised Phrase List, as shown in block 728. The revised Phrase List is then transferred from the SUN work station to its desired destination for use in, for example, the on-line system described above. It may also be transferred to a main frame computer using a file transfer protocol FTP, to be processed by a phrase dictionary building program and compiled into a production phrase dictionary. This process is shown illustrated as block 729. Referring now to FIG. 7C, the application of the inventive phrase recognition method on a mainframe system is schematically illustrated. In the illustrated application, the phrase recognition method is implemented as a batch process in a production mainframe. The process involves a random sample of documents from a larger collection of documents, and produces a set of phrases for each document processed. The process is preferably executed when system resources are not otherwise in high demand, such as overnight. The process of FIG. 7C is especially useful for use with statistical thesauri. As a background, it is assumed that phrases may be considered to be "related" to each other if they occur in the same document. This "relationship" can be exploited for such purposes as expanding a user's search query. However, in order to provide this ability, large number of documents must first be processed. Referring again to FIG. 7C, block 733 indicates the filtering of documents and portions thereof in accordance with specifications from a control file, in much the same manner as described with reference to FIG. 7B. Block 734 indicates the application of the inventive phrase recognition method to the documents which pass the filter. One set of terms (single words, phrases or both) is produced for each document and stored in respective suitably formatted data structure on a disk or other storage medium. Further details of implementation of the applications of the inventive phrase recognition method depend on the particular hardware system, software platform, programming languages, and storage media being chosen, and lie within the ability of those skilled in the art. The following Appendices are exemplary, illustrative, non-limiting examples of a Partition List and other lists which may be used with an embodiment of the phrase recognition method according to the present invention. APPENDIX A Example of PARTITION LIST (On-Line System with News Data) ® Copyright 1995 LEXIS-NEXIS, a Division of Reed Elsevier Inc. A BEING FRIDAY I'M A.M BELOW FROM I'VE ABOUT BETWEEN GET I.E ABOVE BOTH GO IF ACROSS BUT GOT IN AFFECT BY HAD INTO AFTER CAN HAPPEN IS AGAIN COULD HARDLY IT AGO DEC HAS ITS ALL DECEMBER HAVE ITSELF ALREADY DID HAVING JAN ALSO DO HE JANUARY ALTHOUGH DOE HENCE JUL ALWAY DUE HER JULY AN DURING HER N JUN AND E.G HERE JUNE ANOTHER EACH HEREAFTER JUST ANY EIGHT HEREBY LIKE ANYBODY EIGHTEEN HEREIN MANY ANYMORE EITHER HEREINAFTER MAR ANYONE ELEVEN HEREINSOFAR MARCH ANYTHING EVEN HEREOF MAY APR EVENTUALLY HEREON ME APRIL EVER HERETO MIGHT ARE EVERYBODY HEREWITH MINE AROUND EVERYMAN HERN MON AS EVERYONE HERSELF MONDAY ASIDE EVERYTHING HIC MORE ASK EXCEPT HIM MUCH AT FEB HIMSELF MUST AUG FEBRUARY HIS MY AUGUST FEW HIS'N MYSELF AWAY FEWER HISSELF N.S BAITH FIFTEEN HOC NANE BE FIVE HOW NEITHER BECAME FOR HOWEVER NEVERTHELESS BECAUSE FOUR I NINE BEEN FOURTEEN I'D NINETEEN BEFORE FRI I'LL NO NOBLEWOMAN SEVEN THIRTEEN WHEREBY NOBODY SEVENTEEN THIS WHEREEVER NONE SEVERAL THOSE WHEREIN NOR SHE THOU WHETHER NOT SHOULD THOUGH WHICH NOV SINCE THREE WHICHEVER NOVEMBER SIR THROUGH WHICHSOEVER NOW SIX THUR WHILE O.S SIXTEEN THURSDAY WHO OCT SO THUS WHOEVER OCTOBER SOME THY WHOM OF SOMEBODY THYSELF WHOMSOEVER OFF SOMEONE TILL WHOSE OFTEN SOMETHING TO WHOSESOEVER ON SOMETIME TODAY WHOSO ONE SOMEWHERE TOMORROW WHOSOEVER ONESELF SOONER TOO WHY ONLY STILL TUE WILL ONTO SUCCUSSION TUESDAY WITH OR SUCH TWELVE WITHIN OTHER SUN TWENTY WITHOUT OTHERWISE SUNDAY TWO WOULD OUGHT TAKE UN YA OUR TEN UNDER YE OUR'N THAE UNLESS YES OURSELF THAN UNTIL YESTERDAY OURSELVE THAT UNTO YET OUT THE UP YON OVER THEE UPON YOU P.M THEIR US YOUR PERHAP THEIRSELF USE YOUR'N QUIBUS THEIRSELVE VERY YOURSELF QUITE THEM VIZ 1ST RATHER THEMSELVE WAS 10TH REALLY THEN WE 11TH REV THERE WED 12TH SAID THEREAFTER WEDNESDAY 13TH SAME THEREBY WERE 14TH SAT THEREFORE WHAT 15TH SATURDAY THEREFROM WHATE'ER 16TH SAY THEREIN WHATEVER 17TH SEE THEREOF WHATSOE'ER 18TH SEEMED THEREON WHATSOEVER 19TH SELF THERETO WHEN 2D SEP THEREWITH WHENEVER 2ND SEPT THESE WHENSOEVER 20TH SEPTEMBER THEY WHERE 21ST D RD TH TH TH TH TH TH APPENDIX B Example of COMPANY INDICATOR LIST ® Copyright 1995 LEXIS-NEXIS, a Division of Reed Elsevier Inc. BROS BROS. BROTHERS CHARTERED CHTD CHTD. CL CL. CO CO. COMPANY CORP CORP. CORPORATION CP CP. ENTERPRISES GP GP. GROUP INC INC. INCORP INCORP. INCORPORATED INE INE. LIMITED LNC LNC. LTD LTD. APPENDIX C Example of PRODUCT NAME LIST ® Copyright 1995 LEXIS-NEXIS, a Division of Reed Elsevier Inc. 240sx Kleenex Taurus 300sx L.O.C. Tide 4-Runner Lexus Toshiba 7Up Linux Turns Access Lotus Tylenol Adobe Magnavox Windex Altima Maxima Windows Arid Mercedes Yashika Avia Minolta Zoom B-17 Mitsubishi B17 Mustang BMW Nike Bayer Nikon Blazer OS2 Bounty Oracle Camary P100 Cannon P120 Chevy P133 Cirrus P60 Coke P75 Converse P90 Corvette Paradox Etonic Pepsi Excel Preparation-H F-14 Puffs F-15 Puma F-16 Quicken F-18 Rave F-22 Reebok F14 Rolaids F15 SA8 F16 Sable F18 Sentra F22 Seven-Up Infinity Solaris Ingres Sony JVC Sprite Jaguar Suave Jeep Sun Keds Sybase APPENDIX D Example of ORGANIZATION INDICATOR LIST ® Copyright 1995 LEXIS-NEXIS, a Division of Reed Elsevier Inc. ADMINISTRATION SCHOOL AGENCY SENATE ARMY SOCIETY ASSEMBLY TEAM ASSOCIATION UNION BOARD UNIVERSITY BUREAU CENTER CHURCH CLINIC CLUB COLLEGE COMMISSION COMMITTEE COMMUNITY CONGRESS COUNCIL COURT CULT DEPARTMENT DEPT FACTION FEDERATION FOUNDATION GOVERNMENT GUILD HOSPITAL HOUSE INDUSTRY INSTITUTE LEAGUE MEN ORGANIZATION PARLIAMENT PARLIMENT PARTY REPUBLIC APPENDIX E Example of ENGLISH FIRST-NAME LIST ® Copyright 1995 LEXIS-NEXIS, a Division of Reed Elsevier Inc. AARON ADRIANNE ALEXANDRINA ALPHONSUS ABAGAIL ADRIEN ALEXEI ALTA ABBIE ADRIENNE ALEXI ALTHEA ABBY AERIEL ALEXIA ALTON ABE AGATHA ALEXIS ALVA ABEGAIL AGGIE ALF ALVAH ABEL AGGY ALFIE ALVESTER ABELARD AGNES ALFIO ALVIN ABIGAIL AGNETA ALFORD ALYCE ABNER AGUSTIN ALFRED AMALIA ABRAHAM AHARON ALFREDA AMANDA ABRAM AIDA ALFY AMARYLLIS ACIE AILEEN ALGERNON AMBER ACY AILEENE ALICE AMBROSE ADA AILENE ALICIA AMBROSIA ADAH AIME ALINE AMBROSIUS ADAIR AIMEE ALISA AMELIA ADALBERT AINSLEE ALISHA AMIE AD ALINE AINSLEY ALISON AMILE ADAM AJA ALIX AMITY ADDAM AL ALLAN AMON ADDIE ALAIN ALLECIA AMOS ADDY ALAINE ALLEEN AMY ADELA ALAN ALLEGRA ANA ADELAIDE ALAN AH ALLEN ANABEL ADELBERT ALANNA ALLENE ANABELLE ADELE ALASTAIR ALLICIA ANALISE ADELENE ALBERT ALLIE ANASTASIA ADELINE ALBERTA ALLISON ANATOLY ADELLA ALBIN ALLOYSIUS ANCIL ADELLE ALDO ALLY ANDIE ADLAI ALDUS ALLYN ANDREA ADNA ALEC ALMA ANDREAS ADOLF ALECIA ALMETA ANDREE ADOLPH ALECK ALMIRA ANDREI ADOLPHUS ALENE ALMON ANDREJ ADORA ALEX ALONZA ANDREW ADRIAN ALEXANDER ALOYSIUS ANDY ADRIANE ALEXANDRA ALPHA ANETTA ANETTE ARIC AUD BARNY ANGELA ARICA AUDEY BARRETT ANGELICA ARIEL AUDIE BARRY ANGELINA ARISTOTLE AUDINE BART ANGELINE ARLAN AUDIO BARTHOLOMEW ANGELIQUE ARLEEN AUDREY BARTON ANGIE ARLEN AUDRIE BASIL ANGUS ARLENE AUDRY BAYARD ANITA ARLIE AUDY BEA ANN ARLIN AUGIE BEATRICE ANNA ARLINE AUGUST BEATRIX ANNABEL ARLO AUGUSTINE BEAUREGARD ANNABELLE ARMAND AUGUSTUS BEBE ANNALEE ARMIN AURELIA BECCA ANNE ARMOND AURELIUS BECKY ANNELIESE ARNE AUSTEN BEE ANNELISE ARNETT AUSTIN BELINDA ANNEMARIE ARNEY AUTHER BELLA ANNETTA ARNIE AUTRY BELLE ANNETTE ARNOLD AUVEL BEN ANNICE ARON AVA BENEDICT ANNIE ART AVERY BENJAMIN ANNINA ARTE AVIS BENJI ANNMARIE ARTEMIS AVITUS BENNETT ANSEL ARTEMUS AVON BENNIE ANSELM ARTHUR AVRAM BENNO ANSON ARTIE AXEL BENNY ANTHONY ARTIS AZZIE BENTLEY ANTOINE ARTY AZZY BERKE ANTOINETTE ARVELL BABETTE BERKELEY ANTON ARVIE BAILEY BERKELY ANTONE ARVO BAIRD BERKLEY ANTONETTE ARVON BALTHAZAR BERLE ANTONI ASA BAMBI BERNARD ANTONIA ASHELY BARB BERNETTA ANTONIO ASHER BARBARA BERNETTE ANTONY ASHLEIGH BARBEE BERNHARD AP ASHLEY BARBI BERNICE APOLLO ASTER BARBIE BERNIE APRIL ASTOR BARBRA BERRIE ARA ASTRID BARNABAS BERRY ARAM ATHENA BARNABUS BERT ARBY ATHENE BARNABY BERTHA ARCH ATTILIO BARNARD BERTHOLD ARCHIBALD AUBREY BARNET BERTON ARCHIE AUBRIE BARNETT BERTRAM ARETHA AUBRY BARNEY BERTRAND BERTRUM BRAINARD BUFORD CARLISLE BERYL BRAINERD BUNNIE CARLTON BESS BRANDI BUNNY CARLY BESSIE BRANDY BURL CARLYLE BETH BRANKA BURNELL CARMINE BETSEY BREK BURNETTA CAROL BETSIE BRENARD BURNICE CAROLA BETSY BRENDA BURREL CAROLANN BETTE BRENDAN BURT CAROLE BETTIE BRENT BURTON CAROLEE BETTY BRET BURTRAM CAROLINE BETTYE BRETT BUSTER CAROLYN BEULAH BRIAN BUTCH CAROLYNN BEVERLEE BRICE BYRON CARREN BEVERLIE BRIDGET CAESAR CARRIE BEVERLY BRIDGETT CAITLIN CARRIN BEWANDA BRIDGETTE CAL CARROLL BIFF BRIDIE CALE CARSON BILL BRIGIT CALEB CARY BILLIE BRIGITTE CALLA CARYL BILLY BRIJITTE CALLIE CARYN BIRD BRITNY CALLY CAS BJARNE BRITTANY CALVIN CASEY BJORN BRITTNEY CAM CASI BJORNE BRITTNY CAMDEN CASPAR BLAINE BROCK CAMERON CASPER BLAIR BRODERICK CAMILE CASS BLAKE BROOKE CAMILLA CASSANDRA BLANCA BROOKS CAMILLE CASSIE BLANCH BRUCE CANDACE CASSIUS BLANCHE BRUNHILDA CANDI CATHARINE BOB BRUNHILDE CANDICE CATHERINE BOBBI BRUNO CANDIS CATHLEEN BOBBIE BRYAN CANDUS CATHLENE BOBBY BRYANT CANDY CATHRINE BONNIE BRYCE CANNIE CATHRYN BONNY BRYON CARA CATHY BOOKER BUBBA CAREN CEASAR BORIS BUCK CAREY CEATRICE BOYCE BUCKY CARI CECELIA BOYD BUD CARIN CECIL BRACIE BUDDIE CARL CECILE BRACK BUDDY CARLA CECILIA BRAD BUEL CARLEEN CECILY BRADDOCK BUELL CARLENE CEDRIC BRADLEY BUFFIE CARLETON CEFERINO BRADLY BUFFY CARLINE CELESTE CELESTINE CHRISTOPH CLEVON CORTNEY CELIA CHRISTOPHER CLIFF CORY CELINA CHRISTOS CLIFFORD COSMO CESAR CHRISTY CLIFT COUNTEE CHAD CHRYSTAL CLIFTON COURTLAND CHADWICK CHUCK CLINT COURTNEY CHAIM CHUMLEY CLINTON COY CHANCY CICELY CLIO CRAIG CHANDLER CICILY CLITUS CRIS CHARITY CINDI CLIVE CRISPIN CHARLEEN CINDY CLOVIA CRISPUS CHARLENE CLAIR CLOVIS CRISSIE CHARLES CLAIRE CLOYD CRISSY CHARLESE CLARA CLYDE CRISTABEL CHARLETON CLARABELLE CODELL CRISTABELLE CHARLEY CLARE COLBERT CRYSTAL CHARLIE CLARENCE COLE CURLESS CHARLINE CLARICE COLEEN CURLY CHARLISE CLARINA COLETTE CURT CHARLOTTA CLARISSA COLIN CURTIS CHARLOTTE CLARK COLITA CY CHARLTON CLASSIE COLLEEN CYBIL CHAS CLAUD COLLETTE CYBILL CHASTITY CLAUDE COLLIN CYNDI CHAUNCEY CLAUDELLE COLON CYNDY CHELSIE CLAUDETTE CONNIE CYNTHIA CHER CLAUDIA CONNY CYRIL CHERI CLAUDINE CONRAD CYRILL CHERIE CLAUDIUS CONROY CYRILLA CHERYL CLAUS CONSTANCE CYRUS CHESTER CLAY CONSTANTIA DABNEY CHET CLAYMON COOKIE DACIA CHIP CLAYTON CORA DACIE CHLOE CLEIO CORABELLE DAGMAR CHLORIS CLEM CORDELIA DAGWOOD CHRIS CLEMENT COREY DAISEY CHRISSIE CLEMENTINE CORINE DAISY CHRISSY CLEMENZA CORINNE DALE CHRISTA CLENELL CORKIE DALTON CHRISTABEL CLEO CORKY DAMIAN CHRISTABELLE CLEOPHUS CORNEAL DAMIEN CHRISTAL CLEOTHA CORNELIA DAMION CHRISTIAAN CLEOTIS CORNELIUS DAMON CHRISTIAN CLETA CORRIE DAN CHRISTIE CLETUS CORRINE DAN'L CHRISTINE CLEVE CORRINNE DANA CHRISTOFER CLEVELAND CORRY DANIEL DANIELLA DEBBY DERL DOMENIC DANIELLE DEBORA DERMOT DOMENICK DANNA DEBORAH DERMOTT DOMER DANNY DEBRA DERRALL DOMINIC DANO DEBS DERREK DOMINICK DANUTA DEDIE DERRICK DOMINICKA DAPHNE DEE DERRY DOMINIQUE DARBIE DEEANN DERWOOD DON DARBY DEEANNE DESDEMONA DONALD DARCEE DEEDEE DESI DONELL DARCEY DEIDRE DESIRE DONELLE DARCI DEL DESIREE DONICE DARCIE DELAINE DESMOND DONIS DARCY DELANE DESMUND DONNA DARIEN DELANO DEVON DONNELL DARIO DELBERT DEVORAH DONNELLE DARIUS DELIA DEWANE DONNIE DARLA DELL DEWAYNE DONNY DARLEEN DELLA DEWEY DONOVAN DARLENE DELLO DEWITT DORA DARLINE DELMA DEXTER DORCAS DARLYNE DELMAR DEZ DORCE DARNELL DELMAS DIAHANN DOREEN DAROLD DELMO DIANA DORI DARREL DELNO DIANE DORIAN DARRELL DELORES DIANNA DORIE DARREN DELORIS DIANNE DORIENNE DARRIN DELOY DICK DORINE DARRYL DELTA DICKEY DORIS DARWIN DEMETRICE DICKIE DOROTHA DARYL DEMETRIUS DIDI DOROTHEA DASHA DENARD DIEDRE DOROTHY DAVE DENE DIERDRE DORRANCE DAVEY DENICE DIETER DORRIS DAVID DENILLE DIETRICH DORSEY DAVIDA DENIS DIMITRI DORTHIE DAVIE DENISE DINA DORTHY DAVY DENNIE DINAH DOSHIE DAWN DENNIS DINO DOT DEAN DENNY DION DOTTIE DEANDRA DENNYS DIRK DOTTY DEANE DENORRIS DIXIE DOTY DEANNA DEO DMITRI DOUG DEANNE DEON DOLLIE DOUGIE DEB DEREK DOLLY DOUGLAS DEBBI DEREWOOD DOLORES DOUGLASS DEBBIE DERICK DOM DOY DOYLE EDISON ELISHA EMETT DREW EDITA ELISSA EMIL DRU EDITH ELIUS EMILE DUAIN EDMOND ELIZA EMILIE DUAINE EDMUND ELIZABETH EMILY DUANE EDNA ELIZAR EMMA DUB EDRIS ELKE EMMALINE DUDLEY EDSEL ELLA EMMERY DUEL EDUARD ELLE EMMET DUELL EDWARD ELLEN EMMETT DUFF EDWIN ELLERY EMMIE DUFFY EDWINA ELLIE EMMOT DUGALD EDY ELUET EMMOTT DUKE EDYTH ELLIOT EMMY DULCIE EDYTHE ELLIOTT EMOGENE DULSA EFFIE ELLIS EMORY DUNCAN EFRAIM ELLY ENDORA DURWARD EGBERT ELLYN ENDRE DURWOOD EGIDIO ELMA ENGELBERT DUSTIN EILEEN ELMER ENID DUSTY ELA ELMIRA ENISE DWAIN ELAINE ELMO ENNIS DWAINE ELAYNE ELNOR ENOCH DWAYNE ELBA ELNORA ENOLA DWIGHT ELBERT ELOI ENZO DYLAN ELBERTA ELOISE EPHRAIM DYNAH ELDA ELOUISE EPHRIAM EARL ELDINE ELOY ERASMUS EARLE ELDON ELRIC ERBIN EARLENE ELDORA ELROY ERIC EARLINE ELE ELSA ERICA EARNEST ELEANOR ELSBETH ERICH EARNESTINE ELEANORA ELSIE ERICK EARTHA ELEANORE ELTON ERIK EARTHEL ELECTRA ELVA ERIKA EBEN ELENA ELVERT ERIN EBENEEZER ELENORA ELVIE ERLAND EBENEZER ELENORE ELVIN ERLE EBERHARD ELEONORA ELVIRA ERMA EBONY ELI ELVIS ERMAN ED ELIAS ELVON ERNEST EDD ELIC ELWOOD ERNESTINE EDDIE ELIJAH ELY ERNESTO EDDY ELINORE ELZA ERNIE EDGAR ELIOT EMELDA ERNST EDGER ELISABETH EMERIC ERROL EDIE ELISE EMERY ERVAN ERVEN EWIN FLOSSY GAGE ERVIN EZEKIEL FLOYD GAIL ERWIN EZRA FONDA GALE ESAU FABIAN FONTAINE GALLON ESMERELDA FABIEN FORD GARETH ESTA FAIRLEIGH FORREST GARLAND ESTEL FAITH FRAN GARNET ESTELA FANNIE FRANCES GAROLD ESTELLA FANNY FRANCIA GARRET ESTELLE FARAH FRANCINE GARRETT ESTER FARLEIGH FRANCIS GARRIE ESTHA FARLEY FRANCOIS GARRY ESTHER FARRAH FRANCOISE GARTH ETHAN FARREL FRANK GARVIN ETHEL FARRELL FRANKIE GARY ETHELENE FARRIS FRANKLIN GASTON ETHELINE FATIMA FRANKLYN GAVIN ETHYL FAUN FRANKY GAY ETIENNE FAWN FRANNIE GAYE ETTA FAY FRANNY GAYLE ETTIE FAYE FRANZ GAYLORD EUDORA FELECIA FRANZI GEARY EUFA FELICIA FRANZIE GEMMA EUGENE FELICITY FRANZY GENA EUGENIA FELIX FRED GENE EUGENIE FELIZ FREDA GENEVA EUGENIO FERD FREDDIE GENEVIEVE EULA FERDINAND FREDDY GENIE EULALEE FERGUS FREDERICH GENNARO EULALIE FERN FREDERICK GENNIE EULOGIO FERREL FREDERIK GENNIFER EUNACE FERRELL FREEMAN GENNY EUNICE FERRIS FREIDA GENO EUPHEMIA FIDELE FRIEDA GEO EUSTACE FIFI FRIEDRICH GEOFF EVA FILBERT FRITZ GEOFFREY EVALEE FILIPPO FRONA GEORGE EVAN FIONA FYODOR GEORGES EVANDER FITZ GABBEY GEORGETTE EVANGELINE FLETCHER GABBIE GEORGIA EVE FLO GABE GEORGIE EVELYN FLOR GABRIEL GEORGINA EVERETT FLORA GABRIELE GERALD EVERETTE FLORANCE GABRIELLE GERALDINE EVETTE FLORENCE GABY GERARD EVITA FLORIDA GAEL GERD EWALD FLOSSIE GAETANO GERDINE GERHARD GLENN GUNTER HANNE GERI GLENNA GUNTHER HANNES GERMAIN GLENNIE GUS HANNIBAL GERMAINE GLENNIS GUSSIE HANS GEROLD GLENNON GUSSY HANSELL GEROME GLORIA GUST HARLAN GERRIE GLYN GUSTAF HARLEN GERRIT GLYNDA GUSTAV HARLEY GERRY GLYNIS GUSTAVE HARLIE GERT GLYNN GUSTAVUS HARLY GERTA GLYNNIS GUSTOV HARMIE GERTIE GODFREY GUY HARMON GERTRUDE GODFRY GWEN HAROL GEZA GODWIN GWENDA HAROLD GIA GOLDA GWENDALYN HARREL GIACOMO GOLDIE GWENDEN HARRIET GIDEON GOLDY GWENDLYN HARRIETT GIFFORD GOMER GWENDOLA HARRIETTA GIGI GORDAN GWENDOLEN HARRIS GIL GORDON GWENDOLINE HARRISON GILBERT GOTTFRIED GWENDOLY HARROLD GILDA GRACE GWENDOLYN HARRY GILES GRACIA GWENDOLYNE HARVEY GILLIAN GRACIE GWENDY HARVIE GILLIGAN GRADY GWENETH HASSLE GINA GRAEME GWENETTA HATTIE GINGER GRAHAM GWENETTE HATTY GINNI GRANT GWENITH HAYDEE GINNIE GRAYCE GWENN HAYDEN GINNY GREG GWENNE HAYDON GINO GREGG GWENNETH HAYLEY GIORA GREGGORY GWENYTH HAYWOOD GIOVANNA GREGORY GWYEN HAZEL GIOVANNI GRETA GWYLLEN HEATHCLIFF GISELA GRETCHEN GWYN HEATHER GISELLA GRETEL GWYNETH HECTOR GISELLE GRIFF GWYNNE HEDDA GIULIA GRIFFIN GYULA HEDDIE GIUSEPPE GRIFFITH HAILEY HEDWIG GIUSEPPI GROVER HAL HEIDI GIUSEPPINA GUENTHER HALLIE HEINRICH GLADIS GUERINO HALLY HEINZ GLADYCE GUIDO HAMISH HELAINE GLADYS GUILLERMINA HAMPTON HELEN GLEN GUILLERMO HANK HELENA GLENDA GUISEPPE HANNA HELENE GLENDON GUNNER HANNAH HELGA HELMUT HIRAM IKE ITA HELMUTH HIRSCH ILA IVA HELOISE HOBART ILAH IVAN HENDRIK HOBERT ILEEN IVANA HENDRIKA HOLLEY ILENA IVAR HENNIE HOLLI ILENE IV ARS HENNY HOLLIE ILSE IVETTE HENRI HOLLIS IMELDA IVEY HENRIETA HOLLISTER IMOGENE IVIE HENRIETTA HOLLY INA IVO HENRIETTE HOLLYANN INGA IVONNE HENRIK HOLLYANNE INGE IVOR HENRY HOMER INGGA IVORY HENRYK HONEY INGRAM IVY HERB HONORIA INGRID IZAAK HERBERT HOPE IOLA IZZIE HERBIE HORACE IONA IZZY HERBY HORST IONE JAC HERCULE HORTENSE IRA JACK HERLINDA HORTENSIA IRAD JACKI HERM HORTON IRENA JACKIE HERMA HOSEA IRENE JACKSON HERMAN HOWARD IRIS JACKY HERMANN HOWIE IRL JACOB HERMIE HOYT IRMA JACOBUS HEROLD HUBERT IRVIN JACQUELIN HERSCH HUEL IRVING JACQUELINE HERSCHEL HUEY IRWIN JACQUELYN HERSHEL HUGH ISAAC JACQUES HESTER HUGO ISAAK JADE HESTHER HULDA ISABEL JAKE HETTA HULDAH ISABELLA JAKOB HETΉE HUMPHREY ISABELLE JAMES HETTLE HUNTINGTON ISAC JAMEY HETTY HURSCHEL ISADOR JAMIE HEYWOOD HY ISADORA JAMYE HEZEKIAH HYACINTH ISADORE JAN HILARY HYMAN ISAIAH JANA HILDA IAIN ISHAM JANE HILDE IAN ISHMAEL JANEEN HILDEGARD ICHABOD ISIAH JANEL HILDEGARDE IDA ISIDOR JANELL HILDRED IGGY ISIDORE JANELLE HILDUR IGNATIUS ISMAEL JANET HILLARD IGNATZ ISOM JANICE HILLARY IGNAZ ISRAEL JANIE HILLERY IGOR ISTVAN JANINE JANIS JERMAIN JOETTE JUDY JANISE JERMAINE JOEY JULEE JANNA JEROL JOFFRE JULES JAQUELYN JEROLD JOH JULIA JARED JEROME JOHANN JULIAN JARRETT JERRALD JOHANNES JULIANE JARRYL JERRED JOHN JULIANNE JARVIS JERRELD JOHNIE JULIE JAS JERRELL JOHNNA JULIEN JASMINE JERRI JOHNNIE JULIENNE JASON JERRIE JOHNNY JULIET JASPER JERROLD JOJO JULIETTE JAY JERRY JOLENE JULIUS JAYME JERZY JON JUNE JAYMEE JESS JONAH JUNEY JAYNE JESSE JONAS JUNIE JEAN JESSICA JONATHAN JUNIOR JEANETTE JESSIE JONATHON JUNIUS JEANIE JETHRO JONELL JURGEN JEANNE JETTA JONI JUSTEN JEANNETTE JETTIE JONNY JUSTICE JEANNINE JEWEL JORDAN JUSTIN JEBEDIAH JEWELL JORDON JUSTINE JED JILL JOSEA KALVIN JEDEDIAH JILLIAN JOSELYN KARA JEFEREY JIM JOSEPH KAREN JEFF JIMBO JOSEPHA KARIN JEFFEREY JIMME JOSEPHINE KARL JEFFIE JIMMIE JOSEY KARLA JEFFREY JIMMY JOSH KAROLA JEMIMA JINNY JOSHUA KASEY JEMMA JO JOSIAH KASPAR JEMMIE JOAB JOSIE KASPER JEMMY JOACHIM JOY KATE JENNIE JOAN JOYCE KATERINA JENNIFER JOANN JOYCEANN KATEY JENNY JOANNA JOZEF KATHERINE JENS JOANNE JOZSEF KATHERYN JERALD JOB JUBAL KATHLEEN JERALDINE JOCELYN JUD KATHRYN JERE JOCILYN JUDAH KATHY JEREMIAH JOCLYN JUDAS KATIE JEREMIAS JODI JUDD KATY JEREMY JODIE JUDE KAY JERI JODY JUDI KAYE JERIANE JOE JUDIE KAYLEEN JERIE JOEL JUDITH KEENAN KEISHA KORNELIA LAURENCE LENNIE KEITH KORNELIUS LAURETA LENNY KELLEY KRAIG LAURETTA LENORA KELLI KRIS LAURETTE LENORE KELLIE KRISTA LAURI LENWOOD KELLY KRISTEN LAURIE LEO KELSEY KRISTI LAURIEN LEOLA KELVIN KRISTIE LAVELL LEON KEN KRISTIN LAVERA LEONA KENDALL KRISTINE LAVERN LEONARD KENDELL KRISTOFFER LAVERNA LEONID KENDRICK KRISTY LA VERNE LEONIDA KENNETH KURT LA VINA LEONIDAS KENNY KYLE LAVINIA LEONORA KENT KYM LAVONNE LEOPOLD KERI LACEY LAWRENCE LERA KERMIT LACIE LDA LEROY KERRIE LACY LEA LES KERRY LADON LEAH LESLIE KERSTIN LAINE LEANDER LESTER KERVIN LALAH LEANE LETA KERWIN LAMAR LEANN LETHA KEVIN LAMARTINE LEANNE LETICIA KIERSTEN LAMBERT LEATHA LETITIA KILIAN LAMONT LEE LETTIE KILLIAN LANA LEEANN LETTY KIM LANCE LEEANNE LEVERNE KIMBER LANCELOT LEENA LEVERT KIMBERLEE LANE LEESA LEVI KIMBERLEIGH LANSON LEFFEL LEVON KIMBERLEY LARA LEFTY LEW KIMBERLY LARENE LEIF LEWELL KIP LARONE LEIGH LEWIS KIRBY LARRIS LEILA LEXIE KIRK LARRY LEITH LEXY KIRSTEN LARS LELAH LIANE KIRSTI LASKA LELAND LIBBIE KIRSTIE LASLO LELIA LIBBY KIRSTIN LASZLO LELIO LIDA KIRSTY LATIC LEMMY LIEF KIT LATIMER LEMUEL LILA KITTIE LAUANNA LEN LILAC KITTY LAUNCIE LENA LILAH KLAUS LAURA LENARD LILE KONRAD LAUREE LENDEN LILIAN KONSTANTINOS LAUREL LENETTE LILIEN KOOS LAUREN LENISE LILITH LILLIA LONZIE LUCILLE MADALYN LILLIAN LONZO LUCINDA MADDIE LILLIE LONZY LUCIUS MADDY LILLY LORA LUCRETIA MADELAINE LILY LORAIN LUCY MADELEINE LIN LORAINE LUDLOW MADELENE LINCOLN LORANE LUDWIG MADELINE LINDA LORAY LUDWIK MADELYN LINDSAY LORAYNE LUDY MADGE LINDSEY LOREEN LUELLA MADIE LINK LOREN LUGENE MADONNA LINNEA LORENA LUIGI MAE LINNIE LORENE LUKE MAGDA LINNY LORETA LULA MAGDALENA LINROY LORETTA LULAH MAGDALENE LINUS LORI LULU MAGDALINE LINVAL LORIN LUMMIE MAGGIE LINWOOD LORNA LUNA MAGGY LINZIE LORNE LURLEEN MAGNUS LINZY LORRAINE LURLENE MAHALA LIONEL LORRAYNE LURLINE MAHALIA LISA LOTHAR LUTHER MAIA LISABETH LOTTIE LUZ MAIBLE LISE LOU LUZERNE MAIJA LISSA LOUELLA LYDIA MAJOR LIZ LOUIE LYLE MAL LIZA LOUIS LYMAN MALCOLM LIZABETH LOUISA LYN MALINDA LIZZIE LOUISE LYNDA MALISSA LIZZY LOULA LYNDON MALKA LLEWELLYN LOURETTA LYNN MALLORIE LLOYD LOVELL LYNNA MALLORY LLOYDA LOVETTA LYNNE MALORIE LOELLA LOVETTE LYNNETTE MALORY LOGAN LOWELL LYNWOOD MALYNDA LOIS LOY LYSANDER MAME LOLA LOYAL M' LINDA MAMIE LOLETA LUANN MABEL MANDEE LOLITA LUANNA MABELLE MANDI LOLLIE LUANNE MABLE MANDIE LOLLY LUBY MAC MANDY LON LUCAS MACE MANFRED LONI LUCIAN MACIE MANICE LONNA LUCIE MACK MANLEY LONNIE LUCIEN MADALAINE MANLY LONNY LUCILE MADALEINE MANNY LONSO LUCILLA MAD ALINE MANSEL MARABEL MARKIE MATTIE MELYNDA MARC MARKOS MATTY MENDEL MARCEL MARKUS MATTYE MERCEDEL MARCELIN MARLA MAUD MERCEDES MARCELL MARLENA MAUDE MERCY MARCELLA MARLENE MAURA MEREDETH MARCELLE MARLEY MAUREEN MEREDITH MARCELLUS MARLIN MAURENE MERIDETH MARCI MARLON MAUREY MERIDITH MARCIA MARMADUKE MAURICE MERISSA MARCIE MARNEY MAURIE MERLE MARCUS MARNIE MAURINE MERLIN MARCY MARNY MAURY MERLYN MARDA MARSDEN MAVIS MERREL MARGARET MARSHA MAX MERRELL MARGE MARSHAL MAXCIE MERRILL MARGEAUX MARSHALL MAXCINE MERRY MARGERY MARTA MAXIE MERVIN MARGI MARTEA MAXIM MERWIN MARGIE MARTHA MAXIMIUAN MERWYN MARGO MARTI MAXIMILLIAN MERYL MARGOT MARTICA MAXINE META MARGRET MARTIE MAXWELL MEYER MARGY MARTIKA MAY MIA MARIAM MARTILDA MAYBELLE MIATTA MARIAN MARTIN MAYDA MICAH MARIANN MARTY MAYME MICHAEL MARIANNE MARV MAYNARD MICHEL MARIBEL MARVA MEAGAN MICHELE MARIBELLE MARVIN MEG MICHELLE MARIBETH MARY MEGAN MICK MARIE MARYAM MEL MICKEY MARIEL MARYANN MELANIE MICKIE MARIETTA MARYANNE MELANY MICKY MARIETTE MARYBETH MELBA MIDGE MARILEE MARYFRANCES MELICENT MIKAEL MARILYN MARYLOU MELINDA MIKAL MARILYNN MASON MELISSA MIKE MARINA MATE MELLICENT MIKEAL MARIO MATEY MELODI MILAN MARION MATHEW MELODIE MILDRED MARISSA MATHIAS MELODY MILES MARIUS MATHILDA MELONIE MILICENT MARJORIE MATILDA MELONY MILLARD MARJORY MATT MELVA MILLICENT MARK MATTHEW MELVIN MILLIE MARKEE MATTHIAS MELVYN MILLY MILO MYRAH NERSES NORBERT MILT MYRAL NESTOR NOREEN MILTON MYREN NETTIE NORM MIMI MYRNA NEVILLE NORMA MINDY MYRON NEWEL NORMAL MINERVA MYRTLE NEWELL NORMAN MINNIE NADENE NEWT NORRIS MIRANDA NADIA NEWTON NORTON MIRIAM NADINE NICHAEL NORVAL MISSIE NADJA NICHOLAI NUNZIO MISSY NAMIE NICHOLAS NYLE MISTY NAN NICK OBADIAH MITCH NANCI NICKI OBED MITCHEL NANCIE NICKIE OBEDIAH MITCHELL NANCY NICKODEMUS OCIE MITZI NANETTE NICKY OCTAVE MOE NANI NICODEMO OCTAVIA MOLLIE NANNETTE NICODEMUS ODEL MOLLY NANNI NICOL ODELL MONA NANNIE NICOLA ODESSA MONICA NANNY NICOLAI ODIE MONIQUE NAOMA NICOLAS ODIS MONTE NAOMI NICOLE OGDEN MONTGOMERY NAPOLEON NICOLETTE OKTAVIA MONTY NAT NICOLLE OLA MONY NATALIE NICOLO OLAF MORDECAI NATASHA NIGEL OLAN MOREY NATASSIA NIKA OLEG MORGAN NATHAN NIKE OLEN MORGANA NATHANIEL NIKI OLGA MORRIS NATWICK NIKITA OLIN MORT NAZARETH NIKITAS OLIVE MORTIMER NEAL NIKKI OLIVER MORTON NEALY NILE OLIVIA MORTY NED NILES OLLEN MOSE NEDINE NILS OLLIE MOSES NEIL NIMROD OLOF MOZELLE NEILL NINA OMER MULLIGAN NELDA NOAH ONAL MURIEL NELL NOE ONEL MURPHY NELLE NOEL ONNIK MURRAY NELLIE NOLA OPAL MURRELL NELLY NOLAN OPEL MURRY NELS NONA OPHELIA MYLES NELSON NONNIE OPRAH MYNA NENA NORA ORA MYRA NERO NORAH ORAL ORAN PATRICE PHINEAS RAYFORD OREN PATRICIA PHOEBE RAYMOND ORESTE PATRICK PHYLLIS RBT ORIN PATSY PIA REAGAN ORLAN PATTI PIER REBA ORLEN PATTIE PIERCE REBECCA ORLIN PATTY PIERINA RECTOR ORLYN PAUL PIERRE REED ORPHA PAULA PIERS REGAN ORSON PAULETTE PIETER REGGIE ORTON PAULINA PIETRO REGGY ORTRUD PAULINE PLATO REGINA ORVAL PAVEL POINDEXTER REGINALD ORVID PEARCE POLLIE REGIS ORVIL PEARL POLLY REID ORVILLE PEARLENE PORTIA REINHARDT OSBERT PEARLIE PRECY REINHOLD OSCAR PEARLINE PRESTON REMI OSGOOD PEARLY PRINCE REMO OSIE PEDER PRINCESS REMUS OSSIE PEG PRISCILLA RENA OSWALD PEGGI PRUDENCE RENATA OTHA PEGGIE PRUE RENATE OTHIS PEGGY PRUNELLA RENE OTIS PENELOPE QUEEN RENEE OTTIS PENNI QUEENIE RETA OTTO PENNIE QUEENY RETHA OVE PENNY QUENTIN REUBAN OVETA PER QUINCY REUBEN OWEN PERCIVAL QUINNIE REUBENA OZZIE PERCY RACHEL REUBIN PADDIE PERRY RACHELLE REUBINA PADDY PERSIS RAE REVA PAGE PETE RAIFORD REX PAIGE PETER RALPH REXFORD PAM PETRA RAMONA REY PAMELA PETRO RANDAL REYNALD PANSY PETROS RANDALL REYNOLD PAOLO PHEBE RANDI RHEA PARL PHELIM RANDIE RHINELANDER PARNELL PHIDIAS RANDOLF RHODA PARRY PHIL RANDOLPH RHONA PASCAL PHILBERT RANDY RHONDA PASCHAL PHILIP RANSOM RHYS PASQUALE PHILIPPE RAPHAEL RICARD PAT PHILLIP RAQUEL RICH PATIENCE PHILO RAY RICHARD RICHELLE RONDA ROYAL SAMUAL RICHIE RONDELL ROYCE SAMUEL RICK RONETTE ROZALIA SANDI RICKEY RONNETTE ROZALIE SANDIE RICKI RONNIE RUBAN SANDRA RICKIE RONNY RUBEN SANDY RICKY ROOSEVELT RUBENA SANJA RIKKI RORY RUBERT SARA RILEY ROSALEE RUBEY SARAH RIPLEY ROSALIA RUBIE SAUL RISA ROSALIE RUBIN SCHUYLER RITA ROSALIND RUBINA SCOT RITCHIE ROSALINDA RUBY SCOTT RITHA ROSALYN RUBYE SCOTTIE ROB ROSALYND RUDDY SCOTTY ROBBI ROSAMOND RUDOLF SEAMUS ROBBIE ROSAMONDE RUDOLPH SEAN ROBBIN ROSAMUND RUDY SEBASTIAN ROBBY ROSAMUNDE RUE SEFERINO ROBERT ROSANNA RUEBEN SELDEN ROBERTA ROSANNE RUFUS SELENA ROBIN ROSCOE RULOFF SELENE ROBINA ROSE RUPERT SELINA ROBINETTE ROSEANN RUSS SELMA ROBYN ROSEANNE RUSSELL SELMER ROCCO ROSEBUD RUSTY SERENA ROCHELLE ROSELIN RUTH SERINA ROCKY ROSELYN RUTHANNA SETH ROD ROSEMARIE RUTHANNE SEYMORE RODDIE ROSEMARY RUTHIE SEYMOUR RODERIC ROSEMUND RUTHLYN SHANE RODERICH ROSEMUNDE RYAN SHANNON RODERICK ROSENA SABA SHARI RODGER ROSETTA SABINA SHARLENE RODNEY ROSIE SABINE SHARON RODRICK ROSINA SABRINA SHARYN ROGER ROSLYN SADIE SHAUN ROLAND ROSS SAL SHAWN ROLF ROSWELL SALLI SHAWNA ROLFE ROSWITHA SALLIE SHAYNE ROLLO ROULETTE SALLY SHEARL ROMAN ROWENA SALLYE SHEBA ROMEO ROWLAND SALOMON SHEENA ROMULUS ROXANNE SAM SHEILA RON ROXIE SAMANTHA SHELBY RONA ROXY SAMMIE SHELDEN RONALD ROY SAMMY SHELDON SHELIA SMEDLEY SUSANA TELMA SHELLEY SOFIE SUSANNA TENA SHELLY SOL SUSANNAH TENCH SHELTON SOLOMAN SUSANNE TERENCE SHERI SOLOMON SUSETTE TERESA SHERIDAN SONDRA SUZAN TERRANCE SHERIE SONIA SUZANNE TERRELL SHERILYN SONJA SUZELLEN TERRENCE SHERL SONNY SUZETTE TERRI SHERLE SONYA SUZI TERRILL SHERLEE SPARKY SUZIE TERRY SHERMAN SPENCE SUZY TERRYL SHERON SPENCER SVEN TESS SHERREE SPENSER SWEN TESSIE SHERRI SPIRO SY TESSY SHERRIE SPIROS SYBIL TEX SHERRY SPYROS SYD THAD SHERWIN STACEY SYDNEY THADDEUS SHERYL STACI SYLVAN THADEUS SHIRL STACIA SYLVANUS THARON SHIRLE STACIE SYLVENE THEA SHIRLEE STACY SYLVESTER THEDA SHIRLEY STAN SYLVIA THEIMA SI STANISLAW SYLVIE THELMA SIBYL STANLEY SYLVINA THEO SID STANLY TABATHA THEOBALD SIDNEY STEFAN TABITHA THEODIS SIEGFRIED STEFFI TAD THEODOR SIG STELLA TAFFY THEODORA SIGFRIED STEPHAN TALLULAH THEODORE SIGMUND STEPHANIE TAMARA THEODORIS SIGNE STEPHEN TAMI THEODOSIA SIGURD STERLING TAMMI THEONE SILAS STEVE TAMMIE THEORA SILVIA STEVEN TAMMY THEOTIS SILVIO STEVIE TANCRED THERESA SIMEON STEWART TANIA THERESIA SIMON STU TANJA THERESSA SIMONE STUART TANYA THOM SIMONNE SUANN TASHA THOMAS SISSIE SUANNE TATE THOMASINA SISSY SUE TATIANA THOR SKEET SUELLEN TAUBA THORA SKIPPIE SUMNER TED THORE SKIPPY SUNNIE TEDD THORNTON SKYLER SUNNY TEDDY THORVALD SLIM SUSAN TEE THOS THURMAN TRINA VERDEEN VIVIAN THURMOND TRISH VERDELL VIVIANNE THURSTAN TRISTAM VERGA VIVIEN THURSTON TRISTAN VERGIL VLAD TIBOR TRIXIE VERLIE VLADIMIR TIFFANY TRIXY VERLIN VOL TILLIE TROY VERLON VON TILLY TRUDIE VERLYN VONDA TIM TRUDY VERN VONNA TIMMY TWALA VERNA WADE TIMO TWILA VERNARD WALDEMAR TIMOTHY TWYLA VERNE WALDO TINA TYCHO VERNEST WALDORF TINO TYCHUS VERNESTINE WALLACE TIPHANIE TYCUS VERNICE WALLIE TIPHANY TYRONE VERNIE WALLY TITO UDIE VERNON WALT TITUS UDY VERONICA WALTER TOBIAS ULRICH VERSA WANDA TOBY ULYSSES VERSIE WARD TODD UNA VI WARREN TOLLIE URA VIC WASHINGTON TOLLIVER URBAIN VICKI WAYLAN TOLLY URIAS VICKIE WAYLEN TOM URSULA VICKY WAYLON TOMMIE VACHEL VICTOR WAYMAN TOMMY VADA VICTORIA WAYNE TONEY VAL VIDAL WELDEN TONI VALDA VIE WELDON TONIA VALENTIN VILMA WELLS TONY VALENTINE VINCE WENDEL TONYA VALENTINO VINCENT WENDELL TOOTIE VALERIA VINNIE WENDI TOVE VALERIE VINNY WENDY TRACEE VALTER VIOLA WERNER TRACEY VANCE VIOLET WES TRACI VANDER VIRACE WESLEY TRACIE VANDY VIRDA WESLIE TRACY VANESSA VIRGIE WESTLEY TRAVER VAUGHAN VIRGIL WHITNEY TRAVIS VAUGHN VIRGINIA WIDDIE TRENA VEDA VIRGINIUS WILBER TRENT VELLA VITA WILBERFORCE TREVOR VELMA VITINA WILBERT TREY VELVA VITINO WILBUR TRICIA VEOLA VITO WILDA TRILBY VERA VITTORIA WILEY WILFORD ZALPH WILFRED ZANE WILHELM ZEB WILHELMENA ZEBADIAH WILHELMINA ZEBEDEE WILHEMENA ZECHARIAH WILHEMINA ZEF WILLARD ZEFF WILLIAM ZEKE WILLIE ZELDA WILLIS ZELIA WILLMA ZELIG WILLY ZELL WILMA ZELLA WILMAR ZELLE WILMOT ZELMA WINFRED ZENA WINIFRED ZENITH WINNIE ZENO WINNIFRED ZENOBIA WINNY ZENON WINONA ZEPHERY WINSLOW ZETA WINSTON ZETTA WINTHROP ZEV WINTON ZILLA WM ZILLAH WOLFGANG ZINA WOODIE ZITA WOODROW ZIVKO WOODRUFF ZOE WOODY ZOLLIE WYATT ZOLLY WYLA ZORA XAVIER ZULA XAVIERA ZYGMUND YARDLEY ZYGMUNT YETTA YOLANDA YOSEF YVES YVETTE YVONNE ZACHARIA ZACHARIAH ZACHARY ZACK Modifications and variations of the above-described embodiments of the present invention are possible, as appreciated by those skilled in the art in light of the above teachings. As mentioned, any of a variety of hardware systems, memory organizations, software platforms, and programming languages may embody the present invention without departing from its spirit and scope. Moreover, countless variations of the Partition List, company indicators, product names, organization indicators, English first name list, and resulting Phrase Lists, and the like, may be employed or produced while remaining within the scope of the invention. It is therefore to be understood that, within the scope of the appended claims and their equivalents, the invention may be practiced otherwise than as specifically described.

Claims: WHAT TS CLAIMED IS: 1. A computer-implemented method of processing a stream of text to form a list of phrases which are useful as index terms and search query terms in full text document searching, the method comprising: partitioning the text into plural chunks of text, each chunk being separated by at least one partition entity from a partition list; and selecting certain chunks as the phrases, based on frequencies of occurrence of the chunks within the stream of text. 2. The method of claim 1, wherein the partitioning step includes: scanning a portion of the text stream; comparing the scanned portion of the text stream to partition entities in the partition list; substituting a partition tag for portions of the text stream which match a partition entity; generating a text chunk list; scanning the text chunk list to determine a frequency of each text chunk in the text chunk list; and revising the text chunk list to include the respective frequencies of occurrence in association with the text chunks. 3. The method of claim 1 , wherein the selecting step includes: selecting the certain chunks as the phrases based only on the frequencies of occurrence of the chunks within the stream of text and on a quantity of words within the chunks. 4. The method of claim 1, wherein: a) the partitioning step includes: al) scanning a portion of the text stream; a2) comparing the scanned portion of the text stream to partition entities in the partition list; a3) substituting a partition tag for portions of the text stream which match a partition entity; a4) generating a text chunk list; a5) scanning the text chunk list to determine a frequency of each text chunk in the text chunk list; and a6) revising the text chunk list to include the respective frequencies of occurrence in association with the text chunks; and b) the selecting step includes selecting the certain chunks as the phrases based only on the frequencies of occurrence of the chunks within the stream of text and on a quantity of words within the chunks. 5. The method of claim 1, wherein the selecting step includes: excluding a chunk from being determined as a phrase if the chunk is a single word beginning with a lower case letter. 6. The method of claim 1, wherein the selecting step includes: determining a chunk as being a phrase if the chunk includes a plurality of words each constituting lower case letters only if the chunk occurs at least twice in the text stream. 7. The method of claim 1, wherein the selecting step includes: determining a chunk as being a proper name if the chunk includes a plurality of words each having at least a first letter which is upper case. 8. The method of claim 1, wherein the selecting step includes: mapping a sub-phrase to a phrase. 9. The method of claim 1, wherein the selecting step includes: mapping single upper case words to their respective proper names. 10. The method of claim 1, wherein the selecting step includes: detecting presence of acronyms; incrementing a count of a proper name corresponding to the respective detected acronyms; and copying the proper name and the acronym to an acronym list. 11. The method of claim 1 , wherein the selecting step includes: combining a phrase list of lower case words with a phrase list of proper names. 12. The method of claim 1 , further comprising: reducing the phrase list by consolidating phrases in the phrase list by using a synonym thesaurus. 13. The method of claim 1, further comprising: adding phrases to the phrase list by combining phrases which are separated in the text stream only by prepositions. 14. The method of claim 1, further comprising: trimming the phrase list by eliminating phrases which occur in fewer than a threshold number of text streams. 15. The method of claim 1 , further comprising: categorizing proper names in the proper name list into groups based on corresponding group lists. 16. An apparatus of processing a stream of text to form a list of phrases which are useful as index terms and search query terms in full text document searching, the apparatus comprising: means for partitioning the text into plural chunks of text, each chunk being separated by at least one partition entity from a partition list; and means for selecting certain chunks as the phrases, based on frequencies of occurrence of the chunks within the stream of text. 17. The apparatus of claim 16, wherein the partitioning means includes: means for scanning a portion of the text stream; means for comparing the scanned portion of the text stream to partition entities in the partition list; means for substituting a partition tag for portions of the text stream which match a partition entity; means for generating a text chunk list; means for scanning the text chunk list to determine a frequency of each text chunk in the text chunk list; and means for revising the text chunk list to include the respective frequencies of occurrence in association with the text chunks. 18. The apparatus of claim 16, wherein the selecting means includes: means for selecting the certain chunks as the phrases based only on the frequencies of occurrence of the chunks within the stream of text and on a quantity of words within the chunks. 19. The apparatus of claim 16, wherein: a) the partitioning means includes: al) means for scanning a portion of the text stream; a2) means for comparing the scanned portion of the text stream to partition entities in the partition list; a3) means for substituting a partition tag for portions of the text stream which match a partition entity; a4) means for generating a text chunk list; a5) means for scanning the text chunk list to determine a frequency of each text chunk in the text chunk list; and a6) means for revising the text chunk list to include the respective frequencies of occurrence in association with the text chunks; and b) the selecting means includes means for selecting the certain chunks as the phrases based only on the frequencies of occurrence of the chunks within the stream of text and on a quantity of words within the chunks. 20. A computer-readable memory which, when used in conjunction with a computer can carry out a phrase recognition method, the computer-readable memory comprising: computer-readable code for partitioning the text into plural chunks of text, each chunk being separated by at least one partition entity from a partition list; and computer-readable code for selecting certain chunks as the phrases based on frequencies of occurrence of the chunks within the stream of text. 21. The computer-readable memory of claim 20, wherein the computer-readable code for partitioning includes: computer-readable code for scanning a portion of the text stream; computer-readable code for comparing the scanned portion of the text stream to partition entities in the partition list; computer-readable code for substituting a partition tag for portions of the text stream which match a partition entity; computer-readable code for generating a text chunk list; computer-readable code for scanning the text chunk list to determine a frequency of each text chunk in the text chunk list; and computer-readable code for revising the text chunk list to include the respective frequencies of occurrence in association with the text chunks. 22. The computer-readable memory of claim 20, wherein the computer- readable code for selecting includes: computer-readable code for selecting the certain chunks as the phrases based only on the frequencies of occurrence of the chunks within the stream of text and on a quantity of words within the chunks. 23. The computer-readable memory of claim 20, wherein: a) the computer-readable code for partitioning includes: al) computer-readable code for scanning a portion of the text stream; a2) computer-readable code for comparing the scanned portion of the text stream to partition entities in the partition list; a3) computer-readable code for substituting a partition tag for portions of the text stream which match a partition entity; a4) computer-readable code for generating a text chunk list; a5) computer-readable code for scanning the text chunk list to determine a frequency of each text chunk in the text chunk list; and a6) computer-readable code for revising the text chunk list to include the respective frequencies of occurrence in association with the text chunks; and b) the computer-readable code for selecting includes computer-readable code for selecting the certain chunks as the phrases based only on the frequencies of occurrence of the chunks within the stream of text and on a quantity of words within the chunks. 24. A computer-implemented method of full-text, on-line searching, the method comprising: a) receiving and executing a search query to display at least one current document; b) receiving a command to search for documents having similar conceptual content to the current document; c) executing a phrase recognition process to extract phrases allowing full text searches for documents having similar conceptual content to the current document, the phrase recognition process including the steps of: cl) partitioning the text into plural chunks of text, each chunk being separated by at least one partition entity from a partition list; and c2) selecting certain chunks as the phrases, based on frequencies of occurrence of the chunks within the stream of text; and d) automatically forming a second search query based at least on phrases determined in the phrase recognition process so as to allow automated searching for documents having similar conceptual content to the current document. 25. The method of claim 24, further comprising: validating phrases recognized by the phrase recognition process against phrases in a phrase dictionary before automatically forming the second search query. 26. The method of claim 24, further comprising: displaying an error message if less than a threshold number of phrases are recognized for the current document. 27. A computer-implemented method of forming a phrase list containing phrases which are indicative of conceptual content of each of a plurality of documents which may be used as index terms or in search queries for documents, the method comprising: a) selecting text from the plurality of documents; b) executing a phrase recognition process including the steps of: bl) partitioning the text into plural chunks of text, each chunk being separated by at least one partition entity from a partition list; and b2) selecting certain chunks as the phrases, based on frequencies of occurrence of the chunks within the stream of text; and c) forming the phrase list, wherein the phrase list includes: 1) phrases extracted by the phrase recognition process; and 2) respective frequencies of occurrence of the extracted phrases. 28. The method of 27, further comprising: forming a modified phrase list having only those phrases whose respective frequencies of occurrence are greater than a threshold number of occurrences. 29. The method of 27, further comprising: forming a phrase dictionary based on the phrase list formed in the forming step. 30. A computer- implemented method of forming phrase lists containing phrases which are indicative of conceptual content of documents, which phrases may be used as index terms or in search queries for documents, the method comprising: a) selecting text from a sampling of documents from among a larger collection of documents; and b) executing a phrase recognition process to extract phrases to form a phrase list for each document processed, the phrase recognition process including: bl) partitioning the text into plural chunks of text, each chunk being separated by at least one partition entity from a partition list; and b2) selecting certain chunks as the phrases based on frequencies of occurrence of the chunks within the stream of text.

Inventors: LU XIN ALLAN, MILLER DAVID JAMES, WASSUM JOHN RICHARD, LU, XIN, ALLAN, MILLER, DAVID, JAMES, WASSUM, JOHN, RICHARD
Applicants: LEXIS NEXIS A DIVISION OF REED, LEXIS-NEXIS, A DIVISION OF REED ELSEVIER INC.
Application year: 1997
Main classification: G06F17
IPC codes: G06F17