0552b2ce675b391bc9a59f958b203a10c57f2e59
[jalview.git] / src / jalview / datamodel / DBRefSource.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer
3  * Copyright (C) 2007 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License
7  * as published by the Free Software Foundation; either version 2
8  * of the License, or (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
18  */
19 package jalview.datamodel;
20 /**
21  * Defines internal constants for unambiguous annotation
22  * of DbRefEntry source strings and describing the data
23  * retrieved from external database sources (see jalview.ws.DbSourcProxy)
24  * @author JimP
25  *
26  */
27 public class DBRefSource
28 {
29   /**
30    * UNIPROT Accession Number
31    */
32   public static String UNIPROT = "UNIPROT";
33   /**
34    * UNIPROT Entry Name
35    */
36   public static String UP_NAME = "UNIPROT_NAME";
37   /**
38    * Uniprot Knowledgebase/TrEMBL
39    * as served from EMBL protein products.
40    */
41   public static final String UNIPROTKB = "UniProtKB/TrEMBL";
42   /**
43    * PDB Entry Code
44    */
45   public static String PDB = "PDB";
46   /**
47    * EMBL ID
48    */
49   public static String EMBL = "EMBL";
50   /**
51    * EMBLCDS ID
52    */
53   public static String EMBLCDS = "EMBLCDS";
54   /**
55    * PFAM ID
56    */
57   public static String PFAM = "PFAM";
58   /**
59    * GeneDB ID
60    */
61   public static final String GENEDB = "GeneDB";
62
63   /**
64    * List of databases whose sequences might have coding regions annotated
65    */
66   public static final String[] DNACODINGDBS = { EMBL, EMBLCDS, GENEDB};
67   public static final String[] CODINGDBS = { EMBLCDS, GENEDB};
68   public static final String[] PROTEINDBS = { UNIPROT, PDB, UNIPROTKB};
69   public static final String[] PROTEINSEQ = { UNIPROT, UNIPROTKB};
70   public static final String[] PROTEINSTR = { PDB };
71   public static final String[] DOMAINDBS = { PFAM };
72   /**
73    * set of unique DBRefSource property constants.
74    * These could be used to reconstruct the above groupings
75    */
76   public static final Object SEQDB = "SQ";
77   /**
78    * database of nucleic acid sequences
79    */
80   public static final Object DNASEQDB = "NASQ";
81   /**
82    * database of amino acid sequences
83    */
84   public static final Object PROTSEQDB = "PROTSQ";
85   /**
86    * database of cDNA sequences
87    */
88   public static final Object CODINGSEQDB = "CODING";
89   /**
90    * database of na sequences with exon annotation
91    */
92   public static final Object DNACODINGSEQDB = "XONCODING";
93   /**
94    * DB returns several sequences associated with a protein domain
95    */
96   public static final Object DOMAINDB = "DOMAIN";
97   /**
98    * DB query can take multiple accession codes concatenated
99    * by a separator. Value of property indicates maximum number of accession codes to send at a time.
100    */
101   public static final Object MULTIACC = "MULTIACC";
102 }