BASE 2.0 - Development ideas

Here is a list of some ideas we have for further development of BASE 2 once a stable release exists.

Note that the items in this list are just ideas. It is not yet decided, if, when and by whom any of these items are going to be implemented. Also note that the items are not ordered in a particular way.

More ideas to add to this list are welcome as well as contributions to the development.

Last updated: $Date: 2008-08-13 16:24:27 +0200 (on, 13 aug 2008) $

Ontology support
Implement support for standard ontologies, ie. Gene Ontology, Mage Ontology. It should also be possible to define your own ontologies. The ontologies should be used for annotating items.
MAGE ML export / import
Export MAGE ML in a way that is makes Array express happy. This requires support for ontologies.
Remote API
Support for accessing BASE over the internet. One option is to use web services but there are many other interesting solutions, for example, Java RMI, CORBA and XML-RPC.
R connection
Access BASE from R. Requires a remote API.
MEV connection (DONE)
Access BASE from MEV. Requires a remote API.
Ftp server
Use FTP for file upload/download.
Affymetrix/one-channel plugins (DONE)
To be able to analyse affymetrix data, a new set of plugins are needed, since the existing once mostly work with two-channel data.
Migrate analysed data
The current migration tool doesn't migrate the analysed data from Base 1 to Base 2.
Reporter/gene lists
Import gene lists from public databases, for example, pathway databases. These lists are then made available to plugins for analysis.
Protocol parameters (DONE)
Protocols may have parameters, ie. variations in the compounds and quantities used. When using a protocol it should be possible to specify values for those parameters. It could simply be free-text name/value pairs, or it could be more like the annotation system, with controlled data types and selection lists.
Sanity check tool (DONE)
The core is very loose when it comes to checking the structure of linked items. For example it doesn't care about the number of labeled extracts that are linked to a hybridization or if the labels are different. A sanity check tool would for a project and/or experiment check a lot of things and output a list of warnings.
Platform item (DONE)
Introduce a Platform item in the database. It should be use for an adminsitrator or power user to define default values for protocols, scanner, annotation types, etc. If the platform item is attached to a project the user interface can use those defaults. The sanity check tool could also use this information to warn if the defaults have been replaced.
Multiple annotation sets per item
This would allow multiple annotations of the same annotation type. It can be used for versioning or for measurements at different timepoints for the same item.
Raw data type conversion plugin(s)
Develop one or more plugins that can convert raw data of one type to another. This would be useful (and neccessary) if you in single experiment want to use raw bioassays which originates from different sources.