DE10113515A1 - Database system - Google Patents

Database system

Info

Publication number
DE10113515A1
DE10113515A1 DE10113515A DE10113515A DE10113515A1 DE 10113515 A1 DE10113515 A1 DE 10113515A1 DE 10113515 A DE10113515 A DE 10113515A DE 10113515 A DE10113515 A DE 10113515A DE 10113515 A1 DE10113515 A1 DE 10113515A1
Authority
DE
Germany
Prior art keywords
data
entry
database system
column
references
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.)
Withdrawn
Application number
DE10113515A
Other languages
German (de)
Inventor
Martin Goettmann
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bfm Building & Facility Man Gm
Original Assignee
Bfm Building & Facility Man Gm
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Bfm Building & Facility Man Gm filed Critical Bfm Building & Facility Man Gm
Priority to DE10113515A priority Critical patent/DE10113515A1/en
Priority to PCT/DE2002/000945 priority patent/WO2002075589A2/en
Priority to EP02729794A priority patent/EP1374100A2/en
Publication of DE10113515A1 publication Critical patent/DE10113515A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Abstract

The invention relates to a data bank system and a method for carrying out operations in a data bank system, whereby a plurality of data records can be stored in a memory of a computer. Each data record comprises a random number of data fields. The invention is characterised in that a data base of the data bank system comprises a table of values having multiple columns and a random number of lines, a table of contents for storing data field content, a table of attributes for storing data field attributes, and a table of objects for storing relationships between objects. In the table of values, each line corresponds to a data field of a data record; one column (txt) contains content references (TxtID) which can be multiply allocated for various data fields and which respectively clearly refer to an entry (TXT, TxtID) in the table of contents; another column (tag) contains attribute references (TagID) which can be multiply allocated for various data fields and which respectively clearly refer to an entry (TAG, TagID) in the table of attributes; and another column (obj) contains object references (ObjID) which can be multiply allocated for various data fields. The data fields respectively belonging to an object reference each form a data record and the object references (ObjID) respectively clearly refer to an entry (OBJ, ObjID) in the table of objects.

Description

Die vorliegende Erfindung betrifft ein Datenbanksystem, das insbesondere auf einer relationalen Datenbank basiert, bei dem eine Datenbasis, die aus einer Vielzahl von Datenfeldern besteht, gespeichert wird, und ein Verfahren zur Speicherung, Änderung und Anzeige der Datenbasis.The present invention relates to a database system that based in particular on a relational database in which a database, which consists of a large number of data fields, is stored, and a Procedure for storing, changing and displaying the database.

Unter dem Begriff Datenbank versteht man gemäß dem "Computer- Lexikon", 3. Aufl., 1998, S. 196 ff., erschienen im DTV Verlag, in der ursprünglichen Bedeutung einen strukturierten, inhaltlich zusammengehörigen Datenbestand, wie zum Beispiel Adressen, Kunden- oder Mitarbeiterdaten. Meist jedoch wird mit einer Datenbank das Anwendungsprogramm bezeichnet, das zur Verwaltung des Datenbestands dient. Die Daten selbst nennt man Datenbasis oder Datenbestand. Ein sogenanntes Datenbank-Managementsystem greift auf diese Datenbasis zu, zeigt Bestandteile der Datenbasis an, und ist fähig, die Datenbasis zu modifizieren und nach Bestandteilen zu suchen.According to the "computer Lexikon ", 3rd ed., 1998, p. 196 ff., Published by DTV Verlag, in the original Importance of a structured, content-related data stock, such as for example addresses, customer or employee data. Mostly, however, with one Database is the application program that is used to manage the Database serves. The data itself is called the database or database. A so-called database management system accesses this database, displays components of the database, and is able to modify the database and look for ingredients.

Bei bekannten Datenbanksystemen wird dabei die Datenbasis in strukturierter Form abgespeichert, gemäß dem Stand der Technik in Tabellenform. Eine Datenbasis besteht aus einer Reihe von Datensätzen, von denen sich jeder wiederum aus einer Reihe von Datenfeldern zusammensetzt. Bei einer Adreßdatenbank zum Beispiel entspricht jede Adresse einem Datensatz, und jeder Bestandteil der Adresse einem Feld.In known database systems, the database in structured form stored, according to the prior art in tabular form. A database consists of a series of data records, each of which is separate again composed of a number of data fields. At a Address database, for example, each address corresponds to a record, and everyone Part of the address of a field.

In der Fig. 1 ist ein herkömmlicher Datensatz 100 dargestellt, der aus einer Adreßdatenbank stammt. Der Datensatz 100 besteht aus den Datenfeldern 110 Nachname, Vorname, Straße, Ort und Telefon. Beim gezeigten Datensatz der Fig. 1 enthält das Feld Nachname den Namen Huber, das Feld Vorname die Angabe Henriette usw. Diese Datenfeldangaben 120 werden im nachfolgenden auch als Datenfeldinhalte bzw. lediglich Inhalte bezeichnet. In FIG. 1, a conventional data record 100 is shown, which comes from an address database. The data record 100 consists of the data fields 110 last name, first name, street, city and telephone. In the data record shown in FIG. 1, the last name field contains the name Huber, the first name field contains Henriette, etc. These data field details 120 are also referred to below as data field contents or merely contents.

Die Struktur der Datensätze wird beim Anlegen der Datenbasis festgelegt. Dazu gibt man an, aus welchen Datenfeldern sich ein Datensatz zusammensetzt und wieviel Platz für jedes Datenfeld reserviert werden soll. Bei einigen Programmen läßt sich die Struktur nachträglich ändern. So kann man Datenfelder einfügen oder den für ein Datenfeld reservierten Platz vergrößern oder verkleinern. Je nach der Definition der Datenbankstruktur werden dann die Daten für die einzelnen Datensätze eingegeben.The structure of the data records is changed when the database is created established. To do this, you specify which data fields make up a data record and how much space should be reserved for each data field. at The structure of some programs can be changed later. So you can Insert data fields or enlarge the space reserved for a data field or out. Depending on the definition of the database structure, the data is then entered for the individual data records.

Dies ist jedoch nicht immer so. Diese Art von strukturierter Abspeicherung der Daten bedeutet, daß für jede Ablage bzw. Abspeicherung von einem Datensatz vorausgesetzt wird, daß der Datensatz, der abzulegen bzw. abzuspeichern ist, in seiner Struktur zumindest mit einer Teilstruktur der Datenbank übereinstimmt. Soll aber ein Datensatz abgespeichert werden, der in seiner Struktur nicht den vorhandenen Datenstrukturen bzw. Teilen davon entspricht, so muß die Datenbank selbst um das neue Strukturelement (Feld/Felder) erweitert werden, bevor der Datensatz abgespeichert werden kann, d. h. in der Tabelle werden Spalten hinzugefügt. Dies kann zu Redundanzen führen, da die "alten" Datensätze eventuell keine Informationen bezüglich den neuen Spalten besitzen.However, this is not always the case. That kind of structured Storage of the data means that for each storage or storage of a data record is assumed that the data record to be stored or is to be saved in its structure, at least with a substructure of the database matches. However, if a data record is to be saved in its Structure does not correspond to the existing data structures or parts thereof, see above the database itself must be expanded with the new structure element (field / fields) before the record can be saved, d. H. in the table columns are added. This can lead to redundancies because the "old" Records may not have any information regarding the new columns.

Ein besonderes Problem stellt die Speicherung von Datensätzen mit einer neuen Datensatzstruktur dar. Diese Datensatzstruktur muß vom Anwender definiert werden. Hierfür sind Änderungen im Datenbank-Managementsystem und in den Anwendungsprogrammen, die mit dieser Datenbank arbeiten, nötig.The storage of data sets presents a particular problem a new data record structure. This data record structure must be created by the user To be defined. There are changes in the database management system and in the application programs that work with this database.

Zur Anzeige der Daten bieten die meisten Programme einen sogenannten Listenmodus (auch Browse-Modus genannt) und einen Formularmodus. Im Listenmodus werden alle bzw. ausgewählte Datensätze in tabellarischer Form angezeigt. Die Fig. 2 und 3 zeigen Beispiele solcher herkömmlichen tabellarisch angezeigten Datenbanken, wobei in Fig. 2 eine Datenbank, in der Kundenadressen gespeichert sind, und in Fig. 3 eine weitere Datenbank, in der einzelne Aufträge gespeichert sind, und die in Relation zur Kundendatenbank steht, dargestellt sind. In Fig. 2 sind mehrere vertikale Datensätze 200 dargestellt. In Fig. 3 steht jeder Datensatz 300 in einer eigenen Zeile, die Daten der einzelnen Felder sind spaltenweise angeordnet. In Fig. 2 ist die Bedeutung der Spalte mit der der Zeile vertauscht.Most programs offer a so-called list mode (also called browse mode) and a form mode for displaying the data. In list mode, all or selected data records are displayed in tabular form. Figs. 2 and 3 show examples of such conventional tabular databases displayed, being stored in Fig. 2 is a database in which customer addresses, and in Fig. 3, another database, are stored in the individual orders, and in relation to the customer database stands, are shown. A plurality of vertical data records 200 are shown in FIG. 2. In Fig. 3, each record 300 is on a separate line, the data of the individual fields are arranged in columns. In Fig. 2 the importance of the column is interchanged with that of the line.

