bio 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/bin/bioruby +14 -122
- data/bin/br_biofetch.rb +2 -2
- data/bin/br_bioflat.rb +2 -2
- data/bin/br_biogetseq.rb +2 -2
- data/bin/br_pmfetch.rb +3 -3
- data/doc/Changes-0.7.rd +77 -0
- data/doc/KEGG_API.rd +523 -232
- data/doc/KEGG_API.rd.ja +529 -207
- data/doc/Tutorial.rd +48 -11
- data/lib/bio.rb +59 -6
- data/lib/bio/alignment.rb +713 -103
- data/lib/bio/appl/bl2seq/report.rb +2 -18
- data/lib/bio/appl/blast.rb +108 -91
- data/lib/bio/appl/blast/format0.rb +33 -18
- data/lib/bio/appl/blast/format8.rb +6 -20
- data/lib/bio/appl/blast/report.rb +293 -429
- data/lib/bio/appl/blast/rexml.rb +8 -22
- data/lib/bio/appl/blast/wublast.rb +21 -12
- data/lib/bio/appl/blast/xmlparser.rb +180 -183
- data/lib/bio/appl/blat/report.rb +127 -30
- data/lib/bio/appl/clustalw.rb +87 -59
- data/lib/bio/appl/clustalw/report.rb +20 -22
- data/lib/bio/appl/emboss.rb +113 -20
- data/lib/bio/appl/fasta.rb +173 -198
- data/lib/bio/appl/fasta/format10.rb +244 -347
- data/lib/bio/appl/gcg/msf.rb +212 -0
- data/lib/bio/appl/gcg/seq.rb +195 -0
- data/lib/bio/appl/genscan/report.rb +5 -23
- data/lib/bio/appl/hmmer.rb +8 -45
- data/lib/bio/appl/hmmer/report.rb +2 -20
- data/lib/bio/appl/iprscan/report.rb +374 -0
- data/lib/bio/appl/mafft.rb +87 -50
- data/lib/bio/appl/mafft/report.rb +151 -44
- data/lib/bio/appl/muscle.rb +52 -0
- data/lib/bio/appl/phylip/alignment.rb +129 -0
- data/lib/bio/appl/phylip/distance_matrix.rb +96 -0
- data/lib/bio/appl/probcons.rb +41 -0
- data/lib/bio/appl/psort.rb +89 -96
- data/lib/bio/appl/psort/report.rb +6 -22
- data/lib/bio/appl/pts1.rb +263 -0
- data/lib/bio/appl/sim4.rb +26 -36
- data/lib/bio/appl/sim4/report.rb +2 -18
- data/lib/bio/appl/sosui/report.rb +5 -20
- data/lib/bio/appl/spidey/report.rb +2 -2
- data/lib/bio/appl/targetp/report.rb +4 -20
- data/lib/bio/appl/tcoffee.rb +55 -0
- data/lib/bio/appl/tmhmm/report.rb +4 -20
- data/lib/bio/command.rb +235 -64
- data/lib/bio/data/aa.rb +21 -26
- data/lib/bio/data/codontable.rb +2 -20
- data/lib/bio/data/na.rb +19 -4
- data/lib/bio/db.rb +27 -12
- data/lib/bio/db/aaindex.rb +2 -20
- data/lib/bio/db/embl/common.rb +4 -21
- data/lib/bio/db/embl/embl.rb +33 -85
- data/lib/bio/db/embl/sptr.rb +612 -302
- data/lib/bio/db/embl/swissprot.rb +10 -29
- data/lib/bio/db/embl/trembl.rb +10 -29
- data/lib/bio/db/embl/uniprot.rb +10 -29
- data/lib/bio/db/fantom.rb +15 -20
- data/lib/bio/db/fasta.rb +3 -3
- data/lib/bio/db/genbank/common.rb +37 -46
- data/lib/bio/db/genbank/ddbj.rb +6 -18
- data/lib/bio/db/genbank/genbank.rb +47 -186
- data/lib/bio/db/genbank/genpept.rb +4 -17
- data/lib/bio/db/genbank/refseq.rb +4 -17
- data/lib/bio/db/gff.rb +103 -35
- data/lib/bio/db/go.rb +4 -20
- data/lib/bio/db/kegg/brite.rb +26 -36
- data/lib/bio/db/kegg/compound.rb +81 -85
- data/lib/bio/db/kegg/drug.rb +98 -0
- data/lib/bio/db/kegg/enzyme.rb +133 -110
- data/lib/bio/db/kegg/expression.rb +2 -20
- data/lib/bio/db/kegg/genes.rb +208 -238
- data/lib/bio/db/kegg/genome.rb +164 -285
- data/lib/bio/db/kegg/glycan.rb +114 -157
- data/lib/bio/db/kegg/keggtab.rb +242 -303
- data/lib/bio/db/kegg/kgml.rb +117 -160
- data/lib/bio/db/kegg/orthology.rb +112 -0
- data/lib/bio/db/kegg/reaction.rb +54 -69
- data/lib/bio/db/kegg/taxonomy.rb +331 -0
- data/lib/bio/db/lasergene.rb +209 -0
- data/lib/bio/db/litdb.rb +3 -27
- data/lib/bio/db/medline.rb +228 -249
- data/lib/bio/db/nbrf.rb +3 -3
- data/lib/bio/db/newick.rb +510 -0
- data/lib/bio/db/nexus.rb +1854 -0
- data/lib/bio/db/pdb.rb +5 -17
- data/lib/bio/db/pdb/atom.rb +2 -18
- data/lib/bio/db/pdb/chain.rb +2 -18
- data/lib/bio/db/pdb/chemicalcomponent.rb +2 -18
- data/lib/bio/db/pdb/model.rb +2 -18
- data/lib/bio/db/pdb/pdb.rb +73 -34
- data/lib/bio/db/pdb/residue.rb +4 -20
- data/lib/bio/db/pdb/utils.rb +2 -18
- data/lib/bio/db/prosite.rb +403 -422
- data/lib/bio/db/rebase.rb +84 -40
- data/lib/bio/db/soft.rb +404 -0
- data/lib/bio/db/transfac.rb +5 -17
- data/lib/bio/feature.rb +106 -52
- data/lib/bio/io/das.rb +32 -42
- data/lib/bio/io/dbget.rb +2 -20
- data/lib/bio/io/ddbjxml.rb +77 -138
- data/lib/bio/io/ebisoap.rb +158 -0
- data/lib/bio/io/ensembl.rb +229 -0
- data/lib/bio/io/fastacmd.rb +89 -82
- data/lib/bio/io/fetch.rb +163 -96
- data/lib/bio/io/flatfile.rb +170 -73
- data/lib/bio/io/flatfile/bdb.rb +3 -16
- data/lib/bio/io/flatfile/index.rb +2 -2
- data/lib/bio/io/flatfile/indexer.rb +3 -2
- data/lib/bio/io/higet.rb +12 -31
- data/lib/bio/io/keggapi.rb +210 -269
- data/lib/bio/io/ncbisoap.rb +155 -0
- data/lib/bio/io/pubmed.rb +169 -147
- data/lib/bio/io/registry.rb +4 -20
- data/lib/bio/io/soapwsdl.rb +43 -38
- data/lib/bio/io/sql.rb +242 -305
- data/lib/bio/location.rb +407 -285
- data/lib/bio/map.rb +410 -0
- data/lib/bio/pathway.rb +558 -695
- data/lib/bio/reference.rb +272 -75
- data/lib/bio/sequence.rb +255 -13
- data/lib/bio/sequence/aa.rb +71 -10
- data/lib/bio/sequence/common.rb +187 -33
- data/lib/bio/sequence/compat.rb +59 -4
- data/lib/bio/sequence/format.rb +54 -7
- data/lib/bio/sequence/generic.rb +3 -3
- data/lib/bio/sequence/na.rb +328 -26
- data/lib/bio/shell.rb +11 -4
- data/lib/bio/shell/core.rb +221 -160
- data/lib/bio/shell/demo.rb +18 -15
- data/lib/bio/shell/interface.rb +14 -12
- data/lib/bio/shell/irb.rb +95 -0
- data/lib/bio/shell/object.rb +45 -26
- data/lib/bio/shell/plugin/blast.rb +42 -0
- data/lib/bio/shell/plugin/codon.rb +22 -14
- data/lib/bio/shell/plugin/das.rb +58 -0
- data/lib/bio/shell/plugin/emboss.rb +2 -2
- data/lib/bio/shell/plugin/entry.rb +22 -11
- data/lib/bio/shell/plugin/flatfile.rb +2 -2
- data/lib/bio/shell/plugin/keggapi.rb +13 -6
- data/lib/bio/shell/plugin/midi.rb +4 -4
- data/lib/bio/shell/plugin/obda.rb +2 -2
- data/lib/bio/shell/plugin/psort.rb +56 -0
- data/lib/bio/shell/plugin/seq.rb +35 -8
- data/lib/bio/shell/plugin/soap.rb +87 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/bioruby_generator.rb +29 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_classes.rhtml +4 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_log.rhtml +27 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_methods.rhtml +11 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_modules.rhtml +4 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_variables.rhtml +7 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby-bg.gif +0 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby-console.png +0 -0
- data/lib/bio/shell/rails/{public/images/icon.png → vendor/plugins/generators/bioruby/templates/bioruby-gem.png} +0 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby-link.gif +0 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby.css +369 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby.rhtml +47 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby_controller.rb +144 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby_helper.rb +47 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/commands.rhtml +8 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/history.rhtml +10 -0
- data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/index.rhtml +22 -0
- data/lib/bio/shell/script.rb +25 -0
- data/lib/bio/shell/setup.rb +109 -0
- data/lib/bio/shell/web.rb +70 -58
- data/lib/bio/tree.rb +850 -0
- data/lib/bio/util/color_scheme.rb +84 -107
- data/lib/bio/util/color_scheme/buried.rb +5 -24
- data/lib/bio/util/color_scheme/helix.rb +5 -24
- data/lib/bio/util/color_scheme/hydropathy.rb +5 -24
- data/lib/bio/util/color_scheme/nucleotide.rb +5 -24
- data/lib/bio/util/color_scheme/strand.rb +5 -24
- data/lib/bio/util/color_scheme/taylor.rb +5 -24
- data/lib/bio/util/color_scheme/turn.rb +5 -24
- data/lib/bio/util/color_scheme/zappo.rb +5 -24
- data/lib/bio/util/contingency_table.rb +70 -43
- data/lib/bio/util/restriction_enzyme.rb +228 -0
- data/lib/bio/util/restriction_enzyme/analysis.rb +249 -0
- data/lib/bio/util/restriction_enzyme/analysis_basic.rb +217 -0
- data/lib/bio/util/restriction_enzyme/cut_symbol.rb +107 -0
- data/lib/bio/util/restriction_enzyme/double_stranded.rb +321 -0
- data/lib/bio/util/restriction_enzyme/double_stranded/aligned_strands.rb +130 -0
- data/lib/bio/util/restriction_enzyme/double_stranded/cut_location_pair.rb +103 -0
- data/lib/bio/util/restriction_enzyme/double_stranded/cut_location_pair_in_enzyme_notation.rb +38 -0
- data/lib/bio/util/restriction_enzyme/double_stranded/cut_locations.rb +76 -0
- data/lib/bio/util/restriction_enzyme/double_stranded/cut_locations_in_enzyme_notation.rb +107 -0
- data/lib/bio/util/restriction_enzyme/enzymes.yaml +7061 -0
- data/lib/bio/util/restriction_enzyme/range/cut_range.rb +24 -0
- data/lib/bio/util/restriction_enzyme/range/cut_ranges.rb +47 -0
- data/lib/bio/util/restriction_enzyme/range/horizontal_cut_range.rb +67 -0
- data/lib/bio/util/restriction_enzyme/range/sequence_range.rb +257 -0
- data/lib/bio/util/restriction_enzyme/range/sequence_range/calculated_cuts.rb +242 -0
- data/lib/bio/util/restriction_enzyme/range/sequence_range/fragment.rb +51 -0
- data/lib/bio/util/restriction_enzyme/range/sequence_range/fragments.rb +41 -0
- data/lib/bio/util/restriction_enzyme/range/vertical_cut_range.rb +77 -0
- data/lib/bio/util/restriction_enzyme/single_strand.rb +199 -0
- data/lib/bio/util/restriction_enzyme/single_strand/cut_locations_in_enzyme_notation.rb +135 -0
- data/lib/bio/util/restriction_enzyme/single_strand_complement.rb +23 -0
- data/lib/bio/util/restriction_enzyme/string_formatting.rb +111 -0
- data/lib/bio/util/sirna.rb +4 -22
- data/sample/color_scheme_na.rb +4 -12
- data/sample/enzymes.rb +78 -0
- data/sample/goslim.rb +5 -13
- data/sample/psortplot_html.rb +4 -12
- data/test/data/blast/2.2.15.blastp.m7 +876 -0
- data/test/data/embl/AB090716.embl.rel89 +63 -0
- data/test/data/fasta/example1.txt +75 -0
- data/test/data/fasta/example2.txt +21 -0
- data/test/data/iprscan/merged.raw +32 -0
- data/test/data/iprscan/merged.txt +74 -0
- data/test/data/soft/GDS100_partial.soft +92 -0
- data/test/data/soft/GSE3457_family_partial.soft +874 -0
- data/test/functional/bio/io/test_ensembl.rb +103 -0
- data/test/functional/bio/io/test_soapwsdl.rb +5 -17
- data/test/unit/bio/appl/bl2seq/test_report.rb +2 -2
- data/test/unit/bio/appl/blast/test_report.rb +3 -16
- data/test/unit/bio/appl/blast/test_xmlparser.rb +4 -16
- data/test/unit/bio/appl/genscan/test_report.rb +3 -16
- data/test/unit/bio/appl/hmmer/test_report.rb +3 -16
- data/test/unit/bio/appl/iprscan/test_report.rb +338 -0
- data/test/unit/bio/appl/mafft/test_report.rb +63 -0
- data/test/unit/bio/appl/sosui/test_report.rb +3 -16
- data/test/unit/bio/appl/targetp/test_report.rb +3 -16
- data/test/unit/bio/appl/test_blast.rb +3 -16
- data/test/unit/bio/appl/test_fasta.rb +4 -16
- data/test/unit/bio/appl/test_pts1.rb +140 -0
- data/test/unit/bio/appl/tmhmm/test_report.rb +3 -16
- data/test/unit/bio/data/test_aa.rb +4 -17
- data/test/unit/bio/data/test_codontable.rb +3 -16
- data/test/unit/bio/data/test_na.rb +3 -3
- data/test/unit/bio/db/embl/test_common.rb +3 -16
- data/test/unit/bio/db/embl/test_embl.rb +3 -16
- data/test/unit/bio/db/embl/test_embl_rel89.rb +219 -0
- data/test/unit/bio/db/embl/test_sptr.rb +1548 -41
- data/test/unit/bio/db/embl/test_uniprot.rb +3 -16
- data/test/unit/bio/db/kegg/test_genes.rb +3 -16
- data/test/unit/bio/db/pdb/test_pdb.rb +7 -24
- data/test/unit/bio/db/test_aaindex.rb +2 -2
- data/test/unit/bio/db/test_fasta.rb +3 -16
- data/test/unit/bio/db/test_gff.rb +3 -16
- data/test/unit/bio/db/test_lasergene.rb +95 -0
- data/test/unit/bio/db/test_newick.rb +56 -0
- data/test/unit/bio/db/test_nexus.rb +360 -0
- data/test/unit/bio/db/test_prosite.rb +5 -18
- data/test/unit/bio/db/test_rebase.rb +11 -25
- data/test/unit/bio/db/test_soft.rb +138 -0
- data/test/unit/bio/io/test_ddbjxml.rb +5 -17
- data/test/unit/bio/io/test_ensembl.rb +109 -0
- data/test/unit/bio/io/test_fastacmd.rb +3 -16
- data/test/unit/bio/io/test_flatfile.rb +237 -0
- data/test/unit/bio/io/test_soapwsdl.rb +4 -17
- data/test/unit/bio/sequence/test_aa.rb +3 -3
- data/test/unit/bio/sequence/test_common.rb +3 -16
- data/test/unit/bio/sequence/test_compat.rb +3 -16
- data/test/unit/bio/sequence/test_na.rb +29 -3
- data/test/unit/bio/shell/plugin/test_seq.rb +8 -8
- data/test/unit/bio/test_alignment.rb +16 -27
- data/test/unit/bio/test_command.rb +242 -25
- data/test/unit/bio/test_db.rb +3 -16
- data/test/unit/bio/test_feature.rb +4 -16
- data/test/unit/bio/test_location.rb +4 -16
- data/test/unit/bio/test_map.rb +230 -0
- data/test/unit/bio/test_pathway.rb +4 -16
- data/test/unit/bio/test_reference.rb +2 -2
- data/test/unit/bio/test_sequence.rb +7 -19
- data/test/unit/bio/test_shell.rb +3 -16
- data/test/unit/bio/test_tree.rb +593 -0
- data/test/unit/bio/util/restriction_enzyme/analysis/test_calculated_cuts.rb +299 -0
- data/test/unit/bio/util/restriction_enzyme/analysis/test_cut_ranges.rb +103 -0
- data/test/unit/bio/util/restriction_enzyme/analysis/test_sequence_range.rb +240 -0
- data/test/unit/bio/util/restriction_enzyme/double_stranded/test_aligned_strands.rb +100 -0
- data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_location_pair.rb +75 -0
- data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_location_pair_in_enzyme_notation.rb +73 -0
- data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_locations.rb +53 -0
- data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_locations_in_enzyme_notation.rb +104 -0
- data/test/unit/bio/util/restriction_enzyme/single_strand/test_cut_locations_in_enzyme_notation.rb +83 -0
- data/test/unit/bio/util/restriction_enzyme/test_analysis.rb +246 -0
- data/test/unit/bio/util/restriction_enzyme/test_cut_symbol.rb +44 -0
- data/test/unit/bio/util/restriction_enzyme/test_double_stranded.rb +115 -0
- data/test/unit/bio/util/restriction_enzyme/test_single_strand.rb +147 -0
- data/test/unit/bio/util/restriction_enzyme/test_single_strand_complement.rb +147 -0
- data/test/unit/bio/util/restriction_enzyme/test_string_formatting.rb +60 -0
- data/test/unit/bio/util/test_color_scheme.rb +6 -18
- data/test/unit/bio/util/test_contingency_table.rb +6 -18
- data/test/unit/bio/util/test_restriction_enzyme.rb +42 -0
- data/test/unit/bio/util/test_sirna.rb +3 -16
- metadata +228 -169
- data/doc/BioRuby.rd.ja +0 -225
- data/doc/Design.rd.ja +0 -341
- data/doc/TODO.rd.ja +0 -138
- data/lib/bio/appl/fasta/format6.rb +0 -37
- data/lib/bio/db/kegg/cell.rb +0 -88
- data/lib/bio/db/kegg/ko.rb +0 -178
- data/lib/bio/shell/rails/Rakefile +0 -10
- data/lib/bio/shell/rails/app/controllers/application.rb +0 -4
- data/lib/bio/shell/rails/app/controllers/shell_controller.rb +0 -94
- data/lib/bio/shell/rails/app/helpers/application_helper.rb +0 -3
- data/lib/bio/shell/rails/app/models/shell_connection.rb +0 -30
- data/lib/bio/shell/rails/app/views/layouts/shell.rhtml +0 -37
- data/lib/bio/shell/rails/app/views/shell/history.rhtml +0 -5
- data/lib/bio/shell/rails/app/views/shell/index.rhtml +0 -2
- data/lib/bio/shell/rails/app/views/shell/show.rhtml +0 -13
- data/lib/bio/shell/rails/config/boot.rb +0 -19
- data/lib/bio/shell/rails/config/database.yml +0 -85
- data/lib/bio/shell/rails/config/environment.rb +0 -53
- data/lib/bio/shell/rails/config/environments/development.rb +0 -19
- data/lib/bio/shell/rails/config/environments/production.rb +0 -19
- data/lib/bio/shell/rails/config/environments/test.rb +0 -19
- data/lib/bio/shell/rails/config/routes.rb +0 -19
- data/lib/bio/shell/rails/doc/README_FOR_APP +0 -2
- data/lib/bio/shell/rails/public/404.html +0 -8
- data/lib/bio/shell/rails/public/500.html +0 -8
- data/lib/bio/shell/rails/public/dispatch.cgi +0 -10
- data/lib/bio/shell/rails/public/dispatch.fcgi +0 -24
- data/lib/bio/shell/rails/public/dispatch.rb +0 -10
- data/lib/bio/shell/rails/public/favicon.ico +0 -0
- data/lib/bio/shell/rails/public/images/rails.png +0 -0
- data/lib/bio/shell/rails/public/index.html +0 -277
- data/lib/bio/shell/rails/public/javascripts/controls.js +0 -750
- data/lib/bio/shell/rails/public/javascripts/dragdrop.js +0 -584
- data/lib/bio/shell/rails/public/javascripts/effects.js +0 -854
- data/lib/bio/shell/rails/public/javascripts/prototype.js +0 -1785
- data/lib/bio/shell/rails/public/robots.txt +0 -1
- data/lib/bio/shell/rails/public/stylesheets/main.css +0 -187
- data/lib/bio/shell/rails/script/about +0 -3
- data/lib/bio/shell/rails/script/breakpointer +0 -3
- data/lib/bio/shell/rails/script/console +0 -3
- data/lib/bio/shell/rails/script/destroy +0 -3
- data/lib/bio/shell/rails/script/generate +0 -3
- data/lib/bio/shell/rails/script/performance/benchmarker +0 -3
- data/lib/bio/shell/rails/script/performance/profiler +0 -3
- data/lib/bio/shell/rails/script/plugin +0 -3
- data/lib/bio/shell/rails/script/process/reaper +0 -3
- data/lib/bio/shell/rails/script/process/spawner +0 -3
- data/lib/bio/shell/rails/script/process/spinner +0 -3
- data/lib/bio/shell/rails/script/runner +0 -3
- data/lib/bio/shell/rails/script/server +0 -42
- data/lib/bio/shell/rails/test/test_helper.rb +0 -28
data/lib/bio/db/transfac.rb
CHANGED
|
@@ -1,23 +1,11 @@
|
|
|
1
1
|
#
|
|
2
|
-
# bio/db/transfac.rb - TRANSFAC database class
|
|
2
|
+
# = bio/db/transfac.rb - TRANSFAC database class
|
|
3
3
|
#
|
|
4
|
-
#
|
|
4
|
+
# Copyright:: Copyright (C) 2001
|
|
5
|
+
# Shuichi Kawashima <shuichi@hgc.jp>
|
|
6
|
+
# License:: The Ruby License
|
|
5
7
|
#
|
|
6
|
-
#
|
|
7
|
-
# modify it under the terms of the GNU Lesser General Public
|
|
8
|
-
# License as published by the Free Software Foundation; either
|
|
9
|
-
# version 2 of the License, or (at your option) any later version.
|
|
10
|
-
#
|
|
11
|
-
# This library is distributed in the hope that it will be useful,
|
|
12
|
-
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
13
|
-
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
14
|
-
# Lesser General Public License for more details.
|
|
15
|
-
#
|
|
16
|
-
# You should have received a copy of the GNU Lesser General Public
|
|
17
|
-
# License along with this library; if not, write to the Free Software
|
|
18
|
-
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
19
|
-
#
|
|
20
|
-
# $Id: transfac.rb,v 1.10 2005/11/28 04:57:33 k Exp $
|
|
8
|
+
# $Id: transfac.rb,v 1.12 2007/04/05 23:35:40 trevor Exp $
|
|
21
9
|
#
|
|
22
10
|
|
|
23
11
|
require "bio/db"
|
data/lib/bio/feature.rb
CHANGED
|
@@ -1,51 +1,54 @@
|
|
|
1
1
|
#
|
|
2
2
|
# = bio/feature.rb - Features/Feature class (GenBank Feature table)
|
|
3
3
|
#
|
|
4
|
-
# Copyright:: Copyright (c) 2002, 2005
|
|
5
|
-
#
|
|
6
|
-
# License:: Ruby
|
|
7
|
-
#
|
|
8
|
-
# $Id: feature.rb,v 1.10 2006/02/27 09:13:46 k Exp $
|
|
9
|
-
#
|
|
10
|
-
# == INSD Feature table definition
|
|
11
|
-
#
|
|
12
|
-
# See http://www.ddbj.nig.ac.jp/FT/full_index.html for the INSD
|
|
13
|
-
# (GenBank/EMBL/DDBJ) Feature table definition.
|
|
14
|
-
#
|
|
15
|
-
# === Example
|
|
16
|
-
#
|
|
17
|
-
# # suppose features is a Bio::Features object
|
|
18
|
-
# features.each do |feature|
|
|
19
|
-
# f_name = feature.feature
|
|
20
|
-
# f_pos = feature.position
|
|
21
|
-
# puts "#{f_name}:\t#{f_pos}"
|
|
22
|
-
# feature.each do |qualifier|
|
|
23
|
-
# q_name = qualifier.qualifier
|
|
24
|
-
# q_val = qualifier.value
|
|
25
|
-
# puts "- #{q_name}:\t#{q_val}"
|
|
26
|
-
# end
|
|
27
|
-
# end
|
|
28
|
-
#
|
|
29
|
-
# # Iterates only on CDS features and extract translated amino acid sequences
|
|
30
|
-
# features.each("CDS") do |feature|
|
|
31
|
-
# hash = feature.assoc
|
|
32
|
-
# name = hash["gene"] || hash["product"] || hash["note"]
|
|
33
|
-
# seq = hash["translation"]
|
|
34
|
-
# pos = feature.position
|
|
35
|
-
# if gene and seq
|
|
36
|
-
# puts ">#{gene} #{feature.position}"
|
|
37
|
-
# puts aaseq
|
|
38
|
-
# end
|
|
39
|
-
# end
|
|
4
|
+
# Copyright:: Copyright (c) 2002, 2005 Toshiaki Katayama <k@bioruby.org>
|
|
5
|
+
# 2006 Jan Aerts <jan.aerts@bbsrc.ac.uk>
|
|
6
|
+
# License:: The Ruby License
|
|
40
7
|
#
|
|
8
|
+
# $Id: feature.rb,v 1.13 2007/04/05 23:35:39 trevor Exp $
|
|
41
9
|
|
|
42
10
|
require 'bio/location'
|
|
43
11
|
|
|
44
12
|
module Bio
|
|
45
13
|
|
|
14
|
+
# = DESCRIPTION
|
|
46
15
|
# Container for the sequence annotation.
|
|
16
|
+
#
|
|
17
|
+
# = USAGE
|
|
18
|
+
# # Create a Bio::Feature object.
|
|
19
|
+
# # For example: the GenBank-formatted entry in genbank for accession M33388
|
|
20
|
+
# # contains the following feature:
|
|
21
|
+
# # exon 1532..1799
|
|
22
|
+
# # /gene="CYP2D6"
|
|
23
|
+
# # /note="cytochrome P450 IID6; GOO-132-127"
|
|
24
|
+
# # /number="1"
|
|
25
|
+
# feature = Bio::Feature.new('exon','1532..1799')
|
|
26
|
+
# feature.append(Bio::Feature::Qualifier.new('gene', 'CYP2D6'))
|
|
27
|
+
# feature.append(Bio::Feature::Qualifier.new('note', 'cytochrome P450 IID6'))
|
|
28
|
+
# feature.append(Bio::Feature::Qualifier.new('number', '1'))
|
|
29
|
+
#
|
|
30
|
+
# # or all in one go:
|
|
31
|
+
# feature2 = Bio::Feature.new('exon','1532..1799',
|
|
32
|
+
# [ Bio::Feature::Qualifier.new('gene', 'CYP2D6'),
|
|
33
|
+
# Bio::Feature::Qualifier.new('note', 'cytochrome P450 IID6; GOO-132-127'),
|
|
34
|
+
# Bio::Feature::Qualifier.new('number', '1')
|
|
35
|
+
# ])
|
|
36
|
+
#
|
|
37
|
+
# # Print the feature
|
|
38
|
+
# puts feature.feature + "\t" + feature.position
|
|
39
|
+
# feature.each do |qualifier|
|
|
40
|
+
# puts "- " + qualifier.qualifier + ": " + qualifier.value
|
|
41
|
+
# end
|
|
42
|
+
#
|
|
43
|
+
# = REFERENCES
|
|
44
|
+
# INSD feature table definition:: http://www.ddbj.nig.ac.jp/FT/full_index.html
|
|
47
45
|
class Feature
|
|
48
|
-
|
|
46
|
+
# Create a new Bio::Feature object.
|
|
47
|
+
# *Arguments*:
|
|
48
|
+
# * (required) _feature_: type of feature (e.g. "exon")
|
|
49
|
+
# * (required) _position_: position of feature (e.g. "complement(1532..1799)")
|
|
50
|
+
# * (opt) _qualifiers_: list of Bio::Feature::Qualifier objects (default: [])
|
|
51
|
+
# *Returns*:: Bio::Feature object
|
|
49
52
|
def initialize(feature = '', position = '', qualifiers = [])
|
|
50
53
|
@feature, @position, @qualifiers = feature, position, qualifiers
|
|
51
54
|
end
|
|
@@ -65,16 +68,19 @@ class Feature
|
|
|
65
68
|
end
|
|
66
69
|
|
|
67
70
|
# Appends a Qualifier object to the Feature.
|
|
68
|
-
#
|
|
69
|
-
# *
|
|
70
|
-
# *
|
|
71
|
-
#
|
|
71
|
+
#
|
|
72
|
+
# *Arguments*:
|
|
73
|
+
# * (required) _qualifier_: Bio::Feature::Qualifier object
|
|
74
|
+
# *Returns*:: Bio::Feature object
|
|
72
75
|
def append(a)
|
|
73
76
|
@qualifiers.push(a) if a.is_a? Qualifier
|
|
74
77
|
return self
|
|
75
78
|
end
|
|
76
79
|
|
|
77
|
-
# Iterates on each qualifier.
|
|
80
|
+
# Iterates on each qualifier object.
|
|
81
|
+
#
|
|
82
|
+
# *Arguments*:
|
|
83
|
+
# * (optional) _key_: if specified, only iterates over qualifiers with this key
|
|
78
84
|
def each(arg = nil)
|
|
79
85
|
@qualifiers.each do |x|
|
|
80
86
|
next if arg and x.qualifier != arg
|
|
@@ -107,9 +113,14 @@ class Feature
|
|
|
107
113
|
self.to_hash[key]
|
|
108
114
|
end
|
|
109
115
|
|
|
110
|
-
# Container for
|
|
116
|
+
# Container for qualifier-value pairs for sequence features.
|
|
111
117
|
class Qualifier
|
|
112
|
-
|
|
118
|
+
# Creates a new Bio::Feature::Qualifier object
|
|
119
|
+
#
|
|
120
|
+
# *Arguments*:
|
|
121
|
+
# * (required) _key_: key of the qualifier (e.g. "gene")
|
|
122
|
+
# * (required) _value_: value of the qualifier (e.g. "CYP2D6")
|
|
123
|
+
# *Returns*:: Bio::Feature::Qualifier object
|
|
113
124
|
def initialize(key, value)
|
|
114
125
|
@qualifier, @value = key, value
|
|
115
126
|
end
|
|
@@ -120,14 +131,52 @@ class Feature
|
|
|
120
131
|
# Qualifier value in String
|
|
121
132
|
attr_reader :value
|
|
122
133
|
|
|
123
|
-
end
|
|
134
|
+
end #Qualifier
|
|
124
135
|
|
|
125
|
-
end
|
|
136
|
+
end #Feature
|
|
126
137
|
|
|
127
138
|
|
|
128
|
-
#
|
|
139
|
+
# = DESCRIPTION
|
|
140
|
+
# Container for a list of Feature objects.
|
|
141
|
+
#
|
|
142
|
+
# = USAGE
|
|
143
|
+
# # First, create some Bio::Feature objects
|
|
144
|
+
# feature1 = Bio::Feature.new('intron','3627..4059')
|
|
145
|
+
# feature2 = Bio::Feature.new('exon','4060..4236')
|
|
146
|
+
# feature3 = Bio::Feature.new('intron','4237..4426')
|
|
147
|
+
# feature4 = Bio::Feature.new('CDS','join(2538..3626,4060..4236)',
|
|
148
|
+
# [ Bio::Feature::Qualifier.new('gene', 'CYP2D6'),
|
|
149
|
+
# Bio::Feature::Qualifier.new('translation','MGXXTVMHLL...')
|
|
150
|
+
# ])
|
|
151
|
+
#
|
|
152
|
+
# # And create a container for them
|
|
153
|
+
# feature_container = Bio::Features.new([ feature1, feature2, feature3, feature4 ])
|
|
154
|
+
#
|
|
155
|
+
# # Iterate over all features and print
|
|
156
|
+
# feature_container.each do |feature|
|
|
157
|
+
# puts feature.feature + "\t" + feature.position
|
|
158
|
+
# feature.each do |qualifier|
|
|
159
|
+
# puts "- " + qualifier.qualifier + ": " + qualifier.value
|
|
160
|
+
# end
|
|
161
|
+
# end
|
|
162
|
+
#
|
|
163
|
+
# # Iterate only over CDS features and extract translated amino acid sequences
|
|
164
|
+
# features.each("CDS") do |feature|
|
|
165
|
+
# hash = feature.to_hash
|
|
166
|
+
# name = hash["gene"] || hash["product"] || hash["note"]
|
|
167
|
+
# aaseq = hash["translation"]
|
|
168
|
+
# pos = feature.position
|
|
169
|
+
# if name and seq
|
|
170
|
+
# puts ">#{gene} #{feature.position}"
|
|
171
|
+
# puts aaseq
|
|
172
|
+
# end
|
|
173
|
+
# end
|
|
129
174
|
class Features
|
|
130
|
-
|
|
175
|
+
# Create a new Bio::Features object.
|
|
176
|
+
#
|
|
177
|
+
# *Arguments*:
|
|
178
|
+
# * (optional) _list of features_: list of Bio::Feature objects
|
|
179
|
+
# *Returns*:: Bio::Features object
|
|
131
180
|
def initialize(ary = [])
|
|
132
181
|
@features = ary
|
|
133
182
|
end
|
|
@@ -136,13 +185,19 @@ class Features
|
|
|
136
185
|
attr_accessor :features
|
|
137
186
|
|
|
138
187
|
# Appends a Feature object to Features.
|
|
188
|
+
#
|
|
189
|
+
# *Arguments*:
|
|
190
|
+
# * (required) _feature_: Bio::Feature object
|
|
191
|
+
# *Returns*:: Bio::Features object
|
|
139
192
|
def append(a)
|
|
140
193
|
@features.push(a) if a.is_a? Feature
|
|
141
194
|
return self
|
|
142
195
|
end
|
|
143
196
|
|
|
144
|
-
# Iterates on each feature.
|
|
145
|
-
#
|
|
197
|
+
# Iterates on each feature object.
|
|
198
|
+
#
|
|
199
|
+
# *Arguments*:
|
|
200
|
+
# * (optional) _key_: if specified, only iterates over features with this key
|
|
146
201
|
def each(arg = nil)
|
|
147
202
|
@features.each do |x|
|
|
148
203
|
next if arg and x.feature != arg
|
|
@@ -165,8 +220,7 @@ class Features
|
|
|
165
220
|
@features.last
|
|
166
221
|
end
|
|
167
222
|
|
|
168
|
-
end
|
|
223
|
+
end # Features
|
|
169
224
|
|
|
170
225
|
end # Bio
|
|
171
226
|
|
|
172
|
-
|
data/lib/bio/io/das.rb
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
#
|
|
2
2
|
# = bio/io/das.rb - BioDAS access module
|
|
3
3
|
#
|
|
4
|
-
# Copyright:: Copyright (C) 2003, 2004
|
|
4
|
+
# Copyright:: Copyright (C) 2003, 2004, 2007
|
|
5
5
|
# Shuichi Kawashima <shuichi@hgc.jp>,
|
|
6
6
|
# Toshiaki Katayama <k@bioruby.org>
|
|
7
|
-
# License::
|
|
7
|
+
# License:: The Ruby License
|
|
8
8
|
#
|
|
9
|
-
# $Id: das.rb,v 1.
|
|
9
|
+
# $Id: das.rb,v 1.17 2007/07/16 18:06:12 k Exp $
|
|
10
10
|
#
|
|
11
11
|
#--
|
|
12
12
|
# == TODO
|
|
@@ -15,31 +15,12 @@
|
|
|
15
15
|
#
|
|
16
16
|
#++
|
|
17
17
|
#
|
|
18
|
-
#--
|
|
19
|
-
#
|
|
20
|
-
# This library is free software; you can redistribute it and/or
|
|
21
|
-
# modify it under the terms of the GNU Lesser General Public
|
|
22
|
-
# License as published by the Free Software Foundation; either
|
|
23
|
-
# version 2 of the License, or (at your option) any later version.
|
|
24
|
-
#
|
|
25
|
-
# This library is distributed in the hope that it will be useful,
|
|
26
|
-
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
27
|
-
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
28
|
-
# Lesser General Public License for more details.
|
|
29
|
-
#
|
|
30
|
-
# You should have received a copy of the GNU Lesser General Public
|
|
31
|
-
# License along with this library; if not, write to the Free Software
|
|
32
|
-
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
33
|
-
#
|
|
34
|
-
#++
|
|
35
|
-
#
|
|
36
18
|
|
|
37
19
|
begin
|
|
38
20
|
require 'rexml/document'
|
|
39
21
|
rescue LoadError
|
|
40
22
|
end
|
|
41
|
-
require '
|
|
42
|
-
require 'net/http'
|
|
23
|
+
require 'bio/command'
|
|
43
24
|
require 'bio/sequence'
|
|
44
25
|
|
|
45
26
|
|
|
@@ -49,15 +30,24 @@ class DAS
|
|
|
49
30
|
|
|
50
31
|
# Specify DAS server to connect
|
|
51
32
|
def initialize(url = 'http://www.wormbase.org:80/db/')
|
|
52
|
-
|
|
53
|
-
@server = Net::HTTP.new(host, port)
|
|
54
|
-
@prefix = path ? path.chomp('/') : ''
|
|
33
|
+
@server = url.chomp('/')
|
|
55
34
|
end
|
|
56
35
|
|
|
36
|
+
def dna(dsn, entry_point, start, stop)
|
|
37
|
+
seg = Bio::DAS::SEGMENT.region(entry_point, start, stop)
|
|
38
|
+
self.get_dna(dsn, seg).first.sequence
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def features(dsn, entry_point, start, stop)
|
|
42
|
+
seg = Bio::DAS::SEGMENT.region(entry_point, start, stop)
|
|
43
|
+
self.get_features(dsn, seg)
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
|
|
57
47
|
# Returns an Array of Bio::DAS::DSN
|
|
58
48
|
def get_dsn
|
|
59
49
|
ary = []
|
|
60
|
-
result, =
|
|
50
|
+
result, = Bio::Command.post_form("#{@server}/das/dsn")
|
|
61
51
|
doc = REXML::Document.new(result.body)
|
|
62
52
|
doc.elements.each('/descendant::DSN') do |e|
|
|
63
53
|
dsn = DSN.new
|
|
@@ -68,7 +58,7 @@ class DAS
|
|
|
68
58
|
dsn.source_id = e.attributes['id']
|
|
69
59
|
dsn.source_version = e.attributes['version']
|
|
70
60
|
when 'MAPMASTER'
|
|
71
|
-
dsn.mapmaster = e.
|
|
61
|
+
dsn.mapmaster = e.text
|
|
72
62
|
when 'DESCRIPTION'
|
|
73
63
|
dsn.description = e.text
|
|
74
64
|
dsn.description_href = e.attributes['href']
|
|
@@ -81,10 +71,14 @@ class DAS
|
|
|
81
71
|
|
|
82
72
|
# Returns Bio::DAS::ENTRY_POINT.
|
|
83
73
|
# The 'dsn' can be a String or a Bio::DAS::DSN object.
|
|
84
|
-
def
|
|
74
|
+
def get_entry_points(dsn)
|
|
85
75
|
entry_point = ENTRY_POINT.new
|
|
86
|
-
|
|
87
|
-
|
|
76
|
+
if dsn.instance_of?(Bio::DAS::DSN)
|
|
77
|
+
src = dsn.source
|
|
78
|
+
else
|
|
79
|
+
src = dsn
|
|
80
|
+
end
|
|
81
|
+
result, = Bio::Command.post_form("#{@server}/das/#{src}/entry_points")
|
|
88
82
|
doc = REXML::Document.new(result.body)
|
|
89
83
|
doc.elements.each('/descendant::ENTRY_POINTS') do |e|
|
|
90
84
|
entry_point.href = e.attributes['href']
|
|
@@ -93,8 +87,8 @@ class DAS
|
|
|
93
87
|
segment = SEGMENT.new
|
|
94
88
|
segment.entry_id = e.attributes['id']
|
|
95
89
|
segment.start = e.attributes['start']
|
|
96
|
-
segment.stop = e.attributes['stop']
|
|
97
|
-
segment.
|
|
90
|
+
segment.stop = e.attributes['stop'] || e.attributes['size']
|
|
91
|
+
segment.orientation = e.attributes['orientation']
|
|
98
92
|
segment.subparts = e.attributes['subparts']
|
|
99
93
|
segment.description = e.text
|
|
100
94
|
entry_point.segments << segment
|
|
@@ -117,9 +111,8 @@ class DAS
|
|
|
117
111
|
segments.each do |s|
|
|
118
112
|
opts << "segment=#{s.entry_id}:#{s.start},#{s.stop}"
|
|
119
113
|
end
|
|
120
|
-
query = opts.join(';')
|
|
121
114
|
|
|
122
|
-
result, =
|
|
115
|
+
result, = Bio::Command.post_form("#{@server}/das/#{dsn}/dna", opts)
|
|
123
116
|
doc = REXML::Document.new(result.body)
|
|
124
117
|
doc.elements.each('/descendant::SEQUENCE') do |e|
|
|
125
118
|
sequence = DNA.new
|
|
@@ -150,9 +143,8 @@ class DAS
|
|
|
150
143
|
segments.each do |s|
|
|
151
144
|
opts << "segment=#{s.entry_id}:#{s.start},#{s.stop}"
|
|
152
145
|
end
|
|
153
|
-
query = opts.join(';')
|
|
154
146
|
|
|
155
|
-
result, =
|
|
147
|
+
result, = Bio::Command.post_form("#{@server}/das/#{dsn}/sequence", opts)
|
|
156
148
|
doc = REXML::Document.new(result.body)
|
|
157
149
|
doc.elements.each('/descendant::SEQUENCE') do |e|
|
|
158
150
|
sequence = SEQUENCE.new
|
|
@@ -188,9 +180,8 @@ class DAS
|
|
|
188
180
|
segments.each do |s|
|
|
189
181
|
opts << "segment=#{s.entry_id}:#{s.start},#{s.stop}"
|
|
190
182
|
end
|
|
191
|
-
query = opts.join(';')
|
|
192
183
|
|
|
193
|
-
result, =
|
|
184
|
+
result, = Bio::Command.post_form("#{@server}/das/#{dsn}/types", opts)
|
|
194
185
|
doc = REXML::Document.new(result.body)
|
|
195
186
|
doc.elements.each('/descendant::GFF') do |e|
|
|
196
187
|
types.version = e.attributes['version']
|
|
@@ -240,9 +231,8 @@ class DAS
|
|
|
240
231
|
group_ids.each do |gid|
|
|
241
232
|
opts << "group_id=#{gid}"
|
|
242
233
|
end
|
|
243
|
-
query = opts.join(';')
|
|
244
234
|
|
|
245
|
-
result, =
|
|
235
|
+
result, = Bio::Command.post_form("#{@server}/das/#{dsn}/features", opts)
|
|
246
236
|
doc = REXML::Document.new(result.body)
|
|
247
237
|
doc.elements.each('/descendant::GFF') do |e|
|
|
248
238
|
gff.version = e.attributes['version']
|
|
@@ -459,7 +449,7 @@ if __FILE__ == $0
|
|
|
459
449
|
puts ">>> dsn : entry_points"
|
|
460
450
|
org_list.each do |org|
|
|
461
451
|
print "#{org} : "
|
|
462
|
-
list = kegg_das.
|
|
452
|
+
list = kegg_das.get_entry_points(org)
|
|
463
453
|
list.segments.each do |seg|
|
|
464
454
|
print " #{seg.entry_id}"
|
|
465
455
|
end
|
data/lib/bio/io/dbget.rb
CHANGED
|
@@ -4,33 +4,15 @@
|
|
|
4
4
|
# Copyright:: Copyright (C) 2000, 2001
|
|
5
5
|
# Mitsuteru C. Nakao <n@bioruby.org>,
|
|
6
6
|
# Toshiaki Katayama <k@bioruby.org>
|
|
7
|
-
# License::
|
|
7
|
+
# License:: The Ruby License
|
|
8
8
|
#
|
|
9
|
-
# $Id: dbget.rb,v 1.
|
|
9
|
+
# $Id: dbget.rb,v 1.13 2007/04/05 23:35:41 trevor Exp $
|
|
10
10
|
#
|
|
11
11
|
# == DBGET
|
|
12
12
|
#
|
|
13
13
|
# Accessing the GenomeNet/DBGET data retrieval system
|
|
14
14
|
# http://www.genome.jp/dbget/ within the intranet.
|
|
15
15
|
#
|
|
16
|
-
#--
|
|
17
|
-
#
|
|
18
|
-
# This library is free software; you can redistribute it and/or
|
|
19
|
-
# modify it under the terms of the GNU Lesser General Public
|
|
20
|
-
# License as published by the Free Software Foundation; either
|
|
21
|
-
# version 2 of the License, or (at your option) any later version.
|
|
22
|
-
#
|
|
23
|
-
# This library is distributed in the hope that it will be useful,
|
|
24
|
-
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
25
|
-
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
26
|
-
# Lesser General Public License for more details.
|
|
27
|
-
#
|
|
28
|
-
# You should have received a copy of the GNU Lesser General Public
|
|
29
|
-
# License along with this library; if not, write to the Free Software
|
|
30
|
-
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
31
|
-
#
|
|
32
|
-
#++
|
|
33
|
-
#
|
|
34
16
|
|
|
35
17
|
require 'socket'
|
|
36
18
|
|