Team:USTC-Software/documents

From 2011.igem.org


Team:USTC-Software - 2011.igem.org

Documents & Models

The Model components of the Lachesis system.

During the development of the Lachesis system, we found that what we need is a runtime lightweight object/relation mapping supported data storage environment. To fulfill this need, we chose the QtScript library, which is in turn based on the JavaScriptCore javascript engine, and express our data as javascript objects. This approach also immediate gains us access to our data from Javascript.

The existing models

  • Reaction Network
    • This model represents a reaction network.
    • This model supports the following file formats:
      • SBML
      • USML
  • Synthetic Biological Part
    • This model represents a specific part, specially, a BioBrick.
    • This model suppports the following file formats:
      • SBOL (query result)
      • FASTA
      • GENBANK
      • EMBL
      • USML
  • iGame
    • This model represents the special data needed by a MoDeL file(used by iGame 2.0 which is included in this package)

ParserComp, the XML protocol parser-parser.

As many of the existing synthetic biology file format is genuine a xml format, we've create this little tool to generate code for parsing specific-formatted files, such as:

  • SBML
  • SBOL query result
  • RSBPML (partsregistry.org query result)
  • USML

and so on.

By writing rules for each standard, the ParserComp tool will generate XML parsing code for the specific format. We've included rules for the mentioned standards above in the project, and it's very each to add support for new formats. We treat this part of an effort to build a ubiquitous synthetic biology software platform.

USML, a format for storing data of ANY format in xml

USML, which stands for Ubiquitous Storage Markup Language, is a loose standard to store ANY data in xml. We use it as a medium to store and restore the data used by our software. This is achieved by name mangling.

In our software nearly every model supports USML, so we can always store data without loss.