omssa.asn
上传用户:yhdzpy8989
上传日期:2007-06-13
资源大小:13604k
文件大小:5k
源码类别:

生物技术

开发平台:

C/C++

  1. -- $Id: omssa.asn,v 1000.4 2004/06/01 19:32:55 gouriano Exp $
  2. --**********************************************************************
  3. --
  4. --  OMSSA (Open Mass Spectrometry Search Algorithm) data definitions
  5. --  Lewis Geer, 2003
  6. --
  7. --  make using something like
  8. --  "datatool -m omssa.asn -oc ObjOmssa -oA -od omssa.def"
  9. --
  10. --  note that this file requires omssa.def
  11. --
  12. --**********************************************************************
  13. OMMSA DEFINITIONS ::=
  14. BEGIN
  15. -- Holds a single spectrum
  16. MSSpectrum ::= SEQUENCE {
  17. charge SEQUENCE OF INTEGER,  -- may be more than one if unknown
  18. precursormz INTEGER,  -- scaled
  19. scale INTEGER,
  20. mz SEQUENCE OF INTEGER,  -- scaled
  21. abundance SEQUENCE OF INTEGER,  -- scaled
  22. name VisibleString OPTIONAL, -- unique name of spectrum
  23. number INTEGER -- unique number of spectrum
  24. }
  25. -- Holds a set of spectra
  26. MSSpectrumset ::= SEQUENCE OF MSSpectrum
  27. -- enumerate enzymes
  28. MSEnzymes ::= INTEGER {
  29. trypsin (0),
  30. argc (1),
  31. aspn (2),
  32. chymotrypsin (3),
  33. formicacid (4),
  34. lysc (5),
  35. lyscp (6),
  36. pepsina (7),
  37. tryp-cnbr (8),
  38. trychymo (9),
  39. trypsinp (10),
  40. v8de (11),
  41. v8e (12),
  42. none (255)
  43. }
  44. -- enumerate modifications
  45. MSMod ::= INTEGER {
  46.     kmethyl (0),          -- methylation of K
  47.     moxy (1),             -- oxidation of methionine
  48.     ccarboxymethyl (2),   -- carboxymethyl cysteine
  49.     ccarbamidomethyl(3),  -- carbamidomethyl cysteine
  50.     kqdeamidation (4),    -- deamidation of K and Q
  51.     cpropionamide (5),    -- propionamide cysteine
  52.     sphosphorylation (6), -- phosphorylation of S
  53.     tphosphorylation (7), -- phosphorylation of T
  54.     yphosphorylation (8), -- phosphorylation of Y    
  55.     none(255)
  56.     }
  57. -- How is charge to be handled?  Some input files are not clear
  58. -- on this.  For example, a dta file only specifies one charge, 
  59. -- even though the charge is not really known.
  60. MSChargeHandle ::= INTEGER {
  61. calculate (0),  -- guess the charge(s) from the data
  62. usefile (1)     -- use what the input file says
  63. }
  64. -- Search type
  65. MSSearchType ::= INTEGER {
  66. monoisotopic(0),
  67. average(1)
  68. }
  69. -- The search request that is given to the OMSSA algorithm
  70. MSRequest ::= SEQUENCE {
  71. spectra MSSpectrumset,
  72. searchtype MSSearchType,  -- average or monoisotopic?
  73. peptol REAL,  -- peptide mass tolerance
  74. msmstol REAL, -- msms mass tolerance
  75.           -- next 3 fields define intensity fraction below
  76.           -- which peaks will be discard
  77.         cutlo REAL, -- the start of the cutoff, fraction of most intense peak
  78.         cuthi REAL, -- the end of the cutoff
  79.         cutinc REAL, -- the increment of the cutoff
  80.         singlewin INTEGER,  -- the size of the single charge filtering window
  81.         doublewin INTEGER,  -- the size of the double charge filtering window
  82. singlenum INTEGER,  -- the number of peaks allowed in the single window
  83.         doublenum INTEGER,  -- the number of peaks allowed in the double window
  84. fixed SEQUENCE OF MSMod,
  85. variable SEQUENCE OF MSMod,
  86. enzyme MSEnzymes,
  87. missedcleave INTEGER, 
  88. hitlistlen INTEGER DEFAULT 25,  -- the number of hits kept in memory
  89.                                 -- for a spectrum
  90. db VisibleString,  -- sequence set to search, e.g. "nr"
  91. cull INTEGER,  -- parameter for s/n cutoff
  92. taxids SEQUENCE OF INTEGER OPTIONAL,  -- taxa to limit search
  93. rid VisibleString OPTIONAL,  -- request id
  94. chargehandling MSChargeHandle OPTIONAL  -- how to deal with charges
  95. }
  96. -- enumeration of ion types
  97. MSIonType ::= INTEGER {
  98. a (0),
  99. b (1),
  100.         c (2),
  101. x (3),
  102. y (4),
  103. z (5)
  104. }
  105. -- defines a particular ion
  106. MSMZHit ::= SEQUENCE {
  107. ion MSIonType,
  108. charge INTEGER,
  109. number INTEGER,
  110. mz INTEGER  -- scaled m/z value
  111. }
  112. -- contains information about sequences with identical peptide
  113. -- sequences
  114. MSPepHit ::= SEQUENCE {
  115. start INTEGER,       -- start position (inclusive) in sequence
  116. stop INTEGER,        -- stop position (inclusive) in sequence
  117. gi INTEGER OPTIONAL, -- genbank identifier
  118. accession VisibleString OPTIONAL,
  119. defline VisibleString OPTIONAL
  120. }
  121. -- hits to a given spectrum
  122. MSHits ::= SEQUENCE {
  123. evalue REAL,     -- expected number of random hits from database
  124. pvalue REAL,
  125. charge INTEGER,  -- the charge state used in search.  -1 == not +1
  126. pephits SEQUENCE OF MSPepHit,
  127. mzhits SEQUENCE OF MSMZHit OPTIONAL,
  128. pepstring VisibleString OPTIONAL,  -- the peptide sequence
  129. threshold REAL OPTIONAL -- significance threshold
  130. }
  131. -- error return for a particular spectrum's hitset
  132. MSHitError ::= INTEGER {
  133. none (0),
  134. generalerr (1),
  135. unable2read (2),
  136. notenuffpeaks (3)
  137. }
  138. -- contains a set of hits to a single spectrum
  139. MSHitSet ::= SEQUENCE {
  140.     number INTEGER, -- unique number of spectrum
  141.     error MSHitError OPTIONAL,
  142.     hits SEQUENCE OF MSHits OPTIONAL,
  143.     filename VisibleString OPTIONAL -- place to put corresponding filename
  144. }
  145. -- error return for the entire response
  146. MSResponseError ::= INTEGER {
  147. none (0),
  148. generalerr (1),
  149. noblastdb (2),
  150. noinput (3)
  151. }
  152. -- search results
  153. MSResponse ::= SEQUENCE {
  154. hitsets SEQUENCE OF MSHitSet,
  155. rid VisibleString OPTIONAL,  -- request id
  156. error MSResponseError OPTIONAL
  157. }
  158. END