CH704497B1 - Verfahren zum Benachrichtigen, Speichermedium mit Prozessoranweisungen für ein solches Verfahren. - Google Patents

Verfahren zum Benachrichtigen, Speichermedium mit Prozessoranweisungen für ein solches Verfahren. Download PDF

Info

Publication number
CH704497B1
CH704497B1 CH00193/02A CH1932002A CH704497B1 CH 704497 B1 CH704497 B1 CH 704497B1 CH 00193/02 A CH00193/02 A CH 00193/02A CH 1932002 A CH1932002 A CH 1932002A CH 704497 B1 CH704497 B1 CH 704497B1
Authority
CH
Switzerland
Prior art keywords
query
document
term
user
database
Prior art date
Application number
CH00193/02A
Other languages
English (en)
Inventor
Yuri Urazov
Evgueni Belitski
Original Assignee
Multex Com Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Multex Com Inc filed Critical Multex Com Inc
Publication of CH704497B1 publication Critical patent/CH704497B1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Verfahren und computerlesbares Speichermedium zum Benachrichtigen von Benutzern von einem Eintreffen eines Dokuments. Eine jeweilige Abfrage wird von jedem jeweiligen Benutzer (10) empfangen. Jede jeweilige Abfrage enthält mindestens einen Abfrageterm und mindestens eine Abfragebedingung. Für jede jeweilige Abfrage wird jeder der mindestens einen Abfrageterme in einer Datenbank nur gespeichert (2´), wenn ein Abfrageterm in Bezug zu anderen Abfragetermen die in der Datenbank gespeichert sind, eindeutig ist. Das Dokument, das einen Dokumententerm enthält, der mit dem Dokument in Zusammenhang steht, wird empfangen. Der Dokumententerm wird mit den gespeicherten Abfragetermen (20) verglichen. Für jede jeweilige Abfrage erfolgt als Funktion des Vergleichs zwischen dem Dokumententerm (Dokumententermen) und den gespeicherten Abfragetermen eine Bestimmung, ob alle Abfragebedingungen der jeweiligen Abfrage erfüllt sind. Für jede jeweilige Abfrage wird der jeweilige Benutzer von dem Eintreffen des Dokuments benachrichtigt (25), wenn alle Abfragebedingungen der jeweiligen Abfrage erfüllt sind.

Description

Gebiet der Erfindung
[0001] Die Erfindung betrifft Verfahren zum Benachrichtigen von Benutzern über ein Eintreffen eines Dokumentes sowie ein computerlesbares Speichermedium mit Prozessoranweisungen, um Benutzer von einem Eintreffen eines Dokumentes zu benachrichtigen.
Stand der Technik
[0002] Unternehmen aus dem Bereich der Finanzforschung, wie etwa Maklerfirmen und Anlagebanken, geben für das Erstellen, Drucken und Versenden von Tausenden von aufwendig illustrierten Forschungsberichten für Anleger (zum Beispiel Kunden, überörtliche Verkaufsbüros, Anlageberater, Makler, Portfolioverwalter usw.) grosse Geldsummen aus. Zur Kostenreduzierung können Forschungsunternehmen das Versenden dieser Berichte auf elektronischem Wege vornehmen, also von Computer zu Computer. Der elektronische Vertrieb ist, verglichen mit Verfahren, bei denen ein Ausdruck verwendet wird, kostengünstiger. Kommunikationsnetze, wie etwa das Internet, ermöglichen eine weltweite Distribution an einen grossen Personenkreis.
[0003] Die US 5 802 518 von Karaev et al. und die US 5 819 271 von Mahoney et al., die an dieser Stelle ausdrücklich durch Bezugnahme mit einbezogen werden, beschreiben elektronische Informationsdistributionssysteme, die es Fernnutzern erlauben, Information, die in elektronischer Form in einem Zentralserver, einem sogenannten Quellen-Server, gespeichert ist, zu empfangen, auf diese zuzugreifen und abzufragen. Die Benutzer kommunizieren mit dem Quellen-Server zum Beispiel über das Internet. Der Quellen-Server ist über einen Webserver mit dem Internet gekoppelt und enthält eine Mehrzahl von Datenbanken mit Information, die in elektronischer Form gespeichert ist, oder ist mit einer Mehrzahl von Datenbanken gekoppelt.
[0004] Der Quellen-Server ist mit einem oder mit mehreren entfernt angeordneten Beitrags-Arbeitsstationen verbunden. Die in dem Quellen-Server gespeicherte Information wird von den Beitrags-Arbeitsstationen in elektronischer Form empfangen. Bei der von den Beitrags-Arbeitsstationen empfangenen Information handelt es sich um Dateien mit einem oder mehreren Dokumenten. Diese Dokumente enthalten typischerweise Text, Daten, Diagramme, Graphiken, Tabellen und dergleichen oder eine Kombination davon, und sie können viele Formate aufweisen. Jegliche Information, die in digitaler Form gespeichert werden kann, wie etwa Fotos, Videos, Tonaufnahmen usw., können in den Dateien, die von den Beitrags-Arbeitsstationen empfangen werden, gespeichert sein. Die Dateien, die von den Beitrags-Arbeitsstationen empfangen werden, werden an einer zentralen Stelle in ein vorbestimmtes Format umgesetzt, zum Beispiel in ein Format für ausdruckbare Dokumente, oder ein allgemein bekanntes Betrachtungsformat, wie etwa das PDF-Format, und anschliessend dem Quellen-Server bereitgestellt. Jedes Dokument, das dem Quellen-Server zur Verfügung gestellt wird, kann ein Dokumentenprofil beinhalten, das Information enthält, die gemäss vordefinierten Feldern, die sich auf das Dokument beziehen, organisiert ist.
[0005] Jeder Benutzer verfügt über einen Benutzercomputer, wie etwa einen Personal Computer mit einem Intel Pentium-Prozessor und einem Modem. Der Benutzercomputer kann mit einer lokalen Speichervorrichtung ausgestattet sein, obwohl dies nicht zwingend erforderlich ist. Ein Beispiel für einen Computer ohne eine lokale Speichervorrichtung kann zum Beispiel ein Netzcomputer, ein «thin client» usw. sein. Der Benutzer kann zum Beispiel über das Internet, das Intranet, das Extranet und/oder einen Einwahlzugang den Computer mit dem Quellen-Server verbinden.
[0006] Der Quellen-Server kann den Benutzer mit einer Liste von neuen Dokumenten beliefern, die in letzter Zeit von dem Quellen-Server empfangen wurden, und zu deren Zugang der Benutzer autorisiert ist. Der Benutzer kann ebenfalls eine Liste von Dokumenten anfordern, die bestimmten nutzerspezifischen Suchkriterien entsprechen. Eine Liste der Dokumente, die mit den Suchkriterien übereinstimmen, und für deren Zugang der Benutzer autorisiert ist, wird dem Benutzercomputer zur Verfügung gestellt. Der Benutzer kann dann Dokumente von dieser Liste auswählen, anfordern und einsehen.
[0007] Der Webserver ist mit mindestens zwei im Quellen-Server enthaltenen Datenbanksuchmaschinen gekoppelt. Mindestens eine Suchmaschine führt mindestens eine Volltextsuche in Textdokumenten durch. Mindestens eine andere Suchmaschine führt mindestens eine Suche in vordefinierten Feldern von Informationen durch. Wenn dem Webserver eine Suchabfrage von dem Benutzer vorliegt, wird bestimmt, was für eine Art von Suche angefordert ist, und eine entsprechend Abfrage (zum Beispiel Volltext, Suche in vordefinierten Feldern) wird formuliert und an die entsprechende Suchmaschine gegeben. Die Suchmaschine gibt einen Satz von Ergebnissen an den Webserver zurück. Typischerweise enthält der Satz von Ergebnissen eine Liste von Dokumenten, die die Abfrage erfüllen und zu deren Zugang der Benutzer autorisiert ist.
[0008] Wenn ein externes Ereignis auftritt, also ein «Nachrichten»-Ereignis, müssen die Benutzer (zum Beispiel Anleger) sofort darüber in Kenntnis gesetzt werden, um richtig auf die Nachrichten reagieren zu können. Die in dem Karaev-Patent ́518 und dem Mahoney Patent ́271 beschriebenen Systeme setzen die Benutzer von Ereignissen in Kenntnis, indem ein «gespeicherte Abfrage»-Verfahren verwendet wird. Das «gespeicherte Abfragen»-Verfahren speichert zuerst eine Benutzerabfrage und führt dann periodisch die «gespeicherte Abfrage» durch. Ein eingehendes Dokument wird mit jedem vorhandenen Benutzerprofil verglichen. Jedes Benutzerprofil ist kennzeichnend für zum Beispiel den Dokumententyp oder die Nachrichten, an denen der Benutzer interessiert ist. Dieser Lösungsansatz ist jedoch zeitaufwendig. Entsprechend sind neue Verfahren und Systeme gefragt, um einem Benutzer basierend auf einer Benutzerabfrage alternative Wege der Bereitstellung von Daten zu bieten.
Zusammenfassung der Erfindung
[0009] Die Erfindung betrifft ein Verfahren, um Benutzer über das Eintreffen eines Dokuments in Kenntnis zu setzen. Dabei wird von jedem jeweiligen Benutzer eine entsprechende Abfrage empfangen. Jede entsprechende Abfrage enthält mindestens einen Abfrageterm und mindestens eine Abfragebedingung. Für jede jeweilige Abfrage wird jeder mindestens ein Abfrageterm in einer Datenbank nur gespeichert, wenn ein Abfrageterm in Bezug zu anderen Abfragetermen, die in der Datenbank gespeichert sind, eindeutig ist. Das Dokument, welches einen Dokumententerm enthält, der mit dem Dokument assoziiert ist, wird empfangen. Der Dokumententerm wird mit den gespeicherten Abfragetermen verglichen, und für jede jeweilige Abfrage wird als Funktion des Vergleichs zwischen dem Dokumententerm (bzw. den Dokumententermen) und dem mindestens einen gespeicherten Abfrageterm bestimmt, ob die mindestens eine Abfragebedingung der jeweiligen Abfrage erfüllt ist. Wenn alle Abfragebedingungen der jeweiligen Abfrage erfüllt sind, wird der Benutzer über den Eingang des Dokuments in Kenntnis gesetzt.
[0010] Ferner betrifft die Erfindung ein computerlesbares Speichermedium, im Folgenden auch Speichervorrichtung genannt, das mindestens einen Satz von Anweisungen speichert, wobei der Satz von Anweisungen von einem Prozessor ausgeführt werden kann, um Benutzer von einem Eintreffen eines Dokuments zu benachrichtigen. Der Satz von Anweisungen führt folgende Schritte durch: Empfangen einer jeweiligen Abfrage von jedem jeweiligen Benutzer, wobei die jeweilige Abfrage mindestens einen Abfrageterm und mindestens eine Abfragebedingung enthält; Speichern jedes mindestens einen Abfrageterms für jede jeweilige Abfrage in einer Datenbank, wenn der eine Abfrageterm in Bezug zu anderen Abfragetermen, die in der Datenbank gespeichert sind, eindeutig ist; Empfangen eines Dokuments, wobei ein Dokumententerm mit dem Dokument assoziiert ist; Vergleichen des Dokumententerms mit den gespeicherten Abfragetermen; Bestimmen, ob alle Abfragebedingungen der jeweiligen Abfrage als Funktion des Vergleichsschritts erfüllt sind, für jede jeweilige Abfrage; und Benachrichtigen des jeweiligen Benutzers von dem Eintreffen des Dokuments für jede jeweilige Abfrage, wenn alle Abfragebedingungen der jeweiligen Abfrage erfüllt sind.
Figurenkurzbeschreibung
[0011] <tb>Fig. 1<sep>zeigt ein Ausführungsbeispiel einer Anordnung mit einem computerlesbaren Speichermedium gemäss der Erfindung. <tb>Fig. 2<sep>zeit ein alternatives Ausführungsbeispiel der Anordnung mit einem computerlesbaren Speichermedium gemäss der Erfindung. <tb>Fig. 3A<sep>zeigt ein Ausführungsbeispiel einer Dokumentenmanagementdatenbank; <tb>Fig. 3B<sep>zeigt einen Dokumententerm der in Fig. 3Agezeigten Dokumentenmanagementdatenbank. <tb>Fig. 4A<sep>zeigt ein Ausführungsbeispiel einer Benutzerprofildatenbank. <tb>Fig. 4B<sep>zeigt einen Abfrageterm der in Fig. 4Agezeigten Benutzerprofildatenbank. <tb>Fig. 5A<sep>zeigt ein Ausführungsbeispiel einer endlichen Automatendatenbank. <tb>Fig. 5B<sep>zeigt einen FAD-Term der in Fig. 5Agezeigten endlichen Automatendatenbank. <tb>Fig. 6<sep>zeigt ein Ausführungsbeispiel eines Verfahrens gemäss der Erfindung. <tb>Fig. 7<sep>zeigt ein Ausführungsbeispiel eines Verfahrens zur Erzeugung der endlichen Automatendatenbank gemäss der Erfindung. <tb>Fig. 8<sep>zeigt ein Ausführungsbeispiel eines Verfahrens zur Optimierung der Leistungsfähigkeit des Systems. <tb>Fig. 9<sep>zeigt ein alternatives Ausführungsbeispiel der Anordnung mit einem computerlesbaren Speichermedium gemäss der Erfindung.
Detaillierte Beschreibung
Gesamtübersicht
[0012] Fig. 1 zeigt eine Gesamtdarstellung einer Anordnung mit einem computerlesbaren Speichermedium gemäss einem Ausführungsbeispiel der Erfindung. Die Anordnung, welche im Folgenden mit System 1 bezeichnet wird, enthält einen Zentralserver 2, der mit einem Benutzercomputer 10 und einer Beitrags-Arbeitsstation 15 über ein Netz 12 verbunden ist. Das Kommunikationsnetz 12 kann zum Beispiel das Internet, das Intranet, das Extranet, ein herkömmliches Telefonnetz, ein drahtloses Netz, ein LAN oder ein WAN, ein virtuelles Netz usw. sein.
[0013] Über die Beitrags-Arbeitsstation werden Dokumente (zum Beispiel Daten, Forschungsberichte, etc.) dem Zentralserver 2 über das Netz 12 zur Verfügung gestellt (also verteilt). Der Zentralserver 2 empfängt und speichert die Dokumente. Falls ein neu empfangenes Dokument für den Benutzer am Benutzercomputer 10 von Interesse ist, (was durch vordefinierte Kriterien bestimmt wird) und der Benutzer Zugangsberechtigung hat, setzt gemäss der Erfindung der Zentralserver 2 den Benutzer von dem Vorhandensein des Dokuments auf dem Zentralserver 2 gemäss einer vorbestimmten Benachrichtigungsprozedur in Kenntnis. Sobald der Benutzer die Benachrichtigung erhalten hat, kann er auf den Zentralserver 2 über das Netz 12 zugreifen und das spezielle Dokument erhalten.
[0014] Der hier verwendete Begriff «Benutzer» umfasst alle Endbenutzer, die zum Empfang und zum Zugriff auf Information (und/oder zur Benachrichtigung) gemäss der Erfindung berechtigt sind, wie etwa Kunden von Makler- und Anlagebanken, Angestellte von Makler- und Anlagebanken, Anlageberater, Makler, Bankiers, Portfolio- und Fondsmanager, Journalisten, Analysten, Wirtschaftsfachleute, Universitätsprofessoren, MBA-Studenten usw. Natürlich ist die Erfindung nicht auf den Einsatz in Systemen für die Finanzforschung beschränkt. Folglich kann ein Benutzer irgendein beliebiger Endbenutzer mit Zugriffsberechtigung sein. Ebenso ist zu bemerken, dass das Dokument einer Rechenvorrichtung, einem Handelsprogramm, einer Nachrichtenagentur, einer Bank, einer Behördenstelle usw. zur Verfügung gestellt werden kann.
[0015] Der Zentralserver 2 des Systems 1 kann mindestens eine Speichervorrichtung 85, einen Prozessor 80 (einschliesslich einen Speicher und andere Peripherievorrichtungen) und eine Kommunikationsanordnung 87 (zum Beispiel ein Modem, eine Netzwerkkarte usw.) enthalten. Die Speichervorrichtung 85 kann eine Dokumentenmanagementdatenbank («DMD») 200, eine Benutzerprofildatenbank («UPD») 220 und eine endliche Automatendatenbank («FAD») 250 enthalten, die nachfolgend genauer beschrieben werden.
Dokumentenmanagementdatenbank
[0016] Die Dokumentendatenbank oder die DMD 200 speichert Dokumente und dokumentenbezogene Information, die von der Beitrags-Arbeitsstation 15 über das Netz 12 erhalten wird. Wie in Fig. 3A gezeigt, speichert die DMD 200 insbesondere eine Mehrzahl von Dokumentendatensätzen 201. Jeder Dokumentendatensatz 201 der DMD 200 kann zum Beispiel ein Referenzfeld 205, ein Dokumentenfeld 210 und einen strukturierten Datensatz 215 enthalten. Das Referenzfeld 205 enthält eine eindeutige Dokumentenreferenznummer, die jedem Dokument zugewiesen ist.
[0017] Das Dokumentenfeld 210 enthält das eigentliche Dokument. Das Dokument kann irgendwelche vordefinierten Daten enthalten, zum Beispiel Nachrichten, Meldungen, Forschungsberichte, Gesprächsnotizen usw. Das Dokument kann Text, Daten, Diagramme, Graphiken, Tabellen und dergleichen enthalten und Kombinationen davon, und es kann in irgendeinem Format vorliegen. Dabei kann jegliche Information, die in digitaler Form gespeichert werden kann, wie etwa Fotos, Videos, Tonaufzeichnungen, usw. an die Dokumente angehängt sein. Falls das Dokument nicht richtig formatiert ist, kann der Zentralserver 2 das Dokument in ein vorbestimmtes Format umsetzen, zum Beispiel in ein Format für ausdruckbare Dokumente, oder ein allgemein bekanntes Betrachtungsformat, wie etwa das PDF-Format.
[0018] Jedes Dokument, das dem Zentralserver 2 übermittelt wird, kann ein Dokumentenprofil enthalten, das in dem strukturierten Datensatz 215 gespeichert wird. Das Dokumentenprofil enthält Information, die gemäss mindestens einem der Dokumententerme 300 organisiert ist. Fig. 3Bzeigt ein Ausführungsbeispiel des Dokumententerms 300, der zum Beispiel zwei Felder enthalten kann, nämlich ein erstes Dokumentenfeld 305 und ein zweites Dokumentenfeld 310. Das erste Dokumentenfeld 305 kann ein vordefiniertes Feld enthalten, während das zweite Dokumentenfeld 310 ein Schlüsselwort enthalten kann, das aus dem Dokument gewonnen wird. Falls zum Beispiel das entsprechende Dokument IBM Corp. erwähnt, kann das vordefinierte Feld «Firma» enthalten, und das Schlüsselwort kann «IBM» lauten. Der Dokumententerm 300 kann z.B. wie folgt ausgedrückt werden: «(Firma(IBM))», «Firma=IBM», oder «Firma; IBM».
[0019] Das vordefinierte Feld kann zum Beispiel ein Aktiensymbol, ein Firmenname, eine bestimmte Industrie, ein geographischer Ort, ein Datum, ein Dokumententyp, ein Dokumententext, usw. sein. Einem Fachmann auf diesem Gebiet ist klar, dass die oben genannte Liste nur beispielhaft ist und dass andere Felder vorgesehen werden können. Die Verfügbarkeit der Felder kann zum Beispiel von dem Dokumententyp abhängen und sofort gemäss einer vorbestimmten Prozedur eingestellt werden.
[0020] Die Erfindung ist nicht auf die vordefinierten Felder beschränkt. Weitere vordefinierte Felder können für den Benutzer verfügbar sein. Die weiteren vordefinierten Felder können einen bestimmten Text in irgendeinem Bereich des Dokuments enthalten. Folglich kann der Zentralserver 2 das mitgelieferte Dokumentenprofil modifizieren, um weitere vordefinierte Felder zu enthalten, die nicht von der Beitrags-Arbeitsstation 15 verwendet werden, die das Dokumentenprofil bereitstellt. Falls darüber hinaus das an den Zentralserver 2 gelieferte Dokument überhaupt kein Dokumentenprofil aufweist, kann der Zentralserver 2 ein Dokumentenprofil durch Parsing des vordefinierten Feldes bzw. Felder und des weiteren vordefinierten Feldes bzw. Felder und des entsprechenden Schlüsselwortes bzw. Schlüsselwörter von dem Dokument erstellen.
[0021] Wie in Fig. 3A gezeigt, kann der Dokumentendatensatz 201 zum Beispiel «101094; IBM. wpd; Symbol (IBM), Industrie(Hardware)» enthalten.
[0022] Der Dokumentendatensatz 201 zeigt an, dass die Dokumentenreferenznummer 101094 ist, und dass das Dokument in der Speichervorrichtung 85 als Datei IBM.wpd gespeichert ist. Ferner zeigt der Dokumentendatensatz 201 an, dass das Dokument die Dokumententerme 300 «Symbol(IBM), Industrie(Hardware)» enthält.
Benutzerprofildatenbank
[0023] Die Speichervorrichtung 85 speichert ebenfalls die Benutzerprofildatenbank oder UPD. Die UPD enthält spezielle Information hinsichtlich jedes Benutzers. Fig. 4Azeigt ein Ausführungsbeispiel der UPD 220, die eine Mehrzahl von Benutzerdatensätzen 221 enthält. Jeder Benutzerdatensatz 221 enthält zum Beispiel vier Felder, nämlich ein Benutzeridentifikationsfeld 225, ein Abfrageidentifikationsfeld 228, ein Abfragefeld 230 und ein Benachrichtigungsfeld 235.
[0024] Das Benutzeridentifikationsfeld 225 kann eine vorbestimmte Information zur Identifikation des Benutzers enthalten. Derartige Information kann zum Beispiel eine eindeutige Benutzeridentifikation und ein entsprechendes Passwort umfassen. Darüber hinaus kann es auch die Zugangsberechtigungen des Benutzers enthalten. Fig. 4Azeigt ein Beispiel von zwei Benutzerdatensätzen, wobei einer mit dem Benutzer «XYZ» und der andere mit dem Benutzer «ABS» assoziiert ist.
[0025] Jeder Benutzerdatensatz kann «Benutzerabfragen» enthalten, die in Form von logischen Ausdrücken gesetzt werden, zum Beispiel Kriterien für das Auswählen von Dokumenten, für die der Benutzer eine Benachrichtigung erhalten möchte. Zum Beispiel kann der Benutzer XYZ eine Benachrichtigung für alle neu eingegangenen Dokumente wünschen, die mit dem Tickersymbol IBM und Hardwareindustrie assoziiert sind. Entsprechend würde ein Abfragefeld 230, das mit dem Benutzerdatensatz des Benutzers XYZ verbunden ist, zum Beispiel einen Logikausdruck «Symbol(IBM) UND Industrie (Hardware)» enthalten.
[0026] In diesem Fall kann «Symbol» ein vordefinierter Dokumententerm sein. Zum Beispiel kann ein Verteiler eines Dokuments in einem Dokumentenprofil spezifizieren, dass das Tickersymbol «IBM» mit dem Dokument in Zusammenhang steht. Die Abfragen in den Benutzerdatensätzen sind jedoch nicht auf die vordefinierten Dokumententerme beschränkt. Zum Beispiel kann ein anderer Logikausdruck in dem Abfragefeld 230 «Text(IBM)» sein, der anzeigt, dass der Benutzer daran interessiert ist, eine Benachrichtigung über jedes Dokument zu erhalten, das «IBM» irgendwo in dem Dokument enthält.
[0027] Die Benutzerabfragen können mit einem eindeutigen Identifizierer markiert sein. Wie in Fig. 4Agezeigt, ist zum Beispiel die Abfrage des Benutzers XYZ mit «10191» markiert, was in einem Abfrageidentifikationsfeld 228 des Benutzerdatensatzes des Benutzers XYZ gespeichert sein kann.
[0028] Ein Benutzerdatensatz kann verschiedene Benutzerabfragen für jeden Benutzer enthalten. Wie in Fig. 4Agezeigt, enthält zum Beispiel der Benutzerdatensatz für den Benutzer ABS drei Abfragen, die jeweils eine eindeutige Identifikationsnummer aufweisen. Die Abfrage 67190 enthält den Ausdruck «Symbol(IBM)», die Abfrage 2698, den Ausdruck «Symbol(APPL)» und die Abfrage 110676 den Ausdruck «Symbol(ZSE)».
[0029] Das Benachrichtigungsfeld 235 enthält Daten, die es einem Benutzer ermöglichen ein bestimmtes Benachrichtigungsverfahren zu spezifizieren, das ausgeführt werden soll, um den Benutzer zu benachrichtigen, wenn das Dokument, das von Interesse ist, von dem Zentralserver 2 empfangen wird. Der Benutzer kann zum Beispiel über E-Mail, Fax, Telefon, drahtlose Kommunikation etc. benachrichtigt werden. Der Benutzer kann eine bestimmte Benachrichtigungsnachricht für eine bestimmte Abfrage spezifizieren. Die Benachrichtigungsnachricht kann zum Beispiel einen Dokumententitel, die Abfrageterme 320, das Datum, die Dokumentenreferenznummer etc. enthalten.
[0030] Das Benachrichtigungsverfahren kann bei Vorliegen einer bestimmten Bedingung geändert werden. Falls zum Beispiel das Dokument eine bestimmte dringende Information enthält, kann der Benutzer über ein Fax benachrichtigt werden, und im Übrigen durch eine E-Mail. Darüber hinaus kann der Benutzer in Echtzeit periodisch und/oder gemäss einem vorbestimmten Zeitplan benachrichtigt werden. Ausserdem kann die Form der Benachrichtigung so einfach sein wie die Bereitstellung einer Dokumentennummer und einer Ankunftszeit des Dokuments, oder durch Bereitstellen einer Kopie des Dokuments. Die «Timing»-Information der Benachrichtigung und die «Form»-Information der Benachrichtigung können z.B. in der UPD 220 im Zusammenhang mit jedem Benutzerdatensatz gespeichert sein, oder in einer separaten Datei oder Datenbank.
[0031] Wie in Fig. 4A gezeigt, möchte der Benutzer XYZ von den Dokumenten, die die Abfrage «10191» erfüllen, bevorzugt über eine E-Mail-Nachricht an die Adresse «Benutzerxyz@XYZ.com» benachrichtigt werden. Darüber hinaus zieht es der Benutzer ABS vor, von Dokumenten, die die Abfrage «67190» erfüllen, über einen Pager (Telefonnummer 917-209-8888) in Kenntnis gesetzt zu werden. Der Benutzer ABS möchte ebenfalls über Dokumente, die die Abfrage «2698» oder die Abfrage «110676» erfüllen, mittels Faxübertragung (Faxnummer 212-425-5288) benachrichtigt werden.
[0032] Die UPD 220 kann vom Benutzer aktualisiert werden. Der Benutzer kann über das Netz 12 auf den Zentralserver 2 zugreifen. Nach zum Beispiel einer entsprechenden Identifikation und einem Passwort kann der Zentralserver 2 dem Benutzer erlauben, den Benutzerdatensatz 221, der in Zusammenhang mit dem Benutzer steht (oder anderen Benutzern, falls der Benutzer zum Beispiel ein Systemadministrator ist), zu erzeugen und zu aktualisieren.
[0033] Wie oben erwähnt, liegen die Benutzerabfragen in der Form von Logikausdrücken vor. Fig. 4Bzeigt, dass der Abfrageterm 320 eigentlich zum Beispiel drei Teile enthalten kann, nämlich ein erstes Abfragefeld 325, ein zweites Abfragefeld 330 und ein drittes Abfragefeld 335. Das erste Abfragefeld 325 kann ein vordefiniertes Feld enthalten (oder zum Beispiel einen «nicht vordefiniertes Feld»-Term, wie etwa «Text»), wie oben beschrieben, und das zweite Abfragefeld 330 kann ein bestimmtes Schlüsselwort enthalten. Falls der Logikausdruck mehr als einen Abfrageterm 320 enthält, können die Abfrageterme 320 kombiniert werden, indem mindestens ein logischer Operator verwendet wird (zum Beispiel UND, ODER, NOT usw.).
[0034] Das dritte Abfragefeld 335 kann «1» oder «0» enthalten, wobei «1» gleichbedeutend mit «wahr» und «0» gleichbedeutend mit «falsch» ist. Als Vorgabe sind alle Abfrageterme 320 der UPD 230 auf «0» gesetzt. Zum Beispiel kann der Abfrageterm 320 «Symbol; IBM; 0» enthalten, was bedeutet, dass der Benutzer nach einem bestimmten Dokument sucht, welches ein Symbol IBM enthält, und dass dieser Abfrageterm nicht in dem durchsuchten Dokument gefunden wurde.
Endliche Automatendatenbank
[0035] Die Speichervorrichtung 85 enthält auch die endliche Automatendatenbank («FAD») 250. Die FAD 250 liefert ein Mittel, mit dem das System schnell und effizient bestimmen kann, welcher Benutzer von einem neu empfangenen Dokument benachrichtigt werden soll. Die FAD 250 kombiniert zum Beispiel Suchterme für alle Benutzer (oder eine Untermenge davon), so dass neu empfangene Dokumente schnell verarbeitet werden können.
[0036] Wie in Fig. 5A gezeigt, enthält die FAD 250 eine Mehrzahl von FAD-Datensätzen 251. Jeder Datensatz 251 enthält zum Beispiel ein Termfeld 255 und ein Zeigerfeld 260. Wie in Fig. 5Bgezeigt, enthält der FAD-Term 350 ein erstes Abfragefeld 325 (vorbestimmtes Feld) und das zweite Abfragefeld 330 (Schlüsselwort) einen Abfrageterm 320. Gemäss dem Ausführungsbeispiel sind keine FAD-Terme 350 doppelt vorhanden. Das Zeigerfeld 260 speichert einen Zeiger auf das Abfrageidentifikationsfeld 228 der entsprechenden Abfrage der UPD 220.
[0037] Fig. 7 zeigt ein Ausführungsbeispiel eines Verfahrens zum Erzeugen der FAD 250 gemäss der Erfindung. Der Benutzer kann die UPD 220 aktualisieren (Schritt 700), indem ein neuer Abfrageterm 320 zugefügt wird und/oder indem ein vorhandener Abfrageterm 320 gelöscht wird. Eine Benutzeränderung des vorhandenen Abfrageterms 320 kann als Löschen des vorhandenen Abfrageterms 320 und Hinzufügen eines neuen Abfrageterms 320 interpretiert werden.
[0038] Falls der Benutzer die vorhandene Abfrage 320 aus der UPD 220 löscht (Schritt 705) bestimmt gemäss dem Ausführungsbeispiel der Erfindung der Zentralserver 2, ob der entsprechende FAD Datensatz 251 der FAD 250 einen einzelnen Zeiger enthält, der in dem Zeigerfeld 260 gespeichert ist (Schritt 715). Falls das Zeigerfeld 260 nur einen Zeiger aufweist, bedeutet dies, dass der entsprechende FAD-Datensatz 251 nur auf den Abfrageterm 320 zeigt, der von dem Benutzer gelöscht wurde. Folglich wird der FAD-Datensatz 251, der zu dem gelöschtem Abfrageterm 320 korrespondiert, gelöscht (Schritt 720). Falls das Zeigerfeld 260 mehr als einen Zeiger enthält, dann wird der Zeiger des gelöschten Abfrageterms 320 von dem Zeigerfeld 260 entfernt (Schritt 725).
[0039] Falls der Benutzer einen neuen Abfrageterm 320 der UPD 220 hinzufügt (Schritt 710), vergleicht der Zentralserver 2 den neuen Abfrageterm 320 mit den Termen, die bereits in der FAD 250 enthalten sind (Schritt 735). Falls der neue Abfrageterm 320 nicht in der FAD 250 existiert, dann wird ein neuer FAD-Datensatz 251 erzeugt (Schritt 740). Der neue FAD-Datensatz 251 würde dann das erste Abfragefeld 325 und das zweite Abfragefeld 330 des neuen Abfrageterms 320 enthalten. Darüber hinaus wird die Abfrageidentifikation des neuen Abfrageterms 320 in dem Zeigerfeld 260 gespeichert.
[0040] Falls jedoch die FAD 250 einen existierenden FAD-Datensatz 251 aufweist, der bereits den neuen Abfrageterm 320 enthält, dann wird kein neuer FAD-Datensatz 251 erzeugt (Schritt 735). Stattdessen wird das Zeigerfeld 260 des bereits vorhandenen FAD-Datensatzes 251 aktualisiert. Speziell würde das Zeigerfeld 260 des vorhandenen FAD-Datensatzes 251 einen zusätzlichen Zeiger enthalten, der auf das Abfrageidentifikationsfeld 228 des neuen Abfrageterms 320 zeigt.
[0041] Die FAD 250 kann sofort aktualisiert werden (indem zum Beispiel der neue Abfrageterm 320 erzeugt wird, und/oder indem der vorhandene Abfrageterm 320 gelöscht wird). Die FAD 250 kann auch periodisch aktualisiert werden oder in einem Stapelverarbeitungsverfahren, das zum Beispiel einmal täglich durchgeführt wird.
Empfang eines neuen Dokuments
[0042] Figur 6 zeigt ein Ausführungsbeispiel eines Verfahrens, das von dem in Fig. 1 gezeigten System 1 durchgeführt wird, sobald ein neues Dokument von einer Beitrags-Arbeitsstation empfangen wird.
[0043] Ein bestimmtes Dokument (welches zum Beispiel bestimmte Information über IBM enthält), wird von der Beitrags-Arbeitsstation 15 durch den Zentralserver 2 (Schritt 600) empfangen. Das Dokument kann über das Netz 12 oder alternativ durch manuelle Lieferung an den Zentralserver 2 empfangen werden.
[0044] Sobald das Dokument empfangen ist, erzeugt der Zentralserver 2 einen neuen Dokumentendatensatz 201 in der DMD 200 (Schritt 605). Speziell wird das Dokument in dem Dokumentenfeld 210 des neuen Dokumentendatensatzes 201 gespeichert. Darüber hinaus wird eine Referenznummer dem Dokument zugewiesen und in dem Referenzfeld 205 des Dokumentendatensatzes 201 gespeichert. Ein Dokumentenprofil kann den Dokumententerm 300 enthalten (zum Beispiel «Symbol(IBM)»), der in dem strukturierten Datensatz 215 gespeichert wird.
[0045] Der Zentralserver 2 setzt als Vorgabe alle dritten Abfragefelder 335 der UPD 220 auf «0». Anschliessend vergleicht der Zentralserver 2 die Dokumententerme 300 (zum Beispiel «Symbol(IBM)») mit den FAD-Termen 350, die in der FAD 250 (wie in Fig. 5A gezeigt) gespeichert sind, um zu bestimmen, ob sie identisch sind (Schritt 615). Der Dokumententerm 300 ist mit dem FAD-Term 350 identisch, wenn der Inhalt des ersten Dokumentenfelds 305 des Dokumententerms 300 identisch mit dem vordefinierten Feld des FAD-Terms 350 ist und wenn der Inhalt des zweiten Dokumentenfelds 310 des Dokumententerms 300 identisch ist mit dem Schlüsselwort des FAD-Terms 350. Der Dokumententerm 300 («Symbol (IBM)») und der FAD-Term 350 («Symbol(IBM)») haben z.B. ein identisches vordefiniertes Feld «Symbol» und ein identisches Schlüsselwort «IBM». Folglich sind der Dokumententerm 300 und der FAD-Term 350 identisch.
[0046] Falls der Dokumententerm 300 mit dem FAD-Term 350 identisch ist, dann wird der Evaluierungsterm (der in dem dritten Abfragefeld 335 des Abfrageterms 320 gespeichert ist), der zu dem FAD-Term 350 korrespondiert, auf «1» gesetzt (Schritt 620). Anderenfalls bleibt der Evaluierungsterm auf «0» (Schritt 625). Speziell wird eine Verbindung zwischen dem Abfrageterm 320 und dem FAD-Term 350 gebildet, indem der Zeiger, der in dem Zeigerfeld 260 des FAD-Terms 350 gespeichert ist, verwendet wird. Dieses Zeigerfeld 260 zeigt an, welche spezielle Abfrage der UPD 220 den mit dem Dokument 300 identischen FAD-Term 350 enthält.
[0047] Sobald der Zentralserver 2 z.B. bestimmt, dass der FAD-Term 350 «Symbol(IBM)» mit dem Dokumententerm 300 «Symbol(IBM)» identisch ist, überprüft der Zentralserver 2 das Zeigerfeld 260 des FAD-Terms 350 «Symbol(IBM)». Das Zeigerfeld 260 (wie in Fig. 5A gezeigt) enthält den Zeiger auf die Abfrage 10191 und die Abfrage 67190 der UPD 200 (wie in Fig. 4Agezeigt). Die entsprechenden Evaluierungsterme «Symbol(IBM)» der Abfragen 10191 und 67190 werden auf «1» gesetzt.
[0048] Sobald alle Dokumententerme 300 überprüft sind, leitet der Zentralserver 2 ein Auswerteverfahren ein. Der Zentralserver 2 überprüft jede Dokumentenabfrage der UPD 220, um zu bestimmen, ob der Logikausdruck der Dokumentenabfrage gültig ist (Schritt 630). Der Zentralserver 2 überprüft zum Beispiel die Abfragen 10191, 67190, 2698 und 110676 der UPD 220 (wie in Fig. 4A gezeigt). In diesem Fall ist nur der Logikausdruck der Abfrage 67190 gültig, da sie nur den Term «Symbol(IBM)» enthält, die mit dem Dokumententerm 300 «Symbol(IBM)» identisch ist. Es wird darauf hingewiesen, dass die Abfrage 10191 nicht gültig ist, da das Dokument keinen Dokumententerm 300 enthält, der mit dem Abfrageterm «Industrie(Hardware)» identisch ist.
[0049] Falls der Logikausdruck der Dokumentenabfrage gültig ist, beginnt der Zentralserver 2 mit einer Benachrichtigungsprozedur (Schritt 635). Insbesondere kann der Zentralserver 2 die Benachrichtigungsprozedur für den Benutzer einleiten, der mit der Anfrage 67190 in Zusammenhang steht.
[0050] Die Benachrichtigungsprozedur benachrichtigt den Benutzer gemäss den Vorlieben des Benutzers, die in dem Benachrichtigungsfeld 235 gespeichert sind, darüber, dass das Dokument, das für den Benutzer von Interesse ist, von dem System 1 empfangen wurde. Der Zentralserver 2 kann eine Benachrichtigungsnachricht senden, die die Benutzeridentifikation, die Dokumentenreferenznummer usw. (oder das Dokument selbst) enthält. Sobald der Benutzer benachrichtigt ist, kann er zum Beispiel über das Netz 12 auf das Dokument zugreifen. Die Benachrichtigung an den Benutzer ABS, von dem die Abfrage 67190 ausgeht, kann über einen Pager 917-209-8888 übertragen werden.
[0051] Es sollte beachtet werden, dass das System 1 eine herkömmliche Warteschlange enthält (zum Beispiel wie sie durch Microsoft Message Queue (MSMQ) generiert wird), um das neue Dokument bzw. die neuen Dokumente, die Abfragen des Benutzers usw. vorübergehend zu speichern. Die Warteschlange(n) wird (werden) verwendet, wenn zum Beispiel die Menge der eingehenden neuen Dokumente grösser ist als ein vorbestimmter Wert. Die Warteschlange kann an irgendeiner vorbestimmten Stelle in dem System 1 verwendet werden, zum Beispiel zwischen dem Netz 12 und dem Zentralserver 2, um die neuen Dokumente zu speichern.
[0052] Ein Vorteil des Systems 1, das die Warteschlange verwendet, liegt darin, dass das System 1 ein optimales Gleichgewicht zwischen seinen Komponenten liefert. Darüber hinaus wird die Zuverlässigkeit und Verlässlichkeit des Systems 1 verbessert, wenn zum Beispiel einige seiner Komponenten zeitweise ausfallen. In dem Fall eines Ausfalls laufen eingehende Dokumente in der Warteschlange auf und können später, wenn die ausgefallene Komponente wieder normal arbeitet, verarbeitet werden.
Alternatives Ausführungsbeispiel
[0053] In einem alternativen Ausführungsbeispiel enthält die Anordnung mit dem computerlesbaren Speichermedium gemäss der Erfindung, welche im Folgenden mit System 1 ́ bezeichnet wird, eine Mehrzahl von Servern. Wie in Fig. 2gezeigt, enthält das System 1 ́ insbesondere einen Zentralserver 2 ́, der mit dem Benutzercomputer 10 und der Beitrags-Arbeitsstation 15 über das Kommunikationsnetz 12 kommuniziert. Der Zentralserver 2 ́ speichert die DMD 200.
[0054] Das System 1 ́ enthält ebenfalls einen Präferenzserver 7, der eine Benutzerbenachrichtigungspräferenzdatenbank («UNPD») speichert, in der Benachrichtigungsprozeduren für den Benutzer enthalten sind. Insbesondere enthält die UNPD das Abfrageidentifikationsfeld 228 und das Benachrichtigungsfeld 235.
[0055] Darüber hinaus enthält das System 1 ́ einen Profilserver 5, der eine Benutzerprofilabfragedatenbank («UPQD») speichert. Die UPQD enthält das Identifikationsfeld 225, das Abfrageidentifikationsfeld 228 und das Benachrichtigungsfeld 235. Der Profilserver 5 erzeugt ebenfalls die FAD 250 als Funktion der UPQD.
[0056] Ein Vergleichsserver 20 des Systems 1 ́ vergleicht die Dokumententerme der DMD 200 mit den FAD-Termen 350 der FAD 250, um Übereinstimmungen festzustellen. Der Vergleichsserver 20 bestimmt, welche logischen Ausdrücke der UPQD gültig sind. Der Benachrichtigungsserver 25 des Systems 1 ́ führt eine entsprechende Benachrichtigungsprozedur der UNPD für die Benutzerabfragen durch, deren logische Ausdrücke wahr sind. Der Benachrichtigungsserver 25 führt die Benachrichtigungsprozedur durch, indem ein E-Mail-Server 30, ein Faxserver 35, und/oder ein Pagerserver 45 verwendet werden.
Ein anderes alternatives Ausführungsbeispiel
[0057] Gemäss einem anderen alternativen Ausführungsbeispiel kann die Anordnung, bzw. das System 1 (und/oder das System 1 ́), ein Verfahren durchführen, das eine Selbstüberwachungsoperation enthält, um dessen Leistungsfähigkeit zu optimieren. Fig. 8 zeigt ein Ausführungsbeispiel des Optimierungsverfahrens. Das System 1 führt die Selbstüberwachungsoperation durch, um zu bestimmen, ob es eine vorbestimmte Lastschwelle erreicht hat (Schritt 800). Die vorbestimmte Lastschwelle kann z.B. als Funktion eines vorbestimmten Dokumentenvolumens, einer vorbestimmten Anzahl von Benutzerabfragen, einer vorbestimmten Menge an Übereinstimmung oder einer vorbestimmten Menge an Benachrichtigungsnachrichten bestimmt werden.
[0058] Falls die vorbestimmte Lastschwelle erreicht ist (Schritt 805), stellt sich das System 1 selbst gemäss einem vorbestimmten Verfahren ein (Schritt 810). Insbesondere kann das System 1 eine Mehrzahl von Spiegelbildsystemen erzeugen, wobei jedes Spiegelbildsystem die DMD 200, die UPD 220 und die FAD 250 enthält. Jedes der Mehrzahl von Spiegelbildsystemen enthält eine identische Kopie der Datenbanken 200, 220, 250 und ist in der Lage, Funktionen durchzuführen, die mit den Funktionen des Systems 1 identisch sind. Die Spiegelbildsysteme können gleichzeitig arbeiten (also parallel). Die Verwendung des Spiegelbildsystems erlaubt eine Optimierung der Übereinstimmungsprüfung in Echtzeit und der Benachrichtigung.
[0059] Falls die vorbestimmte Dokumentenmenge festgestellt wird, kann das System eine vorbestimmte Anzahl von Spiegelbildsystemen erzeugen. Jedes Spiegelbildsystem enthält eine identische Kopie der UPD 220 und FAD 250, jedoch kann die DMD 200 verschieden sein. Die DMD 200 des Systems 1 kann zum Beispiel von den Spiegelbildsystemen geteilt werden.
[0060] Falls die vorbestimmte Anzahl von Benutzeranfragen festgestellt ist, werden in ähnlicher Weise die Benutzerabfragen des Systems 1 auf die Spiegelbildsysteme aufgeteilt. Falls ausserdem die vorbestimmte Anzahl von Übereinstimmungen festgestellt wird, können die DMD 200, die UPD 220 und die FAD 250 des Systems 1 gemäss einem vorbestimmten Verfahren auf die Spiegelbildsysteme aufgeteilt werden. Falls die vorbestimmte Anzahl von Benachrichtigungsnachrichten festgestellt wird, kann die Benachrichtigungspräferenz und/oder die UPD 220 auf die Spiegelbildsysteme aufgeteilt werden.
[0061] Es zu beachten, dass es nicht erforderlich ist, eine bestimmte Datenbank des Systems 1 gleichmässig aufzuteilen. Vielmehr kann die spezielle Datenbank des Systems 1 gemäss einem vorbestimmten Verfahren geteilt werden. Ein Vorteil einer solchen Aufteilung der Datenbank bzw. der Datenbanken liegt in der Optimierung der Leistungsfähigkeit des Systems 1.
[0062] Fig. 9 zeigt ein weiteres Ausführungsbeispiel der Anordnung mit dem computerlesbaren Speichermedium gemäss der Erfindung, welche im Folgenden mit System 1 ́ ́ bezeichnet wird und welche eine einzelne DMD 200 und eine Mehrzahl von UPDs 220 und FADs 250 enthält. Die UPDs 220 und die FADs 250 sind in einem einzelnen Datenbanksatz kombiniert. Jeder Datenbanksatz und/oder ein bestimmter Datenbanksatz können in der Speichervorrichtung 85 des Zentralservers 2 gespeichert sein oder alternativ auf separaten Servern.
[0063] Wie oben bereits erwähnt, kann jeder Datenbanksatz des Systems 1 ́ ́ die UPD 220x und die entsprechende FAD 250x enthalten. Zum Beispiel kann das System 1 ́ ́ den Datenbanksatz A enthalten, der eine UPD 220A und eine entsprechende FAD 250A aufweist, einen Datenbanksatz B, der eine UPD 220B und eine entsprechende FAD 250B aufweist, und einen Datenbanksatz C, der eine UPD 220C und eine entsprechende FAD 250C aufweist. Eine Kombination der UPDs 220A, 220B, 220C kann zum Beispiel äquivalent zu der UPD 220 des Systems 1 sein.
[0064] Das System 1 ́ ́ kann die Mehrzahl von Datenbanksätzen erzeugen, wenn die vorbestimmte Lastschwelle (zum Beispiel wie oben beschrieben) erreicht wird. Wenn beispielsweise die vorher festgelegte Menge von Benutzerabfragen festgestellt wird, kann das System 1 ́ ́ die Datensätze A, B und C erzeugen. Das System 1 ́ ́ teilt/splittet gemäss einem vorbestimmten Verfahren die UPD 220 in die UPDs 220A, 220B und 220C. Die entsprechenden FADs 250A, 250B und 250C werden basierend auf den UPDs 220A, 220B und 220C erzeugt.
[0065] Wenn der Benutzer eine neue Abfrage vornimmt, wird die neue Abfrage einem bestimmten Datenbanksatz in Übereinstimmung mit vorbestimmten Bedingungen (oder einer Bedingung) zugewiesen. Falls die UPD 220A überlastet ist (wenn zum Beispiel ein bestimmter Parameter des Datenbanksatzes A überschritten wird, Benutzerabfragen, Benutzerprofile, gültige Logikausdrücke usw.), dann wird die neue Abfrage der UPD 220B zugewiesen. Anschliessend erzeugt das System 1 ́ ́ die FAD 250B, um die Abfrage gemäss dem oben beschriebenen Verfahren aufzunehmen.
[0066] Wenn alle bestehenden Datenbanksätze A, B und C überlastet sind, kann das System 1 ́ ́ einen zusätzlichen Datenbanksatz D erzeugen, der die gleiche Struktur wie die Datenbanksätze A, B und C aufweist. Der Datenbanksatz D, der eine UPD 220D und eine FAD 250D enthalten kann, kann die neue Abfrage speichern. Darüber hinaus kann eine vorbestimmte Anzahl von bestimmten Abfragen der UPDs 220A, 220B und 220C zur UPD 220D übertragen werden, um die Leistungsfähigkeit des Systems 1 ́ ́ zu optimieren. Das System 1 ́ ́ kann zum Beispiel Abfragen von einem bestimmten Benutzer oder Abfragen, die identische Ausdrücke aufweisen, in einem einzelnen Datenbanksatz speichern.
[0067] Das System 1 ́ ́ kann die Anzahl der Datenbanksätze gemäss der gegenwärtigen Last (zum Beispiel in Echtzeit) des Systems 1 ́ ́ erhöhen. In ähnlicher Weise kann das System 1 ́ ́ die Zahl der Datenbanksätze löschen oder einstellen, falls die Last des bestimmten Datenbanksatzes kleiner ist als eine weitere vorbestimmte Lastschwelle. Falls der Datenbanksatz A z.B. 1000 Abfragen aufweist, der Datenbanksatz B 8000 und der Datenbanksatz C 300, kann das System 1 ́ ́ zum Beispiel derart eingestellt werden, dass jeder der Datenbanksätze A, B, C 1100 Abfragen enthält. Alternativ kann das System 1 ́ ́ den Satz C entfernen und die Abfragen zwischen den Datenbanksätzen A und B aufteilen.
[0068] Ein Vorteil der Erfindung gegenüber herkömmlichen Systemen besteht darin, dass das System 1 Benutzerabfragen parallel anstatt sequentiell abwickeln kann. Die Erfindung erlaubt ein gleichzeitiges «Matching» von Benutzerabfragen. Es ist nützlich für Systeme, die mit einer grossen Menge von bestimmten Dokumenten und Benutzerabfragen umgehen.

