1 /* tomedlin.h 2 * =========================================================================== 3 * 4 * PUBLIC DOMAIN NOTICE 5 * National Center for Biotechnology Information 6 * 7 * This software/database is a "United States Government Work" under the 8 * terms of the United States Copyright Act. It was written as part of 9 * the author's official duties as a United States Government employee and 10 * thus cannot be copyrighted. This software/database is freely available 11 * to the public for use. The National Library of Medicine and the U.S. 12 * Government have not placed any restriction on its use or reproduction. 13 * 14 * Although all reasonable efforts have been taken to ensure the accuracy 15 * and reliability of the software and data, the NLM and the U.S. 16 * Government do not and cannot warrant the performance or results that 17 * may be obtained by using this software or data. The NLM and the U.S. 18 * Government disclaim all warranties, express or implied, including 19 * warranties of performance, merchantability or fitness for any particular 20 * purpose. 21 * 22 * Please cite the author in any work or product based on this material. 23 * 24 * =========================================================================== 25 * 26 * File Name: tomedlin.h 27 * 28 * Author: Jonathan Kans 29 * 30 * Version Creation Date: 10/15/91 31 * 32 * $Revision: 6.2 $ 33 * 34 * File Description: conversion to medlars format 35 * 36 * Modifications: 37 * -------------------------------------------------------------------------- 38 * Date Name Description of modification 39 * ------- ---------- ----------------------------------------------------- 40 * 41 * 42 * $Log: tomedlin.h,v $ 43 * Revision 6.2 2003/09/28 20:22:47 kans 44 * added PubmedEntryToXXXFile functions 45 * 46 * Revision 6.1 1997/12/22 18:51:23 grisha 47 * update unit-record number for PmId to 969 48 * 49 * Revision 6.0 1997/08/25 18:07:58 madden 50 * Revision changed to 6.0 51 * 52 * Revision 5.4 1997/06/19 18:39:30 vakatov 53 * [WIN32,MSVC++] Adopted for the "NCBIOBJ.LIB" DLL'ization 54 * 55 * Revision 5.3 1997/04/10 20:29:25 levitsky 56 * MEDLINE fields codes added 57 * 58 * Revision 5.2 1997/02/20 21:25:17 kans 59 * added MedlineEntryToAbsFile and MedlarsEntryToAbsFile 60 * 61 * Revision 5.1 1997/02/12 21:30:02 grisha 62 * add code to support MEDLARS report generation 63 * for MedlarsEntry 64 * 65 * Revision 5.0 1996/05/28 13:23:23 ostell 66 * Set to revision 5.0 67 * 68 * Revision 4.0 1995/07/26 13:49:01 ostell 69 * force revision to 4.0 70 * 71 * Revision 2.2 1995/05/15 21:46:05 ostell 72 * added Log line 73 * 74 * 75 * 76 * ========================================================================== 77 */ 78 79 #ifndef _NCBI_Tomedlin_ 80 #define _NCBI_Tomedlin_ 81 82 #include <objmedli.h> 83 #include <objmdrs.h> 84 #include <objpubme.h> 85 86 #define MEDLINE_BADCODE 0 /* BAD */ 87 #define MEDLINE_EOF -1 /* END OF ENTRY */ 88 #define MEDLINE_DA 100 /* DATE OF ENTRY */ 89 #define MEDLINE_RO 101 /* RECORD ORIGINATOR */ 90 #define MEDLINE_LR 102 /* LAST REVISION DATE */ 91 #define MEDLINE_CU 103 /* CLASSUP DATE */ 92 #define MEDLINE_RN 261 /* CAS REGISTRY NUMBER */ 93 #define MEDLINE_IS 301 /* INTL STAND SER NO */ 94 #define MEDLINE_TA 305 /* TITLE ABBREVIATION */ 95 #define MEDLINE_LA 306 /* LANGUAGE */ 96 #define MEDLINE_CY 307 /* COUNTRY NAME */ 97 #define MEDLINE_ZN 308 /* MESH Z TREE NUMBER */ 98 #define MEDLINE_JC 320 /* JOURNAL TITLE CODE */ 99 #define MEDLINE_PY 323 /* INDEXING PRIORITY */ 100 #define MEDLINE_SB 324 /* JOURNAL SUBSET */ 101 #define MEDLINE_GS 328 /* GENE SYMBOL */ 102 #define MEDLINE_LI 329 /* SPECIAL LIST IND */ 103 #define MEDLINE_UI 350 /* UNIQUE IDENTIFIER */ 104 #define MEDLINE_MH 351 /* MESH HEADING */ 105 #define MEDLINE_TI 352 /* TITLE */ 106 #define MEDLINE_PG 353 /* PAGINATION */ 107 #define MEDLINE_DP 354 /* DATE OF PUBLICATION */ 108 #define MEDLINE_PT 360 /* PUBLICATION TYPE */ 109 #define MEDLINE_MRI 368 /* MACHINE-READABLE ID */ 110 #define MEDLINE_NP 369 /* NOT FOR PUBLICATION */ 111 #define MEDLINE_AB 370 /* ABSTRACT */ 112 #define MEDLINE_AA 371 /* ABSTRACT AUTHOR */ 113 #define MEDLINE_AU 372 /* AUTHOR */ 114 #define MEDLINE_IP 373 /* ISSUE/PART/SUPP */ 115 #define MEDLINE_NI 376 /* NO-AUTHOR INDICATOR */ 116 #define MEDLINE_RF 377 /* NUMBER OF REFS */ 117 #define MEDLINE_AD 378 /* ADDRESS */ 118 #define MEDLINE_PS 379 /* PERSONAL NAME AS SUBJECT */ 119 #define MEDLINE_TT 380 /* TRANSLIT/VERNAC TITLE */ 120 #define MEDLINE_VI 381 /* VOLUME/ISSUE */ 121 #define MEDLINE_EA 382 /* ENGLISH ABSTRACT INDEX */ 122 #define MEDLINE_EM 383 /* ENTRY MONTH */ 123 #define MEDLINE_CM 440 /* COMMENTS */ 124 #define MEDLINE_CA 525 /* CALL NUMBER */ 125 #define MEDLINE_SI 606 /* SECONDARY SOURCE ID */ 126 #define MEDLINE_ID 640 /* ID NUMBER */ 127 #define MEDLINE_PM 969 /* PUBMED ARTICLE ID */ 128 #define MEDLINE_PMOFF 4096 /* ALL INTERNAL PUBMED IDS STARTED FROM HERE */ 129 #define MEDLINE_PAID 4097 /* PUBLISHER ARTICLE ID */ 130 131 /* Define the codes specific to identifying Monographs in the JC/TA fields */ 132 #define MEDLINE_MONOGRAPH_JC "IDM" 133 #define MEDLINE_MONOGRAPH_TA "(Monograph)" 134 135 #undef NLM_EXTERN 136 #ifdef NLM_IMPORT 137 #define NLM_EXTERN NLM_IMPORT 138 #else 139 #define NLM_EXTERN extern 140 #endif 141 142 #ifdef __cplusplus 143 extern "C" { 144 #endif 145 146 typedef struct medlinedata { 147 CharPtr journal; 148 CharPtr volume; 149 CharPtr pages; 150 CharPtr year; 151 CharPtr title; 152 CharPtr transl; 153 CharPtr authors; 154 CharPtr affil; 155 CharPtr abstract; 156 CharPtr mesh; 157 CharPtr gene; 158 CharPtr substance; 159 CharPtr uid; 160 } MedlineData, PNTR MedlinePtr; 161 162 NLM_EXTERN Boolean MedlineEntryToDataFile PROTO((MedlineEntryPtr mep, FILE *fp)); 163 NLM_EXTERN Boolean MedlineEntryToDocFile PROTO((MedlineEntryPtr mep, FILE *fp)); 164 NLM_EXTERN Boolean MedlineEntryToAbsFile PROTO((MedlineEntryPtr mep, FILE *fp)); 165 166 NLM_EXTERN Boolean MedlarsEntryToDataFile PROTO((MedlarsEntryPtr mep, FILE *fp)); 167 NLM_EXTERN Boolean MedlarsEntryToDocFile PROTO((MedlarsEntryPtr mep, FILE *fp)); 168 NLM_EXTERN Boolean MedlarsEntryToAbsFile PROTO((MedlarsEntryPtr mep, FILE *fp)); 169 170 NLM_EXTERN Boolean PubmedEntryToDataFile PROTO((PubmedEntryPtr pep, FILE *fp)); 171 NLM_EXTERN Boolean PubmedEntryToDocFile PROTO((PubmedEntryPtr pep, FILE *fp)); 172 NLM_EXTERN Boolean PubmedEntryToAbsFile PROTO((PubmedEntryPtr pep, FILE *fp)); 173 174 NLM_EXTERN MedlinePtr ParseMedline PROTO((MedlineEntryPtr mep)); 175 NLM_EXTERN MedlinePtr FreeMedline PROTO((MedlinePtr mPtr)); 176 177 #ifdef __cplusplus 178 } 179 #endif 180 181 #undef NLM_EXTERN 182 #ifdef NLM_EXPORT 183 #define NLM_EXTERN NLM_EXPORT 184 #else 185 #define NLM_EXTERN 186 #endif 187 188 #endif 189