-
Notifications
You must be signed in to change notification settings - Fork 46
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
feat: gene name compliance with cobrapy #216
Conversation
test if all model components are loaded when cobrapy is used
for compliance with cobrapy
@Midnighter do you foresee any potential issues with this decision? were you aware of this difference between cobrapy and cobratoolbox on how the gene names are stored in the xml file? |
I was not aware of this difference. Taking a look at the FBC specification, the Can you please raise an issue on cobrapy about it? |
@Midnighter it does indeed set it, just equal to |
IMHO, the proposed solution here should just be a workaround, as |
@edkerk I agree, this is a temporal workaround to guarantee that cobrapy users can get all model fields they need. The permanent solution is to have cobratoolbox and cobrapy agree with one format, and as soon as that happens we can prescind from this change and entirely remove the |
From my perspective it's a good idea to coordinate on this. I don't really care if it's an issue on the toolbox or on cobrapy. |
Following @Midnighter's earlier comment, |
@edkerk I have now opened opencobra/cobrapy#950 for discussion and #217 as a to-do in this repo once a solution is found. If anything else is needed let me know in a review :) |
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.
Great!
PR #216 created conflicts in master
Main improvements in this PR:
This partly addresses #102: After the merge of opencobra/cobrapy#685, every component in yeast-GEM is properly parsed when loaded into cobrapy, with the exception of gene names (notebook with the 1st analysis here): this is because gene names are stored by cobratoolbox in the
fbc:label
field in the xml file, whereas cobrapy looks for these in thefbc:name
field. So instead, I've adapted the Matlab saving wrapper so that it copiesmodel.geneNames
ontomodel.proteins
, as that is translated to the compliantfbc:name
field. By doing this we won't loose any information, as inmodel.proteins
we had placeholders until now. The only downside is that the xml will now have duplicated info:But as we now over-write the protein info with the wrapper, and cobrapy only reads one of them, we should not have any issues. Also, from now on no need to redefine each time the
model.proteins
field @feiranl.I hereby confirm that I have:
devel
as a target branch (top left drop-down menu)