Opened 9 years ago

Closed 9 years ago

#737 closed (fixed)

Hits Comparison should have Option to Include Peptide Modifications

Reported by: olle Owned by: olle
Milestone: Proteios SE 2.15.0 Keywords:
Cc:

Description

Hits Comparison should have an option to include modifications for peptide comparisons. Default should be to not include modifications (current practice), in which case descriptions/sequences should only be compared up to the first space. When modifications are included, comparisons should use the full description/sequence string.

Change History (11)

comment:1 Changed 9 years ago by olle

Status: newassigned

Ticket accepted.

comment:2 Changed 9 years ago by olle

Traceability note:

  • Comparison of Hits reports was introduced in Ticket #535 (Comparison of Hits reports), and was updated in Ticket #639 (Enhancement of protein list comparisons).
  • GUI layout of Hits Comparison Report was updated in Ticket #730 (HitComparisonReport labels and fieldset titles need rephrasing).
  • Quantitative Hits Comparison report was introduced in Ticket #736 (quantitative comparison report).
Last edited 9 years ago by olle (previous) (diff)

comment:3 Changed 9 years ago by olle

Design discussion.

  • Update of GUI to allow setting a flag to include modifications will be based on the design for setting flags like that for ignoring combined search FDR for protein comparisons. Since the new option is the first setting only affecting peptide comparisons, a new fieldset for "Peptide Comparison Settings Only" will be added to the form.
  • Class HitsComparisonReportPlugin should be updated to retrieve the value of the new flag variable from job parameters, and use the full descripton/sequence string as comparison string if the value of the new variable is true, and otherwise use the part of the description/sequence before the first space, as previously.

comment:4 Changed 9 years ago by olle

(In [4099]) Refs #737. Refs #535. Refs #287. Hits comparison report updated with new option to include modifications when comparing peptides:

  1. Class/file action/hit/HitsComparisonReport.java in client/servlet/ updated with new public static valid parameter VBoolean VINCLUDEMODIFICATIONS.
  1. Class/file gui/form/HitComparisonForm.java in client/servlet/ updated by adding new fieldset for peptide comparisons only and adding a new check box coupled to valid parameter HitsComparisonReport.VINCLUDEMODIFICATIONS to it. Default setting for including modifications is false. Code for hidden forward field moved to after visible fields.
  1. Class/file action/hit/CreateHitsComparisonReportJob.java in client/servlet/ updated to obtain value of new valid parameter VBoolean HitsComparisonReport.VINCLUDEMODIFICATIONS and set the value to new job parameter (value equal to null are set to false, which is the default value).
  1. Class/file plugins/HitsComparisonReportPlugin.java in plugin/ updated to obtain the value of new job parameter for the include modifications flag. Private inner class HitsComparisonData updated with new private instance variable boolean modificationsIncluded with public accessor methods, and the value of the new boolean variable is set to that of the new job parameter for including modifications. Private method String fetchCompareString(Hit hit, boolean gelBasedComparison, String comparisonType) updated with new argument Boolean modificationsIncluded, and the full description/sequence string is used for comparisons when the value of modificationsIncluded is true, otherwise the string up to the first space is used.
  1. English dictionary file locale/en/dictionary in client/servlet/ updated with new string keys.

comment:5 Changed 9 years ago by olle

Resolution: fixed
Status: assignedclosed

Ticket closed as the requested functionality has been added.

comment:6 Changed 9 years ago by olle

Resolution: fixed
Status: closedreopened

Ticket reopened as inclusion of "delta:" data in the hit description string requires an update of the way the peptide sequence is obtained from the hit description when modifications are included (currently the full description string is used).

comment:7 Changed 9 years ago by olle

Design discussion.

  • The hit description string might include "delta" data after the sequence and optional modification information, requiring an update of the way the peptide sequence is obtained from the hit description when modifications are included. The delta data indicates the difference in score relative to the next best match in the Mascot identification, e.g. for three hits with sequence "NFFAALDSDDEDTPR" and modification "Phospho (ST) @0.000000020000000.0":

    NFFAALDSDDEDTPR Phospho (ST) @0.000000020000000.0 delta:41.259995
    NFFAALDSDDEDTPR Phospho (ST) @0.000000020000000.0 delta:47.239998
    NFFAALDSDDEDTPR Phospho (ST) @0.000000020000000.0 delta:45.88

    When comparing hits and modifications are included, these hits should all be reported under sequence/modification "NFFAALDSDDEDTPR Phospho (ST) @0.000000020000000.0". To achieve this, the hit description string needs to be truncated after the end of the modification definition and before the " delta" part. When modifications are not included, no change is necessary, since the description string is truncated after the first space character.

comment:8 Changed 9 years ago by olle

Design update:

  • Class HitsComparisonQuantitativeReportPlugin for quantitative comparison report contains two private methods named fetchCompareString(...):

    String fetchCompareString(Hit hit, boolean gelBasedComparison, String comparisonType, Boolean modificationsIncluded)
    String fetchCompareString(String compareStr, String comparisonType, Boolean modificationsIncluded)

    The first is used to obtain a comparison string from a hit, while the second is used when the sequence list to be used when indexing the table is created. When the complexity of the sequence string processing increases, it is desirable to keep this processing in a single place in the code. In order to achieve this and increase clarity regarding the operations of the methods, the second method, String fetchCompareString(String compareStr, String comparisonType, Boolean modificationsIncluded), should be renamed String pruneCompareString(String compareStr, String comparisonType, Boolean modificationsIncluded), and be called from the first method to perform any truncation of the initial string.
  • Private method String pruneCompareString(String compareStr, String comparisonType, Boolean modificationsIncluded) (after name change) should be updated to cut off the part of the string after " delta", when modifications are included.
  • In order to increase consistency between classes HitsComparisonQuantitativeReportPlugin and HitsComparisonReportPlugin (used for non-quantitative comparison report), the updates to the former method should also be made to the latter.

comment:9 Changed 9 years ago by olle

(In [4120]) Refs #737. Refs #736. Hits comparison updated to ignore any "delta" data in a hit description string when obtaining a sequence string:

  1. Class/file plugins/HitsComparisonQuantitativeReportPlugin.java in plugin/ updated:
    a. Private method String fetchCompareString(String compareStr, String comparisonType, Boolean modificationsIncluded) renamed String pruneCompareString(String compareStr, String comparisonType, Boolean modificationsIncluded).
    b. Private method String pruneCompareString(String compareStr, String comparisonType, Boolean modificationsIncluded) (after name change) updated to cut off the part of the string after " delta", when modifications are included.
    c. Private method String fetchCompareString(Hit hit, boolean gelBasedComparison, String comparisonType, Boolean modificationsIncluded) updated to call renamed method String pruneCompareString(String compareStr, ...) to perform any truncation of the initial string.
  1. Class/file plugins/HitsComparisonReportPlugin.java in plugin/ updated to be consistent with class/file plugins/HitsComparisonQuantitativeReportPlugin.java.

comment:10 Changed 9 years ago by olle

Design update clarification:

  • When previously was stated that when modifications are included, the peptide sequence string should be obtained from the hit description string by cutting off the part of the string after
    " delta", was meant that the string " delta" should also be cut off.

comment:11 Changed 9 years ago by olle

Resolution: fixed
Status: reopenedclosed

Ticket closed again as the peptide sequence string now is obtained from the hit description string by removing any part of the latter starting with " delta", when modifications are included.

Note: See TracTickets for help on using tickets.