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

生物技术

开发平台:

C/C++

  1. --
  2. -- ===========================================================================
  3. -- PRODUCTION $Log: seqcode.asn,v $
  4. -- PRODUCTION Revision 1000.0  2003/10/29 21:32:08  gouriano
  5. -- PRODUCTION PRODUCTION: IMPORTED [ORIGINAL] Dev-tree R6.0
  6. -- PRODUCTION
  7. -- ===========================================================================
  8. --
  9. --$Revision: 1000.0 $
  10. --  *********************************************************************
  11. --
  12. --  These are code and conversion tables for NCBI sequence codes
  13. --  ASN.1 for the sequences themselves are define in seq.asn
  14. --
  15. --  Seq-map-table and Seq-code-table REQUIRE that codes start with 0
  16. --    and increase continuously.  So IUPAC codes, which are upper case
  17. --    letters will always have 65 0 cells before the codes begin.  This
  18. --    allows all codes to do indexed lookups for things
  19. --
  20. --  Valid names for code tables are:
  21. --    IUPACna
  22. --    IUPACaa
  23. --    IUPACeaa
  24. --    IUPACaa3     3 letter amino acid codes : parallels IUPACeaa
  25. --                   display only, not a data exchange type
  26. --    NCBI2na
  27. --    NCBI4na
  28. --    NCBI8na
  29. --    NCBI8aa
  30. --    NCBIstdaa
  31. --     probability types map to IUPAC types for display as characters
  32. NCBI-SeqCode DEFINITIONS ::=
  33. BEGIN
  34. EXPORTS Seq-code-table, Seq-map-table, Seq-code-set;
  35. Seq-code-type ::= ENUMERATED {              -- sequence representations
  36.     iupacna (1) ,              -- IUPAC 1 letter nuc acid code
  37.     iupacaa (2) ,              -- IUPAC 1 letter amino acid code
  38.     ncbi2na (3) ,              -- 2 bit nucleic acid code
  39.     ncbi4na (4) ,              -- 4 bit nucleic acid code
  40.     ncbi8na (5) ,              -- 8 bit extended nucleic acid code
  41.     ncbipna (6) ,              -- nucleic acid probabilities
  42.     ncbi8aa (7) ,              -- 8 bit extended amino acid codes
  43.     ncbieaa (8) ,              -- extended ASCII 1 letter aa codes
  44.     ncbipaa (9) ,              -- amino acid probabilities
  45.     iupacaa3 (10) ,            -- 3 letter code only for display
  46.     ncbistdaa (11) }           -- consecutive codes for std aas, 0-25
  47. Seq-map-table ::= SEQUENCE { -- for tables of sequence mappings 
  48.     from Seq-code-type ,      -- code to map from
  49.     to Seq-code-type ,        -- code to map to
  50.     num INTEGER ,             -- number of rows in table
  51.     start-at INTEGER DEFAULT 0 ,   -- index offset of first element
  52.     table SEQUENCE OF INTEGER }  -- table of values, in from-to order
  53. Seq-code-table ::= SEQUENCE { -- for names of coded values
  54.     code Seq-code-type ,      -- name of code
  55.     num INTEGER ,             -- number of rows in table
  56.     one-letter BOOLEAN ,   -- symbol is ALWAYS 1 letter?
  57.     start-at INTEGER DEFAULT 0 ,   -- index offset of first element
  58.     table SEQUENCE OF
  59.         SEQUENCE {
  60.             symbol VisibleString ,      -- the printed symbol or letter
  61.             name VisibleString } ,      -- an explanatory name or string
  62.     comps SEQUENCE OF INTEGER OPTIONAL } -- pointers to complement nuc acid
  63. Seq-code-set ::= SEQUENCE {    -- for distribution
  64.     codes SET OF Seq-code-table OPTIONAL ,
  65.     maps SET OF Seq-map-table OPTIONAL }
  66. END