📄 all.asn
字号:
--$Revision: 1000.1 $--**********************************************************************---- 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 completness-- -- StringStore ::= [APPLICATION 1] IMPLICIT OCTET STRING---- BigInt is really an INTEGER. It is used to warn the recieving 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 nameName-std ::= SEQUENCE { -- Structured names last VisibleString , first VisibleString OPTIONAL , middle VisibleString OPTIONAL , full VisibleString OPTIONAL , -- full name eg. "J. John Poop, 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--$Revision: 1000.1 $--****************************************************************---- NCBI Bibliographic data elements-- by James Ostell, 1990---- Taken from the American National Standard for-- Bibliographic References-- ANSI Z39.29-1977-- Version 3.0 - June 1994-- PubMedId added in 1996-- ArticleIds and eprint elements added in 1999----****************************************************************NCBI-Biblio DEFINITIONS ::=BEGINEXPORTS Cit-art, Cit-jour, Cit-book, Cit-pat, Cit-let, Id-pat, Cit-gen, Cit-proc, Cit-sub, Title, Author, PubMedId;IMPORTS Person-id, Date, Dbtag FROM NCBI-General; -- Article IdsArticleId ::= CHOICE { -- can be many ids for an article pubmed PubMedId , -- see types below medline MedlineUID , doi DOI , pii PII , pmcid PmcID , pmcpid PmcPid , pmpid PmPid , other Dbtag } -- generic catch all PubMedId ::= INTEGER -- Id from the PubMed database at NCBIMedlineUID ::= INTEGER -- Id from MEDLINEDOI ::= VisibleString -- Document Object IdentifierPII ::= VisibleString -- Controlled Publisher IdentifierPmcID ::= INTEGER -- PubMed Central IdPmcPid ::= VisibleString -- Publisher Id supplied to PubMed CentralPmPid ::= VisibleString -- Publisher Id supplied to PubMedArticleIdSet ::= SET OF ArticleId -- Status DatesPubStatus ::= INTEGER { -- points of publication received (1) , -- date manuscript received for review accepted (2) , -- accepted for publication epublish (3) , -- published electronically by publisher ppublish (4) , -- published in print by publisher revised (5) , -- article revised by publisher/author pmc (6) , -- article first appeared in PubMed Central pmcr (7) , -- article revision in PubMed Central pubmed (8) , -- article citation first appeared in PubMed pubmedr (9) , -- article citation revision in PubMed aheadofprint (10), -- epublish, but will be followed by print premedline (11), -- date into PreMedline status medline (12), -- date made a MEDLINE record other (255) }PubStatusDate ::= SEQUENCE { -- done as a structure so fields can be added pubstatus PubStatus , date Date } -- time may be added laterPubStatusDateSet ::= SET OF PubStatusDate -- Citation TypesCit-art ::= SEQUENCE { -- article in journal or book title Title OPTIONAL , -- title of paper (ANSI requires) authors Auth-list OPTIONAL , -- authors (ANSI requires) from CHOICE { -- journal or book journal Cit-jour , book Cit-book , proc Cit-proc } , ids ArticleIdSet OPTIONAL } -- lots of idsCit-jour ::= SEQUENCE { -- Journal citation title Title , -- title of journal imp Imprint }Cit-book ::= SEQUENCE { -- Book citation title Title , -- Title of book coll Title OPTIONAL , -- part of a collection authors Auth-list, -- authors imp Imprint }Cit-proc ::= SEQUENCE { -- Meeting proceedings book Cit-book , -- citation to meeting meet Meeting } -- time and location of meeting -- Patent number and date-issue were made optional in 1997 to -- support patent applications being issued from the USPTO -- Semantically a Cit-pat must have either a patent number or -- an application number (or both) to be validCit-pat ::= SEQUENCE { -- patent citation title VisibleString , authors Auth-list, -- author/inventor country VisibleString , -- Patent Document Country doc-type VisibleString , -- Patent Document Type number VisibleString OPTIONAL, -- Patent Document Number date-issue Date OPTIONAL, -- Patent Issue/Pub Date class SEQUENCE OF VisibleString OPTIONAL , -- Patent Doc Class Code app-number VisibleString OPTIONAL , -- Patent Doc Appl Number app-date Date OPTIONAL , -- Patent Appl File Date applicants Auth-list OPTIONAL , -- Applicants assignees Auth-list OPTIONAL , -- Assignees priority SEQUENCE OF Patent-priority OPTIONAL , -- Priorities abstract VisibleString OPTIONAL } -- abstract of patentPatent-priority ::= SEQUENCE { country VisibleString , -- Patent country code number VisibleString , -- number assigned in that country date Date } -- date of applicationId-pat ::= SEQUENCE { -- just to identify a patent country VisibleString , -- Patent Document Country id CHOICE { number VisibleString , -- Patent Document Number app-number VisibleString } , -- Patent Doc Appl Number doc-type VisibleString OPTIONAL } -- Patent Doc TypeCit-let ::= SEQUENCE { -- letter, thesis, or manuscript cit Cit-book , -- same fields as a book man-id VisibleString OPTIONAL , -- Manuscript identifier type ENUMERATED { manuscript (1) , letter (2) , thesis (3) } OPTIONAL } -- NOTE: this is just to cite a -- direct data submission, see NCBI-Submit -- for the form of a sequence submissionCit-sub ::= SEQUENCE { -- citation for a direct submission authors Auth-list , -- not necessarily authors of the paper imp Imprint OPTIONAL , -- this only used to get date.. will go medium ENUMERATED { -- medium of submission paper (1) , tape (2) , floppy (3) , email (4) , other (255) } OPTIONAL , date Date OPTIONAL , -- replaces imp, will become required descr VisibleString OPTIONAL } -- description of changes for public view Cit-gen ::= SEQUENCE { -- NOT from ANSI, this is a catchall cit VisibleString OPTIONAL , -- anything, not parsable authors Auth-list OPTIONAL , muid INTEGER OPTIONAL , -- medline uid journal Title OPTIONAL , volume VisibleString OPTIONAL , issue VisibleString OPTIONAL , pages VisibleString OPTIONAL , date Date OPTIONAL , serial-number INTEGER OPTIONAL , -- for GenBank style references title VisibleString OPTIONAL , -- eg. cit="unpublished",title="title" pmid PubMedId OPTIONAL } -- PubMed Id -- Authorship GroupAuth-list ::= SEQUENCE { names CHOICE { std SEQUENCE OF Author , -- full citations ml SEQUENCE OF VisibleString , -- MEDLINE, semi-structured str SEQUENCE OF VisibleString } , -- free for all affil Affil OPTIONAL } -- author affiliationAuthor ::= SEQUENCE { name Person-id , -- Author, Primary or Secondary level ENUMERATED { primary (1), secondary (2) } OPTIONAL , role ENUMERATED { -- Author Role Indicator compiler (1), editor (2), patent-assignee (3), translator (4) } OPTIONAL , affil Affil OPTIONAL , is-corr BOOLEAN OPTIONAL } -- TRUE if corressponding authorAffil ::= CHOICE { str VisibleString , -- unparsed string std SEQUENCE { -- std representation affil VisibleString OPTIONAL , -- Author Affiliation, Name div VisibleString OPTIONAL , -- Author Affiliation, Division city VisibleString OPTIONAL , -- Author Affiliation, City sub VisibleString OPTIONAL , -- Author Affiliation, County Sub country VisibleString OPTIONAL , -- Author Affiliation, Country street VisibleString OPTIONAL , -- street address, not ANSI email VisibleString OPTIONAL , fax VisibleString OPTIONAL , phone VisibleString OPTIONAL , postal-code VisibleString OPTIONAL }} -- Title Group -- Valid for = A = Analytic (Cit-art) -- J = Journals (Cit-jour) -- B = Book (Cit-book) -- Valid for:Title ::= SET OF CHOICE { name VisibleString , -- Title, Anal,Coll,Mono AJB tsub VisibleString , -- Title, Subordinate A B trans VisibleString , -- Title, Translated AJB jta VisibleString , -- Title, Abbreviated J iso-jta VisibleString , -- specifically ISO jta J ml-jta VisibleString , -- specifically MEDLINE jta J coden VisibleString , -- a coden J issn VisibleString , -- ISSN J abr VisibleString , -- Title, Abbreviated B isbn VisibleString } -- ISBN BImprint ::= SEQUENCE { -- Imprint group date Date , -- date of publication volume VisibleString OPTIONAL , issue VisibleString OPTIONAL , pages VisibleString OPTIONAL , section VisibleString OPTIONAL , pub Affil OPTIONAL, -- publisher, required for book cprt Date OPTIONAL, -- copyright date, " " " part-sup VisibleString OPTIONAL , -- part/sup of volume language VisibleString DEFAULT "ENG" , -- put here for simplicity prepub ENUMERATED { -- for prepublication citaions submitted (1) , -- submitted, not accepted
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -