DE10121791A1 - Verfahren und Vorrichtung für dynamische Web-Seitenanordnung - Google Patents
Verfahren und Vorrichtung für dynamische Web-SeitenanordnungInfo
- Publication number
- DE10121791A1 DE10121791A1 DE10121791A DE10121791A DE10121791A1 DE 10121791 A1 DE10121791 A1 DE 10121791A1 DE 10121791 A DE10121791 A DE 10121791A DE 10121791 A DE10121791 A DE 10121791A DE 10121791 A1 DE10121791 A1 DE 10121791A1
- Authority
- DE
- Germany
- Prior art keywords
- user interaction
- electronic document
- entry
- page
- data
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0485—Scrolling or panning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/972—Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0489—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof
- G06F3/04895—Guidance during keyboard input operation, e.g. prompting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Ein Browser rendert eine Seite gemäß Benutzergewohnheiten zur Anzeige. Wenn ein Benutzer mit einer Seite interagiert, die einer Netzadresse zugeordnet ist, wird ein Eintrag in einer Datei erstellt, der das Element auf der Seite der Benutzerinteraktion der Netzadresse zuordnet. Wenn die Seite erneut besucht wird, wird die Datei überprüft, um festzustellen, ob irgendwelche Einträge vorhanden sind. Falls ein Eintrag vorhanden ist und die gespeicherte Benutzerinteraktion noch immer für diese Seite zutrifft, wird die Seite gerendert, so dass die Position, mit der der Benutzer interagierte, am Beginn der Anzeige bereitgestellt wird, oder das Element wird neu angeordnet, wie im Falle einer Tabelle, oder es erfolgen sowohl eine erneute Positionierung als auch eine erneute Anordnung. Eine solche Seitenrendering verringert die Notwendigkeit für den Benutzer, die Seite zu verschieben, um die gewünschten Informationen zu sehen.
Description
Die vorliegende Erfindung betrifft Informationssysteme.
Insbesondere betrifft die Erfindung einen Browser (browser), der
eine Seite gemäß vorhergehender Benutzeraktivität auf dieser
Seite zur Anzeige bringt.
Informationssysteme, beispielsweise das Internet, stellen
Benutzern einen Zugriff auf eine große Informationsmenge bereit.
Viele Benutzer solcher Systeme verwenden einen Web-Browser oder
ein ähnliches Programm, um die Informationen zu finden, an denen
sie interessiert sind. Normalerweise wählt der Benutzer
elektronische Dokumente aus, beispielsweise Hypertext Markup
Language- ("HTML"-) Dokumente, lädt sie und zeigt sie an, wobei
er eine als Browser bezeichnete Software verwendet, die
normalerweise im Speicher des (Client-) Computers des Benutzers
gespeichert ist. Vom Browser angezeigte HTML-Dokumente enthalten
im Allgemeinen Bereiche, die bei Auswahl durch einen Benutzer
den Browser veranlassen, andere HTML-Dokumente zu laden und
anzuzeigen, die es dem Benutzer ermöglichen, Informationen
einzugeben oder eine andere Benutzerinteraktion zu aktivieren.
Ein wählbarer Bereich, beispielsweise eine Hypertextverbindung,
kann ein Text, eine Grafik oder allgemein irgendein
gekennzeichneter Bereich eines angezeigten HTML-Dokumentes sein.
Hypertextverbindungen haben zum Beispiel eine zugeordnete
Netzadresse, beispielsweise einen Uniform Resoutce Locator
("URL"), eines HTML-Zieldokumentes, das geladen und angezeigt
wird, wenn die Verbindung vom Benutzer ausgewählt wird.
Ein Problem bei elektronischen Dokumenten, beispielsweise HTML-
Dokumenten, besteht darin, dass der Anzeigentyp und die
Seitenformatierung die für den Benutzer sichtbare, angezeigte
Ausgabe beeinflussen können. HTML-Dokumente werden normalerweise
auf irgendeiner aus einer Vielzahl von Anzeigeeinheiten
angezeigt, beispielsweise Kathodenstrahlröhren ("CRTs") oder
Flüssigkristallanzeigen. Manchmal kann eine ganze HTML-Seite
angezeigt werden, manchmal muss der Benutzer die Anzeige "auf-
und abverschieben" ("scroll"), das heißt, jenen gegenwärtig
nicht gezeigten Teil der Seite auswählen, den der Benutzer
betrachten möchte, indem eine Eingabe von einer
Benutzereingabeeinheit bereitgestellt wird. Eine HTML-Seite
könnte zum Beispiel so geladen werden, dass der obere Teil der
Seite im oberen Teil der Anzeige erscheint, wobei ein unterer
Teil der Seite nicht gezeigt wird.
Der Benutzer kann normalerweise Pfeiltasten, eine Maus, ein
Scrollrad oder eine ähnliche Einheit betätigen, um die Seite
nach unten zu verschieben (scroll down). Manchmal überschreitet
die Breite oder die Länge der HTML-Seite den Anzeigebereich, und
ein Benutzer muss den Bildschirminhalt möglicherweise zur Seite
oder nach unten verschieben, um die gewünschten Informationen zu
betrachten. Die Notwendigkeit eines Verschiebens zum gewünschten
Betrachtungsbereich kann kompliziert werden, wenn elektronische
Dokumente, die für einen bestimmten Anzeigentyp entworfen
wurden, beispielsweise für eine Tischcomputeranzeige, auf einer
kleineren Anzeige betrachtet werden, beispielsweise auf der
Anzeige eines Funktelefons, die möglicherweise nur etwa 11
Zeilen aufweist. Leider sind die Benutzereingabeeinheiten, mit
denen Einheiten mit kleinen Anzeigen ausgestattet sind, oftmals
mühsamer zu handhaben als andere bei Tischsystemen
bereitgestellte Bildverschiebungsvorrichtungen (scrolling
devices), beispielsweise Rollkugeln oder "Mäuse".
Daher besteht ein Bedarf an einer Vorrichtung und einem
Verfahren zur Verringerung oder Beseitigung der Notwendigkeit
des Verschiebens einer Seite.
In einer Ausführungsform der Erfindung wird ein
computerlesbares, signaltragendes (signal-bearing) Medium
bereitgestellt, das ein Programm zum Ausgeben (Rendern) eines
elektronischen Dokumentes auf eine Anzeige enthält. Wenn das
Programm von einem Computer gelesen und ausgeführt wird, erhält
es eine elektronische Adresse, die dem elektronischen Dokument
zugeordnet ist. Das Programm wertet sodann eine Datenstruktur
aus, um festzustellen, ob ein Benutzer das elektronische
Dokument bearbeitet hat. Die Datenstruktur enthält mindestens
einen Eintrag für ein Benutzerinteraktionsfeld (user interaction
field) im elektronischen Dokument. Falls der Benutzer das
elektronische Dokument bearbeitet hat, stellt das Programm fest,
ob das Benutzerinteraktionsfeld im elektronischen Dokument
vorhanden ist. Falls das Benutzerinteraktionsfeld im
elektronischen Dokument vorhanden ist, bringt (rendert) das
Programm das elektronische Dokument zur Anzeige, so dass das
Benutzerinteraktionsfeld auf der Anzeige zu sehen ist.
In einer anderen Ausführungsform wird ein anderes
computerlesbares, signaltragendes Medium bereitgestellt, das ein
Programm zur Ausgabe (zum Rendern) eines elektronischen
Dokumentes auf eine Anzeige enthält. Wenn das Programm von einem
Computer gelesen und ausgeführt wird, erhält es eine
elektronische Adresse, die dem elektronischen Dokument
zugeordnet ist. Anschließend stellt das Programm fest, ob eine
erste Datenstruktur einen ersten dem elektronischen Dokument
zugeordneten Benutzerinteraktionstyp (user interaction type)
oder einen zweiten dem elektronischen Dokument zugeordneten
Benutzerinteraktionstyp enthält. Falls die erste Datenstruktur
den ersten Benutzerinteraktionstyp enthält, stellt das Programm
fest, ob ein erster Eintrag für den ersten
Benutzerinteraktionstyp in einer zweiten Datenstruktur vorhanden
ist. Falls der erste Eintrag nicht in der zweiten Datenstruktur
vorhanden ist, stellt das Programm fest, ob ein zweiter Eintrag
für den zweiten Benutzerinteraktionstyp in einer dritten
Datenstruktur vorhanden ist. Falls der zweite Eintrag vorhanden
ist, stellt das Programm fest, ob ein dem zweiten Eintrag
zugeordnetes Benutzerinteraktionsfeld im elektronischen Dokument
vorhanden ist. Falls das Benutzerinteraktionsfeld im
elektronischen Dokument vorhanden ist, gibt (rendert) das
Programm das elektronische Dokument auf der Anzeige aus, so dass
das Benutzerinteraktionsfeld auf der Anzeige sichtbar ist.
In einer anderen Ausführungsform wird ein Verfahren zur Ausgabe
(zum Rendern) eines auf einer vernetzten Anzeigeeinheit
(networked display device) anzuzeigenden Dokumentes
bereitgestellt. Das Verfahren ruft ein einer Netzadresse
entsprechendes elektronisches Dokument ab. Das Verfahren stellt
sodann fest, ob ein dem elektronischen Dokument zugeordneter
Eintrag in einer Datenstruktur vorhanden ist, wobei der Eintrag
ein Benutzerinteraktionsfeld enthält. Falls der Eintrag
vorhanden ist, stellt das Verfahren fest, ob das
Benutzerinteraktionsfeld im elektronischen Dokument erscheint.
Falls das Benutzerinteraktionsfeld im elektronischen Dokument
erscheint, gibt (rendert) das Verfahren eine Seite aus, so dass
das Benutzerinteraktionsfeld in einem sichtbaren Bereich der
vernetzten Anzeigeeinheit angezeigt wird.
In einer anderen Ausführungsform wird ein anderes Verfahren zur
Ausgabe (zum Rendern) eines auf einer vernetzten Anzeigeeinheit
(networked display device) anzuzeigenden Dokumentes
bereitgestellt. Das Verfahren ruft das einer Netzadresse
entsprechende elektronische Dokument ab und stellt anschließend
fest, ob ein erster dem elektronischen Dokument zugeordneter
Eintrag in einer Datenstruktur vorhanden ist, wobei der erste
Eintrag ein erstes Benutzerinteraktionsfeld und einen ersten
Zählwert enthält. Falls der erste Eintrag in der Datenstruktur
vorhanden ist, stellt das Verfahren fest, ob das erste
Benutzerinteraktionsfeld im elektronischen Dokument erscheint.
Falls das erste Benutzerinteraktionsfeld im elektronischen
Dokument erscheint, bewegt das Verfahren das erste
Benutzerinteraktionsfeld von einer ersten aktuellen Position im
elektronischen Dokument in einen sichtbaren Teil der Anzeige.
Außerdem stellt das Verfahren fest, ob die Datenstruktur einen
zweiten dem elektronischen Dokument zugeordneten Eintrag
enthält, wobei der zweite Eintrag ein zweites
Benutzerinteraktionsfeld und einen zweiten Zählwert enthält.
Falls der zweite Eintrag in der Datenstruktur vorhanden ist,
stellt das Verfahren fest, ob das zweite
Benutzerinteraktionsfeld im elektronischen Dokument erscheint.
Falls das zweite Benutzerinteraktionsfeld im elektronischen
Dokument erscheint, bewegt das Verfahren das zweite
Benutzerinteraktionsfeld von einer zweiten aktuellen Position
auf der Seite in den sichtbaren Teil der Anzeige, wobei das
zweite Benutzerinteraktionsfeld über dem ersten
Benutzerinteraktionsfeld angezeigt wird, falls der zweite
Zählwert größer als der erste Zählwert ist.
In einer anderen Ausführungsform wird ein Verfahren zur
Speicherung von Benutzerinteraktionsgewohnheiten (user
interaction habits) bei einem elektronischen Dokument
bereitgestellt. Das Verfahren ruft eine erste
Benutzerinteraktion bezüglich des elektronischen Dokumentes und
eine der Seite zugeordnete Netzadresse ab. Anschließend stellt
das Verfahren fest, ob die erste Benutzerinteraktion der erste
Benutzerinteraktionstyp ist. Falls die erste Benutzerinteraktion
der erste Benutzerinteraktionstyp ist, ruft das Verfahren
Felddaten des elektronischen Dokumentes ab, die der ersten
Benutzerinteraktion zugeordnet sind, und speichert die Felddaten
des elektronischen Dokumentes entsprechend dem ersten
Benutzerinteraktionstyp und der Netzadresse. Das Verfahren
erhöht und speichert einen der ersten Benutzerinteraktion
zugeordneten Zählwert.
In einer anderen Ausführungsform wird ein konfigurierbarer
Client-Computer zur Verwendung in einem Client-Server-
Computersystem bereitgestellt. Der Client-Computer enthält eine
Anzeige und einen Browser mit der Fähigkeit zum Ausgaben
(Rendern) elektronischer Dokumente auf die Anzeige. Der Browser
kann auf Benutzergewohnheitsdaten (user habit data) in
Verbindung mit Adressdaten des elektronischen Dokumentes
zugreifen. Eine vom Browser aufgerufene Ausgabeeinrichtung
(renderer) kann ein ausgewähltes elektronisches Dokument gemäß
den Benutzergewohnheitsdaten auf die Anzeige ausgeben (rendern).
In einer anderen Ausführungsform wird ein konfigurierbarer
Client-Computer zur Verwendung in einem Client-Server-
Computersystem bereitgestellt. Der Client-Computer enthält eine
Anzeige, die höchstens eine erste Anzahl von Zeilen anzeigen
kann, und einen Browser, der elektronische Dokumente auf die
Anzeige ausgeben (rendern) kann. Der Browser kann auf
Benutzergewohnheitsdaten in Verbindung mit Seitenadressdaten
zugreifen. Eine Ausgabeeinrichtung (renderer) wertet die
Benutzergewohnheitsdaten in einer Datendatei aus, um ein
ausgewähltes elektronisches Dokument auf die Anzeige auszugeben
(zu rendern), indem Elemente im ausgewählten elektronischen
Dokument gemäß den Benutzergewohnheitsdaten neu angeordnet
werden.
Die Lehre der vorliegenden Erfindung kann problemlos verstanden
werden, indem die folgende ausführliche Beschreibung in
Verbindung mit den begleitenden Zeichnungen betrachtet wird, in
denen:
Fig. 1 ein vereinfachtes Blockschaltbild eines Client-Server-
Computersystems gemäß einer Ausführungsform der
vorliegenden Erfindung ist;
Fig. 2a ein vereinfachtes Flussdiagramm eines Teils eines
Browsers gemäß einer Ausführungsform der vorliegenden
Erfindung ist;
Fig. 2b eine vereinfachte Darstellung einer
Seitenausgabeeinrichtungsdatei (page renderer file)
ist;
Fig. 3 ein vereinfachtes Flussdiagramm eines Prozesses zur
Speicherung von Daten für Benutzergewohnheiten mit
einer Seite ist;
Fig. 4a ein vereinfachtes Flussdiagramm eines
Seitenausgabeeinrichtungsprozesses (page renderer
process) unter Verwendung einer Seitenänderung (page
alteration) ist;
Fig. 4b ein vereinfachtes Flussdiagramm eines
Seitenausgabeeinrichtungsprozesses (page renderer
process) unter Verwendung einer Seitenpositionierung
ist;
Fig. 5a ein vereinfachtes Flussdiagramm einer Ausführungsform
eines Tabellenausgabeprozesses (table renderer process)
ist;
Fig. 5b eine vereinfachte Darstellung einer Datenstruktur eines
Tabellendateieintrags (table file entry) ist;
Fig. 6a eine vereinfachte Darstellung einer Tabelle von
Informationen und Verbindungen ist, wie sie auf einer
Anzeige einer vernetzten Einheit als Teil eines
elektronischen Dokumentes gezeigt werden könnten;
Fig. 6b eine beispielhafte Tabelle ist, die auf einer Anzeige
einer vernetzten Einheit gemäß der Funktionsweise einer
Ausführungsform der vorliegenden Erfindung gezeigt
wird;
Fig. 6c ein Teil der beispielhaften Tabelle ist, der auf der
vernetzten Einheit gemäß der Funktionsweise einer
Ausführungsform der vorliegenden Erfindung nicht
angezeigt wird;
Fig. 7a ein vereinfachtes Flussdiagramm einer Ausführungsform
eines Verbindungsrendereinrichtungsprozesses (link
renderer process) ist;
Fig. 7b eine vereinfachte Darstellung einer Datenstruktur eines
Verbindungswahl-Dateieintrags (link-taken file entry)
ist;
Fig. 8a ein vereinfachtes Flussdiagramm einer Ausführungsform
eines Dateneingabeprozesses (data-entered process) ist;
Fig. 8b eine vereinfachte Darstellung einer Datenstruktur eines
Dateneingabe-Dateieintrags (data-entered file entry)
ist.
Zur Erleichterung des Verständnisses wurden nach Möglichkeit
identische Bezugsziffern verwendet, um in den Figuren
vorkommende identische Elemente zu kennzeichnen.
Die vorliegende Erfindung betrifft die Anpassung einer
angezeigten Seite gemäß einer Benutzeraktivität. Eine Seite wird
normalerweise von einem Server-Computer ("Server") zu einem
Client-Computer ("Client") heruntergeladen. Ein Browser im
Client-Computer gibt (rendert) die Seite gemäß vom Server
empfangenen Informationen aus. Seiteninformationen können in
einer Vielfalt von Formaten, beispielsweise HTML, Hand-Held
Device Markup Language ("HDML"), Wireless Application Protocol
("WAP") oder in einem anderen Format, von einem Server zum
Client gesendet werden. Für die Einfachheit der Erläuterung
werden HTML-Seiten lediglich zur Veranschaulichung verwendet.
Wie unten ausführlich beschrieben wird, stehen Aspekte der
bevorzugten Ausführungsform mit spezifischen Verfahrensschritten
in Verbindung, die in Computersystemen realisiert werden können.
In einer alternativen Ausführungsform kann die Erfindung als
Computerprogrammprodukt zur Verwendung in einem Computersystem
realisiert werden. Die Programme, die die Funktionen der
bevorzugten Ausführungsform definieren, können einem Computer
über eine Vielzahl von signaltragenden Medien bereitgestellt
werden, darunter - jedoch nicht ausschließlich - die folgenden:
- a) Informationen, die in einem schreibgeschützten Speichermedium gespeichert sind (z. B. Nur-Lese-Speicher- ("ROM"- Einheiten in einem Computer, zum Beispiel ROM oder ein von einem CD-ROM-Laufwerk lesbarer Compact Disk-ROM ("CD-ROM"));
- b) veränderbare Informationen, die auf beschreibbaren Speichermedien gespeichert sind (z. B. Disketten in einem Diskettenlaufwerk oder einem Festplattenlaufwerk); oder
- c) Informationen, die über ein Datenübertragungsmedium zu einem Computer übertragen werden, beispielsweise über ein Computer- oder Telefonnetz, einschließlich drahtlosen Datenübertragungsvorgängen. Wenn solche signaltragenden Medien computerlesbare Befehle übertragen, die die Funktionen der vorliegenden Erfindung steuern, stellen sie alternative Ausführungsformen der vorliegenden Erfindung dar.
Fig. 1 stellt ein Datenverarbeitungssystem 100 dar, in dem die
bevorzugte Ausführungsform realisiert werden kann. Im
Allgemeinen enthält das Datenverarbeitungssystem 100 einen
Client-Computer 122 und mindestens einen Server-Computer 124
(zusätzliche Server 124a bis 124n werden gezeigt). Der Client-
Computer 122 und der Server-Computer 124 können Komponenten
desselben Computersystems oder separate Komponenten sein, die
über ein Netz 126, zum Beispiel das Internet, verbunden sind.
Das Netz kann ein Draht oder Kabel sein, das den Client direkt
elektronisch mit dem Server verbindet, oder kann einen
drahtlosen Übertragungsteil enthalten, wie er beispielsweise in
Funktelefonen und anderen "drahtlosen" Einheiten verwendet wird.
Dementsprechend ist es klar, dass der Client andere Komponenten
enthalten könnte, beispielsweise einen Empfänger und einen Modem
(d. h. einen "drahtlosen Modem").
Der Client-Computer 122 enthält eine Zentraleinheit ("CPU") 128,
die über einen Bus 130 mit dem Speicher 132, dem Speicher 134,
der Eingabeeinheit 136 und der Ausgabeeinheit 138 verbunden ist.
Die Eingabeeinheit 136 kann irgendeine Einheit sein, um eine
Eingabe in den Client-Computer 122 auszuführen. Beispielsweise
könnte eine Tastatur, ein Tastenfeld, ein Lichtstift, ein
berührungsempfindlicher Bildschirm, eine Taste, eine Maus, eine
Rollkugel oder eine Spracherkennungseinheit verwendet werden.
Die Ausgabeeinheit 138 ist vorzugsweise irgendein herkömmlicher
Bildschirm, zum Beispiel Flüssigkristallanzeigen ("LCDs") oder
Katodenstrahlröhren ("CRTs"), und obwohl sie getrennt von der
Eingabeeinheit 136 gezeigt wird, könnte die Ausgabeeinheit 138
mit der Eingabeeinheit 136 kombiniert werden. Die Ausgabeeinheit
enthält im Allgemeinen einen sichtbaren Teil 139, aus dem ein
Benutzer lesen kann. Beispielsweise könnten ein Bildschirm mit
einem integrierten berührungsempfindlichen Bildschirm und eine
Anzeige mit einer integrierten Tastatur oder eine
Spracherkennungseinheit in Verbindung mit einer
Sprachumsetzungseinrichtung verwendet werden.
Obwohl der Speicher 132 als einzelne Einheit gezeigt wird, muss
klar sein, dass der Speicher 132 tatsächlich eine Vielzahl von
Modulen umfassen kann und dass der Speicher 132 auf mehreren
Ebenen vorliegen kann, von Hochgeschwindigkeitsregistern und
Cachespeichern bis hin zu langsameren, jedoch größeren DRAM- und
SRAM-Chips. Der Speicher 132 enthält ein Browser-Programm 140,
das bei Ausführung in der CPU 128 eine Unterstützung für die
Navigation zwischen den verschiedenen Servern 124, 124a bis 124n
bereitstellt, für die Lokalisierung von Adressen in einem oder
mehreren der Server, für die Eingabe von Daten in Datenfelder
und für andere Funktionen, zum Beispiel Seitenausgabe (page
rendering). Der Inhalt des Speichers 132 kann aus dem Speicher
134 geladen und in diesem gespeichert werden, wenn die CPU 128
ihn benötigt.
In einer Ausführungsform ist der Speicher 134 ein
nichtflüchtiger Speicher, beispielsweise ein nichtflüchtiger
Arbeitsspeicher ("RAM"), ein Flash-Speicher (flash memory), ein
Magnetspeicher oder ein optischer Speicher. In einigen
Ausführungsformen könnte es ein gewöhnlicher RAM sein. Obwohl
der Speicher 134 als eine einzelne Einheit gezeigt wird, könnte
er irgendeine Kombination von feststehenden und/oder
austauschbaren Speichereinheiten sein, beispielsweise
Festplattenlaufwerken, Diskettenlaufwerken, Bandlaufwerken,
austauschbaren Speicherkarten oder einem optischen Speicher. Der
Speicher 132 und der Speicher 134 könnten ein Teil eines
virtuellen Adressraums sein, der sich über mehrere primäre und
sekundäre Speichereinheiten erstreckt. Der Speicher 134 enthält
verschiedene Datenstrukturen und, wie in Fig. 1 gezeigt wird,
enthält der Speicher 134 Datendateien 141a, 141b, 141c (und
möglicherweise andere). Die Datendateien speichern neben anderen
Daten Informationen zu Benutzergewohnheiten und werden beim
Ausgeben (Rendern) einer Seite zur Anzeige verwendet.
In einer bestimmten Ausführungsform hat eine
Seitenrendereinrichtungs-Datendatei (page renderer data file)
einen Dateneintrag, falls ein bestimmter Datentyp in anderen
Datendateien 141a, 141b, 141c enthalten ist. Die anderen
Datendateien speichern Benutzerinteraktionsgewohnheiten für
verschiedene Typen von Benutzerinteraktionen mit einem
elektronischen Dokument. Eine erste Datendatei 141a könnte
beispielsweise eine Tabelleninteraktionsdatei sein, eine zweite
Datendatei 141b könnte eine Verbindungsinteraktionsdatei sein,
und eine dritte Datendatei 141c könnte eine
Dateneingabeinteraktionsdatei (data entered interaction file)
sein. Falls eine Benutzerinteraktion stattfindet, die eine
Tabelleninteraktion, eine Verbindungsinteraktion oder eine
Dateneingabeinteraktion umfasst, zeichnet die entsprechende
Datendatei Informationen über die Benutzerinteraktion mit dem
elektronischen Dokument auf und stellt einen Eintrag, d. h. einen
Schlüssel, in ein Datenfeld (siehe Fig. 2b, Bezugsziffer 224)
der Seitenrendereinrichtungs-Datendatei 141. Wenn der Benutzer
das nächste Mal mit dem elektronischen Dokument interagiert,
leitet die Seitenrendereinrichtungs-Datendatei einen
Seitenrendereinrichtungsprozess ein. Fachleute werden verstehen,
dass diese Datendateien und ihr Zusammenhang lediglich
beispielhaft sind. Der Schlüssel könnte beispielsweise während
eines Auswertungsschrittes eines Prozesses (z. B. wenn eine
Benutzerinteraktion ausgewertet wird, um festzustellen, ob sie
zu einem die Seitenrendering betreffenden Typ gehört) oder
gleichzeitig mit der Erzeugung eines Eintrags für die
Interaktionsdatendatei erzeugt werden.
Jeder Server-Computer 124 umfasst im Allgemeinen eine CPU 142,
einen Speicher 144 und einen Speicher 146, die durch einen Bus
148 verbunden sind. Es ist klar, dass dieses Blockschaltbild für
die Veranschaulichung vereinfacht ist, und dass die
tatsächlichen Serverkomponenten physisch getrennt sein könnten
und dass der Server andere Komponenten enthalten könnte,
beispielsweise Anzeigen und Eingabeeinheiten, die nicht gezeigt
werden. Der Speicher 144 enthält einen Arbeitsspeicher und/oder
einen anderen beschreibbaren Speicher, der groß genug ist, um
die notwendigen Programm- und Datenstrukturen zu speichern, die
sich gemäß einer Netzadresse, z. B. einem URL, im Server-Computer
124 befinden.
Wie gezeigt wird, enthält der Speicher 144 einen Hypertext
Transfer Protocol- ("HTTP"-) Serverprozess 145, der geeignet ist
Anforderungen vom Client-Computer bezüglich HTML-Dokumenten zu
bedienen, die aus dem Speicher abgerufen werden können und für
die das elektronische Dokument 147 im Speicher 144 ein Beispiel
ist. Der HTTP-Serverprozess 145 dient lediglich der
Veranschaulichung, und Ausführungsformen der Erfindung gehen von
anderen nach dem Stand der Technik bekannten und unbekannten
Protokollen aus. Die CPU 142 kann bei Bedarf auf die Programm-
und Datenstrukturen zugreifen. Der Speicher 146 ist für die
langfristige Speicherung eines Ausführungscodes (implementation
code) und von während des Betriebs benötigten Daten vorgesehen.
Obwohl eine spezifische Hardwarekonfiguration für das
Datenverarbeitungssystem 100 gezeigt wird, enthalten
Ausführungsformen der vorliegenden Erfindung irgendeine
Hardwarekonfiguration, die das Durchsuchen (browsing) von
Dokumenten ermöglicht, unabhängig davon; ob das Computersystem
eine komplizierte Mehrbenutzer-Datenverarbeitungsvorrichtung,
eine Einzelbenutzer-Datenstation oder eine Netzvorrichtung ist,
die keinen eigenen nichtflüchtigen Speicher aufweist.
Fig. 2a ist ein vereinfachtes Flussdiagramm eines Browser-
Prozesses 200, der stattfindet, wenn ein Benutzer mit dem
Browser arbeitet. Der Prozess beginnt (Schritt 202) mit dem
Starten des Browser-Programms (Fig. 1, Bezugsziffer 140).
Während des Betriebs leitet der Benutzer verschiedene Maßnahmen
ein, oder der Browser ruft Maßnahmen auf, oder das Browser-
Programm oder externe Programme (z. B. Serverprogramm (e))
(Schritt 204) können Maßnahmen bereitstellen. Für die
Veranschaulichung werden solche Maßnahmen als "Ereignisse"
bezeichnet. Ein Ereignis könnte beispielsweise darin bestehen,
eine von einem Server heruntergeladene oder im Speicher des
Clients gespeicherte Seite aufzubereiten (zu rendern). Der
Browser stellt sodann fest (Schritt 206), ob das Ereignis das
Aufbereiten (Rendern) einer Seite ist. Ist dies der Fall, fährt
der Browser beim Schritt 208 mit einem
Seitenrendereinrichtungsprozess fort. Falls das Ereignis etwas
anderes als das Aufbereiten (Rendern) einer Seite ist, wird der
Browser weiter ausgeführt und bearbeitet das Ereignis (Schritt
210), bevor er zurückkehrt, um das nächste Ereignis abzurufen.
Fig. 2b ist eine vereinfachte Darstellung einer
Seitenrendereinrichtungsdatei 220, die in Einem
Seitenrendereinrichtungsprozess verwendet wird. Die
Seitenrendereinrichtungsdatei wird als eine Datendatei
gespeichert, beispielsweise die in Fig. 1 gezeigte Datendatei
141. Die Seitenrendereinrichtungsdatei enthält eine Netzadresse
222 für ein elektronisches Dokument und einen Typ 224. Für die
Erläuterung wird das elektronische Dokument als eine "Seite"
bezeichnet. Der Typ stellt einen Typ von vorhergehender
Benutzerinteraktion mit dem elektronischen Dokument dar, der den
Seitenrendereinrichtungsprozess aufruft, um das Dokument gemäß
Benutzergewohnheiten bezüglich der Interaktion mit dem Dokument
auf einer Anzeige darzustellen.
Fig. 3 ist ein vereinfachtes Flussdiagramm eines
Computerprogrammprozesses 300 zum Speichern von
Benutzergewohnheiten bezüglich der Interaktion mit einer Seite.
Der Prozess beginnt (Schritt 302), wenn ein Benutzer mit einer
gegenwärtig angezeigten Seite interagiert. Der Benutzer kann auf
vielfältige Art und Weise mit Seiten interagieren, unter anderem
die Seite horizontal oder vertikal verschieben, eine Tabelle auf
der Seite verschieben, Daten in ein Dateneingabefeld auf der
Seite eingeben oder eine Verbindung auf der Seite auswählen. Der
Prozess ruft die Benutzerinteraktion (Schritt 304) und die der
angezeigten Seite zugeordnete Netzadresse, z. B. URL, ab (Schritt
306). Das Abrufen des URL stellt Korrelationsinformationen zur
Eingabe in die Seitenrendereinrichtungsdatei bereit.
Der Prozess 300 stellt sodann fest, welcher Typ von
Benutzerinteraktion stattgefunden hat. Zur Veranschaulichung
besteht die erste Feststellung (Schritt 308) darin, ob der
Benutzer mit einer Tabelle interagiert. Falls die Antwort JA
lautet, ruft der Prozess den Tabellennamen, die Tabellenreihe
und die Tabellenspalte ab (Schritt 310). Mit den vom Schritt 310
empfangenen Informationen fügt der Prozess sodann Daten in der
Tabellenrendereinrichtungsdatei hinzu oder aktualisiert diese
(Schritt 312). Die Tabellenrendereinrichtungsdatei kann
beispielsweise Einträge bezüglich des URL, des Tabellennamens,
der Tabellenreihe, der Tabellenspalte und einen Zählwert
enthalten, der Benutzeraktivität oder Benutzergewohnheiten auf
der Seite anzeigt. Nach dem Aktualisieren oder Hinzufügen von
Daten in die Tabellenrendereinrichtungsdatei (Schritt 312) kehrt
der Prozess 300 zurück, um, falls vorhanden, eine weitere
Benutzerinteraktion abzurufen (Schritt 304).
Falls der Benutzer noch nicht mit der Seite interagiert hat,
fügt der Prozess einen Eintrag in der
Tabellenrendereinrichtungsdatei hinzu, falls die
Benutzerinteraktion ein Typ ist, den der Prozess für
Seitenrenderingszwecke aufzeichnet. Eine Aktualisierung findet
statt, falls es vor der aktuellen Benutzerinteraktion bereits
Einträge in der Tabellenrendereinrichtungsdatei gibt. Eine
Erhöhung des jeder Seite und jedem Typ von Benutzerinteraktion
zugeordneten Zählwertes ist eine Möglichkeit, wie die
Tabellenrendereinrichtungsdatei aktualisiert wird. Folglich
stellt der Zählwert dar, wie oft der Benutzer über einen
bestimmten Zeitraum mit einer Position auf einer angezeigten
Seite interagiert hat, d. h. die Interaktionsgewohnheiten des
Benutzers. Das Zählfeld könnte schließlich aufgefüllt werden
oder veraltete Benutzergewohnheitsdaten darstellen. Folglich
kann das Zählfeld zusätzliche Attribute aufweisen,
beispielsweise wann die Benutzerinteraktion stattfand. Ein
anderes im Hintergrund ablaufendes Programm könnte zum Beispiel
den Zählwert von Zeit zu Zeit vermindern, so dass er aktuelle
Benutzergewohnheiten darstellt.
Falls die Benutzerinteraktion beim Schritt 308 nicht mit einer
Tabelle erfolgt, stellt der Prozess 300 fest, ob der Benutzer
mit einer Verbindung (Link) interagiert (Schritt 314). Falls die
Benutzerinteraktion mit einer Verbindung erfolgt, ruft der
Prozess die gewählte Verbindung ab (Schritt 316) und fügt der
Verbindungsdatei (Schritt 318) Einträge für die Netzadresse, die
gewählte Verbindung und einen zugeordneten Zählwert für diese
Verbindung auf dieser Seite hinzu oder aktualisiert die Datei.
Nach dem Hinzufügen oder Aktualisieren der Daten in der
Verbindungsrendereinrichtungsdatei kehrt der Prozess zurück, um,
falls vorhanden, eine weitere Benutzerinteraktion abzurufen
(Schritt 304).
Falls die Benutzerinteraktion nicht im Auswählen einer
Verbindung von der angezeigten Seite bestand, wird der Prozess
300 fortgesetzt, um festzustellen, ob die Benutzerinteraktion
eine Eingabe von Daten war (Schritt 320). Falls der Benutzer
Daten eingegeben hat, ruft der Prozess Seitenfeldinformationen
ab, beispielsweise den HTML-Elementnamen, wo der Benutzer Daten
eingab (Schritt 322) und fügt Daten in eine Dateneingabe-
Rendereinrichtungsdatei hinzu oder aktualisiert diese (Schritt
324). Die Dateneingabe-Rendereinrichtungsdatei kann
beispielsweise die Netzadresse, den dem Dateneingabefeld
zugeordneten Seitenelementnamen und einen Zählwert enthalten.
Nach dem Hinzufügen oder Aktualisieren der Daten in der
Dateneingabe-Rendereinrichtungsdatei kehrt der Prozess zurück,
um, falls vorhanden, eine weitere Benutzerinteraktion abzurufen
(Schritt 304).
Falls die Benutzerinteraktion nicht in der Eingabe von Daten
bestand, könnte der Prozess 300 mit weiteren Entscheidungsknoten
mit ähnlichen Verzweigungsvorgängen für andere Typen von
Benutzerinteraktion(en) 321 fortfahren. Ein Benutzer könnte eine
Seite beispielsweise einfach nach unten oder seitlich
verschieben, und der Prozess könnte aufzeichnen, um wie viele
Reihen oder Spalten verschoben wurde. Nachdem die Typen von
Einträgen ausgewertet wurden, kehrt der Prozess zurück, um,
falls vorhanden, die nächste Benutzerinteraktion abzurufen
(Schritt 304).
Fig. 4a ist ein vereinfachtes Flussdiagramm eines
Seitenrendereinrichtungsprozesses 400 gemäß einer
Ausführungsform der vorliegenden Erfindung. Dieser
Seitenrendereinrichtungsprozess ändert eine Seitenanzeige gemäß
Benutzergewohnheiten. Mit erneuter kurzer Bezugnahme auf Fig.
2a, Schritt 206, wird der Seitenrendereinrichtungsprozess 400
gestartet (Schritt 402), falls der Browser auf ein Ereignis
trifft, das ein Seitenrendering aufruft. Der
Seitenrendereinrichtungsprozess ruft die Netzadresse der zu
rendernden Seite ab (Schritt 404), beispielsweise einen URL, und
wertet aus, ob es irgendwelche Einträge in der
Seitenrendereinrichtungsdatei gibt (Schritt 406). Falls keine
Einträge in der Seitenrendereinrichtungsdazei vorhanden sind,
wird die Seite formatiert (Schritt 408) und gerendert (Schritt
410), wobei der Seitenrendereinrichtungsprozess anschließend
beendet ist (Schritt 412) und zum Browser-Hauptprogramm
zurückkehrt (Schritt 414).
Es wäre kein Eintrag in der Seitenrendereinrichtungsdatei
vorhanden, falls der Benutzer beispielsweise die Seite zuvor
nicht besucht hätte oder falls er zuvor mit der Seite
interagiert hätte, jedoch nicht auf einen Weise, die einen
Eintrag für diese Seite in der Seitenrendereinrichtungsdatei
erzeugen würde. Falls in der Seitenrendereinrichtungsdatei ein
Eintrag für diese Seite vorhanden ist, läuft der
Seitenrendereinrichtungsprozess 400 weiter ab, um den Typ von
Eintrag festzustellen. In einer bestimmten Ausführungsform weist
die Seitenrendereinrichtungsdatei einen Eintrag (d. h. einen
Schlüssel oder eine WAHR-Markierung (TRUE flag)) auf, falls
zuvor irgendeine von einem spezifischen Typ von
Benutzerinteraktion mit dieser Seite stattgefunden hat.
Fachleute werden erkennen, dass die gezeigte Reihenfolge
lediglich beispielhaft ist, und andere Reihenfolgen von
Entscheidungen und entsprechenden Maßnahmen gewählt werden
könnten. Außerdem könnten andere Typen von Einträgen
(Benutzerinteraktionen) mit zusätzlichen zugeordneten
Prozessflüssen vorgenommen werden.
Mit erneuter kurzer Bezugnahme auf Fig. 1 speichern die
Datendateien 41a, 41b, 41c Seitenrendereinrichtungsinformationen
bezüglich Benutzergewohnheiten. Die Summe der einzelnen
Datendateien wird insgesamt als die
"Seitenrendereinrichtungsdatei" 141 bezeichnet. Falls in
irgendeiner der die Seitenrendereinrichtungsdatei bildenden
Datendateien ein Eintrag vorhanden ist, geht der
Seitenrendereinrichtungsprozess weiter zum Schritt 416, der
auswertet, ob ein Eintrag in der Tabellenrendereinrichtungsdatei
vorliegt (z. B. Bezugsziffer 141a in Fig. 1). Falls ein Eintrag
in der Tabellenrendereinrichtungsdatei vorhanden ist, geht der
Seitenrendereinrichtungsprozess 400 weiter zu einem
Tabellenrendereinrichtungsprozess (Schritt 418). Nachdem der
Tabellenrendereinrichtungsprozess beendet ist oder falls kein
Eintrag in der Tabellenrendereinrichtungsdatei vorhanden ist,
geht der Seitenrendereinrichtungsprozess 400 weiter zum nächsten
Schritt 420.
Beim Schritt 420 wertet der Seitenrendereinrichtungsprozess 400
aus, ob ein Eintrag in einer Verbindungsrendereinrichtungsdatei
vorhanden ist (z. B. Bezugsziffer 141b in Fig. 1). Falls in der
Verbindungsrendereinrichtungsdatei ein Eintrag vorhanden ist,
geht der Seitenrendereinrichtungsprozess weiter zum
Verbindungsrendereinrichtungsprozess (Schritt 422). Nachdem der
Verbindungsrendereinrichtungsprozess beendet ist oder falls kein
Eintrag in der Verbindungsrendereinrichtungsdatei vorhanden ist,
geht der Seitenrendereinrichtungsprozess 400 weiter zum nächsten
Schritt 424.
Beim Schritt 424 wertet der Seitenrendereinrichtungsprozess 400
aus, ob ein Eintrag in einer Dateneingabedatei vorhanden ist
(z. B. Bezugsziffer 141c in Fig. 1). Falls in der Dateneingabe-
Rendereinrichtungsdatei ein Eintrag vorhanden ist, geht der
Seitenrendereinrichtungsprozess 400 weiter zu einem
Tabelleneingabe-Darstellungsprozess (Schritt 426). Nachdem der
Dateneingabe-Rendereinrichtungsprozess beendet ist, formatiert
der Seitenrendereinrichtungsprozess die Seite (Schritt 428) und
rendert die Seite (Schritt 430).
Die Schritte des Formatierens und Renderns der Seite können die
Seite ändern, beispielsweise durch das Platzieren einer
bestimmten Zeile oder mehrerer Zeilen des Dokumentes in den
oberen Bereich der Seite, können Elemente der Seite neu
anordnen, zum Beispiel Zeilen einer auf der Seite angezeigten
Tabelle, können die Seite mittels einer Kombination aus
verschiedenen Möglichkeiten ändern oder ansonsten die Seite
gemäß des Seitenrendereinrichtungsprozesses 400 anzeigen. Nach
dem Formatieren und Rendern der Seite (Schritte 428 und 430) ist
der Seitenrendereinrichtungsprozess beendet (Schritt 412) und
kehrt zum Browser-Hauptprogramm zurück (Schritt 414).
Falls in mehr als einer Rendereinrichtungsdatei Einträge
vorhanden sind, kann der Prozess so strukturiert werden, dass
der zuletzt ausgewertete Eintrag das Seiten rendering bestimmt.
Mit anderen Worten, falls ein Verbindungswahleintrag (link taken
entry) und ein Dateneingabeeintrag in den jeweiligen
Datendateien vorliegen, wird die Seite so gerendert, dass sie
das Dateneingabefeld im oberen Bereich der angezeigten Seite
zeigt, da dies der zuletzt ausgewertete Typ von
Benutzerinteraktion ist.
Fig. 4b ist ein vereinfachtes Flussdiagramm eines
Seitenrendereinrichtungsprozesses 450 gemäß einer anderen
Ausführungsform der vorliegenden Erfindung. Dieser
Seitenrendereinrichtungsprozess positioniert eine Seite gemäß
Benutzergewohnheiten auf einer Anzeige. Mit erneuter kurzer
Bezugnahme auf Fig. 2a, Schritt 206, beginnt der
Seitenrendereinrichtungsprozess 450 (Schritt 402'), falls der
Browser auf ein Ereignis trifft, das ein Seitenrendering
aufruft. Der Seitenrendereinrichtungsprozess 450 ruft die
Netzadresse der zu rendernden Seite ab (Schritt 404'),
beispielsweise einen URL, und wertet aus, ob es einen Eintrag in
der Seitenrendereinrichtungsdatei gibt (Schritt 406'), wodurch
angezeigt würde, dass ein Benutzer zuvor auf eine bestimmte
Weise mit dieser Seite interagiert hat. Falls kein Eintrag
vorhanden ist, wird die Seite formatiert (Schritt 408') und auf
die Anzeige gerendert (Schritt 410'). Der
Seitenrendereinrichtungsprozess ist sodann beendet (Schritt
412), und der Seitenrendereinrichtungsprozess 450 kehrt zum
Browser-Hauptprogramm zurück (Schritt 414').
Falls ein Eintrag in der Seitenrendereinrichtungsdatei vorhanden
ist, geht der Seitenrendereinrichtungsprozess weiter zu einem
Seitenpositionierungsschritt (page positioning step) 452.
Fachleute werden verstehen, dass die Entscheidungsknoten 406'
von Fig. 4b und 406 von Fig. 4a kombiniert werden könnten,
wobei in Abhängigkeit vom Typ des Seitenrendering, der gemäß des
Benutzerinteraktionstyps gewünscht wird, eine zusätzliche
Verzweigung zum Entscheidungsknoten hinzugefügt würde. Ähnlich
könnten die Prozesse allgemeine Schritte gemeinsam nutzen,
beispielsweise die Standardformatierung 408, 408' und das
Rendering 410, 410'.
Der Seitenpositionierungsschritt 452 ruft erneut
Benutzergewohnheitsdaten zur Seitenpositionierung ab, die in der
Seitenrendereinrichtungsdatei oder in einer anderen
Datenstruktur, beispielsweise einer
Seitenpositionierungsdatendatei, gespeichert sein könnten. Falls
der Benutzer beispielsweise nach dem Laden der Seite diese
verschiebt, um einen bestimmten Bereich der Seite zu betrachten,
speichert eine Seitenpositionierungsdatendatei ein oder mehrere
der betrachteten Seite zugeordnete Seitenelemente.
Der Bereich der Seite, den der Benutzer normalerweise
betrachtet, hängt von der Anzeigengröße und der Seitengröße ab.
Ein Eintrag in der Seitenrendereinrichtungsdatei zählt zum
Beispiel, wie oft der Benutzer eine bestimmte Seite zu einer
bestimmten Position (allgemein durch die oben angezeigte Zeile
angezeigt) verschoben hat, was ein Benutzerinteraktionsfeld im
Eintrag für die Seitenrendereinrichtungsdatei bereitstellen
würde. Folglich sind verschiedene Zählwerte der Anzahl von Malen
zugeordnet, die der Benutzer die Seite um verschiedene Zeilen
verschoben hat. Die Benutzerinteraktionsposition im
elektronischen Dokument wird beispielsweise durch die Anzahl
verschobener Zeilen oder durch HTML-Elemente bestimmt. Solche
Daten stellen Benutzerinteraktions-Felddaten bereit, um eine
Position in einem elektronischen Dokument zu lokalisieren, mit
dem der Benutzer interagiert hat.
Der Seitenpositionierungsschritt 452 wählt den Eintrag in der
Seitenrendereinrichtungsdatei mit dem höchsten Zählwert aus und
stellt Seitenpositionierungsinformationen zum Formatieren
(Schritt 454) und Rendern (Schritt 456) der Seite bereit. Die
Seitenpositionierungsinformationen enthalten Informationen, wie
beispielsweise eine Anzahl von Zeilen, um die von einer
anfänglichen Position aus verschoben werden muß, einer oder
mehreren Zeilen auf der Seite zugeordnete HTML-Elemente (zum
Beispiel Zeilenumbrüche) oder ähnliche Informationen, die den
Prozess zur erneuten Positionierung der angezeigten Seite
steuern, so dass der Benutzer die Zeile sieht, die er am
häufigsten verschoben hat.
Die Arbeitsweise des in Fig. 4b gezeigten Prozesses
unterscheidet sich insofern von der Arbeitsweise des in Fig. 4a
gezeigten Prozesses, als die angezeigte Seite im Prozess 4b
nicht neu angeordnet, sondern lediglich so positioniert wird,
dass der Teil der Seite, mit der am häufigsten interagiert
wurde, am oder nahe dem Beginn der Anzeige gezeigt wird, wodurch
die Notwendigkeit zum Durchführen eines Verschiebens zu dieser
Position auf der Seite verringert oder beseitigt wird.
Insbesondere ist es klar, dass die in den Fig. 4a und 4b
gezeigten Prozesse kombiniert werden könnten. Der in Fig. 4a
gezeigte Prozess kann beispielsweise eine Tabelle neu anordnen,
und der in Fig. 4b gezeigte Prozess kann die neu angeordnete
Tabelle an den Beginn der angezeigten Seite platzieren.
Eine Benutzerinteraktion mit einer angezeigten Seite kann die
Seite gemäß einem herkömmlichen Browser-Arbeitsgang ändern,
beispielsweise wenn der Benutzer die Seite verschiebt oder Daten
eingibt. Im Vergleich dazu speichert die vorliegende Erfindung
Daten bezüglich Benutzerinteraktionsgewohnheiten und rendert
eine Seite gemäß diesen Gewohnheiten, wenn der Benutzer diese
Seite zum nächsten Mal besucht. Mit anderen Worten, während der
Benutzer mit einer angezeigten Seite interagiert, sammelt die
vorliegende Erfindung statistische Informationen.
Fig. 5a ist ein vereinfachtes Flussdiagramm eines
Tabellenrendereinrichtungsprozesses 500, der eine
Ausführungsform des Schrittes 418 von Fig. 4a veranschaulicht.
Der Tabellenrendereinrichtungsprozess 500 ordnet die Daten in
der Tabellenrendereinrichtungsdatei durch das Zählfeld
("Zählwert") (Schritt 502). Der Zählwert kennzeichnet die Reihe
der Tabelle, mit der der Benutzer am häufigsten interagiert hat.
Für jeden Eintrag in der Tabellenrendereinrichtungsdatei
(Schritt 504) ruft der Tabellenrendereinrichtungsprozess den
Eintrag ab (d. h. die gespeicherte frühere Benutzerinteraktion
und den zugeordneten URL) (Schritt 506). Der
Tabellenrendereinrichtungsprozess 500 wertet aus (Schritt 508),
ob die angeforderte Seite immer noch die Tabellenreihe enthält
(anzeigen würde), die in der Tabellenrendereinrichtungsdatei
gespeichert ist. Falls die Reihe nicht mehr in der Tabelle
vorhanden ist, kehrt der Tabellenrendereinrichtungsprozess
zurück, um den nächsten Eintrag in der
Tabellenrendereinrichtungsdatei abzurufen, und ändert nicht die
Art und Weise, wie die Seite angezeigt wird. Falls die
Datenreihe noch immer in der Tabelle vorhanden ist, entfernt der
Tabellenrendereinrichtungsprozess die Datenreihe aus ihrer
aktuellen Tabellenposition (Schritt 510) und verschiebt die
Tabellenreihe an den Anfang der Tabelle (Schritt 512), außerdem
kann die Tabellenreihe am Anfang der angeforderten Seite
positioniert werden. Nach der Verarbeitung des letzten Eintrags
in der Tabellenrendereinrichtungsdatei wird der Prozess 500 beim
Schritt 514 verlassen.
In einer bestimmten Ausführungsform ordnet der
Tabellenrendereinrichtungsprozess die Einträge in der
Tabellenrendereinrichtungsdatei so an, dass der niedrigste
Zählwert sich am "Anfang" der Dateiliste (d. h. der zuerst
ausgewertete Eintrag) und der höchste Zählwert sich am Ende der
Liste befindet. Wenn der Tabellenrendereinrichtungsprozess die
Einträge in der Tabellenrendereinrichtungsdatei auswertet, wird
der Eintrag mit dem höchsten Zählwert auf diese Weise zuletzt
ausgewertet, wodurch die Tabellenreihe mit dem höchsten Zählwert
am Beginn der Tabelle angezeigt wird. Frühere Einträge würden
vorübergehend am Beginn der Tabelle positioniert werden, die
letzte Anfangsreihe der Tabelle würde jedoch den höchsten
Zählwert widerspiegeln.
Fig. 5b ist eine vereinfachte Darstellung einer Datenstruktur
eines Tabellenrendereinrichtungs-Dateieintrags (table renderer
file entry) 520. Die Datenstruktur enthält eine Netzadresse 522,
einen Tabellennamen 524, eine Reihe 526 der Tabelle, eine Spalte
528 der Tabelle und einen Zählwert 530. Die Reihen- und
Spalteneinträge stellen Benutzerinteraktionsfelder bereit, um
der Benutzerinteraktion eine Position des elektronischen
Dokumentes zuzuordnen. Die Tabellenrendereinrichtungsdatei
könnte andere Felder enthalten, beispielsweise ein Zeitfeld, das
darstellt, wie lange ein Benutzer bei einer Reihe der Tabelle
bleibt.
Die Fig. 6a bis 6c sind vereinfachte Darstellungen von auf
der Anzeige eines Benutzers angezeigten Tabellen, die die
Funktionsweise einer Ausführungsform der vorliegenden Erfindung
veranschaulichen. Fig. 6a ist ein vereinfachtes Beispiel einer
Tabelle, die auf einer HTML-Seite angezeigt werden könnte. Alle
Einträge in der Tabelle könnten ausgewählt werden, um den
Tabelleneintrag beispielsweise mit dem Lagerbestandsnamen (stock
name), dem Diagramm des Lagerbestandspreises und neuen
Informationen zu verbinden. Die Einträge in der Tabelle sind ein
Typ von Seitenelement, so wie dies auch für Verbindungen,
Dateneingabefelder und Zeilenumbrüche der Fall ist. Eine Seite
besteht normalerweise aus mehreren Elementen, mit denen der
Benutzer auf verschiedene Arten interagieren kann. Der Benutzer
könnte Daten in ein Feld eingeben, eine Verbindung auswählen
oder eine Seite zu einer bestimmten Position verschieben, wobei
die Position gemäß Seitenelementen, zum Beispiel einer
Zeilennummer, definiert wird.
Für die Erläuterung wird vorausgesetzt, dass die Anzeige nicht
die ganze Tabelle zeigen könnte, sondern dass die Anzeige nur
vier Zeilen der Tabelle zeigen kann. Die vorliegende Erfindung
kann jedoch auch auf Situationen angewandt werden, in denen die
ganze Tabelle auf einer Anzeige gezeigt werden kann. Auch wenn
die Anzeige die ganze Tabelle zeigen kann, kann es
beispielsweise wünschenswert sein, dass die Reihe mit dem
höchsten Zählwert am Anfang der Tabelle angezeigt wird, oder
dass eine angeforderte Seite so gerendert wird, dass die Anzeige
die am häufigsten angeforderte Zeile der Seite am Anfang der
Anzeige zeigt. Außerdem wird angenommen, dass der Benutzer an
einer Verbindung zu mit Informationen bezüglich HWP und INTC
interessiert ist und diese Verbindungen häufig besucht, indem er
die Seite zu ihnen verschiebt und die Verbindungen auswählt, und
dass der Benutzer nie mit der Reihe bezüglich JMAR interagiert.
Bei herkömmlichen Browsern würde der Benutzer normalerweise die
Seite nach unten verschieben (scroll down), um die Tabelle zu
finden, wobei an dieser Stelle nur die ersten vier Zeilen
angezeigt würden (d. h. IBM, LMAR, SUNW und VCAI). Der Benutzer
müsste das Verschieben normalerweise fortsetzen, falls er
beispielsweise die Reihe betrachten möchte, die HWP enthält.
Fig. 6b zeigt die Zeilen, die sich auf der Anzeige des Clients
befinden würden, wenn der Benutzer anschließend die die Tabelle
enthaltende Seite anfordert. Ein Browser gemäß einer
Ausführungsform der vorliegenden Erfindung rendert die Seite so,
dass sie die zuvor besuchten Informationen in einer ausgewählten
Anordnung anzeigt. Als Erstes zeigt der Browser die Seite an
einer Stelle an, die die Tabelle zeigt. Als Zweites ordnet der
Browser die Tabelle neu an, so dass die Reihen mit Informationen
zu HWP und INTC am Anfang der Tabelle angezeigt werden. Fig. 6c
zeigt die Zeilen, die der Browser nicht anzeigen würde, darunter
JMAR, das zur unteren Reihe der Tabelle zurückgefallen ist. Je
nach Wunsch könnte der Benutzer die Seite nach unten
verschieben, um diese Reihen der Tabelle anzuschauen. Ähnlich
kann die Erfindung andere Elemente auf einer Seite neu anordnen,
beispielsweise Verbindungen, Bilder oder Kopfzeilen. Außerdem
könnte der Browser die Gesamtzeit aufzeichnen, die der Benutzer
an verschiedenen Stellen eines URL verbracht hat, und die
Client-Anzeige anfänglich so positionieren, dass sie den Teil
des URL zeigt, bei dem der Benutzer die meiste Zeit verbracht
hat. Solche Zeitdaten könnten die Priorität einer Reihe oder
eines anderen Eintrags entscheiden, falls beispielsweise die
Zählwerte für zwei Reihen gleich sind.
Fig. 7a ist ein vereinfachtes Flussdiagramm eines
Verbindungsrendereinrichtungsprozesses 700, das eine
Ausführungsform des Schrittes 422 von Fig. 4a zeigt. Der
Seitenrendereinrichtungsprozess 400 von Fig. 4a ruft den
Verbindungsrendereinrichtungsprozess 700 auf, wenn der Benutzer
eine Seite auswählt und die Verbindungsrendereinrichtungsdatei
einen dieser Seite zugeordneten Eintrag aufweist. Der
Verbindungsrendereinrichtungsprozess 700 wertet jeden Eintrag in
der Verbindungsrendereinrichtungsdatei aus (Schritt 702), indem
er einen Eintrag abruft (Schritt 704) und auswertet, falls die
Seite noch immer die dem Eintrag zugeordnete Verbindung anzeigt
(Schritt 706).
Falls die Verbindung nicht mehr auf der Seite vorhanden ist,
kehrt der Verbindungsrendereinrichtungsprozess 700 zurück, um
den nächsten Eintrag in der Verbindungsrendereinrichtungsdatei
abzurufen, und ordnet das Anzeigefeld (d. h. einen Teil der
angezeigten Seite) nicht neu an bzw. positioniert die Seite
nicht neu. Falls die Verbindung noch immer auf der Seite
vorhanden ist, entfernt der Verbindungsrendereinrichtungsprozess
die Verbindung aus ihrer aktuellen Position (Schritt 708) und
verschiebt die Verbindung an den Anfang der angezeigten Seite
(Schritt 710). Nach der Verarbeitung des letzten Eintrags in der
Verbindungsrendereinrichtungsdatei wird der Prozess 700 beim
Schritt 712 verlassen.
Fig. 7b ist eine vereinfachte Darstellung einer Datenstruktur
eines Verbindungswahl-Dateieintrags 720. Der Eintrag enthält
eine Netzadresse 722, die der Seite zugeordnet ist, auf der die
Verbindung vorkam, als der Benutzer mit der Verbindung
interagierte, die vom Benutzer ausgewählte Verbindung 724 und
einen Zählwert 726.
Fig. 8a ist ein vereinfachtes Flussdiagramm eines Dateneingabe-
Rendereinrichtungsprozesses 800, das eine Ausführungsform des
Schrittes 426 von Fig. 4a zeigt. Der
Seitenrendereinrichtungsprozess 400 von Fig. 4a ruft den
Dateneingabe-Rendereinrichtungsprozess 800 auf, wenn ein
Benutzer eine Seite auswählt und die Dateneingabe-
Rendereinrichtungsdatei einen dieser Seite zugeordneten Eintrag
aufweist. Der Dateneingabe-Rendereinrichtungsprozess 800 wertet
jeden Eintrag in der Dateneingabe-Rendereinrichtungsdatei aus
(Schritt 802), indem er einen Eintrag abruft (Schritt 804) und
auswertet, ob ein dem Eintrag zugeordnetes Dateneingabefeld, zum
Beispiel ein HTML-Element, noch immer auf der aktuellen
(angeforderten) Seite erscheint (Schritt 806).
Falls das Dateneingabefeld nicht mehr auf der Seite vorhanden
ist, kehrt der Dateneingabe-Rendereinrichtungsprozess 800
zurück, um den nächsten Eintrag in der Dateneingabe-
Rendereinrichtungsdatei abzurufen, und ordnet die angezeigte
Seite nicht neu an. Falls das Dateneingabefeld noch immer auf
der Seite vorhanden ist, entfernt der Dateneingabe-
Rendereinrichtungsprozess das Dateneingabefeld aus seiner
Position auf der formatierten Seite (Schritt 808) und verschiebt
das Dateneingabefeld an den Anfang der Seite (Schritt 810). Nach
der Verarbeitung des letzten Eintrags in der Dateneingabedatei
wird der Prozess 800 beim Schritt 812 verlassen.
Fig. 8b ist eine vereinfachte Darstellung einer Datenstruktur
eines Dateneingabe-Dateieintrags 820. Der Dateneingabe-
Dateieintrag enthält eine Netzadresse 822, einen Dateneingabe-
Feldbezeichner (data entry field identifier) 824, zum Beispiel
einen HTML-Elementnamen, und einen Zählwert 826.
Obwohl die vorliegende Erfindung in Bezug auf die bevorzugten
und alternative Ausführungsformen beschrieben wurde, werden
Fachleute verstehen, dass verschiedene Änderungen an
Einzelheiten darin vorgenommen werden können, ohne von der
Wesensart, dem Umfang und der Lehre der Erfindung abzuweichen.
In einer weiteren Ausführungsform könnte beispielsweise jeder
der Rendereinrichtungsprozesse einen Einheitenabfrageschritt
(device query step) enthalten, um die Anzahl von zur Anzeige
verfügbaren Zeilen zu bestimmen und das Rendering der
angezeigten Seite weiter zu verändern. In noch einer weiteren
Ausführungsform könnte die Anzeigeauflösung zur Verwendung im
Seitenrenderprozess als Teil des bereitgestellten Clients
gespeichert werden. Dementsprechend muss die hierin beschriebene
Erfindung nur so begrenzt werden, wie es in den folgenden
Ansprüchen angegeben wird.
Claims (20)
1. Computerlesbares, signaltragendes Medium, das ein Programm
zum Rendern eines elektronischen Dokumentes auf eine Anzeige
enthält, wobei das Programm die folgenden Schritte umfasst,
wenn es von einem Computer gelesen und ausgeführt wird:
Abrufen einer dem elektronischen Dokument zugeordneten elektronischen Adresse;
Auswerten einer Datenstruktur, um festzustellen, ob die Datenstruktur einen Benutzerinteraktionseintrag bezüglich eines Elementes bei der elektronischen Adresse enthält;
falls die Datenstruktur den Benutzerinteraktionseintrag enthält, Feststellen, ob das Element im elektronischen Dokument vorhanden ist;
falls das Element vorhanden ist, Rendern des elektronischen Dokumentes auf die Anzeige, so dass das Element auf der Anzeige sichtbar ist.
Abrufen einer dem elektronischen Dokument zugeordneten elektronischen Adresse;
Auswerten einer Datenstruktur, um festzustellen, ob die Datenstruktur einen Benutzerinteraktionseintrag bezüglich eines Elementes bei der elektronischen Adresse enthält;
falls die Datenstruktur den Benutzerinteraktionseintrag enthält, Feststellen, ob das Element im elektronischen Dokument vorhanden ist;
falls das Element vorhanden ist, Rendern des elektronischen Dokumentes auf die Anzeige, so dass das Element auf der Anzeige sichtbar ist.
2. Computerlesbares, signaltragendes Medium nach Anspruch 1,
wobei der Benutzerinteraktionseintrag einer
Benutzerinteraktion zugeordnet ist, die aus der Gruppe
ausgewählt wird, die aus einem Tabelleninteraktionseintrag,
einem Verbindungsinteraktionseintrag, einem Dateneingabe-
Interaktionseintrag und einem
Seitenverschiebungsinteraktionseintrag besteht.
3. Computerlesbares, signaltragendes Medium nach Anspruch 1,
wobei die Datenstruktur außerdem einen Zeiteintrag enthält,
der die beim Benutzerinteraktionsfeld verbrachte Zeit
betrifft.
4. Computerlesbares, signaltragendes Medium, das ein Programm
zum Rendern eines elektronischen Dokumentes auf eine Anzeige
enthält, wobei das Programm die folgenden Schritte umfasst,
wenn es von einem Computer gelesen und ausgeführt wird:
Abrufen einer dem elektronischen Dokument zugeordneten elektronischen Adresse;
Auswerten einer ersten Datenstruktur, um festzustellen, ob die erste Datenstruktur einen Eintrag enthält, der anzeigt, ob ein ausgewählter Typ von Benutzerinteraktion mit dem elektronischen Dokument stattgefunden hat, und
falls die erste Datenstruktur den Eintrag enthält, Auswerten einer zweiten Datenstruktur, um festzustellen, ob die zweite Datenstruktur einen zweiten Benutzerinteraktionseintrag enthält, und
falls die zweite Datenstruktur den ersten Benutzerinteraktionseintrag nicht enthält, Auswerten, ob eine dritte Datenstruktur einen dritten Benutzerinteraktionseintrag enthält, und
falls die dritte Datenstruktur den dritten Benutzerinteraktionseintrag enthält, Rendern des elektronischen Dokumentes auf die Anzeige, so dass ein Element im elektronischen Dokument, das dem dritten Benutzerinteraktionseintrag zugeordnet ist, auf der Anzeige sichtbar ist.
Abrufen einer dem elektronischen Dokument zugeordneten elektronischen Adresse;
Auswerten einer ersten Datenstruktur, um festzustellen, ob die erste Datenstruktur einen Eintrag enthält, der anzeigt, ob ein ausgewählter Typ von Benutzerinteraktion mit dem elektronischen Dokument stattgefunden hat, und
falls die erste Datenstruktur den Eintrag enthält, Auswerten einer zweiten Datenstruktur, um festzustellen, ob die zweite Datenstruktur einen zweiten Benutzerinteraktionseintrag enthält, und
falls die zweite Datenstruktur den ersten Benutzerinteraktionseintrag nicht enthält, Auswerten, ob eine dritte Datenstruktur einen dritten Benutzerinteraktionseintrag enthält, und
falls die dritte Datenstruktur den dritten Benutzerinteraktionseintrag enthält, Rendern des elektronischen Dokumentes auf die Anzeige, so dass ein Element im elektronischen Dokument, das dem dritten Benutzerinteraktionseintrag zugeordnet ist, auf der Anzeige sichtbar ist.
5. Verfahren zum Rendern eines auf einer vernetzten
Anzeigeeinheit anzuzeigenden Dokumentes, wobei das Verfahren
die folgenden Schritte umfasst:
Abrufen eines elektronischen Dokumentes gemäß einer Netzadresse;
Feststellen, ob ein dem elektronischen Dokument zugeordneter Eintrag in einer Datenstruktur vorhanden ist, wobei der Eintrag mindestens ein Benutzerinteraktionsfeld enthält;
falls der Eintrag vorhanden ist, Feststellen, ob das Benutzerinteraktionsfeld im elektronischen Dokument erscheint; und
falls das Benutzerinteraktionsfeld im elektronischen Dokument erscheint, Rendern einer Seite, um das Benutzerinteraktionsfeld in einem sichtbaren Bereich der vernetzten Anzeigeeinheit anzuzeigen.
Abrufen eines elektronischen Dokumentes gemäß einer Netzadresse;
Feststellen, ob ein dem elektronischen Dokument zugeordneter Eintrag in einer Datenstruktur vorhanden ist, wobei der Eintrag mindestens ein Benutzerinteraktionsfeld enthält;
falls der Eintrag vorhanden ist, Feststellen, ob das Benutzerinteraktionsfeld im elektronischen Dokument erscheint; und
falls das Benutzerinteraktionsfeld im elektronischen Dokument erscheint, Rendern einer Seite, um das Benutzerinteraktionsfeld in einem sichtbaren Bereich der vernetzten Anzeigeeinheit anzuzeigen.
6. Verfahren nach Anspruch 5, das vor dem Schritt des Renderns
außerdem die folgenden Schritte umfasst:
Entfernen des Benutzerinteraktionsfeldes aus einer aktuellen Position im elektronischen Dokument; und
Verschieben des Benutzerinteraktionsfeldes in einen oberen Teil des sichtbaren Bereichs.
Entfernen des Benutzerinteraktionsfeldes aus einer aktuellen Position im elektronischen Dokument; und
Verschieben des Benutzerinteraktionsfeldes in einen oberen Teil des sichtbaren Bereichs.
7. Verfahren nach Anspruch 5, das nach dem Schritt des Renderns
außerdem die folgenden Schritte umfasst:
Abrufen eines zweiten Eintrags aus der Datenstruktur, wobei der zweite Eintrag ein zweites Benutzerinteraktionsfeld enthält;
Feststellen, ob das zweite Benutzerinteraktionsfeld im elektronischen Dokument vorhanden ist;
falls das zweite Benutzerinteraktionsfeld im elektronischen Dokument erscheint, Verschieben des zweiten Benutzerinteraktionsfeldes aus einer zweiten aktuellen Position auf der Seite; und
Rendern der Seite, so dass sie das zweite Benutzerinteraktionsfeld oberhalb des Benutzerinteraktionsfeldes zeigt.
Abrufen eines zweiten Eintrags aus der Datenstruktur, wobei der zweite Eintrag ein zweites Benutzerinteraktionsfeld enthält;
Feststellen, ob das zweite Benutzerinteraktionsfeld im elektronischen Dokument vorhanden ist;
falls das zweite Benutzerinteraktionsfeld im elektronischen Dokument erscheint, Verschieben des zweiten Benutzerinteraktionsfeldes aus einer zweiten aktuellen Position auf der Seite; und
Rendern der Seite, so dass sie das zweite Benutzerinteraktionsfeld oberhalb des Benutzerinteraktionsfeldes zeigt.
8. Verfahren nach Anspruch 7, wobei ein erster dem Eintrag
zugeordneter Zählwert in der Datenstruktur gespeichert wird
und ein zweiter dem Eintrag zugeordneter Zählwert in der
Datenstruktur gespeichert wird, wobei der zweite Zählwert
größer als der erste Zählwert ist.
9. Verfahren nach Anspruch 7, wobei der Eintrag und der zweite
Eintrag gemäß einem ersten Zählwert und einem zweiten
Zählwert in der Datenstruktur gespeichert werden, wobei der
zweite Zählwert größer als der erste Zählwert ist, wobei der
Eintrag außerdem einen ersten Zeitwert enthält und der
zweite Eintrag außerdem einen zweiten Zeitwert enthält,
wobei der zweite Zeitwert größer als der erste Zeitwert ist.
10. Verfahren nach Anspruch 5, wobei der Schritt des Renderns
das Durchführen eines Verschiebens der Seite im
elektronischen Dokument enthält.
11. Verfahren zum Rendern eines auf einer vernetzten
Anzeigeeinheit anzuzeigenden elektronischen Dokumentes,
wobei das Verfahren die folgenden Schritte umfasst:
Abrufen des elektronischen Dokumentes gemäß einer Netzadresse;
Feststellen, ob ein dem elektronischen Dokument zugeordneter erster Eintrag in einer Datenstruktur vorhanden ist, wobei der erste Eintrag ein erstes Benutzerinteraktionsfeld und einen ersten Zählwert enthält;
falls der erste Eintrag in der Datenstruktur vorhanden ist, Feststellen, ob das erste Benutzerinteraktionsfeld im elektronischen Dokument erscheint;
falls das erste Benutzerinteraktionsfeld im elektronischen Dokument erscheint, Verschieben des ersten Benutzerinteraktionsfeldes aus einer ersten aktuellen Position im elektronischen Dokument in einen sichtbaren Teil der Anzeige;
Feststellen, ob die Datenstruktur einen zweiten dem elektronischen Dokument zugeordneten Eintrag enthält, wobei der zweite Eintrag ein zweites Benutzerinteraktionsfeld und einen zweiten Zählwert enthält;
falls der zweite Eintrag in der Datenstruktur vorhanden ist, Feststellen, ob das zweite Benutzerinteraktionsfeld im elektronischen Dokument erscheint; und
falls das zweite Benutzerinteraktionsfeld im elektronischen Dokument erscheint, Verschieben des zweiten Benutzerinteraktionsfeldes aus einer zweiten aktuellen Position auf der Seite in den sichtbaren Teil der Anzeige, wobei das zweite Benutzerinteraktionsfeld oberhalb des ersten Benutzerinteraktionsfeldes angezeigt wird, falls der zweite Zählwert größer als der erste Zählwert ist.
Abrufen des elektronischen Dokumentes gemäß einer Netzadresse;
Feststellen, ob ein dem elektronischen Dokument zugeordneter erster Eintrag in einer Datenstruktur vorhanden ist, wobei der erste Eintrag ein erstes Benutzerinteraktionsfeld und einen ersten Zählwert enthält;
falls der erste Eintrag in der Datenstruktur vorhanden ist, Feststellen, ob das erste Benutzerinteraktionsfeld im elektronischen Dokument erscheint;
falls das erste Benutzerinteraktionsfeld im elektronischen Dokument erscheint, Verschieben des ersten Benutzerinteraktionsfeldes aus einer ersten aktuellen Position im elektronischen Dokument in einen sichtbaren Teil der Anzeige;
Feststellen, ob die Datenstruktur einen zweiten dem elektronischen Dokument zugeordneten Eintrag enthält, wobei der zweite Eintrag ein zweites Benutzerinteraktionsfeld und einen zweiten Zählwert enthält;
falls der zweite Eintrag in der Datenstruktur vorhanden ist, Feststellen, ob das zweite Benutzerinteraktionsfeld im elektronischen Dokument erscheint; und
falls das zweite Benutzerinteraktionsfeld im elektronischen Dokument erscheint, Verschieben des zweiten Benutzerinteraktionsfeldes aus einer zweiten aktuellen Position auf der Seite in den sichtbaren Teil der Anzeige, wobei das zweite Benutzerinteraktionsfeld oberhalb des ersten Benutzerinteraktionsfeldes angezeigt wird, falls der zweite Zählwert größer als der erste Zählwert ist.
12. Verfahren zur Speicherung von
Benutzerinteraktionsgewohnheiten bezüglich eines
elektronischen Dokumentes, wobei das Verfahren die folgenden
Schritte umfasst:
Abrufen einer ersten Benutzerinteraktion mit dem elektronischen Dokument;
Abrufen einer dem elektronischen Dokument zugeordneten Netzadresse;
Feststellen, ob die erste Benutzerinteraktion ein erster Benutzerinteraktionstyp ist;
falls die erste Benutzerinteraktion ein erster Benutzerinteraktionstyp ist, Abrufen von mindestens einem Datenelement des elektronischen Dokumentes, das der ersten Benutzerinteraktion zugeordnet ist;
Speichern des Datenelementes des elektronischen Dokumentes in einer ersten Benutzerinteraktionstyp-Datendatei; und
Speichern eines ersten Zählwertes, der dem Datenelement des elektronischen Dokumentes zugeordnet ist.
Abrufen einer ersten Benutzerinteraktion mit dem elektronischen Dokument;
Abrufen einer dem elektronischen Dokument zugeordneten Netzadresse;
Feststellen, ob die erste Benutzerinteraktion ein erster Benutzerinteraktionstyp ist;
falls die erste Benutzerinteraktion ein erster Benutzerinteraktionstyp ist, Abrufen von mindestens einem Datenelement des elektronischen Dokumentes, das der ersten Benutzerinteraktion zugeordnet ist;
Speichern des Datenelementes des elektronischen Dokumentes in einer ersten Benutzerinteraktionstyp-Datendatei; und
Speichern eines ersten Zählwertes, der dem Datenelement des elektronischen Dokumentes zugeordnet ist.
13. Verfahren nach Anspruch 12, wobei der erste
Benutzerinteraktionstyp aus der Gruppe ausgewählt wird, die
aus einer Interaktion mit einer Tabelle, einer Interaktion
mit einer Verbindung, einer Interaktion mit einem
Dateneingabefeld und einem Verschieben der Seite besteht.
14. Verfahren nach Anspruch 12, das nach dem Schritt des
Speicherns eines ersten Zählwertes die folgenden Schritte
umfasst:
Abrufen einer zweiten Benutzerinteraktion mit dem elektronischen Dokument;
Feststellen, ob die zweite Benutzerinteraktion ein erster Benutzerinteraktionstyp ist;
falls die zweite Benutzerinteraktion nicht der erste Benutzerinteraktionstyp ist, Auswerten, ob die zweite Benutzerinteraktion ein zweiter Benutzerinteraktionstyp ist;
falls die zweite Benutzerinteraktion der zweite Benutzerinteraktionstyp ist, Abrufen von mindestens einem zweiten Datenelement des elektronischen Dokumentes, das der zweiten Benutzerinteraktion zugeordnet ist;
Speichern des Datenelementes des zweiten elektronischen Dokumentes in einer zweiten Benutzerinteraktionstyp- Datendatei; und
Erhöhen eines zweiten Zählwertes, der dem zweiten Datenelement des elektronischen Dokumentes zugeordnet ist.
Abrufen einer zweiten Benutzerinteraktion mit dem elektronischen Dokument;
Feststellen, ob die zweite Benutzerinteraktion ein erster Benutzerinteraktionstyp ist;
falls die zweite Benutzerinteraktion nicht der erste Benutzerinteraktionstyp ist, Auswerten, ob die zweite Benutzerinteraktion ein zweiter Benutzerinteraktionstyp ist;
falls die zweite Benutzerinteraktion der zweite Benutzerinteraktionstyp ist, Abrufen von mindestens einem zweiten Datenelement des elektronischen Dokumentes, das der zweiten Benutzerinteraktion zugeordnet ist;
Speichern des Datenelementes des zweiten elektronischen Dokumentes in einer zweiten Benutzerinteraktionstyp- Datendatei; und
Erhöhen eines zweiten Zählwertes, der dem zweiten Datenelement des elektronischen Dokumentes zugeordnet ist.
15. Verfahren nach Anspruch 12, das nach dem Schritt des
Speicherns eines ersten Zählwertes die folgenden Schritte
umfasst:
Abrufen einer zweiten Benutzerinteraktion mit der Seite;
Feststellen, ob die zweite Benutzerinteraktion der erste Benutzerinteraktionstyp ist;
falls die zweite Benutzerinteraktion der erste Benutzerinteraktionstyp einer Benutzerinteraktion ist, Abrufen von mindestens einem zweiten Datenelement des elektronischen Dokumentes, das der zweiten Benutzerinteraktion zugeordnet ist;
Speichern des zweiten Datenelementes des elektronischen Dokumentes in der ersten Benutzerinteraktionstyp-Datendatei; und
Erhöhen eines zweiten Zählwertes, der dem zweiten Datenelement des elektronischen Dokumentes zugeordnet ist.
Abrufen einer zweiten Benutzerinteraktion mit der Seite;
Feststellen, ob die zweite Benutzerinteraktion der erste Benutzerinteraktionstyp ist;
falls die zweite Benutzerinteraktion der erste Benutzerinteraktionstyp einer Benutzerinteraktion ist, Abrufen von mindestens einem zweiten Datenelement des elektronischen Dokumentes, das der zweiten Benutzerinteraktion zugeordnet ist;
Speichern des zweiten Datenelementes des elektronischen Dokumentes in der ersten Benutzerinteraktionstyp-Datendatei; und
Erhöhen eines zweiten Zählwertes, der dem zweiten Datenelement des elektronischen Dokumentes zugeordnet ist.
16. Konfigurierbarer Client-Computer zur Verwendung in einem
Client-Server-System, wobei der Client-Computer Folgendes
umfasst:
eine Anzeige; und
einen Browser, der elektronische Dokumente auf die Anzeige rendern kann, wobei der Browser auf Benutzergewohnheitsdaten in Verbindung mit Adressdaten des elektronischen Dokumentes zugreifen kann, und
eine Rendereinrichtung, die ein ausgewähltes elektronisches Dokument gemäß Benutzergewohnheitsdaten auf die Anzeige rendern kann.
eine Anzeige; und
einen Browser, der elektronische Dokumente auf die Anzeige rendern kann, wobei der Browser auf Benutzergewohnheitsdaten in Verbindung mit Adressdaten des elektronischen Dokumentes zugreifen kann, und
eine Rendereinrichtung, die ein ausgewähltes elektronisches Dokument gemäß Benutzergewohnheitsdaten auf die Anzeige rendern kann.
17. Konfigurierbarer Client-Computer nach Anspruch 16, der
außerdem eine Seitenrendereinrichtungsdatei zum Speichern
der Benutzergewohnheitsdaten umfasst.
18. Konfigurierbarer Client-Computer nach Anspruch 16, wobei die
Anzeige höchstens eine Anzahl von Zeilen anzeigen kann, die
geringer als eine Anzahl von Zeilen des ausgewählten
elektronischen Dokumentes ist.
19. Konfigurierbarer Client-Computer nach Anspruch 16, wobei die
Rendereinrichtung das ausgewählte elektronische Dokument auf
die Anzeige rendert, indem sie das ausgewählte elektronische
Dokument neu positioniert, so dass eine Seitenposition in
einem oberen Teil der Anzeige angezeigt wird.
20. Konfigurierbarer Client-Computer nach Anspruch 16, wobei die
Rendereinrichtung das ausgewählte elektronische Dokument auf
die Anzeige rendert, indem Elemente des ausgewählten
elektronischen Dokumentes neu angeordnet werden, so dass
eine Seitenposition in einem oberen Teil der Anzeige
angezeigt wird.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US57415700A | 2000-05-18 | 2000-05-18 | |
US574157 | 2000-05-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10121791A1 true DE10121791A1 (de) | 2001-12-20 |
DE10121791B4 DE10121791B4 (de) | 2004-11-25 |
Family
ID=24294910
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10121791A Expired - Fee Related DE10121791B4 (de) | 2000-05-18 | 2001-05-04 | Verfahren und Vorrichtung für dynamische Web-Seitenanordnung |
Country Status (3)
Country | Link |
---|---|
US (3) | US20080134064A1 (de) |
KR (1) | KR100473670B1 (de) |
DE (1) | DE10121791B4 (de) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100473670B1 (ko) * | 2000-05-18 | 2005-03-08 | 인터내셔널 비지네스 머신즈 코포레이션 | 웹 페이지 렌더링 방법 및 이를 구현하는 클라이언트 컴퓨터 |
US7460134B2 (en) * | 2004-03-02 | 2008-12-02 | Microsoft Corporation | System and method for moving computer displayable content into a preferred user interactive focus area |
US9471333B2 (en) * | 2006-11-03 | 2016-10-18 | Conceptual Speech, Llc | Contextual speech-recognition user-interface driven system and method |
US9081589B2 (en) * | 2006-12-01 | 2015-07-14 | Adobe Systems Incorporated | Persistent web plug-ins |
US20080201634A1 (en) * | 2007-02-20 | 2008-08-21 | Gibb Erik W | System and method for customizing a user interface |
US8209602B2 (en) * | 2007-07-25 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | Viewing of internet content |
US8375305B1 (en) * | 2010-05-14 | 2013-02-12 | Amazon Technologies, Inc. | Placement of user interface elements based on a window entry or exit point |
US10229222B2 (en) * | 2012-03-26 | 2019-03-12 | Greyheller, Llc | Dynamically optimized content display |
US10225249B2 (en) | 2012-03-26 | 2019-03-05 | Greyheller, Llc | Preventing unauthorized access to an application server |
US9032335B2 (en) * | 2012-08-14 | 2015-05-12 | Christopher V. Beckman | User interface techniques reducing the impact of movements |
US9413807B1 (en) * | 2012-10-15 | 2016-08-09 | Tableau Software, Inc. | Browser rendering and computation |
US11100554B1 (en) | 2014-03-13 | 2021-08-24 | BloomReach Inc. | System, method and computer program product for providing thematic landing pages |
US20160019308A1 (en) * | 2014-07-18 | 2016-01-21 | Oracle International Corporation | Modifying the order of items in a digital document based upon usage patterns |
US10712897B2 (en) | 2014-12-12 | 2020-07-14 | Samsung Electronics Co., Ltd. | Device and method for arranging contents displayed on screen |
US10534851B1 (en) | 2014-12-19 | 2020-01-14 | BloomReach Inc. | Dynamic landing pages |
US10867005B1 (en) * | 2018-12-10 | 2020-12-15 | Amazon Technologies, Inc. | Dynamic content caching and rendering system |
CN109857971A (zh) * | 2019-02-01 | 2019-06-07 | 天津字节跳动科技有限公司 | 页面渲染方法和装置 |
US20230083822A1 (en) * | 2021-09-16 | 2023-03-16 | International Business Machines Corporation | Optimized rendering of web pages |
Family Cites Families (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4611202A (en) * | 1983-10-18 | 1986-09-09 | Digital Equipment Corporation | Split screen smooth scrolling arrangement |
CA2071455A1 (en) * | 1991-10-16 | 1993-04-17 | Cary Lee Bates | Visually aging scroll bar |
JP2972510B2 (ja) * | 1993-11-25 | 1999-11-08 | 株式会社日立製作所 | 文書作成装置 |
US5732262A (en) * | 1994-01-31 | 1998-03-24 | International Business Machines Corporation | Database definition language generator |
JP3324624B2 (ja) * | 1994-03-03 | 2002-09-17 | 佳能電産香港有限公司 | 電子機器 |
US5799292A (en) * | 1994-04-29 | 1998-08-25 | International Business Machines Corporation | Adaptive hypermedia presentation method and system |
US5848396A (en) * | 1996-04-26 | 1998-12-08 | Freedom Of Information, Inc. | Method and apparatus for determining behavioral profile of a computer user |
US5897670A (en) * | 1996-07-12 | 1999-04-27 | Sun Microsystems, Inc. | Method and system for efficient organization of selectable elements on a graphical user interface |
US5838326A (en) * | 1996-09-26 | 1998-11-17 | Xerox Corporation | System for moving document objects in a 3-D workspace |
US5847709A (en) * | 1996-09-26 | 1998-12-08 | Xerox Corporation | 3-D document workspace with focus, immediate and tertiary spaces |
US6088032A (en) * | 1996-10-04 | 2000-07-11 | Xerox Corporation | Computer controlled display system for displaying a three-dimensional document workspace having a means for prefetching linked documents |
US5867678A (en) * | 1996-12-16 | 1999-02-02 | International Business Machines Corporation | Method and system for searching and retrieving specific types of objects contained within a compound document |
US5900875A (en) * | 1997-01-29 | 1999-05-04 | 3Com Corporation | Method and apparatus for interacting with a portable computer system |
US5796952A (en) * | 1997-03-21 | 1998-08-18 | Dot Com Development, Inc. | Method and apparatus for tracking client interaction with a network resource and creating client profiles and resource database |
US6523022B1 (en) * | 1997-06-09 | 2003-02-18 | Allen Hobbs | Method and apparatus for selectively augmenting retrieved information from a network resource |
US6078916A (en) * | 1997-08-01 | 2000-06-20 | Culliss; Gary | Method for organizing information |
US5978819A (en) * | 1997-08-12 | 1999-11-02 | International Business Machines Corporation | Automatically converting preformatted text into reflowable text for TV viewing |
JPH11134162A (ja) * | 1997-10-31 | 1999-05-21 | Apurikkusu:Kk | ウェブ・ブラウザ画面表示方法および装置 |
US6356924B2 (en) * | 1997-11-26 | 2002-03-12 | International Business Machines Corporation | Configurable disablement of display objects in a browser |
KR100294878B1 (ko) * | 1997-12-29 | 2001-07-12 | 윤종용 | 자동화면이동방법 |
US6750850B2 (en) * | 1998-01-07 | 2004-06-15 | Microsoft Corporation | Viewer system for a wireless device |
US6182133B1 (en) * | 1998-02-06 | 2001-01-30 | Microsoft Corporation | Method and apparatus for display of information prefetching and cache status having variable visual indication based on a period of time since prefetching |
US6012098A (en) * | 1998-02-23 | 2000-01-04 | International Business Machines Corp. | Servlet pairing for isolation of the retrieval and rendering of data |
US6154205A (en) * | 1998-03-25 | 2000-11-28 | Microsoft Corporation | Navigating web-based content in a television-based system |
US6338096B1 (en) * | 1998-06-10 | 2002-01-08 | International Business Machines Corporation | System uses kernals of micro web server for supporting HTML web browser in providing HTML data format and HTTP protocol from variety of data sources |
US20010011221A1 (en) * | 1998-09-01 | 2001-08-02 | Troy R. Underwood | Systems and methods for electronically providing vehicle title information |
US6412012B1 (en) * | 1998-12-23 | 2002-06-25 | Net Perceptions, Inc. | System, method, and article of manufacture for making a compatibility-aware recommendations to a user |
US7107226B1 (en) * | 1999-01-20 | 2006-09-12 | Net32.Com, Inc. | Internet-based on-line comparison shopping system and method of interactive purchase and sale of products |
US6487541B1 (en) * | 1999-01-22 | 2002-11-26 | International Business Machines Corporation | System and method for collaborative filtering with applications to e-commerce |
US6486892B1 (en) * | 1999-04-07 | 2002-11-26 | Joseph L. Stern | System and method for accessing, manipulating and viewing internet and non-internet related information and for controlling networked devices |
US6401094B1 (en) * | 1999-05-27 | 2002-06-04 | Ma'at | System and method for presenting information in accordance with user preference |
US7653614B2 (en) * | 1999-07-15 | 2010-01-26 | Spotware Technologies, Inc. | Method of searching across media and source types |
US6976210B1 (en) * | 1999-08-31 | 2005-12-13 | Lucent Technologies Inc. | Method and apparatus for web-site-independent personalization from multiple sites having user-determined extraction functionality |
US6597379B1 (en) * | 1999-09-15 | 2003-07-22 | International Business Machines Corporation | Automated navigation to exceptional condition cells in a merchandise planning system |
US6489968B1 (en) * | 1999-11-18 | 2002-12-03 | Amazon.Com, Inc. | System and method for exposing popular categories of browse tree |
US6597314B1 (en) * | 1999-12-07 | 2003-07-22 | Microsoft Corporation | Method and apparatus for providing help and settings control to users of an electronic book |
US6785671B1 (en) * | 1999-12-08 | 2004-08-31 | Amazon.Com, Inc. | System and method for locating web-based product offerings |
US6734886B1 (en) * | 1999-12-21 | 2004-05-11 | Personalpath Systems, Inc. | Method of customizing a browsing experience on a world-wide-web site |
US6981040B1 (en) * | 1999-12-28 | 2005-12-27 | Utopy, Inc. | Automatic, personalized online information and product services |
US6665659B1 (en) * | 2000-02-01 | 2003-12-16 | James D. Logan | Methods and apparatus for distributing and using metadata via the internet |
EP1264261B1 (de) * | 2000-03-14 | 2005-11-16 | Speed-trap.com Ltd. | Überwachung von und interaktion mit netzwerkdiensten |
KR100473670B1 (ko) * | 2000-05-18 | 2005-03-08 | 인터내셔널 비지네스 머신즈 코포레이션 | 웹 페이지 렌더링 방법 및 이를 구현하는 클라이언트 컴퓨터 |
US7860974B2 (en) * | 2002-05-31 | 2010-12-28 | Sap Ag | Providing stateful favorites |
-
2001
- 2001-04-24 KR KR10-2001-0021946A patent/KR100473670B1/ko not_active IP Right Cessation
- 2001-05-04 DE DE10121791A patent/DE10121791B4/de not_active Expired - Fee Related
-
2008
- 2008-01-17 US US12/016,074 patent/US20080134064A1/en not_active Abandoned
- 2008-01-17 US US12/016,063 patent/US20080134044A1/en not_active Abandoned
- 2008-07-22 US US12/177,652 patent/US8627226B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20080282176A1 (en) | 2008-11-13 |
KR100473670B1 (ko) | 2005-03-08 |
US20080134044A1 (en) | 2008-06-05 |
DE10121791B4 (de) | 2004-11-25 |
US8627226B2 (en) | 2014-01-07 |
US20080134064A1 (en) | 2008-06-05 |
KR20010106192A (ko) | 2001-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10121791B4 (de) | Verfahren und Vorrichtung für dynamische Web-Seitenanordnung | |
DE69602461T2 (de) | Verfahren und server-rechner zum lastausgleich zwischen den prozessoren des server-rechners | |
DE69229453T2 (de) | Verfahren und Anordnung zum Zugriff auf eine relationelle Datenbank, ohne eine objektorientierte Umgebung verlassen zu müssen | |
DE19842688B4 (de) | Verfahren zum Filtern von Daten, die von einem Datenanbieter stammen | |
DE69729926T2 (de) | Netzwerkbrowser | |
DE69725652T2 (de) | Einbettung von Ton in Webseiten | |
DE60003148T2 (de) | Bestimmung der Cachezeit | |
DE69831904T2 (de) | Dynamische Erstellung von Internetseiten | |
DE69434096T2 (de) | Verfahren und System, um mit einer graphischen Benutzerschnittstelle in einer Datenbank zu suchen | |
DE69736373T2 (de) | Web-browser, der die Navigation zwischen Hypertextobjekten mit einer Abstandsbedienung ermöglicht | |
DE69700276T2 (de) | Benutzerkontrollierbare beständige Browseranzeigeseiten | |
DE69636869T2 (de) | Server mit automatischer Menüladefunktion | |
DE10110924A1 (de) | Verfahren zum Bereitstellen wenigstens einer personalisierten Web-Benutzerseite | |
DE69628374T2 (de) | Datenverwaltungssystem | |
DE10135445A1 (de) | Integriertes Verfahren für das Schaffen einer aktualisierbaren Netzabfrage | |
DE112017001416T5 (de) | Benutzerschnittstellenelement zum Anzeigen ähnlicher Ergebnisse | |
DE10144707A1 (de) | Verfahren und System zum dynamischen Erzeugen von Web-Formularen in einer Vielzahl von Sprachen | |
DE602004008742T2 (de) | Methode und system zum abbilden von xml auf eine n-dimensionale datenstruktur | |
DE112022001161T5 (de) | Techniken zur bereitstellung einer suchschnittstelle innerhalb eines karussells | |
DE60104545T2 (de) | Adressieren von fernen datenobjekten über ein rechnernetzwerk | |
EP1620810B1 (de) | Verfahren und anordnung zur einrichtung und aktualisierung einer benutzeroberfl che zum zugriff auf informationsseiten in ein em datennetz | |
DE19813884A1 (de) | System und Verfahren zur Ermittlung und Darstellung von verbindungsbezogenen Leistungsdaten in Netzwerken | |
EP1362283B1 (de) | Verfahren und vorrichtung zum darstellen eines aus pixeln aufgebauten bildes | |
DE69518271T2 (de) | Verfahren und Vorrichtung zum Speichern und Wiedergewinnen von Daten | |
DE112020004493T5 (de) | Zwischenspeicherfähigkeit von single-page-anwendungen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |