Associative text search and retrieval system
Abstract
An associative text search and retrieval system uses one or more front end processors to interacting with a network having one or more user terminals connected thereto to allow a user to provide information to the system and receive information from the system. The system also includes storage for a plurality of text documents, and at least one processor, coupled to the front end processors and the document storage. The processor(s) search the text documents according to a search request provided by the user and provide to the front end processor a predetermined number of retrieved documents containing at least one term of the search request. The retrieved documents have higher ranks than documents not provided to the front end processor. The ranks are calculated using a formula that varies according to the square of the frequency in each of the text documents of each of the search terms.

Term
Term ended
Expired 22 November 2014, 11.8 years ago.
- Priority
- Filed
- Granted
- Expired
- Today
41 claims: 41 independent, 0 dependent
- 1An associative text search and retrieval system, comprising:front end processing means (56, 57, 58) for interacting with a network having one or more user terminals connected thereto to allow a user to provide information to the system and receive information from the system;storage means (46, 47, 48, 49) for storing a plurality of text documents;andprocessor means (32, 33, 34, 42, 43, 44), coupled to the front end processing means and the storage means, for performing a search of the text documents using a plurality of search terms provided by the user, for calculating a score for each of the text documents containing at least one of the search terms, for ranking the text documents based on their scores, and for providing to the front end processing means a predetermined number of retrieved documents that are a subset of the text documents based on the documents' ranks, the retrieved documents having higher ranks than text documents not provided to the front end processing means, wherein the scores are calculated using a formula that varies according to the square of the frequency in each of the text documents of each of the search terms, where the document frequency is defined as the number of documents within a searched collection which contain the search term. Assoziatives Textsuch- und -retrievalsystem mit: Datenübertragungsvorrechnern (56, 57, 58) zum Dialog mit einem Netz mit einer oder mehreren angeschlossenen Benutzerstationen, um Informationen in das System einzugeben und Informationen aus dem System abzurufen;Speichereinrichtungen (46, 47, 48, 49) zur Speicherung einer Anzahl von Textdokumenten;und mit den Datenübertragungsvorrechnern und den Speichereinrichtungen gekoppelter Prozessoreinrichtung (32, 33, 34, 42, 43, 44) zum Durchsuchen der Textdokumente unter Benutzung einer Anzahl von vom Benutzer festgelegten Suchbegriffen, zum Errechnen einer Auswertung für jedes der Textdokumente, in denen mindestens einer der Suchbegriffe enthalten ist, zum Festlegen einer Rangfolge der Textdokumente auf der Grundlage ihrer Auswertungen und zum Bereitstellen einer vorbestimmten Anzahl von abgerufenen Dokumenten als Teilmenge der Textdokumente auf der Basis der Rangfolge der Dokumente an die Datenübertragungsvorrechner, wobei die abgerufenen Dokumente mit höherer Rangfolge als die Textdokumente den Datenübertragungsvorrechnern nicht zur Verfügung gestellt werden, wobei die Auswertungen anhand einer Formel errechnet werden, die in Abhängigkeit vom Quadrat der Häufigkeit eines jeden Suchbegriffs in jedem der Textdokumente variiert, und wobei die Dokumentenhäufigkeit als die Anzahl der Dokumente innerhalb einer durchsuchten Sammlung definiert wird, in denen der Suchbegriff enthalten ist Système associatif de recherche et d'extraction de textes, comprenant : - des moyens de traitement frontal (56, 57, 58), pour interagir avec un réseau ayant un ou plusieurs terminaux d'utilisateurs connectés à celui-ci, afin de permettre à un utilisateur de fournir des informations au système et de recevoir des informations du système ;- des moyens de mémorisation (46, 47, 48, 49) pour mémoriser une pluralité de documents de textes ;et- des moyens processeurs (32, 33, 34, 42, 43, 44), couplés aux moyens de traitement frontal et aux moyens de mémorisation, afin d'effectuer une recherche des documents de textes en utilisant une pluralité de termes de recherche fournis par l'utilisateur, de calculer un compte de points pour chacun des documents de textes contenant au moins un des termes de recherche, de classer des documents de textes en se fondant sur leurs comptes de points et afin de délivrer aux moyens de traitement frontal un nombre prédéterminé de documents extraits qui constituent un sous-ensemble des documents de textes, basé sur les rangs de classement des documents, les documents extraits ayant des rangs plus élevés que les documents de textes n'ayant pas été fournis aux moyens de traitement frontal, dans lequel les comptes de points sont calculés en utilisant une formule qui varie suivant le carré de la fréquence, dans chacun des documents de textes, de chacun des termes de recherche, la fréquence de documents étant définie comme étant le nombre de documents, à l'intérieur d'une collection recherchée, qui contiennent le terme de recherche.
- 2Assoziatives Textsuch- und -retrievalsystem nach Anspruch 1, wobei die Formel in Abhängigkeit von einer umgekehrten Dokumentenhäufigkeit bei jedem der Suchbegriffe ebenfalls veränderlich ist. Système associatif de recherche et d'extraction de textes, selon la revendication 1, dans lequel la formule varie également suivant l'inverse de la fréquence, dans le document, de chacun des termes de recherche. The associative text search and retrieval system, according to claim 1, wherein the formula also varies according to an inverse document frequency of each of the search terms.
- 3Assoziatives Textsuch- und -retrievalsystem nach Anspruch 2, wobei die Formel wie folgt lautet:Formel wobei nt = die Gesamtanzahl der Suchbegriffe, ut = eine Anzahl eindeutiger Suchbegriffe, die in einem bestimmten Textdokument vorkommen, tfi = eine Häufigkeit, mit der Suchbegriff i im Textdokement enthalten ist, oc = ein prozentuales Vorkommen von Suchbegriffen in einem Fliestextfenster mit einer maximalen Anzahl von Suchbegriffen, wobei oc durch Teilen der Häufigkeit von Suchbegriffen im Fenster durch eine Gesamthäufigkeit von Suchbegriffen im Dokument und durch anschliessendes Multiplizieren des Ergebnisses mit 100 errechnet wird, dfi = eine Anzahl der Textdokumente, in denen der Begriff i enthalten ist, maxdfi = eine maximale Anzahl von Textdokumenten, in denen irgendwelche Suchbegriffe vorkommen, und wobei für alle Logarithmen die Zahlenbasis 2 gilt. Système associatif de recherche et d'extraction de textes, selon la revendication 2, dans lequel la formule est : dans laquelle nt représente le nombre total de termes de recherche, ut représente le nombre de termes de recherche uniques apparaissant dans un document particulier des documents de textes, tfi représente le nombre de fois où le terme de recherche i apparaît dans le document de textes, oc représente le pourcentage d'apparition de termes de recherche à l'intérieur d'une fenêtre flottante de textes, contenant un nombre maximum de termes de recherche, et est calculé en divisant le compte d'apparitions de termes de recherche dans la fenêtre par le nombre total d'apparitions de termes de recherche dans le document, et en multipliant le résultat par cent, dfi est le compte de documents de textes contenant le terme i, maxdfi est le nombre maximum de documents de textes dans lesquels apparaît un quelconque des termes de recherche, et tous les logarithmes sont en base deux. The associative text search and retrieval system, according to claim 2, wherein the formula is: wherein nt represents a total number of search terms, ut represents a number of unique search terms that occur in a particular one of the text documents, tfi represents a number of times search term i occurs in the text document, oc represents a percentage of occurrences of search terms in a floating text window containing a maximum number of search terms and is calculated by dividing a count of occurrences of search terms in the window by a total number of occurrences of search terms in the document and then multiplying the result by one hundred, dfi is a count of the text documents that contain term i, maxdfi is a maximum number of the text documents in which any of the search terms occur, and all logs are in base two.
- 4Assoziatives Textsuch- und -retrievalsystem nach irgendeinem der vorstehenden Ansprüche, wobei die Prozessoreinrichtung umfasst:mindestens einen mit den Datenübertragungsvorrechnem gekoppelten Session Administrator (SA)-Computer (42, 43, 44);und mindestens einen mit dem SA-Computer und den Dokumentenspeichereinrichtungen verbundenen Search and Retrieval [Such- und Retrieval-](SR)-Computer (32, 33, 34), wobei der SR-Computer die Suche in den Dokumentenspeichereinrichtungen durchführt und die abgerufenen Dokumente an den SA-Computer zurückgibt und wobei der SA-Computer den Benutzer auffordert, Suchbegriffe und Suchoptionen einzugeben, die Suchanforderung an den entsprechenden SR-Computer gibt und dem Benutzer die Möglichkeit bietet, die vom SR-Computer an den SA-Computer zurückgegebenen abgerufenen Dokumente einzusehen. Système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications précédentes, dans lequel lesdits moyens de traitement comprennent : - au moins un ordinateur administrateur de session (SA) (42, 43, 44) couplé aux moyens de traitement frontal ;et- au moins un ordinateur de recherche et d'extraction (SR) (32, 33, 34) couplé à l'ordinateur SA et aux moyens de mémorisation de documents ;- dans lequel l'ordinateur SR effectue la recherche dans les moyens de mémorisation de documents et renvoie les documents extraits à l'ordinateur SA et dans lequel l'ordinateur SA invite l'utilisateur à entrer des termes de recherche et des options de recherche, délivre à l'ordinateur SR approprié la demande de recherche et permet à l'utilisateur de visualiser les documents extraits renvoyés à l'ordinateur SA par l'ordinateur SR. The associative text search and retrieval system, according to any preceding claim, wherein said processing means comprises: at least one Session Administrator (SA) computer (42, 43, 44) coupled to the front end processing means;andat least one Search and Retrieval (SR) computer (32, 33, 34) coupled to the SA computer and to the document storage means, wherein the SR computer performs the search on the document storage means and returns the retrieved documents to the SA computer and wherein the SA computer prompts the user to enter search terms and search options, provides the appropriate SR computer with the search request, and allows the user to view the retrieved documents returned to the SA computer by the SR computer.
- 5Assoziatives Textsuch- und -retrievalsystem nach Anspruch 4, wobei die Suchanforderung vom SA-Computer an mehr als nur einen SR-Computer gegeben wird, wobei die SR-Computer die Dokumentenauswertung für die während der Suche gefundenen Textdokumente errechnen und wobei der SA-Computer die Auswertungen abgleicht und die Reihenfolge der Dokumente in Abhängigkeit von ihrer Auswertung bestimmt und die SR-Computer veranlasst, eine Teilmenge der Textdokumente mit den höchsten Gesamtauswertungen zurückzugeben. Système associatif de recherche et d'extraction de textes, selon la revendication 4, dans lequel la demande de recherche est délivrée par l'ordinateur SA à plus d'un ordinateur SR, les ordinateurs SR calculent des comptes de points de documents pour des documents de textes trouvés au cours de la recherche et renvoient les comptes de points de documents à l'ordinateur SA et l'ordinateur SA fusionne les comptes de points et effectue un classement des documents suivant leurs comptes de points et demande aux ordinateurs SR de renvoyer un sous-ensemble des documents de textes ayant les rangs de classement général les plus élevés. The associative text search and retrieval system, according to claim 4, wherein the search request is provided by the SA computer to more than one SR computer, the SR computers calculate document scores for text documents found in the course of the search and return the document scores to the SA computer, and the SA computer merges the scores and ranks the documents according to their scores and requests the SR computers to return a subset of the text documents having the highest overall ranks.
- 6Assoziatives Textsuch- und -retrievalsystem nach irgendeinem der vorstehenden Ansprüche, desweiteren mit:einem Thesaurus (52, 53, 54) mit Eintragungen für eine Anzahl von Wörtern zur Korrelation eines jeden Worts mit sowohl Synonymen als auch morphologischen Variationen. Système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications précédentes, comprenant, en outre : - un thésaurus (52, 53, 54) ayant des entrées pour une pluralité de mots, qui effectue une corrélation entre chaque mot et à la fois des synonymes et des variations morphologiques. The associative text and retrieval system, according to any preceding claim, further comprising: a thesaurus (52, 53, 54) having entries for a plurality of words which correlate each word with both synonyms and morphological variations.
- 7Assoziatives Textsuch- und -retrievalsystem nach irgendeinem der vorstehenden Ansprüche, desweiteren mit:Einrichtungen, um dem Benutzer unabhängig von den vom ihm vorgegebenen Suchbegriffen die Eingabe obligatorischer Begriffe zu ermöglichen, die in jedem der abgerufenen Dokumente vorkommen müssen, wobei die Prozessoreinrichtung Auswertungen nur für solche Dokumente vornimmt, in denen die obligatorischen Begriffe ggf. enthalten sind. Système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications précédentes, comprenant, en outre : - des moyens pour permettre à l'utilisateur d'entrer des termes obligatoires, devant être présents dans chacun des documents extraits, séparément des termes de recherche fournis par l'utilisateur, dans lequel les moyens processeurs calculent des comptes de points seulement pour les documents contenant les termes obligatoires, s'il en existe. The associative text search and retrieval system, according to any preceding claim, further comprising: means for allowing the user to enter mandatory terms which must be present in each of the retrieved documents, separately from the search terms provided by the user, wherein the processor means calculates scores only for documents containing the mandatory terms, if any.
- 8Assoziatives Textsuch- und -retrievalsystem nach irgendeinem der vorstehenden Ansprüche, desweiteren mit:einer Tabelle zur Erfassung von Sätzen, wobei die Tabelle Eintragungen umfasst, die für jedes Wort, das Teil eines Satzes sein kann, eine Position angibt, die das Wort in einem Satz einnehmen kann. Système associatif de recherche et d'extraction de textes, selon une quelconque revendication précédente, comprenant, en outre : - un tableau utilisé pour détecter des phrases, le tableau contenant des entrées qui, pour chaque mot pouvant faire partie d'une phrase, indiquent une position que le mot peut occuper dans une phrase quelconque. The associative text search and retrieval system, according to any preceding claim, further comprising: a table used to detect phrases, the table containing entries which, for each word that can be part of a phrase, indicate a position that the word can occupy in any phrase.
- 9Assoziatives Textsuch- und -retrievalsystem nach Anspruch 8, wobei in der Tabelle einer jeden Eintragung eine Bitmap zugeordnet ist, welche mögliche Stellungen in einem Satz der zugehörigen Eintragung angibt. Système associatif de recherche et d'extraction de textes, selon la revendication 8, dans lequel le tableau a une matrice de bits associée à chaque entrée, la matrice de bits indiquant les positions possibles, dans une phrase, de l'entrée associée. The associative text search and retrieval system, according to claim 8, wherein the table has a bitmap associated with each entry, the bitmap indicating possible locations in a phrase of the associated entry.
- 10Assoziatives Textsuch- und -retrievalsystem nach Anspruch 9, wobei die Tabelle desweiteren eine Kennung besitzt, um die Darstellungen eines jeden Wortes durch Zuordnung einer unverwechselbaren beliebigen Nummer zum Darstellen eines jeden Wortes zu komprimieren. Système associatif de recherche et d'extraction de textes, selon la revendication 9, dans lequel le tableau a, en outre, une identification (ID) pour comprimer les représentations de chacun des mots en attribuant un numéro arbitraire unique pour représenter chaque mot. The associative text search and retrieval system, according to claim 9, wherein the table further has an ID for compressing the representations of each of the words by assigning a unique arbitrary number to represent each word.
- 11Assoziatives Textsuch- und -retrievalsystem nach Anspruch 9 oder Anspruch 10, wobei jede Bitmap-Eintragung eine Länge von einem Byte hat, wobei ein Wert 1 einer bestimmten Bitposition in der Bitmap-Eintragung anzeigt, dass das der Bitmap zugeordnete Wort an der entsprechenden Stelle in einem Satz vorkommen könnte, und wobei ein Wert 0 einer bestimmten Bitposition in der Bitmap-Eintragung bedeutet, dass das der Bitmap zugeordnete Wort an der entsprechenden Stelle in einem Satz nicht vorkommen könnte. Système associatif de recherche et d'extraction de textes, selon la revendication 9 ou la revendication 10, dans lequel chaque entrée de la matrice de bits est une longueur de multiplet, une valeur de un à une position de bit particulière dans l'entrée de la matrice de bits indique que le mot associé à la matrice de bits peut apparaître à la position correspondante dans une phrase, et une valeur de zéro à une position de bit particulière de l'entrée de la matrice de bits indique que le mot associé à la matrice de bits ne peut apparaître à la position correspondante dans une phrase. The associative text search and retrieval system, according to claim 9 or claim 10, wherein each bitmap entry is one byte long, a value of one at a particular bit position in the bitmap entry indicates that the word associated with the bitmap could appear in the corresponding position in a phrase, and a value of zero at a particular bit position in the bitmap entry indicates that the word associated with the bitmap could not appear in the corresponding position in a phrase.
- 12Assoziatives Textsuch- und -retrievalsystem nach Anspruch 10, wobei die Tabelle einen Baum mit Knoten benutzt, die den Wörtern in einem Satz zugeordneten Kennungen entsprechen, wobei die Knoten in der Reihenfolge miteinander verbunden sind, in welcher die Wörter in einem Satz vorkommen können. Système associatif de recherche et d'extraction de textes, selon la revendication 10, dans lequel le tableau utilise une arborescence ayant des noeuds correspondant aux identifications (ID's) associées à des mots dans une phrase, les noeuds étant reliés selon l'ordre dans lequel les mots peuvent apparaître dans une phrase. The associative text search and retrieval system, according to claim 10, wherein the table uses a tree having nodes corresponding to the ID's associated with words in a phrase, the nodes being connected according to the order that the words can appear in a phrase.
- 13Assoziatives Textsuch- und -retrievalsystem nach irgendeinem der vorstehenden Ansprüche, desweiteren mit:Einrichtungen, die dem Benutzer die Möglichkeit zum Eingeben obligatorischer Begriffe bieten, die unabhängig von den vom Benutzer vorgegebenen Suchbegriffen in jedern der abgerufenen Dokumente vorkommen müssen, wobei die Prözessoreinrichtung eine Auswertung für jedes der Textdokumente errechnet, in denen die etwaigen obligatorischen Suchbegriffe und mindestens einer der Suchbegriffe enthalten sind. Système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications précédentes, comprenant, en outre : - des moyens permettant à l'utilisateur d'entrer des termes obligatoires, devant être présents dans chacun des documents extraits, séparément des termes de recherche fournis par l'utilisateur, dans lequel les moyens processeurs calculent un compte de points pour chacun des documents de textes contenant les termes obligatoires de recherche, s'il en existe, et au moins un des termes de recherche. The associative text search and retrieval system, according to any preceding claim, further comprising: means for allowing the user to enter mandatory terms which must be present in each of the retrieved documents, separately from the search terms provided by the user, wherein the processor means calculates a score for each of the text documents containing the mandatory search terms, if any, and at least one of the search terms.
- 14Assoziatives Textsuch- und -retrievalsystem nach irgendeinem der vorstehenden Ansprüche, desweiteren mit:einem den Textdokumenten zugeordneten Index zur Anzeige der Positionen potentieller Suchbegriffe innerhalb der Textdokumente;Einrichtungen, um bei der Suche Störbegriffe auszuschliessen, indem keine Störbegriffe in den Index aufgenommen werden;undEinrichtungen, um bei der Suche häufig gebrauchte Begriffe auszuschliessen, wobei die häufig benutzten Begriffe im Index enthalten und in einer Liste häufig benutzter Begriffe aufgelistet sind und wobei die häufig benutzten Begriffe dadurch von der Suche ausgeschlossen bleiben, dass bei der Suche keine in der Liste enthaltene Begriffe benutzt werden. Système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications précédentes, comprenant, en outre : - un index, associé aux documents de textes, indiquant les positions des termes potentiels de recherche dans les documents de textes ;- des moyens pour exclure que les termes erratiques soient considérés pour la recherche, en n'incluant pas les termes erratiques dans l'index ;et- des moyens pour exclure que les termes fréquemment utilisés soient considérés pour la recherche, les termes fréquemment utilisés étant contenus dans l'index et maintenus dans une liste de termes fréquemment utilisés, les termes fréquemment utilisés étant exclus de la recherche en n'utilisant pas les termes dans la liste pour la recherche. The associative text search and retrieval system, according to any preceding claim, further comprising: an index, associated with the text documents, for indicating the locations of potential search terms within the text documents;means for excluding noise terms from being considered for the search by not including noise terms in the index;andmeans for excluding frequently used terms from being considered for the search, the frequently used terms being contained in the index and maintained in a list of frequently used terms, the frequently used terms being excluded from the search by not using terms in the list for the search.
- 15Assoziatives Textsuch- und -retrievalsystem nach irgendeinem der vorstehenden Ansprüche, desweiteren mit:Einrichtungen, um dem Benutzer eine Bildschirmmaske zur Verfügung zu stellen, die für jedes abgerufene Dokument anzeigt, welche Suchbegriffe in welchen abgerufenen Dokumenten vorkommen. Système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications précédentes, comprenant, en outre : - des moyens pour fournir à l'utilisateur un écran indiquant, pour chaque document extrait, quels termes de recherche sont présents dans quels documents extraits. The associative text search and retrieval system, according to any preceding claim, further comprising: means for providing the user with a screen indicating for each retrieved document which search terms are present in which retrieved documents.
- 16Assoziatives Textsuch- und -retrievalsystem nach Anspruch 2, desweiteren mit:Einrichtungen, um dem Benutzer eine Bildschirmmaske zur Verfügung zu stellen, die für jeden der Suchbegriffe eine Bedeutung angibt, wobei die Bedeutung der Begriffe in Abhängigkeit von der umgekehrten Dokumentenhäufigkeit des Suchbegriffs variiert. Système associatif de recherche et d'extraction de textes, selon la revendication 2, comprenant, en outre : - des moyens pour fournir à l'utilisateur un écran indiquant l'importance du terme pour chacun des termes de recherche, l'importance du terme variant suivant l'inverse de la fréquence d'apparition, dans le document, du terme de recherche The associative text search and retrieval system, according to claim 2, further comprising: means for providing the user with a screen indicating a term importance for each of the search terms wherein the term importance varies according to the inverse document frequency of the search term.
- 17Assoziatives Textsuch- und -retrievalsystem nach Anspruch 16, wobei die Bedeutung der Begriffe in Abhängigkeit von log(maxdfi/dfi) variiert, wobei für den Logarithmus die Basiszahl 2 gilt, dfi = eine Anzahl der abgerufenen Dokumente, in denen der Suchbegriff i enthalten ist, und maxdfi = eine maximale Anzahl der abgerufenen Dokumente, in denen irgendwelche Suchbegriffe vorkommen. Système associatif de recherche et d'extraction de textes, selon la revendication 16, dans lequel l'importance du terme varie suivant la fonction log (maxdfi / dfi), dans laquelle le logarithme est en base deux, dfi est un compte des documents extraits contenant le terme de recherche i et maxdfi est le nombre maximum de documents extraits dans lesquels apparaît un quelconque des termes de recherche. The associative text search and retrieval system, according to claim 16, wherein the term importance varies according to log(maxdfi/dfi), wherein the log is to the base two, dfi is a count of the retrieved documents that contain search term i, and maxdfi is a maximum number of the retrieved documents in which any of the search terms appear.
- 18Assoziatives Textsuch- und -retrievalsystem nach irgendeinem der vorstehenden Ansprüche, wobei die Speichereinrichtungen zur Speicherung von mindestens einer Dokumentensammlung mit einer Anzahl von Textdokumenten und vorbestimmten Informationen dienen, aus denen hervorgeht, wie die Dokumente in der Dokumentensammlung präsentiert werden können, wobei das System Einrichtungen umfasst, die dem Benutzer die Möglichkeit bieten, einen von vielen möglichen Befehlen zur Darstellung der abgerufenen Dokumente auf der Grundlage der vorbestimmten und in der Dokumentensammlung enthaltenen Informationen anzuwählen. Système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications précédentes, dans lequel lesdits moyens de mémorisation servent à mémoriser au moins une collection de documents, contenant une pluralité de documents de textes et des informations prédéterminées indiquant la manière dont les documents peuvent être présentés dans la collection de documents, ledit système comportant des moyens permettant à l'utilisateur de sélectionner un ordre, parmi de nombreux ordres possibles, pour la présentation des documents extraits, en se fondant sur les informations prédéterminées contenues dans la collection de documents. The associative text search and retrieval system, according to any preceding claim, wherein said storage means is for storing at least one document collection containing a plurality of text documents and predetermined information indicating how the documents in the document collection can be presented, said system including means for allowing the user to select one of many possible orders for presenting the retrieved documents based on the predetermined information contained in the document collection.
- 19Assoziatives Textsuch- und -retrievalsystem nach irgendeinem der vorstehenden Ansprüche, desweiteren mit:Einrichtungen zur Anzeige des Textes eines der abgerufenen Dokumente in einem Fenster, wobei das Fenster die höchste Fensterauswertung aller möglichen Fenster des abgerufenen Dokuments hat, wobei die Fensterauswertung auf der Häufigkeit und Unterschiedlichkeit der Suchbegriffe im Fenster basiert und wobei die Vielseitigkeit der Suchbegriffe im Fenster ausgehend von der Anzahl der Suchbegriffe im Fenster errechnet wird, denen ein anderer Suchbegriff im Fenster vorausgeht. Système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications précédentes, comprenant, en outre : - des moyens pour afficher une fenêtre de texte d'un des documents extraits, la fenêtre ayant le compte de points de fenêtre le plus élevé parmi toutes les fenêtres possibles du document extrait, le compte de points de fenêtre étant fondé sur le nombre d'apparitions et la diversité des termes de recherche dans la fenêtre, la diversité des termes de recherche dans la fenêtre étant calculée en se fondant sur le nombre de termes de recherche dans la fenêtre précédés d'un terme de recherche différent dans la fenêtre. The associative text search and retrieval system, according to any preceding claim, further comprising: means for displaying a window of text of one of the retrieved documents, the window having a highest window score of all possible windows of the retrieved document, the window score being based upon the number of occurrences and diversity of search terms in the window, the diversity of search terms in the window being calculated based on the number of search terms in the window preceded by a different search term in the window.
- 20Assoziatives Textsuch- und -retrievalsystem nach Anspruch 19, wobei die Fensterauswertung durch Hinzurechnen von 1 zur Fensterauswertung für die Anzahl der Suchbegriffe im Fenster, durch Hinzurechnen von 2 zur Fensterauswertung für jeden Suchbegriff im Fenster, dem ein anderer Suchbegriff vorausgeht, und durch Hinzurechnen von 2 zur Fensterauswertung für jeden Suchbegriff im Fenster errechnet wird, dem ein anderer Suchbegriff vorausgeht, vor dem seinerseits wiederum ein anderer Suchbegriff steht. Système associatif de recherche et d'extraction de textes, selon la revendication 19, dans lequel le compte de points de fenêtre est calculé en ajoutant un au compte de points de fenêtre pour le nombre de termes de recherche dans la fenêtre, en ajoutant deux au compte de points de fenêtre pour chaque terme de recherche, dans la fenêtre, qui est précédé d'un terme de recherche différent et en ajoutant deux au compte de points de fenêtre pour chaque terme de recherche, dans la fenêtre, qui est précédé d'un terme de recherche différent, qui est également précédé d'un terme de recherche différent. The associative text search and retrieval system, according to claim 19, wherein the window score is calculated by adding one to the window score for the number of search terms in the window, adding two to the window score for each search term in the window that is preceded by a different search term, and by adding two to the window score for each search term in the window that is preceded by a different search term that is also preceded by a different search term.
- 21Assoziatives Textsuch- und -retrievalsystem nach Anspruch 19, desweiteren mit Einrichtungen, um dem Benutzer die Eingabe von obligatorischen Begriffen zu ermöglichen, die in jedem der abgerufenen Dokumente vorkommen müssen, wobei die Fensterauswertung durch Hinzurechnen von 1 zur Fensterauswertung für die Anzahl der Suchbegriffe und obligatorischen Begriffe im Fenster, durch Hinzurechnen von 2 zur Fensterauswertung für jeden Suchbegriff und obligatorischen Begriff im Fenster, dem ein anderer Suchbegriff oder obligatorischer Begriff vorausgeht, und durch Hinzurechnen von 2 zur Fensterauswertung für jeden Suchbegriff und obligatorischen Begriff im Fenster errechnet wird, dem ein anderer Suchbegriff oder obligatorischer Begriff vorausgeht, vor dem seinerseits wiederum ein anderer Suchbegriff oder obligatorischer Begriff steht. Système associatif de recherche et d'extraction de textes, selon la revendication 19, comprenant en outre des moyens permettant à l'utilisateur d'entrer des termes obligatoires devant être présents dans chacun des documents extraits, dans lequel le compte de points de fenêtre est calculé en ajoutant un au compte de points de fenêtre pour le nombre de termes de recherche et de termes obligatoires dans la fenêtre, en ajoutant deux au compte de points de fenêtre pour chaque terme de recherche et chaque terme obligatoire dans la fenêtre qui est précédé d'un terme de recherche différent ou d'un terme obligatoire différent, et en ajoutant deux au compte de points de fenêtre pour chaque terme de recherche et chaque terme obligatoire dans la fenêtre, qui est précédé d'un terme de recherche différent ou d'un terme obligatoire différent, qui est également précédé d'un terme de recherche différent ou d'un terme obligatoire différent. The associative text search and retrieval system, according to claim 19, further comprising means for allowing the user to enter mandatory terms which must be present in each of the retrieved documents, wherein the window score is calculated by adding one to the window score for the number of search terms and mandatory terms in the window, adding two to the window score for each search term and mandatory term in the window that is preceded by a different search term or mandatory term, and by adding two to the window score for each search term and mandatory term in the window that is preceded by a different search term or mandatory term that is also preceded by a different search term or mandatory term.
- 22A method of operating an associative text search and retrieval system, comprising the steps of:performing a search of text documents (263) using a plurality of search terms provided by a user;calculating a score for each of the text documents containing at least one of the search terms using a formula that varies according to the square of the frequency in each of the text documents of each of the search terms (268);where the document frequency is defined as the number of documents within a searched collection which contain the search term;ranking the text documents based on their scores (269);andproviding the user with a predetermined number of retrieved documents (272) that are a subset of the text documents based on the ranks of the documents, the retrieved documents having higher ranks than text documents not provided. Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, comprenant les étapes consistant à : - effectuer une recherche de documents de textes (263) en utilisant une pluralité de termes de recherche fournis par l'utilisateur ;- calculer un compte de points pour chacun des documents de textes contenant au moins un des termes de recherche en utilisant une formule qui varie suivant le carré de la fréquence d'apparition, dans chacun des documents de textes de chacun des termes de recherche (268), la fréquence de documents étant définie comme le nombre de documents, à l'intérieur d'une collection faisant l'objet d'une recherche, qui contiennent le terme de recherche ;- effectuer un classement des documents de textes en se fondant sur leurs comptes de points (269) ;et- délivrer à l'utilisateur un nombre prédéterminé de documents extraits (272), qui constituent un sous-ensemble des documents de textes, fondé sur les rangs de classement des documents, les documents extraits ayant des rangs plus élevés que les documents de textes n'ayant pas été fournis. Verfahren zum Betrieb eines assoziativen Textsuch- und-retrievalsystems, zu dem die folgen-den Verfahrensschritte gehören: Durchsuchen von Textdokumenten (263) unter Benutzung einer Anzahl von Suchbegriffen, die von einem Benutzer festgelegt werden;Errechnen einer Auswertung für jedes der Textdokumente, in denen mindestens einer der Suchbegriffe enthalten ist, nach einer Formel, die in Abhängigkeit vom Quadrat der Häufigkeit eines jeden Suchbegriffs (268) in jedem der Textdokumente variiert, wobei die Dokumentenhäufigkeit als die Anzahl der Dokumente innerhalb einer durchsuchten Sammlung definiert wird, in denen der Suchbegriff enthalten ist;Festlegen einer Rangfolge der Textdokumente auf der Grundlage ihrer Auswertungen (269);und Bereitstellen einer vorbestimmten Anzahl von abgerufenen Dokumenten (272) als Teilmenge der Textdokumente auf der Basis der Rangfolge der Dokumente an den Benutzer, wobei die abgerufenen Dokumente mit höherer Rangfolge als die Textdokumente nicht zur Verfügung gestellt werden.
- 23Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 22, dans lequel la formule varie également suivant l'inverse de la fréquence d'apparition, dans le document, de chacun des termes de recherche. The method of operating an associative text search and retrieval system, according to claim 22, wherein the formula also varies according to an inverse document frequency of each of the search terms. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 22, wobei die Formel in Abhängigkeit von einer umgekehrten Dokumentenhäufigkeit bei jedem der Suchbegriffe ebenfalls veränderlich ist.
- 24Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 23, dans lequel la formule est :dans laquelle nt représente le nombre total de termes de recherche, ut représente le nombre de termes de recherche uniques apparaissant dans un document particulier des documents de textes, tfi représente le nombre de fois où le terme de recherche i apparaît dans le document de textes, oc représente le pourcentage d'apparition de termes de recherche à l'intérieur d'une fenêtre flottante de textes, contenant un nombre maximum de termes de recherche, et est calculé en divisant le compte d'apparitions de termes de recherche dans la fenêtre par le nombre total d'apparitions de termes de recherche dans le document, puis en multipliant le résultat par cent, dfi est le compte de documents de textes contenant le terme i, maxdfi est le nombre maximum de documents de textes dans lesquels apparaît un quelconque des termes de recherche, et tous les logarithmes sont en base deux. The method of operating an associative text search and retrieval system, according to claim 23, wherein the formula is: wherein nt represents a total number of search terms, ut represents a number of unique search terms that occur in a particular one of the text documents, tfi represents a number of times search term i occurs in the text document, oc represents a percentage of occurrences of search terms in a floating text window containing a maximum number of search terms and is calculated by dividing a count of occurrences of search terms in the window by a total number of occurrences of search terms in the document and then multiplying the result by one hundred, dfi is a count of the text documents that contain term i, maxdfi is maximum number of the text documents in which any of the search terms occur, and all logs are in base two. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 23, wobei die Formel wie folgt lautet: Formel wobei nt = die Gesamtanzahl der Suchbegriffe, ut = eine Anzahl eindeutiger Suchbegriffe, die in einem bestimmten Textdokument vorkommen, tfi = eine Häufigkeit, mit der Suchbegriff i im Textdokument enthalten ist, oc = ein prozentuales Vorkommen von Suchbegriffen in einem Fliestextfenster mit einer maximalen Anzahl von Suchbegriffen, wobei oc durch Teilen der Häufigkeit von Suchbegriffen im Fenster durch eine Gesamthäufigkeit von Suchbegriffen im Dokument und durch anschliessendes Multiplizieren des Ergebnisses mit 100 errechnet wird, dfi = eine Anzahl der Textdokumente, in denen der Begriff i enthalten ist, maxdfi = eine maximale Anzahl von Textdokumenten, in denen irgendwelche Suchöegriffe vorkommen, und wobei für alle Logarithmen die Zahlenbasis 2 gilt
- 25Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications 22 à 24, comprenant, en outre, l'étape consistant à :- utiliser un thésaurus ayant des entrées pour une pluralité de mots, qui effectue une corrélation entre chaque mot et à la fois des synonymes et des variations morphologiques. The method of operating an associative text search and retrieval system, according to any of claims 22 to 24, further comprising the step of: using a thesaurus having entries for a plurality of words which correlate each word with both synonyms and morphological variations. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach irgendeinem der Ansprüche 22 bis 24, zu dem desweiteren der folgende Verfahrensschritt gehört: Benutzung eines Thesaurus mit Eintragungen für eine Anzahl von Wörtern zur Korrelation eines jeden Worts mit sowohl Synonymen als auch morphologischen Variationen.
- 26Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications 22 à 25, comprenant, en outre, les étapes consistant à :- permettre à un utilisateur de fournir une pluralité de termes de recherche ;- utiliser un tableau pour détecter des phrases dans les limites des termes de recherche fournis par l'utilisateur, le tableau contenant des entrées qui, pour chaque mot pouvant faire partie d'une phrase, indiquent une position que le mot peut occuper dans une phrase quelconque ;- l'étape de recherche de documents de textes étant effectuée en utilisant la pluralité de termes de recherche fournis par l'utilisateur et les phrases, s'il en existe, détectées par le tableau. The method of operating an associative text search and retrieval system, according to any of claims 22 to 25, further comprising the steps of: allowing a user to provide a plurality of search terms;using a table to detect phrases within the search terms provided by the user, the table containing entries which, for each word that can be part of a phrase, indicate a position that the word can occupy in any phrase;wherein the step of performing the search of text documents is performed using the plurality of search terms provided by the user and the phrases, if any, detected by the table. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach irgendeinem der Ansprüche 22 bis 25, mit desweiteren den folgenden Verfahrensschritten: Schaffung der Möglichkeit für einen Benutzer, eine Anzahl von Suchbegriffen einzugeben;Benutzung einer Tabelle zur Erfassung von Sätzen innerhalb der vom Benutzer vorgegebenen Suchbegriffe, wobei die Tabelle Eintragungen umfasst, die für jedes Wort, das Teil eines Satzes sein kann, eine Position angibt, die das Wort in einem Satz einnehmen kann;wobei das Durchsuchen der Textdokumente unter Benutzung der vom Benutzer vorgegebenen Anzahl von Suchbegriffen und der ggf. mittels der Tabelle erfassten Sätze erfolgt.
- 27Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 26, dans lequel le tableau a une matrice de bits, associée à chaque entrée, la matrice de bits indiquant les positions possibles dans une phrase de l'entrée associée. The method of operating an associative text search and retrieval system, according to claim 26, wherein the table has a bitmap associated with each entry, the bitmap indicating possible locations in a phrase of the associated entry. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 26, wobei in der Tabelle einer jeden Eintragung eine Bitmap zugeordnet ist, welche mögliche Stellungen in einem Satz der zugehörigen Eintragung angibt.
- 28Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 27, dans lequel le tableau a en outre une identification (ID) pour comprimer les représentations de chacun des mots en attribuant un numéro arbitraire unique pour représenter chaque mot. The method of operating an associative text search and retrieval system, according to claim 27, wherein the table further has an ID for compressing the representations of each of the words by assigning a unique arbitrary number to represent each word. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 27, wobei die Tabelle desweiteren eine Kennung besitzt, um die Darstellungen eines jeden Wortes durch Zuordnung einer unverwechselbaren beliebigen Nummer zum Darstellen eines jeden Wortes zu komprimieren.
- 29Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 27 ou la revendication 28, dans lequel chaque entrée de la matrice de bits est une longueur de multiplet, une valeur de un à une position de bit particulière dans l'entrée de la matrice de bits indique que le mot associé à la matrice de bits peut apparaître à la position correspondante dans une phrase, et une valeur de zéro à une position de bit particulière dans l'entrée de la matrice de bits indique que le mot associé à la matrice de bits ne peut apparaître à la position correspondante dans une phrase. The method of operating an associative text search and retrieval system, according to claim 27 or claim 28, wherein each bitmap entry is one byte long, a value of one at a particular bit position in the bitmap entry indicates that the word associated with the bitmap could appear in the corresponding position in a phrase, and a value of zero at a particular bit position in the bitmap entry indicates that the word associated with the bitmap could not appear in the corresponding position in a phrase. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 27 oder Anspruch 28, wobei jede Bitmap-Eintragung eine Länge von einem Byte hat, wobei ein Wert 1 einer bestimmten Bitposition in der Bitmap-Eintragung anzeigt, dass das der Bitmap zugeordnete Wort an der entsprechenden Stelle in einem Satz zu finden sein könnte, und wobei ein Wert 0 einer bestimmten Bitposition in der Bitmap-Eintragung bedeutet, dass das der Bitmap zugeordnete Wort an der entsprechenden Stelle in einem Satz nicht vorkommen könnte.
- 30Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 28, dans lequel le tableau utilise une arborescence ayant des noeuds correspondant aux identifications (ID's) associées à des mots dans une phrase, les noeuds étant reliés selon l'ordre dans lequel les mots peuvent apparaître dans une phrase. The method of operating an associative text search and retrieval system, according to claim 28, wherein the table uses a tree having nodes corresponding to the ID's associated with words in a phrase, the nodes being connected according to the order that the words can appear in a phrase. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 28, wobei die Tabelle einen Baum mit Knoten benutzt, die den Wörtern in einem Satz zugeordneten Kennungen entsprechen, wobei die Knoten in der Reihenfolge miteinander verbunden sind, in welcher die Wörter in einem Satz vorkommen können.
- 31Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications 22 à 30, comprenant, en outre, les étapes consistant à :- permettre à l'utilisateur d'entrer des termes obligatoires, devant être présents dans chacun des documents extraits, séparément des termes de recherche fournis par l'utilisateur ;- dans lequel un compte de points est calculé pour chacun des documents de textes contenant les termes obligatoires de recherche, s'il en existe, et au moins un des termes de recherche. The method of operating an associated text search and retrieval system, according to any of claims 22 to 30, further comprising the steps of: allowing the user to enter mandatory terms which must be present in each of the retrieved documents, separately from the search terms provided by the user;wherein a score is calculated for each of the text documents containing the mandatory terms, if any, and at least one of the search terns. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach irgendeinem der Ansprüche 22 bis 30, zu dem desweiteren die folgenden Verfahrensschritte gehören: Schaffung der Möglichkeit für den Benutzer zum Eingeben obligatorischer Begriffe, die unabhängig von den vom Benutzer vorgegebenen Suchbegriffen in jedem der abgerufenen Dokumente vorkommen milssen;wobei eine Auswertung für jedes der Textdokumente errechnet wird, in denen die etwaigen obligatorischen Suchbegriffe und mindestens einer der Suchbegriffe enthalten sind.
- 32Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications 22 à 31, comprenant, en outre, les étapes consistant à :- indiquer les positions des termes potentiels de recherche dans les documents de textes, contenus dans une collection de documents, en utilisant un index qui est associé aux documents de textes ;- exclure que les termes erratiques soient considérés pour la recherche, en n'incluant pas les termes erratiques dans l'index ;- exclure que soient considérés pour la recherche les termes fréquemment utilisés contenus dans l'index et dans la collection de documents dans une liste de termes fréquemment utilisés, la liste de termes fréquemment utilisés étant dynamique, fondée sur une variété de facteurs fonctionnels incluant la fréquence d'apparition d'un terme dans la collection de documents et la nature de la collection de documents, les termes fréquemment utilisés étant exclus de la recherche en n'utilisant pas les termes dans la liste pour la recherche ;- dans lequel un compte de points est calculé pour chacun des documents de textes contenant au moins un des termes de recherche, à l'exception des termes erratiques et des termes fréquemment utilisés exclus à ladite étape d'exclusion. The method of operating an associative text search and retrieval system, according to any of claims 22 to 31, further comprising the steps of: indicating locations of potential search terms within the text documents contained in a document collection using an index which is associated with the text documents;excluding noise terms from being considered for the search by not including noise terms in the index;excluding from being considered for the search frequently used terms contained in the index and in the document collection in a list of frequently used terms, the list of frequently used terms being dynamic, based upon a variety of functional factors including the frequency of occurrence of a term in the document collection and the nature of the document collection, the frequently used terms being excluded from the search by not using terms in the list for the search;wherein a score is calculated for each of the text documents containing at least one of the search terms except for noise terms and frequently used terms excluded in said excluding step. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach irgendeinem der Ansprüche 22 bis 31, zu dem desweiteren die folgenden Verfahrensschritte gehören: Anzeige der Positionen potentieller Suchbegriffe innerhalb der in einer Dokumentensammlung enthaltenen Textdokumente mittels eines den Textdokumenten zugeordneten Indexes;Ausschluss von Störbegriffen bei der Suche, indem keine Störbegriffe in den Index aufgenommen werden;Nichtberücksichtigung häufig gebrauchter Begriffe bei der Suche, wobei die häufig benutzten Begriffe im Index enthalten und in der Dokumentensammlung in einer Liste häufig benutzter Begriffe aufgelistet sind, wobei die Liste häufig benutzter Begriffe auf der Grundlage einer Vielzahl von Funktionsfaktoren einschliesslich der Häufigkeit eines Begriffs in der Dokumentensammlung und der Art derDokumentensammlung dynamisch ist und wobei die häufig benutzten Begriffe dadurch von der Suche ausgeschlossen bleiben, däss bei der Suche keine in der Liste enthaltene Begriffe benutzt werden;wobei für jedes der Textdokumente, die mit Ausnahme der nach vorgenannten Verfahrensschritten ausgeschlossenen Störbegriffe und häufig benutzten Begriffe mindestens einen Suchbegriff enthalten, eine Auswertung errechnet wird.
- 33Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications 22 à 32, comprenant, en outre, l'étape consistant à :- indiquer, pour chaque document extrait, quels termes de recherche sont présents dans quels documents extraits. The method of operating an associative text search and retrieval system, according to any of claims 22 to 32, further comprising the step of: indicating for each retrieved document which search terms are present in which retrieved documents. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach irgendeinem der Ansprüche 22 bis 32, zu dem desweiteren der folgende Verfahrensschritt gehört: Anzeige für jedes abgerufene Dokument, welche Suchbegriffe in welchen abgerufenen Dokumenten vorkommen.
- 34Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 33, dans lequel la présence de chacun des termes de recherche dans les documents extraits est affichée sous une forme lisible à l'oeil. The method of operating an associative text search and retrieval system, according to claim 33, wherein the presence of each of the search terms within the retrieved documents is displayed in eye-readable form. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 33, wobei das Vorkommen eines jeden Suchbegriffs innerhalb der abgerufenen Dokumente in ablesbarer Form angezeigt wird.
- 35Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 34, comprenant, en outre, l'étape consistant à :- indiquer l'importance d'un terme pour chacun des termes de recherche, l'importance du terme variant suivant l'inverse de la fréquence dans le document du terme de recherche. The method of operating an associative text search and retrieval system, according to claim 34, further comprising the step of: indicating a term importance for each of the search terms wherein the term importance varies according to the inverse document frequency of the search term. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 34, zu dem desweiteren der folgende Verfahrensschritt gehört: Angabe der Bedeutung für jeden der Suchbegriffe, wobei die Bedeutung der Begriffe in Abhängigkeit von der umgekehrten Dokumentenbäufigkeit des Suchbegriffs variiert.
- 36Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 35, dans lequel l'importance du terme est affichée sous une forme lisible à l'oeil. The method of operating an associative text search and retrieval system, according to claim 35, wherein the term importance is displayed in eye-readable form. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 35, wobei die Bedeutung des Begriffs in ablesbarer Form angezeigt wird.
- 37Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 35 ou la revendication 36, dans lequel l'importance du terme varie suivant la fonction log (maxdfi / dfi), dans laquelle le logarithme est en base deux, dfi est un compte des documents extraits contenant le terme de recherche i et maxdfi est le nombre maximum de documents extraits dans lesquels apparaît un quelconque des termes de recherche. The method of operating an associative text search and retrieval system, according to claim 35 or claim 36, wherein the term importance varies according to log(maxdfi/dfi), wherein the log is to the base two, dfi is a count of the retrieved documents that contain search term i, and maxdfi is a maximum number of the retrieved documents in which any of the search terms appear. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 35 oder Anspruch 36, wobei die Bedeutung der Begriffe in Abhängigkeit von log(maxdfi/dfi) variiert, wobei für den Logarithmus die Basiszahl 2 gilt, dfi = eine Anzahl der abgerufenen Dokumente, in denen der Suchbegriff i enthalten ist, und maxdfi = eine maximale Anzahl der abgerufenen Dokumente, in denen irgendwelche Suchbegriffe vorkommen.
- 38Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications 22 à 37, les documents de textes étant contenus dans une collection de documents, le procédé comprenant, en outre, l'étape consistant à :- permettre à l'utilisateur de sélectionner un ordre, parmi de nombreux ordres possibles, pour la présentation des documents extraits, fondé sur des informations prédéterminées contenues dans la collection de documents indiquant la manière dont les documents de la collection de documents peuvent être présentés. The method of operating an associative text search and retrieval system, according to any of claims 22 to 37, the text documents being contained in a document collection, further comprising the step of: allowing the user to select one of many possible orders for presenting the retrieved documents based on predetermined information contained in the document collection indicating how the documents in the document collection can be presented. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach irgendeinem der Ansprüche 22 bis 37, wobei die Textdokumente in einer Dokumentensammlung enthalten sind und zu dem desweiteren der folgende Verfahrensschritt gehört: Schaffung der Möglichkeit für den Benutzer, einen von vielen möglichen Befehlen zur Darstellung der abgerufenen Dokumente auf der Grundlage der vorbestimmten und in der Dokumentensammlung enthaltenen Informationen anzuwählen, die zeigen, wie die Dokumente in der Dokumentensammlung präsentiert werden können.
- 39Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon l'une quelconque des revendications 22 à 38, comprenant, en outre, les étapes consistant à :- pour un document sélectionné parmi les documents extraits, calculer un compte de points de fenêtre pour chaque fenêtre parmi toutes les fenêtres possibles du document extrait en se fondant sur le nombre d'apparitions et la diversité des termes de recherche dans la fenêtre, la diversité des termes de recherche dans la fenêtre étant calculée en se fondant sur le nombre de termes de recherche, dans la fenêtre, qui sont précédés d'un terme de recherche différent dans la fenêtre ;et- afficher la fenêtre de texte, pour le document extrait sélectionné, ayant le compte de points de fenêtre le plus élevé parmi toutes les fenêtres possibles du document extrait sélectionné. The method of operating an associative text search and retrieval system, according to any of claims 22 to 38, further comprising the steps of: for a selected one of the retrieved documents, calculating a window score for each of all possible windows of the retrieved document based upon the number of occurrences and diversity of search terms in the window, the diversity of search terms in the window being calculated based on the number of search terms in the window preceded by a different search term in the window;anddisplaying the window of text for the selected retrieved document having the highest window score of all possible windows of the selected retrieved document. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach irgendeinem der Ansprüche 22 bis 38, zu dem desweiteren die folgenden Verfahrensschritte gehören: für ein bestimmtes abgerufenes Dokument Errechnen einer Fensterauswertung für jedes aller möglichen Fenster des abgerufenen Dokuments auf der Grundlage der Häufigkeit und Unterschiedlichkeitder Suchbegriffe im Fenster, wobei die Vielseitigkeit der Suchbegriffe im Fenster ausgehend von der Anzahl der Suchbegriffe im Fenster errechnet wird, denen ein anderer Suchbegriff im Fenster vorausgeht;undAnzeige des Textes des jeweils gewählten abgerufenen Dokuments in einem Fenster, das die höchste Fensterausweitung aller möglichen Fenster des gewählten abgerufenen Dokuments hat.
- 40Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 39, dans lequel le compte de points de fenêtre est calculé en ajoutant un au compte de points de fenêtre pour le nombre de termes de recherche dans la fenêtre, en ajoutant deux au compte de points de fenêtre pour chaque terme de recherche, dans la fenêtre, qui est précédé d'un terme de recherche différent, et en ajoutant deux au compte de points de fenêtre pour chaque terme de recherche, dans la fenêtre, qui est précédé d'un terme de recherche différent qui est également précédé d'un terme de recherche différent. The method of operating an associative text search and retrieval system, according to claim 39, wherein the window score is calculated by adding one to the window score for the number of search terms in the window, adding two to the window score for each search term in the window that is preceded by a different search term, and by adding two to the window score for each search term in the window that is preceded by a different search term that is also preceded by a different search term. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 39, wobei die Fensterauswertung durch Hinzurechnen von 1 zur Fensterauswertung für die Anzahl der Suchbegriffe im Fenster, durch Hinzurechnen von 2 zur Fensterauswertung für jeden Suchbegriff im Fenster, dem ein anderer Suchbegriff vorausgeht, und durch Hinzurechnen von 2 zur Fensterauswertung für jeden Suchbegriff im Fenster errechnet wird, dem ein anderer Suchbegriff vorausgeht, vor dem seinerseits wiederum ein anderer Suchbegriff steht.
- 41Procédé d'exploitation d'un système associatif de recherche et d'extraction de textes, selon la revendication 39, comprenant, en outre, l'étape consistant à permettre à l'utilisateur d'entrer des termes obligatoires, devant être présents dans chacun des documents extraits ;- dans lequel le compte de points de fenêtre est calculé en ajoutant un au compte de points de fenêtre pour le nombre de termes de recherche et de termes obligatoires dans la fenêtre, en ajoutant deux au compte de points de fenêtre pour chaque terme de recherche et chaque terme obligatoire dans la fenêtre qui est précédé d'un terme de recherche différent ou d'un terme obligatoire différent, et en ajoutant deux au compte de points de fenêtre pour chaque terme de recherche et chaque terme obligatoire dans la fenêtre, qui est précédé d'un terme de recherche différent ou d'un terme obligatoire différent qui est également précédé d'un terme de recherche différent ou d'un terme obligatoire différent. The method of operating an associative text search and retrieval system, according to claim 39, further comprising the step of allowing the user to enter mandatory terms which must be present in each of the retrieved documents;and wherein the window score is calculated by adding one to the window score for the number of search terms and mandatory terms in the window, adding two to the window score for each search term and mandatory term in the window that is preceded by a different search term or mandatory term, and by adding two to the window score for each search term and mandatory term in the window that is preceded by a different search term or mandatory term that is also preceded by a different search term or mandatory term. Verfahren zum Betrieb eines assoziativen Textsuch- und -retrievalsystems nach Anspruch 39, zu dem desweiteren der Verfahrensschritt gehört, dass dem Benutzer die Eingabe von obligatorischen Begriffen ermöglicht wird, die in jedem der abgerufenen Dokumente vorkommen müssen;und wobei die Fensterauswertung durch Hinzurechnen von 1 zur Fensterauswertung für die Anzahl der Suchbegriffe und obligatorischen Begriffe im Fenster, durch Hinzurechnen von 2 zur Fensterauswertung für jeden Suchbegriff und obligatorischen Begriff im Fenster, dem ein anderer Suchbegriff oder obligatorischer Begriff vorausgeht, und durch Hinzurechnen von 2 zur Fensterauswertung für jeden Suchbegriff und obligatorischen Begriff im Fenster errechnet wird, dem ein anderer Suchbegriff oder obligatorischer Begriff vorausgeht, vor dem seinerseits wiederum ein anderer Suchbegriff oder obligatorischer Begriff steht.
Independent claims41
72 paragraphs, as filed
Technical Field
This invention relates to the field of searching and retrieving text documents and more particularly to the field of using one or more computers to search a plurality of text documents in order to retrieve documents having particular terms and phrases.
Background Art
It is known that a large collection of text documents can be searched for particular keywords or phrases. A user can provide a single word or phrase or multiple words or phrases connected by Boolean connectors such as "AND" or "OR". However, in many cases, a user must be fairly sophisticated in order to perform searches of sufficient complexity in order to retrieve the exact class of documents that the user desires without having to perform an excessive number of searches.
Associative retrieval, a technique for information retrieval developed in the 1960s by Gerard Salton, addresses some of the shortcomings of Boolean searching. <u>Automatic Text Processing</u>, (published by Addison Wesley, New York, New York 1988, and written by Gerard Salton) provides a description of associative retrieval searching. The basic formula used in associative retrieval involves calculating a term weight for each term within a search request, and scoring documents in a collection based on the sum of the weights for the search request terms that occur within the document. The two basic weighting factors are known as the <i>term frequency -</i> tf -and the <i>inverse document frequency -</i> idf.
The term frequency is defined as the number of times the term occurs within a given document. Hence, the term frequency must be calculated for each document within the collection.
The inverse document frequency is defined as the inverse of the number of documents in the entire collection which contain the term. Therefore, if df documents within a collection of N documents contain a given term, the idf would be l/df. The idf can be normalized with respect to the number of documents by setting it to log(N/df). The idf is calculated for each search request term, but is constant for the collection and does not vary by document. The score for a given document is calculated by summing the product of the tf and the idfs for each search request term contained in the document.
However, there are many aspects of Associative Retrieval as described by Salton which render it impractical or unwieldy for large scale commercial use for searching and retrieving document in large databases. Furthermore, most of the work done in the area of Associative Retrieval has failed to adequately address aspects relating to human interaction and feedback. It is desirable, therefore, to provide an associative text search and retrieval system that overcomes the deficiencies of known systems.
Summary of the Invention
According to the present invention, a user provides a search description containing one or more search terms to an associative text search and retrieval system that searches a document database to retrieve documents containing at least one of the supplied search terms and then ranks each document using a ranking formula that varies according to the square of the term frequency of each of the search terms in the document. The ranking formula can also vary according to the inverse document frequency of each search term. The formula can also use a maximum term frequency to estimate the size of a document and the maximum document frequency to estimate the number of documents in a collection of documents, thus reducing the amount of processing needed to determine document size and the number of documents in a collection. The user can provide mandatory terms which cause the search to only return documents that contain those terms.
The system can employ a thesaurus to provide both synonyms and morphological variations of words. Phrases in the search description are detected using a table with a bitmap indicating possible positions of a word in a phrase and by using a tree having nodes corresponding to ID's associated with words in a phrase, the nodes being connected according to the order that the words can appear in a phrase. The system optimizes the search by distinguishing between noise words, which are not provided in an index for the documents, and frequently used terms, which are provided in the index but which are not used in the search.
The system can provide display options for the documents that are retrieved by the search, including displaying a window of text that contains the greatest number and diversity of search terms and mandatory terms. The system can also display a screen indicating which search terms are in which retrieved documents and can display a screen that indicates the importance of each term, which varies according to the inverse of the document frequency of each term. The documents can be sorted according to rank or according to a predetermined default method, such as reverse chronological order.
The system can include a plurality of interconnected processors and appropriate data therefore wherein some of the processors perform searches and others of the processors merge the search data and interact with the user.
Brief Description of Drawings
<ul id="ul0001" list-style="none"><li>FIG. 1 is a schematic view of a document searching system according to the invention.</li><li>FIG. 2 illustrates data stored in a physical document collection.</li><li>FIG. 3 illustrates data stored in an index for a physical document collection.</li><li>FIG. 4 illustrates a logical document collection comprised of a plurality of physical document collections.</li><li>FIG. 5 illustrates a logical document collection comprised of a plurality of subsets of physical document collections.</li><li>FIG. 6 is a screen illustrating entry of a search description.</li><li>FIG. 7 is a screen illustrating entry of search options.</li><li>FIG. 8 is a screen illustrating entry of mandatory terms.</li><li>FIG. 9 is a screen illustrating entry of restrictions.</li><li>FIG. 10 is a screen illustrating displaying of restrictions.</li><li>FIG. 11 is a screen illustrating entry of both mandatory terms and restrictions.</li><li>FIG. 12 is a screen illustrating a thesaurus function.</li><li>FIG. 13 is a screen illustrating selection of synonyms and/or morphological variations of a term using the thesaurus function.</li><li>FIG. 14 is a screen illustrating mandatory terms, restrictions, and thesaurus entries.</li><li>FIG. 15 is a screen illustrating options for viewing documents retrieved after a search.</li><li>FIG. 16 is a screen illustrating a "why" function.</li><li>FIG. 17 is a screen illustrating a "where" function.</li><li>FIG. 18 is a flowchart illustrating overall operation of the system according to the invention.</li><li>FIG. 19 shows a table used to detect phrases.</li><li>FIG. 20 shows a tree data structure used to detect phrases.</li><li>FIG. 21 shows a plurality of contiguous words from a search description:</li><li>FIG. 22 is a flowchart illustrating operation of a search algorithm.</li></ul>
Best Mode(s) for Carrying Out the Invention
Referring to FIG. 1, a document search and retrieval system 30 allows a user to search a subset of a plurality of documents for particular key words or phrases and retrieves, for the user to view, documents that correspond to 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 be provided access to 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 known to one of ordinary skill in the art, such as Model EX100 manufactured by Hitachi Data Systems of Santa Clara California.
Each of the SA'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 known to one of ordinary skill 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 SprintNet. Connected to the network 62 is a plurality of terminals 64-66 which provide user access to the system 30. The terminals 64-66 can be dumb terminals that simply process and display data inputs and outputs, or can be one of a variety of readily available stand-alone computers, such as an IBM or IBM-compatible Personal Computer. 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. Note that the number of components shown in FIG. 1 are for illustrative purposes only and that 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 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 known to one of ordinary skill 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 known to one of ordinary skill in the art, with the particular one of the SA's 42-44 connected thereto. It is also possible to configure the system, in a manner known to one of ordinary skill 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 known to one of ordinary skill in the art.
Each of the SA's 42-44 contains an application program, described in more detail hereinafter, 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.
Referring to FIG. 2, data 70 stored in each of the physical document collections 46-49 consists of document text 72, an index 74, and ancillary document information 76. The data 70 can be located in one or more files of a computer hard disk storage device. The document text 72 portion of the data 70 is comprised of character data representing text (such as ASCII or EBCDIC character data) for a plurality of documents. Each of the documents that are part of the document text 72 can be accessed individually. The index 74 contains a list of terms (words and phrases) that are present in all of the documents of the document text 72 along with the locations in the documents of those terms. The ancillary document information 76, described in more detail hereinafter, contains other information about the documents, such as the dates associated with the documents, the source of the documents, etc.
Referring to FIG. 3, the index 74 for a document collection comprises a plurality of entries that relate particular terms (term 1 - termn) to a plurality of locations (loc A - loc I). The table shown on the left-hand portion of FIG. 3 relates each term to a pair of pointers such that term1 is related to pointers P1 and P2, term2 is related to pointers P3 and P4, and termn is related to pointers Pr and Ps. The right-hand portion of FIG. 3 represents a list of all of the locations for all of the terms in the physical document collection. The pointers associated with each term point to the first and last locations in the list in order to correlate the terms in the text of the documents of the physical collection with the locations of the terms. For example, FIG. 3 shows term1 being located at locations loc A (pointed to by P1) through loc C (pointed to by P2) in the list. All of the locations in the list between the entry for loc A and the entry for loc C indicate separate locations for term1 in the document collection. Words and phrases which are so common as to be of little value in document searching, such as the word "of", are deemed "noise words" and are not included in the index. A list of noise words for each physical document collection is stored with the ancillary document information 76.
The SR's 32-34 search documents in a physical collection for particular terms by accessing the index 74. Terms in the search request are matched with terms in the index 74 in order to find specific documents in the document text 72 which contain the terms in the search request. Plural terms are depluralized and stored in their singular form. Terms that are submitted for a search are also depluralized. Depluralization is known in the art and is described in <u>Program</u>, Vol. 1, no. 3, pp. 130-137, July 1980.
A user does not typically search all of the documents of the system 30, but rather, chooses a subset of the documents to be searched prior to conducting the search. The subset, deemed a logical document collection, corresponds to a particular class or group of documents having one or more common attributes. For example, all of the written opinions of the U. S. Supreme court can be a logical collection. As described in more detail below, a logical collection can correspond to a physical collection, can be a subset of a physical collection, can be made up of a plurality of physical collections, or can be made up of a plurality of subsets of physical collections.
Referring to FIG. 4, a logical document collection 80 of written opinions of the U.S. Supreme Court is comprised of four physical collections 82-85: opinions from 1700-1900, opinions from 1901-1960, opinions from 1961-1992, and opinions from 1993. As described above, each of the physical collections 82-85 is comprised of a text section and an index. If a user is searching all U.S. Supreme Court cases, then the particular SA that is interacting with the user will use a lookup table to determine which physical document collections correspond to the selected logical document collection. The lookup table correlates logical document collections with physical document collections. The SA then sends commands to the appropriate SR(s) to perform the search on the appropriate physical document collection(s) and return the results.
Referring to FIG. 5, a logical document collection 90 represents written opinions of the U.S. Supreme Court that deal with tax issues. The logical document collection 90 does not physically exist by itself in a single location. Rather, the logical document collection 90 is comprised of a plurality of subsets 92-95 of the physical collections 82-85. The subset 92 corresponds to tax issue cases in the U.S. Supreme Court written opinions contained in the physical collection 82. Similarly, the subsets 93-95 respectively represent portions of the physical collections 83-85 that deal with tax issues
If a user selects the logical collection 90 for searching, the SA that is interacting with the user determines the physical collections 82-85 for searching, as discussed above, and also provides instructions to the SR(s) for constructing a filter that will ensure that only documents that are part of the logical collection will be retrieved. A filter is a bitmap or a list of documents that indicates to an SR which documents are to be searched and which documents are to be ignored. The SR(s) use the filters in order to only return results that correspond to documents that are part of the logical collection. Filters can be constructed by the SR's using tables or by examining the ancillary document information 76. For the logical collection 90, filters will cause the search to only return documents corresponding to the subsets 92-95 of the physical collections 82-85.
Referring to FIG. 6, a user screen 100 illustrates input of a search request. The screen 100 is displayed on a user terminal. A prompt 102 on the screen 100 instructs the user to enter a search description. The user types a search description at the terminal keyboard into an area 104 of the screen 100. The description can include quotes around groups of words to provide phrases. The quotes indicate that the phrases should be searched as a single term rather than searching the words of the phrase separately. Individual instances of the words will not match the search. A user presses the <ENTER> key at the terminal to indicate that he has completed entering the search description.
The SA's 42-44 processes the search description by instructing the SR(s) to separately search the logical collection chosen by the user for each word in the description (with some exceptions, noted later). Each of the terms in the search description that are not noise terms are searched separately by the SR(s). A document containing at least one of the terms matches the search. Each matched document is then rated, as described in more detail below, and retrieved for the user to view.
Referring to FIG. 7, a screen 110 is provided in response to the user entering a search description and pressing <ENTER>. The screen includes a search description 112a and a plurality of options 114-118. The first option 114 allows the user to Enter/Edit mandatory terms. The second option 115 allows the user to Enter/Edit restrictions. The third option 116 allows the user to use a thesaurus. The fourth option 117 allows the user to Edit the search description. The fifth option 118 allows the user to change the number of documents retrieved. Note that the order that the options 114-118 are presented on the screen is a design choice and that the options can be presented in any order without departing from the scope of the invention.
The options 114-118 allow the user to modify the characteristics of the documents retrieved by the search request. A user can select options repeatedly to modify the search before instructing the system to perform the search. The first, second, and third options 114-116 are described in more detail below. The fourth option 117 allows the user to modify the text of the search description 112a. The fifth option 118 allows the user to set the number of documents returned by the search. The number of documents returned by the search determines the maximum number of documents that the user will be able to view after conducting the search. The documents returned will be the ones with the highest ratings so that, for example, a setting of twenty-five will return to the user the twenty-five highest rated documents. Document rating is described in more detail below. Note that it is possible that the search can return a number of documents less than the number of return documents set using the fifth option 118 (including zero documents) if the number of documents that satisfy the search requirements is less than the number set by the fifth option 118.
Referring to FIG. 8, the screen 110 is shown after the user has selected the first option 114 for entering mandatory terms. A mandatory term is a term that must be in the document for the document to be returned on the search. Without entering one or more mandatory terms, the search returns documents that contain at least one term of the search description. If the user desires that all documents returned on the search contain at least one occurrence of a particular term or terms, then he selects the first option 114 and enters the mandatory terms at the terminal keyboard. In the screen 110 shown in FIG. 8, the user has indicated at a line 122 that the terms "TQM" and "usability testing" are mandatory terms. Therefore, all documents returned by the search are guaranteed to contain both the term "TQM" and the term "usability testing". Mandatory terms are implemented using filters similar to the filters used to construct logical document collections, discussed above.
It is not necessary that a mandatory term be part of the search description. The user can provide mandatory terms that are not part of the search description. Mandatory terms that are not part of the search description are not used in document ranking (described in detail hereinafter) but are used for other features which will be discussed herein.
Referring to FIG. 9, a screen 130 is provided in response to the user selecting the second option 115 for entering restrictions. The screen 130 shows a plurality of restrictions 132-136 that can be selected by the user. A restriction is a constraint on the documents returned by the search. For example, the first restriction 132 is a date restriction that indicates that the date of the documents that are returned by the search will be before or after a particular date. Note that the restrictions illustrated for the screen 130 are for a particular type of logical collection (written court opinions). For other types of logical collections and other types of documents, it may be appropriate to provide other types of restrictions for the user to select.
Referring to FIG. 10, the screen 110 is shown after restrictions have been entered. A line 142 on the screen 110 shows that, for this example, the documents returned on the search will be written opinions from the sixth circuit only and that all documents will have a date later than 10/1/92. The SA uses the restrictions to instruct the SR's to construct filters (as described above). The filters ensure that only documents meeting the requirements imposed by the restrictions are returned by the search.
Referring to FIG. 11, the screen 110 is shown with both the line 122 for mandatory terms and the line 142 for restrictions, thus illustrating that a user can enter both restrictions and mandatory terms for a search. Note that in this case, the SA will instruct the SR to build filters for both the mandatory terms and the restrictions.
Referring to FIG. 12, a screen 150 is provided in response to the user selecting the third option 116 (thesaurus) from the screen 110 shown in FIG. 7. Terms 152 from the search description are listed on the screen 150. The user views the terms 152 from the search description and selects term numbers 154 for which equivalent terms are desired.
Referring to FIG. 13, a screen 160 is provided to a user after the user selects the terms of the search description for which equivalent terms are desired. A portion 162 of the screen 160 shows the term from the search description. Another portion 164 of the screen 160 shows morphological variations of the term. A morphological variation of a word is a different form of the same word. For example, "condition", "conditioner", "conditioning", and "conditioned" are all morphological variations of each other. An other portion 166 of the screen 160 shows synonyms for the term from the search description. The user can choose any number and combination of morphological variations and synonyms from the screen 160. The thesaurus function is implemented using a lookup table that contains both synonyms and morphological variations which is stored as shown in FIG. 1 (elements 52-54), described above.
Referring to FIG. 14, the screen 110 is shown with the mandatory term line 122, the restrictions line 142 and a search description 112b that contains equivalents (shown in parenthesis) for some of the terms in the search description 112b. The equivalents are provided by the user after he has selected the third (thesaurus) option 116 and provided selected equivalent terms for particular terms in the search description 112b.
Referring to FIG. 15, a screen 170 is provided after completion of the search. Note that the mandatory term line 122 and the restriction line 142 are part of the screen 170. A term line 172 shows terms of the search description listed in order of term importance. Term importance discussed in more detail hereinafter. Note also that the term line 172 contains an asterisk followed by two terms 173 "FIRST" and "CASE". The asterisk indicates that the terms which follow are "frequently used terms". Any terms that are deemed frequently used terms are eliminated from further processing for the search because their value in locating the desired documents is deemed minimal.
For the search illustrated by the screen 170, the two terms 173 "FIRST" and "CASE" were deemed frequently used terms and hence were not searched. The ancillary data 76, shown in connection with FIG. 3, contains a table of frequently used terms for each physical document collection. The determination as to which terms go into the table is based on a variety of functional factors known to one of ordinary skill in the art, including, but not limited to, the frequency of occurrence of a term in the physical collection and the relationship between the meaning of a term and the nature of the document collection. Note that this mechanism is different from the "noise words", discussed above, since noise words aren't even listed in the index for the physical document collection. Frequently used terms are listed in the index. Furthermore, noise words are completely eliminated from the search description and will not be seen on the screen after completion of the search. Also note that if a frequently used term is a word, it will not be eliminated if it is part of a phrase. Phrases are discussed in more detail herein.
The screen 170 also contains a plurality of view options 174-177. Note that the order that the options 174-177 are presented on the screen is a design choice and that the options can be presented in any order without departing from the scope of the invention. Also, other viewing options that are not shown by one of the prompts 174-177, such as an option to cite the retrieved documents, may be available to the user by typing in the appropriate command to execute the option. The first option 174 allows the user to view a "SuperKWIC" window of the document. The second option 175 provides a screen which shows the user the location of the search terms in the documents. The third option 176 brings up a screen that indicates to the user why certain documents were chosen. The fourth option 177 provides the user with an opportunity to change the order that the retrieved documents are presented. By default, the retrieved documents are presented in ranked order (document ranking is described in more detail hereinafter).
By choosing the fourth option 177, the user can provide that the documents be presented in a different order, such as chronological order and/or from highest court to lowest court in the case of written court opinions. Each physical document collection has associated therewith, in the ancillary information data 76, predetermined information indicating how the documents can be presented. The predetermined information is based on a variety of functional factors known to one of ordinary skill in the art and varies according to the nature of a particular document collection.
The "SuperKWIC" window is a text window where the user can view the most indicative portion of the document based on the occurrences and diversity of mandatory terms and search terms. A text window is a viewable contiguous portion of a document having a particular length, such as, for example, fifteen lines. For each text window, a superkwic score is calculated and the window having the highest score becomes the SuperKWIC window. The score of a window is calculated as follows: For each search term and/or mandatory term in the window, the score is incremented by one. (Note that, as discussed above, a mandatory term is not necessarily a term of the search description.) For each search term and/or mandatory term in the window preceded by a different search term and/or mandatory term, the score is incremented by two. For each search term and/or mandatory term in the window that is preceded by a different search term and/or mandatory term which is itself preceded by yet a different search term and/or mandatory term, the score is again incremented by two.
Referring to FIG. 16, a screen 180 shows the result of choosing the third (why) option 176 illustrated in FIG. 15. A first column 182 of the screen 180 lists the terms of the search description. The terms are listed in order of term importance (discussed in detail below). A second column 184 shows the number of documents that were retrieved (returned for the search) that contain each term from the column 182. A column 186 shows the total number of documents that were examined that contain each term listed in the column 182. A column 188 shows the term importance of each of the terms listed in the column 182. Calculation of term importance is discussed in more detail below.
The terms listed in the column 182 are listed in order of term importance. At the top of the column 182 are mandatory terms (in this case, the term "DEFAMATION"). Following the mandatory terms are terms in decreasing order of importance, as shown in the column 188. At the bottom of the list are frequently used terms, which, as discussed above, are not part of the search. Note that the frequently used term "A" in column 182 shows "--" in the columns 184,186,188.
Referring to FIG. 17, a screen 190 is provided in response to a user selecting the second option (where) 175 shown in FIG. 15. The screen contains a column 192 that lists all of the search terms. A row 194 lists the retrieved document numbers (in this example the first through the twenty-fifth document). For each document that is returned by the search, the screen 190 indicates which terms were present in which documents by placing an asterisk in the column corresponding to a particular document and the row corresponding to a particular term. The absence of an asterisk in a particular row and column combination indicates that the document corresponding to the particular column does not contain the term corresponding to the particular row.
Referring to FIG. 18, a flowchart 200 illustrates the high level flow of the software. At a first step 202, the user enters a search description. Following the first step 202 is a second step 203 for determining phrases. At the step 203, phrases in the search description are detected. Phrases are groups of words that are most meaningful when searched as a group rather than individually, such as the phrase "product liability". The subsequent search is performed only on the detected phrases rather than on the individual words that make up the phrases. Phrase detection is described in more detail hereinafter.
After the step 203 is a test step 204 where a determination is made as to whether the user has provided a search option (i.e. one or more restrictions, mandatory terms, etc.) as described above. If the user has not provided a search option, control passes from the step 204 to another test step 205 where a determination is made as to whether the user has requested that the search be performed. For the embodiment of the invention illustrated herein, the user indicates a desire to perform a search by pressing the <ENTER> key without providing a search option. If the user has not requested that a search be performed, then control passes from the step 205 back to the step 204.
If the user has provided a search option at the step 204, control passes from the step 204 to a step 207 where the user option selection is processed, as described in detail above. Following the step 207 is a test step 208 where a test is made to determine if the option entered by the user is a modification of the search description or is not the first entry of a mandatory term. If so, control passes from the step 208 back to the step 204 in order to process more user inputs. Otherwise, control passes from the step 208 back to the step 203 in order to detect any additional phrases entered by the user prior to processing additional inputs at the step 204. Phrases are not detected after editing the description or after entering mandatory terms (except the first time) because the user may be selecting those options in order to circumvent automatic phrase detection.
If at the step 205 the user has indicated a desire to perform the search, control passes from the step 205 to a step 210 where the search is performed. The search procedure is described in more detail hereinafter. Following the step 210 is a step 212 where the search results are displayed, as described above.
Referring to FIG. 19, a table 220 is used to detect phrases. The table 220 contains entries for each word 222 that could be part of a phrase, a bitmap 223 indicating possible locations in a phrase of the associated word entry 222, and an ID 224 used for compressing the representations for each of the words by assigning a unique arbitrary number to represent each word. The table 220 is indexed by the word entries 222.
The bitmap entries 223 for each word indicate which positions the word could appear in a phrase. Each bitmap entry 223 is one byte (eight bits) long. A value of one at a particular bit position in the bitmap entry 223 indicates that the word 222 associated with the bitmap 223 could appear in the corresponding position in a phrase. Conversely, a value of zero in a particular position indicates that the word 222 could not appear at the same position in a phrase. For example, if a bitmap entry 223 for a word 222 contains a one bit in the first, third, and sixth bit positions and contains zero bits in all of the other positions, then the associated word 222 could be part of a phrase only if the word were the first, third, or sixth word of the phrase.
Referring to FIG. 20, a diagram of a tree structure 230 shows a root node 232, a plurality of level one nodes 234-236, a plurality of level two nodes 237-239, a plurality of level three nodes 240-242, and a plurality of level eight nodes 243-245. The break between level three and level eight represents a plurality of level four, level five, level six and level seven nodes that are part of the tree structure 230 but are not shown in FIG. 20. Each of the nodes corresponds to one of the ID's 224 from the table 220 of FIG. 19.
Each of the level one nodes 234-236 represents the first word of a phrase. Each of the level two nodes 237-239 represents the second word of a phrase. Generally, each of the level N nodes represents the Nth word in a phrase. Connections between the nodes represent the traversal of successive words in a phrase. A terminal node represents the last word in a phrase. Note that in the embodiment illustrated herein, all level eight nodes are terminal nodes, thus allowing the bitmap entries (described above) to be only one byte in length. In order to save memory space, the tree structure 230 is stored using the ID's 224 shown in FIG 19 rather than using the actual words.
Referring to FIG. 21, a successive group of words from the user-supplied search description can be examined for phrases. Initially, wordA is first examined by looking up wordA in the table 220 of FIG. 19 in order to obtain the bitmap entry therefor. If the bitmap entry for wordA indicates that wordA could never be the first word of a phrase (by having a zero in the first bit position), then wordA is deemed to be not part of a phrase. Otherwise, the ID entry corresponding to wordA is used to locate the level one node in the tree structure 230 corresponding to wordA.
Next, wordB is examined. If wordA is not part of a phrase, then wordB is examined in the same manner as wordA had been examined. Otherwise, wordB is examined by first checking the corresponding bitmap entry to see if wordB could be the second word of a phrase. If not, then wordA is deemed not to be part of a phrase and wordB is examined in the same manner as the previous examination of wordA. If, on the other hand, wordB could be the second word of a phrase, then the level one node corresponding to wordA is examined to see if it connects to a level two node corresponding to wordB. If not, then wordA is deemed to be not part of a phrase and wordB is examined in the manner that wordA had been previously examined. Otherwise, wordA and word B are deemed to be the first two words in a phrase and processing continues with wordC.
If wordC is found not to be part of the phrase, then the phrase consists of wordA followed by wordB and processing continues by testing if wordC is the first word of a new phrase. Otherwise, if wordC is found to be the third word of the phrase that begins with wordA and wordB, then processing continues by testing if wordD could be the fourth word of the phrase. As each complete phrase is detected, the word after the detected phrase is examined to determine if the word after the detected phrase could be the first word of a new phrase.
As discussed above in connection with FIG. 2 and FIG. 3, the indices for the physical document collections can contain phrases stored as a single term. For phrases not stored as a single term, it is possible to search words of the phrase separately. For example, the phrase "personal injury" can be searched by merging a search for the term "personal" and with a search for the term "injury" and then determining where the term "personal" precedes the term "injury" by one location in each of the documents.
Referring to FIG. 22, a flowchart 260 illustrates the search process. Steps shown on the left-hand side of the flowchart 260 represent steps that are executed by the SA while steps shown on the right-hand side of the flowchart 260 represent steps executed by one or more SR's that perform the actual search and retrieval. The dotted lines connecting steps on the left-hand side with steps on the right-hand side indicate the temporal relationship between steps executed by the SA and steps executed by the SR's. The flowchart 260 does not indicate dataflow between the SA's and the SR's.
Processing begins at a first step 262 where the SA provides the search terms and instructions for the filters to the SR's. Note that, as discussed above, the SA forms a logical collection of documents, selected by the user, by determining the appropriate physical collections and by providing the instructions to construct the appropriate filters. Other filter instructions can be provided in response to the user entering mandatory terms or restrictions.
Following the step 262 is a step 263 where the SR's that are part of the search each perform the low level search by accessing the indices of the physical collections that comprise the selected logical collections as discussed above. Following the step 263, the SA's receive document counts from the SR's at a step 264. Document counts are the number of document that contain each of the terms. Therefore, if there are a total of N terms being searched, there will be N document count values. Also at the step 263, the SR(s) return an indicator for any frequently used terms (described above) that will be eliminated from further consideration.
Following the step 264 is a step 265, where for each search term, the SA calculates dfi and maxdfi. The quantity dfi represents the number of documents that contain term i. The quantity maxdfi represents the maximum number of documents in which any of the terms of the search appear. Therefore, for any search, there is only a single value for maxdfi. Note that the SA calculates dfi and maxdfi since a user's logical document collection may comprise a plurality of physical collections at different SR's. No single SR could calculate dfi and maxdfi without knowing the document counts provided by the other SR's.
Following the step 265 is an optimization step 266 where any SR's which do not contain a single document that matches any of the search terms are eliminated from further consideration. That is, an SR, which is part of a physical document collection that comprises the user's selected logical collection, is eliminated from further processing if the SR does not contain any relevant documents.
Following the step 266 is a step 267 where dfi and maxdfi, calculated by the SA at the step 264, are provided to the SR's. Following the step 267 is a step 268 where each of the SR's calculates the rank of each document that was located at the search step 263. The rank of each document is determined by the following summation formula:<maths id="math0001" num=""><img file="EP0730765B1_D0001.tif" /></maths> where nt is the total number of search terms, ut is the number of those terms that occur in the document being ranked (each distinct term is counted once), and tfi is the number of times term i occurs in the document being ranked. The quantity oc represents the percentage of occurrences of search terms in a document floating text window containing the maximum number of search terms and is calculated by dividing the number of occurrences of search terms in the window by the total number of occurrences of search terms in the document and then multiplying the result by one hundred. The quantities dfi and maxdfi are discussed above. All logs are in base two. Note that the quantity log(tfi+1) is squared in the formula, thus weighting the ranking in favor of documents having the greatest term frequency.
At the step 268, each of the SR's returns to the SA the ranking for the top ranked N documents where N is the number of documents that the user requested to be returned on the search. The number of retrieved documents is set by the user in the manner described in detail above.
Following the step 268, the SA executes the step 269 where all of the document rankings returned by the SR's are merged and sorted by rank. All but the documents having the top N ranks, where N is the number of documents requested by the user, are eliminated from further consideration. The SA then requests the remaining documents from the appropriate SR(s). For example, if the user requests twenty-five documents, and if the logical document collection spans three SR's, then each of the three SR's would return twenty-five document rankings. The SA would merge the three sets of twenty-five document rankings each, sort them by rank, and then eliminate from consideration all but the top twenty-five documents. The SA would then request that the appropriate SR(s) return the top ranked documents.
Following the step 269 is a step 270, executed by the SR, where the SR(s) retrieve and return to the SA the top ranked documents requested by the SA at the step 269.
Following the step 270 is a step 271, executed by the SA, where the term importance for each of the terms is calculated. The term importance, which is discussed above in connection with the column 188 of FIG. 16, equals log<sub>2</sub>(maxdfi/dfi), normalized so that the values of term importance range from one to one hundred.
Following the step 271 is a step 272 where the documents are displayed, as discussed in detail above.
17 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17
Every citation, both waysCites: the store holds 4 of 5
| Document | Relation | Office | Cited during |
|---|---|---|---|
| CN103177122A | Cited by | China | Search report |
| DE102006001840A1 | Cited by | Germany | Search report |
| JP2013200795A | Cited by | Japan | Search report |
| DE102006001840B4 | Cited by | Germany | Search report |
| US4270182A | Cites | United States of America | – |
| US4787035A | Cites | United States of America | – |
| US5323316A | Cites | United States of America | – |
| WO9204681A | Cites | World Intellectual Property Organization (WIPO) | – |
18 members in 10 offices
Priority claims9
| Document | Office | Kind | Date |
|---|---|---|---|
| 155304 | United States of America | – | |
| 15530493 | United States of America | A | |
| 15530493 | United States of America | A | |
| 9413272 | United States of America | W | |
| 9413272 | United States of America | W | |
| 155304 | – | – | – |
| US19930155304 | – | – | – |
| US9413272 | – | – | – |
| WO1994US13272 | – | – | – |
Members18
| Document | Office | Kind | |
|---|---|---|---|
| CA2170251A1 | Canada | A1 | |
| WO9514973A1 | World Intellectual Property Organization (WIPO) | A1 | |
| EP0730765A1 | European Patent Office (EPO) | A1 | |
| EP0730765A4 | European Patent Office (EPO) | A4 | |
| US5692176A | United States of America | A | |
| US5761497A | United States of America | A | |
| US5771378A | United States of America | A | |
| JPH10508960A | Japan | A | |
| JP2001117946A | Japan | A | |
| EP0730765B1This record | European Patent Office (EPO) | B1 | |
| AT250244T | Austria | T | |
| ATE250244T1 | Austria | T1 | |
| DK0730765T3 | Denmark | T3 | |
| DE69433165D1 | Germany | D1 | |
| CA2170251C | Canada | C | |
| PT730765E | Portugal | E | |
| ES2204938T3 | Spain | T3 | |
| DE69433165T2 | Germany | T2 |
55 legal events, as 12 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Announcement of lapse in spainLapsedFD2A | FD2A | ES | |
| Ep patent has lapsedLapsedEUG | EUG | SE | |
| Right expiredExpiredMA | MA | GR | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| ExpiryMK07 | MK07 | AT | |
| Patent expiredExpiredMK9A | MK9A | IE | |
| Patent expired after termination of 20 yearsExpiredPE20 | PE20 | GB | |
| Discontinued because of reaching the maximum lifetime of a patentV4 | V4 | NL | |
| Annulment/lapse due to non-payment of fees, searched and examined patentLapsedMAXIMUM VALIDITY LIMIT REACHEDMM4A | MM4A | PT | |
| Patent ceasedCeasedPL | PL | CH | |
| Expiry of rightR071 | R071 | DE | |
| Ep patent expiredExpiredEUP | EUP | DK | |
| Expiry of rightR071 | R071 | DE | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Name/firm changedPFA | PFA | CH | |
| No opposition filedOpposition26N | 26N | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| Fr: translation filedET | ET | EP | |
| Definitive protectionFG2A | FG2A | ES | |
| Translation of granted ep patentGrantedTRGR | TRGR | SE | |
| Ep patent validated in greeceEP | EP | GR | |
| European patents granted designating irelandGrantedFG4D | FG4D | IE | |
| Corresponds to:REF | REF | EP | |
| European patent takes effect as a national patent in ch/liEP | EP | CH | |
| New agentNV | NV | CH | |
| Designated contracting statesAK | AK | EP | |
| European patent grantedGrantedFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Grant fee paidORIGINAL CODE: EPIDOSNIGR3GRAS | GRAS | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOS IGRAGRAH | GRAH | EP | |
| First examination report despatched17Q | 17Q | EP | |
| Supplementary search report drawn up and despatchedA4 | A4 | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 0730765
- Publication, DOCDB
- 0730765
- Publication, EPODOC
- EP0730765
- Application
- 95902589
- Application, DOCDB
- 95902589
- Application, EPODOC
- EP19950902589
Titles3
- German
- ASSOZIATIVES TEXTSUCH- UND WIEDERAUFFINDUNGSSYSTEM
- English
- ASSOCIATIVE TEXT SEARCH AND RETRIEVAL SYSTEM
- French
- SYSTEME ASSOCIATIF DE RECHERCHE ET DE RECUPERATION DE TEXTE
Classification
- CPC, 6
- G06F16/319
- G06F40/253
- G06F16/3346
- Y10S707/99936
- Y10S707/99933
- Y10S707/99935
- IPC, 2
- G06F17 27
- G06F17 30
Designated states17
- Contracting states, 17
- Austria
- Belgium
- Switzerland
- Germany
- Denmark
- Spain
- France
- United Kingdom
- Greece
- Ireland
- Italy
- Liechtenstein
- Luxembourg
- Monaco
- Netherlands (Kingdom of the)
- Portugal
- Sweden