NCBI C++ ToolKit
fta_xml.h
Go to the documentation of this file.

Go to the SVN repository for this file.

1 /* $Id: fta_xml.h 98137 2022-10-03 17:53:20Z stakhovv $
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: fta_xml.h
27  *
28  * Author: Sergey Bazhin
29  *
30  * File Description:
31  *
32  */
33 
34 #ifndef _FTA_XML_
35 #define _FTA_XML_
36 
37 #include "ftablock.h"
38 
39 #define INSDSEQ_START "<INSDSeq>"
40 #define INSDSEQ_END "</INSDSeq>"
41 
42 #define INSDSEQ_LOCUS 1
43 #define INSDSEQ_LENGTH 2
44 #define INSDSEQ_STRANDEDNESS 3
45 #define INSDSEQ_MOLTYPE 4
46 #define INSDSEQ_TOPOLOGY 5
47 #define INSDSEQ_DIVISION 6
48 #define INSDSEQ_UPDATE_DATE 7
49 #define INSDSEQ_CREATE_DATE 8
50 #define INSDSEQ_UPDATE_RELEASE 9
51 #define INSDSEQ_CREATE_RELEASE 10
52 #define INSDSEQ_DEFINITION 11
53 #define INSDSEQ_PRIMARY_ACCESSION 12
54 #define INSDSEQ_ENTRY_VERSION 13
55 #define INSDSEQ_ACCESSION_VERSION 14
56 #define INSDSEQ_OTHER_SEQIDS 15
57 #define INSDSEQ_SECONDARY_ACCESSIONS 16
58 #define INSDSEQ_KEYWORDS 17
59 #define INSDSEQ_SEGMENT 18
60 #define INSDSEQ_SOURCE 19
61 #define INSDSEQ_ORGANISM 20
62 #define INSDSEQ_TAXONOMY 21
63 #define INSDSEQ_REFERENCES 22
64 #define INSDSEQ_COMMENT 23
65 #define INSDSEQ_PRIMARY 24
66 #define INSDSEQ_SOURCE_DB 25
67 #define INSDSEQ_DATABASE_REFERENCE 26
68 #define INSDSEQ_FEATURE_TABLE 27
69 #define INSDSEQ_SEQUENCE 28
70 #define INSDSEQ_CONTIG 29
71 
72 /* define subkeywords
73  */
74 #define INSDSECONDARY_ACCN 30
75 #define INSDKEYWORD 31
76 #define INSDFEATURE 32
77 #define INSDFEATURE_KEY 33
78 #define INSDFEATURE_LOCATION 34
79 #define INSDFEATURE_INTERVALS 35
80 #define INSDFEATURE_QUALS 36
81 #define INSDINTERVAL 37
82 #define INSDINTERVAL_FROM 38
83 #define INSDINTERVAL_TO 39
84 #define INSDINTERVAL_POINT 40
85 #define INSDINTERVAL_ACCESSION 41
86 #define INSDQUALIFIER 42
87 #define INSDQUALIFIER_NAME 43
88 #define INSDQUALIFIER_VALUE 44
89 #define INSDREFERENCE 45
90 #define INSDREFERENCE_REFERENCE 46
91 #define INSDREFERENCE_POSITION 47
92 #define INSDREFERENCE_AUTHORS 48
93 #define INSDREFERENCE_CONSORTIUM 49
94 #define INSDREFERENCE_TITLE 50
95 #define INSDREFERENCE_JOURNAL 51
96 #define INSDREFERENCE_MEDLINE 52
97 #define INSDREFERENCE_PUBMED 53
98 #define INSDREFERENCE_REMARK 54
99 #define INSDREFERENCE_XREF 55
100 #define INSDXREF 56
101 #define INSDXREF_DBNAME 57
102 #define INSDXREF_ID 58
103 #define INSDAUTHOR 59
104 
105 #define XML_FEATURES 1
106 
108 
109 char* XMLLoadEntry(ParserPtr pp, bool err);
110 char* XMLGetTagValue(const char* entry, const XmlIndex* xip);
111 char* XMLFindTagValue(const char* entry, const XmlIndex* xip, Int4 tag);
112 DataBlkPtr XMLBuildRefDataBlk(char* entry, const XmlIndex* xip, int type);
113 char* XMLConcatSubTags(const char* entry, const XmlIndex* xip, Int4 tag, Char sep);
114 void XMLGetKeywords(const char* entry, const XmlIndex* xip, TKeywordList& keywords);
115 
117 
118 #endif
DataBlkPtr XMLBuildRefDataBlk(char *entry, const XmlIndex *xip, int type)
Definition: xm_index.cpp:1489
char * XMLFindTagValue(const char *entry, const XmlIndex *xip, Int4 tag)
Definition: xm_index.cpp:213
char * XMLGetTagValue(const char *entry, const XmlIndex *xip)
Definition: xm_index.cpp:197
void XMLGetKeywords(const char *entry, const XmlIndex *xip, TKeywordList &keywords)
Definition: xm_index.cpp:1522
char * XMLLoadEntry(ParserPtr pp, bool err)
Definition: xm_index.cpp:967
char * XMLConcatSubTags(const char *entry, const XmlIndex *xip, Int4 tag, Char sep)
Definition: xm_index.cpp:1548
std::list< std::string > TKeywordList
Definition: ftablock.h:166
int32_t Int4
4-byte (32-bit) signed integer
Definition: ncbitype.h:102
char Char
Alias for char.
Definition: ncbitype.h:93
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
const char * tag
Definition: type.c:6
Modified on Mon Feb 26 04:05:59 2024 by modify_doxy.py rev. 669887