⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 general.asn

📁 ncbi源码
💻 ASN
字号:
---- ===========================================================================-- PRODUCTION $Log: general.asn,v $-- PRODUCTION Revision 1000.0  2003/10/29 21:15:01  gouriano-- PRODUCTION PRODUCTION: IMPORTED [ORIGINAL] Dev-tree R6.4-- PRODUCTION-- ===========================================================================----$Revision: 1000.0 $--**********************************************************************----  NCBI General Data elements--  by James Ostell, 1990--  Version 3.0 - June 1994----**********************************************************************NCBI-General DEFINITIONS ::=BEGINEXPORTS Date, Person-id, Object-id, Dbtag, Int-fuzz, User-object;-- StringStore is really a VisibleString.  It is used to define very--   long strings which may need to be stored by the receiving program--   in special structures, such as a ByteStore, but it's just a hint.--   AsnTool stores StringStores in ByteStore structures.-- OCTET STRINGs are also stored in ByteStores by AsnTool-- -- typedef struct bsunit {             /* for building multiline strings */   -- Nlm_Handle str;            /* the string piece */   -- Nlm_Int2 len_avail,       -- len;   -- struct bsunit PNTR next; }       /* the next one */-- Nlm_BSUnit, PNTR Nlm_BSUnitPtr;-- -- typedef struct bytestore {   -- Nlm_Int4 seekptr,       /* current position */      -- totlen,             /* total stored data length in bytes */      -- chain_offset;       /* offset in ByteStore of first byte in curchain */   -- Nlm_BSUnitPtr chain,       /* chain of elements */      -- curchain;           /* the BSUnit containing seekptr */-- } Nlm_ByteStore, PNTR Nlm_ByteStorePtr;---- AsnTool incorporates this as a primitive type, so the definition--   is here just for completeness-- --  StringStore ::= [APPLICATION 1] IMPLICIT OCTET STRING---- BigInt is really an INTEGER. It is used to warn the receiving code to expect--   a value bigger than Int4 (actually Int8). It will be stored in DataVal.bigintvalue----   Like StringStore, AsnTool incorporates it as a primitive. The definition would be:--   BigInt ::= [APPLICATION 2] IMPLICIT INTEGER---- Date is used to replace the (overly complex) UTCTtime, GeneralizedTime--  of ASN.1--  It stores only a date--Date ::= CHOICE {    str VisibleString ,        -- for those unparsed dates    std Date-std }             -- use this if you canDate-std ::= SEQUENCE {        -- NOTE: this is NOT a unix tm struct    year INTEGER ,             -- full year (including 1900)    month INTEGER OPTIONAL ,   -- month (1-12)    day INTEGER OPTIONAL ,     -- day of month (1-31)    season VisibleString OPTIONAL ,  -- for "spring", "may-june", etc    hour INTEGER OPTIONAL ,    -- hour of day (0-23)    minute INTEGER OPTIONAL ,  -- minute of hour (0-59)    second INTEGER OPTIONAL }  -- second of minute (0-59)-- Dbtag is generalized for tagging-- eg. { "Social Security", str "023-79-8841" }-- or  { "member", id 8882224 }Dbtag ::= SEQUENCE {    db VisibleString ,          -- name of database or system    tag Object-id }         -- appropriate tag-- Object-id can tag or name anything--Object-id ::= CHOICE {    id INTEGER ,    str VisibleString }-- Person-id is to define a std element for people--Person-id ::= CHOICE {    dbtag Dbtag ,               -- any defined database tag    name Name-std ,             -- structured name    ml VisibleString ,          -- MEDLINE name (semi-structured)                                --    eg. "Jones RM"    str VisibleString,          -- unstructured name    consortium VisibleString }  -- consortium nameName-std ::= SEQUENCE { -- Structured names    last VisibleString ,    first VisibleString OPTIONAL ,    middle VisibleString OPTIONAL ,    full VisibleString OPTIONAL ,    -- full name eg. "J. John Smith, Esq"    initials VisibleString OPTIONAL,  -- first + middle initials    suffix VisibleString OPTIONAL ,   -- Jr, Sr, III    title VisibleString OPTIONAL }    -- Dr., Sister, etc--**** Int-fuzz **********************************************--*--*   uncertainties in integer valuesInt-fuzz ::= CHOICE {    p-m INTEGER ,                    -- plus or minus fixed amount    range SEQUENCE {                 -- max to min        max INTEGER ,        min INTEGER } ,    pct INTEGER ,                    -- % plus or minus (x10) 0-1000    lim ENUMERATED {                 -- some limit value        unk (0) ,                    -- unknown        gt (1) ,                     -- greater than        lt (2) ,                     -- less than        tr (3) ,                     -- space to right of position        tl (4) ,                     -- space to left of position        circle (5) ,                 -- artificial break at origin of circle        other (255) } ,              -- something else    alt SET OF INTEGER }             -- set of alternatives for the integer--**** User-object **********************************************--*--*   a general object for a user defined structured data item--*    used by Seq-feat and Seq-descrUser-object ::= SEQUENCE {    class VisibleString OPTIONAL ,   -- endeavor which designed this object    type Object-id ,                 -- type of object within class    data SEQUENCE OF User-field }    -- the object itselfUser-field ::= SEQUENCE {    label Object-id ,                -- field label    num INTEGER OPTIONAL ,           -- required for strs, ints, reals, oss    data CHOICE {                    -- field contents        str VisibleString ,        int INTEGER ,        real REAL ,        bool BOOLEAN ,        os OCTET STRING ,        object User-object ,         -- for using other definitions        strs SEQUENCE OF VisibleString ,        ints SEQUENCE OF INTEGER ,        reals SEQUENCE OF REAL ,        oss SEQUENCE OF OCTET STRING ,        fields SEQUENCE OF User-field ,        objects SEQUENCE OF User-object } }END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -