Array designs are stored in ArrayDesignData
objects
and can be created either as standalone designs or
from plates. In the first case the features on an array design
are described by a reporter map. A reporter map is a file
that maps a coordinate (block, meta-grid, row, column),
position or an external ID on an array design to a
reporter. Which method to use is given by the
ArrayDesign.featureIdentificationMethod property.
The coordinate system on an array design is divided into blocks.
Each block can be identified either by a blockNumber
or by meta coordinates. This information is stored in
ArrayDesignBlockData
items. Each block
contains several FeatureData
items, each
one identified by a row and column coordinate. Platforms that doesn't
divide the array design into blocks or doesn't use the coordinate system at all
must still create a single super-block that holds all features.
Array designs that are created from plates use a print map file
instead of a reporter map. A print map is similar to a plate mapping
but maps features (instead of wells) to wells. The file should
specifify which plate and well a feature is created from. Reporter
information will automatically be copied by BASE from the well.
It is also possible to skip the importing of features into the
database and just keep the data in the orginal files instead.
This is typically done for Affymetrix CDF files.
The ArraySlideData
represents a single
array. Arrays are usually printed several hundreds in a batch,
represented by a ArrayBatchData
item.
The batchIndex is the ordinal number of the
array in the batch. The barcode can be used
as a means for external programs to identify the array. BASE doesn't
care if a value is given or if they are unique or not. If the
destroyed flag is set it prevents a slide from
beeing used by a hybridization.