7344c9e9cdb2592f710bf49243e7ceceb3166209
[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    * List of databases whose sequences might have coding regions annotated
60    */
61   public static final String[] DNACODINGDBS = { EMBL, EMBLCDS};
62   public static final String[] CODINGDBS = { EMBLCDS};
63   public static final String[] PROTEINDBS = { UNIPROT, PDB, UNIPROTKB};
64   public static final String[] PROTEINSEQ = { UNIPROT, UNIPROTKB};
65   public static final String[] PROTEINSTR = { PDB };
66   public static final String[] DOMAINDBS = { PFAM };
67   /**
68    * set of unique DBRefSource property constants.
69    * These could be used to reconstruct the above groupings
70    */
71   public static final Object SEQDB = "SQ";
72   /**
73    * database of nucleic acid sequences
74    */
75   public static final Object DNASEQDB = "NASQ";
76   /**
77    * database of amino acid sequences
78    */
79   public static final Object PROTSEQDB = "PROTSQ";
80   /**
81    * database of cDNA sequences
82    */
83   public static final Object CODINGSEQDB = "CODING";
84   /**
85    * database of na sequences with exon annotation
86    */
87   public static final Object DNACODINGSEQDB = "XONCODING";
88   /**
89    * DB returns several sequences associated with a protein domain
90    */
91   public static final Object DOMAINDB = "DOMAIN";
92   /**
93    * DB query can take multiple accession codes concatenated
94    * by a separator.
95    */
96   public static final Object MULTIACC = "MULTIACC";
97 }