Claims (16)

1. Verfahren zum Benachrichtigen von Benutzern über ein Eintreffen eines Dokuments, mit folgenden Schritten: (a) Empfangen einer jeweiligen Abfrage von jedem jeweiligen einzelnen der Benutzer, wobei jede jeweilige Abfrage mindestens einen Abfrageterm und mindestens eine Abfragebedingung enthält; (b) Speichern des mindestens einen Abfrageterms für jede jeweilige Abfrage in einer Datenbank, wenn der eine Abfrageterm in Bezug zu anderen Abfragetermen, die in der Datenbank gespeichert sind, eindeutig ist; (c) Empfangen eines Dokuments, wobei ein Dokumententerm mit dem Dokument assoziiert ist; (d) Vergleichen des Dokumententerms mit den gespeicherten Abfragetermen; (e) Bestimmen, ob alle Abfragebedingungen der jeweiligen Abfrage als Funktion von Schritt (d) erfüllt sind, für jede jeweilige Abfrage; und (f) Benachrichtigen des jeweiligen Benutzers von dem Eintreffen des Dokuments für jede jeweilige Abfrage, wenn alle der mindestens einen Abfragebedingung der jeweiligen Abfrage erfüllt sind.
2. Verfahren nach Anspruch 1, ferner mit den Schritten: (g) Erzeugen einer Mehrzahl von weiteren Datenbanken als Funktion der Datenbank, falls mindestens eine vorbestimmte Bedingung erfüllt ist; und (h) gleichzeitiges Durchführen der Schritte (c) – (f) für jede der Mehrzahl von weiteren Datenbanken.
3. Verfahren nach Anspruch 2, wobei eine der Mehrzahl von weiteren Datenbanken den mindestens einen Abfrageterm speichert, der bezüglich einer anderen der Mehrzahl von weiteren Datenbanken eindeutig ist.
4. Verfahren nach Anspruch 2, ferner mit dem Schritt (i) Erzeugen einer Kopie des Dokuments für jede der Mehrzahl von weiteren Datenbanken.
5. Verfahren nach Anspruch 2, wobei die mindestens eine vorbestimmte Bedingung erfüllt ist, falls mindestens eine Anzahl von Benutzern grösser ist als eine vorbestimmte Anzahl von Benutzern, eine Anzahl von jeweiligen Abfragen grösser ist als eine vorbestimmte Anzahl von Abfragen, eine Anzahl von Dokumenten grösser ist als eine vorbestimmte Anzahl von Dokumenten, eine Anzahl des mindestens einen Abfrageterms grösser ist als eine Anzahl von vorbestimmten Abfragetermen; eine Anzahl der mindestens einen Abfragebedingung grösser ist als eine vorbestimmte Anzahl von Abfragebedingungen, und eine Anzahl der mindestens einen erfüllten Bedingung grösser ist als eine vorbestimmte Anzahl von erfüllten Bedingungen.
6. Verfahren nach Anspruch 1, ferner mit dem Schritt (j) Assoziieren eines jeweiligen Benachrichtigungsverfahren mit jedem der jeweiligen Benutzer, wobei der Benachrichtigungsschritt den Schritt zum Benachrichtigen des einen der jeweiligen Benutzer über das jeweilige Benachrichtigungsverfahren enthält.
7. Verfahren nach Anspruch 6, ferner mit dem Schritt (k) Auswählen des jeweiligen Benachrichtigungsverfahrens durch jeden jeweiligen Benutzer.
8. Verfahren nach Anspruch 6, wobei das jeweilige Benachrichtigungsverfahren mindestens eine Faxübertragung, eine E-Mail-Benachrichtigung und/oder ein Paging-Verfahren ist.
9. Computerlesbares Speichermedium zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 8, das mindestens einen Satz von Anweisungen speichert, wobei der Satz von Anweisungen von einem Prozessor ausgeführt werden kann, um Benutzer von einem Eintreffen eines Dokuments zu benachrichtigen, wobei der Satz von Anweisungen folgende Schritte durchführt: Empfangen einer jeweiligen Abfrage von jedem jeweiligen Benutzer, wobei die jeweilige Abfrage mindestens einen Abfrageterm und mindestens eine Abfragebedingung enthält; Speichern jedes mindestens einen Abfrageterms für jede jeweilige Abfrage in einer Datenbank, wenn der eine Abfrageterm in Bezug zu anderen Abfragetermen, die in der Datenbank gespeichert sind, eindeutig ist; Empfangen eines Dokuments, wobei ein Dokumententerm mit dem Dokument assoziiert ist; Vergleichen des Dokumententerms mit den gespeicherten Abfragetermen; Bestimmen, ob alle Abfragebedingungen der jeweiligen Abfrage als Funktion des Vergleichsschritts erfüllt sind, für jede jeweilige Abfrage; und Benachrichtigen des jeweiligen Benutzers von dem Eintreffen des Dokuments für jede jeweilige Abfrage, wenn alle Abfragebedingungen der jeweiligen Abfrage erfüllt sind.
10. Computerlesbares Speichermedium nach Anspruch 9, derart ausgestaltet, dass der Satz von Anweisungen weiter die Schritte: Erzeugen einer Mehrzahl von weiteren Datenbanken als Funktion der Datenbank, falls mindestens eine vorbestimmte Bedingung erfüllt ist; und gleichzeitiges Durchführen der Schritte Empfangen, Vergleichen, Bestimmen, Benachrichtigen für jede der Mehrzahl von weiteren Datenbanken, ausführt.
11. Computerlesbares Speichermedium nach Anspruch 10, derart ausgestaltet, dass eine der Mehrzahl von weiteren Datenbanken den mindestens einen Abfrageterm speichert, der bezüglich einer anderen der Mehrzahl von weiteren Datenbanken eindeutig ist.
12. Computerlesbares Speichermedium nach Anspruch 10, derart ausgestaltet, dass der Satz von Anweisungen weiter den Schritt ausführt: Erzeugen einer Kopie des Dokuments für jede der Mehrzahl von weiteren Datenbanken.
13. Computerlesbares Speichermedium nach Anspruch 10, derart ausgestaltet, dass die mindestens eine vorbestimmte Bedingung erfüllt ist, falls mindestens eine Anzahl von Benutzern grösser ist als eine vorbestimmte Anzahl von Benutzern, eine Anzahl von jeweiligen Abfragen grösser ist als eine vorbestimmte Anzahl von Abfragen, eine Anzahl von Dokumenten grösser ist als eine vorbestimmte Anzahl von Dokumenten, eine Anzahl des mindestens einen Abfrageterms grösser ist als eine Anzahl von vorbestimmten Abfragetermen; eine Anzahl der mindestens einen Abfragebedingung grösser ist als eine vorbestimmte Anzahl von Abfragebedingungen, und eine Anzahl der mindestens einen erfüllten Bedingung grösser ist als eine vorbestimmte Anzahl von erfüllten Bedingungen.
14. Computerlesbares Speichermedium nach Anspruch 9, derart ausgestaltet, dass der Satz von Anweisungen weiter den Schritt: Assoziieren eines jeweiligen Benachrichtigungsverfahrens mit jedem der jeweiligen Benutzer ausführt, wobei der Benachrichtigungsschritt den Schritt der Benachrichtigung des einen der jeweiligen Benutzer über das jeweilige Benachrichtigungsverfahren enthält.
15. Computerlesbares Speichermedium nach Anspruch 14, derart ausgestaltet, dass der Satz von Anweisungen weiter den Schritt: Auswählen des jeweiligen Benachrichtigungsverfahrens durch jeden jeweiligen Benutzer ausführt.
16. Computerlesbares Speichermedium nach Anspruch 14, derart ausgestaltet, dass das jeweilige Benachrichtigungsverfahren mindestens eine Faxübertragung, eine E-Mail-Benachrichtigung und/oder ein Paging-Verfahren umfasst.
CH00193/02A 1999-04-12 2000-04-04 Verfahren zum Benachrichtigen, Speichermedium mit Prozessoranweisungen für ein solches Verfahren. CH704497B1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/290,121 US6351747B1 (en) 1999-04-12 1999-04-12 Method and system for providing data to a user based on a user's query
PCT/US2000/008933 WO2000062200A1 (en) 1999-04-12 2000-04-04 A method and system for providing data to a user based on a user's query

