Notice that in the full external database example described above that
there is a significant amount of repetition. When many readings are
stored in such a text file it may seem redundant to have to specify the
sequencing vector primer and cloning sites for each reading. The earlier
Squirrel program kept the information spread over several
database files. One file specified the template information (including
reading names, sequencing vector name, insert size and database name).
The vector name was then used to look up vector information (the primer
and cloning sites used) from a separate database. Such a database is
generally referred to as a "relational database".
For brevity, the example Squirrel database file aren't listed
here. The `.pregaprc' file used is shown below as it serves as a
good example of linking a relational database to Pregap. This actual
.pregaprc file itself should not be used as it does not determine
the primer information correctly (Squirrel used to derive this
from local read naming conventions).
lookup() {
lookup -r $SQUIRREL/tables/$2 "$1" "$3"
}
# NB: We make assumptions on the order of evaluation of the experiment
# file identifiers used in pregap.
CN_com='lookup "$ID" subclones 1'
CV_com='lookup "$CN" clone-types 1'
SV_com='lookup "$ID" subclones 4'
SF_com='lookup "$SV" vector-seqfiles 1'
CF_com='lookup "$CV" vector-seqfiles 1'
SC_com='lookup "$SV" seqclone-sites 1'
SP_com='lookup "$SV" seqclone-sites 2'
DR='+'
DT_com='date'
MT_com='echo $file_type'
OP_com='lookup "$CN" databases 5'
SI_com='lookup "$ID" subclones 2'