Die herkömmliche Datenbank kann nach einzelnen Datensätzen oder nach solchen Datensätzen durchsucht werden, die einem oder mehreren Kriterien entsprechen. Die Kriterien lassen sich gewöhnlich über Operatoren wie <, <, = , UND (AND), ODER (OR) oder NICHT (NOT) festlegen und miteinander verknüpfen - also zum Beispiel alle mit Namen Müller aus München; alle Müller, die nicht in München wohnen; alle Müller aus München und alle Schmidt aus Hamburg. Die gefundenen Datensätze können angezeigt oder in Listen- oder Formularform ausgedruckt werden. Im Formularmodus wird jeweils nur ein Datensatz angezeigt.The conventional database can search for individual records or searches for such records that meet one or more criteria correspond. The criteria can usually be set using operators such as <, <, =, Determine AND (AND), OR (OR) or NOT (NOT) and link them together - So for example all with the name Müller from Munich; all millers who are not in Munich live; all millers from Munich and all Schmidt from Hamburg. The found records can be displayed or in list or form form can be printed out. Only one record is displayed in form mode.

Für die Anzeige bzw. den Ausdruck lassen sich die Datensätze nach einem oder mehreren Feldern sortieren. Bei vielen Programmen muß dazu für die zu sortierenden Felder ein sogenannter Index angelegt werden. Der Index wird meist in einer eigenen Datei gespeichert und beschleunigt Sortier- und Suchvorgänge.The data records can be read for display or printing sort one or more fields. In many programs this must be done for the fields to be sorted, a so-called index is created. The index will usually saved in a separate file and speeds up sorting and Searches.

Einige Datenbankprogramme erlauben es, sehr komplexe Datenbanken zu erstellen, die von anderen Anwendern benutzt werden können, obwohl diese Anwender gar nicht über das Datenbankprogramm verfügen.Some database programs allow very complex databases to create that can be used by other users, although this Users do not have the database program at all.

Datenbanken, die auf einer festen Struktur basieren, eignen sich gut zur Verwaltung von Daten, die immer gleich oder zumindest sehr ähnlich aufgebaut sind. Zur Verwaltung unstrukturierter Daten oder von Daten mit inhomogener Struktur sind sie kaum geeignet. Bereits eine Datenbank mit Daten unterschiedlicher Länge läßt sich nicht mit jedem Datenprogramm anlegen. Manche herkömmlichen Programme bieten dafür sogenannte Memo-Felder an, deren Längen meist mehrere KByte umfassen darf. Sind mehrere derartige Felder erforderlich oder sollte eine Strukturierung nicht möglich sein, benötigt man ein textorientiertes Datenbankprogramm, eine sogenannte Volltext-Datenbank, das die unstrukturierte Dateneingabe erlaubt und dennoch das Selektieren und Verknüpfen von Datensätzen ermöglicht.Databases that are based on a fixed structure are well suited for Management of data that is always the same or at least very similar are. For managing unstructured data or data with inhomogeneous They are hardly suitable for structure. Already a database with data different lengths cannot be created with every data program. Some conventional programs offer so-called memo fields for this Lengths can usually be several KByte. Are several such fields required or if structuring is not possible, one is required text-oriented database program, a so-called full-text database, which the  Unstructured data entry allowed and still the selection and linking of records.

Eine Alternative für derartige Aufgabenstellungen sind objektorientierte Datenbanken. Ein wesentliches Unterscheidungskriterium bei Datenbanken und gleichzeitig ausschlaggebend für die Leistungsfähigkeit des Programms ist das verwendete Datenbankmodell, das auch als Datenmodell bezeichnet wird und die Beziehungen der einzelnen Daten definiert. Im nachfolgenden werden zwei Datenmodelle genauer beschrieben.An alternative for such tasks are object-oriented Databases. An essential distinguishing criterion for databases and at the same time, this is crucial for the performance of the program used database model, which is also called data model and which Relationships of the individual data defined. The following are two Data models described in more detail.

Zum einen gibt es das hierarchische Datenmodell. In einer derartigen Datenbank sind die einzelnen Datensätze in einer Baumstruktur gespeichert, ähnlich wie bei einem hierarchischen Dateisystem. Dieses Datenmodell ist weit verbreitet. Werden zwei Daten verknüpft, so kann man jedem Datensatz der einen Datenbank genau einen Datensatz der anderen Datenbank zuordnen; mehrere gleichzeitig bestehende Verknüpfungen sind nicht erlaubt. Das hierarchische Datenmodell ist nur schwer mit typischen in der Praxis vorkommenden Datenstrukturen vereinbar. Beispielsweise könnten in einer Datenbank die einzelnen Mitarbeiter - aufgegliedert nach Abteilungen und Projekten - gespeichert werden. Doch in der Praxis kommt es häufig vor, daß einzelne Mitarbeiter für verschiedene Abteilungen und an mehreren Projekten arbeiten.On the one hand there is the hierarchical data model. In one Database, the individual records are stored in a tree structure, similar to a hierarchical file system. This data model is wide common. If two data are linked, each data record can be linked to one Assign the database exactly one record to the other database; several concurrent connections are not allowed. The hierarchical Data model is difficult with typical ones occurring in practice Data structures compatible. For example, in a database individual employees - broken down by departments and projects - saved become. However, in practice it often happens that individual employees work for different departments and work on several projects.

Ein weiteres häufig benutztes Datenmodell stellt die relationale Datenbank dar. Grundlage dieses Modells ist eine tabellenartige Struktur. Jede Zeile der Tabelle stellt einen Datensatz dar, der auch Tupel genannt wird; die einzelnen Spalten enthalten die Datenfelder. Bei derartigen Datenbanken kann man eine Beziehung, also eine Relation, zwischen verschiedenen Datenbeständen aufbauen. So könnte zum Beispiel eine Kundendatenbank mit einer Datenbank verknüpft werden, in der die eingegangenen Aufträge gespeichert sind (vgl. Fig. 2 und 3), und für jeden bzw. für ausgewählte Kunden die Adresse und die jeweiligen Aufträge angezeigt werden. Für komplexere Anwendungen, zum Beispiel bei der Auftragsabwicklung in Firmen, sind derartige Datenbanken unerläßlich. Another frequently used data model is the relational database. The basis of this model is a table-like structure. Each row of the table represents a data record, which is also called a tuple; the individual columns contain the data fields. With such databases, one can establish a relationship, that is, a relationship, between different databases. For example, a customer database could be linked to a database in which the orders received are stored (see FIGS. 2 and 3), and the address and the respective orders are displayed for each or for selected customers. Such databases are indispensable for more complex applications, for example in order processing in companies.

Probleme ergeben sich bei der Einführung zusätzlicher Datenwerte oder Datenobjekte, die umfangreiche Änderungen an der Tabellendefinition erforderlich machen. Die relationale Datenbank führt bei ähnlichen Datenobjekten zu redundanten Inhalten, denen zum Teil durch die Auslagerung und Referenzierung in weiteren Tabellen begegnet wird, ohne diese vollständig zu unterbinden.Problems arise when introducing additional data values or Data objects that require extensive changes to the table definition do. The relational database leads to similar data objects redundant content, partly through outsourcing and referencing is encountered in other tables without completely preventing them.

Eine Aufgabe der Erfindung ist es, ein Datenbanksystem vorzusehen, das keine Beschränkung bezüglich der Inhalte aufweist und im Hinblick auf Erweiterungen der Datenstrukturen und der Übertragbarkeit auf andere relationale Datenbanksysteme verschiedener Hersteller ohne Änderung der Tabellendefinitionen erweiterbar ist.An object of the invention is to provide a database system that has no content or restrictions Extensions of the data structures and the transferability to other relational ones Database systems from different manufacturers without changing the Table definitions is expandable.

Eine weitere Aufgabe ist es, Redundanzen vollständig zu vermeiden.Another task is to completely avoid redundancies.

Des weiteren soll ein Verfahren vorgesehen werden, das es erlaubt, Operationen in einem Datenbanksystem durchzuführen, das die oben beschriebenen Probleme löst.Furthermore, a method is to be provided which allows Perform operations in a database system that does the above solves the problems described.

Die Lösung der oben beschriebenen Probleme findet sich in den beigefügten Ansprüche wieder, wobei die vorliegende Erfindung durch die unabhängigen Ansprüche definiert wird. Bevorzugte Ausführungsformen werden in den abhängigen Ansprüchen beschrieben.The solution to the problems described above can be found in appended claims, wherein the present invention by independent claims is defined. Preferred embodiments are in the dependent claims described.

Die vorliegende Erfindung, deren Merkmale, Verwendungszwecke und Vorteile werden aus der folgenden Beschreibung der bevorzugten Ausführungsformen, wie sie in den beigefügten Zeichnungen veranschaulicht sind, deutlicher werden.The present invention, its features, uses and Advantages will be preferred from the following description Embodiments as illustrated in the accompanying drawings, become clearer.

Fig. 1 zeigt einen herkömmlichen Datensatz aus einer Adreßdatenbank. Fig. 1 shows a conventional data record from an address database.

Fig. 2 zeigt eine herkömmliche tabellarische Datenbank, in der Kundenadressen gespeichert sind. Fig. 2 shows a conventional tabular database in which customer addresses are stored.

Fig. 3 zeigt eine weitere herkömmliche Datenbank, in der einzelne Aufträge gespeichert sind und die eine Relation zur Kundendatenbank der Fig. 2 aufweist. FIG. 3 shows a further conventional database in which individual orders are stored and which has a relationship to the customer database of FIG. 2.

Fig. 4 zeigt eine Ausführungsform der vorliegenden Erfindung. Fig. 4 shows an embodiment of the present invention.

