Synthetic Biology Open Language (SBOL) is an open-source standard for in silico representation of genetic designs. SBOL is designed to:
SBOL is built around the idea of a core that is used to unambiguously specify the design of a DNA molecule. Around the core are extensions that are used to increase the kind and amount of information transmitted by the language. There are six extensions under development. For example, one extension includes data and information on the performance of DNA components.
The adoption of SBOL offers many benefits, including: (1) enabling the use of multiple tools without rewriting designs for each tool, (2) enabling designs to be shared and published in a form other researchers can use even in a different software environment, and (3) ensuring the survival of design (and the intellectual effort put into them) beyond the lifetime of the software or the reseachers that were used to create them.
SBOL comprises of an object model and a serialization of SBOL to a file. The file is a machine-readable format form representing designs in synthetic biology. SBOL is neutral with respect to programming languages and software encoding. By supporting SBOL for reading and writing synthetic biology designs, different software tools can directly communicate and store the same representation of these designs. This removes an impediment to sharing engineered systems and permits other researchers and commercial enterprises to start with an unambiguous representation of the design.
The supported serialization is SBOL:Core:rdf:xml. This SBOL serialization is a supported import and/or export format in many synthetic biology tools. GenBank files may be serialized in SBOL and SBOL serializations may be converted to Genbank files using JBEI's j5 SBOL XML <--> GenBank Conversion Utility.
If you are a software developer for synthetic biology, you should grab one of the libSBOL libraries. Java library libSBOLj can import and export the SBOL core file format v1.1. There is also a C/C++ based library, libSBOLc, being written by Jeffrey Johnson that can export and import the files in the same SBOL format. Therefore, Java developers can use the native Java library, and others can use the C/C++ library, either natively or by using bindings for other languages.
The examples page illustrates a variety of DNA designs specified using the core.
SBOL's development started in 2008 with a small grant from Microsoft. Since then it has grown to include a wide consortium of individuals, public institutions, and commercial enterprises both in the US and Europe.
The SBOL Developers Group meets roughly twice a year to discuss progress of the standard. Work on libSBOL and SBOL's various extensions is ongoing. To join the developers group, contact the SBOL Editors at firstname.lastname@example.org. To simply be notified of upcoming events and releases, join the public announcement mailing list, sbol-announce.