ARBDB HIERARCHY
ARB DB is a hierarchical database system, so here's a short description of the hierarchy:
ARBDB ::= species_data // container containing all species
presets // global alignment and db field information
[extended_data] // all SAIs
[tmp] // temporary data
[tree_data] // all trees
... // user defined entries (programmers)
species_data::= [species]*
extended_data::= [extended]*
gene_data::= [gene]* // container for genes (species local)
species::= 'name' // species identifier
['full_name']
... // (end) user defined fields
[ali_xxx] // the alignment container(s)
[gene_data] // container containing genes
extended::= // analogous to species
gene::= // analogous to species
ali_xxx::= 'data' // the sequence
... // additional sequence information
presets::= 'use' // default alignment
[alignment]*
[key_data] // description of the user defined keys
alignment::= 'alignment_name' // name of the alignment (prefix 'ali_')
'alignment_len' // length of longest sequence
'alignment_write_security' // default write security
'alignment_type' // dna or pro
'aligned' // ==1 when all sequences have the same
// length else 0
key_data::= [key]*
key::= 'key_name' // name of an user defined field
'key_type' // type (12=string 3=int)
*******************************************
*************** ASCII BASIC **************
*******************************************
Note:
-
/* xxx */ is used for comments and not read
-
I use a grammar to describe the dataformat. All terminal symbols are surrounded by "'".
ASCII::= ['/*ARBDB ASCII*/']
[FIELD]*
FIELD::= KEY [PROTECTION] [TYPE] VALUE
|
KEY [PROTECTION] '%%' (%
[FIELD]*
%) /* Comment */
KEY::= 'Any string of a-z|A-Z|0-9|"_"'
|KEY| > 2 < 256
PROTECTION::= ':''delete protection level''write p.l.''00'
// 00 are reserved for future use
TYPE::= '%s' // STRING
'%i' // INTEGER
'%f' // FLOAT
'%N' // BYTES
'%I' // BITS
'%F' // FLOATS
VALUE::= '"string"' | '"^Astring^A"' | 'string' //type = STRING
| 'int_number' //type = INT
| 'real_number' //type = FLOAT
| 'coded bytestring' //type = BYTES,FLOATS,
// BITS