Fig. 5 zeigt eine vierspaltige Wertetabelle gemäß der vorliegenden Erfindung. Fig. 5 shows a four-column table of values according to the present invention.

Fig. 6 zeigt eine Objekttabelle gemäß der vorliegenden Erfindung. Fig. 6 shows an object table according to the present invention.

Fig. 7 zeigt eine Attributtabelle gemäß der vorliegenden Erfindung. Fig. 7 shows an attribute table according to the present invention.

Fig. 8 zeigt eine Inhaltstabelle gemäß der vorliegenden Erfindung. Fig. 8 shows a table of contents according to the present invention.

Fig. 9 zeigt hierarchisch gegliederte Ortsbezüge. Fig. 9 shows hierarchically structured local references.

Die Fig. 4 veranschaulicht eine Ausführungsform der vorliegenden Erfindung. Im erfindungsgemäßen Datenbanksystem werden mehrere Tabellen zur Festlegung eines Datenfelds eines Objekts verwendet. Man beachte, daß hier von einem Datenfeld eines Objekts und nicht von einem Datenfeld eines Datensatzes gesprochen wird. Im nachfolgenden ist ein Objekt äquivalent zu einem oder mehreren herkömmlichen Datensätzen. Um eine größtmögliche Flexibilität zu erreichen, was die Anzahl und den Inhalt der Datenfelder betrifft, muß man sich von der Vorstellung des herkömmlichen Datensatzes lösen. Der herkömmliche Datensatz war dadurch gekennzeichnet, daß er beispielsweise einer Zeile in einer relationalen (tabellarischen) Datenbankbasis entsprach, wobei die Anzahl der zum Datensatz gehörigen Datenfelder durch die Anzahl der Spalten der Datenbasis bestimmt war. Die möglichen Inhalte, die Reihenfolge und das Datenformat eines Datenfelds war durch die Spalte, die Spaltenreihenfolge und die Spalteneinheit festgelegt. So konnte man beispielsweise in einem Datenfeld, in dem beispielsweise Vornamen abgespeichert wurden, keine Telefonnummer eingeben, da als Eingabe Buchstaben und nicht Ziffern erwartet wurden. Um sich von dieser Vorstellung zu lösen, wird der Begriff Datensatz durch den Begriff Objekt substituiert. Unter einem Objekt ist alles zu verstehen, was im jeweiligen Anwendungsbereich sinnvollerweise in einer Datenbank zu archivieren ist. Fig. 4 illustrates an embodiment of the present invention. In the database system according to the invention, several tables are used to define a data field of an object. Note that this is a data field of an object and not a data field of a data record. In the following, an object is equivalent to one or more conventional data records. In order to achieve the greatest possible flexibility in terms of the number and content of the data fields, one has to move away from the idea of the conventional data set. The conventional data record was characterized in that it corresponded, for example, to a line in a relational (tabular) database base, the number of data fields belonging to the data record being determined by the number of columns in the database. The possible content, the order and the data format of a data field was determined by the column, the column order and the column unit. For example, you could not enter a phone number in a data field in which, for example, first names were saved, since letters and not numbers were expected as the input. In order to break away from this idea, the term data record is substituted by the term object. An object is to be understood as everything that is usefully archived in a database in the respective area of application.

Angenommen eine große Bibliothek möchte ihr Inventar in Form einer relationalen Datenbank elektronisch abrufbar abspeichern. Dabei sollen aber nicht nur die Bücher der Bibliothek, sondern auch jede andere Gegenstand wie etwa Stühle, Tische, Regale usw. erfaßt werden. Als weitere Gegenstände sind sogar Verträge denkbar, die die Bibliothek mit anderen Bibliotheken über die Leihe von Büchern getroffen hat. All diese Gegenstände sind Objekte. Die Objekte lassen sich verschiedenen Objekttypen zuordnen, die vom Benutzer der erfindungsgemäßen Datenbank beliebig erstellt werden können. Beispielsweise könnten alle Taschenbücher, Lexika, Romane, Sachbücher oder ähnliches als Objekte zum Objekttyp Buch gehören. Tische, Stühle und Regale könnten zum Objekttyp Möbel gehören.Suppose a large library wants its inventory in the form of a Save the relational database electronically. But not supposed to just the books of the library, but also any other subject such as Chairs, tables, shelves, etc. can be detected. As more items are even Contracts conceivable that the library with other libraries on the loan of Books. All of these objects are objects. The objects can be assign different object types by the user of the invention Database can be created arbitrarily. For example, everyone could Paperbacks, lexicons, novels, non-fiction or similar as objects for Object type include book. Tables, chairs and shelves could be furniture belong.

Es ist leicht verständlich, daß Objekte unterschiedliche Eigenschaften aufweisen. So hat beispielsweise der Objekttyp Buch die Eigenschaften Autor, Erscheinungsjahr, Verlag usw. Der Objekttyp Möbel dagegen kann sich beispielsweise durch Eigenschaften wie Preis, Breite, Höhe, Tiefe oder ähnliches auszeichnen.It is easy to understand that objects have different properties exhibit. For example, the Book object type has the Author properties, Year of publication, publisher, etc. The object type furniture, however, can for example through properties such as price, width, height, depth or the like distinguished.

Würde man diese Objekte als Datensätze in eine herkömmliche Tabelle eintragen, wobei jeder Datensatz alle Eigenschaften aller möglichen Objekte in Form eines Datenfeldes beinhalten würde, d. h. für jede unterschiedliche Objekteigenschaft müßte eine Spalte in der herkömmlichen tabellarischen Datenbank erzeugt werden, würde dies zu einer Tabelle erheblicher Größe führen. Nur so wäre gewährleistet, daß ein beliebiger Gegenstand, egal zu welchem Objekttypen er gehört, in der Datenbank aufgenommen werden kann. Dies führt auch zwangsweise zu einer erheblichen Vielzahl von Redundanzen.One would place these objects as records in a conventional table enter, with each record having all properties of all possible objects in Form of a data field, i.e. H. for each different Object property would have a column in the conventional tabular Database would be created, this would lead to a table of considerable size. This is the only way to ensure that any object, no matter what  Object types he heard can be recorded in the database. this leads to also forcing a considerable number of redundancies.

Eine andere Möglichkeit, dieses Problem zu lösen, wäre es, verschiedene Datenbanktabellen anzulegen, wobei für jeden Objekttyp eine eigene Tabelle angelegt werden müßte.Another way to solve this problem would be create different database tables, one for each object type Table should be created.

Durch die oben beschriebenen erfindungsgemäßen Objekte lassen sich diese Probleme umgehen. Jedes herkömmliche Datenfeld (d. h. Eigenschaft eines Objekts) wird in der erfindungsgemäßen Datenbank gemäß einer Ausführungsform als Zeile in einer vierspaltigen sogenannten Wertetabelle abgespeichert. In der Fig. 4 ist die Wertetabelle 400 in der Mitte dargestellt. Die vier Spalten der Wertetabelle 400 sind schematisch durch die vier Referenzen WertID 472, txt 463, tag 433 und obj 443 veranschaulicht. Die mit "txt" bezeichnete Spalte 463 referenziert auf eine Inhaltstabelle 460, die ebenfalls zwei Spalten 461 und 462 aufweist, die mit "TXT" und "TxtID" bezeichnet werden. Die mit "tag" bezeichnete Spalte 433 referenziert auf eine Attributtabelle 430, die zwei Spalten 431 und 432 aufweist, die mit "TAG" und "TagID" bezeichnet werden. Die mit "obj" bezeichnete Spalte 443 referenziert auf eine Objekttabelle 440, die zwei Spalten 441 und 442 aufweist, die mit "OBJ" und "ObjID" bezeichnet werden. Die mit "WertID" bezeichnete Spalte 472 dient zur durchlaufenden Numerierung und ist für die Funktionalität der Datenbank nicht zwingend erforderlich.These problems can be avoided by the objects according to the invention described above. Each conventional data field (ie property of an object) is stored in the database according to one embodiment as a row in a four-column so-called value table. In FIG. 4, the table of values is shown in the middle of the 400th The four columns of the value table 400 are schematically illustrated by the four references WertID 472 , txt 463, tag 433 and obj 443. Column 463 labeled "txt" references a content table 460 , which also has two columns 461 and 462 , which are labeled "TXT" and "TxtID". Column 433 labeled "tag" references an attribute table 430 that has two columns 431 and 432 that are labeled "TAG" and "TagID". Column 443, labeled "obj", references an object table 440 that has two columns 441 and 442 , which are labeled "OBJ" and "ObjID". Column 472 labeled "WertID" is used for continuous numbering and is not absolutely necessary for the functionality of the database.

In Fig. 5 ist eine Wertetabelle 500, die in ihrer Struktur der Wertetabelle 400 der Fig. 4 entspricht, in größerem Detail dargestellt. Die Wertetabelle 500 wird aus vier Spalten gebildet. Eine Spalte 572, die mit "WertID" bezeichnet ist, beinhaltet laufende Nummern. Die laufenden Nummern kennzeichnen ein Datenfeld eineindeutig, d. h. jedem Datenfeld wird eine einzige Nummer zugeordnet und umgekehrt. Die mit "txt" bezeichnete Spalte 563 beinhaltet Inhaltsreferenzen, die mehrfach für verschiedene Datenfelder vergeben sein können und jeweils eindeutig auf einen Eintrag in der Inhaltstabelle 460 der Fig. 4 referenzieren. Vereinfacht gesagt, in den jeweiligen Feldern dieser Spalte befinden sich Zeiger, die auf den Inhalt des jeweiligen Datenfelds wie beispielsweise den Vornamen Max zeigen. Dieser Vorname kann jedoch für mehrere Personen, die in der Datenbank abgespeichert sind, vergeben sein. Genauso gut könnte "Max" aber auch als Nachname, Firmenname oder als sonstige Bezeichnung benutzt werden. Somit erklärt sich, daß die Inhaltsreferenzen von verschiedenen Datenfeldern auf einen identischen Eintrag in der Inhaltstabelle verweisen können. Eine mit "tag" bezeichnete Spalte 533 beinhaltet Attributreferenzen, die mehrfach für verschiedene Datenfelder vergeben sein können und ebenfalls eindeutig auf einen Eintrag in der Attributtabelle 430 der Fig. 4 referenzieren. Ähnlich wie bei der zweiten Spalte sind die Felder der dritten Spalte äquivalent zu Zeigern, die auf Datenfeld- bzw. Objekteigenschaften (d. h. beispielsweise auf Feldnamen 110 der Fig. 1) bzw. -attribute referenzieren. Eine Inhaltstabelle ist im Detail in der Fig. 8 dargestellt, auf die später genauer eingegangen werden wird. Jedoch ist klar, daß auch die Attribute von verschiedenen Objekten, die jedoch zum selben Objekttyp gehören, mehrfach auftreten können, wodurch bildhaft gesprochen mehrere Zeiger aus der dritten Spalte auf einen identischen Eintrag in der Attributtabelle zeigen können. Eine mit "obj" bezeichnete Spalte 543 der Wertetabelle 500 in der Fig. 5 beinhaltet Objektreferenzen, die mehrfach für verschiedene Datenfelder vergeben sein können und jeweils eindeutig auf einen Eintrag in der Objekttabelle 440 der Fig. 4 referenzieren. Ähnlich wie bei den beiden vorangegangenen Spalten stellen die Felder der "obj"-Spalte Zeiger dar, die auf ein in der Objekttabelle gespeichertes Objekt zeigen. Auch hier können mehrere Zeiger auf ein und dasselbe Objekt deuten. Dies wird klar, wenn man bedenkt, daß ein Objekt mehrere verschiedene Eigenschaften haben kann, d. h. mehrere Kombinationen aus ein und demselben Element der Spalte "obj" 543 mit mehreren verschiedenen Elementen der dritten Spalte "tag" 533 wie etwa Buch - Autor, Buch - Erscheinungsjahr oder ähnliches sind vorstellbar. FIG. 5 shows a value table 500 , which corresponds in structure to the value table 400 of FIG. 4, in greater detail. The value table 500 is formed from four columns. Column 572 , labeled "ValueID", contains sequential numbers. The serial numbers uniquely identify a data field, ie each data field is assigned a single number and vice versa. Column 563 , designated "txt", contains content references that can be assigned several times to different data fields and each clearly refer to an entry in the content table 460 in FIG. 4. Put simply, the respective fields in this column contain pointers that point to the content of the respective data field, such as the first name Max. However, this first name can be assigned to several people who are stored in the database. "Max" could just as well be used as a surname, company name or other name. This explains why the content references from different data fields can refer to an identical entry in the content table. A column 533 labeled "tag" contains attribute references that can be assigned several times to different data fields and also uniquely refer to an entry in the attribute table 430 of FIG. 4. Similar to the second column, the fields of the third column are equivalent to pointers that reference data field or object properties (ie, for example, field names 110 of FIG. 1) or attributes. A table of contents is shown in detail in FIG. 8, which will be discussed in more detail later. However, it is clear that the attributes of different objects which, however, belong to the same object type, can occur more than once, which means that, figuratively speaking, several pointers from the third column can point to an identical entry in the attribute table. A column 543 of the value table 500 in FIG. 5 labeled "obj" contains object references which can be assigned multiple times for different data fields and each uniquely reference an entry in the object table 440 of FIG. 4. Similar to the two previous columns, the fields of the "obj" column are pointers that point to an object stored in the object table. Again, multiple pointers can point to the same object. This becomes clear when you consider that an object can have several different properties, ie several combinations of one and the same element of the "obj" column 543 with several different elements of the third column "tag" 533 such as book - author, book - Year of publication or similar are conceivable.

In den Fig. 6, 7 und 8 sind die in der Fig. 4, mit Ausnahme der Wertetabelle 400, dargestellten Tabellen im Detail mit Beispieleinträgen gezeigt. Die Zusammenhänge mit der in der Fig. 5 dargestellten Wertetabelle 500 werden nun ausführlich beschrieben werden. In FIGS. 6, 7 and 8 are shown in Fig. 4, with the exception of the value table 400, tables shown in detail with sample entries. The relationships with the value table 500 shown in FIG. 5 will now be described in detail.

In Fig. 6 ist eine Objekttabelle 640 gezeigt, die Beispielwerte beinhaltet und in ihrer Funktionalität der Objekttabelle 440 der Fig. 4 entspricht. Die Objekttabelle 640 ist zweispaltig aufgebaut. Eine erste Spalte 641 wird mit "OBJ" bezeichnet. Eine zweite Spalte 642 wird mit "ObjID" bezeichnet. Die Einträge der Objekttabelle 640 bestehen aus zwei Eintragungsteilen, nämlich einem ersten Eintragsteil entsprechend einem Element der ersten Spalte "OBJ", der einen Bezug zu einem anderen Objekt darstellt, und aus einem zu diesem ersten Eintragsteil gehörigen zweiten Eintragsteil entsprechend der Spalte "ObjID". Auf den zweiten Eintragsteil des (allgemeinen) Typs "ID" wird aus der "obj"-Spalte der Wertetabelle 500 der Fig. 5 verwiesen. Auf die Funktionalität des ersten Eintragsteils, entsprechend der Spalte 641 "OBJ" wird im folgenden näher eingegangen werden. FIG. 6 shows an object table 640 which contains example values and whose functionality corresponds to the object table 440 of FIG. 4. The object table 640 is constructed in two columns. A first column 641 is labeled "OBJ". A second column 642 is called "ObjID". The entries in the object table 640 consist of two entry parts, namely a first entry part corresponding to an element of the first column "OBJ", which represents a reference to another object, and a second entry part belonging to this first entry part corresponding to the "ObjID" column. The second entry part of the (general) type "ID" is referred to from the "obj" column of the value table 500 in FIG. 5. The functionality of the first entry part, corresponding to column 641 "OBJ", will be discussed in more detail below.

Über die Objekttabelle 640 wird nicht nur ein Objekt (im Sinne eines beliebigen Gegenstands im Beispiel der Bibliothek) eindeutigt gekennzeichnet, sondern auch gleichzeitig ein Bezug zu einem hierarchisch angeordneten Bezugssystem hergestellt. Dieses hierarchisch angeordnete Bezugssystem kann beispielsweise auf einem räumlichen Bezugssystem wie etwa den XYZ-Koordinaten eines Objekts basieren. Im oben genannten Beispiel der Bibliothek könnte das Ortsbezugssystem auch das Gebäude der Bibliothek als solches sein. Das Gebäude wiederum läßt sich untergliedern in einzelne Etagen bzw. Stockwerke. Diese Stockwerke kann man in einzelne Zimmer aufteilen. Die eben durchgeführte Gliederung hat sich jeweils auf die nächstkleinere örtliche Einheit bezogen. Genausogut ist eine Erweiterung des Bezugssystems denkbar, indem man vom Gebäude zur Stadt, zum Land usw. geht. Die Ortsbezüge sind eine hierarchische Gliederung eines Ortes, der eine Auskunft über das "Wer" und "Wo" gibt, d. h. welches Objekt sich an welchem Ort befindet.The object table 640 not only uniquely identifies an object (in the sense of any object in the example of the library), but also simultaneously creates a reference to a hierarchically arranged reference system. This hierarchically arranged reference system can for example be based on a spatial reference system such as the XYZ coordinates of an object. In the example of the library mentioned above, the location reference system could also be the building of the library as such. The building in turn can be divided into individual floors. These floors can be divided into individual rooms. The structure just carried out referred to the next smaller local unit. An expansion of the reference system is equally conceivable by going from the building to the city, the country, etc. The location references are a hierarchical structure of a location that provides information about the "who" and "where", ie which object is located at which location.

