SchweppeLab / DBKey

2 stars 0 forks source link

metadata format for Prosit .msp file #30

Closed cctsou closed 1 year ago

cctsou commented 1 year ago

Hi,

As described in the README page "For Prosit .msp files, metadata needs to be manually entered (fragmentation energy, mass analyzer, CID/HCD)", how do we enter these metadata info? I downloaded the example file you provided (PrositTMTProDBKeyExample.msp) but there is no IT/FT, CID/HCD info in there. Please advise, thank you very much!!

cctsou commented 1 year ago

Another question, I just set it up with DBKey and was able to see it on the browser. I tried to run on a .msp file and click "Generate and Download .db" button, but what it does was just trying to download a file "downloadData.html" How should I proceed?

image

williambarshop commented 1 year ago

Hey Chih-Chiang, The "manual" addition of CE, analyzer, and activation mode metadata is via the user input in the library maker's interface.

Can you provide a minimal .msp file that is causing you issues? Preferably only a few scans long that can replicate the issue you're facing would be very helpful and we can get you moving. Thanks!

cctsou commented 1 year ago

Thank you very much for your response!! By selecting CE and fragmentation on the frontend I was able to get the .db file.

One additional question, since all our samples have static cys modification on all cys containing peptides. Assuming the modification doesn't affect fragmentation too much, do you know how can I modify the Prosit.msp file to make it work?

I think it would need to change precursor m/z (MW line) and also shift b/y ion m/z accordingly by the modification mass. Would that be all?

williambarshop commented 1 year ago

When DBKey runs against msp files, it uses unimod to convert the provided modifications to delta masses to embed as metadata in the output mzVault (.db) spectral library.

For example, this header from Prosit: Comment: Parent=604.2329268349998 Collision_energy=35 Mods=2/2,C,Carbamidomethyl/7,C,Carbamidomethyl ModString=NQCDHFACR//Carbamidomethyl@C2; Carbamidomethyl@C7/2 iRT=-9.39920425415039 proteotypicity=-0.5144044756889343

It seems that spectral libraries that we obtain from Prosit do explicitly define the Carbamidomethylation modification. Do you mean that you have a different Cys modification than the "standard" C+57?

If you were interested in modifying the msp file to reflect a different cysteine modification, you could modify the relevant shifting peaks according to the difference in cysteine modification delta masses. You would also need to swap the unimod name in the modification header to reflect the new modification. If your mod isn't in unimod, then you can modify the "unimod_custom.csv" at the root of the repo and build the docker container locally with a new mod.

The precursor m/z is actually recalculated during conversion to .db format based on the AA sequence of the peptide and the provided modifications, due to some older issues with the precursor m/z calculation on the side of Prosit.

Let me know if this answers your question or if you'd like any more clarification. :)

cctsou commented 1 year ago

Thank you again for the prompt and detailed answer. It's very much appreciated!!

We are doing chemical proteomics so yes it's an additional cys modification by the cys probe. https://www.unimod.org/modifications_view.php?editid1=2062

For scan comment, so in this case, just replace "Carbamidomethyl" by "DBIA"?

It would be: Comment: Parent=604.2329268349998 Collision_energy=35 Mods=2/2,C,DBIA/7,C,DBIA ModString=NQCDHFACR//DBIA@C2; DBIA@C7/2 iRT=-9.39920425415039 proteotypicity=-0.5144044756889343

williambarshop commented 1 year ago

Yes, that's right - but you'll need to manually shift the mz values of the fragment ions in the msp spectrum appropriately.

If you try this out, please let me know if it behaves well for you!

cctsou commented 1 year ago

No problem, I will let you know

cctsou commented 1 year ago

HI William,

I was able to get a .db file from a smaller .msp file. I am trying to get a bigger library from the whole proteome and encounter "Maximum upload size exceeded" message. Could we increase the size limit?

cctsou commented 1 year ago

HI William,

I was able to get a .db file from a smaller .msp file. I am trying to get a bigger library from the whole proteome and encounter "Maximum upload size exceeded" message. Could we increase the size limit?

After posting the question, I think I found that. I will let you know how it goes.

williambarshop commented 1 year ago

Hey Chih-Chiang, It sounds like you already found the line options(shiny.maxRequestSize = 10000*1024^2) from shiny/app.R This is responsible for defining the maximum file upload size.

Sorry for not responding faster! When this has been done, could you provide us with some feedback as to your success/failure relative to the size of your input msp library? I'd love to know where the current boundaries are - especially relative to the amount of RAM made available to DBkey during conversion.

Thanks!