bio 2.0.3 → 2.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 990d6888c3a4e53089aaf8332c4bc87bb9cc40efe25e1aa13b7337be69145227
4
- data.tar.gz: 361fad495b8f8ee3528a6729b8a52a3522a6d594353679a6a84993e97e1e8f6a
3
+ metadata.gz: 65cb8536e3646ee35c955bddcada6ecc10f0dda7540617f6bca71133894d25dd
4
+ data.tar.gz: f7eacff38af5eec96bb377f4bc87d23fc03c3277cf843a156b5cb1b95c15afdf
5
5
  SHA512:
6
- metadata.gz: 52c72d6055da72526d208e85b42ad75b150b4538b62c2552323e5f344721b9fe0ed3b18adf5e9d570f9d34fba019379fc6528a329a1340962f5a9c6c279e458c
7
- data.tar.gz: f8894738bbb973722b77f65559f56b2ec661619e9f2dfe060456d63523fb921d4697d619171a8998686d234ac6bb5f3a300cbd140c8a78f8083b36029b536825
6
+ metadata.gz: ad51098d8e668c40b0457f9bdbc58c13e179f5a7929c2264928b3257152dc13f3b0632d3c73c2ac58e7c8e679dfa28188338a51b37a8bb31898fdb887b1e56e4
7
+ data.tar.gz: 54f2c6da91324094ac87f0865e9e9b0c5333b8872abc9672cac73110b94ae13b7257f96ba1a75cf358f2fbb66440b4e2790c1ec50b15a381048cf5f04acd3bf8
data/ChangeLog CHANGED
@@ -1,3 +1,82 @@
1
+ commit 1bc877e557e165b42eea992d89f19a63996cb586
2
+ Author: Naohisa Goto <ng@bioruby.org>
3
+ Date: Tue Sep 13 21:19:01 2022 +0900
4
+
5
+ regenerate bioruby.gemspec with rake regemspec
6
+
7
+ bioruby.gemspec | 4 +++-
8
+ 1 file changed, 3 insertions(+), 1 deletion(-)
9
+
10
+ commit 190e4751b84cc45cbce636c4414482a8169b08df
11
+ Author: Naohisa Goto <ng@bioruby.org>
12
+ Date: Tue Sep 13 21:18:06 2022 +0900
13
+
14
+ prepare for BioRuby 2.0.4 release
15
+
16
+ lib/bio/version.rb | 2 +-
17
+ 1 file changed, 1 insertion(+), 1 deletion(-)
18
+
19
+ commit a666639e0393e96b2de0bbcb447c13f8a14ad06d
20
+ Author: Naohisa Goto <ng@bioruby.org>
21
+ Date: Tue Sep 13 21:17:11 2022 +0900
22
+
23
+ update release notes for upcoming BioRuby 2.0.4
24
+
25
+ RELEASE_NOTES.rdoc | 14 ++++++++++++++
26
+ 1 file changed, 14 insertions(+)
27
+
28
+ commit c0d197343dd7fd8999d04083c9e8f24fa37a2f93
29
+ Author: Naohisa Goto <ng@bioruby.org>
30
+ Date: Tue Sep 13 21:13:40 2022 +0900
31
+
32
+ License of UniProt data is CC BY 4.0
33
+
34
+ LEGAL | 9 +++++++++
35
+ 1 file changed, 9 insertions(+)
36
+
37
+ commit e670102e6d4deb04c1fcae62459cc02861132d25
38
+ Author: Naohisa Goto <ng@bioruby.org>
39
+ Date: Tue Sep 13 21:01:50 2022 +0900
40
+
41
+ Bug fix: Bio::UniProtKB#protein_name and #synonyms may raise error
42
+
43
+ * Bug fix: Bio::UniProtKB#protein_name and #synonyms may raise error
44
+ after calling Bio::UniProtKB#de method.
45
+
46
+ lib/bio/db/embl/uniprotkb.rb | 25 ++++++++++++++++++-------
47
+ test/unit/bio/db/embl/test_uniprotkb_P28907.rb | 11 +++++++++++
48
+ 2 files changed, 29 insertions(+), 7 deletions(-)
49
+
50
+ commit 9c04e08e8d1316ffd7fc15ab311cea5dd6937d36
51
+ Author: Naohisa Goto <ng@bioruby.org>
52
+ Date: Tue Sep 13 20:44:46 2022 +0900
53
+
54
+ Supports format change of FT lines since UniProt release 2019_11
55
+
56
+ * Bio::UniProtKB#ft: Supports text format change of FT lines since
57
+ UniProt release 2019_11. (Details of the format changes:
58
+ https://www.uniprot.org/release-notes/2019-12-18-release#text%5Fft )
59
+
60
+ This closes https://github.com/bioruby/bioruby/issues/147 .
61
+
62
+ * Tests are added with a new test data
63
+
64
+ lib/bio/db/embl/uniprotkb.rb | 122 +++++-
65
+ test/data/uniprot/P28907.uniprot | 551 +++++++++++++++++++++++++
66
+ test/unit/bio/db/embl/test_uniprotkb_P28907.rb | 314 ++++++++++++++
67
+ 3 files changed, 983 insertions(+), 4 deletions(-)
68
+ create mode 100644 test/data/uniprot/P28907.uniprot
69
+ create mode 100644 test/unit/bio/db/embl/test_uniprotkb_P28907.rb
70
+
71
+ commit b18ee463d4328b5ef619733b46f568b18459be7a
72
+ Author: Naohisa Goto <ng@bioruby.org>
73
+ Date: Fri Nov 5 23:49:18 2021 +0900
74
+
75
+ BioRuby 2.0.3 is released
76
+
77
+ ChangeLog | 136 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
78
+ 1 file changed, 136 insertions(+)
79
+
1
80
  commit c16e230d15cf30478a3739563b4e4745dc57ef82
2
81
  Author: Naohisa Goto <ng@bioruby.org>
3
82
  Date: Fri Nov 5 23:44:45 2021 +0900
data/LEGAL CHANGED
@@ -114,6 +114,15 @@ test/data/uniprot/p53_human.uniprot:
114
114
  removed.
115
115
 
116
116
 
117
+ test/data/uniprot/P28907.uniprot:
118
+
119
+ Copyrighted by the UniProt Consortium, see https://www.uniprot.org/terms
120
+ Distributed under the Creative Commons Attribution (CC BY 4.0) License
121
+
122
+ https://www.uniprot.org/help/license
123
+ https://creativecommons.org/licenses/by/4.0/
124
+
125
+
117
126
  GPL:
118
127
 
119
128
  Copyright (C) 1989, 1991 Free Software Foundation, Inc.
data/RELEASE_NOTES.rdoc CHANGED
@@ -1,3 +1,17 @@
1
+ = BioRuby 2.0.4 RELEASE NOTES
2
+
3
+ Some fixes have been made in BioRuby 2.0.4 after the release of 2.0.3.
4
+
5
+ == Fixes
6
+
7
+ * Bio::UniProtKB#ft: Supports text format change of FT lines since
8
+ UniProt release 2019_11.
9
+ (https://github.com/bioruby/bioruby/issues/147 )
10
+ * Bio::UniProtKB#protein_name and #synonyms methods may raise error
11
+ after calling Bio::UniProtKB#de method.
12
+
13
+
14
+
1
15
  = BioRuby 2.0.3 RELEASE NOTES
2
16
 
3
17
  Some bug fixes have been made in BioRuby 2.0.3 after the release of 2.0.2.
data/bioruby.gemspec CHANGED
@@ -3,7 +3,7 @@
3
3
  #
4
4
  Gem::Specification.new do |s|
5
5
  s.name = 'bio'
6
- s.version = "2.0.3"
6
+ s.version = "2.0.4"
7
7
 
8
8
  s.author = "BioRuby project"
9
9
  s.email = "staff@bioruby.org"
@@ -454,6 +454,7 @@ Gem::Specification.new do |s|
454
454
  "test/data/sim4/simple2-A4.sim4",
455
455
  "test/data/soft/GDS100_partial.soft",
456
456
  "test/data/soft/GSE3457_family_partial.soft",
457
+ "test/data/uniprot/P28907.uniprot",
457
458
  "test/data/uniprot/p53_human.uniprot",
458
459
  "test/functional/bio/sequence/test_output_embl.rb",
459
460
  "test/functional/bio/test_command.rb",
@@ -498,6 +499,7 @@ Gem::Specification.new do |s|
498
499
  "test/unit/bio/db/embl/test_embl_to_bioseq.rb",
499
500
  "test/unit/bio/db/embl/test_uniprot.rb",
500
501
  "test/unit/bio/db/embl/test_uniprotkb.rb",
502
+ "test/unit/bio/db/embl/test_uniprotkb_P28907.rb",
501
503
  "test/unit/bio/db/embl/test_uniprotkb_new_part.rb",
502
504
  "test/unit/bio/db/fasta/test_defline.rb",
503
505
  "test/unit/bio/db/fasta/test_defline_misc.rb",
@@ -248,9 +248,8 @@ class UniProtKB < EMBLDB
248
248
  # SYNONYM >=0
249
249
  # CONTEINS >=0
250
250
  def protein_name
251
- @data['DE'] ||= parse_DE_line_rel14(get('DE'))
252
- parsed_de_line = @data['DE']
253
- if parsed_de_line then
251
+ parsed_de_line = self.de
252
+ if parsed_de_line.kind_of?(Array) then
254
253
  # since UniProtKB release 14.0 of 22-Jul-2008
255
254
  name = nil
256
255
  parsed_de_line.each do |a|
@@ -275,7 +274,6 @@ class UniProtKB < EMBLDB
275
274
  return name
276
275
  end
277
276
 
278
-
279
277
  # returns synonyms (unofficial and/or alternative names).
280
278
  # Returns an Array containing String objects.
281
279
  #
@@ -292,9 +290,8 @@ class UniProtKB < EMBLDB
292
290
  # synonyms are each placed in () following the official name on the DE line.
293
291
  def synonyms
294
292
  ary = Array.new
295
- @data['DE'] ||= parse_DE_line_rel14(get('DE'))
296
- parsed_de_line = @data['DE']
297
- if parsed_de_line then
293
+ parsed_de_line = self.de
294
+ if parsed_de_line.kind_of?(Array) then
298
295
  # since UniProtKB release 14.0 of 22-Jul-2008
299
296
  parsed_de_line.each do |a|
300
297
  case a[0]
@@ -330,6 +327,20 @@ class UniProtKB < EMBLDB
330
327
  return ary
331
328
  end
332
329
 
330
+ # Returns an Array (for new format since rel 14)
331
+ # or a String (for old format before rel 14) for the DE line.
332
+ #
333
+ def de
334
+ return @data['DE'] if @data['DE']
335
+ parsed_de_line = parse_DE_line_rel14(get('DE'))
336
+ case parsed_de_line
337
+ when Array # new format since rel14
338
+ @data['DE'] ||= parsed_de_line
339
+ else
340
+ super
341
+ end
342
+ @data['DE']
343
+ end
333
344
 
334
345
  # returns gene names in the GN line.
335
346
  #
@@ -1197,9 +1208,124 @@ class UniProtKB < EMBLDB
1197
1208
  return ft[feature_key] if feature_key
1198
1209
  return @data['FT'] if @data['FT']
1199
1210
 
1211
+ ftstr = get('FT')
1212
+ ftlines = ftstr.split("\n")
1213
+ for i in 0..10 do
1214
+ if /^FT +([^\s]+) +(([^\s]+)\:)?([\<\?]?[0-9]+|\?)(?:\.\.([\>\?]?[0-9]+|\?))?\s*$/ =~ ftlines[i] &&
1215
+ /^FT +\/([^\s\=]+)(?:\=(\")?(.+)(\")?)?\s*$/ =~ ftlines[i+1] then
1216
+ fmt_2019_11 = true
1217
+ break #for i
1218
+ end
1219
+ end #for i
1220
+
1221
+ hash = if fmt_2019_11 then
1222
+ ft_2019_11_parser(ftlines)
1223
+ else
1224
+ ft_legacy_parser(ftlines)
1225
+ end
1226
+ @data['FT'] = hash
1227
+ end
1228
+
1229
+ # FT parser since UniProt release 2019_11
1230
+ # https://www.uniprot.org/release-notes/2019-12-18-release#text%5Fft
1231
+ def ft_2019_11_parser(ftlines)
1232
+ table = []
1233
+ cur_ft = nil
1234
+ cont = false
1235
+ begin
1236
+ ftlines.each do |line|
1237
+ if /^FT +([^\s]+) +(([^\s]+)\:)?([\<\?]?[0-9]+|\?)(?:\.\.([\>\?]?[0-9]+|\?))?\s*$/ =~ line
1238
+ cur_ft = [$1.to_s, # Feature Name
1239
+ "#{$2}#{$4}", # From
1240
+ $5.to_s, # To
1241
+ [] # Qualifiers
1242
+ ]
1243
+ table.push cur_ft
1244
+ cont = false
1245
+ elsif cont && /^FT {19}/ =~ line
1246
+ str = $'
1247
+ str.rstrip!
1248
+ orig = cur_ft[3][-1][1].to_s
1249
+ if orig.size > 0 && orig[-1] != ' ' &&
1250
+ str.length > 0 && str[0] != ' ' then
1251
+ orig.concat ' '
1252
+ end
1253
+ orig.concat str
1254
+ cur_ft[3][-1][1] = orig
1255
+ if cont && orig[-1] == "\""
1256
+ orig.chop!
1257
+ cont = false
1258
+ end
1259
+ elsif /^FT +\/([^\s\=]+)(?:\=(\")?(.+))?\s*$/ =~ line
1260
+ key = $1
1261
+ val = $3
1262
+ val.rstrip!
1263
+ cur_ft[3].push [ key, val ]
1264
+ cont = false
1265
+ if $2 == "\""
1266
+ if val.to_s[-1] == "\""
1267
+ val.chop!
1268
+ else
1269
+ cont = true
1270
+ end
1271
+ end
1272
+ else
1273
+ raise "FT parse error: #{line.inspect}"
1274
+ end
1275
+ end
1276
+
1277
+ hash = {}
1278
+ table.each do |feature|
1279
+ cur_h = {
1280
+ # Removing '<', '>' or '?' in FROM/TO endopoint.
1281
+ 'From' => feature[1].sub(/\D/, '').to_i,
1282
+ 'To' => feature[2].sub(/\D/, '').to_i,
1283
+ 'diff' => [],
1284
+ 'original' => feature
1285
+ }
1286
+ hash[feature[0]] ||= []
1287
+ hash[feature[0]].push cur_h
1288
+ feature[3].each do |a|
1289
+ case a[0]
1290
+ when 'From', 'To', 'Description', 'FTId', 'diff', 'original'
1291
+ ; # do nothing
1292
+ else
1293
+ cur_h[a[0]] = a[1]
1294
+ end
1295
+ end
1296
+ if cur_h["id"] then
1297
+ cur_h['FTId'] = cur_h['id']
1298
+ end
1299
+
1300
+ case feature[0]
1301
+ when 'VARSPLIC', 'VARIANT', 'VAR_SEQ', 'CONFLICT'
1302
+ case cur_h['note'].to_s
1303
+ when /(\w[\w ]*\w*) - ?> (\w[\w ]*\w*)/
1304
+ original_res = $1
1305
+ changed_res = $2
1306
+ original_res = original_res.gsub(/ /,'').strip
1307
+ chenged_res = changed_res.gsub(/ /,'').strip
1308
+ when /Missing/i
1309
+ original_res = seq.subseq(cur_h['From'],
1310
+ cur_h['To'])
1311
+ changed_res = ''
1312
+ end
1313
+ cur_h['diff'] = [original_res, chenged_res]
1314
+ end
1315
+ end
1316
+ rescue
1317
+ raise "Invalid FT Lines(#{$!}) in #{entry_id}:, \n'#{self.get('FT')}'\n"
1318
+ end
1319
+
1320
+ hash
1321
+ end
1322
+ private :ft_2019_11_parser
1323
+
1324
+ # FT parser for the format before Uniprot release 2019_11
1325
+ def ft_legacy_parser(ftlines)
1200
1326
  table = []
1201
1327
  begin
1202
- get('FT').split("\n").each do |line|
1328
+ ftlines.each do |line|
1203
1329
  if line =~ /^FT \w/
1204
1330
  feature = line.chomp.ljust(74)
1205
1331
  table << [feature[ 5..12].strip, # Feature Name
@@ -1256,10 +1382,9 @@ class UniProtKB < EMBLDB
1256
1382
  raise "Invalid FT Lines(#{$!}) in #{entry_id}:, \n'#{self.get('FT')}'\n"
1257
1383
  end
1258
1384
 
1259
- @data['FT'] = hash
1385
+ hash
1260
1386
  end
1261
-
1262
-
1387
+ private :ft_legacy_parser
1263
1388
 
1264
1389
  # returns a Hash of conteins in the SQ lines.
1265
1390
  # * Bio::UniProtKBL#sq -> hsh
data/lib/bio/version.rb CHANGED
@@ -10,7 +10,7 @@
10
10
  module Bio
11
11
 
12
12
  # BioRuby version (Array containing Integer)
13
- BIORUBY_VERSION = [2, 0, 3].extend(Comparable).freeze
13
+ BIORUBY_VERSION = [2, 0, 4].extend(Comparable).freeze
14
14
 
15
15
  # Extra version specifier (String or nil).
16
16
  # Existance of the value indicates development version.
@@ -0,0 +1,551 @@
1
+ ID CD38_HUMAN Reviewed; 300 AA.
2
+ AC P28907; O00121; O00122; Q96HY4;
3
+ DT 01-DEC-1992, integrated into UniProtKB/Swiss-Prot.
4
+ DT 23-NOV-2004, sequence version 2.
5
+ DT 03-AUG-2022, entry version 213.
6
+ DE RecName: Full=ADP-ribosyl cyclase/cyclic ADP-ribose hydrolase 1;
7
+ DE EC=3.2.2.6;
8
+ DE AltName: Full=2'-phospho-ADP-ribosyl cyclase;
9
+ DE AltName: Full=2'-phospho-ADP-ribosyl cyclase/2'-phospho-cyclic-ADP-ribose transferase;
10
+ DE EC=2.4.99.20;
11
+ DE AltName: Full=2'-phospho-cyclic-ADP-ribose transferase;
12
+ DE AltName: Full=ADP-ribosyl cyclase 1;
13
+ DE Short=ADPRC 1;
14
+ DE AltName: Full=Cyclic ADP-ribose hydrolase 1;
15
+ DE Short=cADPr hydrolase 1;
16
+ DE AltName: Full=T10;
17
+ DE AltName: CD_antigen=CD38;
18
+ GN Name=CD38;
19
+ OS Homo sapiens (Human).
20
+ OC Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi; Mammalia;
21
+ OC Eutheria; Euarchontoglires; Primates; Haplorrhini; Catarrhini; Hominidae;
22
+ OC Homo.
23
+ OX NCBI_TaxID=9606;
24
+ RN [1]
25
+ RP NUCLEOTIDE SEQUENCE [MRNA] (ISOFORM 1).
26
+ RX PubMed=2319135;
27
+ RA Jackson D.G., Bell J.I.;
28
+ RT "Isolation of a cDNA encoding the human CD38 (T10) molecule, a cell surface
29
+ RT glycoprotein with an unusual discontinuous pattern of expression during
30
+ RT lymphocyte differentiation.";
31
+ RL J. Immunol. 144:2811-2815(1990).
32
+ RN [2]
33
+ RP NUCLEOTIDE SEQUENCE [GENOMIC DNA], NUCLEOTIDE SEQUENCE [MRNA] (ISOFORMS 1
34
+ RP AND 2), AND TISSUE SPECIFICITY.
35
+ RC TISSUE=Esophageal carcinoma, and Pancreas;
36
+ RX PubMed=9074508; DOI=10.1016/s0378-1119(96)00723-8;
37
+ RA Nata K., Takamura T., Karasawa T., Kumagai T., Hashioka W., Tohgo A.,
38
+ RA Yonekura H., Takasawa S., Nakamura S., Okamoto H.;
39
+ RT "Human gene encoding CD38 (ADP-ribosyl cyclase/cyclic ADP-ribose
40
+ RT hydrolase): organization, nucleotide sequence and alternative splicing.";
41
+ RL Gene 186:285-292(1997).
42
+ RN [3]
43
+ RP NUCLEOTIDE SEQUENCE [LARGE SCALE MRNA] (ISOFORM 1).
44
+ RC TISSUE=B-cell;
45
+ RX PubMed=15489334; DOI=10.1101/gr.2596504;
46
+ RG The MGC Project Team;
47
+ RT "The status, quality, and expansion of the NIH full-length cDNA project:
48
+ RT the Mammalian Gene Collection (MGC).";
49
+ RL Genome Res. 14:2121-2127(2004).
50
+ RN [4]
51
+ RP SIMILARITY TO NADASE.
52
+ RX PubMed=1471258; DOI=10.1016/0968-0004(92)90337-9;
53
+ RA States D.J., Walseth T.F., Lee H.C.;
54
+ RT "Similarities in amino acid sequences of Aplysia ADP-ribosyl cyclase and
55
+ RT human lymphocyte antigen CD38.";
56
+ RL Trends Biochem. Sci. 17:495-495(1992).
57
+ RN [5]
58
+ RP CHARACTERIZATION.
59
+ RX PubMed=8253715; DOI=10.1016/s0021-9258(19)74275-6;
60
+ RA Takasawa S., Tohgo A., Noguchi N., Koguma T., Nata K., Sugimoto T.,
61
+ RA Yonekura H., Okamoto H.;
62
+ RT "Synthesis and hydrolysis of cyclic ADP-ribose by human leukocyte antigen
63
+ RT CD38 and inhibition of the hydrolysis by ATP.";
64
+ RL J. Biol. Chem. 268:26052-26054(1993).
65
+ RN [6]
66
+ RP ACTIVE SITE, AND MUTAGENESIS OF CYS-119; CYS-160; CYS-173 AND CYS-201.
67
+ RX PubMed=7961800; DOI=10.1016/s0021-9258(19)61940-x;
68
+ RA Tohgo A., Takasawa S., Noguchi N., Koguma T., Nata K., Sugimoto T.,
69
+ RA Furuya Y., Yonekura H., Okamoto H.;
70
+ RT "Essential cysteine residues for cyclic ADP-ribose synthesis and hydrolysis
71
+ RT by CD38.";
72
+ RL J. Biol. Chem. 269:28555-28557(1994).
73
+ RN [7]
74
+ RP SPLICE ISOFORM(S) THAT ARE POTENTIAL NMD TARGET(S).
75
+ RX PubMed=14759258; DOI=10.1186/gb-2004-5-2-r8;
76
+ RA Hillman R.T., Green R.E., Brenner S.E.;
77
+ RT "An unappreciated role for RNA surveillance.";
78
+ RL Genome Biol. 5:R8.1-R8.16(2004).
79
+ RN [8]
80
+ RP CATALYTIC ACTIVITY.
81
+ RX PubMed=16690024; DOI=10.1016/j.bbrc.2006.04.096;
82
+ RA Moreschi I., Bruzzone S., Melone L., De Flora A., Zocchi E.;
83
+ RT "NAADP+ synthesis from cADPRP and nicotinic acid by ADP-ribosyl cyclases.";
84
+ RL Biochem. Biophys. Res. Commun. 345:573-580(2006).
85
+ RN [9]
86
+ RP GLYCOSYLATION [LARGE SCALE ANALYSIS] AT ASN-100; ASN-209 AND ASN-219.
87
+ RC TISSUE=Liver;
88
+ RX PubMed=19159218; DOI=10.1021/pr8008012;
89
+ RA Chen R., Jiang X., Sun D., Han G., Wang F., Ye M., Wang L., Zou H.;
90
+ RT "Glycoproteomics analysis of human liver tissue by combination of multiple
91
+ RT enzyme digestion and hydrazide chemistry.";
92
+ RL J. Proteome Res. 8:651-661(2009).
93
+ RN [10]
94
+ RP GLYCOSYLATION [LARGE SCALE ANALYSIS] AT ASN-219.
95
+ RC TISSUE=Leukemic T-cell;
96
+ RX PubMed=19349973; DOI=10.1038/nbt.1532;
97
+ RA Wollscheid B., Bausch-Fluck D., Henderson C., O'Brien R., Bibel M.,
98
+ RA Schiess R., Aebersold R., Watts J.D.;
99
+ RT "Mass-spectrometric identification and relative quantification of N-linked
100
+ RT cell surface glycoproteins.";
101
+ RL Nat. Biotechnol. 27:378-386(2009).
102
+ RN [11]
103
+ RP IDENTIFICATION BY MASS SPECTROMETRY [LARGE SCALE ANALYSIS].
104
+ RX PubMed=21269460; DOI=10.1186/1752-0509-5-17;
105
+ RA Burkard T.R., Planyavsky M., Kaupe I., Breitwieser F.P., Buerckstuemmer T.,
106
+ RA Bennett K.L., Superti-Furga G., Colinge J.;
107
+ RT "Initial characterization of the human central proteome.";
108
+ RL BMC Syst. Biol. 5:17-17(2011).
109
+ RN [12]
110
+ RP IDENTIFICATION BY MASS SPECTROMETRY [LARGE SCALE ANALYSIS].
111
+ RX PubMed=25944712; DOI=10.1002/pmic.201400617;
112
+ RA Vaca Jacome A.S., Rabilloud T., Schaeffer-Reiss C., Rompais M., Ayoub D.,
113
+ RA Lane L., Bairoch A., Van Dorsselaer A., Carapito C.;
114
+ RT "N-terminome analysis of the human mitochondrial proteome.";
115
+ RL Proteomics 15:2519-2524(2015).
116
+ RN [13]
117
+ RP X-RAY CRYSTALLOGRAPHY (1.91 ANGSTROMS) OF 45-300, AND DISULFIDE BONDS.
118
+ RX PubMed=16154090; DOI=10.1016/j.str.2005.05.012;
119
+ RA Liu Q., Kriksunov I.A., Graeff R., Munshi C., Lee H.C., Hao Q.;
120
+ RT "Crystal structure of human CD38 extracellular domain.";
121
+ RL Structure 13:1331-1339(2005).
122
+ RN [14]
123
+ RP VARIANT TRP-140.
124
+ RX PubMed=9754820; DOI=10.1007/s001250051026;
125
+ RA Yagui K., Shimada F., Mimura M., Hashimoto N., Suzuki Y., Tokuyama Y.,
126
+ RA Nata K., Tohgo A., Ikehata F., Takasawa S., Okamoto H., Makino H.,
127
+ RA Saito Y., Kanatsuka A.;
128
+ RT "A missense mutation in the CD38 gene, a novel factor for insulin
129
+ RT secretion: association with Type II diabetes mellitus in Japanese subjects
130
+ RT and evidence of abnormal function when expressed in vitro.";
131
+ RL Diabetologia 41:1024-1028(1998).
132
+ CC -!- FUNCTION: Synthesizes the second messengers cyclic ADP-ribose and
133
+ CC nicotinate-adenine dinucleotide phosphate, the former a second
134
+ CC messenger for glucose-induced insulin secretion. Also has cADPr
135
+ CC hydrolase activity. Also moonlights as a receptor in cells of the
136
+ CC immune system.
137
+ CC -!- CATALYTIC ACTIVITY:
138
+ CC Reaction=H2O + NAD(+) = ADP-D-ribose + H(+) + nicotinamide;
139
+ CC Xref=Rhea:RHEA:16301, ChEBI:CHEBI:15377, ChEBI:CHEBI:15378,
140
+ CC ChEBI:CHEBI:17154, ChEBI:CHEBI:57540, ChEBI:CHEBI:57967; EC=3.2.2.6;
141
+ CC Evidence={ECO:0000269|PubMed:16690024};
142
+ CC -!- CATALYTIC ACTIVITY:
143
+ CC Reaction=NADP(+) + nicotinate = nicotinamide + nicotinate-adenine
144
+ CC dinucleotide phosphate; Xref=Rhea:RHEA:38599, ChEBI:CHEBI:17154,
145
+ CC ChEBI:CHEBI:32544, ChEBI:CHEBI:58349, ChEBI:CHEBI:75967;
146
+ CC EC=2.4.99.20; Evidence={ECO:0000269|PubMed:16690024};
147
+ CC -!- ACTIVITY REGULATION: ATP inhibits the hydrolyzing activity.
148
+ CC -!- SUBCELLULAR LOCATION: Membrane; Single-pass type II membrane protein.
149
+ CC -!- ALTERNATIVE PRODUCTS:
150
+ CC Event=Alternative splicing; Named isoforms=2;
151
+ CC Name=1;
152
+ CC IsoId=P28907-1; Sequence=Displayed;
153
+ CC Name=2;
154
+ CC IsoId=P28907-2; Sequence=VSP_000707, VSP_000708;
155
+ CC -!- TISSUE SPECIFICITY: Expressed at high levels in pancreas, liver,
156
+ CC kidney, brain, testis, ovary, placenta, malignant lymphoma and
157
+ CC neuroblastoma. {ECO:0000269|PubMed:9074508}.
158
+ CC -!- DEVELOPMENTAL STAGE: Preferentially expressed at both early and late
159
+ CC stages of the B and T-cell maturation. It is also detected on erythroid
160
+ CC and myeloid progenitors in bone marrow, where the level of surface
161
+ CC expression was shown to decrease during differentiation of blast-
162
+ CC forming unit E to colony-forming unit E.
163
+ CC -!- MISCELLANEOUS: [Isoform 2]: May be produced at very low levels due to a
164
+ CC premature stop codon in the mRNA, leading to nonsense-mediated mRNA
165
+ CC decay. {ECO:0000305}.
166
+ CC -!- SIMILARITY: Belongs to the ADP-ribosyl cyclase family. {ECO:0000305}.
167
+ CC -!- WEB RESOURCE: Name=Wikipedia; Note=CD38 entry;
168
+ CC URL="https://en.wikipedia.org/wiki/CD38";
169
+ CC -!- WEB RESOURCE: Name=Atlas of Genetics and Cytogenetics in Oncology and
170
+ CC Haematology;
171
+ CC URL="http://atlasgeneticsoncology.org/Genes/CD38ID978ch4p15.html";
172
+ CC ---------------------------------------------------------------------------
173
+ CC Copyrighted by the UniProt Consortium, see https://www.uniprot.org/terms
174
+ CC Distributed under the Creative Commons Attribution (CC BY 4.0) License
175
+ CC ---------------------------------------------------------------------------
176
+ DR EMBL; M34461; AAA68482.1; -; mRNA.
177
+ DR EMBL; D84276; BAA18964.1; -; mRNA.
178
+ DR EMBL; D84277; BAA18965.1; -; mRNA.
179
+ DR EMBL; D84284; BAA18966.1; -; Genomic_DNA.
180
+ DR EMBL; BC007964; AAH07964.1; -; mRNA.
181
+ DR CCDS; CCDS3417.1; -. [P28907-1]
182
+ DR PIR; A43521; A43521.
183
+ DR RefSeq; NP_001766.2; NM_001775.3. [P28907-1]
184
+ DR PDB; 1YH3; X-ray; 1.91 A; A/B=45-300.
185
+ DR PDB; 1ZVM; X-ray; 2.20 A; A/B/C/D=45-300.
186
+ DR PDB; 2EF1; X-ray; 2.40 A; A/B=45-300.
187
+ DR PDB; 2HCT; X-ray; 1.95 A; A/B=45-300.
188
+ DR PDB; 2I65; X-ray; 1.90 A; A/B=45-300.
189
+ DR PDB; 2I66; X-ray; 1.70 A; A/B=45-300.
190
+ DR PDB; 2I67; X-ray; 1.71 A; A/B=45-300.
191
+ DR PDB; 2O3Q; X-ray; 1.98 A; A/B=45-300.
192
+ DR PDB; 2O3R; X-ray; 1.75 A; A/B=45-300.
193
+ DR PDB; 2O3S; X-ray; 1.50 A; A/B=45-300.
194
+ DR PDB; 2O3T; X-ray; 1.68 A; A/B=45-300.
195
+ DR PDB; 2O3U; X-ray; 2.11 A; A/B=45-300.
196
+ DR PDB; 2PGJ; X-ray; 1.71 A; A/B=45-300.
197
+ DR PDB; 2PGL; X-ray; 1.76 A; A/B=45-300.
198
+ DR PDB; 3DZF; X-ray; 2.01 A; A/B/C/D/E/F=45-300.
199
+ DR PDB; 3DZG; X-ray; 1.65 A; A/B=45-300.
200
+ DR PDB; 3DZH; X-ray; 1.60 A; A/B=45-300.
201
+ DR PDB; 3DZI; X-ray; 1.73 A; A/B=45-300.
202
+ DR PDB; 3DZJ; X-ray; 1.90 A; A/B=45-300.
203
+ DR PDB; 3DZK; X-ray; 1.81 A; A/B=45-300.
204
+ DR PDB; 3F6Y; X-ray; 1.45 A; A=45-300.
205
+ DR PDB; 3I9M; X-ray; 1.75 A; A/B=45-300.
206
+ DR PDB; 3I9N; X-ray; 2.01 A; A/B=45-300.
207
+ DR PDB; 3OFS; X-ray; 2.20 A; A/B/C/D/E/F=46-300.
208
+ DR PDB; 3RAJ; X-ray; 3.04 A; A=46-300.
209
+ DR PDB; 3ROK; X-ray; 1.65 A; A/B=45-296.
210
+ DR PDB; 3ROM; X-ray; 2.04 A; A/B=45-296.
211
+ DR PDB; 3ROP; X-ray; 1.94 A; A/B=45-296.
212
+ DR PDB; 3ROQ; X-ray; 2.10 A; A/B=45-296.
213
+ DR PDB; 3U4H; X-ray; 1.88 A; A/B=45-300.
214
+ DR PDB; 3U4I; X-ray; 2.12 A; A/B=45-300.
215
+ DR PDB; 4CMH; X-ray; 1.53 A; A=45-300.
216
+ DR PDB; 4F45; X-ray; 2.10 A; A/B=46-300.
217
+ DR PDB; 4F46; X-ray; 1.69 A; A/B=46-300.
218
+ DR PDB; 4OGW; X-ray; 2.05 A; A=46-300.
219
+ DR PDB; 4TMF; X-ray; 2.05 A; A/B=50-300.
220
+ DR PDB; 4XJS; X-ray; 2.80 A; A=46-300.
221
+ DR PDB; 4XJT; X-ray; 2.60 A; A=46-300.
222
+ DR PDB; 5F1K; X-ray; 2.30 A; A/B=45-300.
223
+ DR PDB; 5F1O; X-ray; 2.20 A; A=46-300.
224
+ DR PDB; 5F21; X-ray; 1.90 A; A=46-300.
225
+ DR PDB; 6EDR; X-ray; 2.40 A; A/B=45-300.
226
+ DR PDB; 6VUA; X-ray; 1.50 A; A/B=45-300.
227
+ DR PDB; 7DHA; X-ray; 2.55 A; A=45-300.
228
+ DR PDB; 7DUO; X-ray; 2.81 A; B=57-285.
229
+ DR PDBsum; 1YH3; -.
230
+ DR PDBsum; 1ZVM; -.
231
+ DR PDBsum; 2EF1; -.
232
+ DR PDBsum; 2HCT; -.
233
+ DR PDBsum; 2I65; -.
234
+ DR PDBsum; 2I66; -.
235
+ DR PDBsum; 2I67; -.
236
+ DR PDBsum; 2O3Q; -.
237
+ DR PDBsum; 2O3R; -.
238
+ DR PDBsum; 2O3S; -.
239
+ DR PDBsum; 2O3T; -.
240
+ DR PDBsum; 2O3U; -.
241
+ DR PDBsum; 2PGJ; -.
242
+ DR PDBsum; 2PGL; -.
243
+ DR PDBsum; 3DZF; -.
244
+ DR PDBsum; 3DZG; -.
245
+ DR PDBsum; 3DZH; -.
246
+ DR PDBsum; 3DZI; -.
247
+ DR PDBsum; 3DZJ; -.
248
+ DR PDBsum; 3DZK; -.
249
+ DR PDBsum; 3F6Y; -.
250
+ DR PDBsum; 3I9M; -.
251
+ DR PDBsum; 3I9N; -.
252
+ DR PDBsum; 3OFS; -.
253
+ DR PDBsum; 3RAJ; -.
254
+ DR PDBsum; 3ROK; -.
255
+ DR PDBsum; 3ROM; -.
256
+ DR PDBsum; 3ROP; -.
257
+ DR PDBsum; 3ROQ; -.
258
+ DR PDBsum; 3U4H; -.
259
+ DR PDBsum; 3U4I; -.
260
+ DR PDBsum; 4CMH; -.
261
+ DR PDBsum; 4F45; -.
262
+ DR PDBsum; 4F46; -.
263
+ DR PDBsum; 4OGW; -.
264
+ DR PDBsum; 4TMF; -.
265
+ DR PDBsum; 4XJS; -.
266
+ DR PDBsum; 4XJT; -.
267
+ DR PDBsum; 5F1K; -.
268
+ DR PDBsum; 5F1O; -.
269
+ DR PDBsum; 5F21; -.
270
+ DR PDBsum; 6EDR; -.
271
+ DR PDBsum; 6VUA; -.
272
+ DR PDBsum; 7DHA; -.
273
+ DR PDBsum; 7DUO; -.
274
+ DR AlphaFoldDB; P28907; -.
275
+ DR SMR; P28907; -.
276
+ DR BioGRID; 107390; 10.
277
+ DR IntAct; P28907; 5.
278
+ DR STRING; 9606.ENSP00000226279; -.
279
+ DR BindingDB; P28907; -.
280
+ DR ChEMBL; CHEMBL4660; -.
281
+ DR DrugBank; DB09331; Daratumumab.
282
+ DR DrugBank; DB14811; Isatuximab.
283
+ DR DrugBank; DB16370; Mezagitamab.
284
+ DR DrugCentral; P28907; -.
285
+ DR GuidetoPHARMACOLOGY; 2766; -.
286
+ DR GlyConnect; 997; 1 N-Linked glycan (1 site).
287
+ DR GlyGen; P28907; 5 sites, 1 N-linked glycan (1 site).
288
+ DR iPTMnet; P28907; -.
289
+ DR PhosphoSitePlus; P28907; -.
290
+ DR SwissPalm; P28907; -.
291
+ DR BioMuta; CD38; -.
292
+ DR DMDM; 55977782; -.
293
+ DR EPD; P28907; -.
294
+ DR jPOST; P28907; -.
295
+ DR MassIVE; P28907; -.
296
+ DR MaxQB; P28907; -.
297
+ DR PaxDb; P28907; -.
298
+ DR PeptideAtlas; P28907; -.
299
+ DR PRIDE; P28907; -.
300
+ DR ProteomicsDB; 54507; -. [P28907-1]
301
+ DR ProteomicsDB; 54508; -. [P28907-2]
302
+ DR ABCD; P28907; 65 sequenced antibodies.
303
+ DR Antibodypedia; 9844; 2499 antibodies from 55 providers.
304
+ DR CPTC; P28907; 1 antibody.
305
+ DR DNASU; 952; -.
306
+ DR Ensembl; ENST00000226279.8; ENSP00000226279.2; ENSG00000004468.13. [P28907-1]
307
+ DR Ensembl; ENST00000502843.5; ENSP00000427277.1; ENSG00000004468.13. [P28907-2]
308
+ DR GeneID; 952; -.
309
+ DR KEGG; hsa:952; -.
310
+ DR MANE-Select; ENST00000226279.8; ENSP00000226279.2; NM_001775.4; NP_001766.2.
311
+ DR UCSC; uc003gol.2; human. [P28907-1]
312
+ DR CTD; 952; -.
313
+ DR DisGeNET; 952; -.
314
+ DR GeneCards; CD38; -.
315
+ DR HGNC; HGNC:1667; CD38.
316
+ DR HPA; ENSG00000004468; Tissue enhanced (lymphoid).
317
+ DR MIM; 107270; gene.
318
+ DR neXtProt; NX_P28907; -.
319
+ DR OpenTargets; ENSG00000004468; -.
320
+ DR PharmGKB; PA26214; -.
321
+ DR VEuPathDB; HostDB:ENSG00000004468; -.
322
+ DR eggNOG; ENOG502S1HV; Eukaryota.
323
+ DR GeneTree; ENSGT00390000017291; -.
324
+ DR HOGENOM; CLU_2025937_0_0_1; -.
325
+ DR InParanoid; P28907; -.
326
+ DR OMA; MNYDSCP; -.
327
+ DR PhylomeDB; P28907; -.
328
+ DR TreeFam; TF332530; -.
329
+ DR BioCyc; MetaCyc:HS00103-MON; -.
330
+ DR BRENDA; 2.4.99.20; 2681.
331
+ DR BRENDA; 3.2.2.5; 2681.
332
+ DR BRENDA; 3.2.2.6; 2681.
333
+ DR PathwayCommons; P28907; -.
334
+ DR Reactome; R-HSA-196807; Nicotinate metabolism.
335
+ DR SABIO-RK; P28907; -.
336
+ DR SignaLink; P28907; -.
337
+ DR SIGNOR; P28907; -.
338
+ DR BioGRID-ORCS; 952; 8 hits in 1077 CRISPR screens.
339
+ DR ChiTaRS; CD38; human.
340
+ DR EvolutionaryTrace; P28907; -.
341
+ DR GeneWiki; CD38; -.
342
+ DR GenomeRNAi; 952; -.
343
+ DR Pharos; P28907; Tclin.
344
+ DR PRO; PR:P28907; -.
345
+ DR Proteomes; UP000005640; Chromosome 4.
346
+ DR RNAct; P28907; protein.
347
+ DR Bgee; ENSG00000004468; Expressed in seminal vesicle and 129 other tissues.
348
+ DR ExpressionAtlas; P28907; baseline and differential.
349
+ DR Genevisible; P28907; HS.
350
+ DR GO; GO:0016323; C:basolateral plasma membrane; IEA:Ensembl.
351
+ DR GO; GO:0009986; C:cell surface; IEA:Ensembl.
352
+ DR GO; GO:0070062; C:extracellular exosome; HDA:UniProtKB.
353
+ DR GO; GO:0016021; C:integral component of membrane; IEA:UniProtKB-KW.
354
+ DR GO; GO:0016020; C:membrane; TAS:ProtInc.
355
+ DR GO; GO:0005634; C:nucleus; IEA:Ensembl.
356
+ DR GO; GO:0005886; C:plasma membrane; IDA:HPA.
357
+ DR GO; GO:0030667; C:secretory granule membrane; IEA:Ensembl.
358
+ DR GO; GO:0042802; F:identical protein binding; IEA:Ensembl.
359
+ DR GO; GO:0050135; F:NAD(P)+ nucleosidase activity; IEA:UniProtKB-EC.
360
+ DR GO; GO:0003953; F:NAD+ nucleosidase activity; IBA:GO_Central.
361
+ DR GO; GO:0061809; F:NAD+ nucleotidase, cyclic ADP-ribose generating; IEA:UniProtKB-EC.
362
+ DR GO; GO:0016849; F:phosphorus-oxygen lyase activity; IBA:GO_Central.
363
+ DR GO; GO:0016740; F:transferase activity; IEA:UniProtKB-KW.
364
+ DR GO; GO:0097190; P:apoptotic signaling pathway; TAS:ProtInc.
365
+ DR GO; GO:0014824; P:artery smooth muscle contraction; IEA:Ensembl.
366
+ DR GO; GO:0042100; P:B cell proliferation; IEA:Ensembl.
367
+ DR GO; GO:0050853; P:B cell receptor signaling pathway; IMP:UniProtKB.
368
+ DR GO; GO:0007565; P:female pregnancy; IEA:Ensembl.
369
+ DR GO; GO:0060292; P:long-term synaptic depression; IEA:Ensembl.
370
+ DR GO; GO:0019674; P:NAD metabolic process; TAS:Reactome.
371
+ DR GO; GO:0043066; P:negative regulation of apoptotic process; IMP:UniProtKB.
372
+ DR GO; GO:0045779; P:negative regulation of bone resorption; IEA:Ensembl.
373
+ DR GO; GO:0010977; P:negative regulation of neuron projection development; IEA:Ensembl.
374
+ DR GO; GO:0045892; P:negative regulation of transcription, DNA-templated; IMP:UniProtKB.
375
+ DR GO; GO:0030890; P:positive regulation of B cell proliferation; IMP:UniProtKB.
376
+ DR GO; GO:0030307; P:positive regulation of cell growth; IEA:Ensembl.
377
+ DR GO; GO:0007204; P:positive regulation of cytosolic calcium ion concentration; IEA:Ensembl.
378
+ DR GO; GO:0032024; P:positive regulation of insulin secretion; IEA:Ensembl.
379
+ DR GO; GO:0045893; P:positive regulation of transcription, DNA-templated; IMP:UniProtKB.
380
+ DR GO; GO:0045907; P:positive regulation of vasoconstriction; IEA:Ensembl.
381
+ DR GO; GO:0032355; P:response to estradiol; IEA:Ensembl.
382
+ DR GO; GO:0033194; P:response to hydroperoxide; IEA:Ensembl.
383
+ DR GO; GO:0001666; P:response to hypoxia; IEA:Ensembl.
384
+ DR GO; GO:0070555; P:response to interleukin-1; IEA:Ensembl.
385
+ DR GO; GO:0032570; P:response to progesterone; IEA:Ensembl.
386
+ DR GO; GO:0032526; P:response to retinoic acid; IEA:Ensembl.
387
+ DR GO; GO:0009410; P:response to xenobiotic stimulus; IMP:UniProtKB.
388
+ DR GO; GO:0007165; P:signal transduction; NAS:ProtInc.
389
+ DR CDD; cd04759; Rib_hydrolase; 1.
390
+ DR InterPro; IPR003193; ADP-ribosyl_cyclase.
391
+ DR InterPro; IPR033567; CD38.
392
+ DR PANTHER; PTHR10912; PTHR10912; 1.
393
+ DR PANTHER; PTHR10912:SF5; PTHR10912:SF5; 1.
394
+ DR Pfam; PF02267; Rib_hydrolayse; 1.
395
+ PE 1: Evidence at protein level;
396
+ KW 3D-structure; Alternative splicing; Diabetes mellitus; Disulfide bond;
397
+ KW Glycoprotein; Hydrolase; Membrane; NAD; NADP; Receptor; Reference proteome;
398
+ KW Signal-anchor; Transferase; Transmembrane; Transmembrane helix.
399
+ FT CHAIN 1..300
400
+ FT /note="ADP-ribosyl cyclase/cyclic ADP-ribose hydrolase 1"
401
+ FT /id="PRO_0000144066"
402
+ FT TOPO_DOM 1..21
403
+ FT /note="Cytoplasmic"
404
+ FT /evidence="ECO:0000255"
405
+ FT TRANSMEM 22..42
406
+ FT /note="Helical; Signal-anchor for type II membrane protein"
407
+ FT /evidence="ECO:0000255"
408
+ FT TOPO_DOM 43..300
409
+ FT /note="Extracellular"
410
+ FT /evidence="ECO:0000255"
411
+ FT ACT_SITE 119
412
+ FT /evidence="ECO:0000269|PubMed:7961800"
413
+ FT ACT_SITE 201
414
+ FT /evidence="ECO:0000269|PubMed:7961800"
415
+ FT CARBOHYD 100
416
+ FT /note="N-linked (GlcNAc...) asparagine"
417
+ FT /evidence="ECO:0000269|PubMed:19159218"
418
+ FT CARBOHYD 164
419
+ FT /note="N-linked (GlcNAc...) asparagine"
420
+ FT /evidence="ECO:0000255"
421
+ FT CARBOHYD 209
422
+ FT /note="N-linked (GlcNAc...) asparagine"
423
+ FT /evidence="ECO:0000269|PubMed:19159218"
424
+ FT CARBOHYD 219
425
+ FT /note="N-linked (GlcNAc...) asparagine"
426
+ FT /evidence="ECO:0000269|PubMed:19159218,
427
+ FT ECO:0000269|PubMed:19349973"
428
+ FT DISULFID 67..82
429
+ FT /evidence="ECO:0000269|PubMed:16154090"
430
+ FT DISULFID 99..180
431
+ FT /evidence="ECO:0000269|PubMed:16154090"
432
+ FT DISULFID 160..173
433
+ FT /evidence="ECO:0000269|PubMed:16154090"
434
+ FT DISULFID 254..275
435
+ FT /evidence="ECO:0000269|PubMed:16154090"
436
+ FT DISULFID 287..296
437
+ FT /evidence="ECO:0000269|PubMed:16154090"
438
+ FT VAR_SEQ 122
439
+ FT /note="I -> K (in isoform 2)"
440
+ FT /evidence="ECO:0000303|PubMed:9074508"
441
+ FT /id="VSP_000707"
442
+ FT VAR_SEQ 123..300
443
+ FT /note="Missing (in isoform 2)"
444
+ FT /evidence="ECO:0000303|PubMed:9074508"
445
+ FT /id="VSP_000708"
446
+ FT VARIANT 140
447
+ FT /note="R -> W (seems to contribute to the development of
448
+ FT type II diabetes; 50% reduction in activity;
449
+ FT dbSNP:rs1800561)"
450
+ FT /evidence="ECO:0000269|PubMed:9754820"
451
+ FT /id="VAR_001323"
452
+ FT MUTAGEN 119
453
+ FT /note="C->K: Loss of cADPr hydrolase activity."
454
+ FT /evidence="ECO:0000269|PubMed:7961800"
455
+ FT MUTAGEN 119
456
+ FT /note="C->R,E,A: Loss of cADPr hydrolase and ADP-ribosyl
457
+ FT cyclase activity."
458
+ FT /evidence="ECO:0000269|PubMed:7961800"
459
+ FT MUTAGEN 160
460
+ FT /note="C->A: Loss of cADPr hydrolase and ADP-ribosyl
461
+ FT cyclase activity."
462
+ FT /evidence="ECO:0000269|PubMed:7961800"
463
+ FT MUTAGEN 173
464
+ FT /note="C->A: Loss of cADPr hydrolase and ADP-ribosyl
465
+ FT cyclase activity."
466
+ FT /evidence="ECO:0000269|PubMed:7961800"
467
+ FT MUTAGEN 201
468
+ FT /note="C->D,K,A: Loss of cADPr hydrolase and ADP-ribosyl
469
+ FT cyclase activity."
470
+ FT /evidence="ECO:0000269|PubMed:7961800"
471
+ FT MUTAGEN 201
472
+ FT /note="C->E: Loss of cADPr hydrolase activity."
473
+ FT /evidence="ECO:0000269|PubMed:7961800"
474
+ FT CONFLICT 49
475
+ FT /note="Q -> T (in Ref. 1; AAA68482)"
476
+ FT /evidence="ECO:0000305"
477
+ FT STRAND 51..53
478
+ FT /evidence="ECO:0007829|PDB:3F6Y"
479
+ FT HELIX 59..73
480
+ FT /evidence="ECO:0007829|PDB:3F6Y"
481
+ FT HELIX 75..77
482
+ FT /evidence="ECO:0007829|PDB:2O3S"
483
+ FT HELIX 82..93
484
+ FT /evidence="ECO:0007829|PDB:3F6Y"
485
+ FT STRAND 94..96
486
+ FT /evidence="ECO:0007829|PDB:3RAJ"
487
+ FT HELIX 98..100
488
+ FT /evidence="ECO:0007829|PDB:3F6Y"
489
+ FT HELIX 103..106
490
+ FT /evidence="ECO:0007829|PDB:3F6Y"
491
+ FT HELIX 107..112
492
+ FT /evidence="ECO:0007829|PDB:3F6Y"
493
+ FT HELIX 119..121
494
+ FT /evidence="ECO:0007829|PDB:3F6Y"
495
+ FT STRAND 122..127
496
+ FT /evidence="ECO:0007829|PDB:2O3S"
497
+ FT STRAND 132..134
498
+ FT /evidence="ECO:0007829|PDB:3F6Y"
499
+ FT HELIX 136..141
500
+ FT /evidence="ECO:0007829|PDB:3F6Y"
501
+ FT STRAND 142..144
502
+ FT /evidence="ECO:0007829|PDB:3RAJ"
503
+ FT HELIX 145..147
504
+ FT /evidence="ECO:0007829|PDB:3F6Y"
505
+ FT HELIX 149..154
506
+ FT /evidence="ECO:0007829|PDB:3F6Y"
507
+ FT STRAND 165..167
508
+ FT /evidence="ECO:0007829|PDB:3F6Y"
509
+ FT STRAND 171..173
510
+ FT /evidence="ECO:0007829|PDB:3F6Y"
511
+ FT TURN 176..179
512
+ FT /evidence="ECO:0007829|PDB:3F6Y"
513
+ FT STRAND 181..183
514
+ FT /evidence="ECO:0007829|PDB:3F6Y"
515
+ FT HELIX 184..199
516
+ FT /evidence="ECO:0007829|PDB:3F6Y"
517
+ FT STRAND 202..209
518
+ FT /evidence="ECO:0007829|PDB:3F6Y"
519
+ FT STRAND 212..216
520
+ FT /evidence="ECO:0007829|PDB:3F6Y"
521
+ FT STRAND 218..220
522
+ FT /evidence="ECO:0007829|PDB:2EF1"
523
+ FT HELIX 221..224
524
+ FT /evidence="ECO:0007829|PDB:3F6Y"
525
+ FT HELIX 227..229
526
+ FT /evidence="ECO:0007829|PDB:3F6Y"
527
+ FT TURN 232..234
528
+ FT /evidence="ECO:0007829|PDB:3F6Y"
529
+ FT STRAND 235..243
530
+ FT /evidence="ECO:0007829|PDB:3F6Y"
531
+ FT STRAND 246..249
532
+ FT /evidence="ECO:0007829|PDB:3F6Y"
533
+ FT HELIX 253..255
534
+ FT /evidence="ECO:0007829|PDB:3F6Y"
535
+ FT HELIX 257..268
536
+ FT /evidence="ECO:0007829|PDB:3F6Y"
537
+ FT STRAND 272..278
538
+ FT /evidence="ECO:0007829|PDB:3F6Y"
539
+ FT HELIX 281..289
540
+ FT /evidence="ECO:0007829|PDB:2O3S"
541
+ FT TURN 291..293
542
+ FT /evidence="ECO:0007829|PDB:3DZG"
543
+ FT HELIX 294..296
544
+ FT /evidence="ECO:0007829|PDB:5F21"
545
+ SQ SEQUENCE 300 AA; 34328 MW; 47BBE38C3DE3E6AA CRC64;
546
+ MANCEFSPVS GDKPCCRLSR RAQLCLGVSI LVLILVVVLA VVVPRWRQQW SGPGTTKRFP
547
+ ETVLARCVKY TEIHPEMRHV DCQSVWDAFK GAFISKHPCN ITEEDYQPLM KLGTQTVPCN
548
+ KILLWSRIKD LAHQFTQVQR DMFTLEDTLL GYLADDLTWC GEFNTSKINY QSCPDWRKDC
549
+ SNNPVSVFWK TVSRRFAEAA CDVVHVMLNG SRSKIFDKNS TFGSVEVHNL QPEKVQTLEA
550
+ WVIHGGREDS RDLCQDPTIK ELESIISKRN IQFSCKNIYR PDKFLQCVKN PEDSSCTSEI
551
+ //
@@ -0,0 +1,325 @@
1
+ # frozen_string_literal: true
2
+ #
3
+ # test/unit/bio/db/embl/test_uniprotkb_P28907.rb - Unit tests for Bio::UniProtKB
4
+ #
5
+ # Copyright::: Copyright (C) 2022 BioRuby Project <staff@bioruby.org>
6
+ # License:: The Ruby License
7
+ # Contributor:: 2005 Mitsuteru Nakao <n@bioruby.org>
8
+ # 2022 Naohisa Goto <ng@bioruby.org>
9
+ #
10
+
11
+ # loading helper routine for testing bioruby
12
+ require 'pathname'
13
+ load Pathname.new(File.join(File.dirname(__FILE__), ['..'] * 4,
14
+ 'bioruby_test_helper.rb')).cleanpath.to_s
15
+
16
+ # libraries needed for the tests
17
+ require 'test/unit'
18
+ require 'bio/db/embl/uniprotkb'
19
+
20
+ module Bio
21
+ class TestUniProtKB_P28907 < Test::Unit::TestCase
22
+
23
+ def setup
24
+ data = File.read(File.join(BioRubyTestDataPath,
25
+ 'uniprot', 'P28907.uniprot'))
26
+ @obj = Bio::UniProtKB.new(data)
27
+ end
28
+
29
+ def test_id_line
30
+ assert(@obj.id_line)
31
+ end
32
+
33
+ def test_id_line_entry_name
34
+ assert_equal('CD38_HUMAN', @obj.id_line('ENTRY_NAME'))
35
+ end
36
+
37
+ def test_id_line_data_class
38
+ assert_equal('Reviewed', @obj.id_line('DATA_CLASS'))
39
+ end
40
+
41
+ #def test_id_line_molecule_type
42
+ # assert_equal('PRT', @obj.id_line('MOLECULE_TYPE'))
43
+ #end
44
+
45
+ def test_id_line_sequence_length
46
+ assert_equal(300, @obj.id_line('SEQUENCE_LENGTH'))
47
+ end
48
+
49
+ def test_entry
50
+ entry = 'CD38_HUMAN'
51
+ assert_equal(entry, @obj.entry)
52
+ assert_equal(entry, @obj.entry_name)
53
+ assert_equal(entry, @obj.entry_id)
54
+ end
55
+
56
+ #def test_molecule
57
+ # assert_equal('PRT', @obj.molecule)
58
+ # assert_equal('PRT', @obj.molecule_type)
59
+ #end
60
+
61
+ def test_sequence_length
62
+ seqlen = 300
63
+ assert_equal(seqlen, @obj.sequence_length)
64
+ assert_equal(seqlen, @obj.aalen)
65
+ end
66
+
67
+ def test_ac
68
+ acs = ["P28907", "O00121", "O00122", "Q96HY4"].freeze
69
+ assert_equal(acs, @obj.ac)
70
+ assert_equal(acs, @obj.accessions)
71
+ end
72
+
73
+ def test_accession
74
+ assert_equal('P28907', @obj.accession)
75
+ end
76
+
77
+ def test_dr
78
+ assert_equal(81, @obj.dr.size)
79
+ assert_equal(39, @obj.dr['GO'].size)
80
+ assert_equal([["IPR003193", "ADP-ribosyl_cyclase"],
81
+ ["IPR033567", "CD38"]],
82
+ @obj.dr['InterPro'])
83
+ end
84
+
85
+ def test_dr_with_key
86
+ pfam = [{" " => "1",
87
+ "Version" => "Rib_hydrolayse",
88
+ "Accession" => "PF02267",
89
+ "Molecular Type" => nil
90
+ }].freeze
91
+ assert_equal(pfam, @obj.dr('Pfam'))
92
+ embl = [{"Accession" => "M34461",
93
+ "Version" => "AAA68482.1",
94
+ " " => "-",
95
+ "Molecular Type" => "mRNA"},
96
+ {"Accession" => "D84276",
97
+ "Version" => "BAA18964.1",
98
+ " " => "-",
99
+ "Molecular Type" => "mRNA"},
100
+ {"Accession" => "D84277",
101
+ "Version" => "BAA18965.1",
102
+ " " => "-",
103
+ "Molecular Type" => "mRNA"},
104
+ {"Accession" => "D84284",
105
+ "Version" => "BAA18966.1",
106
+ " " => "-",
107
+ "Molecular Type" => "Genomic_DNA"},
108
+ {"Accession" => "BC007964",
109
+ "Version" => "AAH07964.1",
110
+ " " => "-",
111
+ "Molecular Type" => "mRNA"}].freeze
112
+ assert_equal(embl, @obj.dr('EMBL'))
113
+ end
114
+
115
+ def test_dr_with_key_empty
116
+ assert_equal([], @obj.dr('NOT_A_DATABASE'))
117
+ end
118
+
119
+ def test_dt
120
+ assert(@obj.dt)
121
+ end
122
+
123
+ def test_dt_created
124
+ assert_equal('01-DEC-1992, integrated into UniProtKB/Swiss-Prot.',
125
+ @obj.dt('created'))
126
+ end
127
+
128
+ def test_dt_sequence
129
+ assert_equal('23-NOV-2004, sequence version 2.',
130
+ @obj.dt('sequence'))
131
+ end
132
+
133
+ def test_dt_annotation
134
+ assert_equal('03-AUG-2022, entry version 213.',
135
+ @obj.dt('annotation'))
136
+ end
137
+
138
+ def test_de
139
+ assert(@obj.de)
140
+ end
141
+
142
+ def test_protein_name
143
+ assert_equal("ADP-ribosyl cyclase/cyclic ADP-ribose hydrolase 1",
144
+ @obj.protein_name)
145
+ end
146
+
147
+ def test_synonyms
148
+ ary = [
149
+ "EC 3.2.2.6",
150
+ "2'-phospho-ADP-ribosyl cyclase",
151
+ "2'-phospho-ADP-ribosyl cyclase/2'-phospho-cyclic-ADP-ribose transferase",
152
+ "EC 2.4.99.20",
153
+ "2'-phospho-cyclic-ADP-ribose transferase",
154
+ "ADP-ribosyl cyclase 1",
155
+ "ADPRC 1",
156
+ "Cyclic ADP-ribose hydrolase 1",
157
+ "cADPr hydrolase 1",
158
+ "T10",
159
+ "CD_antigen=CD38"
160
+ ].freeze
161
+ assert_equal(ary, @obj.synonyms)
162
+ end
163
+
164
+ def test_protein_name_after_calling_de
165
+ assert(@obj.de)
166
+ assert_equal("ADP-ribosyl cyclase/cyclic ADP-ribose hydrolase 1",
167
+ @obj.protein_name)
168
+ end
169
+
170
+ def test_synonyms_after_calling_de
171
+ assert(@obj.de)
172
+ assert_equal(11, @obj.synonyms.size)
173
+ end
174
+
175
+ def test_gn
176
+ assert_equal([{:orfs=>[], :synonyms=>[], :name=>"CD38", :loci=>[]}],
177
+ @obj.gn)
178
+ end
179
+
180
+ def test_gn_uniprot_parser
181
+ assert_equal([{:orfs=>[], :loci=>[], :name=>"CD38", :synonyms=>[]}],
182
+ @obj.instance_eval("gn_uniprot_parser"))
183
+ end
184
+
185
+ def test_gn_old_parser
186
+ assert_equal([["Name=CD38;"]],
187
+ @obj.instance_eval("gn_old_parser"))
188
+ end
189
+
190
+ def test_gene_names
191
+ assert_equal(["CD38"], @obj.gene_names)
192
+ end
193
+
194
+ def test_gene_name
195
+ assert_equal('CD38', @obj.gene_name)
196
+ end
197
+
198
+ def test_os
199
+ assert(@obj.os)
200
+ end
201
+
202
+ def test_os_access
203
+ assert_equal("Homo sapiens (Human)", @obj.os(0))
204
+ end
205
+
206
+ def test_os_access2
207
+ assert_equal({"name"=>"(Human)", "os"=>"Homo sapiens"}, @obj.os[0])
208
+ end
209
+
210
+ def test_oc
211
+ assert_equal(["Eukaryota", "Metazoa", "Chordata", "Craniata",
212
+ "Vertebrata", "Euteleostomi", "Mammalia", "Eutheria",
213
+ "Euarchontoglires", "Primates",
214
+ "Haplorrhini", "Catarrhini", "Hominidae", "Homo"],
215
+ @obj.oc)
216
+ end
217
+
218
+ def test_ox
219
+ assert_equal({"NCBI_TaxID"=>["9606"]}, @obj.ox)
220
+ end
221
+
222
+ def test_ref # Bio::UniProtKB#ref
223
+ assert_equal(Array, @obj.ref.class)
224
+ end
225
+
226
+ def test_cc
227
+ assert_equal(Hash, @obj.cc.class)
228
+ end
229
+
230
+ def test_cc_database
231
+ assert_equal(nil, @obj.cc('DATABASE'))
232
+ end
233
+
234
+ def test_cc_alternative_products
235
+ ap = { "Event"=>["Alternative splicing"],
236
+ "Named isoforms"=>"2",
237
+ "Comment"=>"",
238
+ "Variants"=>
239
+ [{"Name"=>"1",
240
+ "Synonyms"=>[],
241
+ "IsoId"=>["P28907-1"],
242
+ "Sequence"=>["Displayed"]},
243
+ {"Name"=>"2",
244
+ "Synonyms"=>[],
245
+ "IsoId"=>["P28907-2"],
246
+ "Sequence"=>["VSP_000707", "VSP_000708"]}]}
247
+ assert_equal(ap, @obj.cc('ALTERNATIVE PRODUCTS'))
248
+ end
249
+
250
+ def test_cc_mass_spectrometry
251
+ assert_equal(nil, @obj.cc('MASS SPECTROMETRY'))
252
+ end
253
+
254
+
255
+ def test_kw
256
+ keywords = ["3D-structure", "Alternative splicing",
257
+ "Diabetes mellitus", "Disulfide bond",
258
+ "Glycoprotein", "Hydrolase", "Membrane",
259
+ "NAD", "NADP", "Receptor", "Reference proteome",
260
+ "Signal-anchor", "Transferase", "Transmembrane",
261
+ "Transmembrane helix"]
262
+ assert_equal(keywords, @obj.kw)
263
+ end
264
+
265
+ def test_ft
266
+ assert(@obj.ft)
267
+ name = 'TOPO_DOM'
268
+ data = [{"From"=>1,
269
+ "To"=>21,
270
+ "diff"=>[],
271
+ "original"=>
272
+ ["TOPO_DOM",
273
+ "1",
274
+ "21",
275
+ [["note", "Cytoplasmic"],
276
+ ["evidence", "ECO:0000255"]]],
277
+ "note"=>"Cytoplasmic",
278
+ "evidence"=>"ECO:0000255"},
279
+ {"From"=>43,
280
+ "To"=>300,
281
+ "diff"=>[],
282
+ "original"=>
283
+ ["TOPO_DOM",
284
+ "43",
285
+ "300",
286
+ [["note", "Extracellular"],
287
+ ["evidence", "ECO:0000255"]]],
288
+ "note"=>"Extracellular",
289
+ "evidence"=>"ECO:0000255"}].freeze
290
+
291
+ assert_equal(data, @obj.ft[name])
292
+ end
293
+
294
+ def test_sq
295
+ assert_equal({"CRC64"=>"47BBE38C3DE3E6AA", "aalen"=>300, "MW"=>34328},
296
+ @obj.sq)
297
+ end
298
+
299
+ def test_sq_crc64
300
+ assert_equal("47BBE38C3DE3E6AA", @obj.sq('CRC64'))
301
+ end
302
+
303
+ def test_sq_mw
304
+ mw = 34328
305
+ assert_equal(mw, @obj.sq('mw'))
306
+ assert_equal(mw, @obj.sq('molecular'))
307
+ assert_equal(mw, @obj.sq('weight'))
308
+ end
309
+
310
+ def test_sq_len
311
+ length = 300
312
+ assert_equal(length, @obj.sq('len'))
313
+ assert_equal(length, @obj.sq('length'))
314
+ assert_equal(length, @obj.sq('AA'))
315
+ end
316
+
317
+ def test_seq
318
+ seq = "MANCEFSPVSGDKPCCRLSRRAQLCLGVSILVLILVVVLAVVVPRWRQQWSGPGTTKRFPETVLARCVKYTEIHPEMRHVDCQSVWDAFKGAFISKHPCNITEEDYQPLMKLGTQTVPCNKILLWSRIKDLAHQFTQVQRDMFTLEDTLLGYLADDLTWCGEFNTSKINYQSCPDWRKDCSNNPVSVFWKTVSRRFAEAACDVVHVMLNGSRSKIFDKNSTFGSVEVHNLQPEKVQTLEAWVIHGGREDSRDLCQDPTIKELESIISKRNIQFSCKNIYRPDKFLQCVKNPEDSSCTSEI"
319
+ assert_equal(seq, @obj.seq)
320
+ assert_equal(seq, @obj.aaseq)
321
+ end
322
+
323
+ end # class TestUniProtKB
324
+ end # module Bio
325
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bio
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.3
4
+ version: 2.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - BioRuby project
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-05 00:00:00.000000000 Z
11
+ date: 2022-09-13 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: BioRuby is a library for bioinformatics (biology + information science).
14
14
  email: staff@bioruby.org
@@ -465,6 +465,7 @@ files:
465
465
  - test/data/sim4/simple2-A4.sim4
466
466
  - test/data/soft/GDS100_partial.soft
467
467
  - test/data/soft/GSE3457_family_partial.soft
468
+ - test/data/uniprot/P28907.uniprot
468
469
  - test/data/uniprot/p53_human.uniprot
469
470
  - test/functional/bio/sequence/test_output_embl.rb
470
471
  - test/functional/bio/test_command.rb
@@ -509,6 +510,7 @@ files:
509
510
  - test/unit/bio/db/embl/test_embl_to_bioseq.rb
510
511
  - test/unit/bio/db/embl/test_uniprot.rb
511
512
  - test/unit/bio/db/embl/test_uniprotkb.rb
513
+ - test/unit/bio/db/embl/test_uniprotkb_P28907.rb
512
514
  - test/unit/bio/db/embl/test_uniprotkb_new_part.rb
513
515
  - test/unit/bio/db/fasta/test_defline.rb
514
516
  - test/unit/bio/db/fasta/test_defline_misc.rb