Galaxy_TOC
Filicle-s
WARNING: This is an untested specification, i.e. it lacks implementations.
There exists a suspicion that a more elegant way to create a database
is to use a single, sparse, table with infinitely many columns, where
column names are standardized (field_1,field_2,...) and the traditional
table name would be just one field out of many.
Filicles (Estonian singular: "failik") are like files, except that they
differ from files by the following properties:
x) In stead of being addressed relative to a memory device partition,
which is depicted as file system root,
filicles are addressed relative to a database.
x) In stead of being structured as a series of bytes or characters,
filicles are structured as a set of tables in a relational database.
x) In stead of being mapped to a memory device partition
by a file system (
Ext4,
JFS,
NTFS, etc.)
filicles are mapped to a relational database by a filicle system.
Just like the interpretation of bytes in files is determined
by a file format, the interpretation and format of filicle tables is
determined by a
filicle format.
General scheme:
Collaboration
information system.
Rosetta Stone Filicle System Version 0 (ROSTOFIS_v0)
The ROSTOFIS_v0 has the following
filicle (acronym:
fl)
system
accountancy (acronym:
ac) tables:
CREATE TABLE fl_ac_i_fl_11_s_fl (i_0 INT, s_0 text);
The fl_ac_i_fl_11_s_fl implements
one to one relations between filicle ID-strings, "names",
and relational database instance specific, automatically
generated, integers that are used in stead of the strings
for efficiency.
CREATE TABLE fl_ac_i_fltype1_11_s_fltype1 (i_0 INT, s_0 text);
The fl_ac_i_fltype1_11_s_fltype1 implements
one to one relations between filicle type names
and relational database instance specific, automatically
generated, integers that are used in stead of the string
based type ID-s for efficiency.
As classification can be done by more than one parameter
and fltype1 reflects only one parameter, there can exist
tables, that are similar to the
fl_ac_i_fltype1_11_s_fltype1,
but are named
fl_ac_i_fltype2_11_s_fltype2,
fl_ac_i_fltype3_11_s_fltype3,
fl_ac_i_fltype4_11_s_fltype4,
etc.
CREATE TABLE fl_ac_i_fl_11_i_fltype1 (i_0 INT, i_1 INT);
The fl_ac_i_fl_11_i_fltype1 implements
one to one relations between relational database
instance specific filicle ID-integers and the relational
database instance specific integers that depict filicle type 1.
As it is with the
fl_ac_i_fltype1_11_s_fltype1,
the
fl_ac_i_fl_11_i_fltype1
can have analogues like
fl_ac_i_fl_11_i_fltype2,
fl_ac_i_fl_11_i_fltype3,
fl_ac_i_fl_11_i_fltype4,
etc.
CREATE TABLE fl_ac_i_fl_1n_fltablename (i_0 INT, s_0 text);
The fl_ac_i_fl_1n_fltablename implements
one to many relations between relational database instance
specific filicle ID integers and filicle instance specific
table names.
The table names are the ones that are used
in the relational database instance and have a form of:
fl_fl_<i_fl>_<fltablesubname>
.
where fltablesubname stands for:
"string of alphanumeric characters that forms
filicle instance specific part of the table name,
which is often determined by a filicle type"