Publications (1)

Publication Number Publication Date
CH704497B1 true CH704497B1 (de) 2012-08-31

Family

ID=23114615

Family Applications (1)

Application Number Title Priority Date Filing Date
CH00193/02A CH704497B1 (de) 1999-04-12 2000-04-04 Verfahren zum Benachrichtigen, Speichermedium mit Prozessoranweisungen für ein solches Verfahren.

Country Status (9)

Country Link
US (1) US6351747B1 (de)
EP (1) EP1203312A4 (de)
JP (3) JP2002541589A (de)
AU (1) AU760709B2 (de)
CA (1) CA2369509A1 (de)
CH (1) CH704497B1 (de)
GB (1) GB2363660B (de)
HK (1) HK1040794B (de)
WO (1) WO2000062200A1 (de)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020002563A1 (en) * 1999-08-23 2002-01-03 Mary M. Bendik Document management systems and methods
US7330824B1 (en) 2000-02-25 2008-02-12 Navic Systems, Inc. Method and system for content profiling and activation
US6714992B1 (en) * 2000-02-25 2004-03-30 Navic Systems, Inc. Method and system for embedded network device installation
US7392281B1 (en) 2000-02-25 2008-06-24 Navic Systems, Inc. System and method for providing guaranteed delivery of messages to embedded devices over a data network
US6845396B1 (en) * 2000-02-25 2005-01-18 Navic Systems, Inc. Method and system for content deployment and activation
US20020198996A1 (en) * 2000-03-16 2002-12-26 Padmanabhan Sreenivasan Flexible failover policies in high availability computing systems
GB2361555A (en) * 2000-04-17 2001-10-24 Apama Inc Method of evaluating queries against received event information
US6832215B2 (en) * 2000-07-21 2004-12-14 Microsoft Corporation Method for redirecting the source of a data object displayed in an HTML document
US6804662B1 (en) * 2000-10-27 2004-10-12 Plumtree Software, Inc. Method and apparatus for query and analysis
US7047273B2 (en) 2000-11-28 2006-05-16 Navic Systems, Inc. Load balancing in set top cable box environment
US9508101B1 (en) 2001-09-21 2016-11-29 Google Inc. Systems and methods for providing stock ticker information
FR2831688B1 (fr) * 2001-10-30 2004-07-30 Canon Kk Procede et dispositif de traitement d'une requete d'obtention de donnees multimedia
US9332058B2 (en) * 2001-11-01 2016-05-03 Benhov Gmbh, Llc Local agent for remote file access system
US20030093467A1 (en) * 2001-11-01 2003-05-15 Flying Wireless, Inc. Server for remote file access system
US7469226B2 (en) * 2001-12-11 2008-12-23 Recognia Incorporated Method of providing a financial event identification service
US8799489B2 (en) * 2002-06-27 2014-08-05 Siebel Systems, Inc. Multi-user system with dynamic data source selection
US20060010080A1 (en) * 2004-03-05 2006-01-12 Weild David Iv Dispute resolution method and system
US20050203769A1 (en) * 2004-03-05 2005-09-15 Weild David Iv Data structure with market capitalization breakdown
WO2005116979A2 (en) * 2004-05-17 2005-12-08 Visible Path Corporation System and method for enforcing privacy in social networks
WO2006015237A2 (en) * 2004-07-28 2006-02-09 Visible Path Corporation Systems and methods for using social networks for the distribution of communications
US20060048053A1 (en) * 2004-08-30 2006-03-02 Xerox Corporation Individually personalized customized report document system
US20060149578A1 (en) * 2004-12-30 2006-07-06 Weild David Iv Paid-for research method and system
US20060149657A1 (en) * 2004-12-30 2006-07-06 Weild David Iv Paid-for research method and system
US20060161448A1 (en) * 2004-12-30 2006-07-20 The National Research Exchange Method and system for rating / ranking third parties
US20060149579A1 (en) * 2004-12-30 2006-07-06 The National Research Exchange Monitoring method and system
US20080071737A1 (en) * 2005-08-01 2008-03-20 Frank John Williams Method for retrieving searched results
US7818340B1 (en) * 2005-12-01 2010-10-19 Peter Warren Computer-implemented method and system for enabling network communication using sponsored chat links
US8732186B2 (en) 2005-12-01 2014-05-20 Peter Warren Computer-implemented method and system for enabling communication between networked users based on common characteristics
US7979460B2 (en) 2006-02-15 2011-07-12 Sony Computer Entainment America Inc. Systems and methods for server management
CN101196928A (zh) * 2007-12-29 2008-06-11 杭州华三通信技术有限公司 一种内容搜索方法、系统以及引擎分发单元
US8510273B2 (en) * 2009-09-02 2013-08-13 Teradata Us, Inc. System, method, and computer-readable medium to facilitate application of arrival rate qualifications to missed throughput server level goals
EP3158474A1 (de) 2014-06-18 2017-04-26 Google, Inc. Verfahren, systeme und medien zur suche nach videoinhalt

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5220657A (en) 1987-12-02 1993-06-15 Xerox Corporation Updating local copy of shared data in a collaborative system
US5592664A (en) * 1991-07-29 1997-01-07 Borland International Inc. Database server system with methods for alerting clients of occurrence of database server events of interest to the clients
JP3343989B2 (ja) * 1993-05-17 2002-11-11 株式会社日立製作所 文書検索方法
US5644714A (en) * 1994-01-14 1997-07-01 Elonex Plc, Ltd. Video collection and distribution system with interested item notification and download on demand
JPH07334522A (ja) * 1994-06-13 1995-12-22 Hitachi Ltd 文書予約検索システム
JPH08101872A (ja) * 1994-09-30 1996-04-16 Pfu Ltd 施設予約管理システム
US5873077A (en) * 1995-01-13 1999-02-16 Ricoh Corporation Method and apparatus for searching for and retrieving documents using a facsimile machine
WO1997010558A1 (en) * 1995-09-14 1997-03-20 Bell Communications Research, Inc. Method and system for providing continually updated personalized information
AU7674996A (en) * 1995-10-31 1997-05-22 Herz, Frederick S.M. System for customized electronic identification of desirable objects
US5913215A (en) * 1996-04-09 1999-06-15 Seymour I. Rubinstein Browse by prompted keyword phrases with an improved method for obtaining an initial document set
US5819271A (en) 1996-06-04 1998-10-06 Multex Systems, Inc. Corporate information communication and delivery system and method including entitlable hypertext links
US5802518A (en) * 1996-06-04 1998-09-01 Multex Systems, Inc. Information delivery system and method
US5835722A (en) * 1996-06-27 1998-11-10 Logon Data Corporation System to control content and prohibit certain interactive attempts by a person using a personal computer
US6038561A (en) * 1996-10-15 2000-03-14 Manning & Napier Information Services Management and analysis of document information text
US5826265A (en) * 1996-12-06 1998-10-20 International Business Machines Corporation Data management system having shared libraries
JPH10283361A (ja) * 1997-04-01 1998-10-23 Ricoh Co Ltd データベースアクセス履歴管理装置及び方法及び記憶媒体
US5893091A (en) * 1997-04-11 1999-04-06 Immediata Corporation Multicasting with key words
US5873081A (en) * 1997-06-27 1999-02-16 Microsoft Corporation Document filtering via directed acyclic graphs
US5974413A (en) * 1997-07-03 1999-10-26 Activeword Systems, Inc. Semantic user interface
US5983267A (en) * 1997-09-23 1999-11-09 Information Architects Corporation System for indexing and displaying requested data having heterogeneous content and representation
US5940843A (en) * 1997-10-08 1999-08-17 Multex Systems, Inc. Information delivery system and method including restriction processing
US6009442A (en) * 1997-10-08 1999-12-28 Caere Corporation Computer-based document management system
US6055538A (en) * 1997-12-22 2000-04-25 Hewlett Packard Company Methods and system for using web browser to search large collections of documents

