User interface and other enhancements for natural language information retrieval system and method6026388Abstract Techniques for generating sophisticated representations of the contents of both queries and documents in a retrieval system by using natural language processing (NLP) techniques to represent, index, and retrieve texts at the multiple levels (e.g., the morphological, lexical, syntactic, semantic, discourse, and pragmatic levels) at which humans construe meaning in writing. The user enters a query and the system processes the query to generate an alternative representation, which includes conceptual-level abstraction and representations based on complex nominals (CNs), proper nouns (PNs), single terms, text structure, and logical make-up of the query, including mandatory terms. After processing the query, the system displays query information to the user, indicating the system's interpretation and representation of the content of the query. The user is then given an opportunity to provide input, in response to which the system modifies the alternative representation of the query. Once the user has provided desired input, the possibly modified representation of the query is matched to the relevant document database, and measures of relevance generated for the documents. A set of documents is presented to the user, who is given an opportunity to select some or all of the documents, typically on the basis of such documents being of particular relevance. The user then initiates the generation of a query representation based on the alternative representations of the selected document(s). Claims What is claimed: Description BACKGROUND OF THE INVENTION
TABLE 1
______________________________________
Proper Noun Categories and Subcategories
Geographic Entity: Human:
City Person
Port Title
Airport Document:
Island Periodicals/Books
County Treaties/Laws/Acts
Province Equipment:
Country Software
Continent Hardware
Region Machines
Water Scientific:
Geographic Miscellaneous
Disease
Affiliation: Drugs
Religion Chemicals
Nationality Organic Matter
Organization: Temporal:
Company Date
Company Type Time
Sports Franchise Holiday
Government Miscellaneous:
U.S. Government Miscellaneous
Education/Arts Services
Political Organization
Religious Organization
______________________________________
Classification occurs in the following sequence: 2.5.1 Proper noun suffixes, prefixes and infixes (e.g., Hospital, Senator, Professor) are examined for possible categorization information. 2.5.2 The proper noun is passed to a database to determine if an alternative, standard form exists (e.g., President Bill Clinton for Bill Clinton). If the proper noun is an alias, the standard form is used for categorization. 2.5.3 The proper noun is next run through context heuristic tests for possible categorization. Text-based clues are used for categorization. For example, if the proper noun is immediately followed by a comma and a state, county, or country name, then the proper noun is identified as a town, city or other geographic entity. Appositional phrases (noun phrases found in close proximity to proper nouns, usually revealing identifying information about the proper named entity) will also be detected and used in the categorization process. Numerous other heuristics are applied until the proper noun has been tested for inclusion in one of several categories. 2.5.4 Proper names are compared to a database of significant personal first names for a possible match (e.g., such as a database collection of names in electronic phone directories, sorted by frequency, or by the proper nouns found in the databases searched). An array of knowledge databases are used. New names and associations are constantly added and updated. 2.5.5 Those proper nouns that remain uncategorized are assigned to the "miscellaneous" category: in tests fewer than 11% of proper nouns are so assigned [Paik93a], [Paik93b]. 2.5.6 Once identified, proper nouns can be expanded to include other synonymous proper nouns. For group proper nouns (Europe, Fortune 500 companies), the group proper noun is expanded to include all member proper nouns (e.g., Germany and France, IBM and General Electric). 2.6 Complex Nominal (CN) Detector 120 Complex nominals (e.g., budget amendment bill, central nervous system) are important information-bearing phrases detected by the DR-LINK system and used in the document-query matching process. CN phrases are recognizable as adjacent noun pairs or sequences of non-predicating and predicating adjective(s) and noun(s). These pairs or sequences can be recognized from the output of the POS-tagged text in conjunction with various unique processing tools developed from corpus analysis. In addition, CN phrases are recombined, or parsed, whereby meaningful complex nominal word combinations are extracted and indexed. For example, the CN "Information Retrieval System" would be recombined to yield "Information Retrieval," "Retrieval System," and "Information System." A synonymous phrase might be "Text Processing Software." Later matching algorithms weight these terms based on the assumption that a whole CN is a better, more specific indicator of the document's contents than the recombined constituent words. 2.7 Single Term Detector 130 The detection of CNs and PNs alone would not account for all of the information-rich content of typical English-language texts. Some nouns, conflated nouns (e.g. inkwell), verbs, adverbs and adjectives also contain important information about the subject-contents of documents, and are detected by the single term detector. Numbers and numerically-related information (e.g., "$" and other currency symbols) are also recognized. 2.8 Text Structurer 140 Text structurer 140 provides valuable information about the sense and meaning of a text [Liddy94c]. The text structurer is based on discourse theory [VanDijk88] which suggests that textual communication within a given community (journalism, law, medicine), or text of a certain genre (recipe, obituary, folk-tale) has a predictable schema. The schema serves as a reliable indication of how and where certain information endemic to a text-type will be displayed. The text structurer module produces an enriched representation of each text by computationally decomposing it into smaller, conceptually labeled components. The delineation of the discourse-level organization of document and query contents facilitates retrieval of those documents that convey the appropriate discourse semantics. For example, a query that displays an interest in evaluative information on a topic will be matched to documents based partly on the prevalence of evaluative comments on that topic within those documents. Discourse theory and text structurer is founded in the observation that writers who repeatedly produce texts of a particular type are influenced by a somewhat rigid schema of the text type. That is, they consider not only the specific content they wish to convey but also various structural requirements (for a discussion of discourse theory and principles behind text structurer, see [Liddy93]). In the current and preferred embodiment of text structurer, a departure from earlier implementations, various structural annotations (tags) are assigned based upon various evidence sources, including the presence and logical arrangement of clauses, phrases and combinations of words and punctuation. These structural tags express important aspects which can contribute to relevancy in a text, including time, opinion, and intention. The text structurer assigns these annotations or tags on the basis of (1) lexical clues or other linguistic evidence learned from a corpus of text, which now comprises a special lexicon, and (2) a regression formula that includes multiple evidence sources at the word, sentence, paragraph and document levels. For example, with newspaper discourse, the text structurer is able to annotate several components of information in a text, including factual information, analysis, and cause-and-effect. In the current instantiation, text structurer treats queries as a unique discourse genre, and processing of queries is different to the processing of documents. In the general case, text structurer can be modified to accommodate many different discourse types, including newspaper texts, patent applications, legal opinions, scientific journal articles, and the like, each of which exhibits internally consistent discourse schemata. Different text processing can be applied to each. A discourse type or genre can be detected according to source information, author information, or other evidence. The text structurer provides (1) temporal information about a text (past, present and future), and (2) information about the meta-contents or intention of the text (whether the text contains analysis, cause/effect information, predictions, quotations, or evaluative comments). Dependencies can exist between the assignment of temporal and intention-based tags. Table 2 below shows the text structure tags used in a preferred implementation of text structurer 140.
TABLE 2
______________________________________
Text Structure Tags
Tag Description Examples of Evidence Phrases
______________________________________
AN Analysis or opinion of a
Advantages; Disadvantages; In
person, action or event.
anticipation of; Pro; Con.
CE Cause and/or Effect Noted.
As a means of, Gives rise to;
Designed to; Affects, Impacts;
Repercussions.
CR Credential. Officer; Chief; Credential; Duties;
Title.
ED Editorial. Editorial.
FA Factual Information.
Number of; How many; The date
of the highest; The least.
FU An Action or Event that
Looking ahead to; Coming months;
takes place in the Future.
Emerging; Expected; Trends.
HL Headline. (From Text Preprocessing)
IN Instructions. Instructions; Directions; Method
for; Ingredients; Steps in
the process.
LP Lead Paragraph. First paragraph of a document.
OB Obituary. Obituary; Death notice; Died
today.
OG An Action or Event is
Over the months; Continuing;
Ongoing in the Present.
Daily; Trends.
PA An Action or Event that took
In the last few years; In the past;
place in the Past (1 yr or
History; Ancient.
more).
PR An Action or Event that took
Past few months; 1st. Quarter;
place in the Recent Past
Prior month; Recently.
(one week to 1 yr. ago).
QU A Direct or Indirect Quote.
Statements by; Announces;
Quoting; Testified.
ST A Reference to Stock, Bond
Dow opened; Nikkei closed; Stock
or other Financial
reports; Dividends, NYSE.
Information.
RV Reviews of a Product,
Standards and specifications;
Service, or other entity.
Evaluate; Review; Test.
______________________________________
This list is not exhaustive and not all tags are necessary. The table also shows various sample evidence phrases used to help identify possible tag positions and assignments. For example, the "AN" "analysis or opinion tag uses evidence phrases such as "advantage," "disadvantage," and "in anticipation of," along with other lexical and grammatical clues. 2.8.1 Assigning Tags. In the general case, documents are tagged at the sentence level, with indexed annotations indicating the paragraph, position in paragraph, length of sentence, and number of paragraphs associated with the target text and the sentence concerned. A given sentence can have multiple tags. Terms in a given sentence are tagged according to all tags for that sentence, as described below in the text structurer module description. In the preferred implementation, tags are assigned to a sentence as follows, using a two-step process: 2.8.1.1 Document Aspects Vocabulary (DAV) database. The first step in assigning sentence-level tags to a document is to look up various identified evidence phrases (words, phrases, clauses, or collections of words and punctuation) in a Document Aspects Vocabulary (DAV) database. The DAV database contains a collection of evidence phrases (which can be phrases, clauses, sequences of words and punctuation, or a single word) that, taken alone or in a logically arranged sequence, suggest various intentions or temporal information in text. 2.8.1.2 Aspects Probability Matrix (APM) database. In the second stage, tag scores are assigned to various evidence phrases according to probability scores assigned to a matrix of all identified evidence phrases. Based on an extensive corpus analysis of documents typical of a given discourse type, evidence phrases are assigned probability scores for any and all text structurer tags, based on the probability of that evidence phrase being included within a given text structurer. Table 3 shows an example of the database structure for the APM database.
TABLE 3
______________________________________
Structure for Aspects Probability Matrix (APM) database
Evidence Phrase
AN Tag EV Tag CE Tag
FA Tag
______________________________________
Phrase #1 0.811 0.100 0.000 0.005
Phrase #2 0.100 0.144 0.337 0.107
Phrase #3 0.000 0.000 0.567 0.122
______________________________________
The table shows the matrix of evidence phrases and text structurer tags, with each cell in the matrix containing the given probability value. A probability value is calculated based on the number of occurrences of that evidence phrase within a given text structure component, as a fraction of all occurrences of that evidence phrase in the test corpus. The probability values are normalized to account for the different distributions of the various text structure tags in the training data. In addition to text structurer tags assigned using DAV database evidence, the following method is used to assign text structurer tags at the sentence or clause level using the APM database and other evidence. This method is as follows: 2.8.1.3 All evidence phrases in a sentence are analyzed using the APM database for all text structurer tags. A summed score for all tags is produced using a Dempster-Schaffer formula, or similar formula. This score is used as an independent variable in a logistic regression equation described below. (a) The same score as above is generated, except the summation does not use a Dempster-Schaffer formula. (b) The following evidence sources are calculated: number of words in the sentence under consideration; the number of paragraphs in the document under consideration; the number of sentences in the paragraph under consideration; the relative position of the sentence with reference to the paragraph under consideration; and the relative position of the sentence in regard to the document under consideration. (c) The evidence sources in the first three paragraphs above are used in a logistic regression equation, least squares fit, separately for each of the tag assignments. Coefficients for each of the 7 terms in the regression formula are computed using training data for specific discourse types or genres. The output at this stage of processing is a score, normalized between 0 and 1, for each of the text structurer tags. The score represents the likelihood that a given text structurer tag should be assigned to a given sentence in a document. (d) For each text structurer tag, a minimum threshold value is assigned for the logistic regression, such that a tag is only assigned to a sentence (or clause) if the regression value exceeds this pre-determined threshold value. The threshold value for each tag is calculated based on extensive corpus analysis using training data. 2.8.2 Generating Tags In the preferred embodiment two methods are used to generate evidence phrases in texts (queries and documents). In the first method, the natural language processing abilities of the DR-LINK system are exploited to automatically detect information-bearing words, phrases or clauses. For example, POS tagger 90, PNC 110, and related processing elements of the DR-LINK system are automatically able to detect appositional phrases related to proper nouns, and these are used as evidence phrases. In the second method, all single words, adjacent words pairs, words triples, etc. are extracted in overlapping sequence from sentences and used as the units of analysis for constructing evidence phrases. 2.8.3 Indexing Text Structure The text structure tags are automatically incorporated into the index representation of terms in a document. Table 4 shows a specific implementation of the index term format.
TABLE 4
______________________________________
Term Record for Index
1. Index Term
2. 3. 4. 5. 6. 7.
______________________________________
Document retrieval
25 3425 2 FA/QU 1/9 525
Information retrieval
19 3425 1 FA 1 131
______________________________________
As can be seen in the table, there are 7 fields in each term record, consisting of an index term 1, the number of documents in the database which have the index term 2, the document identification in which the index term occurs 3, number of occurrences of the index term in the document 4, text structurer tags which are assigned to the sentences in which the index term occur 5, logical paragraph identification in which the index term occur 6, and total number of indexed terms in the document 7. The text structurer is used as a partial requirement for relevancy in the matching process. Stated briefly, in the query to document matching process, each query term is searched against document index terms. One of the metrics used for assigning relevance scores, called positive text structurer (PTS), requires that a match be based on the presence of query terms found within the correct text structurer component. More details on PTS-based matching is given in the later description of the matcher. 2.9 Term Indexer 150 Term indexer 150 indexes terms and SFC 100 indexes SFC vector data in related files, shown collectively as index file 75. Other document-based indexing is possible. The term index is a two-tier inverted file. The first level of the file contains terms, where a term can be a word (single term), a complex nominal, or a proper noun. The second level of the file contains postings (document references) with associated scores. The scores are an indication of the strength of the association between the term and the document. A single term will usually map to numerous postings, each with a score, as shown in FIG. 4. Terms are also indexed with reference to their location within the text (both as logical paragraphs and regarding text structure). Indexing involves extracting terms from the text, checking for stop words, processing hyphenated words, then stemming all inflected terms to a standard form. Finally, for each document the within document Term Frequency (TF) is calculated; the product of TF and the Inverse Document Frequency (IDF) is used as the basis for the postings score--a measure of the relative prominence of a term compared to its occurrence throughout the corpora. TF.IDF scores are also cataloged for a varying number of logical paragraphs in a given document. A logical paragraph is a subsection of a complete document, which may contain one or several text paragraphs, depending on the length of the overall document. Documents are divided into logical paragraphs based on size and natural transitions in a text, such as paragraph boundaries or subhead boundaries. Later matching can occur within a logical paragraph, so as to highlight the most relevant logical paragraph or the portion of a long document deemed most relevant to a query. While the preferred implementation uses the 16-unit logical paragraph arrangement described above, alternative implementations are possible. One such implementation is to divide the document into an unrestricted number of subsections that correspond to each and all of the natural paragraph boundaries in a text. 3.0 Query Processing 3.1 Query Processing Overview FIG. 5 is a block diagram showing the query processing modules within query processor (QP) 50Q. Queries are processed in a different manner to documents, although the evidence extracted from query text is very similar to the evidence extracted from document texts, and therefore some of the modules perform the same type of processing. The set of modules that perform the processing to generate the conceptual representation and the term-based representation of each query includes: a preprocessor 160; a meta-phrase identifier 165, with its associated meta-phrase evidence database used to identify meta-phrases in the query; a proper noun (PN) categorizer (PNC) 170; a text structure requirement identifier 180, with its associated text structure requirement database (similar to the text structure evidence phrase database, but for queries); a complex nominal (CN) detector 190, a PN expander 200, with its associated PN expansion database used to find synonymous expansions for stated PNs; a PN clarifier 210, with its associated PN clarification database; a CN expander 220, with its associated CN expansion database used to find synonymous expansions for stated CNs; a sublanguage processor 230, with its associated sublanguage processing database used to identify the logical form of the query; a negation identifier 232, with its associated negation database used to identify negative portions in the query; a mandatory term identifier 235, with its associated mandatory term database used to identify mandatory requirements stated in the query; a weighted Boolean processor 240; and a subject field coder (SFC) 250. 3.2 Query Preprocessor 160 Query preprocessor 160 performs the same tasks for queries as preprocessor 80 performs for documents. 3.3 Meta-Phrase Identifier 165 Meta-phrase identifier 165 performs the task of detecting words or phrases in a query that are used to state (or expand upon) the query. For example, if a user asked: "I would like information about space ships, or any materials on lunar shuttles," using the meta lexicon, the phrases "I would like information about" and "any materials on" would be tagged as meta phrasing using an SGML marker. These words and phrases are then removed from the query processing stream, and are not used as search terms. 3.4 Proper Noun Categorizer (PNC) 170 PNC 170 performs the same task for queries as PNC 110 does for documents. 3.5 Text-Structure Requirement Identifier 180 Text-structure requirement identifier 180 performs a similar analysis of queries as text structurer 140 performs of documents. However, while the text structurer operates at the sentence level or on clause level, in the preferred embodiment, the text-structure requirement identifier operates upon the whole query. That is, the whole query is categorized by tense requirement (past, present future), and by intention requirement (prediction, analysis, facts, etc.). Thus an understanding is gained of the overall temporal and discourse aspect requirements of the query. An alternative implementation would assign tags at the individual sentence or clause level. Text-structure requirement identifier codes are identical to the codes used in the text structurer. Similar heuristics are used to place text-structure requirement identifier codes, although variant lexical and discourse-level clues are employed in keeping with the variant structure of query statements. Codes are not mutually exclusive--any combination of requirements can be assigned to the same query. For queries, the assignment of the text structurer tags is made using an extensive Question Aspect Vocabulary (QAB) database. The QAB database contains a collection of evidence phrases (which can be phrases, clauses, sequences of words and punctuation, or a single word) that, taken alone or in a logically arranged sequence, suggest various intentions or temporal information in text. A complex of clues are used to establish tag assignments. The assignment of a tag may be based on the presence of a single evidence clue (single words, phrases, clauses, or sequences of words and punctuation) in a query, or upon a collection of such clues in a query. Alternatively, tag assignment may be based on the logical arrangement of evidence clues found in the QAB database, whereby evidence clues must appear (1) in a specified sequence, (2) connected logically, using operators such as AND, OR or NOT, or a combination of (1) and (2). In the preferred implementation, if no text structurer tag can be assigned using the QAB database evidence clues, then the default tag is Lead Paragraph (LP). 3.6 Complex Nominal (CN) Detector 190 The CN detection techniques for queries are the same as those used by CN detector 120 for documents. 3.7 Proper Noun (PN) Expander 200 PN expander 200 automatically provides the system user with synonyms, hyponyms, or member meronyms for proper nouns contained in the query. For example, if the user has asked for information about "Far East countries," the proper noun expander offers the user the following member meronyms for "Far East": Japan, South Korea, North Korea, Taiwan, and China. The user can decide whether or not to use these expanded terms in the query. These expansion terms are entered into the proper noun expansion database by analyzing the corpus to find proper nouns which are related by the above exemplified semantic relations. In addition, proper noun expansion database entries can be entered manually using existing reference sources. 3.8 Proper Noun (PN) Clarifier 210 PN clarifier 210 automatically provides the system user with ambiguous interpretations for proper nouns contained in the query. For example, if the user has asked for information about "Clinton," the proper name clarifier offers the user the following possible interpretations for "Clinton": William Clinton, Hillary Clinton, David Clinton, and Robert Clinton. The user can decide or clarify whether or not to use certain interpretations of the proper nouns in the query. These clarifiable terms are entered into the proper noun clarification database by automatically or manually creating possible variants of the proper nouns in the corpus and then creating a mapping table which consists of pairs of variants and the proper noun. Thus the above example shows the names of the people who all share the same last name. Thus, the term, "Clinton" needs to be clarified. 3.9 Complex Nominal (CN) Expander 220 CN expander 220 provides the system user with synonyms for phrases contained in their query. If the user has asked for information about "wealthy individuals emigrating from England," the complex nominal expander offers the user the following synonyms for "wealthy individual": rich person, wealthy person, rich individual, affluent individual, and affluent person. The user can decided whether or not to use these synonyms in the query. To generate these synonyms, two methods are used. First, a CN database having a list of CN synonyms, based on corpus frequency of particular complex nominals, is consulted. If there is a match here, the synonyms from this CN database are used. If there is no match in the database, then automatic word substitution for each word in the CN is performed using an online single term CN database. Possible synonymous phrasings generated by this method are checked against corpora indices to confirm that the new construction does occur in some index. If the phrase does not occur in any index, it will be removed from the list of synonyms to be presented to the user. 3.10 Sublanguage Processor 230 Sublanguage processing is the beginning of a transition from a natural language query representation to a pseudo-logical representation of the query contents. In the preferred embodiment this is another heuristic system, but other approaches may be taken. The initial sublanguage processing of the query involves tokenization, standardization and the resolution of anaphoric references. Part of this sublanguage is a limited anaphor resolution (that is, the recognition of a grammatical substitute, such as a pronoun or proverb, that refers back to a preceding word or group of words). An example of a simple anaphoric reference is shown below: "I am interested in the stock market performance of IBM. I am also interested in the company's largest foreign shareholders." In this example, the phrase "the company's" is an anaphoric reference back to "IBM." The QP module substitutes the referent (IBM) in anaphors before creating the logical representation. After this initial processing, the natural language query is decomposed to an ensemble of logical or pseudo-logical assertions linking portions of the query, or various terms (or groups of terms). A series of operators are used to make these logical and pseudo-logical assertions. These operators relate terms and parts of the query text together, and also assign scores according to the formulas in Table 5 and as described below. Different operators assign different scores.
TABLE 5
______________________________________
Operators Used for Boolean Representation
Operator
Operation Fuzzy Weight/Score
______________________________________
AND Boolean AND Addition of scores from ANDed terms
OR Boolean OR Maximum score from all ORed terms
!NOT Negation --
#AND Conditional AND
head term #AND tail term. If head term
present, revert to AND, else 0
*AND Mandatory marker
query *AND mandatory. Used to
separate mandatory elements for
later foldering. Scores as AND.
=AND Proximity AND
______________________________________
First, the Query Processor (QP) automatically constructs a logical representation of the natural language query. The user is not required to annotate the query in any way. A tree structure with terms connected by logical operators is constructed. Consider the example query below: "I am interested in any information concerning A and B and C, D or E and F. " The tree representation of this query is shown in FIG. 6. Various linguistic clues such as lexical clues and punctuation are used to determine the logical form of the query: The basis of this system is a sublanguage grammar which is rooted in generalizations regarding the regularities exhibited in a large corpus of query statements. The sublanguage relies on items such as function words (articles, auxiliaries, and prepositions), meta-text phrases, and punctuation (or the combination of these elements) to recognize and extract the formal logical combination of relevancy requirements from the query. In the very simple query stated above, the positions and relations of the preposition "concerning", the conjunctions "and" and "or", and the comma and period are used together to produce the appropriate logical relationship between the various items A through F. The sublanguage interprets the query into pattern-action rules which reveal the combination of relations that organize queries, and which allow the creation from each sentence of a first-order logic assertion, reflecting the Boolean and other logical assertions or relations in the text. The sublanguage processor uses the principles of text structure analysis and models of discourse to automatically identify conjunction, disjunction, mandatory, positive, and negative portions of a query. The principles employed are based on the general observation among discourse linguists that writers are influenced by the established schema of the text-type they produce, and not just on the specific content they wish to convey. This established schema can be delineated and used to computationally instantiate discourse-level structures. In the case of the discourse genre of queries written for online retrieval systems, empirical evidence has established several techniques for locating the positive, negative, disjunction, conjunction, and mandatory aspects: 3.10.1 Lexical Clues. There exists a class of frequently used words or phrases that, when used in a logical sequence, establish the transition from the positive to the negative portion of the query (or the reverse). Such a sequence might be as simple as "I am interested in" followed by ", but not". [Clue words or phrases must have a high probability within the confines of a particular context.] 3.10.2 Component Ordering. Components in a query tend to occur in a certain predictable sequence, and this sequence can be used as a clue to establish negation. 3.10.3 Continuation Clues. Especially in relatively long queries a useful clue for the user's conjunction or disjunction requirements across sentence boundaries is relations which occur near the beginning of a sentence and which have been observed in tests to predictably indicate the nature of the logical transitions from sentence to sentence. 3.11 Negation Identifier 232 Negation detection is unique to queries. It is common for queries to simultaneously express both items of interest and those items that are not of interest. For example, a query might be phrased "I am interested in A and B, but not in C." In this instance, A and B are required (they are in the "positive" portion of the query) and C is negated and not required (it is in the negative portion of the query). Terms in the positive and negative portions of the query are considered for document matching. Terms in both portions of the query are used for foldering assignments, while terms in the positive portion of the query are used in calculating logistic regression matching scores (see later discussions on matching). 3.12 Mandatory Term Identifier 235 In addition to the logical assertion described above the query is also divided into mandatory and non-mandatory portions by sublanguage and processor 230. It is common practice for a query to be stated such that one or more terms in the query are essential for relevance. For example, a query might be stated as follows: "I am only interested in documents that discuss A and B." Using various linguistic clues the system recognizes these mandated requirements, and divides the query into two portions using the *AND operator. In an earlier implementation, the *AND operator assigned no weighted score to terms in the mandatory or non-mandatory portion of the query representation, but the matching of mandatory terms with a document was used for later segregation (e.g., foldering) of relevant documents. In a current implementation, the mandatory portion of the query is incorporated into the logical tree structure of the query through the *AND operator at the top level. Therefore, the tree structure of the query is <query> *AND <mandatory.sub.-- portion>. 3.13 Weighted Boolean Processor 240 As noted above, FIG. 6 shows a tree structure of the query, and the manner in which a weighted Boolean score (sometimes referred to as the fuzzy Boolean score) is assigned for each term (PN, CN, or single term) in the logical query representation. The logical representation of the requirements of the query consist of a head operator 255, which can be any operator, which links in a tree structure through nodes 257 and Boolean operators to various extracted query terms 260 at terminal nodes. Each term is assigned a possible term weight score 262. Scores are normalized such that the highest attainable score during matching (if all terms are successfully matched with a document) is 1.0. During matching the fuzzy logical AND operator performs an addition with all matched ANDed term scores. The fuzzy OR operator selects the highest weighted score from all the matched ORed terms. For example, in the query representation of FIG. 6, if terms A, C and F are matched, then the score assigned the match would be 0.66 (that is, 0.33 from the match with query term A, and 0.33 from the match with C, which is the higher of the ORed C and F weighted scores). Recombinations and expansions of PNs and CNs are assumed to be less precise representations of the specific query requirements: Their score assignments reflect this and are calculated to be less than that of the specified CN or PN. Note that the mandatory portion of the query is automatically assigned a maximum possible weight of 0.5 with the entire query also being assigned a maximum possible weight of 0.5. This means that terms in the mandatory portion of the query, if matched in the document, contribute twice to the overall score. 3.14 Subject Field Codes (SFC) Module 250 Subject field codes are assigned to each substantive word in the positive portion of the query. The method of assignment and the arrangement of codes is similar to that used by SFC 100 for document vector generation as described above. 4.0 Document Matching and Presentation to User 4.1 Matching Overview Matcher 55 matches documents by comparing the documents with the query and assigning each document a similarity score for the particular query. Documents with sufficiently high scores are arranged in ranked order in three folders, according to their relative relevance to the substance of a query. There are a number of evidence sources used for determining the similarity of documents to a query request, including: Complex Nominals (CNs)* Proper Nouns (PNs)* Subject Field Codes (SFCs) Single Terms* Text Structure Presence of Negation Mandatory requirements * CNs, PNs, and Single Terms are collectively called "terms." Documents are arranged for the user based on a two-tier ranking system. The highest-level ranking mechanism is a system of folders. Documents are placed within folders based on various criteria, such as the presence or absence of mandatory terms. The lower-level ranking mechanism sorts documents within each folder based on criteria such as similarity score, document date assignment, etc. The operation and function of the matcher is not dependent on the number or specific interrelationship of the folders, or on the within-folder mechanisms used to rank and display documents, or on the number of evidence sources used to compute document relevance scores as described below. Using the evidence sources mentioned above, the matcher determines the similarity or suitable association between query and documents. Foldering is based on the presence or absence and logical relationship in a document of query terms, negation and mandated terms. Within folders, document rank position is computed using match scores for the whole document and for up to 8 segments, or logical paragraphs, that make up the document (see earlier discussions for an explanation of logical paragraphs). 4.2 Scoring Five sources of evidence are used to compute five individual measures of similarity (scores) between the query and a given document, and the five individual scores are combined to form a single relevance score. The five sources of evidence, normalized (where appropriate) for document length, are: 4.2.1 Positive Quorum (PQ) The PQ is the fuzzy Boolean score for all terms in the positive portion of the query, computed as discussed above in connection with weighted Boolean processor 240. 4.2.2 Positive Term (PT) The PT is a combination of the TF.IDF scores for the terms in the positive portion of the query. The product of TF.IDF for a given term in a document provides a quantitative indication of a term's relative uniqueness and importance for matching purposes. A natural-log form of the equation for TF.IDF, where TF is the number of occurrences of a term within a given document, and IDF is the inverse of the number of documents in which the term occurs, compared to the whole corpus, as shown below: TF.IDF=(1n(TF)+1).1n(N+1/n) where N is the total number of documents in the corpus, and n is the number of documents in which the term occurs. These TF.IDF scores are calculated for the documents. The way that the TF.IDF scores are combined for the PT is in accordance with the combination of scores discussed above in connection with weighted Boolean processor 240 (i.e., based on the structured logical representation of the query described earlier). However, the scores for the nodes are equal to the TF.IDF scores for the terms rather than the normalized scores described above (maximum scores of 0.33, 0.33, 0.33, 0.17, and 0.17 for the example in FIG. 6). 4.2.3 Positive Text Structure (PTS) The PTS is the fuzzy Boolean score for all query terms in the positive portion of the query matched within the correct text structure component/s. For positive text structurer, each query term is assigned with a weight which is based on how the query terms are organized as a logical requirement and on the text structurer requirements extracted from the query statement. The assignment of PTS scores is as follows: 1. IF a query term does not match with any one of the index terms for a document, THEN no PTS score is generated based on the query term. 2. ELSE, IF a query term matches with one of the index terms for a document AND IF the text structurer requirements which are assigned to the query term do not have any common text structurer tags assigned to the index terms, THEN no PTS score is generated based on the query term. 3. ELSE, IF there is at least one term in common between the query and a document and that term also has the common text structurer tag, THEN a PTS score is generated. The score is the product of the query term weight and the number of matching text structurer tags, divided by the total number of text structurer tags which are assigned to the query term. Consider the following example:
______________________________________
<POSITIVE>
document.sub.-- retrieval .vertline.AN, FU.vertline. 0.5
&AND
information.sub.-- extraction .vertline.AN, FU.vertline. 0.5
}
</POSITIVE>
______________________________________
where a query consists of two terms ("information retrieval" and "information extraction"), with the query text structurer assignments being Analytic (AN) and future (FU). The score assignment based on PTS for the presence of each term in a document within the correct text structurer is 0.5, respectively. If there are three documents with the following index terms (for a description of this representation of terms, see section on text structurer):
______________________________________
document.sub.-- retrieval
25 3425 1 AN 9 600
information.sub.-- extraction
19 3425 1 CE 4 600
______________________________________
then the PTS score for document 3425 will be: PTS score based on document.sub.-- retrieval: 0.5*1/2=0.25 PTS score based on information.sub.-- extraction: 0.5*0/2=0 PTS score for 3425=0.25+0=0.25 4.2.4 Positive Paraaraph Matching (PPM) The fuzzy Boolean score for query terms in the positive portion of the query is computed for each logical paragraph in the document. The PPM is the largest of these scores for that document. 4.2.5 Subject Field Code (SFC) Vector Match For the SFC match score, first the subject vector for each text (document or query) is normalized using a term weighting formula in order to control for the effect of document length. The matching score between the query and document is determined by the correlation or association between them, which is computed by a similarity measure that treats the query and document vectors as two data points in the multi-dimensional space and then computes the distance between these two data points. 4.2.6 Combining Individual Scores In the preferred implementation, a logistic regression analysis using a Goodness of Fit model is applied to combine individual scores which are described in sections 4.2.1 to 4.2.5. Thus, the individual scores act as independent variables in the logistic regression formula. The combined score is also referred to as the relevance score. Other formulas can be used to combine individual scores to generate relevance scores. Relevance scores can be calculated using different methods using the same or similar evidence sources. For example, it is possible to use a Nearest Neighborhood approach [Hanson90] to ascertain which documents match with a given query. Five independent variables are used (the implementation of the matcher is not dependent on the number of evidence sources used). Regression coefficients for each variable are calculated using an extensive, representative test corpus of documents for which relevance assignments to a range of queries have been established by human judges. Using the evidence sources listed above, the logistic probability (logprob) of a given event is calculated as follows: logprob (event)=1/(1+e.sup.-Z) where Z is the linear combination: Z=B.sub.o +B.sub.1 X.sub.1 +B.sub.2 X.sub.2 +. . . B.sub.5 X.sub.5 and B.sub.1-5 are the regression coefficients for the independent variables X.sub.1-5. Documents are ranked by their logistic probability values, and output with their scores. One or more but not all independent variables can be removed from the formula to generate relevance scores. Furthermore, additional of independent variables beyond those described in sections 4.2.1 to 4.2.5 can be included. For example, in the preferred implementation, an extra independent variable, which represents the length of each document in the database, is used. This independent variable is a linearly transformed value which is based on the number of words in the document in consideration. In addition, one or more individual variables can be transformed and normalized before the values are used in the regression formula or any other formula which are used to generate relevance scores. For example, it is possible to transform every individual variable to account for the length of the document in consideration instead of using an extra independent variable. 4.3 Foldering Documents are ordered within folders by their logistic probability values, SFC values, date, or other specified criterion. The main foldering scheme is based on various match criteria and/or match scores. Other foldering schemes, such as view-by-subject, will be described in a later section. The total number of documents in all folders can be selected by the user (see later discussion). In this preferred embodiment, three folders are used. The assignment of documents to folders is determined as follows: 4.3.1 Folder One. All Unique single terms appear in a single logical paragraph of the document; the negative logical requirement is not satisfied. OR All query terms that satisfy the logical truth of the query (complex nominals, proper nouns, single terms, or suitable expansions) match; the negative logical requirement is not satisfied. OR All query terms (or appropriate expansions) in the mandatory portion of the logical representation of the query match; the negative logical requirement is not satisfied. 4.3.2 Folder Two. Documents that have scores sufficient to pass either the user-selected cut-off for the number of documents displayed or the system determined cut-off for relevance, but the documents do not qualify for Folders One or Three. 4.3.3 Folder Three. All Unique single terms appear in a single logical paragraph of the document; the negative logical requirement is satisfied. OR All query terms that satisfy the logical truth of the query (complex nominals, proper nouns, single terms, or suitable expansions) match; the negative logical requirement is satisfied. OR All query terms (or appropriate expansions) in the mandatory portion of the logical representation of the query match; the negative logical requirement is satisfied. 4.4 Retrieval Criteria and Recall Predictor The matching of documents to a query organizes documents by matching scores in a ranked list. The total number of presented documents can be selected by the user, the system can determine a number using the Recall Predictor (RP) function, or, in the absence of user input, the system will retrieve all documents with a non-zero score. Note that documents from different sources are interfiled and ranked in a single list. The RP filtering function is accomplished by means of a multiple regression formula that successfully predicts cut-off criteria on a ranked list of relevant documents for individual queries based on the similarity of documents to queries as indicated by the vector matching (and optionally the proper noun matching) scores. The RP is sensitive to the varied distributions of similarity scores (or match scores) for different queries, and is able to present to the user a certain limited percentage of the upper range of scored documents with a high probability that close to 100% recall will be achieved. The user is asked for the desired level of recall (up to 100%), and a confidence interval on the retrieval. While in some cases a relatively large portion of the retrieved documents would have to be displayed, in most cases for 100% recall with a 95% confidence interval less than 20% of the retrieved document collection need be displayed. In trials of the DR-LINK system (level of recall 100%, confidence level 95%), the system has collected an average of 97% of all documents judged relevant for a given query [Liddy94b]. 4.5 Clustering Documents can be clustered using an agglomerative (hierarchical) algorithm that compares all document vectors and creates clusters of documents with similarly weighted vectors. The nearest neighbor/ward's approach is used to determine clusters, thus not forcing uniform sized clusters, and allowing new clusters to emerge when documents reflecting new subject areas are added. These agglomerative techniques, or divisive techniques, are appropriate because they do not require the imposition of a fixed number of clusters. Using the clustering algorithm described above, or other algorithms such as single link or nearest neighbor, DR-LINK is capable of mining large data sets and extracting highly relevant documents arranged as conceptually-related clusters in which documents (possibly from several languages) co-occur. Headlines from newspaper articles or titles from documents in the cluster are used to form labels for clusters. Headlines or titles are selected from documents that are near the centroid of a particular cluster, and are therefore highly representative of the cluster's document contents. An alternative labeling scheme, selectable by the user, is the use of the labeled subject codes which make up either the centroid document's vector or the cluster vector. The user is able to browse the documents, freely moving from cluster to cluster with the ability to view the full documents in addition to their summary representation. The user is able to indicate those documents deemed most relevant by highlighting document titles or summaries. If the user so decides, the relevance feedback steps can be implemented and an "informed" query can be produced, as discussed below. The DR-LINK system is thus able to display a series of conceptually-related clusters in response to a browsing query. Each cluster, or a series of clusters, could be used as a point of departure for further browsing. Documents indicative of a cluster's thematic and conceptual content would be used to generate future queries, thereby incorporating relevance feedback into the browsing process. FIG. 7 shows a sample result of agglomerative algorithm based document clustering. Each document is represented as the headline of the document in the far right column. The numbers which are placed before the headlines show the document clustering steps. The first and the second documents in the far right column are identified as the members of the first cluster (i.e., cluster A). The third and fourth documents become the second cluster (i.e., cluster B). Then the first and the second cluster form the third cluster (i.e., cluster C). In the final step, the cluster which contains 8 documents from the top (i.e., cluster G) is combined with another cluster which contains three documents from the bottom (i.e., cluster H) to form one final cluster (i.e., cluster I). It is convenient to consider the representation of the cluster as a tree. 4.6 Developing "Informed" Queries for Relevance Feedback Relevance feedback is accomplished by combining the vectors of user-selected documents or document clusters with the original query vector to produce a new, "informed" query vector. The "informed" query vector will be matched against all document vectors in the corpus or those that have already passed the cut-off filter. Relevant documents will be re-ranked and re-clustered. 4.6.1 Combining of Vectors. The vector for the original query and all user-selected documents are weighted and combined to form a new, single vector for re-ranking and re-Clustering. 4.6.2 Re-Matching and Ranking of Corpus Documents with New, "Informed" Query Vector. Using the same similarity measures described above for matcher 55, the "informed" query vector is compared to the set of vectors of all documents above the cut-off criterion produced by the initial query (or for the whole corpus, as desired), then a revised query-to-document concept similarity score is produced for each document. These similarity scores are the system's revised estimation of a document's predicted relevance. The set of documents are thus re-ranked in order of decreasing similarity of each document's revised predicted relevance to the "informed" query on the basis of revised similarity value. 4.6.3 Cut-Off and Clustering after Relevance Feedback. Using the same regression formula described above in connection with the recall predictor, a revised similarity score cut-off criterion is determined by the system on the basis of the "informed" query. The regression criteria are the same as for the original query, except that only the vector similarity score is considered. The agglomerative (hierarchical) clustering algorithm is applied to the vectors of the documents above the revised cut-off criterion and a re-clustering of the documents will be performed. Given the re-application of the cut-off criterion, the number of document vectors being clustered will be reduced, and improved clustering is achieved. 4.7 Variations on MLM There are a number of different ways to implement the MLM functionality. First, while the current implementation combines the selected (or marked) document representations with the initial query representation to generate a revised query representation, it is also possible to base the query entirely on the document representations, and ignore the initial query representation. Additionally, while it is possible to rely on the stored document representations, it may be more efficient, especially if the user selects only portions of a document, to reprocess the selected documents to generate the revised query. In a current implementation, the latter is done. The MLM functionality gives rise to an additional way to use the DR-LINK processing capabilities. A set of documents need not arise from running a query using the DR-LINK system. Any collection of relevant documents, including a single document, could be used to formulate a query to find additional documents like the collection. These documents need only be identified to the DR-LINK system and processed as if they were MLM documents arising from a query. If the documents were not in the database, their representations would have to be generated and combined. Prior art searching is an example of an application where such a "queryless search" capability could be particularly useful. The user could be aware of a set of documents, which had they been published earlier, would be highly relevant prior art. By identifying such documents, the user could run a query whose representation was based on these documents. By limiting the search to an early enough date range, the retrieved documents would be highly likely to represent highly relevant prior art. 5.0 Graphic User Interface Overview System In general, the graphic user interface (GUI) for the DR-LINK information retrieval system is a sequence of related screens, windows and associated graphical environments that facilitate interactions with users. Specifically, the GUI allows users to: interact with the system to select data resources; to create a natural language query; to alter, expand or otherwise interact with the computer-generated query representation; to select criteria for retrieving, ranking and displaying documents; and to re-submit a query based on the contents of documents considered highly relevant. The GUI allows the user to interact and influence the various processing elements of the DR-LINK system described earlier in this application. Like the DR-LINK system, the GUI can exist is a variety of computing environments using a variety of software, hardware and operating systems. The specific instantiation discussed in this application is for the Microsoft Windows operating environment, from the Microsoft Corporation, Redmond, Seattle, Wash. Other instantiations for the GUI include an online, world-wide web-based system using the Netscape browsing tool, available from Netscape Corporation, Mountain View, Calif. Other versions of the GUI client system are possible for other computing environments. The general features and methods used with the GUI and discussed in this application are independent of the computing environment. 5.1 Typical Screen FIG. 8 shows a typical GUI screen 280. All GUI screens share common features and elements, arranged in a consistent manner for easy navigation. Processing is activated by positioning an on-screen cursor using a pointing device, and using associated buttons to select items, pull-down menus, or position a text cursor for inputting characters. These common on-screen elements include: A menu bar 280a; a navigational toolbar 280b, consisting of a series of buttons which each initiate various DR-LINK features, subroutines or actions; an options toolbar 280c, allowing the user to specify processing attributes; various on-screen windows 280d, in which users can type free-form text and interact with the computer system; and various pop-up dialog boxes 280e, which include instructions for typing text in boxes 280f, with related pop-up window buttons 280g. At the bottom of the screen is a status bar 280h. In addition, users are able to select one or several items by clicking on selection boxes (e.g., see FIG. 12), or by selecting a check button (e.g., FIG. 12). Together, these items allow users to interact with and navigate through the information retrieval system. 5.2 Sequence Overview FIGS. 9A and 9B, taken together, provide a flowchart showing a preferred sequence 300 of GUI-based interactions between the DR-LINK system and the user. A total of 22 specific interactions are shown and many will be described with reference to particular display screens. A number of the interactions occur before the query is processed (including login, data selection, and query construction), a number occur after initial query processing but before query execution (query review and feedback), and a number occur after the documents are retrieved (including retrieval and display criteria selection, the display of relevant documents in various formats, the marking of relevant documents, the construction of new, informed queries based on the contents of documents deemed highly relevant, and printing or storing marked documents). The actual process of text retrieval is fully interactive and recursive: Users are able to navigate through the system at will using any combination of the steps outlined below. Not all steps are required, nor is the specific sequence of steps required. Prior to initiating query processing, the user selects databases (300a--see FIG. 12), selects a date range (300b--see FIG. 13), selects a number of documents to retrieve (300c), composes a natural language query (300d), invokes spelling and grammar checking (300e), and initiates query processing (300f). As described in detail above, the query processor generates a number of representations of the query. As will be described below, manifestations of these representations are displayed (see FIGS. 14A and 14B), and the user is given the opportunity to determine whether the system's analysis of the query is satisfactory or needs modification. These representations include proper noun (300g), complex nominal (300h), SFC (300i), meta-phrase (300j), time frame (300k), single term (300l). The system also provides the system's interpretation of which terms in the query are deemed to be mandatory (300m), and solicits user input. Once the user has modified the system's interpretation of the query, the user invokes the matcher (300n) which executes the query against the database. Once the documents have been retrieved and placed in folders, the user is given an opportunity to modify the retrieval/foldering criteria (300o) and document display criteria (300p). The user may then select documents (300q) for printing or downloading (300r), or for the purpose of refining the query (300s--see FIG. 19). If the user has marked documents deemed by the user to be particularly relevant, the user can invoke the more-like-marked feature (300t), which causes the query representation to be modified in view of the documents and the refined query to be rerun. The user is, at any time, free to initiate a new search request (300u), or exit the system (300v). 6.0 User Interaction With the System Before Query is Processed 6.1 Sign On FIG. 10 shows the initial screen 330 that appears when a user selects the DR-LINK software program for operation. The initial screen prompts the user to sign-on using a pop-up dialog box 330a. The user is requested to provide a registered username in a field 330b and unique password code in a field 330c. Only users with registered usernames and valid passwords are allowed to proceed. Once a valid and correct username and password have been entered, the user selects the "Sign On" button 330d to enter the system. If the user fails to select a valid username or password, the system will prompt for corrected identification. The "Set Up" button 330e allows the user to conFig. the nature and type of modem-based communications between the host computer and the remote DR-LINK client computer system, which comprises the DR-LINK system outlined earlier in this application. 6.2 Select Databases FIG. 11 shows a query screen 340 which appears once the user is signed-on to the DR-LINK system. Among the elements of the query screen are a sequence of navigational toolbar items 340a, 340b, 340c, and 340d, a sequence of option toolbar items 340e, an instructional window 340f with hyperlinked online help, a query window 340g for entering a free-form query statement, and a status bar 340h. Users of the system can select a range of data sources by activating the "Select Database" option toolbar button. FIG. 12 shows the "Select Database" screen 350 with pop-up dialog box 350a. The default setting for database selection is "Search all Databases" 350b; users are able to customize the default as required. Alternatively, users can specify which databases are to be searched for a given query by selecting classes of publications 350c or individual publications 350d within a class using selection boxes. Databases are arranged as clusters of related source files (see later description of the arrangement of categories, databases and sources). Brief descriptions of selections are shown on selection 350e; this description can be amplified by selecting the "Extended Description" button 350f. Selecting the "OK" button 350g returns the user to query screen 340. 6.3 Select Date Range FIG. 13 shows a date selection screen 360. From query screen 340 (FIG. 11), selecting "Select Date Range" 340i from the options toolbar activates the "Date Range Selection" pop-up window 360a. The default for date range selection is "All Dates Selected" 360b, although the default can be changed by the user. The selection of dates can be over a range using either exact dates 360c and 360d, or by selecting pre-determined ranges using radio buttons 360e and 360f. Activating the "OK" button returns the user to query screen 340 (FIG. 11). Dates are computed using the document date field identified by the DR-LINK system in initial document preprocessing. 6.4 Select Number of Documents (Preference), Scope, and Dialogs Several other retrieval criteria can be selected by the user using the "Select Additional Options" button from the option toolbar. An options pop-up window appears with three folders. In the Preferences folder the user can select the number of retrieved documents to be returned based on any one or some combination of the following: the total number of documents to be retrieved; the total number of documents to be placed in any of the three folders described earlier; or the required effective level of recall, using a novel recall predictor (RP) function. The RP filtering function is accomplished by means of a multiple regression formula that successfully predicts a ranked-list or cut-off criterion for individual queries based on the similarity of documents to queries as indicated by the DR-LINK matching scores. The RP is sensitive to the distribution of match scores for a given query. Users are asked to state a desired level of recall and a confidence level for that level of recall. Using a regression formula, the RP system is able to compute a cut-off point based on a lower-bound match-score that, to the stipulated confidence level, will include relevant document to the stipulated recall level. While in some cases a relatively large portion of the retrieved documents would have to be displayed, in most cases for 100% recall with a 95% confidence interval less than 20% of the retrieved document collection need be displayed. In trials (level of recall 100%, confidence level 95%) the system has collected an average of 97% of all documents judged relevant for a given query [Liddy94b]. The Scope folder allows users to specify which databases will be searched for relevant documents. Documents are arranged in a three-tier file system. At the upper level of the file system are categories (e.g., "Software Prior Art"); within categories are databases (e.g., IEEE publications); within databases are individual sources (e.g., the IEEE publication "Applied Astrophysics"). The Dialogs folder allows users to select the More Like Marked (MLM) relevance feedback feature described later. 6.5 Write Natural Language Query As stated earlier, DR-LINK makes no requirement that the user state a query using prescribed annotations or logical formulations. Instead the query can be stated in fully-formed natural sentences and the DR-LINK processing modules automatically create various representations of the query used for document retrieval. Query statements are entered in query window 340f of query screen 340 (FIG. 11). Queries can be of any length and of any complexity. Mandatory requirements can be stated using common phraseology (e.g., "All documents must mention . . . " or "I am only interested in information that specifies . . . "). The system is also sensitive to statements of negation, which can also be entered using natural language (e.g., "I am not interested in . . . " or "Documents discussing X are not useful"). Proper nouns can be entered in variant forms (e.g., "Lincoln," "President Lincoln" or "President Abraham Lincoln") and clarifications or expansions will automatically be made. Complex nominals (CNs), noun phrases and other related parts of speech will be recognized, and variant synonymous expressions will automatically be generated. The subject-content of queries is also captured at the conceptual level by SFC 250. The temporal nature of the query (past, present, future or some combination thereof) is also captured using Meta-Phrase Identifier 180. The same module also identifies the underlying intention of the query (a request for analytic information, evaluation, cause/effect, etc.) and this is used for matching purposes. This and other processing is performed automatically by the query processor (QP), described in detail above. 6.6 Spell/Grammar Checking The words in the user's query are checked using a commercial off the shelf (COTS) spell checking and grammar checking system. The user is prompted when unidentified words are used in the query, and shown possible correct spellings. A similar technique is used for grammar checking. 7.0 User Interaction After Query Processing But Before Query Execution 7.1 Review of Your Request FIGS. 14A and 14B show the "Review of your Request" screen 370. The specific annotations and representations of the natural language query statement mentioned above are produced by the QP, and once completed, the annotated results of the QP are displayed on this screen. The "Review Your Request" screen encompasses many of the query processing (QP) interactions of items 300g through 300l in FIG. 9A. FIG. 14A shows the full "Review of Your Request" screen and contains: A full statement of the user's query 370a; a representation 370b of the identified proper nouns (PNs), together with related clarifications or expansions; a representation 370c of complex nominals (CNs), with appropriate expansions; a ranked listing 370d of identified subject field codes (SFCs) for the query; a listing of all terms (PNs, CNs, and single terms) identified in the query identified by the QP, marked as either mandatory 370e or non-mandatory 370f; and a statement 370g of the meta-phrase requirements and temporal aspects. FIG. 14B shows a detail 380 of FIG. 14A, specifically the term-based expansions and clarifications. The following discussion takes each element of the query representation shown in the Review of your Request screen, and describes that representation and the user's ability to manipulate the system's initial understanding and representation of the query. 7.2 Proper Noun Representation Using the functional capabilities of PNC 170, the system displays to the user all identified proper nouns (including group proper nouns and group common nouns). The system also generates standard and variant forms of the PN using heuristics and databases (e.g., "IBM" is recognized as having various forms, including "International Business Machines Corp.," "International Business Machines Inc.," etc.). In the special case of group proper nouns, the group is expanded to include all member proper nouns. The standard form of the proper noun is used as a root, with variant forms indicated as branches from the root (see FIG. 14B). For example, the reference to "IBM" in the query statement has the standard form "International Business Machines Corp.," with variant forms such as "International Business Machines Inc." branching off. Referring to FIG. 14B, users are able to select which clarifications and expansions of the PN are appropriate using selection windows. The standard form 380a of the PN can be selected along with all variants 380b, or with some combinations of these forms, by marking appropriate selection boxes. Terms are indicated as selected by a "X" marker in the appropriate box. The user is able to scroll through all PN representations using the scroll bar 380c. 7.3 Complex Nominal Representation Complex nominals (adjacent noun pairs/sequences of non-predicating adjective and nouns) are detected by the CN detector 190. Variant synonymous CNs are automatically created by a process of recombination (whereby a CN such as "information retrieval software" might produce "information software") or expansion (whereby the CN 380d in FIG. 14B, "new products," is expanded to the synonymous CN "new commodity"). The original CN is shown in a window labeled "Term Alternatives" as the root phrase or term 380d, followed by possible recombinations and expansions 380e. The user is able to select which CNs and expansions are appropriate by placing an "X" marker in the appropriate box. This feature may be added to single term expansion, and other methods, such as statistical thesaurus building. 7.4 Meta-Phrase Identification Meta-phrase identification (MDI) is the representation of several, high-level dimensions of meaning or intention in a query statement (the analogous process in document processing is text structure). This processing (by meta-phrase identifier 180) is based on discourse theory and labels the discourse component requirements of a query using a suite of tags. "Review of Your Request" screen 370 displays all the possible meta-phrase tags assigned to the query representation under the heading "Request Preferences". This labeling is not exclusive: Any combination of tags is possible and tag assignments can be changed or added to by the user. The tags shown here are a subset of possible discourse-level requirement tags. 7.5 Time Frame Representation The meta-phrase identifier also identifies the temporal requirements of the query statement, which is displayed under the heading "Time Frame". The temporal sense of the query is determined using a range of processing tools discussed earlier in this application. Several tags may be assigned to the query. The user is able to alter the selection using the appropriate selection boxes. 7.6 Single Term Representation Single terms 370e, 370f are recognized by the DR-LINK system and displayed in the mandatory terms window, along with all PNs and CNs. Users are free to add additional terms as appropriate using the add terms window and "Add" button. For a discussion of mandatory and non-mandatory terms, see the discussion below. 7.7 Subject Field Code (SFC) Representation SFC 250 generates a concept-level description of the query's contents. Any of a plurality of subject field codes are assigned to the query statement, based on the disambiguated codes assigned to each substantive word or phrase in the query. Codes are also assigned weights dependent on the relative prevalence of a code in the query. All codes that relate to the contents of the query are displayed in window 370d under the heading "Subject Areas of your Request," with codes ordered according to the weight assignments. The user is free to select or deselect any of the codes using the appropriate selection boxes. It is also possible that the user can add terms to the SFC input screen, and view expansions. In an alternative embodiment, the user can also adjust the relative weights of the codes. 7.8 Mandatory Term Selection As discussed in earlier sections of this application, the DR-LINK system is able to distinguish those aspects of a query that are considered mandatory for retrieval, and divides the query representation into mandatory and non-mandatory terms. Relevance is partly determined for documents using the aspects of the query. Subsequent foldering of the documents, and their relative ranking for retrieval, is based in part on the assignment of mandatory tags to terms. All terms (PNS, CNs and single terms) from the query are displayed in the window labeled "Select the terms that MUST occur . . . " in the order in which they appear in the original query text. Terms that the DR-LINK system has determined are mandatory are automatically pre-assigned a mandatory tag, indicated by an "X" in the selection box next to the query. The user is free to alter the mandatory assignment for any or all terms. New terms can also be added to the query representation by using the add terms window and "Add" button. These new terms can be PNs, CNs or single terms. 8.0 Managing and Interacting with the Retrieved Documents 8.1 Matcher The user, having reviewed the QP's analysis, and provided input as described above, can continue the search by clicking on the "Continue Search But | ||||||
