An algorithmic approach for in silico removal of circular and linear sugars from molecular structures
Here, we present source code and examples for the Sugar Removal Utility, an algorithmic approach for in silico
removal of circular and linear sugars from molecular structures, as described in Schaub, J., Zielesny, A., Steinbeck,
C. et al. Too sweet: cheminformatics for deglycosylation in natural products. J Cheminform 12, 67 (2020).
The algorithm's implementation is available in three forms: As a web application, a command-line application, and
as source code readily usable for other software development projects. Every form is open and free to use.
The command-line application along with its source code
and the sugar removal algorithm's main implementation are part of this repository. The web
application is available at https://sugar.naturalproducts.net and its source code
can be found here.
The Sugar Removal Utility is also available in the open Java rich client application MORTAR ('MOlecule fRagmenTation fRamework') where in silico molecule fragmentation can be easily conducted on a given data set and the results visualised (MORTAR GitHub repository | MORTAR article).
The repository wiki contains code examples and some additional notes on sugar moiety detection and removal using the SRU.
In the directory /src/main/java/de/unijena/cheminf/deglycosylation/ the class SugarRemovalUtility can be found. This class represents the stand-alone implementation of the sugar removal algorithm. It can be used to detect and remove circular and linear sugar moieties from molecules supplied as CDK IAtomContainer objects with many configurable options. Further documentation can be found in the JavaDoc and the repository wiki. The other sources available in /src/main/java/de/unijena/cheminf/deglycosylation/ belong to the command-line application. It makes the various settings for fine-tuning the sugar detection and removal process available through the command-line arguments. But using the SugarRemovalUtility class directly in your own software project offers some additional configuration options and functionalities:
- Adding and removing circular and linear sugar patterns for the initial detection steps
- Sugar detection without removal
- Detecting only the number of sugar moieties of a molecule
- Extracting the detected or removed sugar moieties from a molecule
- Selecting the biggest or heaviest fragment from an unconnected atom container (e.g. after removal of non-terminal sugars)
- Partitioning and sorting unconnected fragments of an unconnected atom container
The class SugarRemovalUtilityTest can be found in the directory /src/test/java/de/unijena/cheminf/deglycosylation/. It is a JUnit test class that tests the performance of the Sugar Removal Utility on multiple specific molecular structures of natural products hand-picked from public databases (see above). Code examples of how to use and configure the SugarRemovalUtility class can be found here.
The sub-folder "SugarRemovalUtility CMD App" contains the sugar removal command-line application downloadable as compressed archive. After decompression, the JAR file "SugarRemovalUtility-jar-with-dependencies.jar" can be executed from the command-line using Java version 17 or higher. A detailed explanation how to use the application can be found in "Usage instructions.txt". Also, an example input file is provided, named "smiles_test_file.txt".
The text file "hand_picked_np.txt" contains a list of SMILES codes serving as a natural product test set for the performance of the Sugar Removal Utility. They were hand-picked from public databases via the COlleCtion of Open NatUral producTs (COCONUT). More details can be found in the test class (see below) and the Sugar Removal Utility publication.
The Sugar Removal Utility is hosted as a package/artifact on the sonatype maven central repository. See the artifact page for installation guidelines using build tools like maven or gradle. To install the SRU via its JAR archive, you can get it from the releases. Note that other dependencies will need to be installed via JAR archives as well this way.
The command-line application JAR has to be downloaded and decompressed. After that, it can be executed from the command-line as described in the usage instructions. Java version 17 or higher has to be installed on your machine.
This is a Maven project. In order to use the source code for your own software, download or clone the repository and open it in a Maven-supporting IDE (e.g. IntelliJ) as a Maven project and execute the pom.xml file. Maven will then take care of installing all dependencies.
Needs to be pre-installed:
- Java Development Kit (JDK) version 17
- Adoptium OpenJDK (as one possible source of the JDK)
- Eclipse Public License v2.0
- Apache Maven version 4
- Apache Maven
- Apache License, version 2.0
Managed by Maven:
- Chemistry Development Kit (CDK) version 2.9
- Chemistry Development Kit on GitHub
- License: GNU Lesser General Public License 2.1
- JUnit version 5.10.0
- JUnit 5
- License: Eclipse Public License v2.0
- Apache Commons CLI version 1.4
- Apache Commons CLI
- Apache License, version 2.0
Sugar Removal Utility
- Schaub, J., Zielesny, A., Steinbeck, C., Sorokina, M. Too sweet: cheminformatics for deglycosylation in natural products. J Cheminform 12, 67 (2020). https://doi.org/10.1186/s13321-020-00467-y
- Sugar Removal Web Application
- Source Code of Web Application
Glycosylation statistics of COCONUT publication (Using the SRU)
Chemistry Development Kit (CDK)
- Chemistry Development Kit on GitHub
- Steinbeck C, Han Y, Kuhn S, Horlacher O, Luttmann E, Willighagen EL. The Chemistry Development Kit (CDK): An Open-Source Java Library for Chemo- and Bioinformatics. J Chem Inform Comput Sci. 2003;43(2):493-500.
- Steinbeck C, Hoppe C, Kuhn S, Floris M, Guha R, Willighagen EL. Recent Developments of the Chemistry Development Kit (CDK) - An Open-Source Java Library for Chemo- and Bioinformatics. Curr Pharm Des. 2006; 12(17):2111-2120.
- May JW and Steinbeck C. Efficient ring perception for the Chemistry Development Kit. J. Cheminform. 2014; 6:3.
- Willighagen EL, Mayfield JW, Alvarsson J, Berg A, Carlsson L, Jeliazkova N, Kuhn S, Pluska T, Rojas-Chertó M, Spjuth O, Torrance G, Evelo CT, Guha R, Steinbeck C, The Chemistry Development Kit (CDK) v2.0: atom typing, depiction, molecular formulas, and substructure searching. J Cheminform. 2017; 9:33.
- Groovy Cheminformatics with the Chemistry Development Kit
COlleCtion of Open NatUral producTs (COCONUT)
- COCONUT Online home page
- Sorokina, M., Merseburger, P., Rajan, K. et al. COCONUT online: Collection of Open Natural Products database. J Cheminform 13, 2 (2021). https://doi.org/10.1186/s13321-020-00478-9
- Sorokina, M., Steinbeck, C. Review on natural products databases: where to find data in 2020. J Cheminform 12, 20 (2020).