BpForms documentation¶
BpForms is a set of tools for concretely representing the primary structures of non-canonical forms of biopolymers, such as oxidized DNA, methylated RNA, and acetylated proteins, and calculating properties of non-canonical biopolymers.
BpForms emcompasses five tools:
A grammar for concretely describing the primary structures of non-canonical biopolymers. See Section 3.1.1 for detailed information. For example, the following represents a modified DNA molecule that contains a deoxyinosine monomeric form at the fourth position:
ACG{dI}
This concrete representation enables the BpForms software tools to calculate properties of non-canonical biopolymers.
Tools for calculating properties of non-canonical biopolymers including their chemical formulae, molecular weights, charges, and major protonation and tautomerization states.
A web-based graphical interface: See https://bpforms.org and Section 3.2.
A JSON REST API: See https://bpforms.org/api and Section 3.3.
A command line interface: See Section 3.4.
A Python API: See Section 3.5.
BpForms was motivated by the need to concretely represent the biochemistry of DNA modification, DNA repair, post-transcriptional processing, and post-translational processing in whole-cell computational models. BpForms is also a valuable tool for experimental proteomics and synthetic biology. In particular, we developed BpForms because there were no notations, schemas, data models, or file formats for concretely representing modified forms of biopolymers, despite the existence of several databases and ontologies of DNA, RNA, and protein modifications, the ProForma Proteoform Notation, and the MOMODICS codes for modified RNA bases.
BpForms can be combined with BcForms to concretely describe the primary structure of complexes.
Contents¶
- 1. Uses cases for epigenomics, proteomics, systems biology, synthetic biology, and proteomics
- 2. Installation
- 3. Tutorial
- 3.1. BpForms grammar
- 3.2. Graphical web interface
- 3.3. REST API
- 3.4. Command line interface
- 3.5. Python API
- 3.5.1. Importing BpForms
- 3.5.2. Creating biopolymer forms
- 3.5.3. Getting and setting monomeric forms
- 3.5.4. Getting and setting the base of a monomeric form
- 3.5.5. Protonation and tautomerization
- 3.5.6. Calculation of physical properties
- 3.5.7. Generating IUPAC/IUBMB sequences for BpForms
- 3.5.8. Determine if two biopolymers describe the same structure
- 4. Alphabets of residues
- 5. Ontology of crosslinks
- 6. Managing revisions to the grammar and the ontologies and user ontologies
- 7. Interoperating between ontologies and with other formats
- 8. Integrating BpForms into pathway databases, models, and genetic designs
- 9. Resources for reconstructing modified DNA, RNA, and proteins
- 10. Comparison of BpForms with other formats, databases, and software
- 10.1. Comparison with BigSMILES
- 10.2. Comparison with BioPAX
- 10.3. Comparison with DNAmod
- 10.4. Comparison with HELM
- 10.5. Comparison with MODOMICS
- 10.6. Comparison with the PDB Chemical Component Dictionary/Ligand
- 10.7. Comparison with PDB format
- 10.8. Comparison with PDB SEQRES annotations
- 10.9. Comparison with ProForma Proteoform Notation
- 10.10. Comparison with RESID
- 10.11. Comparison with the RNA Modification Database
- 10.12. Comparison with the Synthetic Biology Open Language (SBOL)
- 10.13. Comparison with the World-wide Monomer Reference Database
- 11. Limitations and alternatives
- 12. Contributing to BpForms
- 13. API documentation
- 14. About