Package: bpforms
BpForms: toolkit for concretely describing non-canonical DNA, RNA, and proteinsBpFormsis 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.BpFormsencompasses five tools:A grammar for concretely describing the primary structures of
non-canonical biopolymers. See thedocumentationfor more
information. For example, the following text represents a modified
DNA molecule that contains a deoxyinosine monomeric form at the
fourth position.ACG[id: "dI"    | structure:"[H][C@]1(O)C[C@@]([H])(O[C@]1([H])CO)N1C=NC2=C1N=CN=C2O"]TThis concrete representation enables theBpFormssoftware 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 app:https://bpforms.orgA JSON REST API:https://bpforms.org/apiA command line interface. See thedocumentationfor more information.A Python API. See thedocumentationfor more information.BpFormswas motivated by the need to concretely represent the
biochemistry of DNA modification, DNA repair, post-transcriptional
processing, and post-translational processing inwhole-cell
computational models.BpFormsis also
a valuable tool for experimental proteomics and synthetic biology. In
particular, we developedBpFormsbecause there were no notations,
schemas, data models, or file formats for concretely representing
non-canonical forms of biopolymers, despite the existence of several
databases and ontologies of DNA, RNA, and protein modifications, theProForma Proteoform
Notation, and
theMOMODICScodes for modified RNA
bases.BpFormscan be combined with*BcForms*to concretely describe the primary structure of complexes.InstallationThe following is a brief guide to installingBpForms. TheDockerfilein the repository contains detailed
instructions for how to installBpFormsin Ubuntu Linux.Install the third-party dependencies listed below.ChemAxon Marvin:
optional to calculate major protonation and tautomerization states
and draw moleculesJava>= 1.8Open BabelPip>= 19.0Python>= 3.6To use Marvin to calculate major protonation and tautomerization
states, setJAVA_HOMEto the path to your Java virtual machine
(JVM)exportJAVA_HOME=/usr/lib/jvm/default-javaTo use Marvin to calculate major protonation and tautomerization
states, add Marvin to the Java class pathexportCLASSPATH=$CLASSPATH:/opt/chemaxon/marvinsuite/lib/MarvinBeans.jarInstall this packageInstall the latest release from PyPI:pip install bpformsInstall the latest revision from GitHub:pip installgit+https://github.com/KarrLab/pkg_utils.git#egg=pkg_utilspip installgit+https://github.com/KarrLab/wc_utils.git#egg=wc_utils[chem]pip installgit+https://github.com/KarrLab/bpforms.git#egg=bpformsTo calculate major protonation and tautomerization states,BpFormsmust be installed with the[protontation]option:pip install bpforms[protontation]   pip installgit+https://github.com/KarrLab/bpforms.git#egg=bpforms[protontation]To draw molecules,BpFormsmust be installed with the[draw]option:pip install bpforms[draw]   pip installgit+https://github.com/KarrLab/bpforms.git#egg=bpforms[draw]To export the alphabets in OBO format,BpFormsmust be
installed with the[onto_export]option:pip install bpforms[onto_export]   pip installgit+https://github.com/KarrLab/bpforms.git#egg=bpforms[onto_export]To install the rest API,BpFormsmust be installed with the[rest_api]option:pip install bpforms[rest_api]   pip installgit+https://github.com/KarrLab/bpforms.git#egg=bpforms[rest_api]Examples, tutorial, and documentationPlease see thedocumentation. Aninteractive
tutorialis also available in the whole-cell modeling sandbox.LicenseThe package is released under theMIT license.CitingBpFormsLang PF, Chebaro Y & Jonathan R. Karr. BpForms: a toolkit for concretely
describing modified DNA, RNA and proteins. arXiv:1903.10042.:link:Development teamThis package was developed by theKarr Labat the Icahn School of Medicine at Mount Sinai in New York, USA.Jonathan KarrYassmine
ChebaroPaul LangQuestions and commentsPlease contact theKarr Labwith any
questions or comments.