Welcome to the SBW Wiki. This wiki is intended to help users to get a first impression on how to use all the available SBW modules or how to create new SBW modules.
We constantly strive to improve the SBW modules we distribute with the framework. The ChangeLog details bug fixes and improvements we make to the modules, the framework and online services. If you have any problems or questions please file a Bug Report or post a question to the Forum. There also is a sparsely populated but growing SBW FAQ.
To get the source code from the SF CVS repositories use:
cvs -d:pserver:anonymous@jdesigner.cvs.sourceforge.net:/cvsroot/jdesigner login
cvs -z3 -d:pserver:anonymous@jdesigner.cvs.sourceforge.net:/cvsroot/jdesigner co -P modulename
or
cvs -d:pserver:anonymous@sbw.cvs.sourceforge.net:/cvsroot/sbw login
cvs -z3 -d:pserver:anonymous@sbw.cvs.sourceforge.net:/cvsroot/sbw co -P modulename
There is a great variety of SBW modules available:
SBW Simulation
GUI interfaces
SBW Other Non-
GUI Modules
The SBW framework has been designed so that it can be adapted very easily. Language Bindings exist for the major program languages. These bindings have been written to support natural features of the target programming language.
To get started developing for SBW it is probably helpful to look at an example application written in the language of your choice. Let us look at a basic example. One SBW module implements basic mathematical functions … the other SBW module accesses these functions. With those examples it should be easy to write SBW modules by yourself and contribute them to the community.
For more information, please see also the developer documentation.
Example: Programming Language
VB.NET
For more information, please see also the developer documentation.
In order to enable applications to easily access other SBW modules, we developed an add-on to Visual Studio. This Add-on will enable a developer to simply pick the module and service of a given SBW module, and have a wrapper for it generated. More Information in this document.
SBW Modules can be programmed to adhere to a certain category (aka protocol). This allows for quickly exchanging one module for another in the same category, resulting in a more robust software solution. One example would be the exchange of one Simulator for another.
With SBML we have a model specification language that is ideal for exchanging models between software applications. During model creation however, it seems advantageous to use some kind of human readable script to define a model, especially for those who don't want to use a visual tool. Darren Wilkinson has a simple way to specify SBML using a shorthand and various other groups, such as JSim, PySCeS, scrumpy and VCell, have their own standards. What we want however, in addition, is a module based description which would allow users to knit together models. We have quite a few models now, especially from our wet lab synthetic work, and we have no easy way to load and put different models together, so there is definitely a scientific need at our end. I don't think what we have in mind is enough for the synthetic biology community at large because there is a lot of information that is missing but for the modeling community it might be useful. In addition we think there are features missing that would make physiology modeling easier, especially processes that concern current flows and voltage gradients. Finally, representing stochastic models and Langevin models may need looking into.
What we propose is by no means a replacement for SBML, rather we consider it as a complimentary language from which SBML is generated. This preserves all the hard work that has been done by developers (including ourselves). The idea is that models are defined in a modular fashion from which a single SBML file is generated. This could be done in XML of course but in our research we would like a human readable and easily editable form. In view of our particular need we are curious to know if the community at large would be interested in providing a critic of the proposal. Nothing has been implemented, there are no current plans to implement anything and in fact there are some problems still to be resolved.
We provide a first draft of the script for those who might be interested.
First Draft (Rev 1)
Currently this wiki is not completely open … in order to get write access please send me an email.
— Frank Bergmann 2006/07/13 12:38