biopragmatics / bioregistry

📮 An integrative registry of biological databases, ontologies, and nomenclatures.
https://bioregistry.io
MIT License
116 stars 51 forks source link

MetaCyc reaction does not resolve #1009

Open hrshdhgd opened 10 months ago

hrshdhgd commented 10 months ago

Continued from #1008

In Metacyc, the reaction seen here would have a bioregistry based CURIE as metacyc.reaction:1.1.1.198 (1.1.1.198 is actually the EC number, so I don't know if this is correct). When I lookup bioregistry.io/metacyc.reaction:1.1.1.198, it takes me to https://metacyc.org/META/NEW-IMAGE?type=REACTION&object=1.1.1.198 which does not seem correct.

cmungall commented 10 months ago

The immediate issue here is that 1.1.1.198 is not the MetaCyc local ID, the actual local ID is +-BORNEOL-DEHYDROGENASE-RXN

You can see this under "Biocyc ID" here:

https://metacyc.org/META/NEW-IMAGE?type=REACTION&object=%2b-BORNEOL-DEHYDROGENASE-RXN

Now, the challenge here is that IMO this is a poor local ID that doesn't compose well with web standards (in their defence, MetaCyc/BioCyc predated the semantic web). The local ID has "+" symbols in it, which seems not a great choice for IDs in general.

If we try and construct a bioregistry resolution URL for this: https://bioregistry.io/reference/metacyc.reaction:+-BORNEOL-DEHYDROGENASE-RXN

it makes https://metacyc.org/META/NEW-IMAGE?type=REACTION&object=+-BORNEOL-DEHYDROGENASE-RXN

which gives us a 404 The object -BORNEOL-DEHYDROGENASE-RXN was not found in KB METABASE - you can see the + is getting lost here.

Now, we can pretend that the CURIE here is metacyc.reaction:%2b-BORNEOL-DEHYDROGENASE-RXN

But if we try and resolve https://bioregistry.io/reference/metacyc.reaction:%2b-BORNEOL-DEHYDROGENASE-RXN

This just gets turned into: https://bioregistry.io/reference/metacyc.reaction:+-BORNEOL-DEHYDROGENASE-RXN

This is quite thorny and I suggest we invite BioCyc people onto this conversation to help come up with a solution

cthoyt commented 10 months ago

cc @pkarp111