-
Hintergrund der Erfindung
-
1. Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft im Allgemeinen ein Verfahren eines
Extrahierens von Information aus strukturierten Dokumenten, wie
zum Beispiel HTML-Dokumenten oder Ähnlichem und betrifft insbesondere
ein Informations-Extraktionsverfahren, das
einen gewünschten
Textteil identifiziert und extrahiert, der im Voraus aus täglich aktualisierten strukturierten
Dokumenten ausgewählt
wird. Weiter betrifft die vorliegende Erfindung eine Benutzerschnittstelle,
durch die ein gewünschter
Teil leicht in einem strukturierten Dokument ausgewählt werden kann.
-
2. Beschreibung des verwandten
Standes der Technik
-
Es
gibt eine Erforderlichkeit für
eine Vorrichtung, einen bestimmten Teil aus einem strukturierten Dokument
auszuwählen,
wie zum Beispiel einem HTML-Dokument (HTML – hyper text markup language)
oder Ähnlichem,
das täglich
aktualisiert wird. Zum Beispiel kann es ein Benutzer wünschen,
Teile von besonderem Interesse aus Web-Seiten auszuwählen, mit
denen der Benutzer vertraut ist, unter Zusammenstellen dieser Teile,
um eine Sammlung von Information zu erzeugen, die es dem Benutzer
erlaubt, leicht lediglich erforderliche Information zu betrachten.
Wenn die Quelle einer gesammelten Information täglich aktualisiert wird, erfordert
es der ausgewählte
Teil immer wieder in dem täglich
aktualisierten Dokument zur Verwendung in der Sammlung identifiziert
zu werden.
-
Das
Japanische Patent Nr. 2867986 ,
das auf ein WWW-Informations-Extraktionssystem
gerichtet ist, lehrt ein Speichern von Information, die einen Startpunkt
und einen Endpunkt eines Teils anzeigt, der im Voraus ausgewählt wird.
-
Basierend
auf dieser Information werden der Startpunkt und der Endpunkt in
dem aktualisierten Dokument identifiziert, gefolgt von einem Extrahieren des
Teils zwischen diesen zwei Punkten als dem ausgewählten Teil.
Zum Beispiel werden Texte des ausgewählten Teils, die jeweils dem
Startpunkt und dem Endpunkt entsprechen, in einem Speicher gespeichert.
Wenn der ausgewählte
Teil aus dem Dokument extrahiert wird, werden die gespeicherten
Texte verwendet, um den Startpunkt und den Endpunkt in dem HTML-Dokument
zu identifizieren, gefolgt von einem Extrahieren des identifizierten
Teils.
-
Ein
System, das von der webMethods-Corporation (http://www.w3.org/TR/NOTE-wid1)
vorgeschlagen wird, und ein System, das von Luca Iocchi (Luca Iocchi:
The Web-OEM approach to Web information extraction, Journal of Network
and Computer Applications, Vol. 22, pp. 259–269 (1999)) vorgeschlagen
wird, nähert
sich diesem Thema durch Konvertieren eines HTML-Dokuments in eine
Baumstruktur, Speichern von Information über den Teilbaum entsprechend
einem ausgewählten
Teilbaum im Voraus und Identifizieren eines Teils des aktualisierten Dokuments,
das dem gespeichertem Teilbaum entspricht. Hier umfasst Information über einen
Teilbaum eine Zeichenkette, die als ein Identifikator des ausgewählten Teils
dient. Ein Tag-Name (Tag-Etikett) wird
als ein Tag-Identifikator verwendet und Tag-Namen an der gleichen hierarchischen
Ebene in der Baumstruktur sind mit jeweiligen numerischen Wert-Indizes
bereitgestellt. Die Tag-Namen, die mit numerischen Wert-Indizes gepaart sind,
werden in Serie verbunden, um die Zeichenkette zur Darstellung einer
Struktur von der Wurzel des gesamten Baums zu der Wurzel des Teilbaums
zu bilden, der dem ausgewählten
Teil entspricht. In einem Beispiel aus 1 wird „doc" als die Wurzel des
gesamten Baums betrachtet und der Identifikator, der zu dem ausgewählten Teil „örtliche
Nachrichten" zeigt,
wird als „doc.table[0].table[0]" dargestellt.
-
Ein
anderes Beispiel ist die Patentanmeldung
WO 01/90873A1 , die ein drahtloses
Seitenerzeugungssystem offenbart und ein Verfahren, das einen Robustifikator
(engl.: robustifier) enthält,
der automatisch Seiten verarbeitet, um eine XSL-Stilvorlage zu erzeugen, die Inhalte
aus dynamischen Webseiten extrahiert.
-
In
dem Verfahren nach dem verwandten Stand der Technik, das in der
Japanischen Patentnummer 2867986 bezüglich des
WWW-Informations-Extraktionssystems
offenbart ist, wird ein ausgewählter
Teil basierend auf Information ausgewählt, die den Startpunkt und
den Endpunkt des gewählten Teils
anzeigt. Es folgt natürlich,
dass derartige Information ein Gegenstand sein muss, der in dem
Dokument nach einem Aktualisieren immer intakt bleibt. Es ist jedoch
schwierig, beständige
Information zu identifizieren, die durch ein Aktualisieren hindurch unverändert ist.
Viele Ausnahmen, die auf Homepages existieren, tendieren nach Belieben
des Gestalters zu sein, so dass das oben beschriebene Verfahren
nicht auf einen weiten Bereich von Anwendungsgebieten anwendbar
ist.
-
Falls
Texte, die den Start- und Endpunkten entsprechen, als ein Anhaltspunkt
in dem WWW-Informations-Extraktionssystem verwendet werden, können diese
Texte selbst einem Aktualisieren unterzogen werden, wie in 2 gezeigt.
In einem derartigen Fall versagt dieses Verfahren.
-
Falls
weiter ein ausgewählter
Teil, wie in 3 gezeigt, von diesem
Verfahren extrahiert wird, bildet der extrahierte Teil keinen ordentlichen
Teilbaum als eine Baumstruktur, dessen Beispiel in 3 gezeigt
ist. Daher würde
auf Schwierigkeiten getroffen werden, falls ein Versuch durchgeführt wird, diesen
extrahierten Teil in einem anderen strukturierten Dokument zu verwenden.
-
Das
Verfahren, das den Identifikator eines Teilbaums eines ausgewählten Teils
verwendet, wie von der webMethods corporation oder Luca Iocchi gelehrt,
beruht auf der Prämisse,
dass die Dokumentstruktur sich durch ein Aktualisieren hindurch
nicht ändert.
Falls die Dokumentstruktur sich jemals durch ein Aktualisieren hindurch
leicht ändert,
stimmt der Identifikator eines Teilbaums, der im Voraus ausgewählt ist,
nicht mit einem Identifikator nach einem Aktualisieren überein.
-
Zum
Beispiel kann ein Textblock mit dem gleichen Tag wie ein existierender
Tag auf der gleichen hierarchischen Ebene der Baumstruktur eingefügt werden,
zu der der ausgewählte
Teil des Dokumentes gehört.
Dies resultiert darin, dass ein numerischer Wertindex des Tags in
den Identifikator des Teilbaums geändert wird. In dem Beispiel
aus 1 wird das Dokument durch Einsetzten des Tags
hinsichtlich „ADVERTISEMENT
2" aktualisiert,
der in Table-Tags oberhalb des ausgewählten Teils eingeklammert ist.
Als ein Endergebnis wird der numerische Wertindex des Tag-Identifikators
basierend auf dem Tag-Namen „table" in Bezug auf die
ausgewählten „local
news" von „table[0]
auf „table[1]„ geändert. Es
ist wahrscheinlich, dass derartige kleine Formatänderungen auf einer Seitenoberseite
durchgeführt
werden, in der Banner, neueste Nachrichten und so weiter fortwährend eingesetzt
und gelöscht
werden. Da eine derartige Seite, da sie ein fortwährendes
Aktualisieren von Information aufweist, die Art von Seite ist, von
der Benutzer es wünschen,
Teile auszuwählen,
muss die Verschlechterung einer Zuverlässigkeit von Teilidentifikation
behandelt werden, falls eine derartige Verschlechterung durch kleineres Aktualisieren
auftritt.
-
Wenn
ein Tag, der zur Zeit der Teilauswahl nicht vorlag, versehentlich
oberhalb des ausgewählten
Teils offen gelassen wird, erscheint dieser Text als ein Elternknoten
in Bezug auf den ausgewählten Teil.
In dem in 1 gezeigten Beispiel eines Aktualisierens
wird der Table-Tag, der „ADVERTISEMENT 1" enthält, oberhalb
des gewählten
Teils versehentlich offen gelassen. Als Folge wird ein Identifikator, der
korrekter Weise als „doc.table[0].table[0]" erscheinen sollte,
zu „doc.table[0].table[0].table[1]", was die Existenz
eines Table-Tags als Elternknoten des gewählten Teils „local
news" anzeigt. Dies
lässt den
Identifikator des Teilbaumes versagen, zwischen einem Aktualisieren
zuvor und danach überein
zu stimmen. Weit verbreitete WWW-Browser erlauben heute offene Tags
und Seitengestalter aktualisieren oft Seiten, ohne die Tatsache
zu bemerken, dass offene Tags in den Seiten vorliegen.
-
Ein
Einsatz eines Textblocks mit dem gleichen Tag und einem versehentlichem
Mangel eines schließenden
Tags verursacht eine Schwierigkeit in dem Beispiel eines Aktualisierens
des in 1 gezeigten Dokuments. Nämlich wird der Identifikator
eines Teilbaums, der zu dem ausgewählten Teil zeigt, von „doc.table[0].table[0]" zu „doc.table[0].table[0].table[1]" geändert.
-
Die
Verfahren, die von der webMethod corporation und Iocchi vorgeschlagen
werden, weisen weiter ein Problem darin auf, dass ein Wissen von Tags
und Dokumentstrukturen und eine Handfertigkeit erforderlich sind,
wenn ein Teil in einem strukturierten Dokument, wie zum Beispiel
einem HTML-Dokument, ausgewählt
wird.
-
Zusammenfassung der Erfindung
-
Das
Ziel der Erfindung wird mit den Merkmalen der Ansprüche erreicht.
-
Es
ist ein allgemeines Ziel der Erfindung, im Wesentlichen eins oder
mehrere Probleme zu vermeiden, die durch die Beschränkungen
und Nachteile des Standes der Technik verursacht werden.
-
Es
ist ein anderes und genaueres Ziel der vorliegenden Erfindung, ein
Verfahren eines Extrahierens von Information aus einem strukturierten
Dokument bereitzustellen, das einen ausgewählten Teil extrahieren kann,
ohne eine durch das Aktualisieren des Dokumentes verminderte Zuverlässigkeit
aufzuweisen.
-
Es
ist noch ein anderes Ziel der vorliegenden Erfindung, ein Verfahren
eines Auswählens
und Extrahierens eines Teils aus einem strukturierten Dokument bereitzustellen,
durch das der Benutzer den Teil des strukturierten Dokuments, wie
zum Beispiel ein HTML-Dokument, in einer Weise auswählen kann, die
intuitiv leicht zu verstehen ist.
-
Gemäß der Erfindung
umfasst ein Tag-Identifikator einen Namen eines Tags, einen Namen
von zumindest einem Formatattribut des Tags und einen Wert des zumindest
einen Formatattributs und wird als ein Teilbaum-Identifikator verwendet.
Mit diesem Teilbaum-Identifikator wird die Zuverlässigkeit
einer Teilextraktion nicht vermindert, da sich nicht auf die Start- und Endpunkte verlassen
wird. Es genügt
lediglich ein unterschiedliches Formatattribut für einen Tag zu haben, selbst
falls ein Textblock mit dem gleichen Tag wie der Teilbaum eines
ausgewählten
Teils in die gleiche hierarchische Ebene eingesetzt wird, zu der
der ausgewählte
Teil gehört.
-
Weiter
werden numerische Wert-Indizes erzeugt, die die Sequenznummer von
Tag-Identifikatoren anzeigen, die zu der gleichen hierarchischen Ebene
der Baumstruktur gehören.
Ein Tag-Identifikator und ein numerischer Wertindex werden als ein Satz
gepaart und eine Vielzahl von Sätzen
werden in Serie von der Wurzel der gesamten Baumstruktur zu der
Wurzel eines Teilbaums verbunden, wodurch der Teilbaum-Identifikator
bereitgestellt wird. Mit dieser Maßnahme ist es möglich, eindeutig
den ausgewählten
Teil zu identifizieren, selbst falls die gleiche Kombination eines
Tags und Formatattributen, die der Wurzel des ausgewählten Teilbaums
entspricht, für andere
Tags in dem Dokument verwendet wird.
-
Falls
es zwei oder mehr übereinstimmende Teil-Bäume zur
Zeit eines Identifizierens eines Teilbaums gibt, wird das Anpassen
von Identifikatoren rekursiv durch sukzessives Heraufsteigen zu
einem nächst
höheren
Elternknoten durchgeführt.
Dies ermöglicht
es, die Verschlechterung der Zuverlässigkeit einer Teilextraktion
zu vermeiden, selbst falls ein Tag gibt, der versehentlich oberhalb
des ausgewählten
Teils offen gelassen wurde.
-
Gemäß einem
anderen Aspekt der vorliegenden Erfindung detektiert das System
zum Auswählen
und Extrahieren eines Teils eines strukturierten Dokuments, wie
zum Beispiel eines HTML-Dokuments, einen Endknoten einer Baumstruktur,
der einer Position entspricht, die von einem Benutzer auf dem Bildschirm
angezeigt wird, der das strukturierte Dokument anzeigt. Eine Serie
von Ahnenknoten wird sukzessiv für
eine visuelle Darstellung auf dem Bildschirm erhalten und der Benutzer
wird aufgefordert, einen Knoten zu wählen. Dies erlaubt, dass der
Benutzer leicht einen Teil des strukturierten Dokuments gemäß der Knotenauswahl
auswählt,
so dass der ausgewählte
Teil leicht in einem anderen strukturierten Dokument wieder verwendet
werden kann.
-
Andere
Ziele und weitere Merkmale der vorliegenden Erfindung werden aus
der folgenden detaillierten Beschreibung ersichtlich, wenn diese
in Verbindung mit den begleitenden Zeichnungen gelesen wird.
-
Kurze Beschreibung der Zeichnungen
-
1 ist
eine darstellende Zeichnung zum Erklären des Standes der Technik;
-
2 ist
eine darstellende Zeichnung, die ein Beispiel zeigt, in dem ein
Teil eines Dokumentes durch Verwenden der Texte ausgewählt und
extrahiert wird, die Start- und Endpunkte anzeigen;
-
3A und 3B sind
darstellende Zeichnungen, die ein Beispiel zeigen, in dem ein Teil
eines HTML-Dokuments
durch Verwenden der Teste extrahiert wird, die Start- und Endpunkte
anzeigen;
-
4 ist
ein Flussdiagramm, das ein Schema der vorliegenden Erfindung zeigt;
-
5 ist
eine darstellende Zeichnung zum Erklären eines Falles, in dem eine
Vielzahl von Tags die gleichen Tag- und Attributformate aufweisen;
-
6 ist
ein Blockdiagramm eines Systems zum Extrahieren von Information
aus einem strukturierten Dokument gemäß einer ersten Ausführung der
vorliegenden Erfindung;
-
7 ist
eine darstellende Zeichnung, die ein Beispiel einer angezeigten
Seite zur Teilauswahl gemäß der ersten
Ausführung
der vorliegenden Erfindung zeigt;
-
8 ist
eine Zeichnung, die ein Beispiel von Information zeigt, das in der
Teilinformations-Speichereinheit
gemäß der ersten
Ausführung der
vorliegenden Erfindung gespeichert wird;
-
9 ist
eine Zeichnung, die ein Beispiel von Baumstrukturdaten zeigt, die
von der Dokumentenstrukturanalyse der ersten Ausführung der
vorliegenden Erfindung erzeugt werden;
-
10 ist
eine Zeichnung, die die Inhalte der Teilinformations-Speichereinheit
gemäß der ersten Ausführung der
vorliegenden Erfindung zeigt;
-
11 ist
eine Zeichnung, die ein Beispiel einer Elementliste gemäß der ersten
Ausführung
der vorliegenden Erfindung zeigt;
-
12 ist
eine Zeichnung, die ein Beispiel einer konvertierten Baumdatenstruktur
gemäß der ersten
Ausführung
der vorliegenden Erfindung zeigt;
-
13 ist
ein Flussdiagramm eines Verfahrens eines Extrahierens von Information
aus einem strukturierten Dokument gemäß der ersten Ausführung der
vorliegenden Erfindung;
-
14 ist
ein Blockdiagramm eines Systems zum Extrahieren von Information
aus einem strukturierten Dokument gemäß einer zweiten Ausführung der
vorliegenden Erfindung;
-
15 ist
eine darstellende Zeichnung, die die Erzeugung eines Teilbaum-Identifikators
eines ausgewählten
Teils gemäß einer
zweiten Ausführung der
vorliegenden Erfindung zeigt;
-
16 ist
eine darstellende Zeichnung, die die Erzeugung von Teilbaum-Daten
gemäß einer zweiten
Ausführung
der vorliegenden Erfindung zeigt;
-
17 ist
ein Flussdiagramm eines Verfahrens eines Extrahierens von Information
aus einem strukturierten Dokument gemäß der zweiten Ausführung der
vorliegenden Erfindung;
-
18 ist
ein Blockdiagramm eines Systems zum Extrahieren von Information
aus einem strukturierten Dokument gemäß einer dritten Ausführung der
vorliegenden Erfindung;
-
19 ist
ein Flussdiagramm eines Verfahrens eines Extrahierens von Information
aus einem strukturierten Dokument gemäß der dritten Ausführung der
vorliegenden Erfindung;
-
20 ist
ein Flussdiagramm, das ein Schema einer Benutzer-Schnittstelle der
vorliegenden Erfindung zeigt;
-
21 ist
ein Blockdiagramm einer schematischen Benutzer-Schnittstelle gemäß der vorliegenden Erfindung;
-
22 ist
ein Blockdiagramm eines Gerätes gemäß einer
Ausführung
der vorliegenden Erfindung;
-
23 ist
ein Flussdiagramm eines Verfahrens eines Auswählens und Extrahierens eines
Teils gemäß einer
Ausführung
der vorliegenden Erfindung;
-
24 ist
eine darstellende Zeichnung, die ein Beispiel einer Teilauswahl
auf einem Browser gemäß der Ausführung der
vorliegenden Erfindung zeigt;
-
25 ist
ein Flussdiagramm, das einen Trieb einer Baumstruktur erzeugenden
Einheit gemäß der Ausführung der
vorliegenden Erfindung zeigt;
-
26 ist
ein Flussdiagramm eines Betriebs, der eine einen ausgewählten Teil
markierende Einheit gemäß der Ausführung der
vorliegenden Erfindung;
-
27 ist
eine darstellende Zeichnung, die ein Beispiel einer Baumstruktur
und die verknüpfte Darstellung
von ausgewählten
Teilen gemäß der Ausführung der
vorliegenden Erfindung zeigt;
-
28 ist
eine darstellende Zeichnung, die eine Konstruktion des Systems gemäß einer
Ausführung
der vorliegenden Erfindung zeigt; und
-
29 ist
eine darstellende Zeichnung, die ein Beispiel einer HTML-Quelle,
eine zugeordnete Baumstruktur und eine zugeordnete Browser-Darstellung
zeigt.
-
Beschreibung der bevorzugten
Ausführungen
-
In
dem Folgenden werden Ausführungen
der vorliegenden Erfindung in Bezug auf die begleitenden Zeichnungen
beschrieben.
-
4 ist
ein Flussdiagramm, das ein Schema der vorliegenden Erfindung zeigt.
-
Ein
Verfahren eines Extrahierens von Information aus einem strukturierten
Dokument gemäß der vorliegenden
Erfindung konvertiert ein Dokument in eine Baumstruktur und erzeugt
einen Identifikator eines Teilbaums entsprechend einem Teil des
Dokuments, wodurch irgendein gewünschter
Teil des strukturierten Dokuments im voraus spezifiziert wird und
eine Basis zum nachfolgenden Identifizieren des ausgewählten Teils
aus dem aktualisierten Dokument bereitgestellt wird.
-
Wie
in 4 gezeigt, verwendet dieses Verfahren einen Tag-Identifikator als
einen Identifikator eines Teilbaums, bei dem der Tag-Identifikator
einen Tag-Namen entsprechend der Wurzel des Teilbaums, Namen von
einem oder mehreren Formatattributen des Tags und die Werte der
Formatattribute umfasst (Schritt 1). Falls es eine Vielzahl
von Formatattributen für
den Tag-Identifikator gibt, werden die Formatattribute in einer
vorbestimmten Reihenfolge (z.B. in alphabetischer Reihenfolge) der
Formatattributnamen angeordnet, um den Tag-Identifikator zu normalisieren
(Schritt 2). Ein Teilbaum mit dem gleichen Tag-Identifikator
wie der bereits ausgewählte Teilbaum
wird als der ausgewählte
Teil aus der Liste von Identifikatoren von Teil-Bäumen ausgewählt, die in
dem Dokument existieren, das in eine Baumstruktur umgewandelt ist
(Schritt 3).
-
Falls
die gleiche Kombination eines Tag-Namens und von Formatattributen,
die die Wurzel des ausgewählten
Teilbaums darstellen, für
zwei oder mehr Tags in dem Dokument verwendet wird, wie in 5 gezeigt,
werden numerische Wert-Indizes erzeugt, die die Sequenznummern von
Tag-Identifikatoren anzeigen, die zu der gleichen hierarchischen Ebene
der Baumstruktur gehören.
Ein Tag-Identifikator und ein numerischer Wertindex werden als ein Satz
gepaart und eine Vielzahl von Sätzen
wird in Serie von der Wurzel der gesamten Baumstruktur zu der Wurzel
des ausgewählten
Teilbaums verbunden, wodurch der Identifikator des Teilbaums bereitgestellt wird.
-
Es
gibt dann eine Erforderlichkeit, den Teilbaum mit dem gleichen Identifikator
wie dem bereits ausgewählten
Teilbaum auf einer Liste von Identifikatoren von Teil-Bäumen zu
identifizieren, die in dem Dokument vorliegen, das in eine Baumstruktur
umgewandelt ist. Ein Anpassen von Teilbaum-Identifikatoren wird durch Berücksichtigen
lediglich des Tag-Identifikators
der Wurzel des ausgewählten
Teilbaums durchgeführt.
Falls es einen oder mehrere Teil-Bäume gibt, die mit dem ausgewählten Teilbaum übereinstimmen,
wird der numerische Wertindex, der mit dem Tag-Identifikator verknüpft ist,
angepasst, um die Kandidaten zu filtern. Falls immer noch mehr als
ein Kandidat nach dem Filtern der Kandidaten basierend auf der Verwendung
des numerischen Wert-Index verbleibt, wird ein Elternknoten-Tag
zum Anpassen der Identifikatoren berücksichtigt. Das Anpassen der
Identifikatoren wird rekursiv durch Heraufsteigen zu sukzessiven
Ahnenknoten durchgeführt,
bis lediglich ein Teilbaum als ein Kandidat verbleibt. Dieser verbleibende
Baum wird als der ausgewählte
Teilbaum identifiziert.
-
[ERSTE AUSFÜHRUNG]
-
6 ist
ein Blockdiagramm des Systems zum Extrahieren von Information aus
einem strukturierten Dokument gemäß der ersten Ausführung der vorliegenden
Erfindung.
-
In
dem gezeigten System wird die Zuverlässigkeit einer Teilextraktion
vermindert, da dieses basierend auf einem Verfahren arbeitet, das
unabhängig
von dem Start- und Endpositionen eines ausgewählten Teils ist. Es genügt nämlich, lediglich
unterschiedliche Formatattribute für einen Tag zu haben, selbst
falls ein Textblock mit dem gleichen Tag wie der Teilbaum des ausgewählten Teils
in die gleiche hierarchische Ebene eingesetzt wird, zu der der ausgewählte Teil
gehört.
-
Das
System aus 6 umfasst eine einen Teil auswählende Einheit 1 zum
Empfangen einer Anweisung von einem Benutzer, der einen Teil in
einem strukturierten Dokument auswählt, eine Teilinformations-Speichereinheit 2 zum
Speichern von Information über
den ausgewählten
Teil, eine Dokumentstruktur analysierende Einheit 3, die
einen Teilbaum in der Baumstruktur unter Verwendung von Tags und
zugeordneten Formatattributen identifiziert und eine Teil identifizierende
Einheit 4 zum Zurückgeben
auf Benutzeranforderung hin, eines Dokumententeils, der dem ausgewählten Teil
entspricht.
-
Die
Teil auswählende
Einheit 1 umfasst eine Dokument abrufende Einheit 11,
eine Teil spezifizierende Einheit 12 und eine Dokument
strukturierende Einheit 13.
-
Die
Dokument abrufende Einheit 11 empfängt eine Anforderung zur Dokumentenabfrage
von der Teil spezifizierenden Einheit 12, bei der die Anforderung
eine URL (uniform resource locator) spezifiziert, der als Identifikator
eines Dokuments dient. Die Dokument abrufende Einheit 11 ruft
dann das angeforderte Dokument ab und gibt es an die Teil spezifizierende
Einheit 12.
-
Die
Teil spezifizierende Einheit 12 sendet zu der Dokument
abrufenden Einheit 11 eine Anforderung zum Dokumentenabruf
mit einer URL und erhält das
Dokument. Die Teil spezifizierende Einheit 12 fordert dann
die Dokument strukturierende Einheit 13 auf, das Dokument
zu strukturieren und erhält
das in eine Baumstruktur konvertierte Dokument. Wie in 7 gezeigt,
stellt die Teil spezifizierende Einheit 12 eine Benutzerschnittstelle
bereit, die einem Benutzer hilft, einen Teil in dem Dokument zu
spezifizieren. Ein Identifikator eines Teilbaums wird gemäß den Koordinaten
oder Ähnlichem
des spezifizierten Teils erzeugt. Dieser Identifikator wird zusammen
mit der URL in der Teilinformation speichernden Einheit 2 gespeichert,
wie in 8 gezeigt.
-
Die
Dokument strukturierende Einheit 13 fordert die Dokumentstruktur
analysierende Einheit 3 auf, das Dokument zu strukturieren,
das von der Teil spezifizierenden Einheit 12 empfangen
wird. Die Dokument strukturierende Einheit 13 empfängt dann das
in eine Baumstruktur konvertierte Dokument als eine Datenstruktur,
die die Eltern-Kind-Beziehungen in der Baumstruktur wiedergibt,
wie in 9 gezeigt. Zum Beispiel werden Tags und Textelemente,
die die Baumstruktur bilden, von einer Objekt-ID, einem Kennsatz,
einer Kind-Knotenliste
und einem Teilbaum-Identifikator dargestellt. Eine Liste dieser
Gegenstände
wird als die Datenstruktur empfangen.
-
Die
Teilinformation speichernde Einheit 2 empfängt die
URL und den Teilbaum-Identifikator von der einen Teil spezifizierenden
Einheit 12 und ordnet eine Dokumententeil-ID zum Identifizieren
des Satzes der URL und des Teilbaum-Identifikators zu. Dieser Satz und die
zugeordnete Dokumententeil-ID werden, wie gezeigt, wie in 10 gespeichert.
Die Dokumententeil-ID wird dann zu der Teil spezifizierenden Einheit 12 zurückgegeben.
-
Die
Dokumentstruktur analysierende Einheit 3 umfasst eine Baumstruktur-Umwandlungseinheit 31 und
eine Teilbaum-Identifikator
erzeugende Einheit 32. Die Baumstruktur-Umwandlungseinheit 31 empfängt eine
Dokumentstruktur-Anforderung
zusammen mit dem strukturierten Dokument von der Dokument strukturierenden
Einheit 13 oder 43. Die Baumstruktur-Umwandlungseinheit 31 konvertiert das
empfangene Dokument in eine Baumstruktur mit Tags und Texten als
Dokumentelemente und sendet das konvertierte Dokument zu der Teilbaum-Identifikator
erzeugenden Einheit 32.
-
Die
Teilbaum-Identifikator erzeugende Einheit 32 erzeugt einen
Tag-Identifikator für
jedes Tag, das das Dokument bildet, das in die Baumstruktur von
der Baumstruktur-Umwandlungseinheit 31 konvertiert
ist. Der Tag-Identifikator umfasst einen Tag-Namen, einen Namen
eines Formatattributs und einen Wert eines Formatattributs. In einem
Beispiel aus 9 wird dem ersten „Table-Tag" ein Tag-Identifikator „table_border==&cellpadding=1" gegeben, der einen
Tag-Namen „Table" und Formatattribute und
ihre Werte ,border="0" cellpadding="1"' kombiniert.
Falls es zwei oder mehr Formatattribute gibt, werden sie in einer
vorbestimmten Reihenfolge der Formatattributnamen angeordnet, um
den Tag-Identifikator
zu normalisieren. Der Tag-Identifikator, der in dieser Weise erhalten
wird, wird als ein Identifikator eines Teilbaums verwendet, der
diesen Tag als seine Wurzel aufweist, und mit einem entsprechenden Baumstrukturelement
angepasst. Baumstrukturdaten einschließlich von Teilbaum-Identifikatoren, wie
in 9 gezeigt, werden dann zu der Dokument strukturierenden
Einheit 13 oder 43 gesendet.
-
Die
Teil identifizierende Einheit 4 umfasst eine Dokument-Abrufeinheit 41,
eine Teilbaum-Identifikator identifizierende Einheit 42 und
die Dokument strukturierende Einheit 43.
-
Die
Dokument-Abrufeinheit 41 empfängt eine Dokument-Abrufanforderung
zusammen mit einer URL, die als Dokument Identifikator dient, von
der Teilbaum-Identifikator identifizierenden Einheit 42. Auf
Empfang der Anforderung hin erhält
die Dokument-Abrufeinheit 41 das Dokument aus dem Internet
und gibt das Dokument zu der Teilbaum-Identifikator identifizierenden
Einheit 42 zurück.
-
Die
Teilbaum-Identifikator identifizierende Einheit 42 empfängt eine
Teil-Abrufanforderung zusammen mit der Dokumententeil-ID von dem
Benutzer und überträgt die Dokumententeil-ID
zu der Teilinformationsspeichereinheit 2, um die relevante
URL und den entsprechenden Teilbaum-Identifikator zu erhalten. Die Teilbaum-Identifikator
identifizierende Einhei 42 führt die URL zu der Dokument-Abrufeinheit 41,
um das entsprechende Dokument zu erhalten. Eine Anforderung wird
dann zu der Dokument strukturierenden Einheit 43 zum Strukturieren
des erhaltenen Dokumentes gesendet und eine Liste von Elementen
der umgewandelten Baumstruktur, wie in 11 gezeigt,
wird in Reaktion erhalten. Die Teilbaum-Identifikator identifizierende
Einheit 42 extrahiert einen Tag aus der erhaltenen Liste
von Elementen durch Finden des Tags, der dem Teilbaum-Identifikator entspricht.
Die Teilbaum-Identifikator identifizierende Einheit 42 versorgt
dann den Benutzer mit einem Dokumententeil, der dem Teilbaum entspricht, der
zu dem extrahierten Tag gehört.
-
Die
Dokument strukturierende Einheit 43 fordert die Dokumentstruktur
analysierende Einheit 3 auf, das Dokument zu strukturieren,
das von der Teilbaum-Identifikator identifizierenden Einheit 42 empfangen
wird. Die Dokument strukturierende Einheit 43 empfängt dann
das in eine Baumstruktur konvertierte Dokument als Datenstruktur,
die Eltern-Kindbeziehungen in der Baumstruktur darstellt, wie in 12 dargestellt.
Zum Beispiel werden Tags und Textelemente, die die Baumstruktur
bilden, durch eine Objekt-ID,
einen Kennsatz, eine Kindknotenliste und einen Teilbaum-Identifikator dargestellt.
Eine Liste dieser Gegenstände
wird als die Datenstruktur empfangen.
-
In
dem Folgenden wird ein Betrieb des Systems beschrieben.
-
13 ist
ein Flussdiagramm eines Verfahrens eines Extrahierens von Information
aus einem strukturierten Dokument gemäß der ersten Ausführung der
vorliegenden Erfindung.
-
Dieser
Betrieb umfasst einen Teil-Auswahlprozess A, einen Teil-Identifikationsprozess
B und einen Dokument strukturierenden Prozess M. In dem Folgenden
werden Schritte mit einer der drei Bezeichnungen A, B und M beschrieben.
-
Zuerst
wird der Teil-Auswahlprozess A beschrieben.
-
Bei
Schritt A10 reagiert die Teil spezifizierende Einheit 12 auf
eine Benutzeranweisung mit einer zugeordneten URL dadurch, dass
sie die Dokument abrufende Einheit 11 ein Dokument aus
dem Internet erhalten lässt,
das der URL entspricht. Die Teil spezifizierende Einheit 12 sendet
das empfangene Dokument an die Dokument strukturierende Einheit 13 zum
Strukturieren des Dokuments. Das Verfahren geht zu Schritt M10.
-
Bei
Schritt M10 empfängt
die Baumstruktur-Umwandlungseinheit 31 das
strukturierte Dokument von der Dokument strukturierenden Einheit 13 und
konvertiert das Dokument in eine Baumstruktur mit Tags und Text
als Dokumentelemente, das zu der Teilbaum-Identifikator erzeugenden
Einheit 32 zugeführt
wird. Das Verfahren geht dann zu Schritt M20.
-
Bei
Schritt M20 erzeugt die Teilbaum-Identifikator erzeugende Einheit 32 einen
Tag-Identifikator für
jedes Tag, das das Dokument bildet, das in die Baumstruktur von
der Baumstruktur-Umwandlungseinheit 31 umgewandelt ist.
Der Tag-Identifikator
umfasst einen Tag-Namen, einen Namen eines Formatattributs und einen
Wert des Formatattributs. In einem Beispiel aus 9 wird
dem „Table-Tag" ein Tag-Identifikator „table_border=0&cellpadding=1" gegeben, der einen
Tag-Namen „table" und Formatattribute
und ihre Werte ,border="0" cellpadding="1"' kombiniert.
Falls es zwei oder mehr Formatattribute gibt, werden sie in einer
vorbestimmten Reihenfolge der Formatattributnamen angeordnet, um
den Tag-Identifikator
zu normalisieren. Der Tag-Identifikator, der in dieser Weise erhalten
wird, wird als ein Identifikator eines Teilbaums verwendet und mit
einem entsprechenden Baumstrukturelement angepasst. Die Baumstrukturdaten
einschließlich von
Teilbaum-Identifikatoren, wie in 9 gezeigt, werden
dann zu der Dokument strukturierenden Einheit 13 gesendet.
-
Bei
Schritt A20 isoliert die Teil spezifizierende Einheit 12 einen
Teil, der von dem Benutzer durch eine Benutzerschnittstelle ausgewählt wird,
die den Benutzer mit einer Vorrichtung einer leichten Auswahl versorgt,
wie in 7 gezeigt. Das Verfahren geht dann zu Schritt
A30.
-
Bei
Schritt A30 erhält
die Teil spezifizierende Einheit 12 einen Teilbaum-Identifikator,
der dem ausgewählten
Teil aus den Koordinaten oder Ähnlichem eines
ausgewählten
Bereich entspricht, wie in 8 gezeigt.
Der erhaltende Teilbaum-Identifikator
und die Dokument-URL werden dann als ein Paar in der Teilinformationsspeichereinheit 2 gespeichert
und die Dokumententeil-ID wird entsprechend zu dem gespeicherten
Paar erhalten. Im Folgenden wird der Teilidentifikationsprozess
B beschrieben.
-
Bei
Schritt B10 empfängt
die Teilbaum-Identifikator identifizierende Einheit 42 eine
Teilabrufanforderung zusammen mit einer Dokumententeil-ID von dem
Benutzer. Die Teilbaum-Identifikator identifizierende Einheit 42 überträgt die Dokumententeil-ID zu
der Teilinformationsspeichereinheit 2, um die relevante
URL und den entsprechenden Teilbaum-Identifikator zu erhalten. Das
Verfahren geht dann zu Schritt B20.
-
Bei
Schritt B20 erhält
die Teilbaum-Identifikator identifizierende Einheit 42 ein
Dokument entsprechend der erhaltenen URL durch Verwenden der Dokument-Abrufeinheit 41.
Die Teilbaum-Identifikator identifizierende Einheit 42 leitet
das erhaltene Dokument an die Dokument strukturierende Einheit 43 und gibt
eine Dokumentstrukturierungsanforderung aus. Das Verfahren geht
zu Schritt M10.
-
Bei
Schritt M10 empfängt
die Baumstruktur-Umwandlungseinheit 31 das
strukturierte Dokument von der Dokument strukturierenden Einheit 43 und
konvertiert das Dokument in eine Baumstruktur einschließlich von
Dokument-Tags und
Texten. Die Baumstruktur-Umwandlungseinheit 31 führt die Baumstruktur
der Teilbaum-Identifikator erzeugenden Einheit 32 zu. Das
Verfahren schreitet fort zu Schritt M20.
-
Bei
Schritt M20 erzeugt die Teilbaum-Identifikator erzeugende Einheit 32 einen
Tag-Identifikator für
jedes Tag, das das Dokument bildet, das in die Baumstruktur von
der Baumstruktur-Umwandlungseinheit 31 konvertiert ist.
Der Tag-Identifikator
besteht aus einem Tag-Namen, einem Namen eines Formatattributs und
einem Wert des Formatattributs. In einem Beispiel aus 9 wird
dem „Table-Tag" ein Tag-Identifikator „table_border=0&cellpadding=1" gegeben, der einen
Tag-Namen „table" und Formatattribute
und ihre Werte ,border="0" cellpadding="1"' kombiniert.
Falls es zwei oder mehr Formatattribute gibt, sind diese in einer
vorbestimmten Reihenfolge der Formatattributnamen angeordnet, um
den Tag-Identifikator
zu normalisieren. Der in dieser Art und Weise erhaltene Tag-Identifikator
wird als ein Identifikator für
einen Teilbaum verwendet und mit einem entsprechenden Baumstrukturelement
angepasst. Baumstrukturdaten einschließlich von Teilbaum-Identifikatoren,
wie in 9 gezeigt, werden dann zu der Dokument strukturierenden
Einheit 43 gesendet. Das Verfahren geht dann zu B30.
-
Bei
B30 findet Teilbaum-Identifikator identifizierende Einheit 42 einen
Tag entsprechend zu dem erhaltenen Teilbaum-Identifikator aus der Liste von Elementen
der konvertierten Baumstruktur, wie in 11 gezeigt.
Falls kein entsprechender Teilbaumstruktur Identifikator gefunden
wird, endet das Verfahren. Falls ein entsprechender Teilbaumstruktur Identifikator
gefunden wird, geht das Verfahren zu Schritt B40 weiter.
-
Bei
Schritt B40 versorgt die Teilbaum-Identifikator identifizierende
Einheit 42 einen Benutzer mit einem Dokumententeil, der
zu einem Teilbaum gehört,
der dem erhaltenen Teilbaum-Identifikator entspricht.
-
[ZWEITE AUSFÜHRUNG]
-
14 ist
ein Blockdiagramm eines Systems zum Extrahieren von Information
aus einem strukturierten Dokument gemäß einer zweiten Ausführung der
vorliegenden Erfindung.
-
Das
gezeigte System ist auf eine Konfiguration gerichtet, die eindeutig
einen ausgewählten
Teil identifizieren kann, selbst falls die gleiche Kombination eines
Tags und von Formatattributen, die der Wurzel eines ausgewählten Teilbaums
entspricht, für
andere Tags in dem Dokument verwendet wird.
-
Die
Konfiguration der zweiten Ausführung
ist identisch zu derjenigen der ersten Ausführung außer für eine Teilbaum-Identifikator identifizierende
Einheit 32a der Dokumentstruktur analysierenden Einheit 3. Eine
Beschreibung des identischen Teils wird im Folgenden ausgelassen.
-
Die
Teilbaum-Identifikator erzeugende Einheit 32a erzeugt einen
Tag-Identifikator für
jedes Tag, das das Dokument bildet, das in die Baumstruktur durch
die Baumstruktur-Umwandlungseinheit 31 konvertiert
ist. Der Tag-Identifikator umfasst einen Tag-Namen, einen Namen
eines Formatattributs und einen Wert eines Formatattributs. In einem
Beispiel aus 15 wird dem ersten „Table-Tag" ein Tag-Identifikator „table_border=0&cellpadding=1" gegeben, der einen
Tag-Namen „table" und Formatattribute
und ihre Werte ,border="0" cellpadding="1"' umfasst.
Falls es zwei oder mehr Formatattribute gibt, werden diese in einer
vorbestimmten Reihenfolge der Formatattributnamen angeordnet, um
den Tag-Identifikator
zu normalisieren.
-
Numerische
Wert-Indizes werden dann erzeugt, die die Sequenznummer von Tag-Identifikatoren
anzeigen, die zu der gleichen hierarchischen Ebene der Baumstruktur
gehören.
Ein Tag-Identifikator und ein numerische Wertindex werden als ein Satz
gepaart und eine Vielzahl an Sätzen
werden in Serie von der Wurzel der gesamten Baumstruktur zu der
Wurzel eines Teilbaums verbunden, wodurch der Identifikator des
Teilbaums bereitgestellt wird, wie in 15 gezeigt.
Die Baumstrukturdaten einschließlich
von Teilbaum-Identifikatoren, wie in 16 gezeigt,
werden dann zu der Dokument strukturierenden Einheit 13 oder 43 zugeführt.
-
17 ist
ein Flussdiagramm eines Verfahrens eines Extrahierens von Information
aus einem strukturierten Dokument gemäß der zweiten Ausführung der
vorliegenden Erfindung.
-
Im
Folgenden wird eine Beschreibung in Bezug auf andere Schritte als
Schritt M20a ausgelassen, da diese Schritte identisch zu denjenigen
der ersten Ausführung
sind.
-
Bei
Schritt M20a erzeugt die Teilbaum-Identifikator erzeugende Einheit 32a einen
Tag-Identifikator für
jedes Tag, das das Dokument bildet, das in die Baumstruktur durch
die Baumstruktur-Umwandlungseinheit 31 konvertiert ist.
Der Tag-Identifikator umfasst
einen Tag-Namen, einen Namen eines Formatattributs und einen Wert
eines Formatattributs. In einem Beispiel aus 15 wird
dem ersten „Table-Tag" ein Tag-Identifikator „table_border=0&cellpadding=1" gegeben, der einen
Tag-Namen „table" und Formatattribute
und ihre Werte ,border="0" cellpadding="1"' umfasst.
Falls es zwei oder mehr Formatattribute gibt, werden diese in einer
vorbestimmten Reihenfolge der Formatattributnamen angeordnet, um
den Tag-Identifikator
zu normalisieren. Das Verfahren geht dann zu Schritt M30a.
-
Bei
Schritt M30a erzeugt die Teilbaum-Identifikator erzeugende Einheit 32a numerische
Wert-Indizes, die die Sequenznummer von Tag-Identifikatoren anzeigen,
die zu der gleichen hierarchischen Ebene der Baumstruktur gehören und
kombiniert jeden Tag-Identifikator mit einem entsprechenden numerischen
Wertindex als einen Satz. Eine Vielzahl von Sätzen wird in Serie von der
Wurzel der gesamten Baumstruktur zu der Wurzel eines Teilbaums verbunden,
wodurch der Identifikator des Teilbaums bereitgestellt wird, wie
in 15 gezeigt. Die Baumstrukturdaten einschließlich von
Teilbaum-Identifikatoren, wie in 16 gezeigt,
werden dann zu der Dokument strukturierenden Einheit 13 oder 43 zugeführt. Das
Verfahren schreitet dann weiter zu Schritt A20 oder B30.
-
[DRITTE AUSFÜHRUNG]
-
18 ist
ein Blockdiagramm eines Systems zum Extrahieren von Information
aus einem strukturierten Dokument gemäß einer dritten Ausführung der
vorliegenden Erfindung.
-
Das
gezeigte System ist auf eine Konfiguration gerichtet, die die Verschlechterung
einer Zuverlässigkeit
einer Teilextraktion vermindern kann, selbst falls offene Tags oberhalb
des ausgewählten Teils
existieren.
-
Die
Konfiguration der dritten Ausführung
ist identisch zu derjenigen der ersten Ausführung außer für eine Teilbaum-Identifikator identifizierende
Einheit 42a. Eine Beschreibung des identischen Teils wird
im Folgenden ausgelassen.
-
Die
Teilbaum-Identifikator identifizierende Einheit 42a empfängt eine
Teil-Abrufanforderung mit einer Dokumententeil-ID von einem Benutzer und leitet die
Dokumententeil-ID an die Teilinformationsspeichereinheit 2 weiter,
um die relevante URL und den entsprechenden Teilbaum-Identifikator
zu erhalten. Die URL wird dann zu der Dokument-Abrufeinheit 41 übertragen,
um das entsprechende Dokument zu erhalten. Die Teilbaum-Identifikator identifizierende
Einheit 42a sendet eine Anforderung zu der Dokument strukturierenden
Einheit 43, um das empfangene Dokument zu strukturieren,
wodurch eine Liste an Elementen der konvertierten Baumstruktur erhalten
wird, wie in 16 gezeigt.
-
Der
Teilbaum-Identifikator, der aus der Teilinformationsspeichereinheit 2 erhalten
wird, muss aus einer Liste von Teilbaum-Identifikatoren der erhaltenen
Elemente identifiziert werden. Ein Tag-Identifikator, der an dem
Ende des Identifikators lokalisiert ist, wird alleine für den Anpassungszweck
verwendet. In dem Falle von „doc.table_border=1&cellpadding=1[0].table_border=0&cellpadding=1[1]" bezieht sich zum
Beispiel ein Tag-Identifikator
an dem Ende des Teilbaum-Identifikators auf „table_border=0&cellpadding=1[1]", das an dem Ende
der Zeichenkette bereitgestellt ist. Wenn es zwei oder mehr Kandidaten
gibt, die mit dem ausgewählten
Teilbaum übereinstimmen,
werden die numerischen Wert-Indizes, die mit den Tag-Identifikatoren
verknüpft
sind, in Reihenfolge erwähnt,
um die Kandidaten zu filtern.
-
Falls
mehr als ein Kandidat nach dem Filtern der Kandidaten basierend
auf einer Verwendung des numerischen Wertindex verbleibt, wird ein
Elternknoten-Tag zum Anpassen von Identifikatoren berücksichtigt.
Das Anpassen von Identifikatoren wird rekursiv durch Heraufsteigen
zu sukzessiven Ahnenknoten durchgeführt, bis lediglich ein Teilbaum
als Kandidat verbleibt. Dieser verbleibende Baum wird als der ausgewählte Teilbaum
identifiziert. Der Benutzer wird mit einem Dokumententeil versorgt,
der dem identifizierten Teilbaum-Identifikator entspricht.
-
19 ist
ein Flussdiagramm eines Verfahrens eines Extrahierens von Information
aus einem strukturierten Dokument gemäß der dritten Ausführung der
vorliegenden Erfindung. In dem Folgenden wird eine Beschreibung
in Bezug auf andere Schritte als Schritt B30a bis B90a ausgelassen,
um eine doppelte Beschreibung, identisch zu derjenigen der ersten
Ausführung,
zu vermeiden.
-
Bei
B30a muss die Teilbaum-Identifikator identifizierende Einheit 42 den
Teilbaum-Identifikator, der aus der Teilinformationsspeichereinheit 2 erhalten
wird, aus der Liste von Elementen der konvertierten Baumstruktur
identifizieren, wie in 16 gezeigt. Zu diesem Zweck
wählt die
Teilbaum-Identifikator identifizierende Einheit 42 einen
Tag-Identifikator an dem Ende des Identifikators zur Verwendung als
ein Anpassungselement. Im Falle von „doc.table_border=1&cellpadding=1[0].table_border=0&cellpadding=1[1]" bezieht sich zum
Beispiel ein Tag-Identifikator
am Ende des Teilbaum-Identifikators auf „table_border=0&cellpadding=1[1]", das an dem Ende
der Zeichenkette bereitgestellt ist. Nachdem dieser Tag-Identifikator ausgewählt ist,
geht das Verfahren zu Schritt B40a.
-
Bei
Schritt B40a wird das Anpassen von Tag-Identifikatoren in Bezug
auf den gegenwärtig ausgewählten Tag-Identifikator
durchgeführt.
Falls es zwei oder mehr Kandidaten gibt, die mit dem erhaltenen
Teilbaum-Identifikator übereinstimmen,
geht das Verfahren zu Schritt B50a. Falls alternativ es lediglich einen
Kandidaten gibt, geht das Verfahren zu Schritt B60a. Falls es alternativ
keinen Kandidaten gibt, endet das Verfahren.
-
Bei
Schritt B50a wird das Filtern der Kandidaten durch Bezugnehmen auf
die numerischen Wert-Indizes durchgeführt, die mit dem Tag-Identifikator
verknüpft
sind. Falls zwei oder mehr Kandidaten nach einem Filtern verbleiben,
geht das Verfahren zu Schritt B80a voran. Falls alternativ lediglich
ein Kandidat verbleibt, geht das Verfahren zu Schritt B60a. Falls
es keinen Kandidaten gibt, endet das Verfahren.
-
Bei
Schritt B60a wird, da es lediglich einen Kandidaten gibt, der mit
dem Elternbaumteil Identifikator übereinstimmt, dieser Kandidaten-Teilbaum
als der ausgewählte
Teilbaum identifiziert, gefolgt von einem Voranschreiten zu Schritt
B70a.
-
Bei
Schritt B70a versorgt die Teilbaum-Identifikator identifizierende
Einheit 42 den Benutzer mit einem Dokumentteil, der zu
dem Teilbaum gehört, der
dem erhaltenen Teilbaum-Identifikator entspricht.
-
Bei
Schritt B80a wird, da zwei oder mehr Kandidaten verbleiben, selbst
nach einem Filtern basierend auf der Verwendung von numerischen Wert-Indizes,
ein nächstes
Anpassungselement durch Heraufsteigen zu der nächsten Ebene gewählt. Falls
nämlich
der Tag-Identifikator „table_border=0& cellpadding=1[1]" an dem Ende von „doc.table_border=1&cellpadding=1[0].table_border=0&cellpadding=1[1]" zuerst verwendet
wird, wird ein Eltern Tag-Identifikator „table_border=1&cellpadding=1[0]" als ein nächstes Anpassungselement
verwendet. Das Verfahren geht dann zu Schritt B90a.
-
Bei
Schritt B90a wird eine Überprüfung durch Heraufsteigen
zu der nächst
höheren
Ebene bei Schritt B80 durchgeführt,
ob kein weiteres Anpassungselement existiert, nach einem Verwenden
des Tags an der höchsten
Ebene als ein Anpassungselement. Falls kein weiteres Anpassungselement
existiert, endet das Verfahren. Ansonsten geht das Verfahren zurück zu Schritt
B40a.
-
Die
Verfahren der Ausführungen,
wie oben beschrieben, können
als Programme implementiert sein, die auf einem Computer installiert
sind, der als ein Gerät
zum Extrahieren von Information verwendet wird. Derartige Programme
können
durch Netzwerke verteilt werden.
-
Diese
Programme können
in einem Festplattenlaufwerk oder einem entfernbaren Speichermedium,
wie zum Beispiel einer flexiblen Diskette, einer CD-Rom oder Ähnlichem
gespeichert werden, das mit dem Computer verbunden ist, der als
ein Information extrahierendes Gerät verwendet wird und können in
den Speicher zur Zeit einer Verwendung des Verfahrens der Erfindung
geladen werden.
-
20 ist
ein Flussdiagramm, das ein Schema der vorliegenden Erfindung zeigt,
die einen Benutzer mit einer Benutzerschnittstelle zur einfachen Auswahl
eines Teils eines strukturierten Dokumentes, wie zum Beispiel eines
HTML-Dokuments,
in einer Weise versorgt, die intuitiv leicht zu verstehen ist.
-
Die
vorliegende Erfindung ist auf ein Verfahren eines Auswählens und
Extrahierens eines Teils eines strukturierten Dokumentes gerichtet,
wie zum Beispiel eines HTML-Dokuments. Ein Endknoten an einem Ende
einer Baumstruktur wird identifiziert, der einer Position entspricht,
die von einem Benutzer auf einem Bildschirm angezeigt wird, der
das Dokument anzeigt (Schritt 1). Der Benutzer wird eingeladen,
einen Knoten aus einer Serie von Knoten zu wählen, die durch sukzessives
Detektieren höherer
Knoten von dem Endknoten an erhalten werden (Schritt 2). Dann
wird ein Teil des strukturierten Dokuments entsprechend dem Benutzer-gewählten Knoten
ausgewählt
(Schritt 3).
-
21 ist
ein Blockdiagramm einer schematischen Benutzerschnittstelle gemäß der vorliegenden
Erfindung.
-
Ein
Gerät zum
Auswählen
und Extrahieren eines Teils eines strukturierten Dokuments, wie
zum Beispiel ein HTML-Dokument, umfasst eine Knoten detektierende
Einheit 101 zum Detektieren eines Endknotens einer Baumstruktur,
die einer Position entspricht, die von einem Benutzer auf einem
Bildschirm mit einem angezeigten Dokument angezeigt wird, einer
Auswahl bestimmenden Einheit 102 zum Auffordern des Benutzers,
einen Knoten aus einer Serie von Knoten auszuwählen, die durch sukzessives
Detektieren höherer
Knoten von dem Endknoten erhalten werden, und eine Teil auswählende Einheit 103 zum
Auswählen
des Teils des strukturierten Dokuments, der dem Benutzer-gewählten Knoten
entspricht.
-
22 ist
ein Blockdiagramm eines Geräts gemäß einer
Ausführung
der vorliegenden Erfindung.
-
Ein
Gerät 100 zum
Auswählen
und Extrahieren eines Teils eines strukturierten Dokuments umfasst
eine Anzeigesteuerungseinheit 110 einschließlich einer
einen ausgewählten
Teil markierenden Einheit 111, einer Eingabeeinheit 120,
einer Baumstruktur erzeugenden Einheit 130 und einer Anzeigeteil speichernden
Einheit 140. Ein Anzeigegerät 10 und ein Eingabegerät 20 werden
mit dem Gerät 100 verbunden.
-
Das
Anzeigegerät 10 zeigt
HTML-Text und Bilder an, die von einem Browser verarbeitet werden.
-
Das
Eingabegerät 20 empfängt Information, die
von einem Benutzer durch einen Knopfbetrieb oder Ähnliches
spezifiziert wird. Ein derartiger Knopfbetrieb umfasst eine Bereichsvergrößerung (+),
eine Größenverringerung
(–), Löschen (clear)
und Auswählen
(select).
-
Die
einen ausgewählten
Teil markierende Einheit 111 der Anzeigesteuerungseinheit 110 zeigt ein
Objekt an, das von einem Benutzer-Knopfbetrieb aus Objekten an unterschiedlichen
Ebenen der Baumstruktur ausgewählt
wird. Ein Teil, der als ein von dem Benutzer gewünschter Teil ausgewählt ist, wird
in der Anzeigeteil speichernden Einheit 140 zum Beispiel
als ein HTML-Text gespeichert.
-
Die
Eingabeeinheit 120 empfängt
Benutzereingaben (Eingaben durch Knopfbetriebe) von dem Eingabegerät 20 und
leitet die eingegebene Information an die Baumstruktur erzeugende
Einheit 130 und die einen ausgewählten Teil markierende Einheit 111 weiter.
-
Die
Baumstruktur erzeugende Einheit 130 findet ein Objekt,
das an einer Position lokalisiert ist, die von einem Benutzer angeklickt
wird, durch Auswählen
des Objektes aus Objekten, die die gesamte Baumstruktur des HTML-Dokuments
bilden. Das Objekt wird in einem Feld von Objekten gespeichert.
-
23 ist
ein Flussdiagramm eines Verfahrens des Auswählens und Extrahierens eines
Teils gemäß einer
Ausführung
der vorliegenden Erfindung.
-
Bei
Schritt 110 wird ein zu verarbeitendes HTML-Dokument in
dem Browserfenster eines Benutzerendgerätes angezeigt. Bei Schritt 120 klickt der
Benutzer einen Teil an, den der Benutzer wünscht auf dem Bildschirm auszuwählen. Bei
Schritt 130 extrahiert die Baumstruktur erzeugende Einheit 130 ein Objekt
entsprechend zu der angeklickten Position aus den Objekten, die
die HTML-Baumstruktur bilden. Ein rechteckiger Bereich entsprechend
zu dem extrahierten Objekt wird auf dem Dokument markiert, das auf
dem Bildschirm angezeigt ist, wie in 24 gezeigt.
-
Falls
der Benutzer den markierten Teil als seine/ihre Auswahl bestimmt,
wird der markierte Teil in der Anzeigeteil speichernden Einheit 140 als
ein HTML-Text gespeichert (Schritt 160). Dann wird eine Markierung
auf dem Dokument entfernt (Schritt 180). Falls es der Benutzer
wählt,
den markierten Bereich nicht auszuwählen, kann der Benutzer den
markierten Bereich durch Betreiben der Knöpfe, die auf dem Bildschirm
gezeigt sind, vergrößern („+"), verkleinern („–„) oder
löschen
(„clear") (Schritt 170).
Durch diese Knopfbetriebe werden Objekte, die zu oberen Ebenen oder
zu niedrigeren Ebenen der Baumstruktur gehören, sukzessiv angezeigt. Wenn
ein gewünschter
Teil auf dem Bildschirm markiert ist, wird der markierte Teil bei
Schritt 150 durch den Auswahlknopf („select") ausgewählt. Der ausgewählte Teil
wird in der Anzeigeteil speichernden Einheit 140 als ein HTML-Text
gespeichert (Schritt 160).
-
Das
oben beschriebene Verfahren kann von einem Browser durchgeführt werden.
In einem derartigen Fall wird zu verarbeitendes HTML mit zusätzlichen
Skripten, die in Java Skript geschrieben sind, bereitgestellt und
in den Browser gespeist.
-
In
dem Folgenden wird der Betrieb einer Baumstruktur erzeugenden Einheit 130 beschrieben.
-
25 ist
ein Blockdiagramm, das einen Betrieb der Baumstruktur erzeugenden
Einheit gemäß einer
Ausführung
der vorliegenden Erfindung zeigt.
-
Ein
Feld wird initialisiert (Schritt 131). Ein Objekt, das
an einer angeklickten Position lokalisiert ist, wird detektiert
(Schritt 132) und in dem Feld gespeichert (Schritt 133).
Hier sind Objekte Teil des HTML-Dokuments und entsprechen den jeweiligen Knoten
einer Baumstruktur. Auf dem Bildschirm gibt es Bereiche, die zu
den jeweiligen Objekten gehören. In
dem Beispiel aus 29 umfasst eine Baumstruktur
insgesamt 13 Knoten. Falls das detektierte Objekt ein Eltern-Objekt
aufweist (Ja bei Schritt 134), wird dieses Eltern-Objekt
ebenso in dem Feld als ein Objekt gespeichert, das zu der gleichen
angeklickten Position gehört
(Schritt 133). Dieser Prozess wird mit Bezug auf alle Objektschichten
durchgeführt,
wobei ein Objektfeld a entsprechend der angeklickten Position erzeugt
wird. Ein Anklicken auf „Apfel" in 29 resultiert
in Objekten „k,
j, i, h, f, e, d, und a",
die in dem Feld a gespeichert werden.
-
Jedes
Element dieses Feldes wird überprüft (Schritt 135).
Dies ist dazu vorgesehen, ein Objekt der höchsten Ebene aus Objekten auszuwählen, die nicht
voneinander von ihrer Erscheinung auf dem Bildschirm unterschieden
werden können.
Derartige Fälle
treten auf, wenn Text und Bilder, die zu einem Objekt gehören, genauso
wie Texte und Bereiche, die zu dem Objekt gehören, identisch zu denen anderer Objekte
sind.
-
Falls
es ein nächstes
Element gibt, wird eine Überprüfung durchgeführt, ob
ein Text, der zu dem nächsten
Element gehört,
unterschiedlich ist (Schritt 137). Falls dieser unterschiedlich
ist, wird das Objekt in einem Feld b gespeichert (Schritt 138).
Dann wird erneut eine Überprüfung durchgeführt, ob
es ein nächstes
Element gibt (Schritt 136). Falls kein nächstes Element
existiert, wird das Objekt in dem Feld b gespeichert (Schritt 139).
Dadurch endet das Verfahren.
-
In
dieser Weise wird das Feld b von Objekten erhalten, bei dem diese
Objekte der angeklickten Position entsprechen und voneinander auf
dem Bildschirm unterscheidbar sind.
-
In
dem Beispiel aus 29 weisen „k" und „j" den gleichen Text „Apfel" auf, der zu diesem gehört und „j", das an der höheren Ebene
liegt, wird in dem Feld b gespeichert. „i" und „h" weisen den gleichen Text „Apfel" und „Orange" auf, der zu diesen
gehört und „h", das an der höheren Ebene
ist, wird in dem Feld b gespeichert. In diesem Beispiel werden „i", „h" und „a" in dem Feld b gespeichert.
-
Im
Folgenden wird die einen ausgewählten Teil
markierende Einheit 111 beschrieben.
-
26 ist
ein Flussdiagramm eines Betriebs, der eine ausgewählten Teil
markierende Einheit 111 gemäß einer Ausführung der
vorliegenden Erfindung.
-
Ein
anzuzeigendes Objekt wird ausgewählt (Schritt 141).
In diesem Fall einer anfänglichen
Darstellung wird ein gegenwärtiges
Element des Feldes b ausgewählt.
Im Falle einer vergrößerten Darstellung
wird ein nächst
höheres
Element des Feldes b als das gegenwärtige Element ausgewählt. Im
Fall einer Darstellung verringerter Größe wird ein nächst niedrigeres
Element des Feldes b als das gegenwärtige Element ausgewählt.
-
Bei
der anfänglichen
Darstellung wird eine rechteckige Form extrahiert, die den Objekten
einer niedrigsten Ebene des Objektfeldes b entspricht (Schritt 142).
Das extrahierte Rechteck wird auf dem Bildschirm überlagert,
wie in 24 gezeigt (Schritt 143).
Unter den in 24 gezeigten Knöpfen wählt der
Vergrößerungsknopf „+" ein nächst höheres Objekt als
das Objekt entsprechend dem gegenwärtig ausgewählten Bereich aus, was darin
resultiert, dass das Rechteck des neu ausgewählten Objektes auf dem Bildschirm überlagert
wird. Ebenso wählt
der Größenverringerungsknopf „–„ das nächst niedrigere Objekt
aus. Hinsichtlich des Beispiels aus 29 wird
ein rechteckiger Bereich auf der Anzeige in Bezug auf ein entsprechendes
Objekt überlagert,
das aus dem Feld b ausgewählt
ist, wie in 27 gezeigt.
-
Im
Folgenden wird eine Systemkonstruktion in ihrer Gesamtheit beschrieben.
-
28 ist
eine darstellende Zeichnung, die eine Konstruktion des Systems gemäß einer
Ausführung
der vorliegenden Erfindung zeigt.
-
Das
in 28 gezeigte System umfasst ein Benutzer-Client-Endgerät 100 (Gerät zum Auswählen und
Extrahieren eines Teils aus einem strukturierten Dokument), einen
Weiterleitungs-Server 200 und einen
Server 300, der ein HTML-Dokument speichert, das einem
Verarbeiten unterzogen wird.
-
In
Bezug auf das HTML-Dokument, das einem Verarbeiten unterzogen wird,
wird der Weiterleitungs-Server 200 „http://www.myserv.com/cgi-bin/get.cgi?http:www.foo.com/doc/html zu
dem Zweck bereitgestellt, um zu erlauben, dass die oben beschriebenen
Operationen auf dem gleichen Bildschirm durchgeführt werden, der „http://www.foo.com/doc.html" zeigt. Im Folgenden entsprechen
Zahlen, die in „()" eingeklammert sind, den
jeweiligen Zahlen, die in „()" in 28 eingeklammert
sind.
- (1) Von dem Client-Endgerät 100 startet
der Benutzer das CGI des Weiterleitungs-Servers 200 in Bezug
auf die URL des HTML-Dokuments,
das einem Verarbeiten unterzogen wird.
- (2) Der Weiterleitungs-Server 200 sendet eine Anforderung
an den Server 300 durch Verwenden der URL.
- (3) Der Server 300 überträgt das HTML-Dokument
an den Weiterleitungs-Server 200.
- (4) Der Weiterleitungs-Server fügt ein Job-Skript an das Ende
des HTML-Dokuments hinzu, das von dem Server 300 erhalten
wird.
- (5) Der Weiterleitungs-Server 200 überträgt das HTML-Dokument an das
Client-Endgerät 100, wobei
das HTML-Dokument eine angehängte Funktion
zum Auswählen
und Extrahieren eines Dokumententeils aufweist.
-
In
dieser Weise kann das Client-Endgerät 100 das HTML-Dokument mit der
angehängten Funktion
eines Auswählens
und Extrahierens eines Dokumententeils verarbeiten.
-
Komponenten
des Gerätes
zum Auswählen und
Extrahieren eines strukturierten Dokumententeils, wie in diesen
Ausführungen
beschrieben, können
als Programme implementiert sein, die in einem Computer installiert
sind, der als ein Gerät
zum Auswählen
und Extrahieren eines strukturierten Dokumententeils verwendet werden
soll. Derartige Programme können
durch Netzwerke verteilt werden.
-
Diese
Programme können
in einem Festplattenlaufwerk oder einem entfernbaren Speichermedium,
wie zum Beispiel einer flexiblen Diskette, einer CD-Rom oder Ähnlichem
gespeichert werden, das mit dem Computer verbunden ist, der als
das Gerät zum
Auswählen
und Extrahieren eines strukturierten Dokumententeils verwendet wird
und können
in den Speicher zur Zeit eines Verwendens des Verfahrens der Erfindung
geladen werden.
-
Weiter
ist die vorliegende Erfindung nicht auf diese Ausführungen
beschränkt,
sondern es können unterschiedliche
Variationen und Modifikationen durchgeführt werden, ohne von dem Umfang
der vorliegenden Erfindung abzuweichen.
-
Die
vorliegende Anmeldung basiert auf einer
Japanischen Prioritätsanmeldung Nr. 2002-190621 , die
am 28. Juni 2002 eingereicht wurde und einer
Japanischen Prioritätsanmeldung Nr. 2002-204641 ,
die am 12. Juli 2002 beim Japanischen Patentamt eingereicht wurde.