diff options
author | Aaron M. Ucko <ucko@debian.org> | 2008-03-14 21:05:36 +0000 |
---|---|---|
committer | Aaron M. Ucko <ucko@debian.org> | 2008-03-14 21:05:36 +0000 |
commit | 57c46350c843512260030ae52710924dcb340f0b (patch) | |
tree | 8381b9111d6284abc1d779ad4dbcb37b2a276e4a /network | |
parent | 7647e504b18f91edcedba85e7a6ef772b2a0f48b (diff) |
[svn-upgrade] Integrating new upstream version, ncbi-tools6 (6.1.20080302)
Diffstat (limited to 'network')
-rw-r--r-- | network/id2arch/id2.asn | 5 | ||||
-rw-r--r-- | network/id2arch/id2.h | 87 | ||||
-rw-r--r-- | network/medarch/client/medutil.c | 69 | ||||
-rw-r--r-- | network/medarch/client/medutil.h | 9 | ||||
-rw-r--r-- | network/taxon1/taxon2/txcdproc.c | 7 |
5 files changed, 128 insertions, 49 deletions
diff --git a/network/id2arch/id2.asn b/network/id2arch/id2.asn index 00db0250..f2bf2950 100644 --- a/network/id2arch/id2.asn +++ b/network/id2arch/id2.asn @@ -1,4 +1,4 @@ ---$Revision: 1.20 $ +--$Revision: 1.21 $ --******************************************************************** -- -- Network Id server network access @@ -69,7 +69,8 @@ ID2-Request-Get-Seq-id ::= SEQUENCE { gi (1), -- gi is preferred text (2), -- text Seq-id (accession etc) is preferred general (4), -- general Seq-id is preferred - all (127) -- return all qualified Seq-ids of the sequence + all (127), -- return all qualified Seq-ids of the sequence + label (128) -- return a sequence string label as general id } DEFAULT any } diff --git a/network/id2arch/id2.h b/network/id2arch/id2.h index a76dd7ba..2092afb5 100644 --- a/network/id2arch/id2.h +++ b/network/id2arch/id2.h @@ -9,8 +9,8 @@ #include <asn.h> #endif -static char * asnfilename = "id2.h19"; -static AsnValxNode avnx[62] = { +static char * asnfilename = "id2.h20"; +static AsnValxNode avnx[63] = { {20,"set-value" ,1,0.0,&avnx[1] } , {20,"get-value" ,2,0.0,&avnx[2] } , {20,"force-value" ,3,0.0,&avnx[3] } , @@ -29,49 +29,50 @@ static AsnValxNode avnx[62] = { {20,"mgc" ,16,0.0,&avnx[16] } , {20,"hprd" ,32,0.0,&avnx[17] } , {20,"sts" ,64,0.0,&avnx[18] } , - {20,"trna" ,128,0.0,NULL } , + {20,"trna" ,128,0.0,&avnx[19] } , + {20,"exon" ,512,0.0,NULL } , {3,NULL,0,0.0,NULL } , {3,NULL,1,0.0,NULL } , {3,NULL,1,0.0,NULL } , {3,NULL,0,0.0,NULL } , {3,NULL,0,0.0,NULL } , {3,NULL,0,0.0,NULL } , - {20,"none" ,0,0.0,&avnx[26] } , - {20,"seq-map" ,1,0.0,&avnx[27] } , + {20,"none" ,0,0.0,&avnx[27] } , + {20,"seq-map" ,1,0.0,&avnx[28] } , {20,"seq-data" ,2,0.0,NULL } , {3,NULL,0,0.0,NULL } , - {20,"warning" ,1,0.0,&avnx[30] } , - {20,"failed-command" ,2,0.0,&avnx[31] } , - {20,"failed-connection" ,3,0.0,&avnx[32] } , - {20,"failed-server" ,4,0.0,&avnx[33] } , - {20,"no-data" ,5,0.0,&avnx[34] } , - {20,"restricted-data" ,6,0.0,&avnx[35] } , - {20,"unsupported-command" ,7,0.0,&avnx[36] } , + {20,"warning" ,1,0.0,&avnx[31] } , + {20,"failed-command" ,2,0.0,&avnx[32] } , + {20,"failed-connection" ,3,0.0,&avnx[33] } , + {20,"failed-server" ,4,0.0,&avnx[34] } , + {20,"no-data" ,5,0.0,&avnx[35] } , + {20,"restricted-data" ,6,0.0,&avnx[36] } , + {20,"unsupported-command" ,7,0.0,&avnx[37] } , {20,"invalid-arguments" ,8,0.0,NULL } , {3,NULL,0,0.0,NULL } , - {20,"live" ,0,0.0,&avnx[39] } , - {20,"suppressed-temp" ,1,0.0,&avnx[40] } , - {20,"suppressed" ,2,0.0,&avnx[41] } , - {20,"dead" ,3,0.0,&avnx[42] } , - {20,"protected" ,4,0.0,&avnx[43] } , + {20,"live" ,0,0.0,&avnx[40] } , + {20,"suppressed-temp" ,1,0.0,&avnx[41] } , + {20,"suppressed" ,2,0.0,&avnx[42] } , + {20,"dead" ,3,0.0,&avnx[43] } , + {20,"protected" ,4,0.0,&avnx[44] } , {20,"withdrawn" ,5,0.0,NULL } , - {20,"seq-entry" ,0,0.0,&avnx[45] } , - {20,"seq-annot" ,1,0.0,&avnx[46] } , - {20,"id2s-split-info" ,2,0.0,&avnx[47] } , + {20,"seq-entry" ,0,0.0,&avnx[46] } , + {20,"seq-annot" ,1,0.0,&avnx[47] } , + {20,"id2s-split-info" ,2,0.0,&avnx[48] } , {20,"id2s-chunk" ,3,0.0,NULL } , {3,NULL,0,0.0,NULL } , - {20,"asn-binary" ,0,0.0,&avnx[50] } , - {20,"asn-text" ,1,0.0,&avnx[51] } , + {20,"asn-binary" ,0,0.0,&avnx[51] } , + {20,"asn-text" ,1,0.0,&avnx[52] } , {20,"xml" ,2,0.0,NULL } , {3,NULL,0,0.0,NULL } , - {20,"none" ,0,0.0,&avnx[54] } , - {20,"gzip" ,1,0.0,&avnx[55] } , - {20,"nlmzip" ,2,0.0,&avnx[56] } , + {20,"none" ,0,0.0,&avnx[55] } , + {20,"gzip" ,1,0.0,&avnx[56] } , + {20,"nlmzip" ,2,0.0,&avnx[57] } , {20,"bzip2" ,3,0.0,NULL } , {3,NULL,0,0.0,NULL } , {3,NULL,0,0.0,NULL } , - {20,"reply" ,0,0.0,&avnx[60] } , - {20,"last-octet-string" ,1,0.0,&avnx[61] } , + {20,"reply" ,0,0.0,&avnx[61] } , + {20,"last-octet-string" ,1,0.0,&avnx[62] } , {20,"nothing" ,2,0.0,NULL } }; static AsnType atx[148] = { @@ -124,7 +125,7 @@ static AsnType atx[148] = { {0, "blob-id" ,128,0,0,0,0,0,0,0,NULL,&atx[47],NULL,0,&atx[52]} , {415, "ID2-Blob-Id" ,1,0,0,0,0,0,0,0,NULL,&atx[20],&atx[48],0,&atx[58]} , {0, "sat" ,128,0,0,0,0,0,0,0,NULL,&atx[8],NULL,0,&atx[49]} , - {0, "sub-sat" ,128,1,0,0,1,0,0,0,&avnx[19],&atx[8],&avnx[11],0,&atx[50]} , + {0, "sub-sat" ,128,1,0,0,1,0,0,0,&avnx[20],&atx[8],&avnx[11],0,&atx[50]} , {0, "sat-key" ,128,2,0,0,0,0,0,0,NULL,&atx[8],NULL,0,&atx[51]} , {0, "version" ,128,3,0,1,0,0,0,0,NULL,&atx[8],NULL,0,NULL} , {0, "resolve" ,128,1,0,0,0,0,0,0,NULL,&atx[20],&atx[53],0,NULL} , @@ -135,12 +136,12 @@ static AsnType atx[148] = { {0, "get-data" ,128,2,0,1,0,0,0,0,NULL,&atx[58],NULL,0,NULL} , {416, "ID2-Get-Blob-Details" ,1,0,0,0,0,0,0,0,NULL,&atx[20],&atx[59],0,&atx[77]} , {0, "location" ,128,0,0,1,0,0,0,0,NULL,&atx[1],NULL,0,&atx[60]} , - {0, "seq-class-level" ,128,1,0,0,1,0,0,0,&avnx[20],&atx[8],NULL,0,&atx[61]} , - {0, "descr-level" ,128,2,0,0,1,0,0,0,&avnx[21],&atx[8],NULL,0,&atx[62]} , - {0, "descr-type-mask" ,128,3,0,0,1,0,0,0,&avnx[22],&atx[8],NULL,0,&atx[63]} , - {0, "annot-type-mask" ,128,4,0,0,1,0,0,0,&avnx[23],&atx[8],NULL,0,&atx[64]} , - {0, "feat-type-mask" ,128,5,0,0,1,0,0,0,&avnx[24],&atx[8],NULL,0,&atx[65]} , - {0, "sequence-level" ,128,6,0,0,1,0,0,0,&avnx[28],&atx[19],&avnx[25],0,NULL} , + {0, "seq-class-level" ,128,1,0,0,1,0,0,0,&avnx[21],&atx[8],NULL,0,&atx[61]} , + {0, "descr-level" ,128,2,0,0,1,0,0,0,&avnx[22],&atx[8],NULL,0,&atx[62]} , + {0, "descr-type-mask" ,128,3,0,0,1,0,0,0,&avnx[23],&atx[8],NULL,0,&atx[63]} , + {0, "annot-type-mask" ,128,4,0,0,1,0,0,0,&avnx[24],&atx[8],NULL,0,&atx[64]} , + {0, "feat-type-mask" ,128,5,0,0,1,0,0,0,&avnx[25],&atx[8],NULL,0,&atx[65]} , + {0, "sequence-level" ,128,6,0,0,1,0,0,0,&avnx[29],&atx[19],&avnx[26],0,NULL} , {0, "reget-blob" ,128,5,0,0,0,0,0,0,NULL,&atx[67],NULL,0,&atx[71]} , {412, "ID2-Request-ReGet-Blob" ,1,0,0,0,0,0,0,0,NULL,&atx[20],&atx[68],0,&atx[72]} , {0, "blob-id" ,128,0,0,0,0,0,0,0,NULL,&atx[47],NULL,0,&atx[69]} , @@ -158,7 +159,7 @@ static AsnType atx[148] = { {0, "error" ,128,2,0,1,0,0,0,0,NULL,&atx[17],&atx[81],0,&atx[86]} , {0, NULL,1,-1,0,0,0,0,0,0,NULL,&atx[82],NULL,0,NULL} , {418, "ID2-Error" ,1,0,0,0,0,0,0,0,NULL,&atx[20],&atx[83],0,&atx[91]} , - {0, "severity" ,128,0,0,0,0,0,0,0,NULL,&atx[19],&avnx[29],0,&atx[84]} , + {0, "severity" ,128,0,0,0,0,0,0,0,NULL,&atx[19],&avnx[30],0,&atx[84]} , {0, "retry-delay" ,128,1,0,1,0,0,0,0,NULL,&atx[8],NULL,0,&atx[85]} , {0, "message" ,128,2,0,1,0,0,0,0,NULL,&atx[14],NULL,0,NULL} , {0, "end-of-reply" ,128,3,0,1,0,0,0,0,NULL,&atx[23],NULL,0,&atx[87]} , @@ -179,27 +180,27 @@ static AsnType atx[148] = { {421, "ID2-Reply-Get-Blob-Id" ,1,0,0,0,0,0,0,0,NULL,&atx[20],&atx[102],0,&atx[111]} , {0, "seq-id" ,128,0,0,0,0,0,0,0,NULL,&atx[0],NULL,0,&atx[103]} , {0, "blob-id" ,128,1,0,1,0,0,0,0,NULL,&atx[47],NULL,0,&atx[104]} , - {0, "split-version" ,128,2,0,0,1,0,0,0,&avnx[37],&atx[8],NULL,0,&atx[105]} , + {0, "split-version" ,128,2,0,0,1,0,0,0,&avnx[38],&atx[8],NULL,0,&atx[105]} , {0, "annot-info" ,128,3,0,1,0,0,0,0,NULL,&atx[17],&atx[106],0,&atx[107]} , {0, NULL,1,-1,0,0,0,0,0,0,NULL,&atx[3],NULL,0,NULL} , {0, "end-of-reply" ,128,4,0,1,0,0,0,0,NULL,&atx[23],NULL,0,&atx[108]} , {0, "blob-state" ,128,5,0,1,0,0,0,0,NULL,&atx[109],NULL,0,NULL} , - {427, "ID2-Blob-State" ,1,0,0,0,0,0,0,0,NULL,&atx[19],&avnx[38],0,&atx[114]} , + {427, "ID2-Blob-State" ,1,0,0,0,0,0,0,0,NULL,&atx[19],&avnx[39],0,&atx[114]} , {0, "get-blob-seq-ids" ,128,5,0,0,0,0,0,0,NULL,&atx[111],NULL,0,&atx[121]} , {422, "ID2-Reply-Get-Blob-Seq-ids" ,1,0,0,0,0,0,0,0,NULL,&atx[20],&atx[112],0,&atx[122]} , {0, "blob-id" ,128,0,0,0,0,0,0,0,NULL,&atx[47],NULL,0,&atx[113]} , {0, "ids" ,128,1,0,1,0,0,0,0,NULL,&atx[114],NULL,0,NULL} , {428, "ID2-Reply-Data" ,1,0,0,0,0,0,0,0,NULL,&atx[20],&atx[115],0,&atx[143]} , - {0, "data-type" ,128,0,0,0,1,0,0,0,&avnx[48],&atx[8],&avnx[44],0,&atx[116]} , - {0, "data-format" ,128,1,0,0,1,0,0,0,&avnx[52],&atx[8],&avnx[49],0,&atx[117]} , - {0, "data-compression" ,128,2,0,0,1,0,0,0,&avnx[57],&atx[8],&avnx[53],0,&atx[118]} , + {0, "data-type" ,128,0,0,0,1,0,0,0,&avnx[49],&atx[8],&avnx[45],0,&atx[116]} , + {0, "data-format" ,128,1,0,0,1,0,0,0,&avnx[53],&atx[8],&avnx[50],0,&atx[117]} , + {0, "data-compression" ,128,2,0,0,1,0,0,0,&avnx[58],&atx[8],&avnx[54],0,&atx[118]} , {0, "data" ,128,3,0,0,0,0,0,0,NULL,&atx[17],&atx[119],0,NULL} , {0, NULL,1,-1,0,0,0,0,0,0,NULL,&atx[120],NULL,0,NULL} , {304, "OCTET STRING" ,0,4,0,0,0,0,0,0,NULL,NULL,NULL,0,NULL} , {0, "get-blob" ,128,6,0,0,0,0,0,0,NULL,&atx[122],NULL,0,&atx[126]} , {423, "ID2-Reply-Get-Blob" ,1,0,0,0,0,0,0,0,NULL,&atx[20],&atx[123],0,&atx[127]} , {0, "blob-id" ,128,0,0,0,0,0,0,0,NULL,&atx[47],NULL,0,&atx[124]} , - {0, "split-version" ,128,1,0,0,1,0,0,0,&avnx[58],&atx[8],NULL,0,&atx[125]} , + {0, "split-version" ,128,1,0,0,1,0,0,0,&avnx[59],&atx[8],NULL,0,&atx[125]} , {0, "data" ,128,2,0,1,0,0,0,0,NULL,&atx[114],NULL,0,NULL} , {0, "reget-blob" ,128,7,0,0,0,0,0,0,NULL,&atx[127],NULL,0,&atx[132]} , {424, "ID2-Reply-ReGet-Blob" ,1,0,0,0,0,0,0,0,NULL,&atx[20],&atx[128],0,&atx[133]} , @@ -217,7 +218,7 @@ static AsnType atx[148] = { {0, "blob-id" ,128,0,0,0,0,0,0,0,NULL,&atx[47],NULL,0,&atx[140]} , {0, "chunk-id" ,128,1,0,0,0,0,0,0,NULL,&atx[2],NULL,0,&atx[141]} , {0, "data" ,128,2,0,1,0,0,0,0,NULL,&atx[114],NULL,0,NULL} , - {0, "discard" ,128,5,0,1,0,0,0,0,NULL,&atx[19],&avnx[59],0,NULL} , + {0, "discard" ,128,5,0,1,0,0,0,0,NULL,&atx[19],&avnx[60],0,NULL} , {429, "ID2-Blob-Seq-ids" ,1,0,0,0,0,0,0,0,NULL,&atx[17],&atx[144],0,&atx[145]} , {0, NULL,1,-1,0,0,0,0,0,0,NULL,&atx[145],NULL,0,NULL} , {430, "ID2-Blob-Seq-id" ,1,0,0,0,0,0,0,0,NULL,&atx[20],&atx[146],0,&atx[12]} , @@ -225,7 +226,7 @@ static AsnType atx[148] = { {0, "replaced" ,128,1,0,1,0,0,0,0,NULL,&atx[23],NULL,0,NULL} }; static AsnModule ampx[1] = { - { "NCBI-ID2Access" , "id2.h19",&atx[0],NULL,NULL,0,0} }; + { "NCBI-ID2Access" , "id2.h20",&atx[0],NULL,NULL,0,0} }; static AsnValxNodePtr avn = avnx; static AsnTypePtr at = atx; diff --git a/network/medarch/client/medutil.c b/network/medarch/client/medutil.c index 0b81a201..ff59c9fd 100644 --- a/network/medarch/client/medutil.c +++ b/network/medarch/client/medutil.c @@ -28,7 +28,7 @@ * * Version Creation Date: 8/31/93 * -* $Revision: 6.21 $ +* $Revision: 6.23 $ * * File Description: Medline Utilities for MedArch * Assumes user calls MedArchInit and Fini @@ -44,6 +44,13 @@ * * RCS Modification History: * $Log: medutil.c,v $ +* Revision 6.23 2007/12/04 23:29:22 bazhin +* MergePubIds() renamed to MergeNonPubmedPubIds(). Merging is +* limited to types DOI and OTHER only. +* +* Revision 6.22 2007/12/04 20:07:02 bazhin +* Added ability to merge input article ids with ones from med server. +* * Revision 6.21 2005/02/15 17:45:32 bazhin * Modified MedlineToISO() function: now in addition to Cit-art.Auth-list.ml * slot it also looks at Cit-art.Auth-list.Author.Person-id.ml one @@ -587,6 +594,59 @@ void FindPub(SeqEntryPtr sep, Pointer data, Int4 index, Int2 indent) } } +/**********************************************************/ +static void MergeNonPubmedPubIds(CitArtPtr new, CitArtPtr old) +{ + ValNodePtr vnpnew; + ValNodePtr vnpold; + ValNodePtr vnpoldprev; + ValNodePtr vnpoldnext; + DbtagPtr dpnew; + DbtagPtr dpold; + + if(old->ids == NULL) + return; + + vnpoldprev = NULL; + for(vnpold = old->ids; vnpold != NULL; vnpold = vnpoldnext) + { + vnpoldnext = vnpold->next; + + if(vnpold->choice != ARTICLEID_DOI && + vnpold->choice != ARTICLEID_OTHER) + { + vnpoldprev = vnpold; + continue; + } + + for(vnpnew = new->ids; vnpnew != NULL; vnpnew = vnpnew->next) + { + if(vnpnew->choice != vnpold->choice) + continue; + + if(vnpnew->choice != ARTICLEID_OTHER) + break; + dpnew = vnpnew->data.ptrvalue; + dpold = vnpold->data.ptrvalue; + if(StringCmp(dpold->db, dpnew->db) == 0) + break; + } + + if(vnpnew != NULL) + { + vnpoldprev = vnpold; + continue; + } + + vnpold->next = new->ids; + new->ids = vnpold; + if(vnpoldprev == NULL) + old->ids = vnpoldnext; + else + vnpoldprev->next = vnpoldnext; + } +} + /***************************************************************************** * * FixPub(pub, fpop) @@ -637,6 +697,9 @@ ValNodePtr FixPub(ValNodePtr pub, FindPubOptionPtr fpop) if(ten_authors(pub->data.ptrvalue, tmp->data.ptrvalue)) { fpop->fetches_succeeded++; + if(fpop->merge_ids != FALSE) + MergeNonPubmedPubIds(tmp->data.ptrvalue, + pub->data.ptrvalue); PubFree(pub); pub = ValNodeNew(tmp); pub->choice = PUB_PMid; @@ -996,6 +1059,10 @@ ValNodePtr FixPubEquiv(ValNodePtr pube, FindPubOptionPtr fpop) pube = FixPubEquivAppend(pube, tmp2, tmp); tmp->next = new; + if(fpop->merge_ids != FALSE) + MergeNonPubmedPubIds(new->data.ptrvalue, + citartptr->data.ptrvalue); + PubFree(citartptr); citartptr = new; } diff --git a/network/medarch/client/medutil.h b/network/medarch/client/medutil.h index daf20b22..88a2d90a 100644 --- a/network/medarch/client/medutil.h +++ b/network/medarch/client/medutil.h @@ -29,7 +29,7 @@ * * Version Creation Date: 8/31/93 * -* $Revision: 6.2 $ +* $Revision: 6.3 $ * * File Description: * File Description: Medline Utilities for MedArch * Assumes user calls MedArchInit and Fini @@ -45,6 +45,10 @@ * * RCS Modification History: * $Log: medutil.h,v $ +* Revision 6.3 2007/12/04 20:06:35 bazhin +* Added Boolean variable "merge_ids" to merge input article +* ids with ones from med server. +* * Revision 6.2 2003/03/25 19:14:50 bazhin * Function "ten_authors()" became public (from static). * @@ -93,6 +97,9 @@ typedef struct findpubstr { lookups_succeeded, /* citartmatch worked */ fetches_attempted, /* FetchPubs tried */ fetches_succeeded; /* FetchPubs that worked */ + Boolean merge_ids; /* If TRUE then merges Cit-art.ids from + input Cit-sub and one gotten from + med server. */ } FindPubOption, PNTR FindPubOptionPtr; /* SeqEntryExplore callback to fix all Pubs */ diff --git a/network/taxon1/taxon2/txcdproc.c b/network/taxon1/taxon2/txcdproc.c index b7a11b97..98df8b42 100644 --- a/network/taxon1/taxon2/txcdproc.c +++ b/network/taxon1/taxon2/txcdproc.c @@ -29,7 +29,7 @@ * * Version Creation Date: 07/15/97 * -* $Revision: 1.17 $ +* $Revision: 1.18 $ * * File Description: * API for Taxonomy service @@ -44,6 +44,9 @@ * * RCS Modification History: * $Log: txcdproc.c,v $ +* Revision 1.18 2007/09/14 18:28:47 soussov +* fixes bug in init function (it now calls NetFini instead of TaxArchFini +* * Revision 1.17 2006/07/13 17:14:49 bollin * use Uint4 instead of Uint2 for itemID values * @@ -199,7 +202,7 @@ static Boolean TaxServInit(void) if (svcp == NULL) { ErrPostEx(SEV_ERROR, 0, 0, "NI_ServiceGet [%s] (%s)", ni_errlist[ni_errno], ni_errtext); - TaxServFini(); + NetFini(); return FALSE; } |