In dem in der Fig. 6 dargestellten Beispiel der Objekttabelle 640 gibt es zwei verschiedene Eintragstypen für den ersten Eintragsteil, der einem Element der Spalte 641 "OBJ" entspricht. Dies ist einmal der Typ "Parent =" und zum anderen der Typ "Ref =". Der Bezugstyp Parent trifft eine Aussage bezüglich der hierarchischen Anordnung der Objekte. Das höchste Objekt in der Objekthierarchie trägt die Objekt-ID "0". Dem sogenannten Ursprungsobjekt mit der ObjID "0" können keine Objekte gleicher hierarchischer Ordnung zugewiesen werden. Der Bezugstyp Parent gibt somit in der Regel Auskunft über die nächsthöhere Hierarchie bezüglich eines Objekts. Beispielsweise ist von einem Buch mit der Objekt-ID "10" bekannt (siehe Fig. 6), daß es sich im ersten Geschoß der Bibliothek befinden muß, da der in der Objekttabelle 640 eingetragene Bezug zur Objekt-ID "10" lautet: "Parent = 9". Das bedeutet, es wird auf die Objekt-ID "9" verwiesen, zu der der Bezug "Parent = 0" gehört, d. h. hierin ist die Information zu sehen, daß das Buch sich im ersten Geschoß (Parent = 9) der Bibliothek (ObjID "9" → Parent = 0) befindet, wenn die Bibliothek als solche den höchsten hierarchischen Bezug, nämlich das Objekt mit der Objekt-ID "0", darstellt.In the example of the object table 640 shown in FIG. 6, there are two different entry types for the first entry part, which corresponds to an element of the column 641 "OBJ". This is the "Parent =" type and the "Ref =" type. The reference type parent makes a statement regarding the hierarchical arrangement of the objects. The highest object in the object hierarchy has the object ID "0". Objects of the same hierarchical order cannot be assigned to the so-called original object with ObjID "0". The Parent reference type usually provides information about the next higher hierarchy with regard to an object. For example, it is known from a book with the object ID "10" (see FIG. 6) that it must be on the first floor of the library, since the reference to the object ID "10" entered in the object table 640 is: " Parent = 9 ". This means that reference is made to the object ID "9", to which the reference "Parent = 0" belongs, ie this contains the information that the book is on the first floor (Parent = 9) of the library (ObjID "9" → Parent = 0) if the library as such represents the highest hierarchical reference, namely the object with the object ID "0".

Die beiden eben genannten Bezugstypen "Parent =" und "Ref =" dienen lediglich der Vereinfachung der optischen Unterscheidung. Man kann diese auch weglassen, wobei jedoch die ihnen zugeordnete Ziffer, sprich die ObjID zwingend erforderlich ist.The two reference types just mentioned "Parent =" and "Ref =" are used just simplifying the visual distinction. You can do this too omit, but the number assigned to them, i.e. the ObjID mandatory is required.

Mit anderen Worten, jedes Objekt hat im Falle eines räumlichen Bezugssystems genau einen Ortsbezug, d. h. einen zu referierenden Vater ("Ref = . . ."). Allgemein gesprochen gibt es zu einem Objekt einen logischen Bezug, der das Objekt einem logischen Bezugssystem zuordnet. Jedoch wird der Ortsbezug der Objekte selbst wiederum als Objekt im System gespeichert und besitzt eine Referenz auf seinen "hierarchischen" Vater ("Parent = . . ."). Somit entsteht für Ortsobjekte eine einfache verkettete Liste mit anderen Ortsobjekten als Endknotenpunkte. Objekte auf der ersten Hierarchieebene verweisen auf einen sogenannten virtuellen Vater mit der ID = 0. Jedoch können mehrere Objekte einem Ort zugewiesen werden. Dies geschieht grundsätzlich durch den Bezug vom Typ "Ref = . . .". In der Objekttabelle 640 der Fig. 6 sind beispielsweise die drei Objekte mit den Objekt-IDs 26, 28 und 29 dem (Orts-)Objekt mit der Objekt-ID "45" zugewiesen. Das Objekt mit der ID = 45 ist durch den Ortsbezug "Parent = 10" dem (Orts-)Objekt mit der Objekt-ID "10" unterstellt, welches selbst wiederum dem (Orts- )Objekt 9 unterstellt ist. Das Objekt mit der Objekt-ID "9" ist dann schließlich dem virtuellen Vater mit der ID 0 unterstellt.In other words, in the case of a spatial reference system, each object has exactly one location reference, ie one father to be referenced ("Ref =..."). Generally speaking, there is a logical reference to an object, which assigns the object to a logical reference system. However, the location reference of the objects themselves is saved as an object in the system and has a reference to its "hierarchical" father ("Parent =..."). This creates a simple linked list for location objects with other location objects as end nodes. Objects on the first hierarchy level refer to a so-called virtual father with the ID = 0. However, several objects can be assigned to one location. This is basically done by referring to the type "Ref =...". In the object table 640 of FIG. 6, for example, the three objects with the object IDs 26 , 28 and 29 are assigned to the (location) object with the object ID "45". The object with the ID = 45 is subordinate to the (local) object with the object ID "10" by the location reference "Parent = 10", which in turn is subordinate to the (location) object 9 . The object with the object ID "9" is then subordinate to the virtual father with the ID 0.

Als nächstes wird eine in der Fig. 7 dargestellte Attributtabelle 730 im Detail beschrieben werden. Die Attributtabelle 730 enthält zu den Fig. 5 und 6 passende Beispieleinträge. Sie ist gleichfalls wie die Objekttabelle 640 der Fig. 6 zweispaltig angeordnet. Die erste Spalte 731 ist mit "TAG" bezeichnet. Die zweite Spalte 732 ist mit "TagID" bezeichnet. Ein Eintrag (d. h. eine Zeile) in der Attributtabelle 730 besteht somit aus zwei Teilen. Der erste Eintragsteil TAG ist grundsätzlich in drei Teile gegliedert, die mit einem Punkt getrennt werden. Diese drei Komponenten bezeichnen zum ersten - den schon oben erwähnten - Objekttyp, zum zweiten einen Datenfeldnamen und zum dritten ein Attribut, das in diesem Zusammenhang als Einheit verstanden werden kann. Der Datenfeldname entspräche in der herkömmlichen Datenbankmodellierung den Feldbezeichnungen bzw. den Spaltenüberschriften. Die dritte Komponente des ersten Eintragsteils stellt eine Einheitengröße dar, die den Inhalt des damit verknüpften Datenfelds näher beschreibt. Mögliche Einheitengrößen sind zum Beispiel "Text", "Zahl", "Währung", oder "Datum". Ein zum ersten Eintragsteil gehöriger zweiter Eintragsteil TagID entspricht einem der Einträge in der Spalte 533 der Wertetabelle 500 der Fig. 5 und stellt das Ziel des dort bezeichneten Zeigers dar. Durch die TagID wird von der Wertetabelle 500 der Fig. 5 auf die Attributtabelle 730 der Fig. 7 referenziert. Der erste Eintragsteil eines Eintrags in der Attributtabelle 730 kann somit eine Struktur vom Typ "Objekttyp._Objekt-ID._.ID_" auf (siehe auch TAG zu TagID 362) aufweisen.Next, an attribute table 730 shown in FIG. 7 will be described in detail. The attribute table 730 contains example entries suitable for FIGS. 5 and 6. Like the object table 640 of FIG. 6, it is also arranged in two columns. The first column 731 is labeled "TAG". The second column 732 is labeled "TagID". An entry (ie a row) in the attribute table 730 thus consists of two parts. The first entry part TAG is basically divided into three parts, which are separated by a period. These three components designate the first - the already mentioned - object type, the second a data field name and the third an attribute that can be understood as a unit in this context. In conventional database modeling, the data field name corresponds to the field names or column headings. The third component of the first entry part represents a unit size that describes the content of the associated data field in more detail. Possible unit sizes are, for example, "Text", "Number", "Currency", or "Date". A second entry part TagID belonging to the first entry part corresponds to one of the entries in column 533 of the value table 500 of FIG. 5 and represents the target of the pointer designated there. The TagID changes from the value table 500 of FIG. 5 to the attribute table 730 Fig. 7 references. The first entry part of an entry in the attribute table 730 can thus have a structure of the type "object type._object-ID ._. ID_" (see also TAG for TagID 362 ).

In Fig. 8 ist eine Inhaltstabelle 860 dargestellt, die in ihrer Funktionalität der Inhaltstabelle 460 der Fig. 4 entspricht. Die Inhaltstabelle 860 weist ebenfalls zwei Spalten auf. Die erste Spalte 861 wird mit "TXT" bezeichnet. Die zweite Spalte 862 wird mit "TxtID" bezeichnet. Die Einträge in die Inhaltstabelle 860 in der Fig. 8 sind beispielhaft und passen zu den in den Fig. 5, 6 und 7 dargestellten Einträgen. FIG. 8 shows a table of contents 860 , the functionality of which corresponds to the table of contents 460 of FIG. 4. The content table 860 also has two columns. The first column 861 is labeled "TXT". The second column 862 is called "TxtID". The entries in the content table 860 in FIG. 8 are exemplary and match the entries shown in FIGS. 5, 6 and 7.

Die in der Spalte 563 der Wertetabelle 500 der Fig. 5 enthaltenen Inhaltsreferenzen referenzieren auf einen zweiten Eintragsteil (TxtID) eines Eintrags der Inhaltstabelle 860. Ein zum zweiten Teil gehöriger erster Eintragsteil stellt den Inhalt des Datenfelds dar. So wird beispielsweise dem Datenfeld mit der Wert-ID "12" aus Fig. 5 über die Inhaltsreferenz mit der Text-ID "16" der Inhalt "500 501 02" zugewiesen, was der Bankverbindung einer Firma entspricht, wie man der Attributreferenz mit der Tag-ID "369" aus den Tabellen 5 und 7 entnehmen kann. Die zur Wert-ID "12" gehörige Objekt-ID "3" verweist gemäß der Objekttabelle 640 auf einen Ortsbezug "Ref = 1", womit dieses Objekt dem virtuellen Vater mit der ID = 0 zugewiesen wird, da dem Objekt mit der Objekt-ID "1" der Hierarchiebezug "Parent = 0" zugewiesen ist.The content references contained in column 563 of the value table 500 of FIG. 5 refer to a second entry part (TxtID) of an entry in the content table 860 . A first entry part belonging to the second part represents the content of the data field. For example, the content "500 501 02" is assigned to the data field with the value ID "12" from FIG. 5 via the content reference with the text ID "16" , which corresponds to the bank details of a company, as can be seen from the attribute reference with the tag ID "369" from Tables 5 and 7. According to the object table 640 , the object ID "3" belonging to the value ID "12" refers to a location reference "Ref = 1", with which this object is assigned to the virtual father with the ID = 0, since the object with the object ID "1" the hierarchy reference "Parent = 0" is assigned.