Also Published As

Publication number Publication date
AU4070600A (en) 2000-11-14
JP5395239B2 (ja) 2014-01-22
EP1203312A1 (de) 2002-05-08
AU760709B2 (en) 2003-05-22
JP2013016195A (ja) 2013-01-24
EP1203312A4 (de) 2009-06-03
US6351747B1 (en) 2002-02-26
HK1040794A1 (en) 2002-06-21
GB2363660A (en) 2002-01-02
HK1040794B (zh) 2004-04-08
GB0125928D0 (en) 2001-12-19
JP2011014160A (ja) 2011-01-20
JP2002541589A (ja) 2002-12-03
GB2363660B (en) 2003-10-29
WO2000062200A1 (en) 2000-10-19
CA2369509A1 (en) 2000-10-19

Similar Documents

Publication Publication Date Title
CH704497B1 (de) Verfahren zum Benachrichtigen, Speichermedium mit Prozessoranweisungen für ein solches Verfahren.
DE69907631T2 (de) Netzzugang zu inhaltsadressierbaren daten
DE60211489T2 (de) System und Verfahren zur Bearbeitung von in mehreren Nachrichtenspeichern gespeicherten Nachrichten
DE69833238T2 (de) System zur Schlüsselwortgewinnung und Textwiederauffingungssystem zu seiner Verwendung
DE3688529T2 (de) Verfahren zur Auffrischung von Mehrspaltentabellen in einer relationellen Datenbank mit Mindestinformation.
DE19624696C2 (de) Verfahren zum Suchen von Datenbankeinträgen in einer Vielzahl von Datenbanken
DE3889904T2 (de) Namensverwaltung für ein digitaldatenverarbeitungssystemnetzwerk.
DE60121231T2 (de) Datenverarbeitungsverfahren
DE69933187T2 (de) Dokumentensuchverfahren und Dienst
DE202012013462U1 (de) Datenverarbeitung in einem Mapreduce-Framework
DE69728091T2 (de) Verfahren und System zum Ausschneiden von Nachrichten
DE69127399T2 (de) Verfahren zur automatischen Löschung vorübergehender Dokumentverbindungen in einem Datenverarbeitungssystem
DE10255128A1 (de) Computer-implementierte PDF-Dokumentenverwaltung
WO1998001808A1 (de) Datenbanksystem
DE112015000218T5 (de) Verfahren, System und Computerprogramm zum Abtasten einer Mehrzahl von Speicherbereichen in einem Arbeitsspeicher nach einer spezifizierten Anzahl von Ergebnissen
DE112016005374T5 (de) Identifizieren von Abfragemustern und zugeordneten aggregierten Statistikdaten unter Suchabfragen
DE202013005812U1 (de) System zum indexieren elektronischer Inhalte
DE69027524T2 (de) Verfahren und System zur automatischen Steuerung der Verteilung von Datenobjekten
DE602004002777T2 (de) Vorrichtung zur Behandlung von E-Mails in einer Mehrbenutzer-Umgebung
DE602004001333T2 (de) Computersystem und Verfahren zur Bereitstellung eines fehlerresistenten Datenverarbeitungdienstes
WO2011044865A1 (de) Verfahren zum bestimmen einer ähnlichkeit von objekten
EP1062601B1 (de) System und verfahren zur suche auf untereinander vernetzten rechnern mit informationsbeständen mittels softwareagenten
DE112020004493T5 (de) Zwischenspeicherfähigkeit von single-page-anwendungen
DE102012025351B4 (de) Verarbeitung eines elektronischen Dokuments
EP1605368A1 (de) Erstellen elektronisch verarbeitbarer Unterschriftendateien

Legal Events

Date Code Title Description
PFA Name/firm changed

Owner name: THOMSON REUTERS GLOBAL RESOURCES UNLIMITED COM, CH

Free format text: FORMER OWNER: THOMSON REUTERS GLOBAL RESOURCES, CH

Owner name: REUTERS RESEARCH INC., US

Free format text: FORMER OWNER: MULTEX.COM, INC., US

PFUS Merger

Owner name: THOMSON REUTERS (MARKETS) LLC, US

Free format text: FORMER OWNER: REUTERS RESEARCH INC., US

PUE Assignment

Owner name: THOMSON REUTERS GLOBAL RESOURCES, CH

Free format text: FORMER OWNER: THOMSON REUTERS (MARKETS) LLC, US

NV New agent

Representative=s name: SCHNEIDER FELDMANN AG PATENT- UND MARKENANWAEL, CH

PUE Assignment

Owner name: FINANCIAL AND RISK ORGANISATION LIMITED, GB

Free format text: FORMER OWNER: THOMSON REUTERS GLOBAL RESOURCES UNLIMITED COMPANY, CH

PL Patent ceased