-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix Annotation parsing issue #8
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #8 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 6 6
Lines 196 197 +1
=========================================
+ Hits 196 197 +1 ☔ View full report in Codecov by Sentry. |
Hi! looks all good, this looks more like the structured For completeness, is it possible to somehow automatically download that linked json from eLife (or any other kind of repo) ? |
Co-authored-by: Mirek Kratochvil <[email protected]>
Hi, the json has no annotations but has notes that are structured. I don't know if this is the expected 'legal' format. Here an example of both a metabolite and a reaction section. {
"id":"1ag3p_c",
"name":"1-acyl-glycerol 3-phosphate",
"compartment":"c",
"charge":-2,
"formula":"C4H6O7PR",
"notes":{
"InChI Key":{
"notes":"(no InChI key)"
},
"KEGG Compound":{
"id":"C00681",
"link":"http://identifiers.org/kegg.compound/C00681"
}
}
}, {
"id":"CYTK1",
"name":"CYTK1",
"metabolites":{
"adp_c":1,
"atp_c":-1,
"cdp_c":1,
"cmp_c":-1
},
"lower_bound":-1000,
"upper_bound":1000,
"gene_reaction_rule":"MMSYN1_0347",
"subsystem":"Nucleotide metabolism",
"notes":{
"EC number":{
"id":"2.7.4.25",
"link":"http://identifiers.org/ec-code/2.7.4.25"
}
}
} Regarding downloading, below are the links to access the Additional Files associated with the paper, as well as the specific link to download file 10 (the network). The current issue (i think) with the JSONFBCModels workflow is that the link retrieves a |
@josePereiro apologies for the delay, parental leave problems :D
There's absolutely no standard for the notes formatting (as generally for the JSON model format). AFAIK cobrapy just goes for "whatever fits into the JSON". Quite conveniently (not), SBML has notes in "free form XML", and cobratoolbox has notes in free form matlab... In turn, hard-converting to string and then just trying to convert back is literally the only portable way that we can ever do. Will try to get this merged ASAP. |
interesting, for whatever reason I'm getting full coverage on my computer while codecov keeps whining on missing return line coverage (for no apparent reason). Let's dive deeper here. 🤣 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok all good now. Thanks a lot!
Porting from COBREXA 1.x PR.
Most of the return-default issues were already implemented. Just "generalizing" the annotation parser fixes my issue.
Here are the tests I'm running locally. I'm using the same models from the package test suite, but I'm adding the network I'm interested in (elife-36842-supp10-v2.json). I don't really know if the network's JSON complies with the expected interface, that's why I'm comparing it with the other models.