This section gives an overview of experimental platforms and how they are used to enable data storage in files instead of in the database. In some senses item subtypes are related to platforms so they are also included here.
See also
The PlatformData
PlatformVariant
fileOnly
flag is set data for the platform
can only be stored in files and not imported into the database. If
the flag is not set data can be imported into the database.
In the latter case, the rawDataType
property
can be used to lock the platform
to a specific raw data type. If the value is null
the platform can use any raw data type.
Each platform and it's variant can be connected to one or more
DataFileTypeData
The file type is also identified
by a fixed, non-changable external ID. The itemType
property tells us what type of item the file holds data for (ie.
array design or raw bioassay). It also links to a ItemSubtype
FileType.RAW_DATA
. If we are in an Affymetrix
experiment we will get the CEL file, for another platform we will
get another file.
The required
flag in PlatformFileTypeData
The allowMultiple
flag in PlatformFileTypeData
The ItemSubtypeData
itemType
. In the simplest
form the subtype is a kind of annotation that is used mainly for creating a
better user experience. If the main item type is also implementing the
FileStoreEnabledData
required
and allowMultiple
have are used in the same way as in the PlatformFileTypeData
class.
A subtype can be related to other subtypes. This is used to "chain" together
groups of item subtypes. For example, Hybridization
is a subtype for PHYSICALBIOASSAY
, which is related to
the Labeled extract (EXTRACT)
subtype which is related to
the Label (TAG)
subtype. In addition, there are also
several protocol and hardware subetypes mixed into this. The relationship between
subtypes makes it possible for client applications to filter out unrelated stuff,
and to validate experiments.