In der Fig. 9 ist der im Zusammenhang mit der Fig. 6 angeführte Bezug zwischen den Objekten in Form eines Ortsbezugs noch einmal beispielhaft verdeutlicht. Der Ortsbezug gliedert Informationen hierarchisch nach dem Ort, den sie betreffen oder an dem sie auftreten. In der Fig. 9 sind links einige Ortsbezüge wie Kunde, Nation, Stadt und Liegenschaft aufgeführt. Man sieht, daß jeder Ortsbezug mehrere untergeordnete Ortsbezüge enthalten kann. Jedem Ort wiederum können mehrere Objekte durch den Bezug des Typs "Ref = . . ." zugeordnet werden. FIG. 9 illustrates the relationship between the objects in the form of a location reference given in connection with FIG. 6 as an example. The location reference organizes information hierarchically according to the location it concerns or where it occurs. In Fig. 9 some local references such as customer, nation, city and property are listed on the left. It can be seen that each location reference can contain several subordinate location references. In turn, each location can have several objects by referring to the type "Ref =..." be assigned.

Im nachfolgenden werden einige allgemeinere Aussagen über die Funktionsweise der vorliegenden Erfindung gemacht werden.Below are some more general statements about the Operation of the present invention can be made.

Genauso wie die räumliche Zuordnung über die Ortsbezüge für einzelne Objekte möglich ist, erlaubt eine weitere Ausführungsform der Erfindung die zeitliche Zuordnung von Objekten. Beispielsweise könnte man daran interessiert sein - um im Bild des oben genannten Beispiels zu bleiben -, wo sich ein Buch XY der Bibliothek, das sich momentan im Raum Z des ersten Geschosses befindet, vorher befunden hat, bevor es in diesem Raum abgelegt wurde. Dazu wäre es erforderlich, daß man der Wertetabelle 500 der Fig. 5 auch zeitliche Informationen entnehmen kann. Dies wird erreicht, indem man eine weitere, zusätzliche Spalte definiert, die Zeitreferenzen beinhaltet. Diese Zeitreferenzen verweisen - ähnlich wie bei den Ortsbezügen - auf eine Zeittabelle (nicht dargestellt). Diese Zeittabelle ist ebenfalls zweispaltig angelegt. Die erste Spalte beinhaltet wiederum Bezüge zwischen Objekten, die zweite Spalte beinhaltet die zugehörigen Zeitreferenzen (Time-ID, nicht dargestellt), auf die die Zeitzeiger aus der weiteren Spalte der Wertetabelle zeigen.Just as the spatial assignment via the spatial references is possible for individual objects, a further embodiment of the invention allows the time assignment of objects. For example, one might be interested - to stay in the picture of the example above - where a book XY from the library, which is currently in room Z on the first floor, was previously located before being placed in this room. For this it would be necessary to be able to derive temporal information from the value table 500 in FIG. 5. This is achieved by defining an additional column that contains time references. Similar to the location references, these time references refer to a time table (not shown). This time table is also created in two columns. The first column again contains references between objects, the second column contains the associated time references (time ID, not shown), to which the time pointers from the further column of the value table point.

Es versteht sich von selbst, daß es jederzeit möglich ist, ein neues Objekt anzulegen. Dabei werden entsprechend den zu erfassenden Eigenschaften des Objekts eine äquivalente Anzahl von Zeilen in der Wertetabelle 500 der Fig. 5 angelegt. Die Datenfelder können jeweils eine laufende Nummer zugeteilt bekommen, die bisher noch nicht vergeben ist. Des weiteren wird dem Objekt eine Objekt-ID zugewiesen, die für die neu einzutragenden Felder gleich ist, da es sich um ein und dasselbe Objekt handelt. Das Objekt selbst wiederum gehört einem Objektypen an. Beispielsweise gehört ein Taschenbuch ABC - wie schon eingangs erwähnt - zum Objekttyp Buch. Existiert für ein Objekt noch kein zugehöriger Objekttyp, so läßt sich dieser auf einfache Art und Weise anlegen, indem man in der Attributtabelle einen Eintrag der Form "neuer Objekttyp.Feldname.Einheit" anlegt. Gleiches gilt für die Eigenschaften des Objekts, die in der eben genannten Schreibweise dem Feldnamen entsprechen. Somit lassen sich beliebige Objekte mit beliebigen Eigenschaften in die Wertetabelle eintragen, ohne daß dabei Redundanzen, wie im Stand der Technik, auftreten.It goes without saying that it is always possible to create a new object. An equivalent number of lines are created in the value table 500 of FIG. 5 in accordance with the properties of the object to be detected. The data fields can be assigned a sequential number that has not yet been assigned. Furthermore, an object ID is assigned to the object, which is the same for the new fields to be entered, since it is one and the same object. The object itself belongs to an object type. For example, a paperback ABC - as mentioned at the beginning - belongs to the object type book. If an associated object type does not yet exist, it can be easily created by creating an entry in the attribute table of the form "new object type. Field name. Unit". The same applies to the properties of the object, which correspond to the field name in the notation just mentioned. Any objects with any properties can thus be entered in the value table without redundancies, as in the prior art.

Sämtliche Zugriffe auf Informationen in der erfindungsgemäßen Datenbank unterliegen frei definierbaren Zugriffsrechten. Es wird zwischen den Zugriffsrechten "Schreiben & Lesen", "Lesen" sowie "kein Zugriff" unterschieden. Die Rechte werden in sogenannten Benutzergruppen organisiert. Ein Benutzer ist immer mindestens einer Benutzergruppe zugehörig. Ein Objekt oder Ortsbezug ist nur dann für eine Benutzergruppe überhaupt sichtbar, wenn für das betreffende Objekt das Recht "Schreiben & Lesen" oder "Lesen" zugeteilt wurde. Sobald ein Objekt für den Schreibzugriff geöffnet ist, erhalten alle anderen lese- und schreibberechtigten Benutzer in dieser Zeit nur das Recht "Lesen". Sobald der Schreibzugriff beendet ist, sind die Schreibrechte auch für andere Benutzer verfügbar.All access to information in the invention Database are subject to freely definable access rights. It will be between the Access rights "Write & Read", "Read" and "No Access" are differentiated. The rights are organized in so-called user groups. A user is always belonging to at least one user group. An object or location reference is only visible to a user group at all if for the relevant user group Object was assigned the "Write & Read" or "Read" right. Once a Object is open for write access, all other read and receive  Authorized users only have the "Read" right during this time. Once the Write access has ended, the write rights are also available to other users available.

Des weiteren ist wie bei allen Datenbanken eine Suche möglich. Als Suchsprache kann beispielsweise SQL (Structured Query Language) benutzt werden. Die Suche ermöglicht das gezielte Finden von Objekten, beispielsweise im Ortsbezug. Der Ortsbezug kann dazu durch Navigieren in den gewünschten Ortsbezug (wie beispielsweise in Fig. 9 dargestellt) eingegrenzt werden. Des weiteren läßt sich auch eine erweiterte Suche durchführen. Die erweiterte Suche bietet zusätzlich die Möglichkeit, gezielt Informationen innerhalb von Objekten zu suchen, d. h. beispielsweise nach einer bestimmten Eigenschaft zu suchen. Dazu werden alle Eigenschaften des Objekts dargestellt. Wird kein Objekt ausgewählt bei der erweiterten Suche, so stehen die Feldeinträge aller Objekte zur Verfeinerung der Suche zur Verfügung. Das Datenbanksystem selbst arbeitet wo nur möglich mit Indizes der Tabellen, was für datenverarbeitende Systeme günstig ist.As with all databases, a search is also possible. For example, SQL (Structured Query Language) can be used as the search language. The search enables the targeted finding of objects, for example in relation to location. For this purpose, the location reference can be limited by navigating into the desired location reference (as shown for example in FIG. 9). You can also perform an advanced search. The advanced search also offers the option of searching for specific information within objects, ie searching for a specific property, for example. All properties of the object are shown. If no object is selected in the advanced search, the field entries of all objects are available to refine the search. The database system itself works with indexes of the tables wherever possible, which is favorable for data processing systems.

Abschließend kann gesagt werden, daß durch das erfindungsgemäße Datenbanksystem folgende Vorteile gegenüber dem Stand der Technik erzielt werden.In conclusion, it can be said that the inventive Database system achieved the following advantages over the prior art become.

Ein vorteilhafter Aspekt ist die Vermeidung von Redundanzen. Ein objektorientierter Datenzugriff ist möglich. Es werden keine zusätzlichen Tabellen beim Hinzufügen neuer Objekttypen erzeugt. Es existieren detaillierte bzw. kombinierte Suchmöglichkeiten bis hin zur Volltextsuche. Das Datenmodell gemäß der vorliegenden Erfindung basiert auf dem standardisierten, relationalen Datenbankmodell, was erhebliche Vorteile bezüglich der Importierbarkeit von Daten darstellt, da diese unabhängig vom jeweiligen Softwarehersteller benutzt werden können. Ferner ist der Datenexport nach XML möglich.An advantageous aspect is the avoidance of redundancies. On object-oriented data access is possible. There are no additional tables created when adding new object types. There are detailed or combined search options up to full-text search. The data model according to The present invention is based on the standardized, relational Database model, which has significant advantages in terms of data importability represents, since these are used independently of the respective software manufacturer can. Data export to XML is also possible.

