-
Die Erfindung betrifft ein Verfahren
zur Speicherung eines Datenobjekts sowie ein entsprechendes Computerprogrammprodukt
und ein Computersystem.
-
Aus dem Stand der Technik ist es
bekannt Datenobjekte, wie z. B. Dateien, in einem strukturierten
Datei-System abzuspeichern. Beispielsweise beinhalten die Windows-Betriebssysteme
von Microsoft einen "Explorer", durch den die Struktur
des Datei-Systems visualisiert wird. Ein solches Datei-System ist
aus Dateien und Ordnern zusammengesetzt, welche einander zugeordnet
sind. Durch die Art der Zuordnung wird eine Baumstruktur, d. h.
ein so genannter "Filetree", definiert. Ein
Ordner kann dabei eine oder mehrere Dateien beinhalten. Ein Ordner kann
Teil eines weiteren Ordners sein, wodurch sich eine ineinander verschachtelte
Datei-Struktur definieren lässt.
-
Nachteilig bei solchen vorbekannten
Datei-Systemen ist, dass die Suche nach einem Datenobjekt nicht
intuitiv und daher aufwendig ist. Ferner gibt es beispielsweise
in den Windows-Betriebssystemen
eine Suchfunktion, die es erlaubt nach Dateien oder Ordnern zu suchen.
Dabei kann entweder nach dem Namen der Datei oder des Ordners gesucht werden
oder nach dem dort enthaltenen Text. Für die Suche kann ein bestimmter
Teil-Baum der Baumstruktur des Datei-Systems spezifiziert werden.
Die Suche verläuft
sequenziell in sämtlichen
Ordnern bzw. Dateien des Teil-Baums, in dem gesucht werden soll.
Dies führt
auf einem üblichen
Personalcomputer auch schon bei relativ geringen Datenmengen von Suchzeiten
im Minutenbereich.
-
Solche Filetrees werden auch in Engineering-Systemen,
z. B. für
den Entwurf und die Projektierung von Anlagen der Automatisierungstechnik
generiert. Über
einen solchen Filetree werden die Planungsinformationen, wie z.
B. Objekte oder Dateien zueinander in Beziehung gesetzt. Auch hier
gestaltet sich der Zugriff auf einzelne Daten oder deren Beziehungsinformation
als sehr aufwändig
und zeitintensiv, da beginnend von einem Einstiegspunkt der gesamte
und vermaschte Beziehungsbaum durchsucht werden muss. Hierbei spricht
man auch von einer Objektwolke.
-
Die Speicherung solcher Beziehungsinformationen
in Baumstrukturen erfolgt auch auf anderen Gebieten der elektronischen
Datenverarbeitung, z. B. zur Abbildung eines vernetzten Computersystems oder
zur Abbildung eines komplexen Dokuments, welches über so genannte
Hyperlinks mit anderen Dokumenten oder Objekten verknüpft ist.
-
Der Erfindung liegt daher die Aufgabe
zugrunde ein verbessertes Verfahren zur Speicherung eines Datenobjekts
sowie ein entsprechendes Computerprogrammprodukt und Computersystem
zu schaffen.
-
Die der Erfindung zugrunde liegende
Aufgabe wird mit den Merkmalen der unabhängigen Patentansprüche jeweils
gelöst.
Bevorzugte Ausführungsformen
der Erfindung sind in den abhängigen
Patentansprüchen
angegeben.
-
Die Erfindung ermöglicht die strukturierte Speicherung
eines Datenobjekts, welche ein schnelles und intuitives Wiederauffinden
des Datenobjekts unter verschiedenen Gesichtspunkten und Fragestellungen
ermöglicht.
Für die
Speicherung des Datenobjekts wird hierzu auf vorgegebene Objekttypen
und Beziehungsobjekttypen zurückgegriffen.
-
Nach einer bevorzugten Ausführungsform der
Erfindung werden die für
eine Anwendung vorkommenden Datenobjekte und deren Beziehungen untereinander
klassifiziert, um Objekttypen und Beziehungsobjekttypen zu definieren.
Diese Objekttypen und Beziehungsobjekttypen sind in einer Baumstruktur
miteinander vernetzt.
-
Bei der Speicherung eines Datenobjekts
wird dieses zumindest einem der Objekttypen und mindestens einem
der Beziehungsobjekttypen zugeordnet. Zu jedem der Objekttypen und
Beziehungsobjekttypen gibt es in dem Datei-System einen Ordner, so
dass für
die Speicherung des Datenobjekts in jedem der Ordner, die zu einem
zugeordneten Objekttypen oder Beziehungsobjekttypen gehören, eine Repräsentation
des Datenobjekts hinterlegt wird. Das bedeutet, dass ein Datenobjekt
in dem Daten-System nicht nur einmal vorhanden ist, sondern in verschiedenen
Ordnern, die Objekttypen und Beziehungsobjekttypen darstellen, symbolisch
in Form eines Links oder eines Datei-Symbols abgelegt ist. Dadurch ist ein
intuitiver und schneller Zugriff auf die Datenobjekte unter verschiedenen
Gesichtspunkten möglich.
-
Nach einer bevorzugten Ausführungsform der
Erfindung wird zur Speicherung eines Datenobjekts ein Dialogfenster
in einer grafischen Benutzerschnittstelle angezeigt. Über das
Dialogfenster kann – wie
aus dem Stand der Technik an sich bekannt – ein Dateiname vergeben werden.
Zusätzlich
wird in dem Dialogfenster eine Auswahlliste der Objekttypen und
der Beziehungsobjekttypen angezeigt. Beispielsweise durch Anklicken
kann der Benutzer die abzuspeichernde Datei einem oder mehreren
der Objekttypen und der Beziehungsobjekttypen zuordnen. Eine entsprechende
Zuordnung der Datei zu den Ordnern des Datei-Systems wird dann abgespeichert.
-
Nach einer weiteren bevorzugten Ausführungsform
der Erfindung erfolgt die Zuordnung von Datenobjekten zu Objekttypen
und Beziehungsobjekttypen programmunterstützt. Hierzu ist jedem Objekttyp
und jedem Beziehungsobjekttyp ein logisches Auswertekriterium zugeordnet.
Wenn ein Datenobjekt dieses logische Auswertekriterium erfüllt, gehört es damit
zu dem betreffenden Objekttypen bzw. Beziehungsobjekttypen.
-
Auf diese Art und Weise lassen sich
beispielsweise die Datenobjekte eines üblichen Explorer-Baums in eine
erfindungsgemäße Dateistruktur überführen, ohne
dass der Nutzer selbst eine Zuordnung vornehmen muss. Dies ist insbesondere
bei großen
Datenmengen, wie sie z. B. in Engineering-Systemen erzeugt werden,
von großem
Vorteil.
-
Nach einer weiteren bevorzugten Ausführungsform
der Erfindung wird die Zuordnung des Datenobjekts zu einem Objekttypen
durch die Dateiendung des Datenobjekts selbst angegeben. Beispielsweise
gibt es vorgegebene Dateiendungen für Textfiles, Grafikfiles, Tabellenfiles
usw., wobei die Dateiendung eindeutig den Dateityp angibt.
-
Im Weiteren werden bevorzugte Ausführungsformen
der Erfindung mit Bezugnahme auf die Zeichnung näher erläutert. Es zeigen:
-
1 ein
Ausführungsbeispiel
für miteinander
vernetzte Objekttypen und Beziehungsobjekttypen,
-
2 ein
Blockdiagramm einer Ausführungsform
eines erfindungsgemäßen Computersystems,
-
3 ein
Dialogfenster einer grafischen Benutzerschnittstelle,
-
4 ein
Flussdiagramm zur Überführung der
Datenobjekte eines Engineeringsystems in ein erfindungsgemäßes Datei-System.
-
Die 1 zeigt
eine Baumstruktur 100 als eine Ausführungsform eines erfindungsgemäßen Datei-Systems.
Die Baumstruktur beinhaltet Instanzen, d. h. Datenobjekte, der Objekttypen
A, B und C sowie der Beziehungsobjekttypen A, B, C, A/B und B/C. Diese
Art der strukturierten Abspeicherung ermöglicht ein schnelles und intuitives
Wiederauffinden der Daten.
-
Beispielsweise kann eine Fragestellung
sein, welche Instanz des Objekttypen B die Instanz C4 des Objekttyps
C benutzt. Um diese Fragestellung zu beantworten muss lediglich
der Beziehungsobjekttyp B/C durchsucht werden. Dort wird der Eintrag
B3-C4 gefunden, d. h. die Instanz B3 benutzt die Instanz C4.
-
Eine weitere Fragestellung kann sein,
ob es eine Beziehung zwischen der Instanz A2 des Objekttyps A und
der Instanz B1 des Objekttyps B gibt. Zur Beantwortung dieser Fragestellung
muss lediglich der Inhalt des Beziehungsobjekttyps A/B durchsucht werden.
Da dort kein entsprechender Eintrag vorhanden ist, gibt es also
eine solche Beziehung nicht.
-
Um z. B. auf den Inhalt der Instanz
C3 zuzugreifen, erfolgt der Einstieg über den Objekttypen C. Dort
wird C3 z. B. über
einen Hash-Algorithmus identifiziert.
-
2 zeigt
ein Blockdiagramm eines Computers 200. Der Computer 200 hat
einen Speicher 202 zur Speicherung verschiedener Objekttypen. Hierzu
ist in dem Speicher 202 eine Liste 204 für die vorgesehenen
Objekttypen vorhanden. Jeder Objekttyp ist in der Liste 204 über seine
Bezeichnung identifiziert sowie eine Beschreibung des Objekttyps.
Bei der Beschreibung des Objekttyps kann es sich um Klartext handeln
oder um eine logische Abfrage, wie z. B. ein Boolsches Kriterium,
um automatisch zu prüfen,
ob ein gegebenes Datenobjekt zu dem betreffenden Objekttypen gehört.
-
In einer weiteren entsprechenden
Liste 206 sind die Beziehungsobjekttypen mit deren Bezeichnungen
und Beschreibungen abgespeichert.
-
Der Computer 200 hat ein
Betriebssystem mit einer grafischen Benutzerschnittstelle 208.
Diese dient zur Visualisierung eines Datei-Systems 210 des Computers 200.
Das Datei-System 210 beinhaltet eine Anzahl von Ordnern 212, 214, 216, 218, 220,
..., wobei jeder der Ordner einem Objekttypen oder einem Beziehungsobjekttypen
eindeutig zugeordnet ist. Beispielsweise ist der Ordner 212 dem
Objekttypen A zugeordnet, der Ordner 214 dem Objekttypen B,
der Ordner 216 dem Objekttypen C, der Ordner 218 dem
Beziehungsobjekttypen A, der Ordner 220 dem Beziehungsobjekttypen
B, usw.
-
Der Ordner 212 beinhaltet
also eine Repräsentation
aller in dem Datei-System gespeicherten Datenobjekte, die als zu
dem Objekttypen A gehörend
klassifiziert worden sind. Bei dieser Repräsentation kann es sich z. B.
um ein übliches
Datei-Symbol handeln. Eine Datei kann dann z. B. durch Doppelklick
auf die Repräsentation
geöffnet
werden.
-
Entsprechend beinhaltet der Ordner 214 eine
Repräsentation
von Datenobjekten, die als zu dem Objekttypen B gehörend klassifiziert
worden sind.
-
Der Ordner 218 beinhaltet
eine Repräsentation
für jedes
Datenobjekt des Datei-Systems 210, welches zu dem Beziehungsobjekttypen
A gehörend klassifiziert
worden ist. Eine solche Klassifikation liegt dann vor, wenn das
betreffende Datenobjekt selbst eine Instanz des Objekttypen A ist
und mit einer weiteren Instanz des Objekttypen A eine Beziehung
aufweist.
-
Ferner sind in dem Datei-System 210 noch weitere,
der Übersichtlichkeit
halber in der 2 nicht
gezeigte Ordner vorhanden, z. B. für die Beziehungsobjekttypen
A/B und die Beziehungsobjekttypen B/C (vergleiche das Beispiel der 1).
-
Ein in dem Datei-System 210 gespeichertes Datenobjekt
kann also in dem durch die Ordner 212, 214, 216, 218, 220,
... gebildeten Filetree mehrfach vorkommen, da das betreffende Datenobjekt
einerseits einen bestimmten Objekttypen aufweist und andererseits
mit Instanzen desselben Objekttyps oder mit Instanzen anderer Objekttypen
in Beziehung steht und somit entsprechenden Beziehungsobjekttypen
zugeordnet ist. Für
das betrettende Datenobjekt ist also in einem der den Objekttypen
zugeordneten Ordnern eine Repräsentation
vorhanden wie auch in dem oder den Ordnern der Beziehungsobjekttypen, zu
denen das Datenobjekt gehört.
-
Um eine mehrfache Abspeicherung desselben
Datenobjekts in den verschiedenen Ordnern zu vermeiden, ist es vorteilhaft,
dass zur Repräsentation des
Datenobjekts in den verschiedenen Ordnern jeweils Zeiger auf die
entsprechenden Daten hinterlegt werden.
-
Die 3 zeigt
ein Dialogfenster 300 der grafischen Benutzerschnittstelle 208 der 2. Das Dialogfenster 300 erscheint,
wenn ein Benutzer ein Datenobjekt speichern möchte. Zur Speicherung des Datenobjekts
kann der Benutzer in dem Eingabefeld 302 einen Objektnamen
vergeben. Ferner erscheint in dem Dialogfenster 300 eine
Auswahlliste 304, die eine Auflistung sämtlicher vorgesehenen Objekttypen
und Beziehungsobjekttypen beinhaltet.
-
Jedem Objekttypen und Beziehungsobjekttypen
ist dabei ein Auswahlfeld zugeordnet, d. h. dem Objekttypen A das
Auswahlfeld 306, dem Objekttypen B das Auswahlfeld 308,
dem Objekttypen C das Auswahlfeld 310, usw. Die Zuordnung
des abzuspeichernden Datenobjekts zu einem Objekttypen und zu einem
oder mehreren der Beziehungsobjekttypen kann dann von dem Benutzer
so vorgenommen werden, dass er durch Anklicken eines Auswahlfelds
die Zuordnung vornimmt.
-
Wenn beispielsweise das Datenobjekt
zu dem Objekttypen A gehört,
so klickt der Benutzer das Auswahlfeld 306 an, sodass dort
z. B. ein Haken oder ein Kreuz erscheint. Entsprechend selektiert
der Benutzer einen oder mehrere der Beziehungsobjekttypen, zu denen
das Datenobjekt gehört.
Nach der Speicherung des Datenobjekts erscheinen dann Repräsentationen
des Datenobjekts in den entsprechenden Ordnern in dem Filetree 222 (vergleiche 2).
-
Die 4 zeigt
ein Flussdiagramm zur Überführung der
Daten eines Engineering-Systems in eine erfindungsgemäße Dateistruktur.
In dem Schritt 400 werden die Datenobjekte des Engineering-Systems
importiert. Diese Datenobjekte sind zunächst unstrukturiert und liegen
in Form einer Objektwolke vor. Die einzelnen Datenobjekte werden
dann in dem Schritt 410 gefiltert, um sie jeweils zu einem Objekttypen
und einem oder mehreren Beziehungsobjekttypen zuzuordnen. Dies kann
automatisch durch die Auswertung eines Booleschen Kriteriums erfolgen (vergleiche
Listen 204 und 206 der 2). In dem Schritt 412 werden die so
klassifizierten Datenobjekte dann in einem erfindungsgemäßen Datei-System abgelegt.
-
Eine weitere bevorzugte Anwendung
des erfindungsgemäßen Verfahrens
für Files
ist im Weiteren angegeben:
Objekttyp Textfiles: A, B, C
Objekttyp
Grafikfiles: DD, FG, TT
Objekttyp Tabellenfiles: XX, VV
Beziehungsobjekttyp
Textfiles, die Informationen anderer Textfiles enthalten: A-B, A-C
Beziehungsobjekttyp
Textfiles, die Grafikfileinformationen enthalten: A-D, C-TT usw.
-
Wird nun ein bestimmtes Textfile
gesucht, so müssen
nicht wie bei dem hierarchischen Aufbau alle Zweige durchsucht werden,
sondern es kann über den
Einstieg „Textfile" das Textfile mit
dem gesuchten Inhalt schneller gefunden werden. Dabei kann die Suche
auch in zwei Richtungen gleichzeitig erfolgen, nämlich hierarchisch und filetypenspezifisch.
Es kann also beispielsweise mit einem bestimmten Suchbegriff in
dem dem Objekttypen „Textfiles" zugeordneten Ordner
eine Suche mit einem Suchbegriff durchgeführt werden und gleichzeitig
in einem hierarchischen Explorer-Baum. Für den Fall, dass beide Verfahren
parallel betrieben werden, ergeben sich unter anderem die folgenden
Möglichkeiten:
- – der
Suchvorgang, der als erster zum Ziel führt, stoppt den jeweils anderen
Suchvorgang;
- – es
erfolgt eine Auswahl des Ordners in dem die Suche durchgeführt werden
soll nach der jeweiligen Fragestellung bzw. des jeweiligen Zugriffwunsches;
- – die
Auswahl des Ordners für
die Durchführung der
Suche kann von dem Nutzer vorgegeben werden oder von dem System
automatisch vorgenommen werden.