NCBI C Toolkit Cross Reference

C/asn/seqcode.asn


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

source navigation ]   [ diff markup ]   [ identifier search ]   [ freetext search ]   [ file search ]  

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.