DE60101668T2 - Verfahren und gerät zum erzeugen eines auf einer formatvorlage basierten index für ein strukturiertes dokument - Google Patents

Verfahren und gerät zum erzeugen eines auf einer formatvorlage basierten index für ein strukturiertes dokument Download PDF

Info

Publication number
DE60101668T2
DE60101668T2 DE60101668T DE60101668T DE60101668T2 DE 60101668 T2 DE60101668 T2 DE 60101668T2 DE 60101668 T DE60101668 T DE 60101668T DE 60101668 T DE60101668 T DE 60101668T DE 60101668 T2 DE60101668 T2 DE 60101668T2
Authority
DE
Germany
Prior art keywords
index
document
style
documents
text
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
DE60101668T
Other languages
English (en)
Other versions
DE60101668D1 (de
Inventor
Jacek Ambroziak
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems 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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of DE60101668D1 publication Critical patent/DE60101668D1/de
Application granted granted Critical
Publication of DE60101668T2 publication Critical patent/DE60101668T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/81Indexing, e.g. XML tags; Data structures therefor; Storage structures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (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)

Description

  • HINTERGRUND
  • Die vorliegende Erfindung bezieht sich auf indizierende Strukturen zur Erleichterung maschinengestützten Durchsuchens von Daten. Genauer gesagt bezieht sich die vorliegende Erfindung auf ein Verfahren und eine Vorrichtung zum Erzeugen eines Indexes, um das Durchsuchen der Daten innerhalb eines Dokumentes auf der Basis einer vorab definierten, dem Dokument zugeordneten Formatvorlage, die Anweisungen zum Erzeugen eines Indexes für das Dokument enthält, zu erleichtern.
  • Das explosionsartige Anwachsen des Internet steht in engem Zusammenhang mit der Entwicklung von Suchmaschinen, die Benutzern eine schnelles Durchsuchen großer Volumina von textartige Daten aus Tausenden und sogar Millionen unterschiedlicher Websites ermöglicht. Ein Benutzer, der an einem bestimmten Thema interessiert ist, braucht nur eine Anzahl von Schlüsselwörtern in eine Suchmaschine einzugeben, um Verknüpfungen zu verschiedenen Webseiten zu erhalten, die die Schlüsselwörter enthalten.
  • Suchmaschinen erzeugen typischerweise einen "Index" von Dokumenten (wie Webseiten), die in dem World Wide Web verfügbar sind. Ein Index speichert typischerweise individuelle Wörter (oder andere bedeutungstragende textartige Zeichenketten) in einer kompakteren und leichter durchsuchbaren Form, die als "Token" bekannt sind.
  • Der Vorgang des Einrichtens eines effektiven Indexes kann in hohem Maße durch die Tatsache verkompliziert werden, daß Dokumente in einer großen Vielzahl von unterschiedlichen Formen vorhanden sein können, die unterschiedlich indiziert werden müssen. Zum Beispiel könnte ein effizienter Index für einen technischen Artikel die Zusammenfassung und den Titel des technischen Artikels enthalten, jedoch nicht den übrigen Text des technischen Artikels, wohingegen ein effizienter Index für ein Fernsehprogramm Bewertungen der individuellen Fernsehsendungen enthalten könnte.
  • Der Vorgang des Erzeugen eines Indexes kann auch durch die Tatsache verkompliziert werden, daß für verbreitete Dokumentenformate wie die Hypertext-Auszeichnungssprache (Hypertext Markup Language, HTML) oder die Erweiterbare Auszeichnungssprache (Extensible Markup Language, XML) vieles von der für Suchzwecke wichtigen Information in Attributfeldern gespeichert ist und sich nicht im normalen Text des Dokumentes befindet.
  • Darüber hinaus kann sich die Struktur eines Dokumentes über die Zeit hinweg ändern, was eine Änderung der Struktur des Indexes erforderlich machen kann. Zum Beispiel stelle man sich vor, daß die Struktur eines Produktkatalogs aktualisiert wird, um für individuelle Produkte Rückmeldungen von Verbrauchern aufzunehmen. Diese Änderung kann es erforderlich machen, daß der Index zur Aufnahme dieser Rückmeldungen von Verbrauchern geändert wird.
  • Vorhandene Systeme erzeugen Indizes für Dokumente mittels Ad-Hoc-Regeln. Zum Beispiel ist eine Ad-Hoc-Regel, einen Index für sämtliche textartige Information zu erstellen, die nicht in Attri butfeldern enthalten ist. Unglücklicherweise nehmen solche Ad-Hoc-Regeln häufig viel unwichtige Information in einen Index auf und schließen häufig wichtige Information aus.
  • Ein ähnliches Problem besteht beim Konvertieren des Dokumentes in Token (Unterteilen eines Dokumentes in Token) während des Erstellungsvorgangs für einen Index. Während des Erstellungsvorgangs für einen Index werden relevante Teile eines Dokumentes in Token umgewandelt, die individuellen bedeutungstragenden Texteinheiten wie Wortformen oder Zahlen zugeordnet sind. In der englischen Sprache werden Wortformen typischerweise durch Zwischenraum und Interpunktionszeichen abgegrenzt. Daher ist der Vorgang des Unterteilens in Token relativ einfach. Im Gegensatz dazu haben Sprachen wie Japanisch keine solchen Abgrenzungen. Als Konsequenz daraus hängt der Vorgang der Unterteilung in Token von der Kontextinformation ab und kann sehr kompliziert sein.
  • Der Vorgang der Unterteilung in Token kann auch von der Domäne abhängig sein. Zum Beispiel sind Punkte innerhalb einer Email-Adresse wie "person.dept@companyx.com" verbindende Elemente, wohingegen Punkte innerhalb anderer textartiger Information typischerweise Wort- und Satzgrenzen angeben.
  • Somit ist der Vorgang der Unterteilung in Token zwischen Sprachen und zwischen Domänen unterschiedlich.
  • J. R. AMBROZIAK: 'Conceptually Assisted Web Browsing', SIXTH INTERNAIONAL WORLD WIDE WEB CONFERENCE; [Online] 7.–11. April 1997, Seiten 1–7, XP002165122 CA, USA, offenbart einen Führer zum Durchblättern bzw. einen Browse Guide, der proaktiv in Echtzeit arbeitet, um einen dynamischen, konzeptionellen bzw. begrifflichen Index von Dokumenten aufzubauen, die von dem Browser besucht wurden, und von Dokumenten aus der unmittelbaren Nachbarschaft dieser Dokumente. Der Index von Begriffen ist eine hierarchisch organisierte Taxonomie von Wörtern und Phrasenbegriffen, die in dem indizierten Material gefunden wurden. Der Browse Guide kann zum automatischen Zusammenstellen eines begrifflichen bzw. konzeptionellen Logbuchs des Weges des Benutzers durch das Web verwendet werden. Er stellt auch eine Art peripherer Sicht bereit, die beim Navigieren im Web die Konzepte bzw. Ideen in Dokumenten einen Schritt vor dem Browser anzeigt.
  • MIKHEEV A. ET AL.: 'XML tools and architecture for named entity recognition' MARKUP LANGUAGES: THEORY & PRACTICE; SUMMER 1999, MIT PRESS, USA, Vol. 1, Nr. 3, Seiten 89–113, XP000863186 ISSN: 1099–6621, offenbart die Entwicklung eines Systems zum Erkennen von Benannten Einheiten (Named Entity Recognition System), das innerhalb des XML-Paradigmas entwickelt wurde. (Erkennen von Benannten Einheiten geht mit dem Identifizieren von Ausdrücken einher, die sich zum Beispiel auf Personen, Organisationen, Orte oder Gegenstände bzw. Artefakte in Texten beziehen).
  • M. WINDHOUVER, A. SCHMIDT, M. KERSTEN: 'Acoi: A system for indexing multimedia objects', PROCEEDINGS OF THE FIRST INTERNATIONAL WORKSHOP ON INFORMATION INTEGRATION AND WEB-BASED APPLICATIONS & SERVICES, [Online] 15.–17. November 1999, Seiten 1–10, XP002165123 Yogyakarta, Indonesien, offenbart ein System zum Indizieren von Multimedia-Objekten, das unabhängige Programme zum Erkennen von Eigenschaften mit Multimedia- Datenbanktechnologie kombiniert, um einen an Semantik reichen Index auf Multimedia-Datenelemente im Web bereitzustellen. Ein grammatikalisches Rahmenwerk stellt das Schema zum Indizieren zur Verfügung, das gegen eine Datenquelle (z. B. ein Multimedia-Objekt) kompiliert und ausgeführt wird. Der abgeleitete Baum aus der Syntaxanalyse wird als ein Index zu der Datenquelle verwendet.
  • EP-0964344-A2 offenbart ein Verfahren zum Bilden eines Indexes für eine Mehrzahl von Dokumenten. Das Verfahren bezieht das Identifizieren von Wörtern oder Zusammenstellungen von Wörtern und das Anwenden der Wörter auf einen Index mit ein. Linguistisch verwandte, aber unterschiedliche Ausdrücke wie Synonyme werden gemäß der Wahrscheinlichkeit, korrekt zu sein, die auf der Information in einem Thesaurus bzw. Synonymwörterbuch beruht, angeordnet. Jedes der Wörter in dem Dokument und jeder der wahrscheinlichsten äquivalenten (d. h. verwandten) Begriffe bzw. Ausdrücke werden danach in eine indizierende Eigenschaft umgeformt, die es ermöglicht, daß Dokumente sowohl mittels der Wörter aus dem Dokument selbst als auch mittels der äquivalenten Begriffe lokalisiert bzw. gefunden werden können.
  • ZUSAMMENFASSUNG
  • Eine Ausführungsform der vorliegenden Erfindung stellt ein System zur Verfügung, das einen Index erzeugt, um das Durchsuchen von Text innerhalb eines Dokumentes auf der Basis einer dem Dokument zugeordneten Indexformatvorlage zu erleichtern. Das System arbeitet so, daß es ein zu indizierendes Dokument empfängt und dann das Dokument syntaktisch analysiert, um ein syntaktisch analysiertes Dokument zu erstellen. Das System holt auch Anweisungen zum Erstellen des Indexes für das Dokument aus der dem Dokument zugeordneten Indexformatvorlage. Das System erstellt den Index für das Dokument durch Umformen des syntaktisch analysierten Dokumentes in einer Weise, die durch die aus der Indexformatvorlage geholten Anweisungen angegeben ist.
  • Nach einer Ausführungsform der vorliegenden Erfindung bezieht das Holen der Indexformatvorlage das Holen der Indexformatvorlage von einer entfernten Adresse über ein Netzwerk ein.
  • Nach einer Ausführungsform der vorliegenden Erfindung ist die Indexformatvorlage an das Dokument angehängt.
  • Nach einer Ausführungsform der vorliegenden Erfindung stellt das System darüber hinaus den Index einer Suchmaschine zur Verfügung, so daß die Suchmaschine den Index durchsuchen kann.
  • Nach einer Ausführungsform der vorliegenden Erfindung gibt die Indexformatvorlage Abschnitte des Dokumentes an, die beim Erstellen des Indexes für das Dokument zu überspringen sind.
  • Nach einer Ausführungsform der vorliegenden Erfindung gibt die Indexformatvorlage Attribute des Dokumentes an, die in den Index aufzunehmen sind.
  • Nach einer Ausführungsform der vorliegenden Erfindung empfängt das System zusätzliche Dokumente zum Indizieren und erstellt mittels der Indexformatvorlage Indizes für die zusätzlichen Dokumente.
  • Nach einer Ausführungsform der vorliegenden Erfindung bezieht das Erstellen des Indexes für das Dokument das Unterteilen des Dokumentes in Token durch Aufteilen des Textes innerhalb des Dokumentes in individuelle bedeutungstragende Texteinheiten mit ein.
  • Nach einer Ausführungsform der vorliegenden Erfindung lädt das System vor dem Empfang des Dokumentes eine Indexkonfigurationsdatei, die eine beim Erstellen des Indexes zu verwendende Indexformatvorlage angibt, herunter und analysiert sie syntaktisch.
  • Nach einer Ausführungsform der vorliegenden Erfindung empfängt das System das Dokument von einem Client an einem indizierenden Server, der den Index für den Client erstellt.
  • KURZBESCHREIBUNG DER FIGUREN
  • 1 stellt ein verteiltes Rechnersystem gemäß einer Ausführungsform der vorliegenden Erfindung dar.
  • 2 stellt dar, wie ein Indizierungsserver einen Index für verschiedene Arten von Dokumenten gemäß einer Ausführungsform der vorliegenden Erfindung erstellt.
  • 3 stellt dar, wie Formatvorlagen zur Indizierung und Prozeduren zum Unterteilen in Token verwendet werden, um einen Index für ein Dokument gemäß einer Ausführungsform der vorliegenden Erfindung zu erstellen.
  • 4 stellt ein Beispiel des Vorgangs zum Unterteilen in Token dar.
  • 5 ist ein Flußdiagramm, das den Vorgang zum Erstellen eines Indexes gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
  • 6 ist ein Flußdiagramm, das den Vorgang zum dynamischen Erstellen eines aktualisierten Indexes für ein altes Dokument gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
  • DETAILLIERTE BESCHREIBUNG
  • Die folgende Beschreibung wird bereitgestellt, um Fachleute auf dem Gebiet in die Lage zu versetzen, die Erfindung nachzuvollziehen und von ihr Gebrauch zu machen, und wird in dem Kontext einer bestimmten Anwendung und ihrer Anforderungen dargestellt. Verschiedene Abwandlungen der offenbarten Ausführungsformen liegen für Fachleute auf dem Gebiet sofort auf der Hand, und die allgemeinen hier definierten Prinzipien können auf andere Ausführungsformen und Anwendungen angewendet werden, ohne den Geist und den Schutzbereich der vorliegenden Erfindung zu verlassen. Daher soll die vorliegende Erfindung nicht auf die dargestellten Ausführungsformen beschränkt werden, sondern sie soll in dem weitesten Anwendungs- bzw. Gültigkeitsbereich erteilt werden, der mit den hier offenbarten Prinzipien und Eigenschaften bzw. Funktionen im Einklang ist.
  • Die in dieser detaillierten Beschreibung beschriebenen Datenstrukturen und Code werden typischerweise auf einem Computer-lesbaren Speichermedium gespeichert, das jede beliebige Einrichtung oder jedes beliebige Medium sein kann, das Code und/oder Daten zur Verwendung durch ein Computersystem speichern kann. Dies umfaßt, ist jedoch nicht beschränkt auf magnetische und optische Speichereinrichtungen wie Plattenlaufwerke, Magnetbänder, CDs (Compact Discs) und DVDs (Digital Video Discs) und Computeranweisungssignale, die in einem Übertragungsmedium verkörpert sind (mit oder ohne eine Trägerwelle, auf die die Signale moduliert werden). Zum Beispiel kann das Übertragungsmedium ein Kommunikationsnetzwerk wie das Internet umfassen.
  • Verteiltes Rechnersystem
  • 1 stellt ein verteiltes Rechnersystem 100 gemäß einer Ausführungsform der vorliegenden Erfindung dar. Das verteilte Rechnersystem 100 beinhaltet die Clients 102 und 118, die mit dem Indizierungsserver 112 und der Suchmaschine 122 über das Netzwerk 110 verbunden sind.
  • Das Netzwerk 110 kann jede Art von drahtgebundenem oder drahtlosem Kommunikationskanal beinhalten, der zum Zusammenkoppeln von Computerknoten fähig ist. Dies umfaßt, ist jedoch nicht beschränkt auf, ein lokales Netzwerk, ein Weitverkehrsnetzwerk oder eine Kombination von Netzwerken. Nach einer Ausführungsform der vorliegenden Erfindung umfaßt das Netzwerk 110 das Internet.
  • Die Clients 102 und 118 können jeden beliebigen Knoten in dem Netzwerk 110 beinhalten, der Rechenfähigkeit und einen Mechanismus zur Kommunikation über das Netzwerk 110 umfaßt.
  • Der Client 102 enthält eine Anzahl von Dokumenten 104106, die in den Index 116 innerhalb des Indizierungsservers 112 zu integrieren sind. Der Indizierungsserver 112 kann jeden beliebigen Knoten in einem Computernetzwerk 110 beinhalten, der einen Mechanismus zum Bedienen von Anforderungen von einem Client nach Rechen- und/oder Datenspeicherressourcen umfaßt. Genauer beinhaltet der Indizierungsserver 112 Ressourcen zum Erstellen des Indexes 116 innerhalb der Datenbank 114 zum Indizieren der Dokumente 104106. Die Datenbank 114 kann jeden beliebigen Mechanismus zum Speichern von Daten in nicht-flüchtiger Form beinhalten. Nach einer Ausführungsform der vorliegenden Erfindung umfaßt die Datenbank 114 die Datenbank ORACLE 8TM, die von der Oracle Corporation in Redwood Shores, Kalifornien, vertrieben wird.
  • Der Client 118 beinhaltet einen Browser 120, der mit der Suchmaschine 122 kommuniziert, um den Index 116 zu durchsuchen. Der Browser 120 kann jede Art von Web-Browser umfassen, der zum Betrachten einer Website in der Lage ist, wie der Browser INTERNET EXPLORERTM, der von der Microsoft Corporation in Redmond, Washington, vertrieben wird. Die Suchmaschine 122 kann jede Art von Computersystem oder Anwendung beinhalten, die zum Durchsuchen von Daten in der Lage ist.
  • Während des Betriebs holt der Indizierungsserver 112 die Dokumente 104106 von dem Client 102 und verwendet die Dokumente 104106 zum Erstellen des Indexes 116. Man beachte, daß der Client 102 die Dokumente 104106 an den Indizierungsserver 112 senden kann. Oder alternativ kann der Indizierungsserver 112 die Dokumente 104106 vom Client 102 abholen.
  • Der Indizierungsserver 112 erstellt den Index 116, indem er ausgewählte Teile der Dokumente 104106 in Token unterteilt und den Index 116 aus den Token erstellt. Man beachte, daß der Client 102 selbst ein Server sein kann, der die Dokumente 104106 über das Netzwerk 110 verfügbar macht.
  • Nachdem der Index 116 erstellt ist, übermittelt der Client 118 eine Anfrage 124 an die Suchmaschine 122 über den Browser 120. Die Anfrage 124 kann Schlüsselwörter angeben, die für einen Benutzer des Client 118 von Interesse sind. Bei der Beantwortung der Anfrage 124 durchsucht die Suchmaschine 122 den Index 116, um innerhalb des Indexes 116 Dokumente zu finden, die passende Schlüsselwörter enthalten. Wenn solche Dokumente gefunden sind, gibt die Suchmaschine 122 die Dokumente in einer Trefferliste 126 für die Anfrage an den Browser 120 zurück.
  • Indizierungsserver
  • 2 stellt dar, wie der Indizierungsserver 122 einen Index für verschiedene Arten von Dokumenten gemäß einer Ausführungsform der vorliegenden Erfindung erstellt. In 2 empfängt der Indizierungsserver 112 viele verschiedene Arten von Dokumenten von unterschiedlichen Quellen. Der Indizierungsserver 112 integriert diese verschiedenen Arten von Dokumenten in den Index 116. Man beachte, daß der Index 116 einen einzigen Index beinhalten kann, der viele verschiedene Arten von Dokumenten enthält. Alternativ kann der Index 116 einen unterschiedlichen Index für jede Art von Dokument enthalten.
  • Ein unbegrenzte Anzahl von Arten von Dokumenten kann indiziert werden. Zum Beispiel stellt 2 ein Nachrichtendokument 202, einen Produktkatalog 204, ein Fernsehprogramm 206, ein Dokument mit Benutzerdokumentation 208 und ein Dokument mit Finanzinformation 210 dar. Jede von diesen verschiedenen Arten von Dokumenten kann eine unterschiedliche Dokumentenstruktur haben, die in einer Sprache wie XML definiert sein kann. Jede dieser unterschiedlichen Dokumentenstrukturen kann einem unterschiedlichen Indizierungsschema zugeordnet sein. In einigen Dokumenten sollten spezifische Attribute in den Index aufgenommen werden. Zum Beispiel kann es für einige Arten von Benutzerdokumentation vorteilhaft sein, ein Attribut zu indizieren, das angibt, ob die Benutzerdokumentation für einen unerfahrenen Benutzer oder einen erfahrenen Benutzer geeignet ist.
  • Indizierungsvorlagen und Prozeduren zur Unterteilung in Token
  • 3 stellt dar, wie Vorlagen zur Indizierung und Prozeduren zum Unterteilen in Token verwendet werden, um einen Index für ein Dokument gemäß einer Ausführungsform der vorliegenden Erfindung zu erstellen. In 3 nimmt ein Mechanismus 310 zum Errichten eines Indexes innerhalb des Indizierungsservers 112 als Eingabe ein Dokument 302 und erstellt einen Index 312 für das Dokument 302. Der Index 312 wird in einen größeren Index 116 für eine Sammlung von Dokumenten eingespeist, der in der Datenbank 114 (aus 1) enthalten ist.
  • Während des Vorgangs des Errichtens des Indexes nimmt der Index-Ersteller 310 Bezug auf die Indexformatvorlage 304 und die Prozeduren 306307 zur Unterteilung in Token. Die Indexformatvorlage 304 beinhaltet einen Satz von Anweisungen zum Erstellen des Indexes 312 für das Dokument 302. Zum Beispiel kann die Indexformatvorlage 304 angeben, welche Abschnitte des Dokumentes 302 beim Erstellen eines Indexes 312 übersprungen werden sollten. Die Indexformatvorlage 304 kann auch Attribute des Dokumentes 302 angeben, die in der Indexformatvorlage 304 enthalten sein sollen. Zum Beispiel kann ein Attribut eine minimale Sicherheitsstufe für eine Person angeben, über die diese für einen Zugriff auf das Dokument 302 verfügen muß. Ein anderes Attribut kann eine Inhaltsbewertung bzw. -einstufung (G, PG-13, PG, R, X) für das Dokument 302 angeben.
  • Die Prozeduren 306307 zur Unterteilung in Token geben an, wie bestimmte Teile von Dokument 302 in Token zu unterteilen sind. Zum Beispiel kann die Prozedur 306 zur Unterteilung in Token angeben, wie ein erster Teil von Dokument 302 in Token zu unterteilen ist, während die Prozedur 307 zur Unterteilung in Token angibt, wie ein zweiter Teil von Dokument 302 in Token zu unterteilen ist. Obwohl die meisten Dokumente wahrscheinlich eine einzige Prozedur zur Unterteilung in Token verwenden, können andere Dokumente Abschnitte in unterschiedlichen Sprachen oder aus unterschiedlichen Domänen enthalten, die unterschiedliche Prozeduren zur Unterteilung in Token erfordern.
  • Man beachte, daß die Indexformatvorlage 304 analog zu Formatvorlagen ist, die von dem XML-Standard spezifiziert werden. Formatvorlagen werden verwendet, um Anzeigeattribute wie Schriftart und Farbe spezifizieren, um ein XML-Dokument anzuzeigen. In ähnlicher Weise gibt eine Indexformatvorlage 304 an, wie ein Index für das Dokument 302 zu erstellen ist.
  • Die Prozeduren 306307 zur Unterteilung in Token können darüber hinaus die Form von Codemodulen annehmen, die Anweisungen zur Unterteilung in Token enthalten, oder können von einem entfernten Dienst über ein Netzwerk bereitgestellt werden.
  • Man beachte auch, daß die Indexformatvorlage 304 Referenzen enthalten kann, die angeben, von wo die Prozeduren 306307 zur Unterteilung in Token geholt werden können.
  • Man beachte, daß der Index-Ersteller 310 standardisierte Schnittstellen beinhaltet, die Eingabe von vielen verschiedenen Indexformatvorlagen und Prozeduren zur Unterteilung in Token entgegennehmen können. Dies ermöglicht es, daß der Index-Ersteller 310 Indexe für viele verschiedene Arten von Dokumenten mittels vieler unterschiedlicher Regeln zur Unterteilung in Token erstellen kann.
  • Prozeß zur Unterteilung in Token
  • 4 stellt ein Beispiel für den Vorgang des Erzeugens von Token dar. In diesem Beispiel wird ein Stück Text "MAY 7, 2000" in drei Token 402404 unterteilt. Das Token 402 enthält das Wort "MAY". Das Token 403 enthält die Ziffer "7", und das Token 404 enthält die Jahreszahl "2000". Jedem dieser Token ist eine eindeutige Tokennummer zugeordnet, und die eindeutigen Tokennummern werden zum Erstellen des Indexes verwendet. Das Verwenden der Tokennummern führt zu einer kompakteren Darstellung, weil Tokennummern weniger Platz einnehmen als lange Zeichenketten. Darüber hinaus ist es während des Suchvorgangs einfacher, nach einer Zahl als nach einer Zeichenkette zu suchen.
  • Prozeß zum Erstellen eines Indexes
  • 5 ist ein Flußdiagramm, das den Vorgang zum Erstellen eines Indexes gemäß einer Ausführungsform der vorliegenden Erfindung darstellt. Das System beginnt mit dem Herunterladen einer Konfigurationsdatei (Schritt 502). Dieser Vorgang kann das Herunterladen einer Konfigurationsdatei über ein Netzwerk umfassen. Als nächstes analysiert das System die Syntax bzw. die Grammatik der Konfigurationsdatei (Schritt 504) und identifiziert innerhalb der Konfigurationsdatei die Adresse einer Indexformatvorlage 304 (Schritt 506).
  • Als nächstes lädt das System die Indexformatvorlage 304 von der identifizierten Adresse herunter (Schritt 508). Dies kann das Holen der Formatvorlage über ein Netzwerk von einem Ort, der durch einen Universal Resource Locator (URL) angegeben ist, mit sich bringen. Alternativ kann die Formatvorlage an das Dokument angehängt sein, in welchem Fall die Indexformatvorlage einfach geholt werden kann.
  • Als nächstes analysiert das System die Syntax der Indexformatvorlage 304, so daß die Anweisungen innerhalb der Indexformatvorlage während des Erstellungsvorganges des Indexes verwendet werden können (Schritt 510).
  • Das System identifiziert auf ähnliche Weise eine Adresse einer Prozedur 306 zur Unterteilung in Token (Schritt 512). (Man beachte, daß die Adresse der Prozedur 306 zur Unterteilung in Token in der Konfigurationsdatei oder alternativ in der Indexformatvorlage 304 enthalten sein kann). Als nächstes lädt das System die Prozedur 306 zur Unterteilung in Token von der identifizierten Adresse herunter (Schritt 514). Nach einer Ausführungsform der vorliegenden Erfindung wird die Prozedur 306 zur Unterteilung in Token von derselben Stelle wie die Indexformatvorlage 304 geholt. Nach einer anderen Ausführungsform wird die Prozedur 306 zur Unterteilung in Token von einer anderen Stelle geholt.
  • Als nächstes gibt das System eine Anzahl von Dokumenten in den Index 116 ein. Dies wird durch Herunterladen eines Dokumentes in den Index-Ersteller 310 (Schritt 518) und anschließendes syntaktisches Analysieren des Dokumentes mittels der in der Indexformatvorlage 304 angegebenen Anweisungen erreicht (Schritt 520). Das System wandelt das syntaktisch analysierte Dokument mittels der Prozedur 306 zur Tokenunterteilung in Token um (Schritt 522) und erstellt daraufhin einen Index mittels der Token (Schritt 524). Dieser Vorgang wird für jedes Dokument wiederholt, das in den Index 116 eingegeben wird.
  • Nachdem der Index 116 vollständig ist, macht das System den Index 116 der Suchmaschine 122 (aus 1) verfügbar, so daß die Suchmaschine 122 den Index 116 zur Verarbeitung von Anfragen durchsuchen kann (Schritt 526).
  • 6 ist ein Flußdiagramm, das den Vorgang des dynamischen Erstellens eines aktualisierten Indexes für ein Dokument gemäß einer Ausführungsform der vorliegenden Erfindung darstellt. Für bestimmte Arten von Suchen haben Daten eine begrenzte Lebensdauer. Zum Beispiel sind bei der Suche nach aktuellen Wetterdaten alte Wetterdaten nicht von Interesse.
  • Unter diesen Umständen arbeitet eine Ausführungsform der vorliegenden Erfindung wie folgt. Das System empfängt eine Suchanfrage (Schritt 602). Bei der Beantwortung der Suchanfrage prüft das System die Erstellungsdaten von Dokumenten für jedes Dokument, das in die Suche einbezogen ist (Schritt 604). Wenn das System feststellt, daß ein Dokument alt ist (indem es vielleicht das Alter des Dokumentes mit einer Altersgrenze vergleicht), veranlaßt das System, daß eine neue Version des Dokumentes erzeugt wird (zum Beispiel durch das Sammeln neuer Wetterdaten) (Schritt 606). Als nächstes erstellt das System einen Index für die neue Version des Dokumentes (Schritt 608). Dieser Vorgang entfernt implizit den Index der alten Version des Dokumentes (Schritt 610). Schließlich führt das System eine Suche unter Einbeziehung des neu aktualisierten Indexes durch.
  • Die vorstehenden Beschreibungen von Ausführungsformen der Erfindung sind nur zum Zweck der Veranschaulichung und der Beschreibung dargestellt. Sie sollen nicht erschöpfend sein oder die vorliegende Erfindung auf die offenbarten Formen beschränken. Dementsprechend sind für Praktiker auf diesem Gebiet viele Veränderungen und Abweichungen offenkundig.
  • Zum Beispiel ist die vorliegende Erfindung nicht notwendigerweise auf ein verteiltes Client-Server-Rechnersystem beschränkt, auch wenn die vorliegende Erfindung im Kontext eines verteilten Rechnersystems mit Clients und Servern beschrieben ist. Im allgemeinen kann die vorliegende Erfindung auf jedes beliebige System, das einen Index für textartige Information erzeugt oder jedes beliebige System, das textartige Information in Token unterteilt, angewendet werden.
  • Darüber hinaus ist die vorstehende Offenbarung bzw. Offenlegung nicht dazu gedacht, die vorliegende Erfindung einzuschränken. Der Anwendungs- bzw. Geltungsbereich der vorliegenden Erfindung ist durch die beigefügten Ansprüche definiert.

Claims (22)

  1. Verfahren zum Erzeugen eines Index (312), um das Durchsuchen eines Textes innerhalb eines Dokuments (302) auf der Basis einer Indexformatvorlage (304) zu ermöglichen bzw. zu erleichtern, welche zu dem Dokument gehört, wobei das Verfahren aufweist: Empfangen (518) des zu indizierenden Dokuments, Durchführen einer Syntaxanalyse (520) des Dokuments, um ein syntaxanalysiertes Dokument zu erzeugen, Abrufen von Anweisungen zur Erzeugung des Index für das Dokument aus der Indexformatvorlage, die zu dem Dokument gehört, und Erzeugen (524) des Index für das Dokument durch Umformen des mit Syntaxanalyse behandelten Dokuments in einer Art und Weise, die durch die von der Indexformatvorlage abgerufenen Informationen angegeben wird.
  2. Verfahren nach Anspruch 1, wobei das Abrufen der Indexformatvorlage das Abrufen einer Indexformatvorlage über ein Netzwerk (110) von einer ferngelegenen Adresse umfaßt.
  3. Verfahren nach Anspruch 1, wobei die Indexformatvorlage als Anhang dem Dokument beigefügt ist.
  4. Verfahren nach Anspruch 1, welches weiterhin das Verfügbarmachen (526) des Index für eine Suchmaschine (122) aufweist, so daß die Suchmaschine in der Lage ist, den Index abzutasten (zu scannen).
  5. Verfahren nach Anspruch 1, wobei die Indexformatvorlage Abschnitte des Dokuments angibt, die beim Erzeugen des Index für das Dokument zu überspringen sind.
  6. Verfahren nach Anspruch 1, wobei die Indexformatvorlage Eigenschaften bzw. Attribute des Dokuments angibt, die in den Index aufzunehmen sind.
  7. Verfahren nach Anspruch 1, welches weiterhin das Empfangen einer Mehrzahl zusätzlicher zu indizierender Dokumente und das Erzeugen von Indizes für die Mehrzahl zusätzlicher Dokumente unter Verwendung der Indexformatvorlage aufweist.
  8. Verfahren nach Anspruch 1, wobei das Erzeugen des Index für das Dokument das Versehen des Dokuments mit Token umfaßt, indem Text innerhalb des Dokuments in Einheiten des Textes aufgeteilt wird, die eine individuelle Bedeutung tragen.
  9. Verfahren nach Anspruch 1, welches weiterhin aufweist, daß vor dem Empfangen des Dokuments eine Indexkonfigurationsdatei geladen (502) und einer Syntaxanalyse unterzogen wird (504), wobei die Indexkonfigurationsdatei die beim Erzeugen des Index zu verwendende Indexformatvorlage spezifiziert.
  10. Verfahren nach Anspruch 1, wobei das Empfangen des Dokuments das Empfangen des Dokuments von einem Client an einem Indizierungsserver (112) aufweist, welcher den Index für den Client erzeugt.
  11. Computerlesbares Speichermedium, welches Anweisungen speichert, die beim Ausführen durch einen Computer bewirken, daß der Computer ein Verfahren nach einem der vorstehenden Ansprüche ausführt.
  12. Computerlesbares Speichermedium, welches Anweisungen speichert, die beim Ausführen durch einen Computer bewirken, daß der Computer ein Verfahren zum Erzeugen eines Index (312) ausführt, um das Durchsuchen von Text innerhalb eines Dokuments (302) auf der Basis einer Indexformatvorlage (304), die zu dem Dokument gehört, zu erleichtern bzw. zu ermöglichen, wobei das Verfahren aufweist: Empfangen (518) des zu indizierenden Dokuments, Durchführen einer Syntaxanalyse (520) des Dokuments, um ein nach der Syntax analysiertes Dokument zu erzeugen, Abrufen von Anweisungen zum Erzeugen des Index für das Dokument aus der zu dem Dokument gehörenden Indexformatvorlage, und Erzeugen (524) des Index für das Dokument durch Umwandeln des syntaxanalysierten Dokuments in einer Art und Weise, die durch die von der Indexformatvorlage abgerufenen Anweisungen spezifiziert wird.
  13. Vorrichtung zum Erzeugen eines Index (312) zum Erleichtern des Durchsuchens von Text innerhalb eines Dokuments (302) auf der Basis einer Indexformatvorlage (304), die zu dem Dokument gehört, wobei die Vorrichtung aufweist: einen Aufnahmemechanismus, der dafür ausgelegt ist, das zu indizierende Dokument zu empfangen, einen Syntaxanalysierer, der dafür ausgelegt ist, eine Syntaxanalyse des Dokuments durchzuführen, um ein hinsichtlich der Syntax analysiertes Dokument zu erzeugen, einen eine Formatvorlage abrufenden Mechanismus, der dafür ausgelegt ist, Anweisungen abzurufen, um den Index für das Dokument aus der zu dem Dokument gehörenden Indexformatvorlage zu erzeugen, und einen Indexerzeugungsmechanismus, der dafür ausgelegt ist, den Index für das Dokument zu erzeugen, indem das syntaxanalysierte Dokument in einer Art und Weise umgewandelt wird, die durch die von der Indexformatvorlage abgerufenen Anweisungen spezifiziert wird.
  14. Vorrichtung nach Anspruch 13, wobei der Abrufmechanismus der Formatvorlage so ausgestaltet ist, daß er die Indexformatvorlage über ein Netzwerk (110) von einer ferngelegenen Adresse abruft.
  15. Vorrichtung nach Anspruch 13, wobei die Indexformatvorlage dem Dokument als Anhang beigefügt ist.
  16. Vorrichtung nach Anspruch 13, welche weiterhin einen Zugriffsmechanismus aufweist, der so ausgestaltet ist, daß er den Index für eine Suchmaschine (122) verfügbar (zugreifbar) macht, so daß die Suchmaschine in der Lage ist, den Index zu durchsuchen (zu scannen).
  17. Vorrichtung nach Anspruch 13, wobei die Indexformatvorlage Abschnitte des Dokumentes angibt, die beim Erzeugen des Index für das Dokument zu übergehen sind.
  18. Vorrichtung nach Anspruch 13, wobei die Indexformatvorlage Eigenschaften des Dokuments angibt, die in den Index aufzunehmen sind.
  19. Vorrichtung nach Anspruch 13, wobei der Aufnahmemechanismus dafür ausgelegt ist, eine Mehrzahl weiterer zu indizierender Dokumente aufzunehmen, und wobei der Indexerzeugungsmechanismus dafür ausgelegt ist, Indizes für die Mehrzahl von zusätzlichen Dokumenten unter Verwendung der Indexformatvorlage zu erzeugen.
  20. Vorrichtung nach Anspruch 13, wobei der Indexerzeugungsmechanismus dafür ausgelegt ist, den Index für das Dokument zu erzeugen, indem Text innerhalb des Dokuments in Token aufgeteilt wird, welche Einheiten von Text enthalten, die eine individuelle Bedeutung tragen.
  21. Vorrichtung nach Anspruch 13, welche weiterhin einen Indexkonfigurationsmechanismus aufweist, der dafür ausgelegt ist, eine Indexkonfigurationsdatei herabzuladen und in ihrer Syntax zu analysieren, wobei die Indexkonfigurationsdatei die beim Erzeugen des Index zu verwendende Indexformatvorlage angibt.
  22. Vorrichtung nach Anspruch 13, wobei die Vorrichtung in einem Indizierungsserver (112) enthalten ist, welche den Index für einen Client erzeugt.
DE60101668T 2000-01-06 2001-01-02 Verfahren und gerät zum erzeugen eines auf einer formatvorlage basierten index für ein strukturiertes dokument Expired - Fee Related DE60101668T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US513439 1983-07-13
US17496700P 2000-01-06 2000-01-06
US174967P 2000-01-06
US09/513,439 US6823492B1 (en) 2000-01-06 2000-02-25 Method and apparatus for creating an index for a structured document based on a stylesheet
PCT/US2001/000172 WO2001050352A1 (en) 2000-01-06 2001-01-02 Method and apparatus for creating an index for a structured document based on a stylesheet

Publications (2)

Publication Number Publication Date
DE60101668D1 DE60101668D1 (de) 2004-02-05
DE60101668T2 true DE60101668T2 (de) 2004-12-09

Family

ID=26870733

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60101668T Expired - Fee Related DE60101668T2 (de) 2000-01-06 2001-01-02 Verfahren und gerät zum erzeugen eines auf einer formatvorlage basierten index für ein strukturiertes dokument

Country Status (6)

Country Link
US (1) US6823492B1 (de)
EP (1) EP1247213B1 (de)
JP (1) JP2003519844A (de)
AU (1) AU3085201A (de)
DE (1) DE60101668T2 (de)
WO (1) WO2001050352A1 (de)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040250206A1 (en) * 2001-06-04 2004-12-09 David Costantino Textual data storage system and method
TWI247295B (en) * 2002-03-09 2006-01-11 Samsung Electronics Co Ltd Reproducing method and apparatus for interactive mode using markup documents
US7152056B2 (en) * 2002-04-19 2006-12-19 Dow Jones Reuters Business Interactive, Llc Apparatus and method for generating data useful in indexing and searching
EP1367504B1 (de) * 2002-05-27 2008-04-16 Sap Ag Verfahren und Computersystem zum Indexieren strukturierter Dokumente
US20080046835A1 (en) * 2002-05-28 2008-02-21 Truc Nguyen Object-oriented processing of tab text
US20040019848A1 (en) * 2002-07-24 2004-01-29 Truc Nguyen Method for dynamically inserting and removing tab text
US8065605B2 (en) * 2002-05-31 2011-11-22 Sap Aktiengesellschaft Indexing structured documents
US20040098380A1 (en) * 2002-11-19 2004-05-20 Dentel Stephen D. Method, system and apparatus for providing a search system
US9020906B2 (en) * 2005-08-15 2015-04-28 National Instruments Corporation Method for intelligent storing and retrieving in an enterprise data system
JP4956757B2 (ja) * 2006-03-15 2012-06-20 国立大学法人大阪大学 数式記述構造化言語オブジェクト検索システムおよび検索方法
US8392816B2 (en) * 2007-12-03 2013-03-05 Microsoft Corporation Page classifier engine
US8250469B2 (en) * 2007-12-03 2012-08-21 Microsoft Corporation Document layout extraction
US20090144277A1 (en) * 2007-12-03 2009-06-04 Microsoft Corporation Electronic table of contents entry classification and labeling scheme
WO2010105245A2 (en) * 2009-03-12 2010-09-16 Exbiblio B.V. Automatically providing content associated with captured information, such as information captured in real-time
US9286611B2 (en) * 2010-01-07 2016-03-15 Sarkar Subhanjan Map topology for navigating a sequence of multimedia
US9185163B2 (en) 2011-04-08 2015-11-10 Microsoft Technology Licensing, Llc Receiving individual documents to serve
US9158767B2 (en) 2011-04-08 2015-10-13 Microsoft Technology Licensing, Llc Lock-free indexing of documents
US8990612B2 (en) 2011-04-08 2015-03-24 Microsoft Technology Licensing, Llc Recovery of a document serving environment
US8990951B1 (en) 2012-03-30 2015-03-24 Google Inc. Claiming delayed live reference streams
US9116938B2 (en) 2013-03-15 2015-08-25 Qualcomm Incorporated Updating index information when adding or removing documents

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2549745B2 (ja) * 1990-04-19 1996-10-30 三菱電機株式会社 文書検索装置
CA2048039A1 (en) * 1991-07-19 1993-01-20 Steven Derose Data processing system and method for generating a representation for and random access rendering of electronic documents
US5471677A (en) * 1992-06-24 1995-11-28 Matsushita Electric Industrial Co., Ltd. Data retrieval using user evaluation of data presented to construct interference rules and calculate range of inputs needed for desired output and to formulate retrieval queries
US5710978A (en) * 1993-06-29 1998-01-20 Swift Computers, Inc. Logging recorder system for trunking radio
US5623652A (en) * 1994-07-25 1997-04-22 Apple Computer, Inc. Method and apparatus for searching for information in a network and for controlling the display of searchable information on display devices in the network
US6119120A (en) * 1996-06-28 2000-09-12 Microsoft Corporation Computer implemented methods for constructing a compressed data structure from a data string and for using the data structure to find data patterns in the data string
US5809502A (en) * 1996-08-09 1998-09-15 Digital Equipment Corporation Object-oriented interface for an index
US5931940A (en) * 1997-01-23 1999-08-03 Unisys Corporation Testing and string instructions for data stored on memory byte boundaries in a word oriented machine
US6076051A (en) * 1997-03-07 2000-06-13 Microsoft Corporation Information retrieval utilizing semantic representation of text
US5899975A (en) * 1997-04-03 1999-05-04 Sun Microsystems, Inc. Style sheets for speech-based presentation of web pages
US6067618A (en) * 1998-03-26 2000-05-23 Innova Patent Trust Multiple operating system and disparate user mass storage resource separation for a computer system
US6154738A (en) * 1998-03-27 2000-11-28 Call; Charles Gainor Methods and apparatus for disseminating product information via the internet using universal product codes
GB2338089A (en) 1998-06-02 1999-12-08 Sharp Kk Indexing method
US6263332B1 (en) * 1998-08-14 2001-07-17 Vignette Corporation System and method for query processing of structured documents
US6336117B1 (en) * 1999-04-30 2002-01-01 International Business Machines Corporation Content-indexing search system and method providing search results consistent with content filtering and blocking policies implemented in a blocking engine
IT1313201B1 (it) * 1999-07-13 2002-06-17 Milano Politecnico Modello per la definizione di siti per il world wide web, in grado difornire supporto alle attivita' di specifica, progettazione, verifica
US6788768B1 (en) * 1999-09-13 2004-09-07 Microstrategy, Incorporated System and method for real-time, personalized, dynamic, interactive voice services for book-related information
US6675354B1 (en) * 1999-11-18 2004-01-06 International Business Machines Corporation Case-insensitive custom tag recognition and handling

Also Published As

Publication number Publication date
AU3085201A (en) 2001-07-16
JP2003519844A (ja) 2003-06-24
EP1247213A1 (de) 2002-10-09
EP1247213B1 (de) 2004-01-02
WO2001050352A1 (en) 2001-07-12
DE60101668D1 (de) 2004-02-05
US6823492B1 (en) 2004-11-23

Similar Documents

Publication Publication Date Title
DE60101668T2 (de) Verfahren und gerät zum erzeugen eines auf einer formatvorlage basierten index für ein strukturiertes dokument
DE69934371T2 (de) Apparat und Verfahren zum Verarbeiten einer natürlichen Sprache
DE60213409T2 (de) Erstellung von strukturierten daten aus unformatiertem text
Laender et al. DEByE–data extraction by example
DE102019001267A1 (de) Dialogartiges System zur Beantwortung von Anfragen
Alexa et al. A review of software for text analysis
Hammer et al. Semistructured data: The TSIMMIS experience
DE60208604T2 (de) Automatisches Verfahren zur Erzeugung von Image-buttons
DE4440598C1 (de) Durch gesprochene Worte steuerbares Hypertext-Navigationssystem, Hypertext-Dokument für dieses Navigationssystem und Verfahren zur Erzeugung eines derartigen Dokuments
DE60120822T2 (de) Meta-Dokument und Verfahren zum Verwalten von Meta-Dokumenten
US6745161B1 (en) System and method for incorporating concept-based retrieval within boolean search engines
DE102013003055A1 (de) Verfahren und Vorrichtung zum Durchführen von Suchen in natürlicher Sprache
DE102013205737A1 (de) System und Verfahren zum automatischen Erkennen und interaktiven Anzeigen von Informationen über Entitäten, Aktivitäten und Ereignisse aus multimodalen natürlichen Sprachquellen
US20020065857A1 (en) System and method for analysis and clustering of documents for search engine
WO2009030288A1 (de) Erfassung von zusammenhängen zwischen informationen repräsentierenden daten
DE112018005076T5 (de) Erstellen einer rangfolge von dokumenten auf grundlage ihres semantischen reichtums
DE112018005272T5 (de) Suchen von mehrsprachigen dokumenten auf grundlage einer extraktion der dokumentenstruktur
Bhatia et al. Semantic web mining: Using ontology learning and grammatical rule inference technique
DE112020004417T5 (de) Selektives tiefes parsing von inhalten in natürlicher sprache
Croft et al. Search engines
EP1685505A2 (de) Datenverarbeitungssystem und -vorrichtung
WO2009030248A1 (de) Erfassung von zusammenhängen zwischen informationen repräsentierenden daten
Mattox et al. Rapper: a wrapper generator with linguistic knowledge
DE102021108675A1 (de) Schwach überwachte erkennung einer semantischen einheit unter verwendung von allgemeinwissen und zieldomänenkenntnis
EP1754171A1 (de) Verfahren und system zur automatisierten erzeugung von computergestützten steuerungs- und analysevorrichtungen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee