bridgedb / bridgedb/datasources
Which system codes for ChEMBL?
- Dominant language
- Python
- Stars
- 4
- Forks
- 8
- PR merge metrics
- No merged PRs in 30d
Description
In commit ab02add1bee33b47e45bfdee7f89190681e9bcf2 @egonw added to [org.bridgedb.bio/resources/org/bridgedb/bio/datasources.txt](https://github.com/bridgedb/BridgeDb/blob/ab02add1bee33b47e45bfdee7f89190681e9bcf2/org.bridgedb.bio/resources/org/bridgedb/bio/datasources.txt#L11):
```
ChEMBL compound Cl http://www.ebi.ac.uk/chembl/ https://www.ebi.ac.uk/chembl/compound/inspect/$id CHEMBL308052 metabolite 1 urn:miriam:chembl.compound ^CHEMBL\d+$ ChEMBL compound
```
Using system code `Cl` here clashes with the equivalent entry in org.bridgedb.rdf, which uses `ChEMBLCompound` - what was the reason for going with `Cl`?
See both [IdentifiersOrgDataSource.ttl](https://github.com/bridgedb/BridgeDb/blob/ab02add1bee33b47e45bfdee7f89190681e9bcf2/org.bridgedb.rdf/resources/IdentifiersOrgDataSource.ttl#L953) and in [IdentifiersOrgDataSource.txt](https://github.com/bridgedb/BridgeDb/blob/ab02add1bee33b47e45bfdee7f89190681e9bcf2/org.bridgedb.rdf/resources/IdentifiersOrgDataSource.txt#L84)
This (luckily) causes the `IdentifersOrgReaderTest` test to fail with:
```
Caused by: java.lang.IllegalArgumentException: System code does not match for DataSource ChEMBL compound was Cl so it can not be changed to ChEMBLCompound
at org.bridgedb.DataSource.findOrRegister(DataSource.java:640)
at org.bridgedb.DataSource.register(DataSource.java:620)
at org.bridgedb.rdf.BridgeDBRdfHandler.readDataSource(BridgeDBRdfHandler.java:131)
at org.bridgedb.rdf.BridgeDBRdfHandler.getDataSource(BridgeDBRdfHandler.java:121)
at org.bridgedb.rdf.BridgeDBRdfHandler.readAllDataSources(BridgeDBRdfHandler.java:113)
at org.bridgedb.rdf.BridgeDBRdfHandler.doParseRdfInputStream(BridgeDBRdfHandler.java:92)
... 33 more
```
The system codes used for ChEMBL within [IdentifiersOrgDataSource.txt](https://github.com/bridgedb/BridgeDb/blob/ab02add1bee33b47e45bfdee7f89190681e9bcf2/org.bridgedb.rdf/resources/IdentifiersOrgDataSource.txt#L84) are not ideal:
- ChEMBLCompound
- ChemblId
- ChemblMolecule
- chembl.target
- ChemblTarget (!)
- Chembl16TargetComponent
Those are both very long, includes (wrong) version number, and has duplicates and are inconsistent.
At Identifiers.org we find the names
- [chembl.compound](http://identifiers.org/chembl.compound/)
- [chembl.target](http://identifiers.org/chembl.target/)
(but nothing for molecules, assays or target component)
`Cc` is already used by CCDS.
After discussing this with @egonw I suggest modifying org/bridgedb/bio/datasources.txt to use system codes:
- `ChC` (ChEMBL compound)
- `ChT` (ChEMBL target)
- `ChTC` (ChEMBL Target Component) -- or `ChP` for "protein"?
CamelCasing here mimics other entries like `EnMm` (Ensembl Mouse).
Views?
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.