You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
similar reactions with different stoichiometry #347
Some reaction pairs are very similar, but with different stoichiometry, which is suspicious:
We should figure out which is right.
The third column is if they have the same GPR.
example (same GPR):
'2 ATP[c] + 2 H2O[c] + sulfate[c] => 2 ADP[c] + 2 H+[c] + 2 Pi[c] + sulfate[s]' 'ATP[c] + H2O[c] + sulfate[c] => ADP[c] + H+[c] + Pi[c] + sulfate[s]'
MAR04910, MAR04411, and MAR04912 were addressed in #568/#600. MAR06057 was not mentioned, but MAR04411 was removed in #600, and MAR04411 was the only potential duplicate of MAR06057 listed here.
MAR05295 was removed in #581
MAR06406 and MAR01483 were removed in #706
I haven't investigated any of the others beyond determining that no other issues or pull requests or anything mention them
Most of the issues are transport reactions, where HMRdatabase suggested a 2 ATP cost, while Recon3D had 1 ATP. Recon3D is probably correct. @Devlin-Moyer or @JHL-452b, what do you think?
my first thought is that I've generally found it difficult to find solid evidence for particular stoichiometric coefficients for transport reactions, especially ATP-dependent ones, since they seem to be unknown for a large number of transporters. It would probably take a decent amount of time to try and determine which member of each pair is more accurate, but I also think that assuming all of the Recon3D versions are more accurate would probably be fine, i.e. that removing one member of each of these pairs is unlikely to significantly impact predicted fluxes
It probably needs a little closer look, especially for the gene-associated ones. Apparently ABC transporters do routinely use 2 ATP per transported metabolite, so the question is by what mechanisms these transport reactions work.
For instance, quite a few reactions are annotated with ENSG00000036565, which is actually not powered by ATP hydrolysis but rather the proton gradient (UniProt). So in those cases both reactions are incorrect.
Went through the remaining pairs. They are not one problem: they split into five mechanistically distinct groups, so a blanket "keep Recon3D, drop HMR" would have left real errors in and, for the ABC group, dropped the more-correct member. Resolved as follows.
Group
Transporter
What was done
Reactions
Vesicular secretion
SLC18A1/A2/A3, SLC32A1 (VMAT/VAChT/VGAT)
These are H+ antiporters, but the gradient is across the secretory-vesicle membrane, which the model does not have, so the ATP is a proxy for the V-ATPase loading cost. Standardised to 1 ATP per molecule and removed the inconsistent HMR 2-ATP-per-3-molecule duplicates; added a rxnNotes note explaining the proxy
3 sequential monooxygenations, so kept MAR00116 (3 NADPH/3 O2) and removed MAR02300 (1 NADPH/2 O2)
kept MAR00116; removed MAR02300
All modified reactions remain mass and charge balanced, and no genes are orphaned. One item is left open: the sulfate pair (MAR01913/MAR02304) is not obviously an ABC transporter (its Recon3D EC 4.1.3.6 is clearly wrong), so its mechanism needs a closer look before deciding the ATP cost.
#1105 revises three of the decisions taken in #1041 and completes its bookkeeping.
1. Vesicular secretion goes back to the HMR stoichiometries.#1041 kept the Recon3D form with 1 ATP per secreted molecule. That overestimates the cost: the vesicular transporters exchange 2 H+ per amine or acetylcholine (VMAT/VAChT, SLC18 family, PMID:12827358), and the V-ATPase pumps about 10 H+ per 3 ATP (PMID:32165585, structure of the brain V-ATPase), so about 0.6 ATP per amine and about 0.3 ATP per GABA or glycine, which VGAT (SLC32A1, PMID:12750892) loads with fewer protons. The HMR forms (2 ATP per 3 amines or acetylcholine, 1 ATP per 3 GABA, glycine or beta-alanine) are the closest whole-number forms, and they are also what the BiGG ids on these reactions (e.g. HISTAVESSEC, GABAVESSEC) describe.
GPRs are unchanged (SLC18A1/SLC18A2, SLC18A3, SLC32A1; none for metanephrine). 5-hydroxy-L-tryptophan is not a known VMAT substrate and vesicular secretion of metanephrine has no support: #1106 removes the VMAT GPR from MAR07634 and deprecates MAR08922. Still open: the restored rows do not yet carry the references and the V-ATPase note that were on the removed Recon3D rows.
2. BGT1 couples 3 Na+ and 2 Cl-. MAR09873 (betaine) and MAR09886 (GABA) go from 3 Na+ : 1 Cl- to 3 Na+ : 2 Cl- per substrate. Human BGT-1 (SLC6A12) cloned from kidney: PMID:7589472. UniProt P48065 lists 3:1 for GABA while citing this same paper, and 3 Na+ : 2 Cl- for betaine (RHEA:71175, by similarity). The removed MAR09603/MAR09604 had the better-supported 3:2 form.
3. Bile-salt exports from the peroxisome removed. MAR01857 (taurocholate) and MAR01861 (taurochenodeoxycholate) moved the bile salt straight from the peroxisome to the extracellular space with 2 ATP and no gene. They are deprecated. The canalicular export by ABCB11 (BSEP) uses 1 ATP per bile salt (UniProt O95342, RHEA:50052, RHEA:50064), which is what the existing cytosol-to-extracellular reactions MAR01870 and MAR01872 already describe. MAR01702 (25(R)DHCA-CoA, ER to peroxisome, 2 ATP) is kept unchanged.
4. Retired-id pointers. The kept reactions now list the ids that #1041 deprecated into them: MAR09609 <- MAR07667, MAR09607 <- MAR08930, MAR09873 <- MAR09603, MAR09886 <- MAR09604, MAR01702 <- MAR02283, MAR00116 <- MAR02300.
The sulfate pair (MAR01913/MAR02304) remains open, as noted before.
Activity
Devlin-Moyer commentedon Jun 17, 2024
MAR04910, MAR04411, and MAR04912 were addressed in #568/#600. MAR06057 was not mentioned, but MAR04411 was removed in #600, and MAR04411 was the only potential duplicate of MAR06057 listed here.
MAR05295 was removed in #581
MAR06406 and MAR01483 were removed in #706
I haven't investigated any of the others beyond determining that no other issues or pull requests or anything mention them
johan-gson commentedon Jun 17, 2024
Nice work cleaning this up, these issues have been around for some time!
edkerk commentedon Mar 23, 2026
Here are the remaining problematic reactions.
Most of the issues are transport reactions, where HMRdatabase suggested a 2 ATP cost, while Recon3D had 1 ATP. Recon3D is probably correct. @Devlin-Moyer or @JHL-452b, what do you think?
Devlin-Moyer commentedon Mar 23, 2026
my first thought is that I've generally found it difficult to find solid evidence for particular stoichiometric coefficients for transport reactions, especially ATP-dependent ones, since they seem to be unknown for a large number of transporters. It would probably take a decent amount of time to try and determine which member of each pair is more accurate, but I also think that assuming all of the Recon3D versions are more accurate would probably be fine, i.e. that removing one member of each of these pairs is unlikely to significantly impact predicted fluxes
edkerk commentedon Mar 24, 2026
It probably needs a little closer look, especially for the gene-associated ones. Apparently ABC transporters do routinely use 2 ATP per transported metabolite, so the question is by what mechanisms these transport reactions work.
For instance, quite a few reactions are annotated with
ENSG00000036565, which is actually not powered by ATP hydrolysis but rather the proton gradient (UniProt). So in those cases both reactions are incorrect.edkerk commentedon Jul 11, 2026
Went through the remaining pairs. They are not one problem: they split into five mechanistically distinct groups, so a blanket "keep Recon3D, drop HMR" would have left real errors in and, for the ABC group, dropped the more-correct member. Resolved as follows.
rxnNotesnote explaining the proxyAll modified reactions remain mass and charge balanced, and no genes are orphaned. One item is left open: the sulfate pair (MAR01913/MAR02304) is not obviously an ABC transporter (its Recon3D EC 4.1.3.6 is clearly wrong), so its mechanism needs a closer look before deciding the ATP cost.
fix: correct mechanism and stoichiometry of duplicate transport react…
edkerk commentedon Sep 27, 2026
#1105 revises three of the decisions taken in #1041 and completes its bookkeeping.
1. Vesicular secretion goes back to the HMR stoichiometries. #1041 kept the Recon3D form with 1 ATP per secreted molecule. That overestimates the cost: the vesicular transporters exchange 2 H+ per amine or acetylcholine (VMAT/VAChT, SLC18 family, PMID:12827358), and the V-ATPase pumps about 10 H+ per 3 ATP (PMID:32165585, structure of the brain V-ATPase), so about 0.6 ATP per amine and about 0.3 ATP per GABA or glycine, which VGAT (SLC32A1, PMID:12750892) loads with fewer protons. The HMR forms (2 ATP per 3 amines or acetylcholine, 1 ATP per 3 GABA, glycine or beta-alanine) are the closest whole-number forms, and they are also what the BiGG ids on these reactions (e.g. HISTAVESSEC, GABAVESSEC) describe.
GPRs are unchanged (SLC18A1/SLC18A2, SLC18A3, SLC32A1; none for metanephrine). 5-hydroxy-L-tryptophan is not a known VMAT substrate and vesicular secretion of metanephrine has no support: #1106 removes the VMAT GPR from MAR07634 and deprecates MAR08922. Still open: the restored rows do not yet carry the references and the V-ATPase note that were on the removed Recon3D rows.
2. BGT1 couples 3 Na+ and 2 Cl-. MAR09873 (betaine) and MAR09886 (GABA) go from 3 Na+ : 1 Cl- to 3 Na+ : 2 Cl- per substrate. Human BGT-1 (SLC6A12) cloned from kidney: PMID:7589472. UniProt P48065 lists 3:1 for GABA while citing this same paper, and 3 Na+ : 2 Cl- for betaine (RHEA:71175, by similarity). The removed MAR09603/MAR09604 had the better-supported 3:2 form.
3. Bile-salt exports from the peroxisome removed. MAR01857 (taurocholate) and MAR01861 (taurochenodeoxycholate) moved the bile salt straight from the peroxisome to the extracellular space with 2 ATP and no gene. They are deprecated. The canalicular export by ABCB11 (BSEP) uses 1 ATP per bile salt (UniProt O95342, RHEA:50052, RHEA:50064), which is what the existing cytosol-to-extracellular reactions MAR01870 and MAR01872 already describe. MAR01702 (25(R)DHCA-CoA, ER to peroxisome, 2 ATP) is kept unchanged.
4. Retired-id pointers. The kept reactions now list the ids that #1041 deprecated into them: MAR09609 <- MAR07667, MAR09607 <- MAR08930, MAR09873 <- MAR09603, MAR09886 <- MAR09604, MAR01702 <- MAR02283, MAR00116 <- MAR02300.
The sulfate pair (MAR01913/MAR02304) remains open, as noted before.
Implemented in #1105.
edkerk commentedon Oct 5, 2026
Fixed in Human 2.1.0.