Ein weiterer Vorteil ist darin zu sehen, daß Objekte miteinander über einen standardisierten Mechanismus verknüpfbar sind. Another advantage is that objects overlap with each other a standardized mechanism can be linked.  

Für einen Fachmann auf dem Gebiet der Softwaretechnik ist es klar, daß man die Wertetabelle transponieren, d. h. Zeilen mit Spalten vertauschen kann und umgekehrt, ohne die Funktionalität der Erfindung zu verändern. Ähnliches gilt für den Aufbau der drei bzw. weiteren Tabellen.For a person skilled in the software engineering field it is clear that to transpose the table of values, d. H. Can swap rows with columns and vice versa, without changing the functionality of the invention. The same applies to the structure of the three or further tables.

Ein Computerprogrammprodukt kann durch jedes geeignete Speichermedium dargestellt werden, auf dem das Computerprogramm abgespeichert ist, das das Verfahren gemäß der vorliegenden Erfindung ausführt.A computer program product can be made by any suitable Storage medium on which the computer program is stored, which carries out the method according to the present invention.

Außerdem ist es für einen Fachmann aus dem vorangegangenen klar, daß verschiedene Ausführungsformen der vorliegenden Erfindung lediglich exemplarisch erklärt wurden und daß diese auf einfache Art und Weise verändert bzw. abgeändert werden können, ohne vom Umfang der vorliegenden Erfindung abzuweichen. Des weiteren ist festzustellen, daß die Elemente der beschriebenen Ausführungsformen sowohl durch Software als auch durch Hardware oder eine Kombination der beiden realisiert werden können.Furthermore, it is clear to one skilled in the art from the foregoing that various embodiments of the present invention merely were explained as examples and that they were changed in a simple manner or can be modified without departing from the scope of the present invention departing. It should also be noted that the elements of the described Embodiments by software as well as by hardware or a Combination of the two can be realized.

Claims (19)

1. Datenbanksystem, in dem eine Vielzahl von Datensätzen in einem Speicher eines Computers abspeicherbar sind, wobei jeder Datensatz eine beliebige Anzahl von Datenfeldern umfasst, dadurch gekennzeichnet, daß
eine Datenbasis des Datenbanksystems eine mehrspaltige Wertetabelle mit einer beliebigen Anzahl von Zeilen, eine Inhaltstabelle zum Speichern von Datenfeldinhalten, eine Attributtabelle zum Speichern von Datenfeldattributen und eine Objekttabelle zum Speichern von Bezügen zwischen Objekten aufweist, wobei in der Wertetabelle:
jede Zeile einem Datenfeld eines Datensatzes entspricht;
eine Spalte (txt) Inhaltsreferenzen (TxtID) beinhaltet, die mehrfach für verschiedene Datenfelder vergeben sein können und jeweils eindeutig auf einen Eintrag (TXT, TxtID) der Inhaltstabelle referenzieren;
eine weitere Spalte (tag) Attributreferenzen (TagID) beinhaltet, die mehrfach für verschiedene Datenfelder vergeben sein können und jeweils eindeutig auf einen Eintrag (TAG, TagID) der Attributtabelle referenzieren; und
noch eine weitere Spalte (obj) Objektreferenzen (ObjID) beinhaltet, die mehrfach für verschiedene Datenfelder vergeben sein können, wobei die zu jeweils einer Objektreferenz gehörenden Datenfelder jeweils einen Datensatz bilden und die Objektreferenz (ObjID) jeweils eindeutig auf einen Eintrag (OBJ, ObjID) der Objekttabelle referenzieren.
1. Database system in which a large number of data records can be stored in a memory of a computer, each data record comprising any number of data fields, characterized in that
a database of the database system has a multi-column table of values with any number of rows, a table of contents for storing data field contents, an attribute table for storing data field attributes and an object table for storing references between objects, wherein in the table of values:
each row corresponds to a data field of a data record;
a column (txt) contains content references (TxtID), which can be assigned several times for different data fields and each clearly refer to an entry (TXT, TxtID) in the content table;
another column (tag) contains attribute references (TagID), which can be assigned several times for different data fields and each clearly refer to an entry (TAG, TagID) in the attribute table; and
still contains a further column (obj) object references (ObjID), which can be assigned several times for different data fields, whereby the data fields belonging to each object reference each form a data record and the object reference (ObjID) each uniquely to an entry (OBJ, ObjID) reference the object table.
2. Datenbanksystem gemäß Anspruch 1, wobei in der Wertetabelle eine weitere Spalte (WertID) laufende Nummern beinhaltet, die jeweils genau ein einziges Datenfeld bezeichnen.2. Database system according to claim 1, wherein in the value table Another column (WertID) contains consecutive numbers, each one exactly designate the only data field. 3. Datenbanksystem gemäß Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Inhaltstabelle, die Attributtabelle und die Objekttabelle jeweils zweispaltig oder zweizeilig sind. 3. Database system according to claim 1 or 2, characterized characterized that the table of contents, the attribute table and the object table are each in two columns or two lines.   4. Datenbanksystem gemäß einem der Ansprüche 1 bis 3, wobei die Wertetabelle transponiert ist, und somit vier Zeilen und eine beliebige Anzahl von Spalten aufweist, wobei die Spalten den Datenfeldern entsprechen.4. Database system according to one of claims 1 to 3, wherein the Value table is transposed, and thus four rows and any number of Has columns, the columns corresponding to the data fields. 5. Datenbanksystem gemäß einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß der Eintrag (OBJ, ObjID) der Objekttabelle der jeweiligen entsprechenden laufenden Nummer einen Ort zuweist, der ein Element eines hierarchisch angeordneten, räumlichen Bezugssystems ist.5. Database system according to one of claims 1 to 3, characterized characterized in that the entry (OBJ, ObjID) of the object table of the respective assigns a location to the corresponding serial number that contains an element of a hierarchically arranged spatial reference system. 6. Datenbanksystem gemäß einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß ein erster Eintragsteil (TXT) eines Eintrags der Inhaltstabelle einen datenformatsunabhängigen Inhalt eines entsprechenden Datenfelds beinhaltet, und ein zu diesem ersten Eintragsteil gehöriger zweiter Eintragsteil (TxtID) einer der Inhaltsreferenzen (txt) der Wertetabelle entspricht.6. Database system according to one of claims 1 to 4, characterized characterized in that a first entry part (TXT) of an entry of the table of contents a data format-independent content of a corresponding data field includes, and a second entry part belonging to this first entry part (TxtID) corresponds to one of the content references (txt) in the value table. 7. Datenbanksystem gemäß Anspruch 6, wobei der Inhalt eines Datenfelds als Zeichenkette gespeichert ist.7. Database system according to claim 6, wherein the content of a Data field is stored as a character string. 8. Datenbanksystem gemäß einem der Ansprüche 1 bis 4, wobei ein erster Eintragsteil (TAG) eines Eintrags der Attributtabelle aus drei Komponten besteht, nämlich einem Objekttyp, einem Datenfeldnamen (_ObjektID_) und einem Attribut (_ID_), und ein zu diesem ersten Eintragsteil gehöriger zweiter Eintragsteil (TagID) einer der Attributreferenzen (tag) der Wertetabelle entspricht.8. Database system according to one of claims 1 to 4, wherein a first entry part (TAG) of an entry in the attribute table from three components exists, namely an object type, a data field name (_ObjektID_) and one Attribute (_ID_), and a second entry part belonging to this first entry part (TagID) corresponds to one of the attribute references (tag) of the value table. 9. Datenbanksystem gemäß einem der Ansprüche 1 bis 4, wobei ein erster Eintragsteil (OBJ) eines Eintrags der Objekttabelle den Bezug (Ref, Parent) zu einem anderen Objekt darstellt, und ein zu diesem ersten Eintragsteil gehöriger zweiter Eintragsteil (ObjID) einer Objektreferenz (Obj) der Wertetabelle entspricht.9. Database system according to one of claims 1 to 4, wherein a first entry part (OBJ) of an entry of the object table the reference (Ref, Parent) represents another object, and one belonging to this first entry part second entry part (ObjID) corresponds to an object reference (Obj) of the value table. 10. Datenbanksystem gemäß den Ansprüchen 4 und 9, wobei der Bezug eine Information über den Ort eines durch den zweiten Eintragsteil (ObjID) eines Eintrags der Objekttabelle beschriebenen Objekts innerhalb des hierarchisch geordneten, räumlichen Bezugssystems beinhaltet.10. Database system according to claims 4 and 9, wherein the Reference information about the location of a by the second entry part (ObjID)  an entry of the object table described object within the hierarchical ordered, spatial reference system. 11. Datenbanksystem gemäß einem der Ansprüche 6 bis 9, dadurch gekennzeichnet, daß der jeweilige zweite Eintragsteil (TxtID, TagID, ObjID) der Einträge der Inhalts-, Attribut-, oder Objekttabelle jeweils einmalig ist.11. Database system according to one of claims 6 to 9, characterized characterized in that the respective second entry part (TxtID, TagID, ObjID) of the Entries in the table of contents, attributes or objects are unique. 12. Datenbanksystem gemäß Anspruch 11, wobei der zweite Eintragsteil von einem Typ "ID" ist.12. Database system according to claim 11, wherein the second Entry part of a type "ID" is. 13. Datenbanksystem gemäß einem der vorangegangen Ansprüche, wobei die Einträge in der Wertetabelle jeweils ganzzahlig sind.13. Database system according to one of the preceding claims, where the entries in the value table are integers. 14. Datenbanksystem gemäß einem der vorangegangen Ansprüche, wobei die Wertetabelle eine weitere Spalte/Zeile (time) aufweist, die Zeitreferenzen (TimeID) aufweist, die mehrfach, für verschiedene Datenfelder, vergeben sein können und jeweils eindeutig auf einen Eintrag in einer Zeittabelle referenzieren, wobei die Zeittabelle zweizeilig/zweispaltig ist und zweiteilige Einträge aufweist, die sich aus einem ersten Eintragsteil (Time) und einem zu diesem gehörigen zweiten Eintragsteil (TimeID) zusammensetzt, wodurch ein Bezug zwischen Objekten in Abhängigkeit von der Zeit herstellbar ist.14. Database system according to one of the preceding claims, wherein the value table has a further column / row (time), the time references (TimeID), which are assigned multiple times, for different data fields can and clearly refer to an entry in a time table, where the time table is two-line / two-column and has two-part entries that consists of a first entry part (Time) and a second part belonging to it Entry part (TimeID) composes, whereby a relation between objects in Depending on the time it can be produced. 15. Verfahren zum Durchführen von Operationen in einem Datenbanksystem, in dem eine Vielzahl von Datensätzen in einem Speicher eines Computers abspeicherbar sind, wobei jeder Datensatz eine beliebige Anzahl von Datenfeldern umfasst, dadurch gekennzeichnet, daß das Durchführen der Operationen jeweils umfasst
zugreifen auf und/oder abspeichern von Daten einer Datenbasis, wobei die Datenbasis des Datenbanksystems eine mehrspaltige Wertetabelle mit einer beliebigen Anzahl von Zeilen, eine Inhaltstabelle zum Speichern von Datenfeldinhalten, eine Attributtabelle zum Speichern von Datenfeldattributen und eine Objekttabelle zum Speichern von Bezügen zwischen Objekten aufweist, und wobei in der Wertetabelle:
jede Zeile einem Datenfeld eines Datensatzes entspricht;
eine Spalte (txt) Inhaltsreferenzen (TxtID) beinhaltet, die mehrfach für verschiedene Datenfelder vergeben sein können und jeweils eindeutig auf einen Eintrag (TXT, TxtID) der Inhaltstabelle referenzieren;
eine weitere Spalte (tag) Attributreferenzen (TagID) beinhaltet, die mehrfach für verschiedene Datenfelder vergeben sein können und jeweils eindeutig auf einen Eintrag (TAG, TagID) der Attributtabelle referenzieren; und
noch eine weitere Spalte (obj) Objektreferenzen beinhaltet, die mehrfach für verschiedene Datenfelder vergeben sein können und jeweils eindeutig auf einen Eintrag (OBJ, ObjID) der Objekttabelle referenzieren.
15. A method for performing operations in a database system in which a large number of data records can be stored in a memory of a computer, each data record comprising any number of data fields, characterized in that the operations each comprise
access and / or store data from a database, the database of the database system having a multi-column table of values with any number of rows, a table of contents for storing data field contents, an attribute table for storing data field attributes and an object table for storing references between objects, and where in the table of values:
each row corresponds to a data field of a data record;
a column (txt) contains content references (TxtID), which can be assigned several times for different data fields and each clearly refer to an entry (TXT, TxtID) in the content table;
another column (tag) contains attribute references (TagID), which can be assigned several times for different data fields and each clearly refer to an entry (TAG, TagID) in the attribute table; and
still contains a further column (obj) object references, which can be assigned several times for different data fields and each clearly refer to an entry (OBJ, ObjID) of the object table.
16. Verfahren gemäß Anspruch 15, dadurch gekennzeichnet, daß das Datenbanksystem ferner die Merkmale gemäß einem der Ansprüche 2 bis 14 aufweist.16. The method according to claim 15, characterized in that the Database system further features according to one of claims 2 to 14 having. 17. Datenstruktur, die mindestens einen Datensatz aufweist, um das Verfahren gemäß Anspruch 15 oder 16 auszuführen.17. Data structure which has at least one data record to which Execute method according to claim 15 or 16. 18. Computerprogramm, das computerausführbare Instruktionen aufweist, um einen Computer dazu zu veranlassen, ein Verfahren gemäß Anspruch 15 oder 16 auszuführen.18. Computer program, the computer-executable instructions to cause a computer to perform a method according to claim 15 or 16 to perform. 19. Computerprogrammprodukt, das computerausführbare Instruk­ tionen aufweist, um einen Computer dazu zu veranlassen, ein Verfahren gemäß Anspruch 15 oder 16 auszuführen.19. Computer program product, the computer executable instruction tion to cause a computer to perform a method according to Execute claim 15 or 16.
DE10113515A 2001-03-20 2001-03-20 Database system Withdrawn DE10113515A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE10113515A DE10113515A1 (en) 2001-03-20 2001-03-20 Database system
PCT/DE2002/000945 WO2002075589A2 (en) 2001-03-20 2002-03-15 Data bank system
EP02729794A EP1374100A2 (en) 2001-03-20 2002-03-15 Data bank system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10113515A DE10113515A1 (en) 2001-03-20 2001-03-20 Database system

Publications (1)

Publication Number Publication Date
DE10113515A1 true DE10113515A1 (en) 2002-10-02

Family

ID=7678227

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10113515A Withdrawn DE10113515A1 (en) 2001-03-20 2001-03-20 Database system

Country Status (3)

Country Link
EP (1) EP1374100A2 (en)
DE (1) DE10113515A1 (en)
WO (1) WO2002075589A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005009014A1 (en) * 2005-02-28 2006-09-07 Vodafone Holding Gmbh Method and system for managing objects of a mobile terminal
DE102011087843A1 (en) * 2011-12-06 2013-06-06 Continental Automotive Gmbh Method and system for selecting at least one data record from a relational database

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6112209A (en) * 1998-06-17 2000-08-29 Gusack; Mark David Associative database model for electronic-based informational assemblies

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2720904B2 (en) * 1990-08-31 1998-03-04 富士通株式会社 Self-describing database management system configuration method and development / modification method
DE19627472A1 (en) * 1996-07-08 1998-01-15 Ser Systeme Ag Database system
WO2002103573A1 (en) * 2001-06-14 2002-12-27 Ubs Ag A flexible virtual database system including a hierarchical application parameter repository

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6112209A (en) * 1998-06-17 2000-08-29 Gusack; Mark David Associative database model for electronic-based informational assemblies

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005009014A1 (en) * 2005-02-28 2006-09-07 Vodafone Holding Gmbh Method and system for managing objects of a mobile terminal
DE102011087843A1 (en) * 2011-12-06 2013-06-06 Continental Automotive Gmbh Method and system for selecting at least one data record from a relational database
DE102011087843B4 (en) * 2011-12-06 2013-07-11 Continental Automotive Gmbh Method and system for selecting at least one data record from a relational database
US9715523B2 (en) 2011-12-06 2017-07-25 Continental Automotive Gmbh Method and system for selecting at least one data record from a relational database

Also Published As

Publication number Publication date
WO2002075589A3 (en) 2003-10-09
WO2002075589A2 (en) 2002-09-26
EP1374100A2 (en) 2004-01-02

Similar Documents

Publication Publication Date Title
EP0855062B1 (en) Information system and process for storing data therein
EP0910829B1 (en) Database system
DE19960043B4 (en) Method for navigating in a tree structure
EP0523269A1 (en) Computer system for data management
DE102010049891A1 (en) Method for providing complementary documents e.g. books, involves providing unambiguous electronically usable assignment of complement to original web document, and selectively supplementing complement with complementary data
DE102013015355A1 (en) User-controlled finding machine
WO2007137308A1 (en) Method for controlling a relational database system
WO2000054167A2 (en) Search and surf device for hypertext documents
DE19715723A1 (en) Array method
DE10113515A1 (en) Database system
EP1941395A1 (en) Method for controlling a relational database system
DE19538448A1 (en) Database management system and data transmission process
DE1938248B2 (en) IMAGE DISPLAY SYSTEM
DE102010064167A1 (en) Method for generating dynamic report for representing commercial data for selected articles in e.g. database management system oracle in computer system, involves generating report by using report template and adjusted database statements
DE19729911A1 (en) Documentation data organisation system
DE102008062830B3 (en) Information storing, searching and displaying device i.e. document management system, has assigning unit for assigning information to two data structures such that information is searchable and displayable
DE102018001664A1 (en) Hardware configuration for exchanging storage data from locally distributed devices
DE10343328A1 (en) Method for mapping a hierarchical technical system into a relational database
EP1234231B1 (en) Method for generating graphical user interfaces for computer programs
DE10025219A1 (en) Method, computer program product and device for automatically linking data records from at least one data source and system for retrieving linked data records from at least one data source
DE19914454A1 (en) Computer based system for construction of a relational database with a procedure for inputting data with an extra relationship category table so that each relationship is assigned to a unique relationship category
EP1170676A1 (en) Visualization of informationstructure of documents on the World wide web
EP0482044B1 (en) Virtual memory for a parallel-computer system
EP1920362A1 (en) Method for processing data
EP1239377A1 (en) Data management system and method of data structure management and synchronisation

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8139 Disposal/non-payment of the annual fee