Skip to content
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

support proteins field that match genes #558

Closed
1 task done
edkerk opened this issue Sep 27, 2024 · 4 comments · Fixed by #564
Closed
1 task done

support proteins field that match genes #558

edkerk opened this issue Sep 27, 2024 · 4 comments · Fixed by #564
Labels
COBRA Issues related to COBRA compatibility fixed in develop This issue is fixed and pushed to develop branch. Will be closed when fix appears in master branch.

Comments

@edkerk
Copy link
Member

edkerk commented Sep 27, 2024

Description of the issue:

COBRA has protein and proteinNames fields that match the genes field in size (which means that each gene can be associated to one protein). These are read from the SBML file from the fbc_geneProduct.fbc_name tag that is currently not considered by RAVEN. It would be convenient to support such a protein field as well.

proteins is an identifier field, which means that (if the field exists) it cannot be empty. COBRA solves this by filling it with COBRAprotein1 etc. if no value was found in the SBML file. proteinNames has then the same content, but without filling empty entries with COBRAprotein1 etc. As the proteins field is currently not used for anything (COBRA nor RAVEN), there is little reason to support this at the moment, while it is mostly redundant in comparison with proteinNames. Therefore, only the proteinNames field will be implemented. To ensure cross-compatibility, we will stick to the same field names.

I hereby confirm that I have:

@IVANDOMENZAIN IVANDOMENZAIN added the COBRA Issues related to COBRA compatibility label Oct 9, 2024
@edkerk edkerk added the fixed in develop This issue is fixed and pushed to develop branch. Will be closed when fix appears in master branch. label Oct 9, 2024
@IVANDOMENZAIN
Copy link
Member

In PR #559, functions importModel and ravenCobraWrapper return a MATLAB model structure that includes the field proteinNames as a row vector, however, all vector fields are column vectors in RAVEN. Should be corrected for consistency.

@edkerk edkerk removed the fixed in develop This issue is fixed and pushed to develop branch. Will be closed when fix appears in master branch. label Oct 9, 2024
@IVANDOMENZAIN
Copy link
Member

I've imported the same .xml model file, containing information stored in the SBML field fbc:geneProduct.fbc:name, using both readCbModel from the latest release, and also importModel in RAVEN (updated devel branch 04cdcc9). COBRA returns a MATLAB structure with this information in the field .proteins and does not add proteinNamesfield.
In contrast, RAVEN returns this information in the field .proteinNames and does not add .proteins field to the model structure. This discrepancy causes that, when an SBML model imported to MATLAB with COBRA is then transformed to RAVEN (using the ravenCobraWrapper function) this information gets lost.

@edkerk
Copy link
Member Author

edkerk commented Oct 9, 2024

Thanks for reporting, then I misinterpreted COBRA, I now see that they indeed never add the .proteinNames field to model. With this in mind, let's also use the proteins field in RAVEN. ravenCobraWrapper can then add/remove COBRAProteinXXX entries when converting model variants.

@IVANDOMENZAIN
Copy link
Member

@edkerk I agree with the suggested approach, will fix as new PR.

@IVANDOMENZAIN IVANDOMENZAIN linked a pull request Oct 12, 2024 that will close this issue
2 tasks
@edkerk edkerk added the fixed in develop This issue is fixed and pushed to develop branch. Will be closed when fix appears in master branch. label Oct 12, 2024
@edkerk edkerk closed this as completed Oct 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
COBRA Issues related to COBRA compatibility fixed in develop This issue is fixed and pushed to develop branch. Will be closed when fix appears in master branch.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants