allegro-Dateistruktur
.ALD/ALG/ADT/LOG Eine Datenbankdatei vom Typ .ALD besteht aus einer Folge von Datensätzen, die alle folgendermaßen aussehen: 1xxxx00 6543210 (So sehen die Daten auch in einer Grunddatei aus (Typ .ALG), nur ohne die Satznummer xxxx)
Die Steuerzeichen bedeuten: 0 = Feldende, 1 = Satzanfang , 2 = Untersatz-Anfang der Stufe 1. Der "Grunddatei"-Typ .ALG unterscheidet sich von .ALD nur dadurch, daß die Satznummer xxxx fehlt, hinter der 1 kommt sofort der Text. Gelöschte und gesperrte Sätze gibt es in .ALG nicht, denn auf solche Dateien wird nicht online zugegriffen. Auch der Sicherungsdatei-Typ .LOG unterscheidet sich von .ALD nur wenig:Neue Sätze beginnen mit Code 8 statt 1 und haben statt der internen Satznummer die Nummer der .ALD-Datei, in die sie gespeichert wurden, ebenfalls in 4 Bytes verschlüsselt. Also 80002 für einen Neusatz, der in die Datei 2 gespeichert wurde. (Wenn die LOG-Datei in die Sicherungskopie eingespeist werden soll, weiß das Programm dann, in welche Datei der Satz gehört, und er bekommt automatisch dieselbe Nummer, die er beim Erfassen erhalten hatte, Ds Beispiel oben ist ein hierarchischer Satz mit zwei Untersätzen: der Hauptsatz beginnt, wie jeder Datensatz, mit dem Code 1 , jeder Untersatz mit 2.
#00 654321
#20 Was können wir wissen? #31 Evolutionäre Erkenntnistheorie #40 Vollmer, Gerhard #74 Stuttgart #75 Hirzel #76 1985 #77 Bd.1.2. #01 1=Bd. 1 #20 ¬Die¬ Natur der Erkenntnis : Beiträge zur Evolutionären Erkenntnistheorie #25 Mit einem Geleitw. v. Konrad Lorenz #77 337 S. #87 3‑7776‑0403‑8 #90 2647‑3611 #01 2=Bd. 2 #20 ¬Die¬ Erkenntnis der Natur : Beiträge zur modernen Naturphilosophie #77 350 S. #87 3‑7776‑0404‑6 #90 2650‑9705 Dateien mit dieser Struktur, sog. "Externdateien", müssen den Typ .ADT haben, damit die Programme sie erkennen. Keine Leerzeilen innerhalb eines Satzes! Jedes
Datenfeld muß hier auf einer neuen Zeile, mit einem '#' auf der ersten
Position, beginnen. Zeilenumbrüche sind nicht nötig, d.h. jedes Feld
kann eine einzige lange Zeile sein. Wenn jedoch Umbrüche in einem Feld
auftreten, müssen diese bei einem Leerzeichen stattfinden, und die
Folgezeile muß mit diesem Leerzeichen beginnen. Wenn man diese Form mit
anderer Software aus Fremddaten herstellen kann, kann das allegro-System sie einlesen. Die Zeichencodes müssen den in der Datenbank verwendeten entsprechen. Die Programme merken beim Einlesen selbst, und zwar an den Feldern #00 und #01, wo ein Satz bzw. Untersatz beginnt. (In einem anderen Schema, wie z.B. $P.CFG, sind dies andere Nummern, z.B. #0100 und #70XX.) . Nur wenn es keine solchen Felder gibt, sind zwei Sätze durch eine Leerzeile zu trennen, sonst bemerkt das Programm die Trennung nicht. |