DE69434096T2 - Verfahren und System, um mit einer graphischen Benutzerschnittstelle in einer Datenbank zu suchen - Google Patents
Verfahren und System, um mit einer graphischen Benutzerschnittstelle in einer Datenbank zu suchen Download PDFInfo
- Publication number
- DE69434096T2 DE69434096T2 DE69434096T DE69434096T DE69434096T2 DE 69434096 T2 DE69434096 T2 DE 69434096T2 DE 69434096 T DE69434096 T DE 69434096T DE 69434096 T DE69434096 T DE 69434096T DE 69434096 T2 DE69434096 T2 DE 69434096T2
- Authority
- DE
- Germany
- Prior art keywords
- query
- window
- results
- query statement
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2428—Query predicate definition using graphical user interfaces, including menus and forms
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
Description
- Diese Erfindung betrifft allgemein in Rechnern gespeicherte Datenbanken. Insbesondere betrifft sie ein System und ein Verfahren, die dazu dienen, eine Datenbank mit Hilfe einer grafischen Benutzeroberfläche zu durchsuchen.
- In Rechnern gespeicherte Datenbanken haben immer mehr Interesse auf sich gezogen, nicht nur aufgrund der schnellen Zunahme der in diesen Datenbanken gespeicherten und aus diesen Datenbanken abgerufenen Datenmengen, sondern auch als Folge der Datenbeziehungen, die während des Prozesses der Speicherung oder des Abrufens hergestellt werden können. Mit der zunehmenden Verbreitung von relationalen Datenbanken haben die Schulung und Erfahrung eines typischen Endbenutzers abgenommen, während die verfügbaren Ressourcen zugenommen haben. Benutzer von Datenbanken wünschen sich insbesondere Verbesserungen an den grafischen Benutzeroberflächen zur Steuerung der Datenbankanwendungen, damit sie für den unerfahrenen Benutzer leichter verständlich werden.
- Bei Verwendung einer Datenbank besteht eine der schwierigeren Aufgaben bei der Problemlösung häufig darin, die Quellen ausfindig zu machen, die ein bestimmtes Problem verursachen. Suchanweisungen oder Suchabfragen werden gewöhnlich verwendet, um strukturiert nach Informationen zu suchen, die in einer Datenbank gespeichert sind, um bei der Problemlösung zu helfen. Wenn Benutzer wenig klare Vorstellungen davon haben, wie die richtige Suchabfrage zur Lösung eines Problems aufgebaut werden soll, wird gewöhnlich so vorgegangen, dass mit der Prüfung eines Erstabfrageberichts begonnen wird, der das Ergebnis einer Erstabfrage für mehr Informationen ist. Auf der Grundlage dieser Informationen entscheidet der Benutzer dann, wie er die Suche eingrenzt oder die Datenbank mit einem höheren Detaillierungsgrad ("drill down") weiter durchsucht. Wenn diese eingegrenzten Suchläufe nicht das gewünschte Ergebnis hervorbringen, muss der Benutzer zu einer vorherigen Suchanweisung zurückgehen und es erneut versuchen.
- Die derzeitigen Suchmethoden sind umständlich und verhindern eine wirkungsvolle Formulierung der Abfrage. Die meisten vorhandenen Systeme stellen keinen Abfrageverlauf bereit. Diese Systeme machen es schwierig, wiederkehrende Probleme zu lösen, da sie den Benutzer zwingen, (1) sich an alle vorherigen Ergebnisse zu erinnern oder (2) sich das Ergebnis manuell zu notieren. Dies ist mühsam.
- In Proceedings of the 12th annual International ACMSIGIR Conference on research and development in Information retrieval, 28. Juni 1989, Cambridge, MA, USA, Seiten 29 bis 32, beschreiben R. Gpdin u. a. in "Design of a browsing interface for Information retrieval" die Auslegung einer Benutzerschnittstelle, die eine allmähliche Ausweitung oder Verfeinerung der Abfrage des Benutzers zulässt, indem ein Graph aus Begriffs- und Dokumentteilgruppen durchsucht wird. Es gibt jedoch hinderliche Details bei der Schnittstelle, und Möglichkeiten, die Komplexität des Aufbaus weiter einzuschränken, wären vorteilhaft.
- Diejenigen Systeme, die einen Verlauf bereithalten, stellen gewöhnlich eine Art von linearem Protokoll bereit. Viele handelsübliche Datenbanken haben einen Verlaufsbefehl, der dem Benutzer den Zugriff auf dieses Protokoll ermöglicht. Die in dem Protokoll enthaltenen Informationen sind gewöhnlich nicht ausreichend. Sie können die Anzahl der Treffer enthalten, die einen suchspezifischen Satz von Anweisungen erfüllen. Unter Umständen enthalten sie nur die Erstabfrage. Es gibt ein doppeltes Problem bei diesen Lösungsansätzen. Erstens wird das Protokoll linear dargestellt. Diese lineare Darstellung spiegelt nicht den tatsächlichen Prozess der Problemlösung wider, bei dem eine Abfrage verfeinert werden kann, um eine andere zu erzeugen. Zweitens gibt es keine komfortable Möglichkeit, auf das Protokoll zuzugreifen. Wenn er aufgerufen wurde, entfernt der Verlaufsbefehl außerdem die ausführliche Abfrageanweisung und auch die ausführlichen Ergebnisse der letzten Abfrageanweisung vom Bildschirm. Der Benutzer muss sich diese Einzelheiten im Rahmen der eingeschränkten Zusammenfassung ins Gedächtnis zurückrufen, wenn er seine Suchstrategie ändert. Ferner besteht bei den meisten Suchsystemen das einzige Verfahren zur Änderung eines Suchlaufs darin, dass weitere Abfrageanweisungen geschrieben werden.
- Die vorstehenden Nachteile nach dem Stand der Technik werden von der Erfindung in der beanspruchten Weise überwunden.
- Es ist deshalb eine Aufgabe der Erfindung, eine Abfrageanweisung und eine grafische Darstellung ihres Ergebnisses bei einem Suchlauf in einer Datenbank gleichzeitig auf einer grafischen Benutzeroberfläche anzuzeigen.
- Es ist eine weitere Aufgabe der Erfindung, die Beziehung der Abfrageanweisungen und der Abfrageergebnisse grafisch auf einer grafischen Benutzeroberfläche darzustellen.
- Diese und andere Aufgaben werden von einer Suchfunktion mit einer Benutzerschnittstelle gelöst, die drei Fenster enthält:
ein Abfragefenster, ein Diagrammfenster und ein Verlaufsfenster. Alle Fenster werden gleichzeitig auf der grafischen Benutzeroberfläche dargestellt. Das Abfragefenster zeigt den Text der zuletzt eingegebenen Abfrageanweisung an, entsprechend der eine in einem Rechnersystem gespeicherte Datenbank durchsucht wird. Das Diagrammfenster zeigt die aktuellen Ergebnisse der jüngsten Abfrageanweisung grafisch an. Das Verlaufsfenster stellt die Abfrageanweisungen und ihre Ergebnisse während der aktuellen Abfragesitzung dar, und die Abfrageanweisungen und ihre Ergebnisse werden grafisch als ein Baum dargestellt, in dem die Abfrageanweisungen und die Abfrageergebnisse Knoten sind und jedes Ergebnis einer Abfrageanweisung ein Kind der Abfrageanweisung ist, entsprechend der ein Suchlauf durchgeführt wurde, um es zu erzeugen. - Eine Eingabe in irgendeines der Fenster ändert die Darstellung der Daten in den anderen beiden Fenstern. Zusätzliche Abfrageanweisungen ändern die grafische Darstellung der Ergebnisse in dem Diagrammfenster und fügen neue Knoten zu dem in dem Verlaufsfenster dargestellten Baum hinzu. Wenn die grafische Darstellung der Ergebnisse in dem Diagrammfenster verändert wird, werden neue oder geänderte Abfrageanweisungen erzeugt und in dem Abfragefenster dargestellt, die ebenfalls Knoten zu dem Verlaufsfenster hinzufügen. Indem der Benutzer bestimmte Knoten in dem Baum im Verlaufsfenster auswählt, kann er zu vorherigen Abfragen zurückkehren und diese ändern, um neue Abfrageanweisungen zu erstellen. Durch Auswahl des Wurzelknotens in dem Verlaufsfenster kann der Benutzer unabhängig von irgendeiner vorherigen Abfrageanweisung eine neue Abfrageanweisung veranlassen. Entsprechend der neuen oder der geänderten Abfrageanweisungen wird ein Suchlauf durchgeführt, so dass die Abfrageergebnisse in dem Diagrammfenster bereitgestellt und neue Knoten in dem Verlaufsfenster erzeugt werden.
- Diese und andere Merkmale, Vorteile und Aufgaben lassen sich durch Bezugnahme auf die folgende Beschreibung und die beigefügten Zeichnungen besser verstehen, in denen:
-
1 ein Rechnersystem darstellt, das einen Systembildschirm, eine Systemeinheit, eine Maus und eine Tastatur enthält; -
2 eine Übersichtsdarstellung der Architektur des in1 gezeigten Rechnersystems ist; - die
3A bis3D die grafische Benutzeroberfläche des Suchsystems zeigen; -
4 die Datenstrukturen zeigt, die zur Darstellung der in den3A bis3D gezeigten grafischen Benutzeroberfläche verwendet werden; - die
5A bis5C Flussdiagramme des Suchprozesses sind, wenn der Benutzer die in den3A bis3D gezeigte grafische Benutzeroberfläche verändert; -
6 die grafische Benutzeroberfläche des Suchsystems ist, wobei das Diagrammfenster einen Multimediadatenstrom darstellt. - Die Erfindung kann auf einer Vielzahl von Rechnern oder einem Rechnerverbund unter vielen verschiedenen Betriebssystemen ausgeführt werden. Der Rechner könnte beispielsweise ein Personal Computer, ein Kleinrechner, ein Großrechner oder ein Rechner sein, der in einem verteilten Netzwerk aus anderen Rechnern läuft. Obgleich die jeweilige Wahl des Rechners nur durch die Anforderungen an die Festplatte und den Festplattenspeicher beschränkt ist, könnten Rechner der Serie IBM PS/2 (PS/2 ist ein Warenzeichen der International Business Machine Corporation) in der vorliegenden Erfindung verwendet werden. Für weitere Informationen über die Rechnerserie IBM PS/2 sei der Leser auf das Technical Reference Manual Personal Systems/2 Model 50, 60 systems, IBM Corporation, Teile-Nr. 68X2224, Bestellnummer S68X-2224 und das Technical Reference Manual Personal Systems/2 (Model 80), IBM Corporation, Teile-Nr. 68X2256, Bestellnummer S68X-2254, verwiesen. Ein Betriebssystem, das ein Personal Computer IBM PS/2 ausführen kann, ist das IBM OS/2 2.0 (OS/2 ist ein Warenzeichen der International Business Machine Corp.). Für weitere Informationen über das Betriebssystem IBM OS/2 2.0 sei der Leser auf, Bestellnummern 10G6261, 10G6495, 10G6494, verwiesen.
- Alternativ dazu könnte das Rechnersystem ein System der Rechnerreihe IBM RISC System/6000 (RISC System/6000 ist ein Warenzeichen der International Business Machine Corp.) sein, die unter dem Betriebssystem AIX (AIX ist ein Warenzeichen der International Business Machine Corp.) laufen. Die verschiedenen Modelle des RISC System/6000 sind in vielen Veröffentlichungen der IBM Corporation beschrieben, zum Beispiel in RISC System/6000, 7073 und 7016 POWERstation and POWERserver Hardware Technical Reference, Bestellnummer SA23-2644-00. Das Betriebssystem AIX ist in General Concepts and Procedure--AIX Version 3 for RISC System/6000, Bestellnummer SC23-2202-00 sowie in anderen Veröffentlichungen der IBM Corporation beschrieben.
- In
1 ist ein Rechner10 gezeigt, der eine Systemeinheit11 , eine Tastatur12 , eine Maus13 und eine Tastatur14 umfasst. Der Bildschirm16 der Anzeigeeinheit14 dient zur Darstellung der grafischen Benutzeroberfläche (GUI). Die vom Betriebssystem unterstützte grafische Benutzeroberfläche ermöglicht dem Benutzer die Nutzung eines gezielten Eingabeverfahrens ("point and shoot"), d. h., er bewegt den Mauszeiger15 auf ein Symbol, das ein Datenobjekt darstellt, an einer bestimmten Stelle auf dem Bildschirm16 und drückt eine der Maustasten, um einen Benutzerbefehl oder eine Benutzerauswahl auszuführen. -
2 zeigt ein Blockschaltbild der Komponenten des in1 gezeigten Personal Computers. Die Systemeinheit11 enthält einen Systembus oder eine Vielzahl von Systembussen21 , an den/die verschiedene Komponenten angeschlossen sind und über den/die die Kommunikation zwischen den verschiedenen Komponenten durchgeführt wird. Der Mikroprozessor22 ist mit dem Systembus21 verbunden und wird vom Nur-Lese-Speicher (ROM)23 und dem Direktzugriffspeicher (RAM)24 unterstützt, die ebenfalls an den Systembus21 angeschlossen sind. Ein Mikroprozessor der IBM-Multimedia-PS/2-Rechnerserie ist ein Mikroprozessor der Mikroprozessorfamilie von Intel, zu der auch die Mikroprozessoren 386 und 486 gehören. Andere Mikroprozessoren einschließlich, jedoch nicht auf diese beschränkt, der Mikroprozessorfamilie von Motorola wie beispielsweise die Mikroprozessoren 68000, 68020 oder 68030 sowie verschiedene Prozessoren mit eingeschränktem Befehlssatz (Reduced Instruction Set Computer, RISC), die von IBM, Hewlett Packard, Sun, Intel, Motorola und anderen hergestellt werden, können in dem jeweiligen Rechner aber auch verwendet werden. - Der ROM
23 enthält neben anderem Code das Basic Input-Output System (BIOS), das grundlegende Hardware-Operationen wie zum Beispiel die Interaktion mit den Plattenlaufwerken und der Tastatur steuert. Der RAM24 ist der Hauptspeicher, in den das Betriebssystem und Anwendungsprogramme geladen werden. Der Speicherverwaltungschip25 ist mit dem Systembus21 verbunden und steuert Zugriffsoperationen auf den Direktspeicher einschließlich der Übergabe von Daten zwischen dem RAM24 und dem Festplattenlaufwerk26 und dem Diskettenlaufwerk27 . Der ebenfalls an den Systembus21 angeschlossene CD-ROM32 dient zur Speicherung einer großen Datenmenge, beispielsweise eines Multimediaprogramms oder einer großen Datenbank. - Verschiedene E/A-Steuereinheiten sind ebenfalls an diesen Systembus
21 angeschlossen: die Tastatursteuereinheit28 , die Maussteuereinheit29 , die Videosteuereinheit30 und die Audiosteuereinheit31 . Erwartungsgemäß stellt die Tastatursteuereinheit28 die Hardwareschnittstelle für die Tastatur12 bereit, die Maussteuereinheit29 stellt die Hardwareschnittstelle für die Maus13 bereit, die Videosteuereinheit30 ist die Hardwareschnittstelle für den Bildschirm14 , und die Audiosteuereinheit31 ist die Hardwareschnittstelle für die Lautsprecher15a und15b . Die Lautsprecher15a und15b können zur Übergabe von Audioobjekten an den Benutzer verwendet werden. Eine E/A-Steuereinheit40 wie zum Beispiel ein Token-Ring-Adapter ermöglicht die Kommunikation über ein Netzwerk46 mit anderen ähnlich konfigurierten Datenverarbeitungssystemen. - Eine der bevorzugten Ausführungen der vorliegenden Erfindung ist ein Satz von Befehlen in einem Code-Modul, das sich im Direktzugriffspeicher
24 befindet. Bis er vom Rechnersystem benötigt wird, kann der Befehlssatz in einem anderen Rechnerspeicher abgelegt werden, beispielsweise im Festplattenlaufwerk26 , auf einer optischen Platte zur letztendlichen Verwendung im CD-ROM32 oder auf einer Diskette zur letztendlichen Verwendung im Diskettenlaufwerk27 . Wie in der Figur gezeigt ist, befinden sich das Betriebssystem50 und der Präsentationsmanager52 im RAM24 . In diesem Beispiel ist die Erfindung in einem Suchsystem54 realisiert, das eine Datenbank56 durchsucht und das Betriebssystem oder den Präsentationsmanager zur Darstellung der GUI verwendet. Manche Betriebssysteme wie zum Beispiel das Betriebssystem OS/2 haben einen integrierten Präsentationsmanager. Andere Systeme verwenden einen Präsentationsmanager, bei dem es sich um einen eigenständigen Code handelt. Alternativ dazu könnte die vorliegende Erfindung in einer eigenständigen Anwendung realisiert werden, die ihre eigene grafische Benutzeroberfläche hat. - Abfrageanweisungen, die zum Abruf von Daten aus Datenbanken verwendet werden, sind in der Technik bekannt. Die Structured Query Language (SQL) nach dem ANSI-Standard ist beispielsweise eine Sprache zur Erstellung solcher Anweisungen. Eine Abfrage legt in für einen Rechner erkennbaren Ausdrücken die Tabellen, in denen die Daten gefunden werden, die interessierenden Tabellenspalten, die von Zeilen zu erfüllenden Bedingungen, die Reihenfolge der Spalten, Unterscheidungsbedingungen, Verknüpfungen von Daten innerhalb von Tabellen und andere Beziehungen fest. Der Leser sei auf einen Text in der von der IBM Corporation 1991 veröffentlichten Broschüre "IBM Operating Systems/2 Extended Edition Database Manager Structured Query Language (SQL)" verwiesen, welcher SQL und seine Verwendungsmöglichkeiten beschreibt.
- Wenn eine Verknüpfung bereitgestellt wird, um die Abfrageanweisung, ihren Bericht oder ihre Ergebnisse und den Abfrageverlauf miteinander zu verbinden, kann der Benutzer interaktiv ein Abfrageergebnis sehen, ein Abfrageergebnis verändern, um Prädikate zu erzeugen, die zu der nächsten Abfrageanweisung hinzugefügt werden sollen, die aktualisierte Abfrageanweisung ändern und das nächste Abfrageergebnis sehen, nachdem die neue Abfrageanweisung geändert und ausgeführt wurde. Darüber hinaus verzeichnet eine Protokolliereinrichtung die Aktivitäten, die ein Benutzer an der Abfrageanweisung, dem Abfrageergebnis und dem Abfrageverlauf, die miteinander verknüpft sind, in einer der Problemlösung dienenden Sitzung interaktiv durchgeführt hat und stellt den Abfrageverlauf in dem Verlaufsfenster dar. Benutzer haben dann die Möglichkeit, über die Protokolliereinrichtung zu einer beliebigen Abfrageanweisung oder einem beliebigen Abfrageergebnis zurückzukehren und anschließend diesen Prozess zur Lösung wiederkehrender Probleme zu konfigurieren. Das Suchsystem der vorliegenden Erfindung stellt eine wirksamere Möglichkeit zur Lösung wiederkehrender Probleme als jedes bisherige Verfahren bereit, da aktiv ein übersichtliches Verzeichnis der bisherigen Aktivität geführt wird und jederzeit gleichzeitig mit der neuesten Abfrageanweisung und dem neuesten Abfrageergebnis zur Verfügung steht. Eine versuchsweise Problemlösungssitzung nach dem Trial-and-Error-Verfahren kann gespeichert und bearbeitet werden, um Konzepte zur zukünftigen Verwendung zu erzeugen, was den Wert dieses Problemlösungsansatzes beträchtlich steigert.
- Wie in den
3A bis3D gezeigt ist, wird die Erfindung in Form der grafischen Benutzeroberfläche (GUI) unter Verwendung von drei Fenstern realisiert. Das Abfragefenster101 enthält die neueste Abfrageanweisung in der aktuellen Abfrage. In diesem Fall wird SQL als Abfragesprache verwendet, aber der Fachmann versteht, dass andere Sprachen ohne weiteres an ihre Stelle treten könnten. Das Diagrammfenster102 zeigt die Ergebnisse der Abfrageanweisung, die in dem Abfragefenster grafisch dargestellt wird. In diesem Fall werden Balkendiagramme verwendet, doch kann der Benutzer die Art der grafischen Darstellung frei wählen, die ein Kurvendiagramm, ein Kreisdiagramm, ein Balkendiagramm, ein Graph oder eine andere Darstellung sein könnte. Das dritte Fenster ist das Baum- oder das Verlaufsfenster103 . In der bevorzugten Ausführungsform der Erfindung wird der Verlauf der Abfrage als eine grafische Darstellung wiedergegeben, die einem Baum ähnelt, bei dem alle Abfrageanweisungen und ihre Ergebnisse als Knoten dargestellt werden. - Die Fenster stehen alle in einer Wechselbeziehung miteinander. Änderungen an der Abfrageanweisung führen zu Änderungen an dem Diagrammfenster, um die neuen Ergebnisse für die geänderte Abfrageanweisung, d. h. die Abfrageergebnisse, wiederzugeben. Ebenso kann der Benutzer die Abfrageanweisung auch ändern, indem er direkt am Diagramm Änderungen vornimmt. Die Auswahl einer Teilgruppe eines auf der X-Achse skalierten Parameters könnte beispielsweise zu weiteren Einschränkungen der SQL-Klausel WHERE führen. Das Verlaufsfenster, das eine grafische Darstellung eines Protokolls ist, zeichnet die Aktivität des Benutzers im Abfragefenster und auch im Diagrammfenster auf. Jede Abfrageanweisung oder jedes in Form eines Diagramms dargestellte Ergebnis wird als ein Knoten in dem Baum dargestellt. Ein in Form eines Diagramms dargestelltes Ergebnis ist das Kind der Abfrageanweisung, die ausgeführt wurde, um es zu erzeugen. Eine geänderte Abfrageanweisung ist das Kind der Abfrageanweisung, von der es erzeugt wurde. Die grafische Darstellung eines solchen Verlaufsprotokolls ermöglicht dem Benutzer das schnelle Auffinden von zuvor erstellen Abfrageanweisungen, was den Prozess der Datenauswertung erheblich beschleunigt.
- Viele bekannte grafische Benutzeroberflächen unterstützen den Gedanken der "Auswahl". Um ein Objekt in der GUI auszuwählen, bewegt ein Benutzer einen Mauszeiger auf ein Objekt auf dem Bildschirm, das ein Fenster auf dem Bildschirm oder im Falle der vorliegenden Erfindung ein Knoten eines Baums oder ein Balken in einem Balkendiagramm sein kann. Das Betriebssystem überwacht die relative Position der Objekte innerhalb der GUI und des Mauszeigers, während er vom Benutzer bewegt wird. Der Benutzer drückt dann die entsprechende Maustaste, um das Objekt auszuwählen. Das Objekt wird dann vom Fenstermanager in der Hervorhebungsart "Hervorhebung für ausgewählte Objekte" dargestellt, was bedeutet, dass das Objekt von anderen Objekten optisch abgesetzt wird, beispielweise indem die Pixel um ein ausgewähltes Objekt invertiert oder die Farbe der Umrandung in einem ausgewählten Fenster geändert wird. Dieser Auswahlprozess wird allgemein als "klicken auf" ein Objekt bezeichnet.
- Die
3A bis3D zeigen die grafische Benutzeroberfläche100 des Suchsystems der vorliegenden Erfindung, wie sie auf den Bildschirm des Systems dargestellt würde. In diesem der Veranschaulichung dienenden Beispiel muss der Leiter des Compact-Disk-(CD-)Verkaufs für eine Kette von Musikläden den optimalen Preis für eine CD finden. Er klickt zuerst auf das Abfragefenster101 und wird aufgefordert, den Namen der Abfrageanweisung einzugeben. Er wählt den Systemstandard, Query1,104 , der Suchanweisungen nach dem Preis und dem Standort des Ladengeschäfts enthält. Er gibt die Abfrageparameter ein, um herauszufinden, wie viele Einheiten in einem bestimmten Ladengeschäft zu einem hohen Preis (> 20 US$) verkauft wurden. Er führt diese Abfrageanweisung aus und bittet um die Ergebnisse105 in Form eines Balkendiagramms103 , indem er ein Symbol oder einen Menüpunkt für ein Ergebnis in Form eines Balkendiagramms auswählt oder indem er eine andere bekannte Auswahlprozedur durchführt. Die Abfrageanweisung und ihre in Form eines Diagramms dargestellten Ergebnisse werden als die Knoten106 ,107 in dem Baum108 dargestellt. Zwar sind die Knoten in den Figuren als alphanumerische Zeichen dargestellt, doch könnten auch Symbole oder andere Bildzeichen verwendet werden. Er sieht in dem Diagrammfenster102 , dass die Verkaufszahlen zu diesem Preis und in diesem Ladengeschäft schlecht waren. Er bricht diese Abfrage ab. Er klickt auf das Verlaufsfenster103 und anschließend auf den Wurzelknoten109 des Baums108 , um noch einmal von vorne anzufangen. In3A ist die GUI zu diesem Zeitpunkt gezeigt. - Nun Bezug nehmend auf
3B gibt er über die Tastatur in das Abfragefenster101 eine neue Abfrageanweisung110 , Query2, nach den gesamten Verkaufszahlen in einem anderen Ladengeschäft ohne Preisbeschränkung ein. Er führt die Abfrage110 aus und erzeugt im Diagrammfenster102 ein Balkendiagramm112 . Query2110 und ihre Ergebnisse112 werden im Verlaufsfenster103 als die Knoten114 ,115 im Baum108 gezeigt. In3B ist die GUI100 zu diesem Zeitpunkt gezeigt. - Bezug nehmend auf das Balkendiagramm
112 sieht er, dass die Verkaufszahlen im Allgemeinen schlecht, im unteren Preisbereich aber gut waren. Nun Bezug nehmend auf3C markiert er einen Bereich120 auf der X-Achse121 , der dem Stückpreis entspricht und in dem er die Umsatzspitze sieht. Als Antwort auf die Veränderung des Diagrammfensters102 durch den Verkaufsleiter wird das Abfragefenster101 automatisch aktualisiert. Der Benutzer wird automatisch zum Abfragefenster101 zurückgeführt. Ein Zeiger134 auf die geänderte Abfrage130 wird als ein Knoten im Baum108 gespeichert. - Mit
3D fortfahrend wird die geänderte Abfrage ausgeführt, und ein neuer Knoten135 wird zum Baum108 hinzugefügt. Der Benutzer kann weiterhin zwischen dem Abfragefenster101 und dem Diagrammfenster102 arbeiten, um schrittweise weitere Detaillierungsgrade der Daten zu erhalten, oder den Baum108 verwenden, um zu einer vorherigen Abfrageanweisung zurückzugehen. Eine jede der Abfrageanweisungen und ein jedes der Ergebnisse wird aufgezeichnet, im Protokoll festgehalten und im Verlaufsfenster103 dargestellt. Aktionen wie beispielsweise die Art und weise, in der das Abfrageergebnis dargestellt werden soll, können gestartet werden, indem ein Menüpunkt aus der Aktionsleiste138 ausgewählt wird. weitere Knoten140 ,141 stellen die ausführlichste Abfrage142 und ihr in Form eines Diagramms dargestelltes Ergebnis143 dar. Die im Diagrammfenster102 dargestellten Ergebnisse könnten in einer Multimediapräsentation verwendet werden, die die umfassenden und ausführlichen Darstellungen der Daten vollständig unterstützt. - Mehrere Datenstrukturen müssen im RAM gespeichert werden, um die in den vorhergehenden Figuren gezeigte GUI dazustellen. Wie in
4 gezeigt ist, befindet sich im RAM24 eine Baumdatenstruktur200 , die den Wurzelknoten201 und mehrere Kindknoten202 bis205 enthält. Jeder der Kindknoten202 bis205 entspricht einem der Abfrageobjekte210 ,214 oder einem der Ergebnisobjekte212 ,216 . Weitere Knoten werden zum Baum200 hinzugefügt, während der Benutzer seine Suche fortsetzt und dabei weitere Abfrageanweisungen erstellt und Ergebnisobjekte erzeugt. - Das Wurzelobjekt
201 ist die Wurzel der Baumstruktur und gleichzeitig ein Knoten, der zur Speicherung der Diagramme (Ergebnisse) und der Abfrageanweisungen verwendet wird, die der Benutzer erstellt. Die KNOTEN-Objekte202 bis205 sind Datenstrukturen, die einen bestimmten Knoten in dem Baum enthalten. Knoten können Ergebnissen oder Abfrageanweisungen entsprechen. Knoten enthalten auch eine Liste von Kindern, die ebenfalls Knoten sind. Die Knotenobjekte enthalten mehrere Variablen, unter anderem: NODE_QUERY, einen Zeiger auf das Abfrageobjekt; er hat den Wert Null, wenn dieser Knoten ein Diagramm ist, NODE_GRAPH, bei dem es sich um einen Zeiger auf das Diagrammobjekt handelt; er hat den Wert Null, wenn dieser Knoten ein Diagramm ist, CHILD_LIST, die einen Zeiger auf das erste Kind einer Liste von Kindern, die Kinder dieses Knotens sind, enthält. Nachfolgende Kinder können gefunden werden, indem die Liste NEXT_SIBLING durchlaufen wird. NEXT_SIBLING enthält einen Zeiger auf den nächsten Geschwisterteil in einer Liste von Geschwistern. Der letzte Geschwisterteil in der Liste zeigt auf NULL. Der Elternknoten zeigt auf das erste Kind mit der vorstehenden Variablen CHILD_LIST. - ABFRAGE-Objekte
210 ,214 sind Datenstrukturen, die alle Elemente enthalten, die eine Abfrageanweisung bilden. Die Variable QUERY_NAME enthält den Namen der Abfrageanweisung. Die Variable QUERY_BUFFER enthält den gesamten Text oder alle Daten, die die interne Darstellung der Abfrage bilden. Die Variable HAS_BEEN_RUN ist eine Boolsche Markierung, die auf "wahr" (true) gesetzt wird, wenn die Abfrage ausgeführt wurde. - Die Ergebnisobjekte
212 ,216 sind Datenstrukturen, die alle Elemente enthalten, die ein Ergebnis und dessen grafische Darstellung bilden. Die Variable GRAPH_TYPE ist die Art des Diagramms, z. B. Balkendiagramm, Kurvendiagramm, Kreisdiagramm usw.). Die Variable GRAPH_BUFFER enthält den gesamten Text und alle Daten, die die interne Darstellung des Diagramms bilden. PARENT_NODE ist die Abfrage, die ausgeführt wurde, um dieses Diagramm zu erzeugen. Wenn dieses Diagramm geändert wird, wird die sich daraus ergebende Abfrage als Kind dieses Knotens gespeichert. - Mehrere andere Variablen werden zur Überwachung des Fortschritts des Benutzers in dem Suchlauf verwendet. THIS_QUERY: Die Variable QUERY wird verwendet, um den Namen der Abfrage aufzunehmen, mit der der Benutzer gerade arbeitet. THIS_GRAPH: Die Variable GRAPH wird verwendet, um das zuletzt gespeicherte Ergebnis aufzunehmen. CURRENT_NODE: Die Variable NODE wird verwendet, um die Position des Benutzers in dem Baum zu überwachen.
- Ein Prozessablauf im Verlauf der Bedienung des Suchsystems durch den Benutzer ist in den
5A bis5C veranschaulicht. Im Schritt300 werden die drei Fenster initialisiert, und der aktuelle Knoten wird auf den Wurzelknoten in der Baumstruktur gesetzt. Dann wartet das System auf die erste Abfrageanweisung vom Benutzer. Wenn es die Abfrageanweisung im Schritt302 empfängt, erstellt es das erste Abfrageobjekt und setzt die Abfrageanweisung in der Variablen QUERY_BUFFER. Als Nächstes wird dem Benutzer im Schritt304 die Möglichkeit gegeben, die Abfrageanweisung zu benennen. Der für die Abfrage gewählte Name wird in die Variable QUERY_NAME eingegeben. Alternativ dazu kann ein standardmäßiger Namensgebungsmechanismus des Systems zur Benennung des Abfrageobjekts verwendet werden. Im Schritt306 wird das Abfrageobjekt dann als ein Kind des aktuellen Knotens gespeichert, der in diesem Fall der Wurzelknoten ist. Im Schritt308 wird die Variable CURRENT_NODE anschließend auf die Variable THIS_NODE gesetzt, bei der es sich um die aktuelle Abfrageanweisung handelt. Im Schritt310 wird die Abfrageanweisung dann im Abfragefenster angezeigt. - An diesem Punkt wartet der Rechner auf die nächste Benutzereingabe. Im Schritt
312 empfängt der Rechner diese Eingabe, und im Schritt314 stuft er die Eingabe in eine Kategorie ein. Eine der Möglichkeit, die es gibt, besteht darin, dass der Benutzer die erste Abfrageanweisung ändert, um eine zweite Abfrageanweisung zu schreiben, die die Erzeugung ihres eigenen Abfrageobjekts erforderlich macht. Im Schritt316 wird die Variable QUERY_BUFFER des zweiten Abfrageobjekts auf die vom Benutzer geschriebene neue Abfrageanweisung gesetzt. Der Prozess kehrt zum Schritt306 zurück, in dem die neue Abfrageanweisung als ein Kind des aktuellen Knotens gespeichert wird, bei dem es sich um die erste Abfrageanweisung handelt. Eine zweite Alternative, die in5C gezeigt ist, besteht darin, die Abfrage auszuführen. Wenn die Benutzeraktion in den Schritten312 und314 eine Anforderung ist, den Baum mittels eines Mausklicks auf das Verlaufsfenster anzuzeigen, schaltet der Prozess zum Schritt318 , in dem der Suchverlauf aus dem Speicher abgerufen wird. Im Schritt320 wird der Baum, der die grafische Darstellung des Suchverlaufs ist, im Verlaufsfenster angezeigt. - An diesem Punkt wartet das Suchsystem auf die nächste Benutzereingabe. Im Schritt
322 empfängt es die Eingabe. Mit5B fortfahrend stellt das System die Art der vom Benutzer vorgenommenen Eingabe fest, Schritt324 . Wenn der Benutzer die Anforderung gestellt hat, den Baum zu bearbeiten, kann er im Schritt326 Zweige des Baums löschen oder Knoten und Abfragen oder in Form eines Diagramms dargestellte Ergebnisse umbenennen. Nachdem ein erfolgreicher Suchlauf durchgeführt wurde, ist es für andere wichtig, den Prozess zu verstehen, der die gewünschten Ergebnisse hervorgebracht hat. Das Protokoll kann zu diesem Zweck verwendet werden. Der Baum kann gekürzt werden, um den erfolgreichen Suchlauf einfacher einzugeben. Knoten, in denen Tippfehler gemacht wurden, sollten beispielsweise gelöscht werden, um das Protokoll zu bereinigen, so dass es von anderen leicht zu verstehen ist. Um einen Knoten zu löschen, klickt der Benutzer auf den Knoten. Der Knoten ist markiert. Der Benutzer gibt dann einen Löschbefehl aus einem Aktionsleistenmenü oder einem anderen Mittel an. Dieser Knoten und alle seine Kinder werden gelöscht. Dies geschieht, indem der ausgewählte Knoten aus dem unmittelbaren Elternteil des ausgewählten Knotens entfernt wird. Es kann auch vorteilhaft sein, Abfrage-, Diagramm- oder Ergebnisknoten umzubenennen und ihnen dabei Namen zu geben, die die Knoten besser beschreiben. Dies kann in ähnlicher Weise geschehen. Indem man auf einen Knoten klickt, wird dieser markiert. Der Benutzer kann dann einen Umbenennungsbefehl aus einem Menüpunkt einer Aktionsleiste oder einem anderen Mittel angeben. Der Benutzer kann dann auf Wunsch über die Tastatur eine neue Zeichenfolge eingeben und anschließend die Eingabetaste drücken. Diese Zeichenfolge wird der neue Name für den Knoten. Sobald alle Änderungen eingegeben worden sind, wird der Baum im Schritt328 mit den vom Benutzer vorgenommenen Änderungen im Plattenspeicher aktualisiert, und der Prozess kehrt zum Schritt318 zurück. - Wenn die Aktion des Benutzers in der Auswahl eines Knotens in einem Baum besteht, wird der Knoten im Schritt
330 in der Hervorhebungsart "Hervorhebung für ausgewählte Objekte" angezeigt. Der Prozess kehrt zum Schritt322 zurück, um auf eine neue Benutzereingabe zu warten. Wenn die Aktion des Benutzers im Öffnen eines Knotens besteht, stellt das System im Schritt332 fest, ob der Knoten vom Typ Abfrageknoten oder Ergebnis-(Diagramm-)Knoten ist. Wenn der Knoten ein Abfrageknoten ist, wird der Abfragename im Schritt334 von dem ausgewählten Knoten abgerufen, und dieser Name wird der Variablen CURRENT_NODE zugewiesen. Als Nächstes wird im Schritt336 ein Test durchgeführt, um festzustellen, ob die Abfrageanweisung zuvor schon ausgeführt wurde. wenn ja, werden die Ergebnisse von der Abfrageanweisung im Schritt338 abgerufen. Wie vorstehend erörtert wurde, befinden sich die Ergebnisse in einem Kindknoten der Abfrageanweisung des aktuellen Knotens. Diese Ergebnisse werden im Schritt340 in einem Diagrammfenster angezeigt. Wenn die Abfrage noch nicht ausgeführt worden ist oder sobald die Ergebnisse in einem Diagrammfenster angezeigt worden sind, kehrt der Prozess zum Schritt310 zurück, in dem die Abfrage in dem Abfragefenster angezeigt wird. - Wenn der geöffnete Knoten in dem Baum ein Ergebnisknoten ist, wird der Ergebnisname abgerufen, und im Schritt
342 wird der Variablen CURRENT_NODE dieser Name zugewiesen. Im Schritt344 wird die entsprechende Abfrageanweisung, der Elternknoten des aktuellen Ergebnisknotens, vom Elternteil der Variablen CURRENT_NODE abgerufen. Im Schritt346 wird die Abfrageanweisung im Abfragefenster angezeigt. An diesem Punkt schaltet der Prozess zum Schritt360 in5C . Wenn die Benutzereingabe im Schritt314 von5A auf Ausführung der Abfrage lautet, wird der Prozess in der in5C gezeigten Weise durchgeführt. Zuerst wird im Schritt350 ein Name des Ergebnisknotens aus der Benutzereingabe abgerufen und der Variablen THIS_GRAPH zugewiesen. Alternativ dazu kann ein Standardmechanismus verwendet werden, um den Namen des Ergebnisknotens zuzuweisen. Im Schritt352 wird die Art einer grafischen Darstellung aus der Benutzereingabe abgerufen, und die Variable GRAPH_TYPE wird der Benutzereingabe zugewiesen. Im Schritt354 werden der Name und die Art des Diagramms in einem Objekt gespeichert, bei dem es sich um das Kind des aktuellen Knotenobjekts handelt. Im Schritt356 wird die Variable CURRENT_NODE dann dem Knoten der Variablen THIS_NODE zugewiesen, welcher der Ergebnisknoten ist. Im Schritt360 werden die Ergebnisse der Abfrageanweisung in der vom Benutzer gewählten grafischen Darstellung im Diagrammfenster angezeigt. - Es gibt viele Verfahren, um die Ergebnisse, die die Bedingungen der Abfrageanweisung erfüllen, in Form von Diagrammen darzustellen. Beispielsweise nehmen handelsübliche Tabellenkalkulationsprogramme die Ergebnisse und stellen sie in einem Balken-, Kurven- oder Kreisdiagramm dar, wobei sie eine Legende und einen Wert verwenden. Zuerst betrachtet das System alle Spalten in der Tabelle und verwendet das erste Textfeld als Legende, und das erste numerische Feld wird als Wert für dieses Textfeld verwendet. Wenn diese Felder nicht geeignet sind, stellt die Anwendung dem Benutzer ein Fenster zur Verfügung, in das er über die Tastatur neue Legenden eingeben oder in dem er eine neue Spalte auswählen kann, um diese Standardwerte zu überschreiben.
- Anschließend wartet das Rechnersystem auf die nächste Benutzeraktion. Im Schritt
362 wird die nächste Benutzeraktion empfangen, und im Schritt364 wird sie ausgewertet. Die Benutzereingabe kann eine Anforderung für die Änderung des Diagramms sein, was eine geänderte Abfrageanweisung nach sich zieht. Im Schritt366 markiert der Benutzer einen Bereich des Diagrammfensters, und im Schritt368 wird die Abfrageanweisung als Folge der Markierung des Bereichs aktualisiert. Die sich ergebende neue Abfrage wird im Schritt306 von5A als ein Kind des aktuellen Knotens gespeichert. - Die Auswahl und die Markierung eines Teils der grafischen Darstellung der Ergebnisse in dem Diagrammfenster kann in Abhängigkeit von der Art der grafischen Darstellung auf viele verschiedene Arten durchgeführt werden. Wenn die grafische Darstellung der Ergebnisse in Bezug auf einen der Suchparameter linear erfolgt, kann die Abfrageanweisung in Bezug auf diesen Suchparameter entsprechend den Lehren der S. G. Li und anderen gemeinsam übertragenen Patentschrift mit dem Titel "Graphical Definition of Range in the Selection of Data From a Database Field", Seriennummer 0005265246, erteilt am 23. November 1993 und durch Bezugnahme Bestandteil hiervon, geändert werden. Beispielsweise werden Positionen auf der Achse, die den Suchparameter in einem Balkendiagramm darstellt, von einer Vielzahl von Heftsymbolen (tacks) festgelegt. Jede Position eines Heftsymbols entspricht einem Wert für den Suchparameter. Indem ein Feld zwischen zwei Positionen von Heftsymbolen markiert wird, kann der Benutzer eine SQL-Anweisung "between" ("zwischen") so ändern, dass sie den Werten entspricht, die zwischen die entsprechenden Werte der Suchparameter fallen.
- Bei einem Kreis- oder einem Balkendiagramm zeigt jedes Kreissegment oder jeder Balken Informationen an, die zu einer bestimmten Kategorie oder einem bestimmten Bereich von Suchparametern gehören. Indem ein oder mehrere Kreissegmente oder Balken ausgewählt, d. h. markiert werden, könnte die Abfrageanweisung so geändert werden, dass nach Daten gesucht wird, die den ausgewählten Kategorien oder Bereichen entsprechen. Wenn die Ergebnisse in einem Kurven- oder Streudiagramm zwei- oder dreidimensional dargestellt werden, kann ein Rechteck oder ein Würfel um die interessierenden Bereiche gezeichnet werden. Jede einzelne Kante des Rechtecks oder des Würfels würde dem oberen oder dem unteren Wert in einem Wertebereich von Suchparametern entsprechen, der auf einer bestimmten Achse in Form eines Diagramms dargestellt wird. Die SQL-Klausel "between" für eine Vielzahl von Abfrageparametern kann so geändert werden, dass sie wie in der vorstehend in Bezug genommenen Anmeldung dem Auswahlbereich von Werten entspricht. Da mindestens einer der in Form eines Diagramms dargestellten Parameter ein Ergebnis- und nicht ein Suchparameter sein muss, kann die Auswahl mittels eines Rechtecks oder Würfels auch bedeuten, dass keine Ergebnisse dargestellt werden sollen, die außerhalb des ausgewählten Bereichs liegen.
- Als weitere Möglichkeit könnte die Benutzereingabe in den Schritten
362 und364 darin bestehen, dass die Abfrageanweisung angezeigt oder mit der Maus auf ein Abfragefenster geklickt wird. Im Schritt370 wird der Eingabebereich des Bildschirms auf das Abfragefenster gesetzt, und der Prozess schaltet zum Schritt312 . Alternativ dazu möchte der Benutzer den Baum vielleicht in dem Baumfenster anzeigen, wobei der Prozess in diesem Fall zum Schritt318 in5A zurückkehrt. - Wenn in dem für das Verlaufsfenster vorgesehenen Anzeigebereich zu viele Knoten dargestellt werden sollen, kann der Benutzer über Bildlaufleisten, die sich an den Rändern der Fenster befinden, zu vorherigen Knoten zurückblättern. In einer alternativen Ausführungsform der Erfindung könnten die Abfrageanweisung und ihr Ergebnis mit einem einzigen Symbol angezeigt werden, um Anzeigebereich zu sparen. Wenn das Symbol ausgewählt wird, wird eine stark vergrößerte Version des Symbols dargestellt, bei der sowohl die Abfrageanweisung als auch das Ergebnis sichtbar sind und ausgewählt werden können. Während das Betriebssystem durch die Verwendung von Bildlaufleisten theoretisch unendlich lange Darstellungen handhaben kann, ist das Suchsystem mit einem großen Baum- und einem kleinen Verlaufsfenster bei der Zusammenfassung des Abfrageverlaufs nicht so leistungsfähig. Es ist jedoch immer noch besser als die Systeme nach dem Stand der Technik.
- Eine alternative Ausführungsform würde es dem Benutzer ermöglichen, den Fensterinhalt des Abfragefensters oder des Diagrammfensters zu verschieben, um die zusammengehörigen Abfrageanweisungen und -ergebnisse gleichzeitig anzuzeigen. Damit würde ein hervorragendes Mittel bereitgestellt werden, um die Zusammenfassung der Abfrage, wie sie in dem Baum dargestellt wird, besser verstehen zu können. Da die Abfrageanweisung und ihre Ergebnisse als neue Eltern und Kinder verknüpft werden, könnte eine Eingabe in die Bildlaufleisten ein weiterer Eintrittspunkt in den vorstehend in Verbindung mit den
5A bis5C beschriebenen Prozess sein. - Während der Blättervorgang oder andere Manipulationen stattfinden, könnte der aktuelle Knoten in dem Baum jedes Mal, wenn die Darstellung in dem Verlaufsfenster aufgefrischt wird, besonders hervorgehoben werden.
- Wie vorstehend erwähnt wurde, ist das Suchsystem nicht auf die SQL-Abfrage beschränkt. Es gibt mehrere Abfragesprachen, die im Rahmen dieser Erfindung gut funktionieren würden. Query By Example (QBE) von IBM ist ein Beispiel für eine weitere Abfragesprache, die in diesem Zusammenhang gut funktionieren würde. Darüber hinaus ist die grafische Darstellung nicht auf ein Diagramm beschränkt. Tatsächlich können Bilddaten in einer relationalen Datenbank ganz einfach gespeichert werden. Viele relationale Datenbankverwaltungsprogramme speichern Bildinformationen in einer Datei. In der relationalen Datenbanktabelle, die einen Verweis auf die Bildinformationen enthält, wird ein Zeiger oder Offset auf die Datei in der relationalen Datenbank gespeichert. Dieses Verfahren kann auch zur Speicherung von weiteren Arten von Multimediadaten wie zum Beispiel Toninformationen verwendet werden, wobei die relationale Datenbanktabelle den Titel und die Speicherspurnummer auf einer gewöhnlichen Musik-CD enthalten kann.
- Wie in
6 gezeigt ist, ist ein Filmarchivierungssystem, das, wenn es durchsucht wird, Ergebnisse als Bewegtbild anzeigt, eine ideale Anwendung. Verwendet man die Abfrageanweisung zur Auswahl einer Liste von Vollbildern und das Diagrammfenster401 zur Darstellung der Ergebnisse, kann diese Lösung wirksam zum Auffinden von Clips in einer Videodatenbank eingesetzt werden. Eine relationale Datenbanktabelle könnte Datensätze enthalten, von denen jeder Folgendes aufweist: 1) einen Film- oder Auswahlnamen, 2) den Namen der Datei, die den Film enthält, 3) eine Vollbildkennung, die den Offset innerhalb der Datei des betreffenden Vollbilds enthält, 4) einen Zeitstempel zu Synchronisationszwecken (das Vollbild wird zu dem Zeitpunkt, den dieser Zeitstempel ausweist, angezeigt). Die Abfrageanweisung403 im Abfragefenster405 könnte wie folgt lauten: SELECT FRAMES, FROM movie_table, WHERE TIME>1:00:00 and time<1:00:30 and MOVIE-"Terminator 5" (WÄHLE AUS DER Film_Tabelle VOLLBILDER MIT EINER ZEITDAUER>1:00:00 und einer Zeitdauer<1:00:30 AUS DEM FILM "Terminator 5" AUS); diese Abfrageanweisung403 würde die 30 Sekunden des Videofilms406 , die der Abfrageanweisung entsprechen, im Diagrammfenster401 anzeigen. Um den Blättervorgang durch die Vollbilder wirksam zu gestalten, könnten die Schaltflächen "Zurück", "Schnellvorlauf", "Wiedergabe" sowie die Einzelschrittschaltflächen407 dargestellt und in der gewohnten Weise genutzt werden. Mit dem Verlaufsfenster409 würde wie zuvor ein komfortables Mittel bereitgestellt werden, mit dem sich die zuvor betrachteten Filmclips und die zu ihrer Anzeige verwendeten Abfrageanweisungen nachvollziehen ließen.
Claims (12)
- Verfahren zum Durchsuchen einer Datenbank, die auf einem Rechnersystem gespeichert ist, das die folgenden Schritte umfasst: Anzeigen einer ersten Abfrageanweisung in einem Abfragefenster (
101 ) auf einem Bildschirm (100 ); Anzeigen eines ersten Satzes von Ergebnissen aus einem Datenbanksuchlauf entsprechend der ersten Abfrageanweisung in einem Diagrammfenster (102 ) auf dem Bildschirm (100 ); und Anzeigen von mindestens einem ersten Symbol, das die erste Abfrageanweisung und den ersten Satz von Ergebnissen darstellt, in einem Verlaufsfenster (103 ) auf dem Bildschirm (100 ); so dass das Abfragefenster, das Diagrammfenster und das Verlaufsfenster (101 ,102 ,103 ) gleichzeitig auf dem Bildschirm (100 ) dargestellt werden; dadurch gekennzeichnet, dass das mindestens erste Symbol als zwei Knoten in einer Baumstruktur (108 ) dargestellt wird und der erste Satz von Ergebnissen ein Kindknoten des ersten Abfrageanweisungsknotens ist. - Verfahren nach Anspruch 1, das des Weiteren die folgenden Schritte umfasst: Anzeigen einer zweiten Abfrageanweisung, die eine Änderung der ersten Abfrageanweisung ist; Anzeigen eines zweiten Satzes von Ergebnissen in dem Diagrammfenster (
102 ); und Anzeigen von mindestens einem zweiten Symbol, das die zweite Abfrageanweisung und den zweiten Satz von Ergebnissen darstellt, in dem Verlaufsfenster (103 ), wobei das mindestens zweite Symbol als zwei Knoten in einer Baumstruktur dargestellt wird und die zweite Abfrageanweisung ein Kindknoten des ersten Abfrageanweisungsknotens ist und der zweite Satz von Ergebnissen ein Kindknoten des zweiten Abfrageanweisungsknotens ist. - Verfahren nach Anspruch 1 oder 2, das des Weiteren die folgenden Schritte umfasst: als Antwort auf eine Benutzereingabe Auswählen eines Knotens in der Baumstruktur (
108 ); Darstellen einer Abfrageanweisung, die von dem ausgewählten Knoten dargestellt wird, in dem Abfragefenster (101 ); und Anzeigen eines Satzes von Ergebnissen aus dem Suchlauf entsprechend der Abfrageanweisung, die von dem ausgewählten Knoten dargestellt wird, in dem Diagrammfenster (102 ). - Verfahren nach Anspruch 1 oder 2, das des Weiteren die folgenden Schritte umfasst: als Antwort auf eine Benutzereingabe Auswählen eines Knotens in der Baumstruktur (
108 ); Darstellen eines Satzes von Ergebnissen, der von dem ausgewählten Knoten dargestellt wird, in dem Diagrammfenster (102 ); und Anzeigen der Abfrageanweisung, von welcher der Satz von Ergebnissen, der von dem ausgewählten Knoten dargestellt wird, abgeleitet wurde, in dem Abfragefenster (101 ). - Verfahren nach Anspruch 3, das des Weiteren die folgenden Schritte umfasst: als Antwort auf eine Benutzereingabe Ändern der von dem ausgewählten Knoten dargestellten Abfrageanweisung, um eine dritte Abfrageanweisung zu erstellen; Darstellen der dritten Abfrageanweisung in dem Abfragefenster (
101 ); Anzeigen eines dritten Satzes von Ergebnissen in einem grafischen Format in dem Diagrammfenster (102 ); und Anzeigen von mindestens einem dritten Symbol, das die dritte Abfrageanweisung und den dritten Satz von Ergebnissen darstellt, in dem Verlaufsfenster (103 ). - Verfahren nach einem der Ansprüche 1 bis 5, wobei die Ergebnisse in einem Multimediaformat angezeigt werden.
- System zum Durchsuchen einer auf einem Rechner gespeicherten Datenbank, das Folgendes umfasst: ein Mittel, um eine erste Abfrageanweisung in einem Abfragefenster (
101 ) auf einem Bildschirm (100 ) anzuzeigen; ein Mittel, um einen ersten Satz von Ergebnissen aus einem Datenbanksuchlauf entsprechend der ersten Abfrageanweisung in einem Diagrammfenster (102 ) auf dem Bildschirm (100 ) anzuzeigen; und ein Mittel, um mindestens ein erstes Symbol, das die erste Abfrageanweisung und den ersten Satz von Ergebnissen darstellt, in einem Verlaufsfenster (103 ) auf dem Bildschirm (100 ) anzuzeigen; so dass das Abfragefenster, das Diagrammfenster und das Verlaufsfenster (101 ,102 ,103 ) gleichzeitig auf dem Bildschirm (100 ) dargestellt werden; dadurch gekennzeichnet, dass das mindestens erste Symbol als zwei Knoten in einer Baumstruktur (108 ) dargestellt wird und der erste Satz von Ergebnissen ein Kindknoten des ersten Abfrageanweisungsknotens ist. - System nach Anspruch 8, das des Weiteren Folgendes umfasst: ein Mittel, um eine zweite Abfrageanweisung anzuzeigen, die eine Änderung der ersten Abfrageanweisung ist; ein Mittel, um einen zweiten Satz von Ergebnissen in dem Diagrammfenster (
102 ) anzuzeigen; und ein Mittel, um mindestens ein zweites Symbol, das die zweite Abfrageanweisung und den zweiten Satz von Ergebnissen darstellt, in dem Verlaufsfenster (103 ) anzuzeigen, wobei das mindestens zweite Symbol als zwei Knoten in einer Baumstruktur dargestellt wird und die zweite Abfrageanweisung ein Kindknoten des ersten Abfrageanweisungsknotens ist und der zweite Satz von Ergebnissen ein Kindknoten des zweiten Abfrageanweisungsknotens ist. - System nach Anspruch 7 oder 8, das des Weiteren Folgendes umfasst: ein Mittel, um als Antwort auf eine Benutzereingabe einen Knoten in der Baumstruktur (
108 ) auszuwählen; ein Mittel, um eine Abfrageanweisung, die von dem ausgewählten Knoten dargestellt wird, in dem Abfragefenster (101 ) darzustellen; und ein Mittel, um einen Satz von Ergebnissen aus dem Suchlauf entsprechend der Abfrageanweisung, die von dem ausgewählten Knoten dargestellt wird, in dem Diagrammfenster (102 ) anzuzeigen. - System nach Anspruch 7 oder 8, das des Weiteren Folgendes umfasst: ein Mittel, um als Antwort auf eine Benutzereingabe einen Knoten in der Baumstruktur (
108 ) auszuwählen; ein Mittel, um einen Satz von Ergebnissen, der von dem ausgewählten Knoten dargestellt wird, in dem Diagrammfenster (102 ) darzustellen; und ein Mittel, um die Abfrageanweisung, von welcher der Satz von Ergebnissen, der von dem ausgewählten Knoten dargestellt wird, abgeleitet wurde, in dem Abfragefenster (101 ) anzuzeigen. - System nach Anspruch 9, das des Weiteren Folgendes umfasst: ein Mittel, um die Abfrageanweisung, die von dem ausgewählten Knoten dargestellt wird, als Antwort auf eine Benutzereingabe zu ändern, um eine dritte Abfrageanweisung zu erstellen; ein Mittel, um die dritte Abfrageanweisung in dem Abfragefenster (
101 ) darzustellen; ein Mittel, um die Datenbank entsprechend der dritten Abfrageanweisung zu durchsuchen und um einen dritten Satz von Ergebnissen in einem grafischen Format in dem Diagrammfenster (102 ) anzuzeigen; und ein Mittel, um ein drittes und ein viertes Symbol, die die dritte Abfrageanweisung beziehungsweise den dritten Satz von Ergebnissen darstellen, in dem Verlaufsfenster (103 ) zu erstellen. - System nach einem der Ansprüche 7 bis 11, wobei die Ergebnisse in einem Multimediaformat angezeigt werden.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US72626 | 1993-06-04 | ||
US08/072,626 US5911138A (en) | 1993-06-04 | 1993-06-04 | Database search facility having improved user interface |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69434096D1 DE69434096D1 (de) | 2004-12-02 |
DE69434096T2 true DE69434096T2 (de) | 2006-02-02 |
Family
ID=22108805
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69434096T Expired - Lifetime DE69434096T2 (de) | 1993-06-04 | 1994-05-06 | Verfahren und System, um mit einer graphischen Benutzerschnittstelle in einer Datenbank zu suchen |
Country Status (9)
Country | Link |
---|---|
US (1) | US5911138A (de) |
EP (1) | EP0627691B1 (de) |
JP (1) | JPH076179A (de) |
KR (1) | KR0143357B1 (de) |
CN (1) | CN1044415C (de) |
AT (1) | ATE280975T1 (de) |
DE (1) | DE69434096T2 (de) |
ES (1) | ES2229210T3 (de) |
TW (1) | TW378298B (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130067387A1 (en) * | 2007-10-02 | 2013-03-14 | Lg Electronics Inc. | Mobile terminal and method of controlling the same |
DE102015014678A1 (de) | 2015-11-16 | 2017-05-18 | BAULINO Verlag GmbH | Bausanierungsplanverfahren |
Families Citing this family (195)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3425784B2 (ja) * | 1993-09-20 | 2003-07-14 | 富士通株式会社 | 文献情報検索装置 |
JP3339937B2 (ja) * | 1993-10-29 | 2002-10-28 | 富士通株式会社 | データベース検索装置 |
US5694546A (en) | 1994-05-31 | 1997-12-02 | Reisman; Richard R. | System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list |
US5946678A (en) * | 1995-01-11 | 1999-08-31 | Philips Electronics North America Corporation | User interface for document retrieval |
JP3548617B2 (ja) | 1995-01-31 | 2004-07-28 | 株式会社日立製作所 | 情報検索装置 |
US5951641A (en) * | 1995-02-15 | 1999-09-14 | Questel | Method for accessing data received from a server, and terminal using same |
US6457004B1 (en) * | 1997-07-03 | 2002-09-24 | Hitachi, Ltd. | Document retrieval assisting method, system and service using closely displayed areas for titles and topics |
US5864819A (en) * | 1996-11-08 | 1999-01-26 | International Business Machines Corporation | Internal window object tree method for representing graphical user interface applications for speech navigation |
US6144968A (en) * | 1997-03-04 | 2000-11-07 | Zellweger; Paul | Method and apparatus for menu access to information objects indexed by hierarchically-coded keywords |
US6631522B1 (en) * | 1998-01-20 | 2003-10-07 | David Erdelyi | Method and system for indexing, sorting, and displaying a video database |
US6272489B1 (en) * | 1998-05-12 | 2001-08-07 | International Business Machines Corp. | Visually oriented, easily navigable search facility |
US6665687B1 (en) | 1998-06-26 | 2003-12-16 | Alexander James Burke | Composite user interface and search system for internet and multimedia applications |
US7269585B1 (en) * | 1998-06-26 | 2007-09-11 | Alexander James Burke | User interface and search system for local and remote internet and other applications |
WO2000008581A1 (en) * | 1998-08-03 | 2000-02-17 | Harvest Technology, Inc. | Dynamic flow-through context switching of investment data into multiple investment tools |
IL126373A (en) * | 1998-09-27 | 2003-06-24 | Haim Zvi Melman | Apparatus and method for search and retrieval of documents |
US6313833B1 (en) | 1998-10-16 | 2001-11-06 | Prophet Financial Systems | Graphical data collection and retrieval interface |
JP3760057B2 (ja) * | 1998-11-19 | 2006-03-29 | 株式会社日立製作所 | 複数文書データベースを対象とした文書検索方法および文書検索サービス |
US7020847B1 (en) * | 1999-03-09 | 2006-03-28 | Siemens Aktiengesellschaft | Search and navigation device for hypertext documents |
JP2000315206A (ja) | 1999-04-30 | 2000-11-14 | Fujitsu Ltd | 検索条件の組み合わせに基づく検索システムおよび方法 |
US6941317B1 (en) | 1999-09-14 | 2005-09-06 | Eragen Biosciences, Inc. | Graphical user interface for display and analysis of biological sequence data |
US6125395A (en) * | 1999-10-04 | 2000-09-26 | Piiq.Com, Inc. | Method for identifying collections of internet web sites with domain names |
US6732088B1 (en) * | 1999-12-14 | 2004-05-04 | Xerox Corporation | Collaborative searching by query induction |
US10002167B2 (en) | 2000-02-25 | 2018-06-19 | Vilox Technologies, Llc | Search-on-the-fly/sort-on-the-fly by a search engine directed to a plurality of disparate data sources |
US6915308B1 (en) * | 2000-04-06 | 2005-07-05 | Claritech Corporation | Method and apparatus for information mining and filtering |
US6654749B1 (en) | 2000-05-12 | 2003-11-25 | Choice Media, Inc. | Method and system for searching indexed information databases with automatic user registration via a communication network |
US20010051942A1 (en) * | 2000-06-12 | 2001-12-13 | Paul Toth | Information retrieval user interface method |
US6772194B1 (en) * | 2000-06-27 | 2004-08-03 | Cisco Technology, Inc. | Directory band shell extension |
US6574624B1 (en) * | 2000-08-18 | 2003-06-03 | International Business Machines Corporation | Automatic topic identification and switch for natural language search of textual document collections |
US20020049792A1 (en) * | 2000-09-01 | 2002-04-25 | David Wilcox | Conceptual content delivery system, method and computer program product |
CN101382971A (zh) * | 2000-09-12 | 2009-03-11 | 株式会社医药分子设计研究所 | 分子功能网络的生成方法 |
US6598042B1 (en) * | 2000-09-29 | 2003-07-22 | International Business Machines Corporation | System and method for query by category |
JP3934325B2 (ja) * | 2000-10-31 | 2007-06-20 | 株式会社日立製作所 | 文書検索方法、文書検索装置及び文書検索プログラムの記憶媒体 |
US7340446B2 (en) * | 2000-12-11 | 2008-03-04 | Microsoft Corporation | Method and system for query-based management of multiple network resources |
US6782383B2 (en) * | 2001-06-18 | 2004-08-24 | Siebel Systems, Inc. | System and method to implement a persistent and dismissible search center frame |
US7213013B1 (en) | 2001-06-18 | 2007-05-01 | Siebel Systems, Inc. | Method, apparatus, and system for remote client search indexing |
US7464072B1 (en) | 2001-06-18 | 2008-12-09 | Siebel Systems, Inc. | Method, apparatus, and system for searching based on search visibility rules |
US7546287B2 (en) | 2001-06-18 | 2009-06-09 | Siebel Systems, Inc. | System and method to search a database for records matching user-selected search criteria and to maintain persistency of the matched records |
US8249885B2 (en) * | 2001-08-08 | 2012-08-21 | Gary Charles Berkowitz | Knowledge-based e-catalog procurement system and method |
US20030071837A1 (en) * | 2001-08-30 | 2003-04-17 | Intel Corporation | System and method for explaining search logic and results |
US7752266B2 (en) | 2001-10-11 | 2010-07-06 | Ebay Inc. | System and method to facilitate translation of communications between entities over a network |
US20030176929A1 (en) * | 2002-01-28 | 2003-09-18 | Steve Gardner | User interface for a bioinformatics system |
JPWO2003077159A1 (ja) * | 2002-03-11 | 2005-07-07 | 株式会社医薬分子設計研究所 | 分子機能ネットワークの生成方法 |
US8078505B2 (en) | 2002-06-10 | 2011-12-13 | Ebay Inc. | Method and system for automatically updating a seller application utilized in a network-based transaction facility |
US7209915B1 (en) * | 2002-06-28 | 2007-04-24 | Microsoft Corporation | Method, system and apparatus for routing a query to one or more providers |
US20040267703A1 (en) * | 2002-10-02 | 2004-12-30 | Board Of Regents, The University Of Texas System | System and method for accessing medical records |
US20040138988A1 (en) * | 2002-12-20 | 2004-07-15 | Bart Munro | Method to facilitate a search of a database utilizing multiple search criteria |
US7774191B2 (en) * | 2003-04-09 | 2010-08-10 | Gary Charles Berkowitz | Virtual supercomputer |
US7089235B2 (en) * | 2003-04-17 | 2006-08-08 | International Business Machines Corporation | Method for restricting queryable data in an abstract database |
US7290219B2 (en) | 2003-04-28 | 2007-10-30 | International Business Machines Corporation | System and method for selection based action bar |
ATE350715T1 (de) * | 2003-05-15 | 2007-01-15 | Targit As | Methode und benutzerschnittstelle für das bilden einer darstellung von daten mit meta-morphing |
US7779018B2 (en) * | 2003-05-15 | 2010-08-17 | Targit A/S | Presentation of data using meta-morphing |
US7178109B2 (en) * | 2003-08-12 | 2007-02-13 | Chordiant Software, Inc. | Process/viewer interface |
US6990637B2 (en) | 2003-10-23 | 2006-01-24 | Microsoft Corporation | Graphical user interface for 3-dimensional view of a data collection based on an attribute of the data |
US20050187911A1 (en) * | 2004-02-24 | 2005-08-25 | Microsoft Corporation | Visual query |
US8468444B2 (en) * | 2004-03-17 | 2013-06-18 | Targit A/S | Hyper related OLAP |
WO2005091702A2 (es) * | 2004-03-23 | 2005-10-06 | Angel Palacios | Sistema, procedimiento y programa para la gestión de expresiones de cálculo mediante estructuras gráficas arbóreas |
US9189568B2 (en) | 2004-04-23 | 2015-11-17 | Ebay Inc. | Method and system to display and search in a language independent manner |
US7359902B2 (en) | 2004-04-30 | 2008-04-15 | Microsoft Corporation | Method and apparatus for maintaining relationships between parts in a package |
US7383500B2 (en) | 2004-04-30 | 2008-06-03 | Microsoft Corporation | Methods and systems for building packages that contain pre-paginated documents |
US8661332B2 (en) | 2004-04-30 | 2014-02-25 | Microsoft Corporation | Method and apparatus for document processing |
US7580948B2 (en) | 2004-05-03 | 2009-08-25 | Microsoft Corporation | Spooling strategies using structured job information |
US8363232B2 (en) | 2004-05-03 | 2013-01-29 | Microsoft Corporation | Strategies for simultaneous peripheral operations on-line using hierarchically structured job information |
US8243317B2 (en) * | 2004-05-03 | 2012-08-14 | Microsoft Corporation | Hierarchical arrangement for spooling job data |
US20050246384A1 (en) * | 2004-05-03 | 2005-11-03 | Microsoft Corporation | Systems and methods for passing data between filters |
US7755786B2 (en) | 2004-05-03 | 2010-07-13 | Microsoft Corporation | Systems and methods for support of various processing capabilities |
US7440132B2 (en) | 2004-05-03 | 2008-10-21 | Microsoft Corporation | Systems and methods for handling a file with complex elements |
US7519899B2 (en) * | 2004-05-03 | 2009-04-14 | Microsoft Corporation | Planar mapping of graphical elements |
US7607141B2 (en) | 2004-05-03 | 2009-10-20 | Microsoft Corporation | Systems and methods for support of various processing capabilities |
US7634775B2 (en) * | 2004-05-03 | 2009-12-15 | Microsoft Corporation | Sharing of downloaded resources |
US20050262057A1 (en) * | 2004-05-24 | 2005-11-24 | Lesh Neal B | Intelligent data summarization and visualization |
US7765225B2 (en) | 2004-08-03 | 2010-07-27 | The Hong Kong Polytechnic University | Search system |
US7213041B2 (en) * | 2004-10-05 | 2007-05-01 | Unisys Corporation | Saving and restoring an interlocking trees datastore |
US7774295B2 (en) * | 2004-11-17 | 2010-08-10 | Targit A/S | Database track history |
US7584111B2 (en) * | 2004-11-19 | 2009-09-01 | Microsoft Corporation | Time polynomial Arrow-Debreu market equilibrium |
US7363306B1 (en) * | 2005-01-27 | 2008-04-22 | Hewlett-Packard Development Company, L.P. | Method and system for graphical representation |
US8548799B2 (en) * | 2005-08-10 | 2013-10-01 | Microsoft Corporation | Methods and apparatus to help users of a natural language system formulate queries |
US20070050379A1 (en) * | 2005-08-25 | 2007-03-01 | International Business Machines Corporation | Highlighting entities in a display representation of a database query, results of a database query, and debug message of a database query to indicate associations |
US8688671B2 (en) * | 2005-09-14 | 2014-04-01 | Millennial Media | Managing sponsored content based on geographic region |
US10592930B2 (en) | 2005-09-14 | 2020-03-17 | Millenial Media, LLC | Syndication of a behavioral profile using a monetization platform |
US9703892B2 (en) | 2005-09-14 | 2017-07-11 | Millennial Media Llc | Predictive text completion for a mobile communication facility |
US10911894B2 (en) | 2005-09-14 | 2021-02-02 | Verizon Media Inc. | Use of dynamic content generation parameters based on previous performance of those parameters |
US20110313853A1 (en) | 2005-09-14 | 2011-12-22 | Jorey Ramer | System for targeting advertising content to a plurality of mobile communication facilities |
US10038756B2 (en) | 2005-09-14 | 2018-07-31 | Millenial Media LLC | Managing sponsored content based on device characteristics |
US10585942B2 (en) * | 2005-09-14 | 2020-03-10 | Millennial Media Llc | Presentation of search results to mobile devices based on viewing history |
US7676394B2 (en) | 2005-09-14 | 2010-03-09 | Jumptap, Inc. | Dynamic bidding and expected value |
US8532633B2 (en) | 2005-09-14 | 2013-09-10 | Jumptap, Inc. | System for targeting advertising content to a plurality of mobile communication facilities |
CN100396002C (zh) * | 2005-11-23 | 2008-06-18 | 华为技术有限公司 | 一种利用关联查询进行鉴权的系统及其方法 |
US8924335B1 (en) | 2006-03-30 | 2014-12-30 | Pegasystems Inc. | Rule-based user interface conformance methods |
JP4656428B2 (ja) * | 2006-04-26 | 2011-03-23 | ソニー株式会社 | コンテンツ処理装置および方法、並びにプログラム |
EP2021953A2 (de) * | 2006-05-16 | 2009-02-11 | Targit A/S | Verfahren zum herstellen eines intelligenten armaturenbretts für die datenüberwachung |
DK176532B1 (da) | 2006-07-17 | 2008-07-14 | Targit As | Fremgangsmåde til integration af dokumenter med OLAP ved brug af sögning, computerlæsbart medium og computer |
US7991800B2 (en) * | 2006-07-28 | 2011-08-02 | Aprimo Incorporated | Object oriented system and method for optimizing the execution of marketing segmentations |
US8639782B2 (en) | 2006-08-23 | 2014-01-28 | Ebay, Inc. | Method and system for sharing metadata between interfaces |
US8706751B2 (en) * | 2006-12-13 | 2014-04-22 | International Business Machines Corporation | Method for providing a user interface driven by database tables |
US20080249984A1 (en) * | 2007-04-03 | 2008-10-09 | Coimbatore Srinivas J | Use of Graphical Objects to Customize Content |
DK176516B1 (da) * | 2007-04-30 | 2008-06-30 | Targit As | Computerimplementeret fremgangsmåde samt computersystem og et computerlæsbart medium til at lave videoer, podcasts eller slidepræsentationer fra en Business-Intelligence-application |
US8090603B2 (en) * | 2007-05-11 | 2012-01-03 | Fansnap, Inc. | System and method for selecting event tickets |
US8868620B2 (en) * | 2007-06-08 | 2014-10-21 | International Business Machines Corporation | Techniques for composing data queries |
US8392347B2 (en) | 2007-06-20 | 2013-03-05 | Kansai Paint Co., Ltd. | Coating color database creating method, search method using the database, their system, program, and recording medium |
US20080319975A1 (en) * | 2007-06-22 | 2008-12-25 | Microsoft Corporation | Exploratory Search Technique |
US20090119254A1 (en) * | 2007-11-07 | 2009-05-07 | Cross Tiffany B | Storing Accessible Histories of Search Results Reordered to Reflect User Interest in the Search Results |
US20090150387A1 (en) * | 2007-11-08 | 2009-06-11 | Marchewitz Jodi L | Guided research tool |
US8280901B2 (en) * | 2008-01-03 | 2012-10-02 | Masterfile Corporation | Method and system for displaying search results |
US8195641B2 (en) * | 2008-04-21 | 2012-06-05 | Microsoft Corporation | Query authoring by modifying a view of the results of the query |
US8214765B2 (en) * | 2008-06-20 | 2012-07-03 | Microsoft Corporation | Canvas approach for analytics |
US8429194B2 (en) | 2008-09-15 | 2013-04-23 | Palantir Technologies, Inc. | Document-based workflows |
US8332400B2 (en) * | 2008-09-23 | 2012-12-11 | Sage Inventions, Llc | System and method for managing web search information in navigation hierarchy |
US8055638B2 (en) * | 2008-12-11 | 2011-11-08 | Microsoft Corporation | Providing recent history with search results |
US8060524B2 (en) * | 2008-12-11 | 2011-11-15 | Microsoft Corporation | History answer for re-finding search results |
GB2466341A (en) * | 2008-12-17 | 2010-06-23 | Ibm | Method of graphically creating binary expressions |
DE102008062830B3 (de) * | 2008-12-23 | 2010-07-22 | Cerebrix Gmbh | Vorrichtung und Verfahren zum Speichern, Suchen und Darstellen von Informationen |
US8843435B1 (en) | 2009-03-12 | 2014-09-23 | Pegasystems Inc. | Techniques for dynamic data processing |
US8468492B1 (en) | 2009-03-30 | 2013-06-18 | Pegasystems, Inc. | System and method for creation and modification of software applications |
US8756229B2 (en) * | 2009-06-26 | 2014-06-17 | Quantifind, Inc. | System and methods for units-based numeric information retrieval |
WO2011053112A1 (en) * | 2009-11-02 | 2011-05-05 | Mimos Berhad | System and method for visual query of semantic information |
US20110113057A1 (en) | 2009-11-12 | 2011-05-12 | Salesforce.Com, Inc. | Subscriptions for enterprise level business information networking |
WO2011084470A1 (en) * | 2009-12-15 | 2011-07-14 | Mycare,Llc | Health care device and systems and methods for using the same |
US9552280B2 (en) * | 2010-05-13 | 2017-01-24 | Microsoft Technology Licensing, Llc | Visual analysis and debugging of complex event flows |
US8326861B1 (en) | 2010-06-23 | 2012-12-04 | Google Inc. | Personalized term importance evaluation in queries |
US8316019B1 (en) * | 2010-06-23 | 2012-11-20 | Google Inc. | Personalized query suggestions from profile trees |
US8880487B1 (en) | 2011-02-18 | 2014-11-04 | Pegasystems Inc. | Systems and methods for distributed rules processing |
US9002873B1 (en) * | 2011-05-31 | 2015-04-07 | Google Inc. | Pipeline query interface |
US9092482B2 (en) | 2013-03-14 | 2015-07-28 | Palantir Technologies, Inc. | Fair scheduling for mixed-query loads |
US8732574B2 (en) | 2011-08-25 | 2014-05-20 | Palantir Technologies, Inc. | System and method for parameterizing documents for automatic workflow generation |
US8504542B2 (en) | 2011-09-02 | 2013-08-06 | Palantir Technologies, Inc. | Multi-row transactions |
US8560494B1 (en) | 2011-09-30 | 2013-10-15 | Palantir Technologies, Inc. | Visual data importer |
US9589070B2 (en) * | 2011-10-10 | 2017-03-07 | Salesforce.Com, Inc. | Method and system for updating a filter logic expression representing a boolean filter |
US9195936B1 (en) | 2011-12-30 | 2015-11-24 | Pegasystems Inc. | System and method for updating or modifying an application without manual coding |
EP2812820A4 (de) * | 2012-02-06 | 2015-09-23 | Mycare Llc | Verfahren zum durchsuchen genomischer datenbanken |
US9378526B2 (en) | 2012-03-02 | 2016-06-28 | Palantir Technologies, Inc. | System and method for accessing data objects via remote references |
EP2885735A2 (de) * | 2012-08-14 | 2015-06-24 | Koninklijke Philips N.V. | Verfahren und system zur anzeige von algorithmischen richtlinien |
US9798768B2 (en) | 2012-09-10 | 2017-10-24 | Palantir Technologies, Inc. | Search around visual queries |
US9449062B2 (en) * | 2012-09-28 | 2016-09-20 | Sap Se | Data exploration combining visual inspection and analytic search |
US9348677B2 (en) | 2012-10-22 | 2016-05-24 | Palantir Technologies Inc. | System and method for batch evaluation programs |
US9471370B2 (en) | 2012-10-22 | 2016-10-18 | Palantir Technologies, Inc. | System and method for stack-based batch evaluation of program instructions |
US9952860B2 (en) | 2013-03-13 | 2018-04-24 | Veriscape, Inc. | Dynamic memory management for a virtual supercomputer |
US9367463B2 (en) | 2013-03-14 | 2016-06-14 | Palantir Technologies, Inc. | System and method utilizing a shared cache to provide zero copy memory mapped database |
US9898167B2 (en) | 2013-03-15 | 2018-02-20 | Palantir Technologies Inc. | Systems and methods for providing a tagging interface for external content |
US9740369B2 (en) | 2013-03-15 | 2017-08-22 | Palantir Technologies Inc. | Systems and methods for providing a tagging interface for external content |
US8868486B2 (en) | 2013-03-15 | 2014-10-21 | Palantir Technologies Inc. | Time-sensitive cube |
US8909656B2 (en) | 2013-03-15 | 2014-12-09 | Palantir Technologies Inc. | Filter chains with associated multipath views for exploring large data sets |
US20140330821A1 (en) * | 2013-05-06 | 2014-11-06 | Microsoft Corporation | Recommending context based actions for data visualizations |
US9105000B1 (en) | 2013-12-10 | 2015-08-11 | Palantir Technologies Inc. | Aggregating data from a plurality of data sources |
JP6284178B2 (ja) * | 2013-12-25 | 2018-02-28 | 株式会社日立国際電気 | 顧客情報検索システム |
US8924429B1 (en) | 2014-03-18 | 2014-12-30 | Palantir Technologies Inc. | Determining and extracting changed data from a data source |
US10606855B2 (en) | 2014-07-10 | 2020-03-31 | Oracle International Corporation | Embedding analytics within transaction search |
US10585892B2 (en) | 2014-07-10 | 2020-03-10 | Oracle International Corporation | Hierarchical dimension analysis in multi-dimensional pivot grids |
US20160026923A1 (en) | 2014-07-22 | 2016-01-28 | Palantir Technologies Inc. | System and method for determining a propensity of entity to take a specified action |
US10223423B2 (en) | 2014-10-02 | 2019-03-05 | Splunk Inc. | Custom communication alerts |
US10469396B2 (en) | 2014-10-10 | 2019-11-05 | Pegasystems, Inc. | Event processing with enhanced throughput |
CN104463436A (zh) * | 2014-11-20 | 2015-03-25 | 国家电网公司 | 输变电信息处理方法及装置 |
US9348880B1 (en) | 2015-04-01 | 2016-05-24 | Palantir Technologies, Inc. | Federated search of multiple sources with conflict resolution |
US9514205B1 (en) | 2015-09-04 | 2016-12-06 | Palantir Technologies Inc. | Systems and methods for importing data from electronic data files |
US10558339B1 (en) | 2015-09-11 | 2020-02-11 | Palantir Technologies Inc. | System and method for analyzing electronic communications and a collaborative electronic communications user interface |
US9772934B2 (en) | 2015-09-14 | 2017-09-26 | Palantir Technologies Inc. | Pluggable fault detection tests for data pipelines |
US10331899B2 (en) | 2015-10-24 | 2019-06-25 | Oracle International Corporation | Display of dynamic contextual pivot grid analytics |
US9652510B1 (en) | 2015-12-29 | 2017-05-16 | Palantir Technologies Inc. | Systems and user interfaces for data analysis including artificial intelligence algorithms for generating optimized packages of data items |
US10698599B2 (en) | 2016-06-03 | 2020-06-30 | Pegasystems, Inc. | Connecting graphical shapes using gestures |
US10554516B1 (en) | 2016-06-09 | 2020-02-04 | Palantir Technologies Inc. | System to collect and visualize software usage metrics |
US9678850B1 (en) | 2016-06-10 | 2017-06-13 | Palantir Technologies Inc. | Data pipeline monitoring |
US10698647B2 (en) | 2016-07-11 | 2020-06-30 | Pegasystems Inc. | Selective sharing for collaborative application usage |
US10621314B2 (en) | 2016-08-01 | 2020-04-14 | Palantir Technologies Inc. | Secure deployment of a software package |
US10133782B2 (en) | 2016-08-01 | 2018-11-20 | Palantir Technologies Inc. | Techniques for data extraction |
US11256762B1 (en) | 2016-08-04 | 2022-02-22 | Palantir Technologies Inc. | System and method for efficiently determining and displaying optimal packages of data items |
US10552531B2 (en) | 2016-08-11 | 2020-02-04 | Palantir Technologies Inc. | Collaborative spreadsheet data validation and integration |
US10373078B1 (en) | 2016-08-15 | 2019-08-06 | Palantir Technologies Inc. | Vector generation for distributed data sets |
EP3282374A1 (de) | 2016-08-17 | 2018-02-14 | Palantir Technologies Inc. | Benutzerschnittstellendaten-mustertransformator |
US10650086B1 (en) | 2016-09-27 | 2020-05-12 | Palantir Technologies Inc. | Systems, methods, and framework for associating supporting data in word processing |
US10152306B2 (en) | 2016-11-07 | 2018-12-11 | Palantir Technologies Inc. | Framework for developing and deploying applications |
US10261763B2 (en) | 2016-12-13 | 2019-04-16 | Palantir Technologies Inc. | Extensible data transformation authoring and validation system |
US11157951B1 (en) | 2016-12-16 | 2021-10-26 | Palantir Technologies Inc. | System and method for determining and displaying an optimal assignment of data items |
US10509844B1 (en) | 2017-01-19 | 2019-12-17 | Palantir Technologies Inc. | Network graph parser |
US10180934B2 (en) | 2017-03-02 | 2019-01-15 | Palantir Technologies Inc. | Automatic translation of spreadsheets into scripts |
US10572576B1 (en) | 2017-04-06 | 2020-02-25 | Palantir Technologies Inc. | Systems and methods for facilitating data object extraction from unstructured documents |
US10824604B1 (en) | 2017-05-17 | 2020-11-03 | Palantir Technologies Inc. | Systems and methods for data entry |
US10534595B1 (en) | 2017-06-30 | 2020-01-14 | Palantir Technologies Inc. | Techniques for configuring and validating a data pipeline deployment |
US10204119B1 (en) | 2017-07-20 | 2019-02-12 | Palantir Technologies, Inc. | Inferring a dataset schema from input files |
US10754820B2 (en) | 2017-08-14 | 2020-08-25 | Palantir Technologies Inc. | Customizable pipeline for integrating data |
US11016936B1 (en) | 2017-09-05 | 2021-05-25 | Palantir Technologies Inc. | Validating data for integration |
US11379525B1 (en) | 2017-11-22 | 2022-07-05 | Palantir Technologies Inc. | Continuous builds of derived datasets in response to other dataset updates |
US10552524B1 (en) | 2017-12-07 | 2020-02-04 | Palantir Technolgies Inc. | Systems and methods for in-line document tagging and object based data synchronization |
US10783162B1 (en) | 2017-12-07 | 2020-09-22 | Palantir Technologies Inc. | Workflow assistant |
US10360252B1 (en) | 2017-12-08 | 2019-07-23 | Palantir Technologies Inc. | Detection and enrichment of missing data or metadata for large data sets |
US11176116B2 (en) | 2017-12-13 | 2021-11-16 | Palantir Technologies Inc. | Systems and methods for annotating datasets |
US10853352B1 (en) | 2017-12-21 | 2020-12-01 | Palantir Technologies Inc. | Structured data collection, presentation, validation and workflow management |
GB201800595D0 (en) | 2018-01-15 | 2018-02-28 | Palantir Technologies Inc | Management of software bugs in a data processing system |
US10599762B1 (en) | 2018-01-16 | 2020-03-24 | Palantir Technologies Inc. | Systems and methods for creating a dynamic electronic form |
US10885021B1 (en) | 2018-05-02 | 2021-01-05 | Palantir Technologies Inc. | Interactive interpreter and graphical user interface |
US11263263B2 (en) | 2018-05-30 | 2022-03-01 | Palantir Technologies Inc. | Data propagation and mapping system |
US11061542B1 (en) | 2018-06-01 | 2021-07-13 | Palantir Technologies Inc. | Systems and methods for determining and displaying optimal associations of data items |
US10795909B1 (en) | 2018-06-14 | 2020-10-06 | Palantir Technologies Inc. | Minimized and collapsed resource dependency path |
US11048488B2 (en) | 2018-08-14 | 2021-06-29 | Pegasystems, Inc. | Software code optimizer and method |
US11086861B2 (en) * | 2019-06-20 | 2021-08-10 | International Business Machines Corporation | Translating a natural language query into a formal data query |
US11567945B1 (en) | 2020-08-27 | 2023-01-31 | Pegasystems Inc. | Customized digital content generation systems and methods |
US20220197915A1 (en) * | 2020-12-21 | 2022-06-23 | 4IQ, Inc. | Dynamic entity visualization of search results |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4480304A (en) * | 1980-10-06 | 1984-10-30 | International Business Machines Corporation | Method and means for the retention of locks across system, subsystem, and communication failures in a multiprocessing, multiprogramming, shared data environment |
US4399504A (en) * | 1980-10-06 | 1983-08-16 | International Business Machines Corporation | Method and means for the sharing of data resources in a multiprocessing, multiprogramming environment |
US4400773A (en) * | 1980-12-31 | 1983-08-23 | International Business Machines Corp. | Independent handling of I/O interrupt requests and associated status information transfers |
US4769772A (en) * | 1985-02-28 | 1988-09-06 | Honeywell Bull, Inc. | Automated query optimization method using both global and parallel local optimizations for materialization access planning for distributed databases |
US4847754A (en) * | 1985-10-15 | 1989-07-11 | International Business Machines Corporation | Extended atomic operations |
US5041967A (en) * | 1987-10-13 | 1991-08-20 | Bell Communications Research, Inc. | Methods and apparatus for dynamic menu generation in a menu driven computer system |
US4875159A (en) * | 1987-12-22 | 1989-10-17 | Amdahl Corporation | Version management system using plural control fields for synchronizing two versions of files in a multiprocessor system |
JP2760794B2 (ja) * | 1988-01-29 | 1998-06-04 | 株式会社日立製作所 | データベース処理方法および装置 |
US4965719A (en) * | 1988-02-16 | 1990-10-23 | International Business Machines Corporation | Method for lock management, page coherency, and asynchronous writing of changed pages to shared external store in a distributed computing system |
US5050072A (en) * | 1988-06-17 | 1991-09-17 | Modular Computer Systems, Inc. | Semaphore memory to reduce common bus contention to global memory with localized semaphores in a multiprocessor system |
US5101488A (en) * | 1989-05-02 | 1992-03-31 | Motorola, Inc. | Method for retrieving and updating data in a real-time data base system |
JP3134204B2 (ja) * | 1991-07-19 | 2001-02-13 | 株式会社日立製作所 | 情報検索用端末装置及び情報検索用端末装置における情報表示・入出力方法 |
US5161225A (en) * | 1989-10-23 | 1992-11-03 | International Business Machines Corporation | Persistent stream for processing time consuming and reusable queries in an object oriented database management system |
US5241671C1 (en) * | 1989-10-26 | 2002-07-02 | Encyclopaedia Britannica Educa | Multimedia search system using a plurality of entry path means which indicate interrelatedness of information |
US5062038A (en) * | 1989-12-18 | 1991-10-29 | At&T Bell Laboratories | Information control system |
WO1991012580A1 (en) * | 1990-02-08 | 1991-08-22 | Hewlett-Packard Company | Method and apparatus for graphical interrogation of a database |
US5265014A (en) * | 1990-04-10 | 1993-11-23 | Hewlett-Packard Company | Multi-modal user interface |
CA2055056C (en) * | 1990-12-10 | 1996-05-14 | Shih-Gong Li | Graphic definition of range in the selection of data from a database field |
JP2819517B2 (ja) * | 1990-12-17 | 1998-10-30 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データベース照会を行う方法およびシステム |
WO1992016903A1 (en) * | 1991-03-12 | 1992-10-01 | Wang Laboratories, Inc. | Database management system graphical query front end |
US5421008A (en) * | 1991-11-08 | 1995-05-30 | International Business Machines Corporation | System for interactive graphical construction of a data base query and storing of the query object links as an object |
FR2696853B1 (fr) * | 1992-10-12 | 1994-12-23 | Bull Sa | Procédé d'aide à l'optimisation d'une requête d'un système de gestion, de base de données relationnel et procédé d'analyse syntaxique en résultant. |
US5426781A (en) * | 1992-04-30 | 1995-06-20 | International Business Machines Corporation | Computerized report-based interactive database query interface |
US5428735A (en) * | 1992-12-28 | 1995-06-27 | International Business Machines Corporation | Method and apparatus for maintaining a record of set-creating data processing activities and associated data sets |
-
1993
- 1993-06-04 US US08/072,626 patent/US5911138A/en not_active Expired - Lifetime
-
1994
- 1994-05-06 EP EP94107108A patent/EP0627691B1/de not_active Expired - Lifetime
- 1994-05-06 DE DE69434096T patent/DE69434096T2/de not_active Expired - Lifetime
- 1994-05-06 AT AT94107108T patent/ATE280975T1/de not_active IP Right Cessation
- 1994-05-06 ES ES94107108T patent/ES2229210T3/es not_active Expired - Lifetime
- 1994-06-02 JP JP6120936A patent/JPH076179A/ja active Pending
- 1994-06-02 CN CN94107156A patent/CN1044415C/zh not_active Expired - Lifetime
- 1994-06-02 KR KR1019940012345A patent/KR0143357B1/ko not_active IP Right Cessation
- 1994-06-30 TW TW083105952A patent/TW378298B/zh not_active IP Right Cessation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130067387A1 (en) * | 2007-10-02 | 2013-03-14 | Lg Electronics Inc. | Mobile terminal and method of controlling the same |
US9507517B2 (en) * | 2007-10-02 | 2016-11-29 | Microsoft Technology Licensing, Llc | Mobile terminal and method of controlling the same |
DE102015014678A1 (de) | 2015-11-16 | 2017-05-18 | BAULINO Verlag GmbH | Bausanierungsplanverfahren |
Also Published As
Publication number | Publication date |
---|---|
CN1102897A (zh) | 1995-05-24 |
EP0627691A1 (de) | 1994-12-07 |
KR0143357B1 (ko) | 1998-08-17 |
EP0627691B1 (de) | 2004-10-27 |
ES2229210T3 (es) | 2005-04-16 |
DE69434096D1 (de) | 2004-12-02 |
US5911138A (en) | 1999-06-08 |
ATE280975T1 (de) | 2004-11-15 |
JPH076179A (ja) | 1995-01-10 |
CN1044415C (zh) | 1999-07-28 |
KR950001505A (ko) | 1995-01-03 |
TW378298B (en) | 2000-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69434096T2 (de) | Verfahren und System, um mit einer graphischen Benutzerschnittstelle in einer Datenbank zu suchen | |
DE19842688B4 (de) | Verfahren zum Filtern von Daten, die von einem Datenanbieter stammen | |
DE60016772T2 (de) | Verfahren und system für die publikation und revision von hierarchisch organisierten sätzen von statischen intranet- und internet-seiten | |
EP0910829B1 (de) | Datenbanksystem | |
DE69837772T2 (de) | Browser für hierarchische Strukturen | |
DE10135445B4 (de) | Integriertes Verfahren für das Schaffen einer aktualisierbaren Netzabfrage | |
DE69533193T2 (de) | Paralleles verarbeitungssystem zum durchlaufen einer datenbank | |
DE60130475T2 (de) | Durchführung von kalkulationen eines tabellenkalkulationstyps in einem datenbanksystem | |
DE19960043B4 (de) | Verfahren zum Navigieren in einer Baumstruktur | |
EP1311989B1 (de) | Verfahren zur automatischen recherche | |
DE60035432T2 (de) | System zur verwaltung der rdbm fragmentierungen | |
DE69628374T2 (de) | Datenverwaltungssystem | |
DE69719641T2 (de) | Ein Verfahren, um Informationen auf Bildschirmgeräten in verschiedenen Grössen zu präsentieren | |
DE19959765B4 (de) | Datei-Editor für mehrere Datenuntermengen | |
DE10120870A1 (de) | Navigieren in einem Index für den Zugriff auf eine mehrdimensionale Subjektdatenbank | |
DE4301766A1 (en) | Double sided flip over electronic page on screen graphics - has paper containing calendar on one side turned over by cursor movement to allow option selection | |
DE69632835T2 (de) | Verfahren zur automatischen verarbeitung von information über benutzerdaten | |
DE10121791B4 (de) | Verfahren und Vorrichtung für dynamische Web-Seitenanordnung | |
DE60310881T2 (de) | Methode und Benutzerschnittstelle für das Bilden einer Darstellung von Daten mit Meta-morphing | |
EP1159689A2 (de) | Such- und navigationseinrichtung für hypertext-dokumente | |
DE60127801T2 (de) | System und Methode zum Durchstöbern von knotenverbundenen Strukturen basierend auf einem geschätzten Interessegrad | |
DE602004003230T2 (de) | System und Verfahren in einer Datentabelle zur Erzeugung von rekursiven skalierbaren Vorlageninstanzen | |
DE19715723A1 (de) | Array-Verfahren | |
EP1224579A2 (de) | Verfahren zur behandlung von datenobjekten | |
DE602005002846T2 (de) | Verfahren zur Datenverarbeitung und assoziiertes Softwareprogramm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8328 | Change in the person/name/address of the agent |
Representative=s name: DUSCHER, R., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 7 |