WormBase database schema
Contents
Infrastructure
The majority of the data stored within WormBase is held in an ACeDb database.
Schema
Objects within the database are defined centrally in a file called models.wrm
More information and a breakdown of the Classes can be found here WormBase_Models
What a curator needs to do to change an object class model.
1) Think about what you want to achieve.
2) Is there a similar model out there that you can borrow
3) Is this schema used enough to warrant being created as a stand alone Hash element?
Eg. Evidence #Evidence
4) Test your model locally and convert your data/create test data to use the new model schema.
5) Propose your model to the models email list with adequate time for discussion/testing.
Provide:
i) The full model (including all changes necessary to linked models.) ii) Some test data.
6) Check to see if any controlled vocabularies in your curation tool need to be updated.
For example, in the case of Caltech's OA, non-ontological controlled vocabularies are listed here.
7) Discuss the model change at the conference call.
What the Models curator needs to do
1) Receive the models proposals and test the model with the test data provided.
2) Identify issues with the model/method
3) Discuss changes / use of common model elements.
4) Update the Sanger CVS copy of the model and ask for verification from submitters.
You need to add a cvs commit message like:
Simple additions were made to the Transposon_family and Strain classes The Picture class was substantially re-worked Additional information can be found here: http://wiki.wormbase.org/index.php/WS223_Models.wrm
You can always give the url to the version you are proposing to tag
http://cvs.sanger.ac.uk/cgi-bin/viewvc.cgi/wormbase/wspec/models.wrm?revision=1.356&root=ensembl&view=markup
5) Once the submitters have ok'd the model change....
Create a more comprehensive human readable diff on the url you just provided.
http://wiki.wormbase.org/index.php/WS223_Models.wrm
6) Tag the models with the release
cd $CVS_DIR cvs tag <tag> models.wrm E.g cvs tag WS223 models.wrm
8) You are Done.