Datenverarbeitungssystem Data processing system
Die Erfindung betrifft ein Datenverarbeitungssystem zum dynamischen Verarbeiten von Informationen repräsentierenden Datensätzen in wenigstens einem Datenbestand. Das Datenverarbeitungssystem umfasst wenigstens ein mobiles Endgerät als Front-End mit einer graphischen Benutzerschnittstelle zum Abrufen und zum Darstellen von Informatio- nen. Außerdem umfasst das Datenverarbeitungssystem wenigstens einen Server als Back-End mit einer Datenkommunikationsschnittstelle zur Datenkommunikation mit dem mobilen Endgerät. The invention relates to a data processing system for the dynamic processing of data representing data sets in at least one database. The data processing system comprises at least one mobile terminal as a front-end with a graphical user interface for retrieving and presenting information. In addition, the data processing system comprises at least one server as a back-end with a data communication interface for data communication with the mobile terminal.
Datenverarbeitungssysteme zum Verarbeiten von Informationen repräsentierenden Daten sind im Stand der Technik in diversen Ausgestaltungen bekannt. EP 1 685 505 B1 zeigt ein Datenverarbeitungssystem zur dynamischen Erfassung von gewichteten Zusammenhängen zwischen Informationen repräsentierenden Daten in wenigstens einem Datenbestand. Das Datenverarbeitungssystem hat Mittel, um einen Zusammenhang als Verknüpfung zwischen einem eine Information repräsentierenden Datum eines Datenbestandes und einem weiteren, eine Information repräsentierenden Datum eines Datenbestands ebenfalls als ein eine Information repräsentierendes Datum zu erfassen. Das Datenverarbeitungssystem ermittelt selbstständig und hält die Zusammenhänge aktuell. Die Zusammenhänge werden dynamisch als durch Verstärkung oder Abschwächung modifizierbare n-zu-n-Verknüpfungen (n ist eine natürliche Zahl) erfasst.
Die Verknüpfung wird durch einen semantischen Vergleich der Informationen repräsentierenden Daten einer Zusammenhangsanfrage und der Informationen repräsentierenden Daten des Datenbestands erzeugt. Im Rahmen des semantischen Vergleichs wird ein semantisches Netz erzeugt, aus dem Zusammenhänge erfassbar sind. Dynamische Zusammenhänge werden durch semantische Vergleiche anhand oder mittels der Folge von Informationen repräsentierenden Daten von Datenbeständen und Nutzungen von Informationen repräsentierenden Daten von Datenbeständen erfasst. Die Zusammenhangserfassung erfolgt gewichtet. Die Zusammenhangsgewichtung wenigstens eines bereits als ein eine Information repräsentierendes Datum in einem Datenbestand erfass- ten Zusammenhangs wird in Abhängigkeit der Zusammenhangsgewichtung eines nachfolgend erfassten Zusammenhangs durch Erhöhung oder Erniedrigung verändert. Das Datenverarbeitungssystem protokolliert die Folge aller aufgerufenen oder genutzten Informationen repräsentierenden Daten eines Daten bestand es. Wenn diese Folge mehrfach auftaucht und wenn zwei Informationen repräsentierende Daten eines Datenbestan- des aufeinander folgen und die Verknüpfung verstärkt wird, entsteht eine latente Verknüpfung. Data processing systems for processing information representing information are known in the art in various forms. EP 1 685 505 B1 shows a data processing system for the dynamic detection of weighted relationships between data representing information in at least one dataset. The data processing system has means to also detect a relationship as a link between an information-representing date of a data stock and another data-representing date of a data stock as a date representing an information. The data processing system independently determines and keeps the connections up-to-date. The relationships are dynamically detected as gain-weakenable modifiable n-to-n links (n is a natural number). The link is generated by a semantic comparison of the information representing data of a connection request and the information representing data of the database. In the context of the semantic comparison, a semantic network is generated from which correlations can be detected. Dynamic relationships are detected by semantic comparisons on the basis of or by means of the sequence of information representing data of databases and uses of information representing data of databases. The correlation is weighted. The relationship weighting of at least one relationship that has already been recorded in a dataset as an information-representing datum is changed by increasing or decreasing as a function of the context weighting of a subsequently recorded relationship. The data processing system logs the sequence of all data of a data that has been retrieved or used. If this sequence occurs several times and if two data representing a data stock follow one another and the link is strengthened, a latent link is created.
Bei einem Datenverarbeitungssystem der eingangs genannten Art ergeben sich einige Herausforderungen und Probleme, die es zu lösen gilt: In a data processing system of the type mentioned above, there are some challenges and problems that need to be solved:
Mobile Endgeräte haben nur eine beschränkte Datenkommunikations-Bandbreite sowie eine beschränkte Rechen- und Speicherkapazität. Mobile devices have limited data communication bandwidth and limited computing and storage capacity.
Die beschränkte Größe der graphischen Anzeige sowie die Anforderung einer Bedienung durch Finger lässt nur eine beschränkte Benutzerschnittstelle für Anwendungen zu und schränkt die Menge darzustellender Informationen dadurch ein, so dass nicht alle für einen Nutzer grundsätzlich verfügbaren Informationen dem Nutzer zur Auswahl angebo- ten werden können. The limited size of the graphical display, as well as the requirement for finger operation, allows only a limited user interface for applications and limits the amount of information to be displayed, so that not all information basically available to a user can be offered to the user for selection.
Bekannte Ansätze zum maschinengestützten Auffinden von relevanten Informationen, z.B. collaborative filtering benötigen a priori-lnformationen, um zu funktionieren, d.h. bei der initialen Verwendung fehlende Informationen können solche Systeme beeinträchtigen (Cold Start-Problematik). Ein weiteres Problem ist, dass der Nutzer nicht weiß, welche der Informationen, die ihn interessieren könnten, existieren. Daher ist keine explizite Abfrage dieser Informationen möglich.
Aufgabe ist es, ein Datenverarbeitungssystem zu schaffen, das es erlaubt, einem Nutzer auf einem mobilen Endgerät relevante Informationen zur Anzeige zu bringen. Known approaches for machine-aided finding of relevant information, eg collaborative filtering, require a priori information in order to function, ie missing information in the initial use can impair such systems (cold start problem). Another problem is that the user does not know which of the information that may interest him exists. Therefore, no explicit query of this information is possible. The object is to provide a data processing system that makes it possible for a user to display relevant information on a mobile terminal.
Hierzu wird ein Datenverarbeitungssystem mit wenigstens einem Server und wenigstens einem mobilen Endgerät mit einer graphischen Anzeige vorgeschlagen. Der Server ist dabei ausgebildet, auf Informationen repräsentierende Datensätze zuzugreifen und die Datensätze jeweils mit einer Datensatzkennung zu versehen, sowie auf Basis von in den Datensätzen enthaltenen Informationen die jeweilige Datensatzkennung einem oder mehreren verschiedenen Indices zuzuordnen. For this purpose, a data processing system with at least one server and at least one mobile terminal with a graphic display is proposed. The server is designed to access information-representing data records and to provide the data records each with a data record identifier, as well as to allocate the respective data record identifier to one or more different indices on the basis of information contained in the data records.
Des Weiteren ist der Server ausgebildet, eine invertierte Index-Datenstruktur zu bilden, in der eine Datensatzkennung oder mehrere Datensatzkennungen jeweils dann einem oder mehreren Indices zugeordnet sind, wenn ein jeweiliger durch die entsprechende Datensatzkennung identifizierter Datensatz eine durch einen jeweiligen Index repräsentierte Information enthält. Furthermore, the server is configured to form an inverted index data structure in which one or more record identifiers are respectively assigned to one or more indices if a respective record identified by the corresponding record identifier contains an information represented by a respective index.
Weiterhin ist der Server ausgebildet, eine Sequenz von Filtern zu verwalten, die durch einen oder mehrere der Indices definiert und dazu konfiguriert sind, eine Auswahl eines jeweiligen Datensatzes unter Berücksichtigung der durch diesen repräsentierten Informationen zu bestimmen. D.h. die Konfiguration des jeweiligen Filters bestimmt, welchen Datensatz der Server bei Aufruf des jeweiligen Filters auswählt. Furthermore, the server is configured to manage a sequence of filters defined by one or more of the indices and configured to determine a selection of a respective data set in consideration of the information represented thereby. That The configuration of the respective filter determines which data record the server selects when the respective filter is called.
Der Server ist weiter dazu ausgebildet, auf eine Anforderungsnachricht eines Endgerätes hin Daten zu übermitteln, die Hinweise auf Informationen repräsentieren, die ein jeweiliger mittels eines jeweiligem der Filter aus der Sequenz der Filter bestimmter Datensatz enthält. The server is further adapted to transmit, in response to a request message from a terminal, data indicative of information contained in a respective record determined by a respective one of the filters from the sequence of filters.
Das mobile Endgerät ist dazu ausgebildet, nach Aufruf einer entsprechenden, vorzugsweise auf dem mobilen Endgerät installierten Anwendung eine Datenkommunikations- Verbindung zu dem Server herzustellen und dem Server eine Anforderungsnachricht zu übermitteln, die vorzugsweise eine Nutzerkennung enthält. The mobile terminal is designed to establish a data communication connection to the server after calling a corresponding application, preferably installed on the mobile terminal, and to transmit to the server a request message, which preferably contains a user identifier.
Des Weiteren ist das mobile Endgerät dazu ausgebildet, von dem Server Daten zu empfangen, die Hinweise auf Informationen repräsentieren, die ein jeweiliger mittels eines jeweiligem der Filter aus der Sequenz der Filter bestimmten Datensatz enthält. Weiterhin ist das mobile Endgerät ausgebildet, durch die empfangenen Daten repräsentierte Hinweise auf der graphischen Anzeige anzuzeigen und auf eine entsprechende Eingabe
eines Nutzers hin mit einem jeweiligen Hinweis verknüpfte Informationen aufzurufen und zur Anzeige zu bringen, sowie eine einen jeweiligen Aufruf anzeigende Nachricht an den Server zu übermitteln. Furthermore, the mobile terminal is configured to receive from the server data representing indications of information contained in a respective data record determined by means of a respective one of the filters from the sequence of the filters. Furthermore, the mobile terminal is designed to display information represented by the received data on the graphic display and to a corresponding input To call a user associated with a respective note information and bring to display, as well as to send a message indicating a respective call to the server.
Daten, die Hinweise auf Informationen repräsentieren, sind hier derart zu verstehen, dass die Daten einen Hinweis auf Informationen enthalten, die durch den jeweils ausgewählten Datensatz repräsentiert sind. Data representing indications of information should be understood here to mean that the data contains an indication of information represented by the respective selected data record.
Vorzugsweise umfasst die Sequenz von Filtern wenigstens einen dynamischen Filter, der dadurch konfiguriert ist, dass ihm zugeordnet sowohl eine Nutzerkennung als auch mehrere Datensatzkennungen gespeichert sind. Der Server ist ausgebildet, den dynamischen Filter derart anzuwenden, dass er nach Empfang einer eine Nutzerkennung enthaltenden Anforderungsnachricht seitens des Endgerätes auf Basis der Indices, denen die durch ihre jeweilige Datensatzkennung identifizierten Datensätze zugeordnet sind, einen Datensatz auswählt und Daten, die einen Hinweis auf durch einen jeweiligen so ausgewählten Datensatz repräsentierte Informationen enthalten, zu dem mobilen Endgerät über- trägt, so dass der Hinweis auf der graphischen Anzeige des Endgerätes angezeigt werden kann. Preferably, the sequence of filters comprises at least one dynamic filter configured by having associated with it both a user identifier and a plurality of record identifiers. The server is adapted to apply the dynamic filter such that it selects a data set upon receipt of a request message containing a user identifier from the terminal based on the indices associated with the records identified by their respective record identifier and data indicative of present information represented by a respective record selected in this way, to which the mobile terminal transmits, so that the indication can be displayed on the graphical display of the terminal.
Weiterhin ist es vorteilhaft, wenn der Server ausgebildet ist, nach Empfang einer jeweiligen, einen Aufruf anzeigenden Nachricht eine Datensatzkennung, die den Datensatz identifiziert, der die aufgerufene Information repräsentiert, dem entsprechenden dynami- sehen Filter zugeordnet zu speichern. Furthermore, it is advantageous, if the server is designed, after receiving a respective message indicating a call, a data record identifier which identifies the data record representing the called information, to be associated with the corresponding dynamic filter.
Vorteilhafterweise kann der Server ausgebildet sein, auf Basis der Indices, denen der durch die dem dynamischen Filter zugeordnet gespeicherte Datensatzkennung identifizierte Datensatz zugeordnet ist, weitere Datensätze zu ermitteln, denen die entsprechenden Indices zugeordnet sind, und den dynamischen Filter mittels der Datensatzkennun- gen dieser Datensätze zu konfigurieren. Die Konfiguration des dynamischen Filters kann somit den Interessen eines Nutzers folgen, ohne dass hierzu ein herkömmliches Nutzerprofil nötig ist. Auch ist die Konfiguration des dynamischen Filters zwar beispielsweise stichwortbasiert, aber dennoch rein sprachagnostisch, d.h. das System braucht keinerlei Information über die Bedeutung der durch die Datensätze repräsentierten Informationen, z.B. der in den Datensätzen enthaltenen Worte. Dies erlaubt eine einfache technische Realisierung für alle denkbaren Sprachen.
Letzeres kann der Server dadurch unterstützen, dass er ausgebildet ist, nach Empfang einer weiteren, eine Nutzerkennung enthaltenden Anforderungsnachricht auf Basis des konfigurierten dynamischen Filters - über die Indices, denen die Datensätze zugeordnet sind, die durch die Datensatzkennungen identifiziert sind, durch die der dynamische Filter jeweils konfiguriert ist - einen Datensatz zu bestimmen und auszuwählen und einen Hinweis auf in diesem Datensatz enthaltene Informationen repräsentierende Daten an das mobile Endgerät zu übermitteln. Advantageously, the server may be configured to determine further data records to which the corresponding indices are assigned on the basis of the indices to which the data record identified by the stored record identifier assigned to the dynamic filter is assigned, and the dynamic filter by means of the record identifications of these data records to configure. The configuration of the dynamic filter can thus follow the interests of a user without the need for a conventional user profile. Although the configuration of the dynamic filter is for example keyword-based, it is nevertheless purely speech-diagnostic, ie the system does not need any information about the meaning of the information represented by the data records, eg the words contained in the data records. This allows a simple technical realization for all conceivable languages. The latter may be assisted by the server in being adapted to receive, upon receipt of a further request message containing a user identifier, based on the configured dynamic filter - via the indices associated with the records identified by the record identifiers by which the dynamic filter is configured in each case - to determine and select a record and to transmit an indication of information contained in this record data representing the mobile terminal.
Der dynamische Filter kann durch mehrere Gruppen von Datensatzkennungen konfiguriert und der Server ausgebildet sein, bei einem jeweiligen Aufruf des dynamischen Filters solche Indices zur Auswahl eines Datensatzes anzuwenden, denen diejenigen Datensätze zugeordnet sind, deren Datensatzkennungen jeweils eine Gruppe bilden. Auf diese Weise können einem Nutzer mittels eines Filters im Laufe der Zeit unterschiedliche Informationen zur Kenntnis gebracht werden. The dynamic filter may be configured by multiple sets of record identifiers, and the server may be configured to apply to such call of the dynamic filter those indexes for selecting a record associated with those records whose record identifiers each form a group. In this way, a user can be made aware of different information over time by means of a filter.
Ein dynamischer Filter, der die zuvor genannten Merkmale verwirklicht, ruft auf Basis der Datensatzkennung in der invertierten Index-Datenstruktur den Index oder die Indices auf, dem oder denen der entsprechende Datensatz zugeordnet ist und identifiziert mittels des Index oder der Indices weitere Datensätze, die entsprechenden Indices zugeordnet sind. Der Server ist ausgebildet, die den so identifizierten Datensätzen zugeordneten Datensatzkennungen zu speichern und beim erneuten Aufrufen der Anwendung durch den Nutzer anhand der Indices, denen die durch die gespeicherten Datensatzkennungen gekennzeichneten Datensätze zugeordnet sind, einen Informationen repräsentierenden Datensatz auszuwählen und einen Hinweis auf die durch den ausgewählten Datensatz repräsentierten Informationen zur Darstellung auf dem mobilen Endgerät an dieses zu übermitteln, woraufhin der entsprechende Hinweis auf die Information der zweiten Art auf dem mobilen Endgerät angezeigt wird. A dynamic filter implementing the aforementioned features, based on the record identifier in the inverted index data structure, retrieves the index or indexes to which the corresponding record is associated and identifies further records, the corresponding one, by means of the index or indices Indices are assigned. The server is configured to store the record identifications associated with the data records identified in this way and to select a record representing information when the user re-invokes the application on the basis of the indices to which the records identified by the stored record identifiers are assigned, and an indication of this selected information record presented on the mobile terminal to the latter to be transmitted, whereupon the corresponding reference to the information of the second type is displayed on the mobile terminal.
Die von dem Server zu dem mobilen Endgerät zu sendenden Daten, die einen Hinweis auf in einem jeweiligen ausgewählten Datensatz enthaltenen Informationen repräsentieren, können vorteilhafterweise außer diesem Hinweis wenigstens eine URL enthalten, die auf den ausgewählten Datensatz verweist, sodass dieser dann bei Bedarf von einem Nutzer aufgerufen werden kann. Der Datensatz kann beispielsweise eine Webseite sein. The data to be sent by the server to the mobile terminal, which represent an indication of information contained in a respective selected record, may advantageously contain, in addition to this indication, at least one URL that refers to the selected record, so that it may be requested by a user can be called. The record may be, for example, a web page.
Die Informationen repräsentierenden Datensätze sind vorzugsweise solche, die wenigstens eine Textinformation enthalten, die wenigstens ein Wort enthält. Die Hinweise auf die Datensätze repräsentierenden Daten, die vom Server zum mobilen Endgerät übertra-
gen werden, enthalten vorzugsweise wenigstens eine Textinformation, die wenigstens eine Zusammenfassung eines die jeweiligen Informationen repräsentierenden Datensatzes enthält. The data representing data sets are preferably those containing at least one text information containing at least one word. The indications of data representing data records transferred from the server to the mobile terminal. gene, preferably contain at least one text information containing at least a summary of a record representing the respective information.
In einer besonders bevorzugten Ausführungsvariante umfasst das mobile Endgerät ein Anwendungs-Backend, das ausgebildet ist, auf der berührungsempfindlichen graphischen Anzeige des mobilen Endgerätes eine Wiedergabe der durch die empfangenen Daten repräsentierenden Hinweise in Form von Karten zu bewirken. Außerdem ist das Anwendungs-Backend ausgebildet, Ereignisse zu erfassen und zu verarbeiten, die eine Wischgeste repräsentieren und auf Erfassen einer Wischgeste hin einen nächsten Hin- weis aus einer Folge von Hinweisen zur Anzeige auf der berührungsempfindlichen graphischen Anzeige bringen. Auf diese Weise können einem Nutzer auf einer kleinflächigen graphischen Anzeige eine Folge von Hinweise zur Kenntnis gebracht werden, ohne dass hierzu Schaltflächen oder ähnliches vorgesehen werden müssen, so dass die begrenzte Fläche der graphischen Anzeige vollständig zum Anzeigen der Hinweise zur Verfügung stehen kann. Statusanzeigen oder ähnliches des mobilen Endgerätes bleiben hiervon unberührt. In a particularly preferred embodiment variant, the mobile terminal comprises an application backend, which is designed to effect on the touch-sensitive graphical display of the mobile terminal a reproduction of the information represented by the received data in the form of maps. Additionally, the application backend is configured to capture and process events that represent a swipe gesture and, upon detecting a swipe gesture, provide a next indication of a sequence of indications for display on the touch-sensitive graphical display. In this way, a sequence of hints can be brought to the attention of a user on a small-area graphic display, without the need for buttons or the like, so that the limited area of the graphic display can be completely available for displaying the clues. Status displays or the like of the mobile terminal remain unaffected.
Außerdem ist das Anwendungs-Backend vorzugsweise ausgebildet, zu bewirken, dass Hinweise auf Datensätze und die durch diese repräsentierten Informationen auf zwei unterschiedliche Weisen sequentiell dargestellt werden und zwar in Abhängigkeit davon, welcher Art die Datensätze oder die durch diese repräsentierten Informationen sind, oder davon, von welcher Datenquelle die Datensätze oder die durch diese repräsentierten Informationen stammen. In addition, the application backend is preferably configured to cause references to records and the information represented thereby to be sequentially displayed in two different ways, depending on what kind of records are or the information represented by them, or from which data source the data records or the information represented by them originate.
Die beiden letzten genannten Aspekte, die von dem Anwendungs-Backend realisiert werden, sind auch unabhängig von der Auswahl der jeweiligen Datensätze realisierbar und stellen in diesem Sinne einen eigenständigen Erfindungsgedanken dar. The two last-mentioned aspects, which are realized by the application backend, can also be implemented independently of the selection of the respective data records and represent in this sense an independent idea of the invention.
In diesem Sinne wird auch ein mobiles Endgerät vorgeschlagen, das ausgebildet ist, zu bewirken, dass Hinweise auf Datensätze und die durch diese repräsentierten Informationen entweder als Stapel von Karten oder als Sequenz oder Folge oder Band von Kante an Kante aufeinander folgenden Karten auf einer graphischen Anzeige des mobilen Endgerätes angezeigt werden, und zwar in Abhängigkeit davon, welcher Art die Datensätze oder die durch diese repräsentierten Informationen sind, oder davon, von welcher Datenquelle die Datensätze oder die durch diese repräsentierten Informationen stammen.
Das Anwendungs-Backend kann weiterhin derart ausgebildet sein, dass mittels eines Kartenstapels darzustellende Informationen einer zweiten Art jederzeit beim Betrachten der in Form eines fortlaufenden Bandes dargestellten Karten mit Informationen einer ersten Art aufgerufen werden können. Der Kartenstapel kann dann über dem Band der Karten erscheinen. So können z.B. Informationen wie mobile Bordkarten, Reisepläne oder grundlegende Systeminformationen als Informationen der zweiten Art zu einem beliebigen Zeitpunkt als Kartenstapel aufgerufen werden, während andere Informationen, die Nachrichten oder das Wetter oder Systemhintergrundinformationen (Auslastung etc.) als Kante an Kante nebeneinander angeordnete Karten dargestellt werden. Zur Lösung der vorgenannten Aufgabe wird außerdem ein Verfahren zum Anzeigen von Informationen auf einer graphischen Benutzerschnittelle eines mobilen Endgerätes vorgeschlagen, wobei dem Nutzer zum Einen Hinweise auf Informationen einer ersten Art (WTK) angezeigt werden, die bei einem Aufrufen einer Anwendung in jedem Fall anzuzeigen sind und zum Anderen Hinweise auf Informationen einer zweiten Art (NTK), deren Anzeige von einem Interesse eines Nutzers abhängt, ohne dass der Nutzer die zweiten Informationen explizit und spezifisch anfordern muss. In this sense, a mobile terminal is also proposed, which is designed to cause references to data records and the information represented by them either as a stack of cards or as a sequence or sequence or band from edge to edge of successive cards on a graphic display of the mobile terminal, depending on the type of data records or the information represented by them, or on which data source the data records or the information represented by them originate. The application backend can furthermore be configured such that information of a second type to be displayed by means of a card stack can be called up at any time when viewing the cards in the form of a continuous band with information of a first type. The deck of cards can then appear above the ribbon of cards. For example, information such as mobile boarding passes, travel plans, or basic system information may be retrieved as second-order information at any point in time as a deck of cards, while other information, messages, or weather or system background information (workload, etc.) may be presented side by side as side-by-side maps become. In order to achieve the above object, a method for displaying information on a graphic user interface of a mobile terminal is also proposed, wherein the user firstly receives information on a first type of information (WTK) to be displayed when invoking an application in each case and secondly, references to information of a second type (NTK), the display of which depends on a user's interest, without the user having to explicitly and specifically request the second information.
Es werden ein oder mehrere Server und ein oder mehrere mobile Endgeräte bereitgestellt, die mit dem Server Daten austauschen können. It provides one or more servers and one or more mobile devices that can communicate with the server.
Der Server ist mit Datenbeständen verbunden, die die Informationen repräsentierende Datensätze enthalten. Die Datenbestände können auf demselben Server gespeichert sein oder der Server kann mit einem anderen Server verbunden sein, auf dem die Datenbestände gespeichert sind. Der Server ordnet zur Verfügung stehende, Informationen repräsentierende Datensätze verschiedenen Indices in einer invertierten Index- Datenstruktur zu. Vorteilhaft ist es, wenn der Server die Informationen repräsentierende Datensätze zunächst in eine sequentielle Datenstruktur umwandelt, in der in einem jeweilige Informationen repräsentierende Datensatz enthaltene Informationen als Werte (values) verschiedenen Schlüsseln (keys) zugeordnet sind. The server is connected to databases containing records representing the information. The datasets can be stored on the same server or the server can be connected to another server where the datasets are stored. The server allocates available information representing records to various indexes in an inverted index data structure. It is advantageous if the server first converts the data records representing the information into a sequential data structure in which information contained in a data record representing each information is assigned as values (values) to different keys (keys).
Die invertierte Index-Datenstruktur enthält vorzugsweise Indices, die Schlüsselinformationen repräsentieren, und diesen zugeordnet Datensatzkennungen derjenigen (Informationen repräsentierenden) Datensätze, die eine jeweilige Schlüsselinformation enthalten.
Das mobile Endgerät stellt - nachdem ein Nutzer eine entsprechende Anwendung aufgerufen hat - eine Datenkommunikationsverbindung zu einem Server her und übermittelt dem Server eine Nutzerkennung. The inverted index data structure preferably includes indexes representing key information and associated therewith record identifiers of those (information representing) records containing respective key information. The mobile terminal establishes - after a user has invoked a corresponding application - a data communication connection to a server and transmits the server a user identifier.
Daraufhin übermittelt der Server dem mobilen Endgerät erste Daten, die Hinweise auf die Informationen der ersten Art enthalten und zweite Daten, die Hinweise auf Informationen der zweiten Art enthalten. Thereafter, the server transmits to the mobile terminal first data containing clues to the information of the first kind and second data containing clues to information of the second kind.
Die Hinweise auf die Informationen der ersten Art und die Hinweise auf die Informationen der zweiten Art werden auf dem mobilen Endgerät derart bereitgestellt, dass ein Nutzer die Hinweise auf die Informationen der ersten Art und die Hinweise auf die Informationen der zweiten Art nacheinander auf der graphischen Benutzerschnittstelle abrufen kann und nach Bedarf mit einem jeweiligen Hinweis verknüpfte Informationen aufrufen kann. The references to the information of the first type and the references to the information of the second type are provided on the mobile terminal such that a user provides the references to the information of the first type and the references to the information of the second type successively on the graphical user interface can retrieve information associated with a particular note as needed.
Das mobile Endgerät übermittelt im Falle eines Aufrufs einer Information eine einen jeweiligen Aufruf anzeigende Nachricht an den Server. Daraufhin speichert der Server eine die aufgerufene Information repräsentierenden Datensatz kennzeichnende Daten- satzkennung und ordnet diese einem dynamischen Filter zu, der für eine jeweilige Nutzerkennung spezifisch ist, The mobile terminal transmits a message indicating a respective call to the server in the event of a call of information. Thereafter, the server stores a data set identifier identifying the retrieved information and assigns it to a dynamic filter specific to a respective user identifier,
Der dynamische Filter ruft auf Basis der Datensatzkennung in der invertierten Index- Datenstruktur den Index oder die Indices auf, dem oder denen der entsprechende Datensatz zugeordnet ist und identifiziert mittels des Indexes oder der Indices weitere Daten- sätze, die entsprechenden Indices zugeordnet sind. Die den so identifizierten Datensätzen zugeordneten Datensatzkennungen werden gespeichert und bilden eine Gruppe von Datensatzkennungen, die in der invertierten Index-Datenstruktur verschiedenen Indices zugeordnet sind. Der dynamische Filter ist somit mittelbar durch mehrere Indices konfiguriert. Der Filter wählt beim erneuten Aufrufen der Anwendung durch den Nutzer anhand der Indices, denen die durch die gespeicherten Datensatzkennungen gekennzeichneten Datensätze zugeordnet sind, einen Informationen repräsentierenden Datensatz aus. The dynamic filter, based on the record identifier in the inverted index data structure, retrieves the index or indexes to which the corresponding record is associated and identifies further records associated with corresponding indexes using the index or indices. The record identifiers associated with the records thus identified are stored and form a set of record identifiers associated with different indexes in the inverted index data structure. The dynamic filter is thus indirectly configured by several indices. The filter selects an information representative record when the user re-invokes the application based on the indices associated with the records identified by the stored record identifiers.
Zu dem ausgewählten Datensatz übermittelt der Server an das mobile Endgerät einen Hinweis auf die durch den ausgewählten Datensatz repräsentierten Informationen. Dieser Hinweis veranlasst das mobile Endgerät, einen entsprechenden Hinweis auf die Information der zweiten Art auf dem mobilen Endgerät anzuzeigen.
Über eine Sequenz von Filtern kann der Server somit eine Sequenz von Datensätzen bestimmen und eine Folge von Hinweisen auf in den Datensätzen enthaltenen Informationen repräsentierende Daten generieren und zum mobilen Endgerät übertragen, wo ein Nutzer die Hinweise nacheinander abrufen kann. Die Sequenz von Filtern kann neben einem oder mehreren dynamischen Filtern (wie weiter vorne beschrieben) auch statische Filter enthalten, die fest konfiguriert sind. To the selected record, the server transmits to the mobile terminal an indication of the information represented by the selected record. This notification causes the mobile terminal to display a corresponding reference to the information of the second type on the mobile terminal. Through a sequence of filters, the server can thus determine a sequence of records and generate a sequence of indications of information contained in the records representing data and transmit it to the mobile terminal, where a user can retrieve the hints one after the other. The sequence of filters may include one or more dynamic filters (as described earlier) and static filters that are hard-coded.
Ein Vorteil dieses Verfahrens ist es, dass auf einen semantischen Vergleich verzichtet werden kann. An advantage of this method is that it can be dispensed with a semantic comparison.
Die Informationen repräsentierenden Datensätze können beispielsweise Dateien sein, die Wörter enthaltende Texte repräsentieren. Ein Vorteil des Verfahrens ist es, dass es unabhängig von der verwendeten Sprache des Textes ist. The data representing data sets may be, for example, files that represent words containing words. An advantage of the method is that it is independent of the language of the text used.
Die Erfindung soll nun anhand von Ausführungsbeispielen mit Bezug auf die Figuren näher erläutert werden. Von den Figuren ist The invention will now be explained in more detail by means of embodiments with reference to the figures. From the figures is
Figur 1 : eine Übersicht über ein Datenverarbeitungssystem gemäß der Erfindung; Figur 2: eine schematische Darstellung weiterer Ressourcen des Datenverarbeitungssystems; FIG. 1 shows an overview of a data processing system according to the invention; FIG. 2 shows a schematic representation of further resources of the data processing system;
Figur 3: eine schematische Darstellung einiger Komponenten eines mobilen Endgerätes; FIG. 3 shows a schematic representation of some components of a mobile terminal;
Figur 4: eine schematische Illustration der Funktionsweise eines dynamischen Filters Figur 5: eine schematische Darstellung eines Datenaustauschs zwischen mobilem Figure 4: a schematic illustration of the operation of a dynamic filter Figure 5: a schematic representation of a data exchange between mobile
Endgerät und Server; Terminal and server;
Figur 6: eine Illustration der Funktionsweise des Anwendungsfrontends bei der Figure 6: an illustration of the operation of the application front end in the
Anzeige von Hinweisen auf eine erste Art von Informationen; und Displaying hints to a first type of information; and
Figur 7: eine Illustration der Funktionsweise des Anwendungsfrontends bei der Figure 7: an illustration of the operation of the application front end in the
Anzeige von Hinweisen auf eine zweite Art von Informationen.
Ein Datenverarbeitungssystem gemäß der Erfindung umfasst wenigstens zwei Komponenten, nämlich einen Backend-Server 10 und ein mobiles Endgerät 12. Tatsächlich ist das Datenverarbeitungssystem allerdings darauf angelegt, dass es eine Vielzahl mobiler Endgeräte 12 gibt, die verschiedenen Nutzern zugeordnet sind. Ebenso können auch mehrere Server 10 vorgesehen sein. Display hints to a second type of information. A data processing system according to the invention comprises at least two components, namely a backend server 10 and a mobile terminal 12. In fact, however, the data processing system is designed to have a plurality of mobile terminals 12 associated with different users. Likewise, a plurality of servers 10 may be provided.
Der Backend-Server 10 selbst stellt weitere Ressourcen des Datenverarbeitungssystems zur Verfügung und ist darüber hinaus auch mit weiteren Ressourcen verbunden. Entsprechendes gilt für diese mobilen Endgeräte 12. The backend server 10 itself provides additional resources of the data processing system and is also connected to other resources. The same applies to these mobile terminals 12.
Insbesondere hat der Backend Server 10 folgende Eigenschaften: - Er ist mit Mobilfunknetzwerk zum bidirektionalen Übertragen von und zu den mobilen Endgeräten verbunden. In particular, the backend server 10 has the following features: It is connected to a mobile radio network for bi-directional transmission from and to the mobile terminals.
Er hat Zugriff auf Informationen repräsentierende Datensätze. He has access to information representing records.
Er verwaltet eine invertierte Index-Datenstruktur auf Basis von Indices und diesen zugeordneten Datensatzkennungen, die einen jeweiligen Informationen repräsen- tierenden Datensatz eindeutig identifizieren. It manages an inverted index data structure based on indices and associated record identifiers that uniquely identify a record representing each information.
Er verwaltet und verarbeitet eine Sequenz von Filtern, von denen jeder Filter Basis für die Auswahl eines Datensatzes durch den Server ist. It manages and processes a sequence of filters, each filter being the basis for selecting a record by the server.
Er überträgt eine Folge von Hinweisen auf den Inhalt der ausgewählten Datensätze repräsentierenden Daten zu einem jeweiligen mobilen Endgerät 12. Einige der weiteren Ressourcen des Datenverarbeitungssystems sind in Figur 2 schematisch dargestellt. Wie der Figur 2 zu entnehmen ist, umfasst der Backend-Server 10 ein content management-System 14, welches zum Verwalten von Datensätzen und der durch die Datensätze repräsentierten Informationen dient. Darüber hinaus umfasst der Backend-Server 10 ein Anwendungs-Backend 16, welches die Funktion hat, aus der Vielzahl von von dem content management-System 14 bereitgestellten Datensätzen einige Datensätze auszuwählen und Hinweise auf diese Datensätze zu generieren, die - repräsentiert durch entsprechende Daten - zu dem jeweiligen mobilen Endgerät 12 zu übertragen sind.
Das mobile Endgerät 12 weist hierzu ein entsprechendes Anwendungs-Frontend 18 auf, das empfangene Daten mit Hinweisen auch die Informationsinhalte der ausgewählten Datensätze so verarbeitet, dass die Hinweise auf einer graphischen Anzeige 20 des mobilen Endgerätes 12 nacheinander angezeigt werden können. Ein Nutzer kann einen jeweils angezeigten Hinweis auf der berührungsempfindlichen graphischen Anzeige 20 anklicken und so den zu dem Hinweis gehörenden Datensatz aufrufen. Der Aufruf des jeweiligen Datensatzes kann beispielsweise mithilfe einer URL erfolgen, die auf den jeweiligen Datensatz verweist. It transmits a sequence of indications of data representing the content of the selected data records to a respective mobile terminal 12. Some of the further resources of the data processing system are shown schematically in FIG. As can be seen from FIG. 2, the back-end server 10 comprises a content management system 14, which serves for the administration of data records and the information represented by the data records. In addition, the back-end server 10 includes an application backend 16, which has the function to select from the plurality of provided by the content management system 14 records some records and to generate clues to these records, which - represented by appropriate data - to be transmitted to the respective mobile terminal 12. For this purpose, the mobile terminal 12 has a corresponding application front-end 18 which processes received data with instructions and also the information contents of the selected data records in such a way that the instructions can be displayed successively on a graphic display 20 of the mobile terminal 12. A user may click on a respective displayed indication on the touch-sensitive graphical display 20 and thus call up the record associated with the reference. The call of the respective data record can, for example, be made using a URL which refers to the respective data record.
Das Anwendungs-Frontend 18 kann als Anwendung auf dem mobilen Endgerät 12 instal- liert sein, so dass es vom mobilen Endgerät 12 ausgeführt werden kann. Wie Figur 3 zeigt, weist das mobile Endgerät 12 hierfür neben der berührungsempfindlichen graphischen Anzeige 20 mit einer dazugehörenden Treiber- und Ausleseeinheit 22 einen Prozessor 24 auf, der über die Treiber- und Ausleseeinheit 22 mit der berührungsempfindlichen graphischen Anzeige 20 verbunden ist. Außerdem ist der Prozessor 24 mit einem Speicher 26 sowie einem Datenmodem 28 verbunden. Das Datenmodem 28 dient zum bidirektionalen Datenaustausch über ein Mobilfunknetz und erlaubt damit einen Datenaustausch mit dem Server 10. The application front end 18 may be installed as an application on the mobile terminal 12 so that it can be executed by the mobile terminal 12. As FIG. 3 shows, the mobile terminal 12 has, in addition to the touch-sensitive graphic display 20 with an associated driver and read-out unit 22, a processor 24 which is connected to the touch-sensitive graphic display 20 via the driver and readout unit 22. In addition, the processor 24 is connected to a memory 26 and a data modem 28. The data modem 28 serves for bidirectional data exchange via a mobile radio network and thus permits data exchange with the server 10.
Der Server 10 ist dazu ebenfalls wenigstens indirekt mit einem Mobilfunknetz verbunden. Außerdem ist der Backend-Server 10 mit einem Datenaufbereitungssystem 30 (siehe Fig. 2) verbunden, das seinerseits mit einer Vielzahl von Datenquellen 32 typischerweise über das Internet verbunden ist. Das Datenaufbereitungssystem 30 ist dazu ausgebildet, über einen Crawler 34 die verschiedenen Datenquellen 32 abzufragen und von den Datenquellen 32 bezogene Informationen zu sammeln. Die von den Datenquellen 32 bezogenen Informationen werden von dem Datenaufbereitungssystem 30 aufbereitet und zu Datensätzen verdichtet, die dem content management-System 14 zuführt werden können. The server 10 is also at least indirectly connected to a mobile network. In addition, the backend server 10 is connected to a data rendering system 30 (see FIG. 2), which in turn is connected to a plurality of data sources 32 typically over the Internet. The data processing system 30 is configured to query the various data sources 32 via a crawler 34 and to collect information obtained from the data sources 32. The information obtained from the data sources 32 is processed by the data processing system 30 and condensed into data records that can be supplied to the content management system 14.
Aus den von den Datenquellen 32 bezogenen Daten generiert das Datenaufbereitungssystem 30 eine sequenzielle Datenstruktur im JSON Format, in der die an dem jeweiligen Datensatz enthaltenen Informationen als Werte (values) verschiedenen Schlüsseln (keys) zugeordnet sind. Außerdem werden den Datensätzen individuelle Datensatzkennungen zugeordnet.
Datensatzkennung Schlüssel: Wert From the data obtained from the data sources 32, the data preparation system 30 generates a sequential data structure in the JSON format, in which the information contained in the respective data record is assigned as values (values) to different keys (keys). In addition, the records are assigned individual record identifiers. Record identifier key: value
122 Wort: Fußball, Wahlen, Börse 122 word: football, elections, stock market
1346 Wort: Börse, Wahlen Messe 1346 Word: stock market, elections fair
1600 Wort: Messe, Börse 1600 Word: Fair, Stock Exchange
Wort: Bevölkerungswachstun, Word: population growth,
161 1 161 1
Hunger, Börse Hungry, stock market
Mittels der sequenziellen Datenstruktur und den Datensatzkennungen generiert das Datenauf bereitungssystem 30 eine invertierte Index-Datenstruktur, in der die individuellen Datensatzkennungen jeweils einem Index oder mehreren Indices zugeordnet sind. Ein jeweiliger Index repräsentiert dabei eine Schlüsselinformation. By means of the sequential data structure and the data record identifications, the data processing system 30 generates an inverted index data structure in which the individual data record identifiers are respectively assigned to one or more indices. A respective index represents a key information.
Eine jeweilige Datensatzkennung wird immer dann einem jeweiligen Index zugeordnet, wenn der dazugehörige Datensatz die Schlüsselinformation enthält für die der jeweilige Index steht. Dieser ergibt sich wiederum aus der zuvor gebildeten sequenziellen Datenstruktur, indem aus einem jeweiligen Schlüssel (beispielsweise: Wort) zugeordneten Werten (bspw: Fußball, Wahlen, Börse, Messe, Bevölkerungswachstum, Hunger) die verschiedenen Indices (bspw: Bevölkerungswachstum, Hunger) gebildet werden und diesen Indices immer dann eine Datensatzkennung zugeordnet wird, wenn der zugehörige Datensatz zum jeweiligen Schlüssel (z.B. topic) einen entsprechenden Wert (z.B. Weltbevölkerung und/oder Hunger) enthält. A respective data record identifier is always assigned to a respective index if the associated data record contains the key information for which the respective index is located. This in turn results from the previously formed sequential data structure by the various indices (eg: population growth, hunger) are formed from a respective key (for example: word) associated values (eg: football, elections, stock market, fair, population growth, hunger) and a data record identifier is always assigned to these indices if the associated data record for the respective key (eg topic) contains a corresponding value (eg world population and / or hunger).
Mittels der invertierten Index-Datenstruktur und einer Liste von Filtern wählt das Anwen- dungs-Backend 16 jeweils einen Datensatz pro Filter aus, zudem dann ein den jeweiligen
Inhalt repräsentierender Hinweis erstellt wird, der von dem Anwendungs-Frontend 18 auf dem mobilen Gerät 12 verarbeitet und auf der graphischen Anzeige 20 zur Anzeige gebracht werden kann. By means of the inverted index data structure and a list of filters, the application back end 16 selects one data set per filter in each case, and then selects the respective one Content representative note that can be processed by the application front-end 18 on the mobile device 12 and displayed on the graphic display 20.
Ein jeweiliger Filter bestimmt somit, welchen Datensatz das Anwendungs-Backend 16 jeweils auswählt. Diese Auswahl geschieht anhand von Indices, die den Filter konfigurieren. Eine derartige Konfiguration eines Filters kann unmittelbar erfolgen, indem die den Filter definierenden Indices unmittelbar vorliegen. Ein Filter kann aber auch mittelbar mittels Indices konfiguriert sein, indem dem Filter Datensatzkennungen zugeordnet sind, die ihrerseits wieder über die invertierte Index-Datenstruktur verschiedenen Indices zugeordnet sind. Diese Indices, denen die dem jeweiligen Filter zugeordneten Datensatz- kennungen zugeordnet sind, konfigurieren den entsprechenden Filter indirekt. Eine Auswahl eines jeweiligen Datensatzes erfolgt, indem die zur Verfügung stehenden Datensätze anhand der den Filter definierenden Indices gefiltert werden. Ein weiteres Auswahlkriterium kann beispielsweise auch das Alter eines Datensatzes sein. Die Filter bilden eine Sequenz von Filtern, die auch die Reihenfolge bestimmt, mit der die Hinweise auf dem mobilen Endgerät 12 angezeigt werden, die auf die mittels der jeweiligen Filter ausgewählten Datensätze verweisen. A respective filter thus determines which data record the application back end 16 selects in each case. This selection is done using indexes that configure the filter. Such a configuration of a filter can be done directly by the indices directly defining the filter. However, a filter can also be indirectly configured by means of indices by assigning record identifiers to the filter, which in turn are assigned to different indices via the inverted index data structure. These indices, which are assigned the record identifiers assigned to the respective filter, configure the corresponding filter indirectly. A selection of a respective data record is carried out by filtering the available data records on the basis of the indices defining the filter. Another selection criterion may be, for example, the age of a data record. The filters form a sequence of filters which also determines the order in which the indications are displayed on the mobile terminal 12, which refer to the records selected by the respective filters.
Einige der Filter können dynamische Filter sein. Ein dynamischer Filter ist nicht durch eine einzige Gruppe von Indices oder Datensatzkennungen konfiguriert, sondern durch mehrere Gruppen von Indices oder Datensatzkennungen. Dies ermöglicht, dass nach einem einmaligen Aufruf des Filters die bei diesem Aufruf zur Anwendung kommenden Indices oder Datensatzkennungen beim nächsten Aufruf desselben Filters durch andere Indices oder Datensatzkennungen einer zweiten Gruppe ersetzt werden. Auf diese Weise kann trotz einer vorgegebenen Sequenz von Filtern bewirkt werden, dass ein Nutzer nicht immer mehr oder weniger identische Datensätze bzw. Hinweise auf Datensätze angezeigt bekommt, sondern vielmehr die Chance hat, weitere Informationen aus der Vielzahl der Informationen wahrzunehmen. Some of the filters can be dynamic filters. A dynamic filter is not configured by a single group of indexes or record identifiers, but by multiple groups of indexes or record identifiers. This allows the indices or record identifiers used in this call to be replaced by other indexes or record identifiers of a second group the next time the same filter is called after a single call to the filter. In this way, in spite of a predetermined sequence of filters, it can be effected that a user does not always receive more or less identical data records or references to data records, but rather has the opportunity to perceive further information from the multiplicity of information.
Darüber hinaus können bei einem dynamischen Filter auch die Indices oder Datensatzkennungen einer Gruppe durch andere Indices oder Datensatzkennungen ersetzt wer- den, so dass eine andere, neue Gruppe von Indices oder Datensatzkennungen entsteht. Insbesondere kann der Filter so ausgebildet sein, dass Indices oder Datensatzkennungen einer Gruppe dann durch andere Indices oder Datensatzkennungen ersetzt werden, wenn der Datensatz, der mittels des jeweiligen Filters und der entsprechenden Gruppe
von Indices oder Datensatzkennungen ausgewählt wurde, vom Nutzer tatsächlich aufgerufen wurde, indem der Nutzer den entsprechenden Hinweis auf der berührungsempfindlichen graphischen Anzeige 20 des mobilen Endgeräts 12 angeklickt hat. Ein Ersetzen der Indices oder Datensatzkennungen einer Gruppe von Indices oder Datensatzkennun- gen des entsprechenden Filters kann so erfolgen, dass auf Basis der Datensatzkennung des aufgerufenen Datensatzes eine Mehrzahl weiterer Datensätze bestimmt wird, die den gleichen oder ähnlichen Indices zugeordnet sind wie der aufgerufene Datensatz. Die den so gefundenen Datensätzen zugeordneten Datensatzkennungen ersetzen in der zuletzt aufgerufenen, zu modifizierenden Gruppe von Datensatzkennungen die bisherigen Da- tensatzkennungen und rekonfigurieren so den entsprechenden Filter. Alternativ können die wie beschriebenen Datensatzkennungen auch als neue Gruppe von Datensatzkennungen dem Filter hinzugefügt werden. Die zuletzt aufgerufene Gruppe von Datensatzkennungen kann dann z.B. latent beibehalten werden und zu einem späteren Zeitpunkt reaktiviert oder ganz aus dem Filter entfernt werden. Gruppen von Datensatzkennungen oder Indices können von einem dynamischen Filter auch entfernt werden, falls der Hinweis auf den mittels der jeweiligen Gruppe von Indices oder Datensatzkennungen ausgewählten Datensatz einem Nutzer einmal oder mehrfach angezeigt wurde, ohne dass der Nutzer den entsprechenden Datensatz aufgerufen hat. Auf diese Weise können sich dynamische Filter an die Bedürfnisse eines Nutzers anpas- sen, ohne dass dazu aufwendige Nutzerprofile erstellt werden müssen. Da außerdem die Konfiguration der Filter alleine anhand von Indices erfolgt, die beispielsweise natürlichsprachliche Worte in Datensätzen repräsentieren können, können die Filter auch gänzlich sprachagnostisch und ohne Berücksichtigung semantischer Zusammenhänge operieren. Daher kann das Anwendungs-Backend 16 vergleichsweise einfach und Ressource spa- rend implementiert werden. In addition, a dynamic filter can also replace a group's indexes or record IDs with other indexes or record IDs, creating a different, new set of indexes or record IDs. In particular, the filter may be designed such that indices or record identifiers of a group are then replaced by other indices or record identifiers, if the data record, by means of the respective filter and the corresponding group has been selected by indices or record identifiers, has actually been called by the user by the user having clicked on the corresponding note on the touch-sensitive graphical display 20 of the mobile terminal 12. A replacement of the indices or data record identifications of a group of indices or data record identifications of the corresponding filter can be carried out in such a way that a plurality of further data records which are assigned to the same or similar indexes as the called data record are determined on the basis of the record identifier of the called data record. The record identifiers associated with the records thus found replace the previous record record identifiers in the last accessed group of record identifiers to be modified and thus reconfigure the corresponding filter. Alternatively, the record identifiers as described may also be added to the filter as a new set of record identifiers. The most recently accessed group of record identifiers can then be kept latent, for example, and later reactivated or completely removed from the filter. Groups of record identifiers or indices may also be removed by a dynamic filter if the indication of the record selected by the respective group of indices or record identifiers has been displayed once or more to a user without the user having invoked the corresponding record. In this way, dynamic filters can be adapted to the needs of a user without having to create complex user profiles. In addition, since the filters are configured solely on the basis of indices that can represent, for example, natural-language words in data records, the filters can also operate entirely in terms of speech diagnostics and without consideration of semantic contexts. Therefore, the application back end 16 can be implemented comparatively easily and sparingly.
Figur 4 ist eine graphische Illustration der Funktionsweise eines dynamischen Filters. In der dargestellten Sequenz 50, die in dem dargestellten Beispiel von sechzehn Filtern 52 gebildet ist, sind beispielsweise der vierte Filter und der zwölfte Filter dynamische Filter 54, die in Figur 4 nach Art eines Rades mit Speichen dargestellt sind. Die Punkte an den Enden der Speichen des Rades repräsentieren dabei Gruppen 56 von Indices oder Datensatzkennungen. Im konkreten Ausführungsbeispiel sind diese Gruppen jeweils Gruppen von Datensatzkennungen, so dass die Indices, die zur Auswahl eines Datensatzes herangezogen werden, wenn die jeweilige Gruppe aufgerufen wird, diejenigen Indices sind, denen die der Gruppe zugeordneten Datensatzkennungen in der
invertierten Index-Datenstruktur zugeordnet sind. Mit jedem Aufruf des dynamischen Filters 54„dreht" sich der Filter um eine Position weiter, so dass dann, wenn der Filter 54 wieder aufgerufen wird, die nächste Gruppe 56 von Indices oder Datensatzkennungen für die Auswahl eines Datensatzes herangezogen wird. Wie zuvor beschrieben, können dem Filter 54 weitere Gruppen von Datensatzkennungen hinzugefügt werden oder aber auch Gruppen von Datensatzkennungen entfernt werden, wenn beispielsweise ein mittels einer jeweiligen Gruppe von Datensatzkennungen ausgewählter Datensatz nicht abgerufen wird. Wie ebenfalls weiter vorne beschrieben, können die Datensatzkennungen einer Gruppe von Datensatzkennungen auch durch andere Datensatzkennungen ersetzt werden. Figure 4 is a graphic illustration of the operation of a dynamic filter. For example, in the illustrated sequence 50, which in the illustrated example is formed by sixteen filters 52, the fourth filter and the twelfth filter are dynamic filters 54, which are illustrated in FIG. 4 in the manner of a wheel with spokes. The points at the ends of the spokes of the wheel represent groups 56 of indices or record identifiers. In the concrete exemplary embodiment, these groups are respectively groups of data set identifiers, so that the indices used to select a data set when the respective group is called are the indices to which the data set identifiers associated with the group belong inverted index data structure are assigned. With each call to the dynamic filter 54, the filter "rotates" one position further, so that when the filter 54 is recalled, the next group 56 of indexes or record identifiers is used to select a record. For example, additional sets of record identifiers may be added to the filter 54 or groups of record identifiers may be removed if, for example, a record selected by a respective set of record identifiers is not retrieved Record identifiers are replaced.
Die beschriebene Sequenz von Filtern mit den beschriebenen dynamischen Filtern kann neben den dynamischen Filtern 54 auch statische Filter enthalten, die durch eine feste Gruppe von Indices oder Datensatzkennungen definiert sind oder die unmittelbar mittels einer Datensatzkennung konfiguriert sind, so dass beim Aufruf eines entsprechenden statischen Filters auf denjenigen Datensatz generiert wird, dem die entsprechende Datensatzkennung zugeordnet ist. The described sequence of filters with the dynamic filters described may include, in addition to the dynamic filters 54, also static filters defined by a fixed group of indices or record identifiers, or directly configured by means of a record identifier, such that upon invocation of a corresponding static filter the record is generated to which the corresponding record identifier is assigned.
Die Sequenz 50 von Filtern mit den beschriebenen statischen und dynamischen Filtern ist Teil des Anwendungs-Backends 16 im Backend-Server 10. The sequence 50 of filters with the described static and dynamic filters is part of the application backend 16 in the backend server 10.
Aufruf und Steuerung des Anwendungs-Backends 16 erfolgen im Datenaustausch mit einem jeweiligen mobilen Endgerät 12. Typischerweise hält das Anwendungs-Backend 16 für jeden Nutzer des Datenverarbeitungssystems eine eigene Sequenz 50 von Filtern vor, die durch die Nutzer abhängige Rekonfiguration der dynamischen Filter im Ergebnis nutzerspezifisch ist. Calling and controlling the application backend 16 takes place in data exchange with a respective mobile terminal 12. Typically, the application backend 16 holds a separate sequence 50 of filters for each user of the data processing system, as a result of which user-dependent reconfiguration of the dynamic filters is user-specific is.
Figur 5 illustriert den Ablauf der Datenkommunikation zwischen mobilem Endgerät 12 und Backend-Server 10 sowie einem willkürlichen Content-Server 32. Figur 5 illustriert auch die Reaktion des Backend-Servers 10 auf Nachrichten vom mobilen Endgerät 12. FIG. 5 illustrates the flow of data communication between mobile terminal 12 and back-end server 10 and an arbitrary content server 32. FIG. 5 also illustrates the response of back-end server 10 to messages from mobile terminal 12.
Wie zuvor erwähnt und in Figur 2 graphisch angedeutet, ist auf dem mobilen Endgerät 12 eine Anwendung installiert, die ein Anwendungs-Frontend 18 bereitstellt. Das Anwen- dungs-Frontend ist ausgebildet, Daten zu generieren, die auf der berührungsempfindlichen graphischen Anzeige 20 des mobilen Endgeräts 12 die Anzeige von Hinweisen auf in Datensätzen enthaltene Informationen sowie die Anzeige von Schaltflächen bewirken. Das Anwendungs-Frontend 18 ist außerdem dazu ausgebildet, Ereignisse wie beispiels-
weise das Berühren der berührungsempfindlichen graphischen Anzeige 20 an bestimmten Orten zu erfassen und zu verarbeiten. As previously mentioned and indicated graphically in FIG. 2, an application that provides an application front end 18 is installed on the mobile terminal 12. The application front-end is configured to generate data which, on the touch-sensitive graphical display 20 of the mobile terminal 12, causes the display of indications of information contained in data records and the display of buttons. The application front end 18 is also designed to handle events such as For example, detecting and processing the touch of the touch-sensitive graphic display 20 at specific locations.
Es sei darauf hingewiesen, dass eine das Anwendungs-Frontend 18 bildende Anwendung auf dem mobilen Endgerät 12 installiert sein kann, aber alternativ auch auf einem anderen Gerät, so dass auf dem mobilen Endgerät anstelle einer lokal installierten Anwendung eine Webanwendung aufgerufen werden kann. It should be appreciated that an application forming the application front end 18 may be installed on the mobile terminal 12, but alternatively on another device, so that a web application may be invoked on the mobile terminal instead of a locally installed application.
Eine Nutzung des erfindungsgemäßen Datenverarbeitungssystems beginnt damit, dass ein Nutzer die entsprechende Anwendung auf dem mobilen Endgerät 12 aufruft und damit das Anwendungs-Frontend 18 startet. Dieses veranlasst daraufhin, dass das mobile Endgerät 12 zuerst eine Anforderungsnachricht an den Backend-Server 10 richtet. Die Anforderungsnachricht enthält in der bevorzugten Ausführungsvariante eine Nutzerkennung und erlaubt es somit, dass das Anwendungs-Backend eine Sequenz von Filtern aufruft, die für den jeweiligen Nutzer spezifisch sein können. Use of the data processing system according to the invention begins with a user calling the corresponding application on the mobile terminal 12 and thus starting the application front-end 18. This then causes the mobile terminal 12 to first direct a request message to the backend server 10. The request message in the preferred embodiment includes a user identifier and thus allows the application backend to invoke a sequence of filters that may be specific to the particular user.
Auf Basis der aufgerufenen Sequenz 50 von Filtern ermittelt das Anwendungs-Backend 16 dann eine Folge von Datensätzen, indem mittels eines jeweiligen Filters ein Datensatz auf die oben beschriebene Art und Weise ausgewählt wird. Zu der Folge von Datensätzen generiert das Anwendungs-Backend 16 eine Folge von Hinweisen und überträgt die Hinweise repräsentierende Daten zu dem Anwendungs-Frontend 18. Die Hinweise repräsentierende Daten umfassen dabei sowohl Hinweise auf durch einen jeweiligen Datensatz repräsentierte Informationen sowie einen Verweis, beispielsweise eine URL, die zu dem jeweiligen Datensatz führt. On the basis of the called sequence 50 of filters, the application back end 16 then determines a sequence of data records by selecting a data set in the manner described above by means of a respective filter. To the sequence of records, the application back end 16 generates a sequence of hints and transmits the data representing the clues to the application front end 18. The clues representing clues include both clues to information represented by a respective record and a reference, such as a URL that leads to the respective record.
Das Anwendungs-Frontend 18 verarbeitet die vom Anwendungs-Backend 16 empfangenen Daten und generiert Signale, die eine Anzeige der Hinweise auf der berührungsempfindlichen graphischen Anzeige 20 des mobilen Endgeräts 12 bewirken. Dabei werden die Hinweise auf die mittels der Sequenz 50 von Filtern bestimmten Datensätze in der Reihenfolge angezeigt, wie sie durch die Sequenz 50 der Filter vorgegeben ist. Konkret ist das Anwendungs-Frontend 18 so konfiguriert, dass immer genau ein Hinweis auf der berührungsempfindlichen graphischen Anzeige 20 des mobilen Endgeräts 12 angezeigt wird. Durch eine entsprechende Geste kann ein Nutzer das Ausblenden eines Hinweises und das Anzeigen des nächsten Hinweises bewirken. Das Anwendungs-Frontend 18 ist entsprechend ausgebildet, durch entsprechende Gesten ausgelöste Ereignisse zu verarbeiten.
Sobald ein jeweiliger Hinweis auf der berührungsempfindlichen graphischen Anzeige 20 des mobilen Endgeräts 12 angezeigt wird, generiert das Anwendungs-Frontend 18 eine das Anzeigen des Hinweises anzeigende Nachricht und übermittelt diese an das Anwen- dungs-Backend 16. Wie bereits erwähnt, kann ein Nutzer durch eine entsprechende Geste bewirken, dass ein jeweiliger Hinweis ausgeblendet und durch einen nachfolgenden Hinweis ersetzt wird. Alternativ kann der Nutzer aber auch den zu einem jeweiligen Hinweis gehörenden Datensatz aufrufen, beispielsweise durch eine andere Geste. Eine Geste zum Ausblenden eines Hinweises und Aufrufen eines nächsten Hinweises kann beispielsweise eine Wischgeste sein. Eine Geste zum Aufrufen des zu einem Hinweis gehörenden Datensatzes kann ein Anklicken sein. Entsprechend ist das Anwendungs-Frontend 18 ausgebildet, durch derartige Gesten ausgelöste, unterschiedliche Ereignisse differenziert zu verarbeiten. The application front-end 18 processes the data received from the application back-end 16 and generates signals that cause the indications on the touch-sensitive graphical display 20 of the mobile terminal 12 to be displayed. In this case, the references to the data sets determined by means of the sequence 50 of filters are displayed in the order in which they are predetermined by the sequence 50 of the filters. Specifically, the application front end 18 is configured to always display exactly one indication on the touch-sensitive graphical display 20 of the mobile terminal 12. A corresponding gesture can cause a user to hide a hint and display the next hint. The application frontend 18 is configured to process events triggered by corresponding gestures. As soon as a respective indication is displayed on the touch-sensitive graphical display 20 of the mobile terminal 12, the application front-end 18 generates a message indicating the display of the message and transmits it to the application back-end 16. As already mentioned, a user can make a corresponding gesture that a respective hint is hidden and replaced by a subsequent reference. Alternatively, however, the user can also call up the record associated with a respective reference, for example by a different gesture. A gesture for hiding a hint and calling a next hint may be, for example, a swipe gesture. A gesture to invoke the record associated with a note may be a click. Accordingly, the application front-end 18 is designed to process different events triggered by such gestures in a differentiated manner.
Falls ein Nutzer durch Anklicken des Hinweises den dazugehörigen Datensatz aufruft - genauer: die durch den zugehörigen Datensatz repräsentierten Informationen aufruft - generiert das Anwendungs-Frontend 18 eine einen entsprechenden Aufruf anzeigende Nachricht und übermittelt diese an das Anwendungs-Backend 16. Wie weiter vorne beschrieben, veranlasst der Empfang einer einen Aufruf anzeigenden Nachricht das Anwendungs-Backend 16 dazu, einen zu einem jeweiligen Hinweis gehörenden Filter 52 der Sequenz 50 von Filtern zu rekonfigurieren, sofern es sich bei diesem Filter 52 um einen dynamischen Filter handelt, der konfiguriert werden kann. Das Rekonfigurieren des entsprechenden dynamischen Filters bewirkt, dass beim nächsten Aufruf dieses Filters eine andere Gruppe oder eine modifizierte Gruppe von Indices oder Datensatzkennun- gen zur Auswahl eines jeweiligen Datensatzes zur Anwendung kommt. Das Anklicken eines Hinweises durch einen Benutzer veranlasst das Anwendungs- Frontend 18 außerdem dazu, einem mit dem jeweiligen Hinweis verknüpften Verweis zu folgen und einen entsprechenden Link oder eine URL aufzurufen und dort den dem Hinweis zugeordneten Datensatz abzurufen. Typischerweise verweist der Hinweis auf einen Datensatz auf einem Content-Server, d.h. der Link oder die URL führt zu demjeni- gen Content-Server, der den entsprechenden Datensatz bereit hält. If a user invokes the associated dataset by clicking on the hint - more precisely: calls the information represented by the associated dataset - the application front-end 18 generates a message indicating a corresponding call and transmits it to the application back-end 16. As described above, causes the receipt of a message indicating a call to cause the application back end 16 to reconfigure a filter 52 of the sequence 50 of filters belonging to a respective hint, if this filter 52 is a dynamic filter that can be configured. Reconfiguring the corresponding dynamic filter means that the next time this filter is called, another group or a modified group of indices or data record identifiers is used to select a particular data record. Clicking on a hint by a user also causes the application front end 18 to follow a link associated with the particular hint and invoke a corresponding link or URL to retrieve the record associated therewith. Typically, the reference to a record refers to a content server, i. the link or URL leads to the content server that holds the corresponding record.
Die von dem Backend-Server zum mobilen Endgerät nach Empfang einer Anforderungsnachricht gesandten Daten können einen jeweiligen Datensatz auf verschiedene Art und Weise repräsentieren. In einer Ausführungsform enthält ein jeweiliger, auf der berüh-
rungsempfindlichen graphischen Anzeige 20 des mobilen Endgeräts 12 anzuzeigender Hinweis neben Text auch beispielsweise eine Abbildung. In diesem Falle brauchen die die Hinweise repräsentierenden Daten, die von dem Backend-Server an das mobile Endgerät gesandt werden, nicht die Abbildung selbst enthalten. Vielmehr können die Hinweise repräsentierenden Daten einen Verweis, beispielsweise eine URL enthalten, der oder die zur entsprechenden Abbildung führt. Das Anwendungs-Frontend 18 kann daraufhin die entsprechende Abbildung vorzugsweise in vorkonfigurierter Form von einem entsprechenden Abbildungsserver 36 herunterladen; siehe Figur 2. The data sent from the backend server to the mobile terminal upon receipt of a request message may represent a respective record in various ways. In one embodiment, a respective one contains, on the information to be displayed on the mobile terminal 12 in addition to text, for example an image. In this case, the data representative of the hints sent from the backend server to the mobile terminal need not include the image itself. Rather, the data representing hints may include a reference, such as a URL, that leads to the corresponding image. The application front end 18 may then download the corresponding map, preferably in a preconfigured form, from a corresponding mapping server 36; see FIG. 2.
Im Folgenden werden noch einmal einige der Ressourcen oder Nachrichten des Daten- Verarbeitungssystems einzeln vorgestellt: In the following, some of the resources or messages of the data processing system are presented once more:
Der Backend Server 10 hat Zugriff auf Datensätze, die Informationen repräsentieren, z.B. Texte, Nachrichten-Webseiten etc. The backend server 10 has access to records representing information, e.g. Texts, news websites etc.
Der Backend Server 10 nutzt Datensatzkennungen, die jeweils eine individuelle, eindeutige Kennung eines Informationen repräsentierenden Datensatzes sind. Der Backend Server 10 erstellt und verwaltet eine invertierte Index-Datenstruktur. Diese enthält Indices, denen jeweils ein oder mehrere Datensatzkennungen zugeordnet sind, je nachdem, ob ein jeweiliger Datensatz (der durch seine Datensatzkennung repräsentiert ist) Informationen enthält, für die ein jeweiliger Index steht. The backend server 10 uses record identifiers, each of which is an individual, unique identifier of a record representing information. The backend server 10 creates and maintains an inverted index data structure. This contains indices, each of which has one or more record identifiers associated with it, depending on whether a respective record (represented by its record identifier) contains information for which a respective index stands.
Der Backend Server 10 umfasst ein Anwendungs-Backend 16, das Filter zur Auswahl anzuzeigender Information nutzt. Ein jeweiliger Filter ist unmittelbar oder mittelbar durch einen oder mehrere Indices konfiguriert und veranlasst den Backend Server 10, auf Basis der den jeweiligen Filter konfigurierenden Indices einen Datensatz auszuwählen, zu dem der Server Hinweise repräsentierende Daten zu dem mobile Endgerät 12 übertragt. Ein jeweiliger Filter kann mittels Datensatzkennungen konfiguriert sein, wobei die den Filter konfigurierenden Indices dann diejenigen Indices sind, denen die durch die Datensatzkennungen identifizierten Datensätze zugeordnet sind. The backend server 10 includes an application back end 16 which uses filters to select information to be displayed. A respective filter is configured directly or indirectly by one or more indices and causes the backend server 10, based on the indices that configure the respective filter, to select a data record to which the server transmits information representing data to the mobile terminal 12. A respective filter may be configured by means of record identifiers, with the indices configuring the filter then being the indices to which the data records identified by the record identifiers are assigned.
Filter können dynamische Filter sein. Ein dynamischer Filter wird nach Empfang einer Aufruf anzeigenden Nachricht durch den Server rekonfiguriert, indem auf Basis der Indices, denen ein aufgerufener Datensatz zugeordnet ist, weitere Datensätze ermittelt werden, deren Datensatzkennungen dann zur (Neu-)Konfiguration des Filters diesem zugeordnet gespeichert werden. Ein dynamischer Filter kann mittels mehrerer Gruppen
von Datensatzkennungen konfiguriert sein, wobei bei jedem (erneuten) Aufrufen des jeweiligen Filters eine andere Gruppe der Gruppen von Datensatzkennungen als Basis für die Auswahl eines Datensatzes durch den Server dient. Im Falle eines dynamischen Filters, der durch mehr als eine Gruppe von Datensatzkennungen konfiguriert ist, wird eine jeweilige Gruppe von Datensatzkennungen, die zur Auswahl eines aufgerufenen Datensatzes geführt hat, auf die beschriebene Weise rekonfiguriert. Filters can be dynamic filters. A dynamic filter is reconfigured upon receipt of a call-indicating message by the server, by further identifying records based on the indexes associated with a called record whose record identifiers are then stored to (re-) configure the filter associated with it. A dynamic filter can be defined by several groups of record identifiers, with each (re-) calling of the respective filter serving another set of groups of record identifiers as the basis for the selection of a record by the server. In the case of a dynamic filter configured by more than one set of record identifiers, a respective set of record identifiers that resulted in the selection of a retrieved record is reconfigured in the manner described.
Dies erlaubt eine dynamische Anpassung des Datenverarbeitungssystems zur Anzeige nutzerrelevanter Datensätze vollkommen sprachagnostisch und mit rein technischen Mitteln. Eine explizite Angabe von Nutzerpräferenzen oder eine Nutzung von Nutzerprofi- len 40 herkömmlicher Art kann zusätzlich vorgesehen sein. This allows a dynamic adaptation of the data processing system for displaying user-relevant data records completely speech -agnostic and with purely technical means. An explicit specification of user preferences or use of user profiles 40 of a conventional type can additionally be provided.
Die Filter bilden eine Sequenz 50 von Filtern, die der Reihe nach von dem Server aufgerufen werden, um so eine Reihe von Datensätzen zu bestimmen, zu denen der Server dann Hinweise repräsentierende Daten zum mobilen Endgerät überträgt, wo die durch die Daten repräsentierten Hinweise auf die Inhalte der Datensätze in der entsprechenden Reihenfolge angezeigt werden. The filters form a sequence 50 of filters which are called in turn by the server so as to determine a series of records to which the server then transmits clues representative data to the mobile terminal where the indications represented by the data are Contents of the records are displayed in the appropriate order.
Zwischen Backend-Server 10 und mobilem Endgerät 12 ausgetauschte Daten und Nachrichten umfassen: eine Nutzerkennung, die individuelle Kennung eines Nutzers ist und einem Nutzer fest zugeordnet ist. Ein Nutzer kann sich beim Aufrufen einer Anwendung über Nutzername und Kennwort identifizieren. eine Anforderungsnachricht, die eine Nachricht vom mobilen Endgerät 12 an den Backend Server 10 ist und die eine Nutzerkennung enthält und den Server veranlasst, (Hinweise repräsentierende) Daten zum mobilen Endgerät zu übertragen, die jeweils Hinweise auf Informationen repräsentieren, die in einer Sequenz von Da- tensätzen enthalten sind, die der Server für einen jeweiligen Nutzer auf Basis einerData and messages exchanged between backend server 10 and mobile terminal 12 include: a user identifier that is a user's unique identifier and is dedicated to a user. A user can identify themselves by calling username and password when calling an application. a request message, which is a message from the mobile terminal 12 to the backend server 10 and which contains a user identifier and causes the server to transmit (indicia representative) data to the mobile terminal, each representing references to information in a sequence of Da - The rates are included, the server for a user based on a
Sequenz von Filtern ausgewählt hat. Sequence of filters.
Hinweise repräsentierende Daten, die jeweils einem vom Server ausgewählten Datensatz zugeordnet sind und von dem Server zum mobilen Endgerät übertragen werden und die auf der graphischen Anzeige des Mobilgerätes anzuzeigende Hin- weise auf in dem jeweils ausgewählten Datensatz enthaltene Informationen sowie eine URL enthalten, die einen Aufruf des jeweiligen Datensatzes enthält.
eine Aufruf anzeigende Nachricht, die eine Nachricht ist, die vom mobilen Endgerät zum Server übertragen wird, wenn ein Nutzer einen durch einen Hinweis repräsentierten Datensatz aufruft, indem er z.B. den Hinweis auf der berührungsempfindlichen graphischen Anzeige des mobilen Endgerätes anklickt. Figuren 6 und 7 illustrieren die Funktionsweise des Anwendungs-Frontends 18 bei der Anzeige von Hinweisen auf eine erste oder zweite Art von Informationen. Das Anwen- dungs-Frontend 18 ist so ausgebildet, dass Hinweise auf Datensätze und die durch diese repräsentierten Informationen auf zwei unterschiedliche Weisen sequentiell dargestellt werden und zwar in Abhängigkeit davon, welcher Art die Datensätze oder die durch diese repräsentierten Informationen sind, oder davon, von welcher Datenquelle die Datensätze oder die durch diese repräsentierten Informationen stammen. Hints representing data, each associated with a selected by the server record and transmitted from the server to the mobile terminal and containing the display on the graphical display of the mobile device information contained in the respective selected record information and a URL containing a call of the respective data record. a call-indicating message, which is a message transmitted from the mobile terminal to the server, when a user calls up a record represented by an indication by, for example, clicking on the indication on the touch-sensitive graphical display of the mobile terminal. Figures 6 and 7 illustrate the operation of the application frontend 18 in displaying indicia of a first or second type of information. The application front-end 18 is designed such that references to data records and the information represented by them are displayed sequentially in two different ways, depending on which type the data records or the information represented by them or of, are which data source the data sets or the information represented by them come from.
Eine derartige unterschiedliche aber gleichwohl sequentielle Darstellung von Hinweisen auf Datensätze unterschiedlicher Art erlaubt eine implizite und vom Nutzer ohne weitere, zusätzliche Hinweise leicht zu erfassende Differenzierung der artverschiedenen Daten- sätze. Dies erleichtert die Informationswahrnehmung durch den jeweiligen Nutzer. Such a different but nevertheless sequential presentation of references to data sets of different types allows an implicit differentiation of the data records that is implicit and easily recognizable by the user without any further additional information. This facilitates the information perception by the respective user.
Die verschiedenartige Darstellung der Hinweise je nach dem, welcher Art oder Herkunft die Datensätze sind, auf die sich die Hinweise beziehen, stellt einen Aspekt der Erfindung dar, der unabhängig von den übrigen Aspekten der Erfindung realisierbar ist, insbesondere unabhängig von der Auswahl der Datensätze durch das Anwendungs-Backend 16 mittels der Filter 52 bzw. 54. The various representations of the clues depending on the nature or origin of the records to which the clues refer represent an aspect of the invention which is independent of the other aspects of the invention, in particular independent of the selection of the records by the application backend 16 by means of the filters 52 and 54, respectively.
Das Anwendungs-Frontend 18 ist ausgebildet, die Hinweise als Karten darzustellen, die durch Wischgesten nacheinander aufgerufen werden können. The application front-end 18 is designed to display the notes as cards that can be called successively by swiping gestures.
Dabei werden Hinweise auf Datensätze der ersten Art als Band von Kante auf Kante aufeinander folgenden Karten dargestellt. Eine einem Hochschieben der einen Hinweis darstellenden Karte 60a entsprechende Wischgeste bewirkt, dass das Band Kante an Kante aufeinander folgender Karten um eine Karte weitergeschoben wird und so die Anzeige der nächsten Karte 60b erfolgt. Das Band von Karten repräsentiert somit eine Folge oder Sequenz von Hinweisen, die quasi nebeneinander dargestellt werden. In this case, references to records of the first type are displayed as a band from edge to edge successive cards. A swipe gesture corresponding to a shift-up of the map 60a indicative of the effect causes the band to advance one card at a time, one after the other, thereby indicating the next card 60b. The band of cards thus represents a sequence or sequence of clues that are displayed side by side.
Ein Betätigen der Schaltfläche 62 - d.h. ein Berühren der berührungsempfindlichen graphischen Anzeige innerhalb einer dafür vorgesehenen Fläche - bewirkt eine Anzeige eines Stapels von übereinander angeordneten Karten 64, die Hinweise auf Datensätze
der zweiten Art darstellen. Eine einem Wegschieben der obersten Karte entsprechende Wischgeste ist vorgesehen, um die darunter liegende Karte zur Anzeige zu bringen. Wenn die jeweils unterste Karte 64 des Stapels weggeschoben ist, erscheint wieder das Band der Karten 60 mit Hinweisen auf Datensätze der ersten Art, und zwar mit einer jeweiligen Karte 60, die angezeigt wurde, als die Schaltfläche 62 zum Aufrufen der Hinweise auf Datensätze der zweiten Art betätigt wurde. Actuation of the button 62 - ie, touching the touch-sensitive graphic display within a designated area - causes a display of a stack of stacked cards 64, indicative of records represent the second kind. A swipe gesture corresponding to a removal of the topmost card is provided to display the underlying card. When the bottom-most card 64 of the stack is pushed away, the tape of the first-type records 60 again appears, with a respective card 60 being displayed as the record-hinting button 62 of the second Type was pressed.
In dem Ausführungsbeispiel werden Hinweise auf Datensätze, die von den Datenquellen 32 stammen, als Band von Karten 60 dargestellt, während Hinweise auf Datensätze, die von einer anderen Datenquelle 38 (siehe Figur 2) stammen, als Stapel von Karten 64 dargestellt werden. In the exemplary embodiment, references to records derived from the data sources 32 are displayed as a band of cards 60, while references to records derived from another data source 38 (see FIG. 2) are represented as a stack of cards 64.
Der Aufruf von Hinweisen auf die zweite Art von Datensätzen erfolgt im Ausführungsbeispiel mittels der Schaltfläche 62. Ein derartiger Aufruf kann aber auch andersartig implementiert sein z.B. mittels Wischgeste. Das Anwendungs-Frontend 18 ist ausgebildet, entsprechende Eingaben repräsentierende Ereignisse zu erfassen und zu verarbeiten. The call of references to the second type of data records is carried out in the exemplary embodiment by means of the button 62. However, such a call can also be implemented differently, e.g. by swiping gesture. The application front end 18 is configured to detect and process events representing corresponding inputs.
Auch kann ein Wechsel zwischen Karten des Bandes oder des Stapels anders als durch Wischgesten, z.B. mittels entsprechender Schaltflächen implementiert sein. Wischgesten sind jedoch bevorzugt, weil dadurch keine Displayfläche für ansonsten vorzusehende Schaltflächen verloren geht.
Also, a change between cards of the tape or the stack can be implemented differently than by swipe gestures, eg by means of corresponding buttons. Swipe gestures, however, are preferred because no display surface is lost for otherwise provided buttons.
Bezugszeichenliste LIST OF REFERENCE NUMBERS
10 Backend-Server 10 backend servers
12 mobile(s) Endgerät(e) 12 mobile device (s)
14 content management-System 14 content management system
16 Anwendungs-Backend 16 application backend
18 Anwendungs-Frontend 18 application frontend
20 graphische Anzeige 20 graphic display
22 Treiber- und Ausleseeinheit 22 driver and readout unit
24 Prozessor 24 processor
26 Speicher 26 memory
28 Datenmodem 28 data modem
30 Datenauf bereitungssystem 30 data processing system
32 Content-Server/Datenquellen 32 content servers / data sources
34 Crawler 34 crawlers
36 Abbildungsserver 36 image server
38 Datenquelle 38 data source
40 Nutzerprofile 40 user profiles
50 Sequenz 50 sequence
52 Filter 52 filters
54 dynamischer Filter 54 dynamic filter
56 Gruppe von Indices oder Datensatzkennungen 60a, 60b Karte mit Hinweise auf Informationen einer ersten Art 56 group of indices or record identifiers 60a, 60b card with references to information of a first kind
62 Schaltfläche 62 button
64a, 64b Karte mit Hinweise auf Informationen einer zweiten Art
64a, 64b Map with references to information of a second kind