Galaxy_TOC
Object Oriented Data set Filicle
Format Version 1 (OODSFiFor_v1)
WARNING: This is an untested specification, i.e. it lacks implementations.
The OODSFiFor_v1 describes, how methodless
instances
that have only public fields, are stored to a
filicle.
The fields of the instances are allowed to be:
x) variable length
Unicode strings;
x) booleans as single characters (
"t" for "true",
"f" for "false")
x) C++/C
int-s (4 bytes);
x) C++/C
double's (8 bytes).
All fields of a OODSFiFor_v1 instances are 2-dimensional. One of the dimensions holds the
classical value of the field. The other dimension contains only 2
values,
true,
false, and indicates, whether the "value
of the field is determined", e.g. whether the value at the first dimension
has any meaning at all or it should be considered to be "null/NaN/nil".
Each OODSFiFor_v1 filicle contains the following tables:
CREATE TABLE <filicle system specific prefix>_ac_class_declarations (class_name text, s_fields
text);
The
s_fields is a
ProgFTE_v1
string, where the hashtable keys are class field names and
the hashtable values belong to the following set of strings: {
scty_text,
scty_int,
scty_double,
scty_bool }.
CREATE TABLE <filicle system specific prefix>_ac_instances_of_class_<class name> (s_instance_id text, <fields in no
particular order>);
The column names of the field values have a structure of val_<field name>.
The column names of the boolean values that indicate, wether the field has been set,
the "2. dimension", have a structure of sb_empty_<field name>.
The type of the "sb_empty_" fields is a fixed-length string with a length of one
character or "text". Character "t" indicates "true" and
the character "f" indicates "false".