A. Patrícia BentopersName, Anne HerseypersName, Eloy FélixpersName, Greg LandrumpersName, Anna GaultonpersName, Francis AtkinsonpersName, Louisa J. BellispersName, Marleen De VeijpersName, Andrew R. LeachpersName (2020date). “An open source chemical structure curation pipeline using RDKit.” Journal of Cheminformaticstitle·j.
Object of study — automated validation, standardization, and parent generation for chemical structuresterm entering ChEMBL
Research question — whether a maintainable open-source RDKitterm pipeline can curate diverse chemical-structure inputs robustly and replace ChEMBL's commercial legacy workflow
Contribution — a public three-component ChEMBL structure pipeline, revised curation rules, production deployment, and comparative tests on curated and uncurated datasets
phenomenon · claim-type · cross-domain-transfer · mechanism · claim-relation · replication-status · limitation — grounded in the full text| phenomenon | chemical-structure identity, representation errors, standardization differences, salt and isotope parentage, and bioactivity aggregation — “The chemical structures submitted to the ChEMBL database are generally received as molfiles [ 4 ] but can also be in SMILES format [ 5 ]. There is no universal standard for these formats and the challenges of converting between chemical structure formats is well documented [ 6 ]. Even the simple process of loading molecules into and out of different cheminformatics packages can subtly change the structure, particularly if it was not well drawn in the first place. Chemical structures from the primary scientific literature are mostly manually drawn from the structural information in the papers prior to loading into ChEMBL. These structures are often represented in the publication as Markush structures with different R-groups shown in SAR (structure–activity relationship) tables. Compounds may also be shown with charges on acidic or basic groups, to indicate the form in which they are likely to interact with amino acid residues in a binding pocket. In some articles the compounds synthesised and reported are isotopically labelled. The ChEMBL compound curation procedure therefore needs to process molecules represented in all these ways (and more) to determine which compounds are the same. Examples of these situations can be found in recent articles where data was extracted for the ChEMBL database [ 7 – 9 ].” | |
| claim-type | method — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | |
| method — evidence | — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | |
| object of study — evidence | — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | |
| research question — evidence | — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | |
| contribution — evidence | — “The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structures in the latest release of the ChEMBL database (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curation. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChem (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIs). Where such differences were present this was largely due to variations in the business rules of the two database providers.” | |
| mechanism | Checker Detects structure problems, emits severity scores, and sends prioritized cases to manual curation. — “The Checker component validates structures prior to the compounds being loaded into ChEMBL. If an error or problem is detected in the structure a score is reported for the molecule; the score increases with the severity of the perceived problem. In the majority of cases compounds are loaded into the database even if a warning flag is identified. The scores are recorded but at this point errors are not corrected. Instead, they are prioritised and subjected to subsequent manual curation, as time and degree of seriousness permits. A summary of the structure checks performed, and the resultant penalty scores assigned are shown in Table 1 .” | mechanisms[0] |
| mechanism | Standardizer Applies a deterministic sequence of predefined formatting and chemistry rules. — “Standardizer : processes (standardises) chemical structures according to a set of predefined rules” | mechanisms[1] |
| mechanism | GetParent Removes permitted salts, solvents, and isotope information before neutralizing the parent. — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | mechanisms[2] |
| mechanism | Standard InChI Folds source-specific structures onto ChEMBL compound identity and identifier assignment. — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | mechanisms[3] |
| mechanism | penalty score Routes fatal, serious, and lower-priority issues to different loading and curation actions. — “It is an individual user’s choice what they decide to do with molecules that return specific penalty scores. For ChEMBL, a penalty score of 7 is considered to be a fatal error and the molfile is not loaded into the database. Examples of illegal input are, for example, unknown elements in the molfile, or molfiles that cannot be read in RDKit due to the inability to process their aromatic bonds. Molecules with a penalty score of 6 are loaded into the ChEMBL database but without a molfile, as it is considered that these have a significant issue with the structure, and it is preferable to fix the problem than have a badly formed molecule in the database. Most of the issues that give rise to a penalty score of 6 are self-explanatory and are described in Table 1 . If the penalty score is 5 or 2 the molecule is loaded but the compounds are also prioritised for manual curation. Again, many of the 5 and 2 penalty scores are self-explanatory, but the stereo mismatch errors perhaps need further explanation. These are reported when the number of stereocentres perceived by the following calculation methods differ:” | mechanisms[4] |
| mechanism | stereo mismatch checks Compare stereocentre counts perceived by molfile, InChI, and RDKit methods. — “Hence the “InChi_RDKit/Mol stereo mismatch” warning message indicates that the InChI and RDKit algorithms perceive the number of stereocentres to be the same but different from the molfile. “Mol/Inchi/RDKit stereo mismatch” means that all three methods perceive different stereocentre counts. The majority of these issues occur in complex molecules such as bridged bicyclic molecules that are badly drawn. As Standard InChI is derived from the molfile, the errors where the molfile and InChI differ in their stereocentre counts are given a higher penalty score [ 5 ] than when they are the same but different from the RDKit stereo count [ 2 ].” | mechanisms[5] |
| mechanism | exclude flag Prevents unsafe automatic standardization for representations unsupported by V2000. — “For certain compound types, particularly organometallic and those with a large number of boron atoms, a flag is set (exclude flag) and no attempt is made to standardise them. This is largely due to the V2000 molfile format used by ChEMBL being unable to accurately represent coordination bonds. For this reason, although the bioactivity data on these compounds is available in ChEMBL, the chemical structures are not curated nor provided in the release version of the database.” | mechanisms[6] |
| mechanism | structure normalization Repairs charge, valence, aromatic, tautomeric, and bond conventions. — “Normalise structure: Fix hypervalent nitro groups Convert covalently drawn alkaline metals connected to O or N to ionic forms (e.g. NaO to Na+ O−) Fix incorrect amide tautomers, e.g. N=COH to HNC(=O) Standardise sulphoxides to charge-separated form Standardise diazonium N to N+ Ensure quaternary N is charged Ensure trivalent O is charged Ensure trivalent S is charged Ensure halogen not bonded to a neighbouring atom is charged” | mechanisms[7] |
| mechanism | neutralisation Adds, removes, or moves hydrogens between atoms and components where possible. — “Ensure molecule is neutralised, if possible, by: Adding or removing Hs Moving Hs from one atom to another (including between components)” | mechanisms[8] |
| mechanism | canonical choice Makes ambiguous proton additions reproducible for the same input molecule. — “Note that if the Hs could be added to more than one atom an arbitrary choice is made but this is done canonically so the result will always be the same for a given molecule” | mechanisms[9] |
| mechanism | parent aggregation Groups bioactivity from related salts and isotopes without changing the measured-form record. — “For the avoidance of any doubt, although parents, salts, solvents, isotopes and mixtures are all identified using the process just described, the bioactivity data recorded in ChEMBL is registered against the form it was measured on. The aggregation by parent structure is undertaken to make it easier to identify all the data for salts and isotopes of a common parent. For example, paroxetine (CHEMBL490) has bioactivity data determined for the parent molecule, two salts, one salt/solvent mixture and two different isotopes as well as there being an additional salt registered as an FDA approved drug. Another example is amphetamine (CHEMBL405), which has bioactivity data in ChEMBL for eight different salts in addition to the parent amphetamine and an additional two salts that are recorded in drug sources such as the FDA orange book [ 34 ]. The parent aggregation process makes this data easily identified and grouped. This is illustrated in Fig. 1 for these two compounds.” | mechanisms[10] |
| mechanism | cross-source Checker evaluation Tests manually drawn, patent-extracted, and depositor-supplied structures. — “To investigate the utility of the Checker module three very different compound sets were used. These were: a set of compounds recently extracted (by manual drawing) from the medicinal chemistry literature by the ChEMBL data extractors; a set of compounds from SureChEMBL, the patent database where the chemical structures are obtained by entity recognition followed by name or image to structure conversion [ 37 ] and a randomly selected compound set from PubChem (SIDs) as initially submitted by the depositors and prior to any compound standardisation. These three datasets are provided as structure data files (sd files) in the Supplementary Information S1, S2, S3. The results from these three sets are shown in Table 2 .” | mechanisms[11] |
| mechanism | cross-database Standardizer comparison Compares Standard InChIKeys after ChEMBL and PubChem rules process the same approved drugs. — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | mechanisms[12] |
| builds-on | the legacy ChEMBL structure-curation pipeline — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | claim_relations[0] |
| builds-on | RDKit and MolVS — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | claim_relations[1] |
| contrasts-with | commercial chemical-standardization software — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | claim_relations[2] |
| contrasts-with | the PubChem standardizer — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | claim_relations[3] |
| sense | chemical identity as equality of Standard InChI and InChIKey — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | senses[0] |
| sense | Standard InChI as an identifier rather than an application-ready structure format — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | senses[1] |
| sense | canonical SMILES as secondary representation rather than primary identity — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | senses[2] |
| sense | Checker warning as prioritization rather than automatic correction — “The Checker component validates structures prior to the compounds being loaded into ChEMBL. If an error or problem is detected in the structure a score is reported for the molecule; the score increases with the severity of the perceived problem. In the majority of cases compounds are loaded into the database even if a warning flag is identified. The scores are recorded but at this point errors are not corrected. Instead, they are prioritised and subjected to subsequent manual curation, as time and degree of seriousness permits. A summary of the structure checks performed, and the resultant penalty scores assigned are shown in Table 1 .” | senses[3] |
| sense | penalty seven as refusal, six as structure withholding, and lower scores as curation priority — “It is an individual user’s choice what they decide to do with molecules that return specific penalty scores. For ChEMBL, a penalty score of 7 is considered to be a fatal error and the molfile is not loaded into the database. Examples of illegal input are, for example, unknown elements in the molfile, or molfiles that cannot be read in RDKit due to the inability to process their aromatic bonds. Molecules with a penalty score of 6 are loaded into the ChEMBL database but without a molfile, as it is considered that these have a significant issue with the structure, and it is preferable to fix the problem than have a badly formed molecule in the database. Most of the issues that give rise to a penalty score of 6 are self-explanatory and are described in Table 1 . If the penalty score is 5 or 2 the molecule is loaded but the compounds are also prioritised for manual curation. Again, many of the 5 and 2 penalty scores are self-explanatory, but the stereo mismatch errors perhaps need further explanation. These are reported when the number of stereocentres perceived by the following calculation methods differ:” | senses[4] |
| sense | low-priority InChI warnings as context dependent rather than universal errors — “The InChI software may give a number of warnings. These are also reported by the ChEMBL Checker module. Some of these are considered important, but others such as “InChI: Omitted undefined stereo”, “InChI: Charges were rearranged”, “InChI: Ambiguous stereo”, “InChI: Proton(s) added/removed” and “InChI: Not chiral” are generated for large numbers of molecules. These either reflect the reorganisation of atoms in order to generate the InChI or are related to stereochemical ambiguity arising, for example, from the fact that the compound is a racemate; these are not considered issues for a database such as ChEMBL. Therefore, these are given a low penalty score [ 2 ]. However, in other contexts they might be more relevant and so are reported in the Checker output.” | senses[5] |
| sense | standardization as safe rule application under imperfect source drawings — “The standardisation rules implemented in the ChEMBL database are based largely on the FDA/IUPAC guidelines [ 31 , 32 ]. Whilst the aim is to adhere to these rules as closely as possible, the practical reality is that submitted compounds are sometimes drawn imperfectly or the structures are ambiguously defined in the original publication or by the depositor. An automated standardiser can only safely correct some of the potential issues and the standardisation rules, currently encoded in the Standardizer component, are outlined here.” | senses[6] |
| sense | parent as a neutralized grouping structure rather than the necessarily measured form — “For the avoidance of any doubt, although parents, salts, solvents, isotopes and mixtures are all identified using the process just described, the bioactivity data recorded in ChEMBL is registered against the form it was measured on. The aggregation by parent structure is undertaken to make it easier to identify all the data for salts and isotopes of a common parent. For example, paroxetine (CHEMBL490) has bioactivity data determined for the parent molecule, two salts, one salt/solvent mixture and two different isotopes as well as there being an additional salt registered as an FDA approved drug. Another example is amphetamine (CHEMBL405), which has bioactivity data in ChEMBL for eight different salts in addition to the parent amphetamine and an additional two salts that are recorded in drug sources such as the FDA orange book [ 34 ]. The parent aggregation process makes this data easily identified and grouped. This is illustrated in Fig. 1 for these two compounds.” | senses[7] |
| sense | genuine mixture as a retained multicomponent parent — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | senses[8] |
| sense | organometallic exclusion as a representation limit rather than missing bioactivity — “For certain compound types, particularly organometallic and those with a large number of boron atoms, a flag is set (exclude flag) and no attempt is made to standardise them. This is largely due to the V2000 molfile format used by ChEMBL being unable to accurately represent coordination bonds. For this reason, although the bioactivity data on these compounds is available in ChEMBL, the chemical structures are not curated nor provided in the release version of the database.” | senses[9] |
| sense | Standardizer effectiveness as changed InChI rather than release-to-release difference — “Examples of applying the Standardizer to some “ChEMBL-like” molecules are shown in Fig. 2 . These examples show some of the specific standardisations described in the methods section for which the Standardizer component was designed to correct. Also, as described above, there will be differences between the last two versions of ChEMBL (versions 25 and 26) due to the re-standardisation as well as the manual curation that took place between the two releases. Comparing the structures in these two releases does not give any useful statistics on the effectiveness of the new Standardizer . Instead, to investigate this, the three sets of molecules previously described have been standardised by the new Standardizer module. The critical differences are where the new standardisation results in a different InChI from the one obtained prior to standardisation.” | senses[10] |
| sense | cross-database disagreement as a business-rule difference rather than simple error — “The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structures in the latest release of the ChEMBL database (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curation. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChem (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIs). Where such differences were present this was largely due to variations in the business rules of the two database providers.” | senses[11] |
| control | three datasets with distinct curation and extraction origins — held — “As expected, the ChEMBL literature set, being derived via manual extraction and curation, generates the fewest serious penalty scores, although it is clear there are still thousands of molecules with an undesirable representation (e.g. stereo bonds in rings, atoms with multiple stereo bonds and molecules with stereo bonds to stereocentres). The PubChem deposited set includes a large number of empty molfiles and unknown elements (often represented as an asterix, “*”) in addition to molecules containing overlapping atoms. The SureChEMBL set has a large number of compounds with V3000 formatted molfiles, radical entities as well as bonds with illegal stereo flags (usually molfiles with a 4 in the bond stereo field of the bond block). The difference between these sets is not surprising given the differences in the data sources, confirming that the Checker is suitable for identifying a range of different issues of differing severity for datasets of diverse origin.” — rules out dependence of Checker utility on one input source — “To investigate the utility of the Checker module three very different compound sets were used. These were: a set of compounds recently extracted (by manual drawing) from the medicinal chemistry literature by the ChEMBL data extractors; a set of compounds from SureChEMBL, the patent database where the chemical structures are obtained by entity recognition followed by name or image to structure conversion [ 37 ] and a randomly selected compound set from PubChem (SIDs) as initially submitted by the depositors and prior to any compound standardisation. These three datasets are provided as structure data files (sd files) in the Supplementary Information S1, S2, S3. The results from these three sets are shown in Table 2 .” | controls[0] |
| control | the same approved-drug structures processed by ChEMBL and PubChem standardizers — held — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” — rules out different starting compounds as the explanation for output differences — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | controls[1] |
| control | complete re-standardization of ChEMBL 26 — held — “One of the objectives in developing the new curation pipeline was to improve the quality of the chemical structures in the ChEMBL database. As the rules implemented in the new Standardizer and GetParent modules were largely based on the original ChEMBL rules developed over the last 10 years it is difficult to unambiguously quantify this improvement. To provide a consistent starting point, therefore, the current 1.9 million compounds in the latest release of ChEMBL (ChEMBL 26) have been completely re-standardised and the parents regenerated for the whole database using the new pipeline.” — rules out inconsistent legacy starting rules within the production database — “One of the objectives in developing the new curation pipeline was to improve the quality of the chemical structures in the ChEMBL database. As the rules implemented in the new Standardizer and GetParent modules were largely based on the original ChEMBL rules developed over the last 10 years it is difficult to unambiguously quantify this improvement. To provide a consistent starting point, therefore, the current 1.9 million compounds in the latest release of ChEMBL (ChEMBL 26) have been completely re-standardised and the parents regenerated for the whole database using the new pipeline.” | controls[2] |
| control | manual-curated, patent-extracted, and unstandardized depositor sets — held — “A breakdown of the number of compounds from each set which returned penalty scores is shown in Table 3 . When more than one score is returned for a compound the highest score is reported. It is worth noting that 75% of the ChEMBL literature set compounds and 60% of both the SureChEMBL and PubChem compound sets showed no issues in the Checker tests. When structures with a penalty score of 2 associated with InChI Warnings such as “omitted undefined stereo” and “InChI: Charges were rearranged” are excluded (as described above) then the proportion of compounds with undesirable features that would benefit from correction falls to between 4 and 11%.” — rules out one data-quality regime as the sole test condition — “To investigate the utility of the Checker module three very different compound sets were used. These were: a set of compounds recently extracted (by manual drawing) from the medicinal chemistry literature by the ChEMBL data extractors; a set of compounds from SureChEMBL, the patent database where the chemical structures are obtained by entity recognition followed by name or image to structure conversion [ 37 ] and a randomly selected compound set from PubChem (SIDs) as initially submitted by the depositors and prior to any compound standardisation. These three datasets are provided as structure data files (sd files) in the Supplementary Information S1, S2, S3. The results from these three sets are shown in Table 2 .” | controls[3] |
| note | the legacy ChEMBL structure-curation pipeline — The new implementation retains and revises accumulated ChEMBL rules. — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | claim_relations[0] |
| weight | the legacy ChEMBL structure-curation pipeline — 0.95 — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | claim_relations[0] |
| note | RDKit and MolVS — The implementation is explicitly built around these open-source tools. — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | claim_relations[1] |
| note | commercial chemical-standardization software — Removing commercial dependency is a stated design goal. — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | claim_relations[2] |
| weight | commercial chemical-standardization software — 0.95 — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | claim_relations[2] |
| note | the PubChem standardizer — The paper directly compares output identity and policy differences. — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | claim_relations[3] |
| weight | the PubChem standardizer — 0.95 — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | claim_relations[3] |
| note | Checker —part-of→ chemical curation pipeline — Explicit component membership. — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concept_edges[0] |
| relation | Checker —part-of→ chemical curation pipeline — The chemical curation pipeline comprises a Checker component. — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concept_edges[0] |
| note | Standardizer —part-of→ chemical curation pipeline — Explicit component membership. — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concept_edges[1] |
| relation | Standardizer —part-of→ chemical curation pipeline — The chemical curation pipeline comprises a Standardizer component. — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concept_edges[1] |
| note | GetParent —part-of→ chemical curation pipeline — Explicit component membership. — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concept_edges[2] |
| relation | GetParent —part-of→ chemical curation pipeline — The chemical curation pipeline comprises a GetParent component. — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concept_edges[2] |
| audit | V2000 molfile —is-a→ chemical structures — Audit 2026-09-29: DOUBTFUL - read against its full span and kept, but the span calls the molfile the primary chemical structure REPRESENTATION; is-a 'chemical structures' is loose. — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concept_edges[3] |
| note | V2000 molfile —is-a→ chemical structures — Direct categorical representation statement. — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concept_edges[3] |
| relation | V2000 molfile —is-a→ chemical structures — A standardized V2000 molfile is the primary chemical-structure representation in ChEMBL. — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concept_edges[3] |
| note | Standard InChI —is-a→ identifier — Direct categorical definition. — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concept_edges[4] |
| relation | Standard InChI —is-a→ identifier — Standard InChI was designed as an identifier rather than a structure format. — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concept_edges[4] |
| note | Standardizer —contrasted-with→ PubChem standardiser — Direct comparison of outputs and rules. — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | concept_edges[7] |
| relation | Standardizer —contrasted-with→ PubChem standardiser — The ChEMBL Standardizer is directly compared with the PubChem standardiser on approved drugs. — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | concept_edges[7] |
| weight | Standardizer —contrasted-with→ PubChem standardiser — 0.95 — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | concept_edges[7] |
| outcome | control — held — “To investigate the utility of the Checker module three very different compound sets were used. These were: a set of compounds recently extracted (by manual drawing) from the medicinal chemistry literature by the ChEMBL data extractors; a set of compounds from SureChEMBL, the patent database where the chemical structures are obtained by entity recognition followed by name or image to structure conversion [ 37 ] and a randomly selected compound set from PubChem (SIDs) as initially submitted by the depositors and prior to any compound standardisation. These three datasets are provided as structure data files (sd files) in the Supplementary Information S1, S2, S3. The results from these three sets are shown in Table 2 .” — “As expected, the ChEMBL literature set, being derived via manual extraction and curation, generates the fewest serious penalty scores, although it is clear there are still thousands of molecules with an undesirable representation (e.g. stereo bonds in rings, atoms with multiple stereo bonds and molecules with stereo bonds to stereocentres). The PubChem deposited set includes a large number of empty molfiles and unknown elements (often represented as an asterix, “*”) in addition to molecules containing overlapping atoms. The SureChEMBL set has a large number of compounds with V3000 formatted molfiles, radical entities as well as bonds with illegal stereo flags (usually molfiles with a 4 in the bond stereo field of the bond block). The difference between these sets is not surprising given the differences in the data sources, confirming that the Checker is suitable for identifying a range of different issues of differing severity for datasets of diverse origin.” | controls[0] |
| outcome | control — held — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | controls[1] |
| outcome | control — held — “One of the objectives in developing the new curation pipeline was to improve the quality of the chemical structures in the ChEMBL database. As the rules implemented in the new Standardizer and GetParent modules were largely based on the original ChEMBL rules developed over the last 10 years it is difficult to unambiguously quantify this improvement. To provide a consistent starting point, therefore, the current 1.9 million compounds in the latest release of ChEMBL (ChEMBL 26) have been completely re-standardised and the parents regenerated for the whole database using the new pipeline.” | controls[2] |
| outcome | control — held — “To investigate the utility of the Checker module three very different compound sets were used. These were: a set of compounds recently extracted (by manual drawing) from the medicinal chemistry literature by the ChEMBL data extractors; a set of compounds from SureChEMBL, the patent database where the chemical structures are obtained by entity recognition followed by name or image to structure conversion [ 37 ] and a randomly selected compound set from PubChem (SIDs) as initially submitted by the depositors and prior to any compound standardisation. These three datasets are provided as structure data files (sd files) in the Supplementary Information S1, S2, S3. The results from these three sets are shown in Table 2 .” — “A breakdown of the number of compounds from each set which returned penalty scores is shown in Table 3 . When more than one score is returned for a compound the highest score is reported. It is worth noting that 75% of the ChEMBL literature set compounds and 60% of both the SureChEMBL and PubChem compound sets showed no issues in the Checker tests. When structures with a penalty score of 2 associated with InChI Warnings such as “omitted undefined stereo” and “InChI: Charges were rearranged” are excluded (as described above) then the proportion of compounds with undesirable features that would benefit from correction falls to between 4 and 11%.” | controls[3] |
| relation | incoming compounds → chemical standardisation — Incoming structures require standardization before reliable comparison and integration. — “The ChEMBL database is one of a number of public databases that contain bioactivity data on small molecule compounds curated from diverse sources. Incoming compounds are typically not standardised according to consistent rules. In order to maintain the quality of the final database and to easily compare and integrate data on the same compound from different sources it is necessary for the chemical structures in the database to be appropriately standardised.” | unhoused_relations[0] |
| relation | Standard InChI and InChIKey equality → ChEMBL identifier — Equal identifiers make structures count as the same compound and receive one ChEMBL identifier. — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | unhoused_relations[1] |
| relation | chemical structure format conversion → subtle structure changes — Loading structures across packages can subtly change them. — “The chemical structures submitted to the ChEMBL database are generally received as molfiles [ 4 ] but can also be in SMILES format [ 5 ]. There is no universal standard for these formats and the challenges of converting between chemical structure formats is well documented [ 6 ]. Even the simple process of loading molecules into and out of different cheminformatics packages can subtly change the structure, particularly if it was not well drawn in the first place. Chemical structures from the primary scientific literature are mostly manually drawn from the structural information in the papers prior to loading into ChEMBL. These structures are often represented in the publication as Markush structures with different R-groups shown in SAR (structure–activity relationship) tables. Compounds may also be shown with charges on acidic or basic groups, to indicate the form in which they are likely to interact with amino acid residues in a binding pocket. In some articles the compounds synthesised and reported are isotopically labelled. The ChEMBL compound curation procedure therefore needs to process molecules represented in all these ways (and more) to determine which compounds are the same. Examples of these situations can be found in recent articles where data was extracted for the ChEMBL database [ 7 – 9 ].” | unhoused_relations[2] |
| weight | chemical structure format conversion → subtle structure changes — 0.95 — “The chemical structures submitted to the ChEMBL database are generally received as molfiles [ 4 ] but can also be in SMILES format [ 5 ]. There is no universal standard for these formats and the challenges of converting between chemical structure formats is well documented [ 6 ]. Even the simple process of loading molecules into and out of different cheminformatics packages can subtly change the structure, particularly if it was not well drawn in the first place. Chemical structures from the primary scientific literature are mostly manually drawn from the structural information in the papers prior to loading into ChEMBL. These structures are often represented in the publication as Markush structures with different R-groups shown in SAR (structure–activity relationship) tables. Compounds may also be shown with charges on acidic or basic groups, to indicate the form in which they are likely to interact with amino acid residues in a binding pocket. In some articles the compounds synthesised and reported are isotopically labelled. The ChEMBL compound curation procedure therefore needs to process molecules represented in all these ways (and more) to determine which compounds are the same. Examples of these situations can be found in recent articles where data was extracted for the ChEMBL database [ 7 – 9 ].” | unhoused_relations[2] |
| relation | legacy pipeline → difficult maintenance — Accumulated exceptions made the legacy code difficult to maintain and modify. — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | unhoused_relations[3] |
| weight | legacy pipeline → difficult maintenance — 0.95 — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | unhoused_relations[3] |
| relation | chemical curation pipeline → eTOX standardiser tool — The new pipeline is explicitly not a replacement for the molecular-modelling standardiser. — “It is important to note that this curation pipeline is not intended as a replacement for a similarly named standardiser tool [ 29 ] which was previously developed by the ChEMBL group as a contribution to the IMI eTOX project [ 30 ] and was specifically designed to standardise molecules in preparation for molecular modelling applications.” | unhoused_relations[4] |
| relation | penalty score → manual curation priority — Penalty severity determines loading and manual-curation priority. — “It is an individual user’s choice what they decide to do with molecules that return specific penalty scores. For ChEMBL, a penalty score of 7 is considered to be a fatal error and the molfile is not loaded into the database. Examples of illegal input are, for example, unknown elements in the molfile, or molfiles that cannot be read in RDKit due to the inability to process their aromatic bonds. Molecules with a penalty score of 6 are loaded into the ChEMBL database but without a molfile, as it is considered that these have a significant issue with the structure, and it is preferable to fix the problem than have a badly formed molecule in the database. Most of the issues that give rise to a penalty score of 6 are self-explanatory and are described in Table 1 . If the penalty score is 5 or 2 the molecule is loaded but the compounds are also prioritised for manual curation. Again, many of the 5 and 2 penalty scores are self-explanatory, but the stereo mismatch errors perhaps need further explanation. These are reported when the number of stereocentres perceived by the following calculation methods differ:” | unhoused_relations[5] |
| relation | V2000 molfile → coordination bonds — V2000 cannot accurately represent coordination bonds. — “For certain compound types, particularly organometallic and those with a large number of boron atoms, a flag is set (exclude flag) and no attempt is made to standardise them. This is largely due to the V2000 molfile format used by ChEMBL being unable to accurately represent coordination bonds. For this reason, although the bioactivity data on these compounds is available in ChEMBL, the chemical structures are not curated nor provided in the release version of the database.” | unhoused_relations[6] |
| relation | GetParent → parent structure — GetParent removes listed components and transforms the remainder into a neutralized parent. — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | unhoused_relations[7] |
| relation | organometallic compounds → salt removal — Organometallic compounds do not have salts removed because the transformation can create an invalid parent ion. — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | unhoused_relations[8] |
| relation | parent aggregation process → bioactivity data — Parent aggregation groups measurements across related forms while preserving measured-form registration. — “For the avoidance of any doubt, although parents, salts, solvents, isotopes and mixtures are all identified using the process just described, the bioactivity data recorded in ChEMBL is registered against the form it was measured on. The aggregation by parent structure is undertaken to make it easier to identify all the data for salts and isotopes of a common parent. For example, paroxetine (CHEMBL490) has bioactivity data determined for the parent molecule, two salts, one salt/solvent mixture and two different isotopes as well as there being an additional salt registered as an FDA approved drug. Another example is amphetamine (CHEMBL405), which has bioactivity data in ChEMBL for eight different salts in addition to the parent amphetamine and an additional two salts that are recorded in drug sources such as the FDA orange book [ 34 ]. The parent aggregation process makes this data easily identified and grouped. This is illustrated in Fig. 1 for these two compounds.” | unhoused_relations[9] |
| relation | different data sources → different Checker issue profiles — Datasets of different origin exhibit different structural-error profiles. — “As expected, the ChEMBL literature set, being derived via manual extraction and curation, generates the fewest serious penalty scores, although it is clear there are still thousands of molecules with an undesirable representation (e.g. stereo bonds in rings, atoms with multiple stereo bonds and molecules with stereo bonds to stereocentres). The PubChem deposited set includes a large number of empty molfiles and unknown elements (often represented as an asterix, “*”) in addition to molecules containing overlapping atoms. The SureChEMBL set has a large number of compounds with V3000 formatted molfiles, radical entities as well as bonds with illegal stereo flags (usually molfiles with a 4 in the bond stereo field of the bond block). The difference between these sets is not surprising given the differences in the data sources, confirming that the Checker is suitable for identifying a range of different issues of differing severity for datasets of diverse origin.” | unhoused_relations[10] |
| weight | different data sources → different Checker issue profiles — 0.95 — “As expected, the ChEMBL literature set, being derived via manual extraction and curation, generates the fewest serious penalty scores, although it is clear there are still thousands of molecules with an undesirable representation (e.g. stereo bonds in rings, atoms with multiple stereo bonds and molecules with stereo bonds to stereocentres). The PubChem deposited set includes a large number of empty molfiles and unknown elements (often represented as an asterix, “*”) in addition to molecules containing overlapping atoms. The SureChEMBL set has a large number of compounds with V3000 formatted molfiles, radical entities as well as bonds with illegal stereo flags (usually molfiles with a 4 in the bond stereo field of the bond block). The difference between these sets is not surprising given the differences in the data sources, confirming that the Checker is suitable for identifying a range of different issues of differing severity for datasets of diverse origin.” | unhoused_relations[10] |
| relation | Standardizer neutralisation → changed InChIs — Most identity changes occur when the Standardizer neutralizes a charged molecule. — “The percentage of molecules with changed InChIs are low for all datasets and always < 2% in each case. The majority of the changes occur where the Standardizer has neutralised a previously charged molecule, for example by removing a proton from a positively charged nitrogen or protonating a carboxyl group. A summary of these changes is shown in Table 5 . This also indicates which layer of the InChI has changed. Whilst initially it may appear that changes to the connectivity layer are unexpected for a standardisation process these examples are due to salts where the overall molfile is not neutral and where a proton has been removed to confer neutrality. To further exemplify this, some examples from the ChEMBL literature set are shown in Fig. 3 where the effect of standardisation on neutralising the molecules can be observed.” | unhoused_relations[11] |
| weight | Standardizer neutralisation → changed InChIs — 0.95 — “The percentage of molecules with changed InChIs are low for all datasets and always < 2% in each case. The majority of the changes occur where the Standardizer has neutralised a previously charged molecule, for example by removing a proton from a positively charged nitrogen or protonating a carboxyl group. A summary of these changes is shown in Table 5 . This also indicates which layer of the InChI has changed. Whilst initially it may appear that changes to the connectivity layer are unexpected for a standardisation process these examples are due to salts where the overall molfile is not neutral and where a proton has been removed to confer neutrality. To further exemplify this, some examples from the ChEMBL literature set are shown in Fig. 3 where the effect of standardisation on neutralising the molecules can be observed.” | unhoused_relations[11] |
| relation | canonical tautomer policy → different Standard InChIKeys — PubChem's canonical-tautomer policy is a key source of cross-standardizer differences. — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | unhoused_relations[12] |
| weight | canonical tautomer policy → different Standard InChIKeys — 0.95 — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | unhoused_relations[12] |
| relation | database business rules → non-identical structures — Residual ChEMBL-PubChem differences are largely due to provider business rules. — “The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structures in the latest release of the ChEMBL database (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curation. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChem (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIs). Where such differences were present this was largely due to variations in the business rules of the two database providers.” | unhoused_relations[13] |
| weight | database business rules → non-identical structures — 0.95 — “The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structures in the latest release of the ChEMBL database (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curation. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChem (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIs). Where such differences were present this was largely due to variations in the business rules of the two database providers.” | unhoused_relations[13] |
| no type for this | incoming compounds → chemical standardisation — Incoming structures require standardization before reliable comparison and integration. — “The ChEMBL database is one of a number of public databases that contain bioactivity data on small molecule compounds curated from diverse sources. Incoming compounds are typically not standardised according to consistent rules. In order to maintain the quality of the final database and to easily compare and integrate data on the same compound from different sources it is necessary for the chemical structures in the database to be appropriately standardised.” | unhoused_relations[0] |
| no type for this | Standard InChI and InChIKey equality → ChEMBL identifier — Equal identifiers make structures count as the same compound and receive one ChEMBL identifier. — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | unhoused_relations[1] |
| no type for this | chemical structure format conversion → subtle structure changes — Loading structures across packages can subtly change them. — “The chemical structures submitted to the ChEMBL database are generally received as molfiles [ 4 ] but can also be in SMILES format [ 5 ]. There is no universal standard for these formats and the challenges of converting between chemical structure formats is well documented [ 6 ]. Even the simple process of loading molecules into and out of different cheminformatics packages can subtly change the structure, particularly if it was not well drawn in the first place. Chemical structures from the primary scientific literature are mostly manually drawn from the structural information in the papers prior to loading into ChEMBL. These structures are often represented in the publication as Markush structures with different R-groups shown in SAR (structure–activity relationship) tables. Compounds may also be shown with charges on acidic or basic groups, to indicate the form in which they are likely to interact with amino acid residues in a binding pocket. In some articles the compounds synthesised and reported are isotopically labelled. The ChEMBL compound curation procedure therefore needs to process molecules represented in all these ways (and more) to determine which compounds are the same. Examples of these situations can be found in recent articles where data was extracted for the ChEMBL database [ 7 – 9 ].” | unhoused_relations[2] |
| no type for this | legacy pipeline → difficult maintenance — Accumulated exceptions made the legacy code difficult to maintain and modify. — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | unhoused_relations[3] |
| no type for this | chemical curation pipeline → eTOX standardiser tool — The new pipeline is explicitly not a replacement for the molecular-modelling standardiser. — “It is important to note that this curation pipeline is not intended as a replacement for a similarly named standardiser tool [ 29 ] which was previously developed by the ChEMBL group as a contribution to the IMI eTOX project [ 30 ] and was specifically designed to standardise molecules in preparation for molecular modelling applications.” | unhoused_relations[4] |
| no type for this | penalty score → manual curation priority — Penalty severity determines loading and manual-curation priority. — “It is an individual user’s choice what they decide to do with molecules that return specific penalty scores. For ChEMBL, a penalty score of 7 is considered to be a fatal error and the molfile is not loaded into the database. Examples of illegal input are, for example, unknown elements in the molfile, or molfiles that cannot be read in RDKit due to the inability to process their aromatic bonds. Molecules with a penalty score of 6 are loaded into the ChEMBL database but without a molfile, as it is considered that these have a significant issue with the structure, and it is preferable to fix the problem than have a badly formed molecule in the database. Most of the issues that give rise to a penalty score of 6 are self-explanatory and are described in Table 1 . If the penalty score is 5 or 2 the molecule is loaded but the compounds are also prioritised for manual curation. Again, many of the 5 and 2 penalty scores are self-explanatory, but the stereo mismatch errors perhaps need further explanation. These are reported when the number of stereocentres perceived by the following calculation methods differ:” | unhoused_relations[5] |
| no type for this | V2000 molfile → coordination bonds — V2000 cannot accurately represent coordination bonds. — “For certain compound types, particularly organometallic and those with a large number of boron atoms, a flag is set (exclude flag) and no attempt is made to standardise them. This is largely due to the V2000 molfile format used by ChEMBL being unable to accurately represent coordination bonds. For this reason, although the bioactivity data on these compounds is available in ChEMBL, the chemical structures are not curated nor provided in the release version of the database.” | unhoused_relations[6] |
| no type for this | GetParent → parent structure — GetParent removes listed components and transforms the remainder into a neutralized parent. — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | unhoused_relations[7] |
| no type for this | organometallic compounds → salt removal — Organometallic compounds do not have salts removed because the transformation can create an invalid parent ion. — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | unhoused_relations[8] |
| no type for this | parent aggregation process → bioactivity data — Parent aggregation groups measurements across related forms while preserving measured-form registration. — “For the avoidance of any doubt, although parents, salts, solvents, isotopes and mixtures are all identified using the process just described, the bioactivity data recorded in ChEMBL is registered against the form it was measured on. The aggregation by parent structure is undertaken to make it easier to identify all the data for salts and isotopes of a common parent. For example, paroxetine (CHEMBL490) has bioactivity data determined for the parent molecule, two salts, one salt/solvent mixture and two different isotopes as well as there being an additional salt registered as an FDA approved drug. Another example is amphetamine (CHEMBL405), which has bioactivity data in ChEMBL for eight different salts in addition to the parent amphetamine and an additional two salts that are recorded in drug sources such as the FDA orange book [ 34 ]. The parent aggregation process makes this data easily identified and grouped. This is illustrated in Fig. 1 for these two compounds.” | unhoused_relations[9] |
| no type for this | different data sources → different Checker issue profiles — Datasets of different origin exhibit different structural-error profiles. — “As expected, the ChEMBL literature set, being derived via manual extraction and curation, generates the fewest serious penalty scores, although it is clear there are still thousands of molecules with an undesirable representation (e.g. stereo bonds in rings, atoms with multiple stereo bonds and molecules with stereo bonds to stereocentres). The PubChem deposited set includes a large number of empty molfiles and unknown elements (often represented as an asterix, “*”) in addition to molecules containing overlapping atoms. The SureChEMBL set has a large number of compounds with V3000 formatted molfiles, radical entities as well as bonds with illegal stereo flags (usually molfiles with a 4 in the bond stereo field of the bond block). The difference between these sets is not surprising given the differences in the data sources, confirming that the Checker is suitable for identifying a range of different issues of differing severity for datasets of diverse origin.” | unhoused_relations[10] |
| no type for this | Standardizer neutralisation → changed InChIs — Most identity changes occur when the Standardizer neutralizes a charged molecule. — “The percentage of molecules with changed InChIs are low for all datasets and always < 2% in each case. The majority of the changes occur where the Standardizer has neutralised a previously charged molecule, for example by removing a proton from a positively charged nitrogen or protonating a carboxyl group. A summary of these changes is shown in Table 5 . This also indicates which layer of the InChI has changed. Whilst initially it may appear that changes to the connectivity layer are unexpected for a standardisation process these examples are due to salts where the overall molfile is not neutral and where a proton has been removed to confer neutrality. To further exemplify this, some examples from the ChEMBL literature set are shown in Fig. 3 where the effect of standardisation on neutralising the molecules can be observed.” | unhoused_relations[11] |
| no type for this | canonical tautomer policy → different Standard InChIKeys — PubChem's canonical-tautomer policy is a key source of cross-standardizer differences. — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | unhoused_relations[12] |
| no type for this | database business rules → non-identical structures — Residual ChEMBL-PubChem differences are largely due to provider business rules. — “The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structures in the latest release of the ChEMBL database (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curation. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChem (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIs). Where such differences were present this was largely due to variations in the business rules of the two database providers.” | unhoused_relations[13] |
| limitation | Incoming compounds are not consistently standardized across sources. — “The ChEMBL database is one of a number of public databases that contain bioactivity data on small molecule compounds curated from diverse sources. Incoming compounds are typically not standardised according to consistent rules. In order to maintain the quality of the final database and to easily compare and integrate data on the same compound from different sources it is necessary for the chemical structures in the database to be appropriately standardised.” | limitations[0] |
| limitation | Manual curation cannot keep up with more than fifty thousand new structures per release. — “In order to facilitate the use of the database, a key objective of the ChEMBL compound curation process is to standardise the chemical structures stored in the database and to assign a unique identifier to each distinct chemical structure regardless of the source. It is worth noting that there are over 5000 unique compounds in the ChEMBL database with data from ten or more different sources, and four compounds (doxorubicin, ciprofloxacin, chloroquine and paclitaxel) each with data from over 1000 sources. For each ChEMBL release, more than 50,000 new structures are added to the database, which makes manual curation and standardisation of the chemical structures impracticable. Hence an automated procedure is required.” | limitations[1] |
| limitation | No universal molfile or SMILES standard prevents subtle conversion changes. — “The chemical structures submitted to the ChEMBL database are generally received as molfiles [ 4 ] but can also be in SMILES format [ 5 ]. There is no universal standard for these formats and the challenges of converting between chemical structure formats is well documented [ 6 ]. Even the simple process of loading molecules into and out of different cheminformatics packages can subtly change the structure, particularly if it was not well drawn in the first place. Chemical structures from the primary scientific literature are mostly manually drawn from the structural information in the papers prior to loading into ChEMBL. These structures are often represented in the publication as Markush structures with different R-groups shown in SAR (structure–activity relationship) tables. Compounds may also be shown with charges on acidic or basic groups, to indicate the form in which they are likely to interact with amino acid residues in a binding pocket. In some articles the compounds synthesised and reported are isotopically labelled. The ChEMBL compound curation procedure therefore needs to process molecules represented in all these ways (and more) to determine which compounds are the same. Examples of these situations can be found in recent articles where data was extracted for the ChEMBL database [ 7 – 9 ].” | limitations[2] |
| limitation | Standard InChI misses some tautomerism and organometallic cis-trans identity and cannot encode relative stereochemistry. — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | limitations[3] |
| limitation | The legacy commercial workflow became hard to maintain and modify. — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | limitations[4] |
| limitation | An automated standardizer can safely correct only some imperfect or ambiguous structures. — “The standardisation rules implemented in the ChEMBL database are based largely on the FDA/IUPAC guidelines [ 31 , 32 ]. Whilst the aim is to adhere to these rules as closely as possible, the practical reality is that submitted compounds are sometimes drawn imperfectly or the structures are ambiguously defined in the original publication or by the depositor. An automated standardiser can only safely correct some of the potential issues and the standardisation rules, currently encoded in the Standardizer component, are outlined here.” | limitations[5] |
| limitation | V2000 molfiles cannot accurately represent coordination bonds in excluded compound classes. — “For certain compound types, particularly organometallic and those with a large number of boron atoms, a flag is set (exclude flag) and no attempt is made to standardise them. This is largely due to the V2000 molfile format used by ChEMBL being unable to accurately represent coordination bonds. For this reason, although the bioactivity data on these compounds is available in ChEMBL, the chemical structures are not curated nor provided in the release version of the database.” | limitations[6] |
| limitation | Ambiguous proton placement requires an arbitrary, though canonical, choice. — “Note that if the Hs could be added to more than one atom an arbitrary choice is made but this is done canonically so the result will always be the same for a given molecule” | limitations[7] |
| limitation | Unsafe removal of components from organometallic compounds can yield an invalid ion as the parent. — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | limitations[8] |
| limitation | The Standardizer's quality improvement cannot be quantified unambiguously because it inherits many legacy rules. — “One of the objectives in developing the new curation pipeline was to improve the quality of the chemical structures in the ChEMBL database. As the rules implemented in the new Standardizer and GetParent modules were largely based on the original ChEMBL rules developed over the last 10 years it is difficult to unambiguously quantify this improvement. To provide a consistent starting point, therefore, the current 1.9 million compounds in the latest release of ChEMBL (ChEMBL 26) have been completely re-standardised and the parents regenerated for the whole database using the new pipeline.” | limitations[9] |
| limitation | The PubChem comparison used only a small compound set because its API was slow. — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | limitations[10] |
| limitation | Standardization differences remain dependent on database-specific business rules. — “The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structures in the latest release of the ChEMBL database (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curation. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChem (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIs). Where such differences were present this was largely due to variations in the business rules of the two database providers.” | limitations[11] |
finding · quantity · variable · definition · key-term — grounded in the full text| finding | The pipeline standardized nearly two million ChEMBL compounds and prioritized severe structural issues for manual curation. — “All the components of the structure pipeline have been made freely available for other researchers to use and adapt for their own use. The code is available in a GitHub repository and it can also be accessed via the ChEMBL Beaker webservices. It has been used successfully to standardise the nearly 2 million compounds in the ChEMBL database and the compound validity checker has been used to identify compounds with the most serious issues so that they can be prioritised for manual curation.” | content_tags.findings[0] |
| finding | The open-source pipeline consists of Checker, Standardizer, and GetParent components. — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | content_tags.findings[1] |
| finding | More than 50,000 new structures per release make purely manual ChEMBL curation impracticable. — “In order to facilitate the use of the database, a key objective of the ChEMBL compound curation process is to standardise the chemical structures stored in the database and to assign a unique identifier to each distinct chemical structure regardless of the source. It is worth noting that there are over 5000 unique compounds in the ChEMBL database with data from ten or more different sources, and four compounds (doxorubicin, ciprofloxacin, chloroquine and paclitaxel) each with data from over 1000 sources. For each ChEMBL release, more than 50,000 new structures are added to the database, which makes manual curation and standardisation of the chemical structures impracticable. Hence an automated procedure is required.” | content_tags.findings[2] |
| finding | No universal standard exists for molfile and SMILES structure formats, and conversion can subtly change structures. — “The chemical structures submitted to the ChEMBL database are generally received as molfiles [ 4 ] but can also be in SMILES format [ 5 ]. There is no universal standard for these formats and the challenges of converting between chemical structure formats is well documented [ 6 ]. Even the simple process of loading molecules into and out of different cheminformatics packages can subtly change the structure, particularly if it was not well drawn in the first place. Chemical structures from the primary scientific literature are mostly manually drawn from the structural information in the papers prior to loading into ChEMBL. These structures are often represented in the publication as Markush structures with different R-groups shown in SAR (structure–activity relationship) tables. Compounds may also be shown with charges on acidic or basic groups, to indicate the form in which they are likely to interact with amino acid residues in a binding pocket. In some articles the compounds synthesised and reported are isotopically labelled. The ChEMBL compound curation procedure therefore needs to process molecules represented in all these ways (and more) to determine which compounds are the same. Examples of these situations can be found in recent articles where data was extracted for the ChEMBL database [ 7 – 9 ].” | content_tags.findings[3] |
| finding | Standard InChI provides a practical but imperfect identity compromise for ChEMBL. — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | content_tags.findings[4] |
| finding | The legacy commercial pipeline had become difficult to maintain and modify. — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | content_tags.findings[5] |
| finding | Penalty score seven prevents loading, six loads without a molfile, and five or two triggers manual-curation priority. — “It is an individual user’s choice what they decide to do with molecules that return specific penalty scores. For ChEMBL, a penalty score of 7 is considered to be a fatal error and the molfile is not loaded into the database. Examples of illegal input are, for example, unknown elements in the molfile, or molfiles that cannot be read in RDKit due to the inability to process their aromatic bonds. Molecules with a penalty score of 6 are loaded into the ChEMBL database but without a molfile, as it is considered that these have a significant issue with the structure, and it is preferable to fix the problem than have a badly formed molecule in the database. Most of the issues that give rise to a penalty score of 6 are self-explanatory and are described in Table 1 . If the penalty score is 5 or 2 the molecule is loaded but the compounds are also prioritised for manual curation. Again, many of the 5 and 2 penalty scores are self-explanatory, but the stereo mismatch errors perhaps need further explanation. These are reported when the number of stereocentres perceived by the following calculation methods differ:” | content_tags.findings[6] |
| finding | The standardizer excludes structures that V2000 molfiles cannot represent accurately. — “For certain compound types, particularly organometallic and those with a large number of boron atoms, a flag is set (exclude flag) and no attempt is made to standardise them. This is largely due to the V2000 molfile format used by ChEMBL being unable to accurately represent coordination bonds. For this reason, although the bioactivity data on these compounds is available in ChEMBL, the chemical structures are not curated nor provided in the release version of the database.” | content_tags.findings[7] |
| finding | GetParent removes isotopes, solvents, and salts, neutralizes the remainder, and creates a parent molfile when safe. — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | content_tags.findings[8] |
| finding | The salt and solvent lists currently contain 162 salts and 9 solvents. — “The list of salts used in ChEMBL is based on the USAN Council’s list of pharmacological salts [ 33 ]. Additional entities have been added to this list where a significant number of examples have been present in ChEMBL datasets. The GetParent module will remove salts regardless of: (i) the charge status (e.g. acetic acid or acetate, Cl− or HCl); (ii) whether or not stereochemistry is depicted (e.g. tartaric acid); (iii) cis/trans isomers (e.g. maleic and fumaric acid). The salts and solvents files are available in the GitHub repository [ 28 ]. Currently, these files contain 162 salts and 9 solvents respectively. This list will be maintained and extended if additional salts and solvents are identified.” | content_tags.findings[9] |
| finding | Bioactivity remains registered against the experimentally measured form even though parent aggregation groups related forms. — “For the avoidance of any doubt, although parents, salts, solvents, isotopes and mixtures are all identified using the process just described, the bioactivity data recorded in ChEMBL is registered against the form it was measured on. The aggregation by parent structure is undertaken to make it easier to identify all the data for salts and isotopes of a common parent. For example, paroxetine (CHEMBL490) has bioactivity data determined for the parent molecule, two salts, one salt/solvent mixture and two different isotopes as well as there being an additional salt registered as an FDA approved drug. Another example is amphetamine (CHEMBL405), which has bioactivity data in ChEMBL for eight different salts in addition to the parent amphetamine and an additional two salts that are recorded in drug sources such as the FDA orange book [ 34 ]. The parent aggregation process makes this data easily identified and grouped. This is illustrated in Fig. 1 for these two compounds.” | content_tags.findings[10] |
| finding | The Checker found source-specific error profiles across ChEMBL literature, SureChEMBL, and PubChem deposits. — “As expected, the ChEMBL literature set, being derived via manual extraction and curation, generates the fewest serious penalty scores, although it is clear there are still thousands of molecules with an undesirable representation (e.g. stereo bonds in rings, atoms with multiple stereo bonds and molecules with stereo bonds to stereocentres). The PubChem deposited set includes a large number of empty molfiles and unknown elements (often represented as an asterix, “*”) in addition to molecules containing overlapping atoms. The SureChEMBL set has a large number of compounds with V3000 formatted molfiles, radical entities as well as bonds with illegal stereo flags (usually molfiles with a 4 in the bond stereo field of the bond block). The difference between these sets is not surprising given the differences in the data sources, confirming that the Checker is suitable for identifying a range of different issues of differing severity for datasets of diverse origin.” | content_tags.findings[11] |
| finding | Seventy-five percent of ChEMBL literature compounds and sixty percent of SureChEMBL and PubChem compounds returned no Checker issue. — “A breakdown of the number of compounds from each set which returned penalty scores is shown in Table 3 . When more than one score is returned for a compound the highest score is reported. It is worth noting that 75% of the ChEMBL literature set compounds and 60% of both the SureChEMBL and PubChem compound sets showed no issues in the Checker tests. When structures with a penalty score of 2 associated with InChI Warnings such as “omitted undefined stereo” and “InChI: Charges were rearranged” are excluded (as described above) then the proportion of compounds with undesirable features that would benefit from correction falls to between 4 and 11%.” | content_tags.findings[12] |
| finding | Excluding low-priority InChI warnings reduced undesirable-feature rates to between four and eleven percent. — “A breakdown of the number of compounds from each set which returned penalty scores is shown in Table 3 . When more than one score is returned for a compound the highest score is reported. It is worth noting that 75% of the ChEMBL literature set compounds and 60% of both the SureChEMBL and PubChem compound sets showed no issues in the Checker tests. When structures with a penalty score of 2 associated with InChI Warnings such as “omitted undefined stereo” and “InChI: Charges were rearranged” are excluded (as described above) then the proportion of compounds with undesirable features that would benefit from correction falls to between 4 and 11%.” | content_tags.findings[13] |
| finding | Sixty-nine ChEMBL 26 compounds with penalty score six were assigned highest curation priority. — “From a ChEMBL perspective the compounds in the latest released version of the database (ChEMBL 26) have also been subjected to the Checker analysis and this has enabled the identification of small sets of compounds with particular problems that were not previously identified. This dataset is available as an sd file on the ChEMBL FTP site [ 38 ]. These have been prioritised for curation for a subsequent ChEMBL release. The numbers of compounds with penalty scores 5 and 6 are summarised in Table 4 . Those considered to be the highest priority for curation are compounds with a penalty score of 6 (69 compounds). In future the structures of molecules with penalty scores of 6 will not be added to the database until they have been manually checked and corrected.” | content_tags.findings[14] |
| finding | Fewer than two percent of molecules in each test set changed InChI under the Standardizer. — “The percentage of molecules with changed InChIs are low for all datasets and always < 2% in each case. The majority of the changes occur where the Standardizer has neutralised a previously charged molecule, for example by removing a proton from a positively charged nitrogen or protonating a carboxyl group. A summary of these changes is shown in Table 5 . This also indicates which layer of the InChI has changed. Whilst initially it may appear that changes to the connectivity layer are unexpected for a standardisation process these examples are due to salts where the overall molfile is not neutral and where a proton has been removed to confer neutrality. To further exemplify this, some examples from the ChEMBL literature set are shown in Fig. 3 where the effect of standardisation on neutralising the molecules can be observed.” | content_tags.findings[15] |
| finding | ChEMBL and PubChem standardizers disagreed on 97 of 3,071 approved drugs. — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | content_tags.findings[16] |
| finding | GetParent produced parent structures for more than 100,000 multi-component or isotopic compounds. — “The GetParent module was used to obtain the parent structures for the standardised structures from ChEMBL where these contained more than one component or an isotope. This resulted in over 100,000 compounds where a salt, solvent, isotope or combination thereof could be removed to create a parent structure. Molfiles that are a mixture of components can contain a number of different combinations such as: a parent and its salts; a parent, its salts and solvent; a combination of only salts; or a true mixture. A true mixture, for example, would include compounds such as Co-trimoxazole (CHEMBL58061) which is a marketed product comprising trimethoprim and sulfamethoxazole and which has been tested as a combination in a number of bioactivity assays. Additionally, any of these multicomponent compounds may have been tested for bioactivity or used in a clinical setting as a specific isotopic form. A summary of the composition of the multicomponent compounds in ChEMBL 26 are shown in Fig. 5 . Whilst only ~ 6% of the compounds in ChEMBL are multicomponent (mostly salts), these compounds have over a million activity values recorded against them.” | content_tags.findings[17] |
| finding | Only about six percent of ChEMBL compounds are multi-component, yet they carry over one million activity values. — “The GetParent module was used to obtain the parent structures for the standardised structures from ChEMBL where these contained more than one component or an isotope. This resulted in over 100,000 compounds where a salt, solvent, isotope or combination thereof could be removed to create a parent structure. Molfiles that are a mixture of components can contain a number of different combinations such as: a parent and its salts; a parent, its salts and solvent; a combination of only salts; or a true mixture. A true mixture, for example, would include compounds such as Co-trimoxazole (CHEMBL58061) which is a marketed product comprising trimethoprim and sulfamethoxazole and which has been tested as a combination in a number of bioactivity assays. Additionally, any of these multicomponent compounds may have been tested for bioactivity or used in a clinical setting as a specific isotopic form. A summary of the composition of the multicomponent compounds in ChEMBL 26 are shown in Fig. 5 . Whilst only ~ 6% of the compounds in ChEMBL are multicomponent (mostly salts), these compounds have over a million activity values recorded against them.” | content_tags.findings[18] |
| finding | The pipeline corrected previous standardization errors and robustly handled less curated datasets. — “The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structures in the latest release of the ChEMBL database (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curation. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChem (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIs). Where such differences were present this was largely due to variations in the business rules of the two database providers.” | content_tags.findings[19] |
| quantity | close to 2.5 million — ChEMBL compound records — “The ChEMBL database is a freely available bioactivity database containing close to 2.5 million compound records on nearly 2 million unique chemical structures [ 1 ]. The compound structures and associated bioactivity data are extracted on a regular basis primarily from the medicinal chemistry literature. A growing number of researchers are also depositing experimental data directly in order to make these available in the public domain. Furthermore, ChEMBL contains a set of manually curated marketed drugs and clinical candidates as well as selected bioactivity data from other public databases such as BindingDB [ 2 ] and PubChem [ 3 ]. Bioactivity data on the same compound from all ChEMBL sources (scientific articles, deposited datasets and curated drug sources) are aggregated according to chemical structure. Compounds may be physically tested in bioassays as the so-called parent molecule or as one of a number of different salt forms. Scientists commonly wish to aggregate the data on these different forms on the basis of the common underlying parent structure, and so it is necessary to link these various forms of the “same” underlying parent molecule.” | content_tags.quantities[0] |
| quantity | nearly 2 million — unique ChEMBL chemical structures — “The ChEMBL database is a freely available bioactivity database containing close to 2.5 million compound records on nearly 2 million unique chemical structures [ 1 ]. The compound structures and associated bioactivity data are extracted on a regular basis primarily from the medicinal chemistry literature. A growing number of researchers are also depositing experimental data directly in order to make these available in the public domain. Furthermore, ChEMBL contains a set of manually curated marketed drugs and clinical candidates as well as selected bioactivity data from other public databases such as BindingDB [ 2 ] and PubChem [ 3 ]. Bioactivity data on the same compound from all ChEMBL sources (scientific articles, deposited datasets and curated drug sources) are aggregated according to chemical structure. Compounds may be physically tested in bioassays as the so-called parent molecule or as one of a number of different salt forms. Scientists commonly wish to aggregate the data on these different forms on the basis of the common underlying parent structure, and so it is necessary to link these various forms of the “same” underlying parent molecule.” | content_tags.quantities[1] |
| quantity | over 5000 — compounds with data from at least ten sources — “In order to facilitate the use of the database, a key objective of the ChEMBL compound curation process is to standardise the chemical structures stored in the database and to assign a unique identifier to each distinct chemical structure regardless of the source. It is worth noting that there are over 5000 unique compounds in the ChEMBL database with data from ten or more different sources, and four compounds (doxorubicin, ciprofloxacin, chloroquine and paclitaxel) each with data from over 1000 sources. For each ChEMBL release, more than 50,000 new structures are added to the database, which makes manual curation and standardisation of the chemical structures impracticable. Hence an automated procedure is required.” | content_tags.quantities[2] |
| quantity | more than 50000 — new structures added per ChEMBL release — “In order to facilitate the use of the database, a key objective of the ChEMBL compound curation process is to standardise the chemical structures stored in the database and to assign a unique identifier to each distinct chemical structure regardless of the source. It is worth noting that there are over 5000 unique compounds in the ChEMBL database with data from ten or more different sources, and four compounds (doxorubicin, ciprofloxacin, chloroquine and paclitaxel) each with data from over 1000 sources. For each ChEMBL release, more than 50,000 new structures are added to the database, which makes manual curation and standardisation of the chemical structures impracticable. Hence an automated procedure is required.” | content_tags.quantities[3] |
| quantity | 7 — fatal Checker penalty — “It is an individual user’s choice what they decide to do with molecules that return specific penalty scores. For ChEMBL, a penalty score of 7 is considered to be a fatal error and the molfile is not loaded into the database. Examples of illegal input are, for example, unknown elements in the molfile, or molfiles that cannot be read in RDKit due to the inability to process their aromatic bonds. Molecules with a penalty score of 6 are loaded into the ChEMBL database but without a molfile, as it is considered that these have a significant issue with the structure, and it is preferable to fix the problem than have a badly formed molecule in the database. Most of the issues that give rise to a penalty score of 6 are self-explanatory and are described in Table 1 . If the penalty score is 5 or 2 the molecule is loaded but the compounds are also prioritised for manual curation. Again, many of the 5 and 2 penalty scores are self-explanatory, but the stereo mismatch errors perhaps need further explanation. These are reported when the number of stereocentres perceived by the following calculation methods differ:” | content_tags.quantities[4] |
| quantity | 6 — significant-issue penalty that loads without a molfile — “It is an individual user’s choice what they decide to do with molecules that return specific penalty scores. For ChEMBL, a penalty score of 7 is considered to be a fatal error and the molfile is not loaded into the database. Examples of illegal input are, for example, unknown elements in the molfile, or molfiles that cannot be read in RDKit due to the inability to process their aromatic bonds. Molecules with a penalty score of 6 are loaded into the ChEMBL database but without a molfile, as it is considered that these have a significant issue with the structure, and it is preferable to fix the problem than have a badly formed molecule in the database. Most of the issues that give rise to a penalty score of 6 are self-explanatory and are described in Table 1 . If the penalty score is 5 or 2 the molecule is loaded but the compounds are also prioritised for manual curation. Again, many of the 5 and 2 penalty scores are self-explanatory, but the stereo mismatch errors perhaps need further explanation. These are reported when the number of stereocentres perceived by the following calculation methods differ:” | content_tags.quantities[5] |
| quantity | more than 7 — boron-atom threshold for excluding a molecule from standardization — “The first step in the standardisation process is therefore to exclude molecules if they contain more than 7 boron atoms or any of the following atoms: [Sc], [Ti], [V], [Cr], [Mn], [Fe], [Co], [Ni], [Cu], [Ga], [Y], [Zr], [Nb], [Mo], [Tc], [Ru], [Rh], [Pd], [Cd], [In], [Sn], [La], [Hf], [Ta], [W], [Re], [Os], [Ir], [Pt], [Au], [Hg], [Tl], [Pb], [Bi], [Po], [Ac], [Ce], [Pr], [Nd], [Pm], [Sm], [Eu], [Gd], [Tb], [Dy], [Ho], [Er], [Tm], [Yb], [Lu], [Th], [Pa], [U], [Np], [Pu], [Am], [Cm], [Bk], [Cf], [Es], [Fm], [Md], [No], [Lr], [Ge], [Sb].” | content_tags.quantities[6] |
| quantity | 162 — salts in the current GetParent list — “The list of salts used in ChEMBL is based on the USAN Council’s list of pharmacological salts [ 33 ]. Additional entities have been added to this list where a significant number of examples have been present in ChEMBL datasets. The GetParent module will remove salts regardless of: (i) the charge status (e.g. acetic acid or acetate, Cl− or HCl); (ii) whether or not stereochemistry is depicted (e.g. tartaric acid); (iii) cis/trans isomers (e.g. maleic and fumaric acid). The salts and solvents files are available in the GitHub repository [ 28 ]. Currently, these files contain 162 salts and 9 solvents respectively. This list will be maintained and extended if additional salts and solvents are identified.” | content_tags.quantities[7] |
| quantity | 9 — solvents in the current GetParent list — “The list of salts used in ChEMBL is based on the USAN Council’s list of pharmacological salts [ 33 ]. Additional entities have been added to this list where a significant number of examples have been present in ChEMBL datasets. The GetParent module will remove salts regardless of: (i) the charge status (e.g. acetic acid or acetate, Cl− or HCl); (ii) whether or not stereochemistry is depicted (e.g. tartaric acid); (iii) cis/trans isomers (e.g. maleic and fumaric acid). The salts and solvents files are available in the GitHub repository [ 28 ]. Currently, these files contain 162 salts and 9 solvents respectively. This list will be maintained and extended if additional salts and solvents are identified.” | content_tags.quantities[8] |
| quantity | 1.9 million — ChEMBL 26 compounds fully re-standardized — “One of the objectives in developing the new curation pipeline was to improve the quality of the chemical structures in the ChEMBL database. As the rules implemented in the new Standardizer and GetParent modules were largely based on the original ChEMBL rules developed over the last 10 years it is difficult to unambiguously quantify this improvement. To provide a consistent starting point, therefore, the current 1.9 million compounds in the latest release of ChEMBL (ChEMBL 26) have been completely re-standardised and the parents regenerated for the whole database using the new pipeline.” | content_tags.quantities[9] |
| quantity | 75% — ChEMBL literature compounds with no Checker issue — “A breakdown of the number of compounds from each set which returned penalty scores is shown in Table 3 . When more than one score is returned for a compound the highest score is reported. It is worth noting that 75% of the ChEMBL literature set compounds and 60% of both the SureChEMBL and PubChem compound sets showed no issues in the Checker tests. When structures with a penalty score of 2 associated with InChI Warnings such as “omitted undefined stereo” and “InChI: Charges were rearranged” are excluded (as described above) then the proportion of compounds with undesirable features that would benefit from correction falls to between 4 and 11%.” | content_tags.quantities[10] |
| quantity | 60% — SureChEMBL and PubChem compounds with no Checker issue — “A breakdown of the number of compounds from each set which returned penalty scores is shown in Table 3 . When more than one score is returned for a compound the highest score is reported. It is worth noting that 75% of the ChEMBL literature set compounds and 60% of both the SureChEMBL and PubChem compound sets showed no issues in the Checker tests. When structures with a penalty score of 2 associated with InChI Warnings such as “omitted undefined stereo” and “InChI: Charges were rearranged” are excluded (as described above) then the proportion of compounds with undesirable features that would benefit from correction falls to between 4 and 11%.” | content_tags.quantities[11] |
| quantity | 4 to 11% — undesirable-feature range after low-priority warnings are excluded — “A breakdown of the number of compounds from each set which returned penalty scores is shown in Table 3 . When more than one score is returned for a compound the highest score is reported. It is worth noting that 75% of the ChEMBL literature set compounds and 60% of both the SureChEMBL and PubChem compound sets showed no issues in the Checker tests. When structures with a penalty score of 2 associated with InChI Warnings such as “omitted undefined stereo” and “InChI: Charges were rearranged” are excluded (as described above) then the proportion of compounds with undesirable features that would benefit from correction falls to between 4 and 11%.” | content_tags.quantities[12] |
| quantity | 69 — ChEMBL 26 compounds assigned highest penalty-six priority — “From a ChEMBL perspective the compounds in the latest released version of the database (ChEMBL 26) have also been subjected to the Checker analysis and this has enabled the identification of small sets of compounds with particular problems that were not previously identified. This dataset is available as an sd file on the ChEMBL FTP site [ 38 ]. These have been prioritised for curation for a subsequent ChEMBL release. The numbers of compounds with penalty scores 5 and 6 are summarised in Table 4 . Those considered to be the highest priority for curation are compounds with a penalty score of 6 (69 compounds). In future the structures of molecules with penalty scores of 6 will not be added to the database until they have been manually checked and corrected.” | content_tags.quantities[13] |
| quantity | about 2500 — penalty-five compounds assigned second-tier curation — “The ~ 2500 compounds with penalty scores of 5 are placed in a group for second-tier curation with the following penalty annotations being prioritised:” | content_tags.quantities[14] |
| quantity | less than 2% — molecules with changed InChI in each Standardizer test set — “The percentage of molecules with changed InChIs are low for all datasets and always < 2% in each case. The majority of the changes occur where the Standardizer has neutralised a previously charged molecule, for example by removing a proton from a positively charged nitrogen or protonating a carboxyl group. A summary of these changes is shown in Table 5 . This also indicates which layer of the InChI has changed. Whilst initially it may appear that changes to the connectivity layer are unexpected for a standardisation process these examples are due to salts where the overall molfile is not neutral and where a proton has been removed to confer neutrality. To further exemplify this, some examples from the ChEMBL literature set are shown in Fig. 3 where the effect of standardisation on neutralising the molecules can be observed.” | content_tags.quantities[15] |
| quantity | 3071 — approved drugs used for ChEMBL-PubChem comparison — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | content_tags.quantities[16] |
| quantity | 97 — approved drugs with different Standard InChIKeys between standardizers — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | content_tags.quantities[17] |
| quantity | over 100000 — compounds for which GetParent removed salts, solvents, isotopes, or combinations — “The GetParent module was used to obtain the parent structures for the standardised structures from ChEMBL where these contained more than one component or an isotope. This resulted in over 100,000 compounds where a salt, solvent, isotope or combination thereof could be removed to create a parent structure. Molfiles that are a mixture of components can contain a number of different combinations such as: a parent and its salts; a parent, its salts and solvent; a combination of only salts; or a true mixture. A true mixture, for example, would include compounds such as Co-trimoxazole (CHEMBL58061) which is a marketed product comprising trimethoprim and sulfamethoxazole and which has been tested as a combination in a number of bioactivity assays. Additionally, any of these multicomponent compounds may have been tested for bioactivity or used in a clinical setting as a specific isotopic form. A summary of the composition of the multicomponent compounds in ChEMBL 26 are shown in Fig. 5 . Whilst only ~ 6% of the compounds in ChEMBL are multicomponent (mostly salts), these compounds have over a million activity values recorded against them.” | content_tags.quantities[18] |
| quantity | about 6% — share of ChEMBL compounds that are multicomponent — “The GetParent module was used to obtain the parent structures for the standardised structures from ChEMBL where these contained more than one component or an isotope. This resulted in over 100,000 compounds where a salt, solvent, isotope or combination thereof could be removed to create a parent structure. Molfiles that are a mixture of components can contain a number of different combinations such as: a parent and its salts; a parent, its salts and solvent; a combination of only salts; or a true mixture. A true mixture, for example, would include compounds such as Co-trimoxazole (CHEMBL58061) which is a marketed product comprising trimethoprim and sulfamethoxazole and which has been tested as a combination in a number of bioactivity assays. Additionally, any of these multicomponent compounds may have been tested for bioactivity or used in a clinical setting as a specific isotopic form. A summary of the composition of the multicomponent compounds in ChEMBL 26 are shown in Fig. 5 . Whilst only ~ 6% of the compounds in ChEMBL are multicomponent (mostly salts), these compounds have over a million activity values recorded against them.” | content_tags.quantities[19] |
| variable | penalty score (Checker problem-severity output) — “The Checker component validates structures prior to the compounds being loaded into ChEMBL. If an error or problem is detected in the structure a score is reported for the molecule; the score increases with the severity of the perceived problem. In the majority of cases compounds are loaded into the database even if a warning flag is identified. The scores are recorded but at this point errors are not corrected. Instead, they are prioritised and subjected to subsequent manual curation, as time and degree of seriousness permits. A summary of the structure checks performed, and the resultant penalty scores assigned are shown in Table 1 .” | content_tags.variables[0] |
| variable | Standard InChI (chemical identity criterion and comparison outcome) — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | content_tags.variables[1] |
| variable | stereocentre counts (mismatch diagnostic across Mol, InChI, and RDKit) — “Hence the “InChi_RDKit/Mol stereo mismatch” warning message indicates that the InChI and RDKit algorithms perceive the number of stereocentres to be the same but different from the molfile. “Mol/Inchi/RDKit stereo mismatch” means that all three methods perceive different stereocentre counts. The majority of these issues occur in complex molecules such as bridged bicyclic molecules that are badly drawn. As Standard InChI is derived from the molfile, the errors where the molfile and InChI differ in their stereocentre counts are given a higher penalty score [ 5 ] than when they are the same but different from the RDKit stereo count [ 2 ].” | content_tags.variables[2] |
| variable | data source (origin dimension for Checker robustness) — “To investigate the utility of the Checker module three very different compound sets were used. These were: a set of compounds recently extracted (by manual drawing) from the medicinal chemistry literature by the ChEMBL data extractors; a set of compounds from SureChEMBL, the patent database where the chemical structures are obtained by entity recognition followed by name or image to structure conversion [ 37 ] and a randomly selected compound set from PubChem (SIDs) as initially submitted by the depositors and prior to any compound standardisation. These three datasets are provided as structure data files (sd files) in the Supplementary Information S1, S2, S3. The results from these three sets are shown in Table 2 .” | content_tags.variables[3] |
| variable | changed InChIs (Standardizer transformation outcome) — “The percentage of molecules with changed InChIs are low for all datasets and always < 2% in each case. The majority of the changes occur where the Standardizer has neutralised a previously charged molecule, for example by removing a proton from a positively charged nitrogen or protonating a carboxyl group. A summary of these changes is shown in Table 5 . This also indicates which layer of the InChI has changed. Whilst initially it may appear that changes to the connectivity layer are unexpected for a standardisation process these examples are due to salts where the overall molfile is not neutral and where a proton has been removed to confer neutrality. To further exemplify this, some examples from the ChEMBL literature set are shown in Fig. 3 where the effect of standardisation on neutralising the molecules can be observed.” | content_tags.variables[4] |
| variable | canonical tautomer (major policy difference between PubChem and ChEMBL) — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | content_tags.variables[5] |
| variable | charge status (salt-removal invariance) — “The list of salts used in ChEMBL is based on the USAN Council’s list of pharmacological salts [ 33 ]. Additional entities have been added to this list where a significant number of examples have been present in ChEMBL datasets. The GetParent module will remove salts regardless of: (i) the charge status (e.g. acetic acid or acetate, Cl− or HCl); (ii) whether or not stereochemistry is depicted (e.g. tartaric acid); (iii) cis/trans isomers (e.g. maleic and fumaric acid). The salts and solvents files are available in the GitHub repository [ 28 ]. Currently, these files contain 162 salts and 9 solvents respectively. This list will be maintained and extended if additional salts and solvents are identified.” | content_tags.variables[6] |
| variable | stereochemistry (structure identity and salt-list invariance) — “The list of salts used in ChEMBL is based on the USAN Council’s list of pharmacological salts [ 33 ]. Additional entities have been added to this list where a significant number of examples have been present in ChEMBL datasets. The GetParent module will remove salts regardless of: (i) the charge status (e.g. acetic acid or acetate, Cl− or HCl); (ii) whether or not stereochemistry is depicted (e.g. tartaric acid); (iii) cis/trans isomers (e.g. maleic and fumaric acid). The salts and solvents files are available in the GitHub repository [ 28 ]. Currently, these files contain 162 salts and 9 solvents respectively. This list will be maintained and extended if additional salts and solvents are identified.” | content_tags.variables[7] |
| variable | bioactivity data (measurements registered to a form and grouped by parent) — “For the avoidance of any doubt, although parents, salts, solvents, isotopes and mixtures are all identified using the process just described, the bioactivity data recorded in ChEMBL is registered against the form it was measured on. The aggregation by parent structure is undertaken to make it easier to identify all the data for salts and isotopes of a common parent. For example, paroxetine (CHEMBL490) has bioactivity data determined for the parent molecule, two salts, one salt/solvent mixture and two different isotopes as well as there being an additional salt registered as an FDA approved drug. Another example is amphetamine (CHEMBL405), which has bioactivity data in ChEMBL for eight different salts in addition to the parent amphetamine and an additional two salts that are recorded in drug sources such as the FDA orange book [ 34 ]. The parent aggregation process makes this data easily identified and grouped. This is illustrated in Fig. 1 for these two compounds.” | content_tags.variables[8] |
| variable | business rules (explanation for cross-database standardizer disagreement) — “The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structures in the latest release of the ChEMBL database (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curation. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChem (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIs). Where such differences were present this was largely due to variations in the business rules of the two database providers.” | content_tags.variables[9] |
| definition | Checker — “The Checker component validates structures prior to the compounds being loaded into ChEMBL. If an error or problem is detected in the structure a score is reported for the molecule; the score increases with the severity of the perceived problem. In the majority of cases compounds are loaded into the database even if a warning flag is identified. The scores are recorded but at this point errors are not corrected. Instead, they are prioritised and subjected to subsequent manual curation, as time and degree of seriousness permits. A summary of the structure checks performed, and the resultant penalty scores assigned are shown in Table 1 .” | content_tags.definitions[0] |
| definition | Standardizer — “Standardizer : processes (standardises) chemical structures according to a set of predefined rules” | content_tags.definitions[1] |
| definition | GetParent — “GetParent : generates parent structures based on a set of rules and defined lists of salts and solvents” | content_tags.definitions[2] |
| definition | Standard InChI — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | content_tags.definitions[3] |
| definition | InChIKey — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | content_tags.definitions[4] |
| definition | parent molecule — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | content_tags.definitions[5] |
| definition | fatal error — “It is an individual user’s choice what they decide to do with molecules that return specific penalty scores. For ChEMBL, a penalty score of 7 is considered to be a fatal error and the molfile is not loaded into the database. Examples of illegal input are, for example, unknown elements in the molfile, or molfiles that cannot be read in RDKit due to the inability to process their aromatic bonds. Molecules with a penalty score of 6 are loaded into the ChEMBL database but without a molfile, as it is considered that these have a significant issue with the structure, and it is preferable to fix the problem than have a badly formed molecule in the database. Most of the issues that give rise to a penalty score of 6 are self-explanatory and are described in Table 1 . If the penalty score is 5 or 2 the molecule is loaded but the compounds are also prioritised for manual curation. Again, many of the 5 and 2 penalty scores are self-explanatory, but the stereo mismatch errors perhaps need further explanation. These are reported when the number of stereocentres perceived by the following calculation methods differ:” | content_tags.definitions[6] |
| definition | stereo mismatch — “Hence the “InChi_RDKit/Mol stereo mismatch” warning message indicates that the InChI and RDKit algorithms perceive the number of stereocentres to be the same but different from the molfile. “Mol/Inchi/RDKit stereo mismatch” means that all three methods perceive different stereocentre counts. The majority of these issues occur in complex molecules such as bridged bicyclic molecules that are badly drawn. As Standard InChI is derived from the molfile, the errors where the molfile and InChI differ in their stereocentre counts are given a higher penalty score [ 5 ] than when they are the same but different from the RDKit stereo count [ 2 ].” | content_tags.definitions[7] |
| definition | exclude flag — “For certain compound types, particularly organometallic and those with a large number of boron atoms, a flag is set (exclude flag) and no attempt is made to standardise them. This is largely due to the V2000 molfile format used by ChEMBL being unable to accurately represent coordination bonds. For this reason, although the bioactivity data on these compounds is available in ChEMBL, the chemical structures are not curated nor provided in the release version of the database.” | content_tags.definitions[8] |
| definition | multicomponent compound — “The GetParent module was used to obtain the parent structures for the standardised structures from ChEMBL where these contained more than one component or an isotope. This resulted in over 100,000 compounds where a salt, solvent, isotope or combination thereof could be removed to create a parent structure. Molfiles that are a mixture of components can contain a number of different combinations such as: a parent and its salts; a parent, its salts and solvent; a combination of only salts; or a true mixture. A true mixture, for example, would include compounds such as Co-trimoxazole (CHEMBL58061) which is a marketed product comprising trimethoprim and sulfamethoxazole and which has been tested as a combination in a number of bioactivity assays. Additionally, any of these multicomponent compounds may have been tested for bioactivity or used in a clinical setting as a specific isotopic form. A summary of the composition of the multicomponent compounds in ChEMBL 26 are shown in Fig. 5 . Whilst only ~ 6% of the compounds in ChEMBL are multicomponent (mostly salts), these compounds have over a million activity values recorded against them.” | content_tags.definitions[9] |
| definition | business rules — “The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structures in the latest release of the ChEMBL database (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curation. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChem (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIs). Where such differences were present this was largely due to variations in the business rules of the two database providers.” | content_tags.definitions[11] |
| concept | ChEMBL database — not defined in this paper's own words; public bioactivity database receiving diverse compound structures — “The ChEMBL database is one of a number of public databases that contain bioactivity data on small molecule compounds curated from diverse sources. Incoming compounds are typically not standardised according to consistent rules. In order to maintain the quality of the final database and to easily compare and integrate data on the same compound from different sources it is necessary for the chemical structures in the database to be appropriately standardised.” | concepts[0] |
| concept | bioactivity data — not defined in this paper's own words; experimental measurements associated with compound forms — “The ChEMBL database is a freely available bioactivity database containing close to 2.5 million compound records on nearly 2 million unique chemical structures [ 1 ]. The compound structures and associated bioactivity data are extracted on a regular basis primarily from the medicinal chemistry literature. A growing number of researchers are also depositing experimental data directly in order to make these available in the public domain. Furthermore, ChEMBL contains a set of manually curated marketed drugs and clinical candidates as well as selected bioactivity data from other public databases such as BindingDB [ 2 ] and PubChem [ 3 ]. Bioactivity data on the same compound from all ChEMBL sources (scientific articles, deposited datasets and curated drug sources) are aggregated according to chemical structure. Compounds may be physically tested in bioassays as the so-called parent molecule or as one of a number of different salt forms. Scientists commonly wish to aggregate the data on these different forms on the basis of the common underlying parent structure, and so it is necessary to link these various forms of the “same” underlying parent molecule.” | concepts[1] |
| concept | small molecule compounds — not defined in this paper's own words; chemical entities curated into ChEMBL — “The ChEMBL database is one of a number of public databases that contain bioactivity data on small molecule compounds curated from diverse sources. Incoming compounds are typically not standardised according to consistent rules. In order to maintain the quality of the final database and to easily compare and integrate data on the same compound from different sources it is necessary for the chemical structures in the database to be appropriately standardised.” | concepts[2] |
| concept | chemical structures — not defined in this paper's own words; database representations subjected to curation — “The ChEMBL database is one of a number of public databases that contain bioactivity data on small molecule compounds curated from diverse sources. Incoming compounds are typically not standardised according to consistent rules. In order to maintain the quality of the final database and to easily compare and integrate data on the same compound from different sources it is necessary for the chemical structures in the database to be appropriately standardised.” | concepts[3] |
| concept | chemical curation pipeline — not defined in this paper's own words; three-component RDKit workflow — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concepts[4] |
| concept | RDKit — not defined in this paper's own words; open-source cheminformatics toolkit — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concepts[5] |
| concept | Checker — not defined in this paper's own words; validation and penalty-scoring component — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concepts[6] |
| concept | Standardizer — not defined in this paper's own words; rule-based structure standardization component — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concepts[7] |
| concept | GetParent — not defined in this paper's own words; parent-structure generation component — “A chemical curation pipeline has been developed using the open source toolkit RDKit. It comprises three components: a Checker to test the validity of chemical structures and flag any serious errors; a Standardizer which formats compounds according to defined rules and conventions and a GetParent component that removes any salts and solvents from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL database as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.” | concepts[8] |
| concept | manual curation — not defined in this paper's own words; human correction of prioritized structure problems — “All the components of the structure pipeline have been made freely available for other researchers to use and adapt for their own use. The code is available in a GitHub repository and it can also be accessed via the ChEMBL Beaker webservices. It has been used successfully to standardise the nearly 2 million compounds in the ChEMBL database and the compound validity checker has been used to identify compounds with the most serious issues so that they can be prioritised for manual curation.” | concepts[9] |
| concept | automated procedure — not defined in this paper's own words; required scalable alternative to manual structure standardization — “In order to facilitate the use of the database, a key objective of the ChEMBL compound curation process is to standardise the chemical structures stored in the database and to assign a unique identifier to each distinct chemical structure regardless of the source. It is worth noting that there are over 5000 unique compounds in the ChEMBL database with data from ten or more different sources, and four compounds (doxorubicin, ciprofloxacin, chloroquine and paclitaxel) each with data from over 1000 sources. For each ChEMBL release, more than 50,000 new structures are added to the database, which makes manual curation and standardisation of the chemical structures impracticable. Hence an automated procedure is required.” | concepts[10] |
| concept | molfiles — not defined in this paper's own words; primary submitted structure-file format — “The chemical structures submitted to the ChEMBL database are generally received as molfiles [ 4 ] but can also be in SMILES format [ 5 ]. There is no universal standard for these formats and the challenges of converting between chemical structure formats is well documented [ 6 ]. Even the simple process of loading molecules into and out of different cheminformatics packages can subtly change the structure, particularly if it was not well drawn in the first place. Chemical structures from the primary scientific literature are mostly manually drawn from the structural information in the papers prior to loading into ChEMBL. These structures are often represented in the publication as Markush structures with different R-groups shown in SAR (structure–activity relationship) tables. Compounds may also be shown with charges on acidic or basic groups, to indicate the form in which they are likely to interact with amino acid residues in a binding pocket. In some articles the compounds synthesised and reported are isotopically labelled. The ChEMBL compound curation procedure therefore needs to process molecules represented in all these ways (and more) to determine which compounds are the same. Examples of these situations can be found in recent articles where data was extracted for the ChEMBL database [ 7 – 9 ].” | concepts[11] |
| concept | SMILES — not defined in this paper's own words; alternate submitted structure encoding — “The chemical structures submitted to the ChEMBL database are generally received as molfiles [ 4 ] but can also be in SMILES format [ 5 ]. There is no universal standard for these formats and the challenges of converting between chemical structure formats is well documented [ 6 ]. Even the simple process of loading molecules into and out of different cheminformatics packages can subtly change the structure, particularly if it was not well drawn in the first place. Chemical structures from the primary scientific literature are mostly manually drawn from the structural information in the papers prior to loading into ChEMBL. These structures are often represented in the publication as Markush structures with different R-groups shown in SAR (structure–activity relationship) tables. Compounds may also be shown with charges on acidic or basic groups, to indicate the form in which they are likely to interact with amino acid residues in a binding pocket. In some articles the compounds synthesised and reported are isotopically labelled. The ChEMBL compound curation procedure therefore needs to process molecules represented in all these ways (and more) to determine which compounds are the same. Examples of these situations can be found in recent articles where data was extracted for the ChEMBL database [ 7 – 9 ].” | concepts[12] |
| concept | V2000 molfile — not defined in this paper's own words; primary standardized ChEMBL structure representation — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concepts[13] |
| concept | Standard InChI — not defined in this paper's own words; open chemical-identity identifier — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concepts[14] |
| concept | identifier — not defined in this paper's own words; identity encoding rather than application-ready structure format — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concepts[15] |
| concept | uniqueness for a chemical structure — not defined in this paper's own words; database identity criterion — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concepts[16] |
| concept | InChIKey — not defined in this paper's own words; hashed identifier paired with Standard InChI — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concepts[17] |
| concept | ChEMBL identifier — not defined in this paper's own words; database identity assigned to equal standardized structures — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concepts[18] |
| concept | canonical SMILES — not defined in this paper's own words; secondary interoperable ChEMBL structure encoding — “A standardised V2000 molfile was chosen as the primary chemical structure representation in the database. The Standard InChI and the corresponding hashed InChIKey [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structure and are calculated from the molfile using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChI and InChIKey they are considered to be the same compound and are assigned the same ChEMBL identifier (CHEMBL_ID). The use of the Standard InChI has a number of advantages in the context of the ChEMBL database. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChI is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfiles and SMILES, it was designed as an identifier and not as a structure format suitable for cheminformatics applications. For example, the Standard InChI is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChI. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChI as an identifier, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistry, only absolute or no stereochemistry. Despite these limitations, it is a good compromise for a structural identifier for a public database such as ChEMBL. To aid interoperability, a canonical SMILES is also generated from each primary molfile, but this is considered to be a secondary structure.” | concepts[19] |
| concept | canonical tautomer — not defined in this paper's own words; PubChem-generated standardized tautomer policy — “The challenges of registering compounds in a database and determining chemical uniqueness are not specific to ChEMBL. PubChem, the open chemistry database of over 100 million compounds maintained by the National Institutes of Health (NIH) has developed an automated and publicly available standardisation process based on OpenEye toolkits [ 13 ]. They utilise an isomeric canonical SMILES to identify unique structures and show that their method generates more unique structures than when Standard InChI is used to determine uniqueness. They also generate a canonical tautomer for their compounds. The ChEMBL group decided against the use of a canonical tautomer, for a number of reasons. Firstly, it is anticipated that the authors of an article in the medicinal chemistry literature will have worked on their compound set for some considerable time, performed docking and molecular modelling studies and will be well placed to assign the most appropriate tautomeric form, for example based on specific interactions with the target protein. Secondly, it is possible for tautomers to interconvert under experimental conditions. Thirdly, changing the tautomeric form of a compound can alter its stereochemistry by removing, or introducing, a chiral centre from a molecule, requiring often difficult decisions to be made about how to “merge” compounds/data with different chirality or which stereo form to create. Thalidomide is a well-known example of the second phenomenon which interconverts between the therapeutic R-enantiomer and the teratogenic S-enantiomer via the enol tautomer [ 14 ].” | concepts[20] |
| concept | legacy pipeline — not defined in this paper's own words; commercial predecessor to the open workflow — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | concepts[21] |
| concept | MolVS — not defined in this paper's own words; RDKit validation and standardization implementation — “The legacy pipeline for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKit toolkit and its implementation of the MolVS molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.” | concepts[22] |
| concept | penalty score — not defined in this paper's own words; Checker severity ranking — “The Checker component validates structures prior to the compounds being loaded into ChEMBL. If an error or problem is detected in the structure a score is reported for the molecule; the score increases with the severity of the perceived problem. In the majority of cases compounds are loaded into the database even if a warning flag is identified. The scores are recorded but at this point errors are not corrected. Instead, they are prioritised and subjected to subsequent manual curation, as time and degree of seriousness permits. A summary of the structure checks performed, and the resultant penalty scores assigned are shown in Table 1 .” | concepts[23] |
| concept | severity of the perceived problem — not defined in this paper's own words; problem dimension encoded by Checker score — “The Checker component validates structures prior to the compounds being loaded into ChEMBL. If an error or problem is detected in the structure a score is reported for the molecule; the score increases with the severity of the perceived problem. In the majority of cases compounds are loaded into the database even if a warning flag is identified. The scores are recorded but at this point errors are not corrected. Instead, they are prioritised and subjected to subsequent manual curation, as time and degree of seriousness permits. A summary of the structure checks performed, and the resultant penalty scores assigned are shown in Table 1 .” | concepts[24] |
| concept | warning flag — not defined in this paper's own words; nonfatal Checker problem marker — “The Checker component validates structures prior to the compounds being loaded into ChEMBL. If an error or problem is detected in the structure a score is reported for the molecule; the score increases with the severity of the perceived problem. In the majority of cases compounds are loaded into the database even if a warning flag is identified. The scores are recorded but at this point errors are not corrected. Instead, they are prioritised and subjected to subsequent manual curation, as time and degree of seriousness permits. A summary of the structure checks performed, and the resultant penalty scores assigned are shown in Table 1 .” | concepts[25] |
| concept | fatal error — not defined in this paper's own words; penalty-seven loading refusal — “It is an individual user’s choice what they decide to do with molecules that return specific penalty scores. For ChEMBL, a penalty score of 7 is considered to be a fatal error and the molfile is not loaded into the database. Examples of illegal input are, for example, unknown elements in the molfile, or molfiles that cannot be read in RDKit due to the inability to process their aromatic bonds. Molecules with a penalty score of 6 are loaded into the ChEMBL database but without a molfile, as it is considered that these have a significant issue with the structure, and it is preferable to fix the problem than have a badly formed molecule in the database. Most of the issues that give rise to a penalty score of 6 are self-explanatory and are described in Table 1 . If the penalty score is 5 or 2 the molecule is loaded but the compounds are also prioritised for manual curation. Again, many of the 5 and 2 penalty scores are self-explanatory, but the stereo mismatch errors perhaps need further explanation. These are reported when the number of stereocentres perceived by the following calculation methods differ:” | concepts[26] |
| concept | stereocentres — not defined in this paper's own words; chiral centers counted by three algorithms — “Hence the “InChi_RDKit/Mol stereo mismatch” warning message indicates that the InChI and RDKit algorithms perceive the number of stereocentres to be the same but different from the molfile. “Mol/Inchi/RDKit stereo mismatch” means that all three methods perceive different stereocentre counts. The majority of these issues occur in complex molecules such as bridged bicyclic molecules that are badly drawn. As Standard InChI is derived from the molfile, the errors where the molfile and InChI differ in their stereocentre counts are given a higher penalty score [ 5 ] than when they are the same but different from the RDKit stereo count [ 2 ].” | concepts[27] |
| concept | stereo mismatch — not defined in this paper's own words; disagreement in perceived stereocentre counts — “Hence the “InChi_RDKit/Mol stereo mismatch” warning message indicates that the InChI and RDKit algorithms perceive the number of stereocentres to be the same but different from the molfile. “Mol/Inchi/RDKit stereo mismatch” means that all three methods perceive different stereocentre counts. The majority of these issues occur in complex molecules such as bridged bicyclic molecules that are badly drawn. As Standard InChI is derived from the molfile, the errors where the molfile and InChI differ in their stereocentre counts are given a higher penalty score [ 5 ] than when they are the same but different from the RDKit stereo count [ 2 ].” | concepts[28] |
| concept | exclude flag — not defined in this paper's own words; unsupported-structure marker — “For certain compound types, particularly organometallic and those with a large number of boron atoms, a flag is set (exclude flag) and no attempt is made to standardise them. This is largely due to the V2000 molfile format used by ChEMBL being unable to accurately represent coordination bonds. For this reason, although the bioactivity data on these compounds is available in ChEMBL, the chemical structures are not curated nor provided in the release version of the database.” | concepts[29] |
| concept | coordination bonds — not defined in this paper's own words; bond type V2000 cannot accurately represent — “For certain compound types, particularly organometallic and those with a large number of boron atoms, a flag is set (exclude flag) and no attempt is made to standardise them. This is largely due to the V2000 molfile format used by ChEMBL being unable to accurately represent coordination bonds. For this reason, although the bioactivity data on these compounds is available in ChEMBL, the chemical structures are not curated nor provided in the release version of the database.” | concepts[30] |
| concept | explicit H atoms — not defined in this paper's own words; hydrogens usually removed except defined cases — “Remove explicit H atoms except: Hs where an isotope of hydrogen has been specifically set Hs that have a wedged or dashed bond to them Hs bonded to atoms with tetrahedral stereochemistry set (“Chiral Hs”). This is an example: Hs bonded to atoms in a non-default valence state that are not simply protonated. An example is phosphinic acid:” | concepts[31] |
| concept | hypervalent nitro groups — not defined in this paper's own words; structure pattern repaired during normalization — “Normalise structure: Fix hypervalent nitro groups Convert covalently drawn alkaline metals connected to O or N to ionic forms (e.g. NaO to Na+ O−) Fix incorrect amide tautomers, e.g. N=COH to HNC(=O) Standardise sulphoxides to charge-separated form Standardise diazonium N to N+ Ensure quaternary N is charged Ensure trivalent O is charged Ensure trivalent S is charged Ensure halogen not bonded to a neighbouring atom is charged” | concepts[32] |
| concept | neutralised — not defined in this paper's own words; charge-balanced molecule state — “Ensure molecule is neutralised, if possible, by: Adding or removing Hs Moving Hs from one atom to another (including between components)” | concepts[33] |
| concept | arbitrary choice — not defined in this paper's own words; canonically deterministic resolution of ambiguous hydrogen addition — “Note that if the Hs could be added to more than one atom an arbitrary choice is made but this is done canonically so the result will always be the same for a given molecule” | concepts[34] |
| concept | salt form — not defined in this paper's own words; compound form related to a common parent — “Many compound registration systems, including the ChEMBL database, identify compounds that are related by virtue of being a salt form of a common parent structure. Therefore, as part of the ChEMBL compound curation pipeline, molecules are identified where the molfile contains more than one connected component as well as molecules containing atoms with specified isotopes.” | concepts[35] |
| concept | parent structure — not defined in this paper's own words; common structure used for related-form grouping — “Many compound registration systems, including the ChEMBL database, identify compounds that are related by virtue of being a salt form of a common parent structure. Therefore, as part of the ChEMBL compound curation pipeline, molecules are identified where the molfile contains more than one connected component as well as molecules containing atoms with specified isotopes.” | concepts[36] |
| concept | connected component — not defined in this paper's own words; separate molecular unit in a molfile — “Many compound registration systems, including the ChEMBL database, identify compounds that are related by virtue of being a salt form of a common parent structure. Therefore, as part of the ChEMBL compound curation pipeline, molecules are identified where the molfile contains more than one connected component as well as molecules containing atoms with specified isotopes.” | concepts[37] |
| concept | isotopes — not defined in this paper's own words; specified nuclide forms stripped for parent generation — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | concepts[38] |
| concept | solvents — not defined in this paper's own words; listed components removed during parent generation — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | concepts[39] |
| concept | salts — not defined in this paper's own words; listed components removed when safe — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | concepts[40] |
| concept | genuine mixtures — not defined in this paper's own words; multicomponent structures retained as identical parents — “The GetParent module is applied to just those compounds that match one or both of these criteria. All information about isotopes is removed, as are solvents and salts present in the molfile which match any of the components in the defined salt and solvent lists. Having removed all salts (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralised and a new molfile created as the “parent” molecule. Compounds containing more than one component that are genuine mixtures (i.e., all of the components are absent from the salt and solvent lists) has, in the context of the ChEMBL database, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the salt list, the GetParent module does not remove any component and the parent remains the same as the salt. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopes and solvents removed and then parents created, so that bioactivity data can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26, both with bioactivity data: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity data can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopes in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParent module enables their data aggregation. Organometallic compounds do not however have salts removed due to the complexity of how they are often represented in the deposited molfile. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.” | concepts[41] |
| concept | parent aggregation process — not defined in this paper's own words; grouping of related measured forms — “For the avoidance of any doubt, although parents, salts, solvents, isotopes and mixtures are all identified using the process just described, the bioactivity data recorded in ChEMBL is registered against the form it was measured on. The aggregation by parent structure is undertaken to make it easier to identify all the data for salts and isotopes of a common parent. For example, paroxetine (CHEMBL490) has bioactivity data determined for the parent molecule, two salts, one salt/solvent mixture and two different isotopes as well as there being an additional salt registered as an FDA approved drug. Another example is amphetamine (CHEMBL405), which has bioactivity data in ChEMBL for eight different salts in addition to the parent amphetamine and an additional two salts that are recorded in drug sources such as the FDA orange book [ 34 ]. The parent aggregation process makes this data easily identified and grouped. This is illustrated in Fig. 1 for these two compounds.” | concepts[42] |
| concept | ChEMBL 26 — not defined in this paper's own words; production database release processed by the pipeline — “One of the objectives in developing the new curation pipeline was to improve the quality of the chemical structures in the ChEMBL database. As the rules implemented in the new Standardizer and GetParent modules were largely based on the original ChEMBL rules developed over the last 10 years it is difficult to unambiguously quantify this improvement. To provide a consistent starting point, therefore, the current 1.9 million compounds in the latest release of ChEMBL (ChEMBL 26) have been completely re-standardised and the parents regenerated for the whole database using the new pipeline.” | concepts[43] |
| concept | ChEMBL literature set — not defined in this paper's own words; manually extracted compound test set — “As expected, the ChEMBL literature set, being derived via manual extraction and curation, generates the fewest serious penalty scores, although it is clear there are still thousands of molecules with an undesirable representation (e.g. stereo bonds in rings, atoms with multiple stereo bonds and molecules with stereo bonds to stereocentres). The PubChem deposited set includes a large number of empty molfiles and unknown elements (often represented as an asterix, “*”) in addition to molecules containing overlapping atoms. The SureChEMBL set has a large number of compounds with V3000 formatted molfiles, radical entities as well as bonds with illegal stereo flags (usually molfiles with a 4 in the bond stereo field of the bond block). The difference between these sets is not surprising given the differences in the data sources, confirming that the Checker is suitable for identifying a range of different issues of differing severity for datasets of diverse origin.” | concepts[44] |
| concept | SureChEMBL — not defined in this paper's own words; patent-extracted compound test set — “To investigate the utility of the Checker module three very different compound sets were used. These were: a set of compounds recently extracted (by manual drawing) from the medicinal chemistry literature by the ChEMBL data extractors; a set of compounds from SureChEMBL, the patent database where the chemical structures are obtained by entity recognition followed by name or image to structure conversion [ 37 ] and a randomly selected compound set from PubChem (SIDs) as initially submitted by the depositors and prior to any compound standardisation. These three datasets are provided as structure data files (sd files) in the Supplementary Information S1, S2, S3. The results from these three sets are shown in Table 2 .” | concepts[45] |
| concept | PubChem — not defined in this paper's own words; depositor and standardizer comparison source — “To investigate the utility of the Checker module three very different compound sets were used. These were: a set of compounds recently extracted (by manual drawing) from the medicinal chemistry literature by the ChEMBL data extractors; a set of compounds from SureChEMBL, the patent database where the chemical structures are obtained by entity recognition followed by name or image to structure conversion [ 37 ] and a randomly selected compound set from PubChem (SIDs) as initially submitted by the depositors and prior to any compound standardisation. These three datasets are provided as structure data files (sd files) in the Supplementary Information S1, S2, S3. The results from these three sets are shown in Table 2 .” | concepts[46] |
| concept | PubChem standardiser — not defined in this paper's own words; comparison structure-standardization workflow — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | concepts[47] |
| concept | changed InChIs — not defined in this paper's own words; identity changes after standardization — “The percentage of molecules with changed InChIs are low for all datasets and always < 2% in each case. The majority of the changes occur where the Standardizer has neutralised a previously charged molecule, for example by removing a proton from a positively charged nitrogen or protonating a carboxyl group. A summary of these changes is shown in Table 5 . This also indicates which layer of the InChI has changed. Whilst initially it may appear that changes to the connectivity layer are unexpected for a standardisation process these examples are due to salts where the overall molfile is not neutral and where a proton has been removed to confer neutrality. To further exemplify this, some examples from the ChEMBL literature set are shown in Fig. 3 where the effect of standardisation on neutralising the molecules can be observed.” | concepts[48] |
| concept | different Standard InChIKeys — not defined in this paper's own words; cross-standardizer disagreement outcome — “As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizer with the standardiser used by the PubChem database [ 39 ]. However, as the PubChem PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKit Standardizer and also the PubChem standardiser. In total there were 97 compounds that gave different Standard InChIKeys after the respective standardisations. The key difference is that the PubChem standardiser generates a canonical tautomer as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChI but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChem generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .” | concepts[49] |
| concept | multicomponent compounds — not defined in this paper's own words; compounds containing salts, solvents, isotopes, or mixtures — “The GetParent module was used to obtain the parent structures for the standardised structures from ChEMBL where these contained more than one component or an isotope. This resulted in over 100,000 compounds where a salt, solvent, isotope or combination thereof could be removed to create a parent structure. Molfiles that are a mixture of components can contain a number of different combinations such as: a parent and its salts; a parent, its salts and solvent; a combination of only salts; or a true mixture. A true mixture, for example, would include compounds such as Co-trimoxazole (CHEMBL58061) which is a marketed product comprising trimethoprim and sulfamethoxazole and which has been tested as a combination in a number of bioactivity assays. Additionally, any of these multicomponent compounds may have been tested for bioactivity or used in a clinical setting as a specific isotopic form. A summary of the composition of the multicomponent compounds in ChEMBL 26 are shown in Fig. 5 . Whilst only ~ 6% of the compounds in ChEMBL are multicomponent (mostly salts), these compounds have over a million activity values recorded against them.” | concepts[50] |
| concept | business rules — not defined in this paper's own words; provider-specific structure-standardization policies — “The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structures in the latest release of the ChEMBL database (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curation. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChem (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIs). Where such differences were present this was largely due to variations in the business rules of the two database providers.” | concepts[51] |
Full text — tagged
An open source chemical structureterm curation pipeline using RDKitterm Abstract The ChEMBL databaseterm is one of a number of public databases that contain bioactivity dataterm on small molecule compoundsterm curated from diverse sources. Incoming compounds are typically not standardised according to consistent rules. In order to maintain the quality of the final database and to easily compare and integrate data on the same compound from different sources it is necessary for the chemical structuresterm in the database to be appropriately standardised.
A chemical curation pipelineterm has been developed using the open source toolkit RDKitterm. It comprises three components: a Checkerterm to test the validity of chemical structuresterm and flag any serious errors; a Standardizerterm which formats compounds according to defined rules and conventions and a GetParentterm component that removes any saltsterm and solventsterm from the compound to create its parent. This pipeline has been applied to the latest version of the ChEMBL databaseterm as well as uncurated datasets from other sources to test the robustness of the process and to identify common issues in database molecular structures.
All the components of the structure pipeline have been made freely available for other researchers to use and adapt for their own use. The code is available in a GitHub repository and it can also be accessed via the ChEMBL Beaker webservices. It has been used successfully to standardise the nearly 2 million compounds in the ChEMBL databaseterm and the compound validity checkerterm has been used to identify compounds with the most serious issues so that they can be prioritised for manual curationterm.
Keywords: Chemistry, Curation, ChEMBL, RDKitterm, Open source, Standardisation Introduction The ChEMBL databaseterm is a freely available bioactivity database containing close to 2.5 million compound records on nearly 2 million unique chemical structuresterm [ 1 ]. The compound structures and associated bioactivity dataterm are extracted on a regular basis primarily from the medicinal chemistry literature. A growing number of researchers are also depositing experimental data directly in order to make these available in the public domain. Furthermore, ChEMBL contains a set of manually curated marketed drugs and clinical candidates as well as selected bioactivity dataterm from other public databases such as BindingDB [ 2 ] and PubChemterm [ 3 ]. Bioactivity dataterm on the same compound from all ChEMBL sources (scientific articles, deposited datasets and curated drug sources) are aggregated according to chemical structureterm. Compounds may be physically tested in bioassays as the so-called parent moleculeterm·def or as one of a number of different salt formsterm. Scientists commonly wish to aggregate the data on these different forms on the basis of the common underlying parent structureterm, and so it is necessary to link these various forms of the “same” underlying parent moleculeterm·def.
In order to facilitate the use of the database, a key objective of the ChEMBL compound curation process is to standardise the chemical structuresterm stored in the database and to assign a unique identifierterm to each distinct chemical structureterm regardless of the source. It is worth noting that there are over 5000 unique compounds in the ChEMBL databaseterm with data from ten or more different sources, and four compounds (doxorubicin, ciprofloxacin, chloroquine and paclitaxel) each with data from over 1000 sources. For each ChEMBL release, more than 50,000 new structures are added to the database, which makes manual curationterm and standardisation of the chemical structuresterm impracticable. Hence an automated procedureterm is required.
The chemical structuresterm submitted to the ChEMBL databaseterm are generally received as molfilesterm [ 4 ] but can also be in SMILESterm format [ 5 ]. There is no universal standard for these formats and the challenges of converting between chemical structureterm formats is well documented [ 6 ]. Even the simple process of loading molecules into and out of different cheminformatics packages can subtly change the structure, particularly if it was not well drawn in the first place. Chemical structuresterm from the primary scientific literature are mostly manually drawn from the structural information in the papers prior to loading into ChEMBL. These structures are often represented in the publication as Markush structures with different R-groups shown in SAR (structure–activity relationship) tables. Compounds may also be shown with charges on acidic or basic groups, to indicate the form in which they are likely to interact with amino acid residues in a binding pocket. In some articles the compounds synthesised and reported are isotopically labelled. The ChEMBL compound curation procedure therefore needs to process molecules represented in all these ways (and more) to determine which compounds are the same. Examples of these situations can be found in recent articles where data was extracted for the ChEMBL databaseterm [ 7 – 9 ].
A standardised V2000 molfileterm was chosen as the primary chemical structureterm representation in the database. The Standard InChIterm and the corresponding hashed InChIKeyterm [ 10 , 11 ] are used in ChEMBL as the measure of uniqueness for a chemical structureterm and are calculated from the molfileterm using software provided by the InChI Trust, currently version 1.05 [ 12 ]. Thus, when compounds from different scientific articles have the same Standard InChIterm and InChIKeyterm they are considered to be the same compound and are assigned the same ChEMBL identifierterm (CHEMBL_ID). The use of the Standard InChIterm has a number of advantages in the context of the ChEMBL databaseterm. It was developed as an IUPAC open standard to enable information exchange and interoperability between large databases. The simple format of Standard InChIterm is also used by many other database providers and hence it is an ideal choice for an open database such as ChEMBL. However, unlike molfilesterm and SMILESterm, it was designed as an identifierterm and not as a structure format suitable for cheminformatics applications. For example, the Standard InChIterm is independent of the tautomeric form of a compound and hence different tautomers of a compound will have the same standard InChIterm. As a consequence, they are considered in ChEMBL as being the same compound and hence have the same ChEMBL_ID. It should however be remembered that there are a few disadvantages to using Standard InChIterm as an identifierterm, including: its inability to recognise some 1,5 keto-enol tautomers as being the same compound; its inability to recognise cis/trans isomerism in organometallic compounds (e.g. cisplatin and transplatin) and it does not support the use of relative stereochemistryterm·var, only absolute or no stereochemistryterm·var. Despite these limitations, it is a good compromise for a structural identifierterm for a public database such as ChEMBL. To aid interoperability, a canonical SMILESterm is also generated from each primary molfileterm, but this is considered to be a secondary structure.
The challenges of registering compounds in a database and determining chemical uniqueness are not specific to ChEMBL. PubChemterm, the open chemistry database of over 100 million compounds maintained by the National Institutes of Health (NIH) has developed an automated and publicly available standardisation process based on OpenEye toolkits [ 13 ]. They utilise an isomeric canonical SMILESterm to identify unique structures and show that their method generates more unique structures than when Standard InChIterm is used to determine uniqueness. They also generate a canonical tautomerterm for their compounds. The ChEMBL group decided against the use of a canonical tautomerterm, for a number of reasons. Firstly, it is anticipated that the authors of an article in the medicinal chemistry literature will have worked on their compound set for some considerable time, performed docking and molecular modelling studies and will be well placed to assign the most appropriate tautomeric form, for example based on specific interactions with the target protein. Secondly, it is possible for tautomers to interconvert under experimental conditions. Thirdly, changing the tautomeric form of a compound can alter its stereochemistryterm·var by removing, or introducing, a chiral centre from a molecule, requiring often difficult decisions to be made about how to “merge” compounds/data with different chirality or which stereo form to create. Thalidomide is a well-known example of the second phenomenon which interconverts between the therapeutic R-enantiomer and the teratogenic S-enantiomer via the enol tautomer [ 14 ].
The Royal Society of Chemistry (RSC) developed the Chemical Validation and Standardization Platform (CVSP) [ 15 ] to support compound deposition into their ChemSpider chemical database [ 16 ] and as a contribution to the Innovative Medicines Initiative (IMI) funded OpenPHACTS project [ 17 ] which aimed to standardise chemical structuresterm from multiple databases. The CVSP methodology uses sets of SMARTS-based rules that can be tailored by the user. The code is available on GitHub [ 18 ] but currently has no obvious documentation and the interface is no longer available [ 19 ] although it is still possible for depositors to ChemSpider to use the rules to validate their structures.
The United States Environmental Protection Agency (EPA) also strive to have well curated structures in their DSSTox database [ 20 ]. They have described, in detail, the complexity of the task and have undertaken extensive curation of their chemical structuresterm using a combination of manual and automated methods. Much of their focus has been on resolving the mismatches between names, identifiersterm and structures between their compound set and those in the US National Library of Medicine databases ChemID [ 21 ] and PubChemterm. Due to the inability of the V2000 molfilesterm to distinguish relative and absolute stereochemistryterm·var they have chosen to use V3000 molfilesterm as their preferred structure format. They also use an InChIKeyterm calculated using the ChemAxon JChem toolkit to determine uniqueness, but this differs from the Standard InChIKeyterm discussed above. SMILESterm are provided for users not wanting to use V3000 molfilesterm, but they make the point that this results in a less rich representation of the structures. Their methods are based on a combination of commercial toolkits and their own manual curationterm tool [ 22 ].
The Global Substance Registration System (GSRS), developed by the regulatory authorities in the USA and Europe, creates a Unique Ingredient Identifierterm (UNII) for components of medicinal products which includes small molecules but also more complex molecules such as proteins and polymers [ 23 ]. This is a particularly useful resource for identifying the structures of specific pharmaceutically relevant compounds, but it is less useful for the bulk curation of the larger set of bioactive molecules in the ChEMBL databaseterm.
Many commercial software providers also provide toolkits for standardising compound structures. These are widely used by large pharmaceutical and agrochemical companies where the precise annotation of a chemical structureterm is crucial for intellectual property protection. Those produced by ChemAxon and 3DS are examples of these toolkits [ 24 , 25 ].
The legacy pipelineterm for processing compound structures prior to deposition into ChEMBL was based on commercial software and had evolved over more than 10 years. During this time, more and more incorrect, unusual, and exceptional situations were identified and integrated into the pipeline. Unfortunately, these refinements were increasingly making the code difficult to maintain and modify. In reviewing options for a sustainable future solution that also removed the dependence on commercial software it became apparent that none of the existing toolkits fitted the ChEMBL group’s requirements. Therefore, the decision was made to build a curation pipeline around the widely used open-source RDKitterm toolkit and its implementation of the MolVSterm molecule validation and standardisation tool [ 26 , 27 ]. The resulting pipeline is now available as an open-source solution, freely available for the wider scientific community [ 28 ]. As part of this project the current rules used for curating ChEMBL structures have also been revised and rewritten to make them more sustainable. The resulting processes are designed and developed to suit the specific situation of ChEMBL, but the code can also be used by others “as is” or can be modified to suit other requirements.
It is important to note that this curation pipeline is not intended as a replacement for a similarly named standardiser tool [ 29 ] which was previously developed by the ChEMBL group as a contribution to the IMI eTOX project [ 30 ] and was specifically designed to standardise molecules in preparation for molecular modelling applications.
The newly developed curation pipeline will now be described in more detail.
Methods Three new components have been developed using the RDKitterm toolkit. Two of these components ( Standardizerterm and GetParentterm ) have been rewritten and adapted from rules originally implemented using a commercial software toolkit. In contrast, the Checkerterm component was developed more recently in an attempt to identify problem structures before they were added to the ChEMBL databaseterm.
Hence the new ChEMBL curation pipeline comprises three processes: Checkerterm : identifies and validates structures and identifies problems before they are added to the database Standardizerterm : processes (standardises) chemical structuresterm according to a set of predefined rules GetParentterm : generates parent structuresterm based on a set of rules and defined lists of saltsterm and solventsterm Checkerterm component The Checkerterm component validates structures prior to the compounds being loaded into ChEMBL. If an error or problem is detected in the structure a score is reported for the molecule; the score increases with the severity of the perceived problemterm. In the majority of cases compounds are loaded into the database even if a warning flagterm is identified. The scores are recorded but at this point errors are not corrected. Instead, they are prioritised and subjected to subsequent manual curationterm, as time and degree of seriousness permits. A summary of the structure checks performed, and the resultant penalty scoresterm assigned are shown in Table 1 .
Penalty scoresterm and annotation that are output from the Checkerterm module It is an individual user’s choice what they decide to do with molecules that return specific penalty scoresterm. For ChEMBL, a penalty scoreterm of 7 is considered to be a fatal errorterm and the molfileterm is not loaded into the database. Examples of illegal input are, for example, unknown elements in the molfileterm, or molfilesterm that cannot be read in RDKitterm due to the inability to process their aromatic bonds. Molecules with a penalty scoreterm of 6 are loaded into the ChEMBL databaseterm but without a molfileterm, as it is considered that these have a significant issue with the structure, and it is preferable to fix the problem than have a badly formed molecule in the database. Most of the issues that give rise to a penalty scoreterm of 6 are self-explanatory and are described in Table 1 . If the penalty scoreterm is 5 or 2 the molecule is loaded but the compounds are also prioritised for manual curationterm. Again, many of the 5 and 2 penalty scoresterm are self-explanatory, but the stereo mismatchterm errors perhaps need further explanation. These are reported when the number of stereocentresterm perceived by the following calculation methods differ: Mol: number of atoms where a wedged bond starts InChI: number of tetrahedral stereocentresterm RDKitterm: number of atomic stereocentresterm remaining after calling Chem.AssignStereochemistry() Hence the “InChi_RDKitterm/Mol stereo mismatchterm” warning message indicates that the InChI and RDKitterm algorithms perceive the number of stereocentresterm to be the same but different from the molfileterm. “Mol/Inchi/RDKitterm stereo mismatchterm” means that all three methods perceive different stereocentre countsterm·var. The majority of these issues occur in complex molecules such as bridged bicyclic molecules that are badly drawn. As Standard InChIterm is derived from the molfileterm, the errors where the molfileterm and InChI differ in their stereocentre countsterm·var are given a higher penalty scoreterm [ 5 ] than when they are the same but different from the RDKitterm stereo count [ 2 ].
The InChI software may give a number of warnings. These are also reported by the ChEMBL Checkerterm module. Some of these are considered important, but others such as “InChI: Omitted undefined stereo”, “InChI: Charges were rearranged”, “InChI: Ambiguous stereo”, “InChI: Proton(s) added/removed” and “InChI: Not chiral” are generated for large numbers of molecules. These either reflect the reorganisation of atoms in order to generate the InChI or are related to stereochemical ambiguity arising, for example, from the fact that the compound is a racemate; these are not considered issues for a database such as ChEMBL. Therefore, these are given a low penalty scoreterm [ 2 ]. However, in other contexts they might be more relevant and so are reported in the Checkerterm output.
Standardizerterm component The standardisation rules implemented in the ChEMBL databaseterm are based largely on the FDA/IUPAC guidelines [ 31 , 32 ]. Whilst the aim is to adhere to these rules as closely as possible, the practical reality is that submitted compounds are sometimes drawn imperfectly or the structures are ambiguously defined in the original publication or by the depositor. An automated standardiser can only safely correct some of the potential issues and the standardisation rules, currently encoded in the Standardizerterm component, are outlined here.
For certain compound types, particularly organometallic and those with a large number of boron atoms, a flag is set (exclude flagterm) and no attempt is made to standardise them. This is largely due to the V2000 molfileterm format used by ChEMBL being unable to accurately represent coordination bondsterm. For this reason, although the bioactivity dataterm on these compounds is available in ChEMBL, the chemical structuresterm are not curated nor provided in the release version of the database.
The first step in the standardisation process is therefore to exclude molecules if they contain more than 7 boron atoms or any of the following atoms: [Sc], [Ti], [V], [Cr], [Mn], [Fe], [Co], [Ni], [Cu], [Ga], [Y], [Zr], [Nb], [Mo], [Tc], [Ru], [Rh], [Pd], [Cd], [In], [Sn], [La], [Hf], [Ta], [W], [Re], [Os], [Ir], [Pt], [Au], [Hg], [Tl], [Pb], [Bi], [Po], [Ac], [Ce], [Pr], [Nd], [Pm], [Sm], [Eu], [Gd], [Tb], [Dy], [Ho], [Er], [Tm], [Yb], [Lu], [Th], [Pa], [U], [Np], [Pu], [Am], [Cm], [Bk], [Cf], [Es], [Fm], [Md], [No], [Lr], [Ge], [Sb].
The following standardisations are then made to the molecule (where they occur): Standardise unknown stereochemistryterm·var Clear S Group data from the molfileterm Generate a kekulé form of the structure Remove explicit H atomsterm except: Hs where an isotopeterm of hydrogen has been specifically set Hs that have a wedged or dashed bond to them Hs bonded to atoms with tetrahedral stereochemistryterm·var set (“Chiral Hs”). This is an example: Hs bonded to atoms in a non-default valence state that are not simply protonated. An example is phosphinic acid: Normalise structure: Fix hypervalent nitro groupsterm Convert covalently drawn alkaline metals connected to O or N to ionic forms (e.g. NaO to Na+ O−) Fix incorrect amide tautomers, e.g. N=COH to HNC(=O) Standardise sulphoxides to charge-separated form Standardise diazonium N to N+ Ensure quaternary N is charged Ensure trivalent O is charged Ensure trivalent S is charged Ensure halogen not bonded to a neighbouring atom is charged Ensure molecule is neutralisedterm, if possible, by: Adding or removing Hs Moving Hs from one atom to another (including between components) Note that if the Hs could be added to more than one atom an arbitrary choiceterm is made but this is done canonically so the result will always be the same for a given molecule 7. Normalise (straighten) triple bonds and allenes In the context of the ChEMBL databaseterm, it is the molfilesterm standardised according to these rules that are stored in the database and which are in turn the structures made available to the database users.
GetParentterm component Many compound registration systems, including the ChEMBL databaseterm, identify compounds that are related by virtue of being a salt formterm of a common parent structureterm. Therefore, as part of the ChEMBL compound curation pipeline, molecules are identified where the molfileterm contains more than one connected componentterm as well as molecules containing atoms with specified isotopesterm.
The GetParentterm module is applied to just those compounds that match one or both of these criteria. All information about isotopesterm is removed, as are solventsterm and saltsterm present in the molfileterm which match any of the components in the defined saltterm and solventterm lists. Having removed all saltsterm (e.g. Na+ that might be included to neutralise a carboxyl group), the resulting molecule is neutralisedterm and a new molfileterm created as the “parent” molecule. Compounds containing more than one component that are genuine mixturesterm (i.e., all of the components are absent from the saltterm and solventterm lists) has, in the context of the ChEMBL databaseterm, its parent registered as the identical mixture. For cases such as sodium chloride and sodium citrate, where both components are in the saltterm list, the GetParentterm module does not remove any component and the parent remains the same as the saltterm. Here again, the parent is registered as the multicomponent mixture. Compounds containing any of the excluded atoms described above have their isotopesterm and solventsterm removed and then parents created, so that bioactivity dataterm can subsequently be aggregated. For example, the antimony-containing compound sodium stibogluconate has two versions in ChEMBL 26term, both with bioactivity dataterm: CHEMBL3754364 is a version with water of crystallisation and CHEMBL3764926 is a version without. These are annotated as related forms so that the bioactivity dataterm can be seen aggregated in the database. Cyanocobalamin is a cobalt-containing compound which is recorded as a parent and three different isotopesterm in the database (CHEMBL2110563, CHEMBL2104118, CHEMBL2104381 and CHEMBL2096655). Again, the GetParentterm module enables their data aggregation. Organometallic compounds do not however have saltsterm removed due to the complexity of how they are often represented in the deposited molfileterm. For example, this is often achieved by drawing them as disconnected components as is the case for transplatin (CHEMBL1386) which was deposited into the database as N.N.[Cl−].[Cl−].[Pt+2]. Removal of the chloride and ammonia components would incorrectly result in a platinum ion as the parent.
The list of saltsterm used in ChEMBL is based on the USAN Council’s list of pharmacological saltsterm [ 33 ]. Additional entities have been added to this list where a significant number of examples have been present in ChEMBL datasets. The GetParentterm module will remove saltsterm regardless of: (i) the charge statusterm·var (e.g. acetic acid or acetate, Cl− or HCl); (ii) whether or not stereochemistryterm·var is depicted (e.g. tartaric acid); (iii) cis/trans isomers (e.g. maleic and fumaric acid). The saltsterm and solventsterm files are available in the GitHub repository [ 28 ]. Currently, these files contain 162 saltsterm and 9 solventsterm respectively. This list will be maintained and extended if additional saltsterm and solventsterm are identified.
For the avoidance of any doubt, although parents, saltsterm, solventsterm, isotopesterm and mixtures are all identified using the process just described, the bioactivity dataterm recorded in ChEMBL is registered against the form it was measured on. The aggregation by parent structureterm is undertaken to make it easier to identify all the data for saltsterm and isotopesterm of a common parent. For example, paroxetine (CHEMBL490) has bioactivity dataterm determined for the parent moleculeterm·def, two saltsterm, one saltterm/solventterm mixture and two different isotopesterm as well as there being an additional saltterm registered as an FDA approved drug. Another example is amphetamine (CHEMBL405), which has bioactivity dataterm in ChEMBL for eight different saltsterm in addition to the parent amphetamine and an additional two saltsterm that are recorded in drug sources such as the FDA orange book [ 34 ]. The parent aggregation processterm makes this data easily identified and grouped. This is illustrated in Fig. 1 for these two compounds.
Examples of the multicomponent forms of paroxetine and amphetamine and how they have been aggregated by use of the GetParentterm component Availability of structure curation pipeline The code for the pipeline has all been developed using the RDKitterm toolkit (version 2019.09.2.0). It is open source and publicly available in GitHub [ 28 ], currently as version 1.0.0. A conda package is also available to facilitate installation [ 35 ]. The Standardizerterm , Checkerterm and GetParentterm functions are also integrated in the ChEMBL Beaker webservices and can be used in this way via the ‘check’, ‘getParentterm’ and ‘standardize’ endpoints [ 36 ]. Any new features developed by the ChEMBL group will be added to the repository and comments and suggestions from others are welcomed.
Results and discussion One of the objectives in developing the new curation pipeline was to improve the quality of the chemical structuresterm in the ChEMBL databaseterm. As the rules implemented in the new Standardizerterm and GetParentterm modules were largely based on the original ChEMBL rules developed over the last 10 years it is difficult to unambiguously quantify this improvement. To provide a consistent starting point, therefore, the current 1.9 million compounds in the latest release of ChEMBL (ChEMBL 26term) have been completely re-standardised and the parents regenerated for the whole database using the new pipeline.
Checkerterm component To investigate the utility of the Checkerterm module three very different compound sets were used. These were: a set of compounds recently extracted (by manual drawing) from the medicinal chemistry literature by the ChEMBL data extractors; a set of compounds from SureChEMBLterm, the patent database where the chemical structuresterm are obtained by entity recognition followed by name or image to structure conversion [ 37 ] and a randomly selected compound set from PubChemterm (SIDs) as initially submitted by the depositors and prior to any compound standardisation. These three datasets are provided as structure data files (sd files) in the Supplementary Information S1, S2, S3. The results from these three sets are shown in Table 2 .
Checkerterm total number of the different penalty scoresterm output from subjecting the ChEMBL Literature setterm, the SureChEMBLterm set and the PubChemterm Set to the Checkerterm process As expected, the ChEMBL literature setterm, being derived via manual extraction and curation, generates the fewest serious penalty scoresterm, although it is clear there are still thousands of molecules with an undesirable representation (e.g. stereo bonds in rings, atoms with multiple stereo bonds and molecules with stereo bonds to stereocentresterm). The PubChemterm deposited set includes a large number of empty molfilesterm and unknown elements (often represented as an asterix, “*”) in addition to molecules containing overlapping atoms. The SureChEMBLterm set has a large number of compounds with V3000 formatted molfilesterm, radical entities as well as bonds with illegal stereo flags (usually molfilesterm with a 4 in the bond stereo field of the bond block). The difference between these sets is not surprising given the differences in the data sourcesterm·var, confirming that the Checkerterm is suitable for identifying a range of different issues of differing severity for datasets of diverse origin.
A breakdown of the number of compounds from each set which returned penalty scoresterm is shown in Table 3 . When more than one score is returned for a compound the highest score is reported. It is worth noting that 75% of the ChEMBL literature setterm compounds and 60% of both the SureChEMBLterm and PubChemterm compound sets showed no issues in the Checkerterm tests. When structures with a penalty scoreterm of 2 associated with InChI Warnings such as “omitted undefined stereo” and “InChI: Charges were rearranged” are excluded (as described above) then the proportion of compounds with undesirable features that would benefit from correction falls to between 4 and 11%.
Percentages of the compounds in each of the SureChEMBLterm, ChEMBL and PubChemterm sets returning each value as their maximum penalty scoreterm From a ChEMBL perspective the compounds in the latest released version of the database (ChEMBL 26term) have also been subjected to the Checkerterm analysis and this has enabled the identification of small sets of compounds with particular problems that were not previously identified. This dataset is available as an sd file on the ChEMBL FTP site [ 38 ]. These have been prioritised for curation for a subsequent ChEMBL release. The numbers of compounds with penalty scoresterm 5 and 6 are summarised in Table 4 . Those considered to be the highest priority for curation are compounds with a penalty scoreterm of 6 (69 compounds). In future the structures of molecules with penalty scoresterm of 6 will not be added to the database until they have been manually checked and corrected.
Checkerterm penalty scoresterm on the current version of ChEMBL (ChEMBL 26term) The ~ 2500 compounds with penalty scoresterm of 5 are placed in a group for second-tier curation with the following penalty annotations being prioritised: molecule has a crossed bond in a ring (632 compounds). This set does however need to be further divided depending on the ring size. It is considered a more serious issue for small rings than large rings where it is not always clear whether cis, trans or either orientation is correct.
molecule has two (or more) atoms with exactly the same coordinates (273 compounds) Those compounds with mismatches in the number of stereocentresterm will then be addressed.
Standardizerterm component Examples of applying the Standardizerterm to some “ChEMBL-like” molecules are shown in Fig. 2 . These examples show some of the specific standardisations described in the methods section for which the Standardizerterm component was designed to correct. Also, as described above, there will be differences between the last two versions of ChEMBL (versions 25 and 26) due to the re-standardisation as well as the manual curationterm that took place between the two releases. Comparing the structures in these two releases does not give any useful statistics on the effectiveness of the new Standardizerterm . Instead, to investigate this, the three sets of molecules previously described have been standardised by the new Standardizerterm module. The critical differences are where the new standardisation results in a different InChI from the one obtained prior to standardisation.
Examples of standardisations that have been applied to a set of compounds. The compound structure before and after standardisation is shown. a Fix hypervalent nitro groupsterm, b remove explicit H atomsterm, c fix covalently drawn alkaline metals connected to O or N to ionic forms, d Standardise sulphoxides to charge separated form, e normalise (straighten) allene bonds The percentage of molecules with changed InChIsterm are low for all datasets and always < 2% in each case. The majority of the changes occur where the Standardizerterm has neutralisedterm a previously charged molecule, for example by removing a proton from a positively charged nitrogen or protonating a carboxyl group. A summary of these changes is shown in Table 5 . This also indicates which layer of the InChI has changed. Whilst initially it may appear that changes to the connectivity layer are unexpected for a standardisation process these examples are due to saltsterm where the overall molfileterm is not neutral and where a proton has been removed to confer neutrality. To further exemplify this, some examples from the ChEMBL literature setterm are shown in Fig. 3 where the effect of standardisation on neutralising the molecules can be observed.
Summary of the number of compounds that have changed InChIKeysterm following standardisation for the SureChEMBLterm, ChEMBL literature and PubChemterm deposited set Examples of compounds from the ChEMBL literature setterm where the InChIKeyterm changed on standardisation due to the rebalancing of the charge on the compound As different databases use different rules to standardise compound structures, it was of interest to compare the new ChEMBL Standardizerterm with the standardiser used by the PubChemterm database [ 39 ]. However, as the PubChemterm PUG service was slow to run via their API, only a small set of compounds were used for this comparison and comprised approved small molecule drugs as annotated in ChEMBL 25 (3071 compounds). This dataset is provided as an sd file in Supplementary Information S4. The ChEMBL 25 structures for these were taken and standardised using the new ChEMBL RDKitterm Standardizerterm and also the PubChem standardiserterm. In total there were 97 compounds that gave different Standard InChIKeysterm after the respective standardisations. The key difference is that the PubChem standardiserterm generates a canonical tautomerterm as part of the process but ChEMBL does not. In many instances this is not reflected by a change to the Standard InChIterm but for some molecules the InChI does change. There are also some differences in the double bond representation (cis or trans (either)). Furthermore, PubChemterm generates all structures with explicit hydrogens which are not present in the ChEMBL structures. Some of these examples are shown in Fig. 4 .
Examples of approved drugs standardised by the ChEMBL RDKitterm Standardizerterm and the PubChem standardiserterm GetParentterm component The GetParentterm module was used to obtain the parent structuresterm for the standardised structures from ChEMBL where these contained more than one component or an isotopeterm. This resulted in over 100,000 compounds where a saltterm, solventterm, isotopeterm or combination thereof could be removed to create a parent structureterm. Molfilesterm that are a mixture of components can contain a number of different combinations such as: a parent and its saltsterm; a parent, its saltsterm and solventterm; a combination of only saltsterm; or a true mixture. A true mixture, for example, would include compounds such as Co-trimoxazole (CHEMBL58061) which is a marketed product comprising trimethoprim and sulfamethoxazole and which has been tested as a combination in a number of bioactivity assays. Additionally, any of these multicomponent compoundsterm may have been tested for bioactivity or used in a clinical setting as a specific isotopic form. A summary of the composition of the multicomponent compoundsterm in ChEMBL 26term are shown in Fig. 5 . Whilst only ~ 6% of the compounds in ChEMBL are multicomponent (mostly saltsterm), these compounds have over a million activity values recorded against them.
The composition and number of the compounds containing more than one component in ChEMBL 26term as identified by the GetParentterm module. The numbers in brackets refer to the number of compounds in each grouping that contain isotopesterm Some examples of the output from the GetParentterm process are shown in Fig. 6 . This illustrates a number of features of the GetParentterm module including the need to re-standardise a parent to some extent once a saltterm is removed, and in particular to re-neutralise the charges on the parent moleculeterm·def. The sodium saltterm of a carboxyl-containing compound is an obvious example of this. Once the Na+ cation is removed this leaves a net negative change on the parent so the GetParentterm module will add a proton to neutralise it. Quaternary nitrogen compounds are the exception, where the counterion (for example a chloride) is removed but, due to the quaternary nature of the nitrogen, it is not possible to neutralise the parent which therefore remains as the positively charged cation. Another important function of the GetParentterm module is that if a compound is a 2:1 complex with two parent moleculesterm·def and one saltterm molecule, when the GetParentterm module is applied it can recognise that the two components remaining after saltterm removal are identical and so only one molecule is returned as the parent. Atorvastatin calcium is an example of this as can be seen in Fig. 6 .
Examples of applying the GetParentterm module to some representative ChEMBL compounds containing varying combinations of saltsterm, isotopesterm and solventsterm. The “Child” is the compound before and “Parent” the compound after the process has been applied Future work Now that the components of the curation pipeline are being used in a production context for curation of compounds being added to the ChEMBL databaseterm, it will provide opportunities to review and refine any of the rules on the basis of a large consistently standardised dataset. The ChEMBL group will continue to evolve the curation pipeline as further needs are identified. The code is also now freely available to the community and other researchers are encouraged to suggest modifications so that the curation pipeline can improve further over time. Comments and issues can be added to the issues section of the ChEMBL Structure Pipeline GitHub repository [ 28 ].
Conclusion The three components of the structure curation pipeline described here have been developed as an open source project and are now available for researchers to use and adapt for their own applications. These components have been used by the ChEMBL group to produce the chemical structuresterm in the latest release of the ChEMBL databaseterm (ChEMBL26). This has resulted in the correction of certain errors in standardisation that were present in previous ChEMBL releases and the identification of other issues that can now be prioritised for future manual curationterm. Additionally, the pipeline has been tested on less well curated datasets and demonstrated to be sufficiently robust to be used in the automatic structure checking and standardisation of such datasets. A comparison between the standardiser used by PubChemterm (another large publicly available database) and the one developed here gave only a small percentage of compounds with non-identical structures (defined as having different Standard InChIsterm). Where such differences were present this was largely due to variations in the business rulesterm of the two database providers.
Acknowledgements The authors would like to explicitly acknowledge the indirect contributions of Matt Swain, the original author of the standalone MolVSterm package, and Susan Leung, who ported the python version of MolVSterm to C++ and integrated it into the RDKitterm core.
Authors’ contributions APB, AH, AG and ARL initiated and organised the work. LJB developed the original curation pipeline, which this work is built upon. APB, AH, AG, LJB, MdV and FA devised the business rulesterm. GL, EF and APB developed and wrote the code. AG and EF implemented the pipeline. LJB and MdV curated the data. AH, APB and AG performed the analysis and wrote the manuscript with contributions from GL, EF and ARL. All authors read and approved the final manuscript.
Funding This work was funded by Strategic Awards from the Wellcome Trust [WT086151/Z/08/Z, WT104104/Z/14/Z] and the Member States of the European Molecular Biology Laboratory (EMBL); Funding for open access charge: Wellcome Trust.
Availability of data and materials The datasets used for the analyses are provided as sd files in Supplementary Files. S1_surechemblterm_set, S2_pubchemterm_set, S3_chembl_literature_set, S4_approved_drug_set and are available from the ChEMBL FTP site: ftp://ftp.ebi.ac.uk/pub/databases/chembl/standardiser_data_sets .
Competing interests The authors have no competing interests.
Footnotes References Associated Data Data Citations Data Availability Statement The datasets used for the analyses are provided as sd files in Supplementary Files. S1_surechemblterm_set, S2_pubchemterm_set, S3_chembl_literature_set, S4_approved_drug_set and are available from the ChEMBL FTP site: ftp://ftp.ebi.ac.uk/pub/databases/chembl/standardiser_data_sets .