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.
Files changed (340) hide show
  1. data/bin/bioruby +14 -122
  2. data/bin/br_biofetch.rb +2 -2
  3. data/bin/br_bioflat.rb +2 -2
  4. data/bin/br_biogetseq.rb +2 -2
  5. data/bin/br_pmfetch.rb +3 -3
  6. data/doc/Changes-0.7.rd +77 -0
  7. data/doc/KEGG_API.rd +523 -232
  8. data/doc/KEGG_API.rd.ja +529 -207
  9. data/doc/Tutorial.rd +48 -11
  10. data/lib/bio.rb +59 -6
  11. data/lib/bio/alignment.rb +713 -103
  12. data/lib/bio/appl/bl2seq/report.rb +2 -18
  13. data/lib/bio/appl/blast.rb +108 -91
  14. data/lib/bio/appl/blast/format0.rb +33 -18
  15. data/lib/bio/appl/blast/format8.rb +6 -20
  16. data/lib/bio/appl/blast/report.rb +293 -429
  17. data/lib/bio/appl/blast/rexml.rb +8 -22
  18. data/lib/bio/appl/blast/wublast.rb +21 -12
  19. data/lib/bio/appl/blast/xmlparser.rb +180 -183
  20. data/lib/bio/appl/blat/report.rb +127 -30
  21. data/lib/bio/appl/clustalw.rb +87 -59
  22. data/lib/bio/appl/clustalw/report.rb +20 -22
  23. data/lib/bio/appl/emboss.rb +113 -20
  24. data/lib/bio/appl/fasta.rb +173 -198
  25. data/lib/bio/appl/fasta/format10.rb +244 -347
  26. data/lib/bio/appl/gcg/msf.rb +212 -0
  27. data/lib/bio/appl/gcg/seq.rb +195 -0
  28. data/lib/bio/appl/genscan/report.rb +5 -23
  29. data/lib/bio/appl/hmmer.rb +8 -45
  30. data/lib/bio/appl/hmmer/report.rb +2 -20
  31. data/lib/bio/appl/iprscan/report.rb +374 -0
  32. data/lib/bio/appl/mafft.rb +87 -50
  33. data/lib/bio/appl/mafft/report.rb +151 -44
  34. data/lib/bio/appl/muscle.rb +52 -0
  35. data/lib/bio/appl/phylip/alignment.rb +129 -0
  36. data/lib/bio/appl/phylip/distance_matrix.rb +96 -0
  37. data/lib/bio/appl/probcons.rb +41 -0
  38. data/lib/bio/appl/psort.rb +89 -96
  39. data/lib/bio/appl/psort/report.rb +6 -22
  40. data/lib/bio/appl/pts1.rb +263 -0
  41. data/lib/bio/appl/sim4.rb +26 -36
  42. data/lib/bio/appl/sim4/report.rb +2 -18
  43. data/lib/bio/appl/sosui/report.rb +5 -20
  44. data/lib/bio/appl/spidey/report.rb +2 -2
  45. data/lib/bio/appl/targetp/report.rb +4 -20
  46. data/lib/bio/appl/tcoffee.rb +55 -0
  47. data/lib/bio/appl/tmhmm/report.rb +4 -20
  48. data/lib/bio/command.rb +235 -64
  49. data/lib/bio/data/aa.rb +21 -26
  50. data/lib/bio/data/codontable.rb +2 -20
  51. data/lib/bio/data/na.rb +19 -4
  52. data/lib/bio/db.rb +27 -12
  53. data/lib/bio/db/aaindex.rb +2 -20
  54. data/lib/bio/db/embl/common.rb +4 -21
  55. data/lib/bio/db/embl/embl.rb +33 -85
  56. data/lib/bio/db/embl/sptr.rb +612 -302
  57. data/lib/bio/db/embl/swissprot.rb +10 -29
  58. data/lib/bio/db/embl/trembl.rb +10 -29
  59. data/lib/bio/db/embl/uniprot.rb +10 -29
  60. data/lib/bio/db/fantom.rb +15 -20
  61. data/lib/bio/db/fasta.rb +3 -3
  62. data/lib/bio/db/genbank/common.rb +37 -46
  63. data/lib/bio/db/genbank/ddbj.rb +6 -18
  64. data/lib/bio/db/genbank/genbank.rb +47 -186
  65. data/lib/bio/db/genbank/genpept.rb +4 -17
  66. data/lib/bio/db/genbank/refseq.rb +4 -17
  67. data/lib/bio/db/gff.rb +103 -35
  68. data/lib/bio/db/go.rb +4 -20
  69. data/lib/bio/db/kegg/brite.rb +26 -36
  70. data/lib/bio/db/kegg/compound.rb +81 -85
  71. data/lib/bio/db/kegg/drug.rb +98 -0
  72. data/lib/bio/db/kegg/enzyme.rb +133 -110
  73. data/lib/bio/db/kegg/expression.rb +2 -20
  74. data/lib/bio/db/kegg/genes.rb +208 -238
  75. data/lib/bio/db/kegg/genome.rb +164 -285
  76. data/lib/bio/db/kegg/glycan.rb +114 -157
  77. data/lib/bio/db/kegg/keggtab.rb +242 -303
  78. data/lib/bio/db/kegg/kgml.rb +117 -160
  79. data/lib/bio/db/kegg/orthology.rb +112 -0
  80. data/lib/bio/db/kegg/reaction.rb +54 -69
  81. data/lib/bio/db/kegg/taxonomy.rb +331 -0
  82. data/lib/bio/db/lasergene.rb +209 -0
  83. data/lib/bio/db/litdb.rb +3 -27
  84. data/lib/bio/db/medline.rb +228 -249
  85. data/lib/bio/db/nbrf.rb +3 -3
  86. data/lib/bio/db/newick.rb +510 -0
  87. data/lib/bio/db/nexus.rb +1854 -0
  88. data/lib/bio/db/pdb.rb +5 -17
  89. data/lib/bio/db/pdb/atom.rb +2 -18
  90. data/lib/bio/db/pdb/chain.rb +2 -18
  91. data/lib/bio/db/pdb/chemicalcomponent.rb +2 -18
  92. data/lib/bio/db/pdb/model.rb +2 -18
  93. data/lib/bio/db/pdb/pdb.rb +73 -34
  94. data/lib/bio/db/pdb/residue.rb +4 -20
  95. data/lib/bio/db/pdb/utils.rb +2 -18
  96. data/lib/bio/db/prosite.rb +403 -422
  97. data/lib/bio/db/rebase.rb +84 -40
  98. data/lib/bio/db/soft.rb +404 -0
  99. data/lib/bio/db/transfac.rb +5 -17
  100. data/lib/bio/feature.rb +106 -52
  101. data/lib/bio/io/das.rb +32 -42
  102. data/lib/bio/io/dbget.rb +2 -20
  103. data/lib/bio/io/ddbjxml.rb +77 -138
  104. data/lib/bio/io/ebisoap.rb +158 -0
  105. data/lib/bio/io/ensembl.rb +229 -0
  106. data/lib/bio/io/fastacmd.rb +89 -82
  107. data/lib/bio/io/fetch.rb +163 -96
  108. data/lib/bio/io/flatfile.rb +170 -73
  109. data/lib/bio/io/flatfile/bdb.rb +3 -16
  110. data/lib/bio/io/flatfile/index.rb +2 -2
  111. data/lib/bio/io/flatfile/indexer.rb +3 -2
  112. data/lib/bio/io/higet.rb +12 -31
  113. data/lib/bio/io/keggapi.rb +210 -269
  114. data/lib/bio/io/ncbisoap.rb +155 -0
  115. data/lib/bio/io/pubmed.rb +169 -147
  116. data/lib/bio/io/registry.rb +4 -20
  117. data/lib/bio/io/soapwsdl.rb +43 -38
  118. data/lib/bio/io/sql.rb +242 -305
  119. data/lib/bio/location.rb +407 -285
  120. data/lib/bio/map.rb +410 -0
  121. data/lib/bio/pathway.rb +558 -695
  122. data/lib/bio/reference.rb +272 -75
  123. data/lib/bio/sequence.rb +255 -13
  124. data/lib/bio/sequence/aa.rb +71 -10
  125. data/lib/bio/sequence/common.rb +187 -33
  126. data/lib/bio/sequence/compat.rb +59 -4
  127. data/lib/bio/sequence/format.rb +54 -7
  128. data/lib/bio/sequence/generic.rb +3 -3
  129. data/lib/bio/sequence/na.rb +328 -26
  130. data/lib/bio/shell.rb +11 -4
  131. data/lib/bio/shell/core.rb +221 -160
  132. data/lib/bio/shell/demo.rb +18 -15
  133. data/lib/bio/shell/interface.rb +14 -12
  134. data/lib/bio/shell/irb.rb +95 -0
  135. data/lib/bio/shell/object.rb +45 -26
  136. data/lib/bio/shell/plugin/blast.rb +42 -0
  137. data/lib/bio/shell/plugin/codon.rb +22 -14
  138. data/lib/bio/shell/plugin/das.rb +58 -0
  139. data/lib/bio/shell/plugin/emboss.rb +2 -2
  140. data/lib/bio/shell/plugin/entry.rb +22 -11
  141. data/lib/bio/shell/plugin/flatfile.rb +2 -2
  142. data/lib/bio/shell/plugin/keggapi.rb +13 -6
  143. data/lib/bio/shell/plugin/midi.rb +4 -4
  144. data/lib/bio/shell/plugin/obda.rb +2 -2
  145. data/lib/bio/shell/plugin/psort.rb +56 -0
  146. data/lib/bio/shell/plugin/seq.rb +35 -8
  147. data/lib/bio/shell/plugin/soap.rb +87 -0
  148. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/bioruby_generator.rb +29 -0
  149. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_classes.rhtml +4 -0
  150. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_log.rhtml +27 -0
  151. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_methods.rhtml +11 -0
  152. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_modules.rhtml +4 -0
  153. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_variables.rhtml +7 -0
  154. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby-bg.gif +0 -0
  155. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby-console.png +0 -0
  156. data/lib/bio/shell/rails/{public/images/icon.png → vendor/plugins/generators/bioruby/templates/bioruby-gem.png} +0 -0
  157. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby-link.gif +0 -0
  158. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby.css +369 -0
  159. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby.rhtml +47 -0
  160. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby_controller.rb +144 -0
  161. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby_helper.rb +47 -0
  162. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/commands.rhtml +8 -0
  163. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/history.rhtml +10 -0
  164. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/index.rhtml +22 -0
  165. data/lib/bio/shell/script.rb +25 -0
  166. data/lib/bio/shell/setup.rb +109 -0
  167. data/lib/bio/shell/web.rb +70 -58
  168. data/lib/bio/tree.rb +850 -0
  169. data/lib/bio/util/color_scheme.rb +84 -107
  170. data/lib/bio/util/color_scheme/buried.rb +5 -24
  171. data/lib/bio/util/color_scheme/helix.rb +5 -24
  172. data/lib/bio/util/color_scheme/hydropathy.rb +5 -24
  173. data/lib/bio/util/color_scheme/nucleotide.rb +5 -24
  174. data/lib/bio/util/color_scheme/strand.rb +5 -24
  175. data/lib/bio/util/color_scheme/taylor.rb +5 -24
  176. data/lib/bio/util/color_scheme/turn.rb +5 -24
  177. data/lib/bio/util/color_scheme/zappo.rb +5 -24
  178. data/lib/bio/util/contingency_table.rb +70 -43
  179. data/lib/bio/util/restriction_enzyme.rb +228 -0
  180. data/lib/bio/util/restriction_enzyme/analysis.rb +249 -0
  181. data/lib/bio/util/restriction_enzyme/analysis_basic.rb +217 -0
  182. data/lib/bio/util/restriction_enzyme/cut_symbol.rb +107 -0
  183. data/lib/bio/util/restriction_enzyme/double_stranded.rb +321 -0
  184. data/lib/bio/util/restriction_enzyme/double_stranded/aligned_strands.rb +130 -0
  185. data/lib/bio/util/restriction_enzyme/double_stranded/cut_location_pair.rb +103 -0
  186. data/lib/bio/util/restriction_enzyme/double_stranded/cut_location_pair_in_enzyme_notation.rb +38 -0
  187. data/lib/bio/util/restriction_enzyme/double_stranded/cut_locations.rb +76 -0
  188. data/lib/bio/util/restriction_enzyme/double_stranded/cut_locations_in_enzyme_notation.rb +107 -0
  189. data/lib/bio/util/restriction_enzyme/enzymes.yaml +7061 -0
  190. data/lib/bio/util/restriction_enzyme/range/cut_range.rb +24 -0
  191. data/lib/bio/util/restriction_enzyme/range/cut_ranges.rb +47 -0
  192. data/lib/bio/util/restriction_enzyme/range/horizontal_cut_range.rb +67 -0
  193. data/lib/bio/util/restriction_enzyme/range/sequence_range.rb +257 -0
  194. data/lib/bio/util/restriction_enzyme/range/sequence_range/calculated_cuts.rb +242 -0
  195. data/lib/bio/util/restriction_enzyme/range/sequence_range/fragment.rb +51 -0
  196. data/lib/bio/util/restriction_enzyme/range/sequence_range/fragments.rb +41 -0
  197. data/lib/bio/util/restriction_enzyme/range/vertical_cut_range.rb +77 -0
  198. data/lib/bio/util/restriction_enzyme/single_strand.rb +199 -0
  199. data/lib/bio/util/restriction_enzyme/single_strand/cut_locations_in_enzyme_notation.rb +135 -0
  200. data/lib/bio/util/restriction_enzyme/single_strand_complement.rb +23 -0
  201. data/lib/bio/util/restriction_enzyme/string_formatting.rb +111 -0
  202. data/lib/bio/util/sirna.rb +4 -22
  203. data/sample/color_scheme_na.rb +4 -12
  204. data/sample/enzymes.rb +78 -0
  205. data/sample/goslim.rb +5 -13
  206. data/sample/psortplot_html.rb +4 -12
  207. data/test/data/blast/2.2.15.blastp.m7 +876 -0
  208. data/test/data/embl/AB090716.embl.rel89 +63 -0
  209. data/test/data/fasta/example1.txt +75 -0
  210. data/test/data/fasta/example2.txt +21 -0
  211. data/test/data/iprscan/merged.raw +32 -0
  212. data/test/data/iprscan/merged.txt +74 -0
  213. data/test/data/soft/GDS100_partial.soft +92 -0
  214. data/test/data/soft/GSE3457_family_partial.soft +874 -0
  215. data/test/functional/bio/io/test_ensembl.rb +103 -0
  216. data/test/functional/bio/io/test_soapwsdl.rb +5 -17
  217. data/test/unit/bio/appl/bl2seq/test_report.rb +2 -2
  218. data/test/unit/bio/appl/blast/test_report.rb +3 -16
  219. data/test/unit/bio/appl/blast/test_xmlparser.rb +4 -16
  220. data/test/unit/bio/appl/genscan/test_report.rb +3 -16
  221. data/test/unit/bio/appl/hmmer/test_report.rb +3 -16
  222. data/test/unit/bio/appl/iprscan/test_report.rb +338 -0
  223. data/test/unit/bio/appl/mafft/test_report.rb +63 -0
  224. data/test/unit/bio/appl/sosui/test_report.rb +3 -16
  225. data/test/unit/bio/appl/targetp/test_report.rb +3 -16
  226. data/test/unit/bio/appl/test_blast.rb +3 -16
  227. data/test/unit/bio/appl/test_fasta.rb +4 -16
  228. data/test/unit/bio/appl/test_pts1.rb +140 -0
  229. data/test/unit/bio/appl/tmhmm/test_report.rb +3 -16
  230. data/test/unit/bio/data/test_aa.rb +4 -17
  231. data/test/unit/bio/data/test_codontable.rb +3 -16
  232. data/test/unit/bio/data/test_na.rb +3 -3
  233. data/test/unit/bio/db/embl/test_common.rb +3 -16
  234. data/test/unit/bio/db/embl/test_embl.rb +3 -16
  235. data/test/unit/bio/db/embl/test_embl_rel89.rb +219 -0
  236. data/test/unit/bio/db/embl/test_sptr.rb +1548 -41
  237. data/test/unit/bio/db/embl/test_uniprot.rb +3 -16
  238. data/test/unit/bio/db/kegg/test_genes.rb +3 -16
  239. data/test/unit/bio/db/pdb/test_pdb.rb +7 -24
  240. data/test/unit/bio/db/test_aaindex.rb +2 -2
  241. data/test/unit/bio/db/test_fasta.rb +3 -16
  242. data/test/unit/bio/db/test_gff.rb +3 -16
  243. data/test/unit/bio/db/test_lasergene.rb +95 -0
  244. data/test/unit/bio/db/test_newick.rb +56 -0
  245. data/test/unit/bio/db/test_nexus.rb +360 -0
  246. data/test/unit/bio/db/test_prosite.rb +5 -18
  247. data/test/unit/bio/db/test_rebase.rb +11 -25
  248. data/test/unit/bio/db/test_soft.rb +138 -0
  249. data/test/unit/bio/io/test_ddbjxml.rb +5 -17
  250. data/test/unit/bio/io/test_ensembl.rb +109 -0
  251. data/test/unit/bio/io/test_fastacmd.rb +3 -16
  252. data/test/unit/bio/io/test_flatfile.rb +237 -0
  253. data/test/unit/bio/io/test_soapwsdl.rb +4 -17
  254. data/test/unit/bio/sequence/test_aa.rb +3 -3
  255. data/test/unit/bio/sequence/test_common.rb +3 -16
  256. data/test/unit/bio/sequence/test_compat.rb +3 -16
  257. data/test/unit/bio/sequence/test_na.rb +29 -3
  258. data/test/unit/bio/shell/plugin/test_seq.rb +8 -8
  259. data/test/unit/bio/test_alignment.rb +16 -27
  260. data/test/unit/bio/test_command.rb +242 -25
  261. data/test/unit/bio/test_db.rb +3 -16
  262. data/test/unit/bio/test_feature.rb +4 -16
  263. data/test/unit/bio/test_location.rb +4 -16
  264. data/test/unit/bio/test_map.rb +230 -0
  265. data/test/unit/bio/test_pathway.rb +4 -16
  266. data/test/unit/bio/test_reference.rb +2 -2
  267. data/test/unit/bio/test_sequence.rb +7 -19
  268. data/test/unit/bio/test_shell.rb +3 -16
  269. data/test/unit/bio/test_tree.rb +593 -0
  270. data/test/unit/bio/util/restriction_enzyme/analysis/test_calculated_cuts.rb +299 -0
  271. data/test/unit/bio/util/restriction_enzyme/analysis/test_cut_ranges.rb +103 -0
  272. data/test/unit/bio/util/restriction_enzyme/analysis/test_sequence_range.rb +240 -0
  273. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_aligned_strands.rb +100 -0
  274. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_location_pair.rb +75 -0
  275. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_location_pair_in_enzyme_notation.rb +73 -0
  276. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_locations.rb +53 -0
  277. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_locations_in_enzyme_notation.rb +104 -0
  278. data/test/unit/bio/util/restriction_enzyme/single_strand/test_cut_locations_in_enzyme_notation.rb +83 -0
  279. data/test/unit/bio/util/restriction_enzyme/test_analysis.rb +246 -0
  280. data/test/unit/bio/util/restriction_enzyme/test_cut_symbol.rb +44 -0
  281. data/test/unit/bio/util/restriction_enzyme/test_double_stranded.rb +115 -0
  282. data/test/unit/bio/util/restriction_enzyme/test_single_strand.rb +147 -0
  283. data/test/unit/bio/util/restriction_enzyme/test_single_strand_complement.rb +147 -0
  284. data/test/unit/bio/util/restriction_enzyme/test_string_formatting.rb +60 -0
  285. data/test/unit/bio/util/test_color_scheme.rb +6 -18
  286. data/test/unit/bio/util/test_contingency_table.rb +6 -18
  287. data/test/unit/bio/util/test_restriction_enzyme.rb +42 -0
  288. data/test/unit/bio/util/test_sirna.rb +3 -16
  289. metadata +228 -169
  290. data/doc/BioRuby.rd.ja +0 -225
  291. data/doc/Design.rd.ja +0 -341
  292. data/doc/TODO.rd.ja +0 -138
  293. data/lib/bio/appl/fasta/format6.rb +0 -37
  294. data/lib/bio/db/kegg/cell.rb +0 -88
  295. data/lib/bio/db/kegg/ko.rb +0 -178
  296. data/lib/bio/shell/rails/Rakefile +0 -10
  297. data/lib/bio/shell/rails/app/controllers/application.rb +0 -4
  298. data/lib/bio/shell/rails/app/controllers/shell_controller.rb +0 -94
  299. data/lib/bio/shell/rails/app/helpers/application_helper.rb +0 -3
  300. data/lib/bio/shell/rails/app/models/shell_connection.rb +0 -30
  301. data/lib/bio/shell/rails/app/views/layouts/shell.rhtml +0 -37
  302. data/lib/bio/shell/rails/app/views/shell/history.rhtml +0 -5
  303. data/lib/bio/shell/rails/app/views/shell/index.rhtml +0 -2
  304. data/lib/bio/shell/rails/app/views/shell/show.rhtml +0 -13
  305. data/lib/bio/shell/rails/config/boot.rb +0 -19
  306. data/lib/bio/shell/rails/config/database.yml +0 -85
  307. data/lib/bio/shell/rails/config/environment.rb +0 -53
  308. data/lib/bio/shell/rails/config/environments/development.rb +0 -19
  309. data/lib/bio/shell/rails/config/environments/production.rb +0 -19
  310. data/lib/bio/shell/rails/config/environments/test.rb +0 -19
  311. data/lib/bio/shell/rails/config/routes.rb +0 -19
  312. data/lib/bio/shell/rails/doc/README_FOR_APP +0 -2
  313. data/lib/bio/shell/rails/public/404.html +0 -8
  314. data/lib/bio/shell/rails/public/500.html +0 -8
  315. data/lib/bio/shell/rails/public/dispatch.cgi +0 -10
  316. data/lib/bio/shell/rails/public/dispatch.fcgi +0 -24
  317. data/lib/bio/shell/rails/public/dispatch.rb +0 -10
  318. data/lib/bio/shell/rails/public/favicon.ico +0 -0
  319. data/lib/bio/shell/rails/public/images/rails.png +0 -0
  320. data/lib/bio/shell/rails/public/index.html +0 -277
  321. data/lib/bio/shell/rails/public/javascripts/controls.js +0 -750
  322. data/lib/bio/shell/rails/public/javascripts/dragdrop.js +0 -584
  323. data/lib/bio/shell/rails/public/javascripts/effects.js +0 -854
  324. data/lib/bio/shell/rails/public/javascripts/prototype.js +0 -1785
  325. data/lib/bio/shell/rails/public/robots.txt +0 -1
  326. data/lib/bio/shell/rails/public/stylesheets/main.css +0 -187
  327. data/lib/bio/shell/rails/script/about +0 -3
  328. data/lib/bio/shell/rails/script/breakpointer +0 -3
  329. data/lib/bio/shell/rails/script/console +0 -3
  330. data/lib/bio/shell/rails/script/destroy +0 -3
  331. data/lib/bio/shell/rails/script/generate +0 -3
  332. data/lib/bio/shell/rails/script/performance/benchmarker +0 -3
  333. data/lib/bio/shell/rails/script/performance/profiler +0 -3
  334. data/lib/bio/shell/rails/script/plugin +0 -3
  335. data/lib/bio/shell/rails/script/process/reaper +0 -3
  336. data/lib/bio/shell/rails/script/process/spawner +0 -3
  337. data/lib/bio/shell/rails/script/process/spinner +0 -3
  338. data/lib/bio/shell/rails/script/runner +0 -3
  339. data/lib/bio/shell/rails/script/server +0 -42
  340. data/lib/bio/shell/rails/test/test_helper.rb +0 -28
@@ -1,23 +1,10 @@
1
1
  #
2
2
  # bio/io/flatfile/bdb.rb - OBDA flatfile index by Berkley DB
3
3
  #
4
- # Copyright (C) 2002 GOTO Naohisa <ngoto@gen-info.osaka-u.ac.jp>
4
+ # Copyright:: Copyright (C) 2002 GOTO Naohisa <ng@bioruby.org>
5
+ # License:: The Ruby License
5
6
  #
6
- # This library is free software; you can redistribute it and/or
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: bdb.rb,v 1.8 2005/09/26 13:00:08 k Exp $
7
+ # $Id: bdb.rb,v 1.10 2007/04/05 23:35:41 trevor Exp $
21
8
  #
22
9
 
23
10
  begin
@@ -3,9 +3,9 @@
3
3
  #
4
4
  # Copyright:: Copyright (C) 2002
5
5
  # GOTO Naohisa <ng@bioruby.org>
6
- # License:: Ruby's
6
+ # License:: The Ruby License
7
7
  #
8
- # $Id: index.rb,v 1.18 2006/02/22 08:40:31 ngoto Exp $
8
+ # $Id: index.rb,v 1.19 2007/04/05 23:35:41 trevor Exp $
9
9
  #
10
10
  # = About Bio::FlatFileIndex
11
11
  #
@@ -2,9 +2,9 @@
2
2
  # = bio/io/flatfile/indexer.rb - OBDA flatfile indexer
3
3
  #
4
4
  # Copyright:: Copyright (C) 2002 GOTO Naohisa <ng@bioruby.org>
5
- # License:: Ruby's
5
+ # License:: The Ruby License
6
6
  #
7
- # $Id: indexer.rb,v 1.23 2006/02/22 08:41:03 ngoto Exp $
7
+ # $Id: indexer.rb,v 1.25 2007/04/05 23:35:41 trevor Exp $
8
8
  #
9
9
 
10
10
  require 'bio/io/flatfile/index'
@@ -114,6 +114,7 @@ module Bio
114
114
  DEBUG.print "fileid=#{fileid} file=#{@flatfilename.inspect}\n"
115
115
  @flatfile = Bio::FlatFile.open(@dbclass, file, 'rb')
116
116
  @flatfile.raw = nil
117
+ @flatfile.entry_pos_flag = true
117
118
  @entry = nil
118
119
  end
119
120
  attr_reader :fileid
@@ -1,23 +1,9 @@
1
1
  #
2
- # bio/io/higet.rb - SOAP interface for HGC HiGet
2
+ # = bio/io/higet.rb - SOAP interface for HGC HiGet
3
3
  #
4
- # Copyright (C) 2005 KATAYAMA Toshiaki <k@bioruby.org>
4
+ # Copyright:: Copyright (C) 2005 Toshiaki Katayama <k@bioruby.org>
5
5
  #
6
- # This library is free software; you can redistribute it and/or
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: higet.rb,v 1.2 2005/09/26 13:00:08 k Exp $
6
+ # $Id: higet.rb,v 1.3 2006/09/19 05:46:22 k Exp $
21
7
  #
22
8
 
23
9
  require 'bio/io/soapwsdl'
@@ -25,6 +11,15 @@ require 'bio/io/soapwsdl'
25
11
  module Bio
26
12
  class HGC
27
13
 
14
+ # == Description
15
+ #
16
+ # Interface for the HiGet service provided by Human Genome Center (HGC), Japan.
17
+ # HiGet performs full-text search against various biological databases.
18
+ #
19
+ # == References
20
+ #
21
+ # * http://higet.hgc.jp/
22
+ #
28
23
  class HiGet < Bio::SOAPWSDL
29
24
 
30
25
  SERVER_URI = "http://higet.hgc.jp/soap/higet.wsdl"
@@ -76,17 +71,3 @@ if __FILE__ == $0
76
71
 
77
72
  end
78
73
 
79
-
80
- =begin
81
-
82
- = Bio::HGC::HiGet
83
-
84
- * ((<URL:http://higet.hgc.jp/>))
85
-
86
- == HiGet#hifind
87
- == HiGet#higet
88
- == HiGet#higet_in_fasta
89
- == HiGet#higet_in_xml
90
-
91
- =end
92
-
@@ -1,36 +1,198 @@
1
1
  #
2
- # bio/io/keggapi.rb - KEGG API access class
2
+ # = bio/io/keggapi.rb - KEGG API access class
3
3
  #
4
- # Copyright (C) 2003, 2004 KATAYAMA Toshiaki <k@bioruby.org>
4
+ # Copyright:: Copyright (C) 2003, 2004 Toshiaki Katayama <k@bioruby.org>
5
+ # License:: The Ruby License
5
6
  #
6
- # This library is free software; you can redistribute it and/or
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: keggapi.rb,v 1.11 2005/12/18 19:10:55 k Exp $
7
+ # $Id: keggapi.rb,v 1.14 2007/04/05 23:35:41 trevor Exp $
21
8
  #
22
9
 
23
10
  require 'bio/io/soapwsdl'
24
11
  require 'uri'
25
12
  require 'net/http'
13
+ require 'bio/command'
26
14
 
27
15
  module Bio
28
16
  class KEGG
29
17
 
18
+ # == Description
19
+ #
20
+ # KEGG API is a web service to use KEGG system via SOAP/WSDL.
21
+ #
22
+ # == References
23
+ #
24
+ # For more informations on KEGG API, see the following site and read the
25
+ # reference manual.
26
+ #
27
+ # * http://www.genome.jp/kegg/soap/
28
+ # * http://www.genome.jp/kegg/soap/doc/keggapi_manual.html
29
+ #
30
+ # == List of methods
31
+ #
32
+ # As of KEGG API v5.0
33
+ #
34
+ # * list_databases
35
+ # * list_organisms
36
+ # * list_pathways(org)
37
+ # * binfo(string)
38
+ # * bget(string)
39
+ # * bfind(string)
40
+ # * btit(string)
41
+ # * get_linkdb_by_entry(entry_id, db, start, max_results)
42
+ # * get_best_best_neighbors_by_gene(genes_id, start, max_results)
43
+ # * get_best_neighbors_by_gene(genes_id, start, max_results)
44
+ # * get_reverse_best_neighbors_by_gene(genes_id, start, max_results)
45
+ # * get_paralogs_by_gene(genes_id, start, max_results)
46
+ # * get_similarity_between_genes(genes_id1, genes_id2)
47
+ # * get_motifs_by_gene(genes_id, db)
48
+ # * get_genes_by_motifs(motif_id_list, start, max_results)
49
+ # * get_ko_by_gene(genes_id)
50
+ # * get_ko_members(ko_id)
51
+ # * get_oc_members_by_gene(genes_id, start, max_results)
52
+ # * get_pc_members_by_gene(genes_id, start, max_results)
53
+ # * mark_pathway_by_objects(pathway_id, object_id_list)
54
+ # * color_pathway_by_objects(pathway_id, object_id_list, fg_color_list, bg_color_list)
55
+ # * get_genes_by_pathway(pathway_id)
56
+ # * get_enzymes_by_pathway(pathway_id)
57
+ # * get_compounds_by_pathway(pathway_id)
58
+ # * get_reactions_by_pathway(pathway_id)
59
+ # * get_pathways_by_genes(genes_id_list)
60
+ # * get_pathways_by_enzymes(enzyme_id_list)
61
+ # * get_pathways_by_compounds(compound_id_list)
62
+ # * get_pathways_by_reactions(reaction_id_list)
63
+ # * get_linked_pathways(pathway_id)
64
+ # * get_genes_by_enzyme(enzyme_id, org)
65
+ # * get_enzymes_by_gene(genes_id)
66
+ # * get_enzymes_by_compound(compound_id)
67
+ # * get_enzymes_by_reaction(reaction_id)
68
+ # * get_compounds_by_enzyme(enzyme_id)
69
+ # * get_compounds_by_reaction(reaction_id)
70
+ # * get_reactions_by_enzyme(enzyme_id)
71
+ # * get_reactions_by_compound(compound_id)
72
+ # * get_genes_by_organism(org, start, max_results)
73
+ # * get_number_of_genes_by_organism(org)
74
+ #
75
+ # == KEGG API methods implemented only in BioRuby
76
+ #
77
+ # In BioRuby, returned values are added filter method to pick up
78
+ # values in a complex data type as an array.
79
+ #
80
+ # #!/usr/bin/env ruby
81
+ #
82
+ # require 'bio'
83
+ #
84
+ # serv = Bio::KEGG::API.new
85
+ # results = serv.get_best_neighbors_by_gene("eco:b0002", "bsu")
86
+ #
87
+ # # case 0 : without filter
88
+ # results.each do |hit|
89
+ # print hit.genes_id1, "\t", hit.genes_id2, "\t", hit.sw_score, "\n"
90
+ # end
91
+ #
92
+ # # case 1 : select gene names and SW score only
93
+ # fields = [:genes_id1, :genes_id2, :sw_score]
94
+ # results.each do |hit|
95
+ # puts hit.filter(fields).join("\t")
96
+ # end
97
+ #
98
+ # # case 2 : also uses aligned position in each amino acid sequence etc.
99
+ # fields1 = [:genes_id1, :start_position1, :end_position1, :best_flag_1to2]
100
+ # fields2 = [:genes_id2, :start_position2, :end_position2, :best_flag_2to1]
101
+ # results.each do |hit|
102
+ # print "> score: ", hit.sw_score, ", identity: ", hit.identity, "\n"
103
+ # print "1:\t", hit.filter(fields1).join("\t"), "\n"
104
+ # print "2:\t", hit.filter(fields2).join("\t"), "\n"
105
+ # end
106
+ #
107
+ # Using filter method will make it easy to change fields to select and
108
+ # keep the script clean.
109
+ #
110
+ # * Bio::KEGG::API#get_all_neighbors_by_gene(genes_id, org)
111
+ # * Bio::KEGG::API#get_all_best_best_neighbors_by_gene(genes_id)
112
+ # * Bio::KEGG::API#get_all_best_neighbors_by_gene(genes_id)
113
+ # * Bio::KEGG::API#get_all_reverse_best_neighbors_by_gene(genes_id)
114
+ # * Bio::KEGG::API#get_all_paralogs_by_gene(genes_id)
115
+ # * Bio::KEGG::API#get_all_genes_by_motifs(motif_id_list)
116
+ # * Bio::KEGG::API#get_all_oc_members_by_gene(genes_id)
117
+ # * Bio::KEGG::API#get_all_pc_members_by_gene(genes_id)
118
+ # * Bio::KEGG::API#get_all_genes_by_organism(org)
119
+ #
120
+ # These methods are wrapper for the methods without _all_ in its name
121
+ # and internally iterate to retrive all the results using start/max_results
122
+ # value pairs described above. For example,
123
+ #
124
+ # #!/usr/bin/env ruby
125
+ #
126
+ # require 'soap/wsdlDriver'
127
+ #
128
+ # wsdl = "http://soap.genome.jp/KEGG.wsdl"
129
+ # serv = SOAP::WSDLDriverFactory.new(wsdl).create_driver
130
+ # serv.generate_explicit_type = true
131
+ #
132
+ # start = 1
133
+ # max_results = 100
134
+ #
135
+ # loop do
136
+ # results = serv.get_best_neighbors_by_gene('eco:b0002', start, max_results)
137
+ # break unless results # when no more results returned
138
+ # results.each do |hit|
139
+ # print hit.genes_id1, "\t", hit.genes_id2, "\t", hit.sw_score, "\n"
140
+ # end
141
+ # start += max_results
142
+ # end
143
+ #
144
+ # can be witten as
145
+ #
146
+ # #!/usr/bin/env ruby
147
+ #
148
+ # require 'bio'
149
+ #
150
+ # serv = Bio::KEGG::API.new
151
+ #
152
+ # results = serv.get_all_best_neighbors_by_gene('eco:b0002')
153
+ # results.each do |hit|
154
+ # print hit.genes_id1, "\t", hit.genes_id2, "\t", hit.sw_score, "\n"
155
+ # end
156
+ #
157
+ #
158
+ # * Bio::KEGG::API#save_image(url, filename = nil)
159
+ #
160
+ # Some methods of the KEGG API will return a URL of the generated image.
161
+ # This method save an image specified by the URL. The filename can be
162
+ # specified by its second argument, otherwise basename of the URL will
163
+ # be used.
164
+ #
165
+ # #!/usr/bin/env ruby
166
+ #
167
+ # require 'bio'
168
+ #
169
+ # serv = Bio::KEGG::API.new("http://soap.genome.jp/v3.0/KEGG.wsdl")
170
+ #
171
+ # list = ["eco:b1002", "eco:b2388"]
172
+ # url = serv.mark_pathway_by_objects("path:eco00010", list)
173
+ #
174
+ # # Save with the original filename (eco00010.gif in this case)
175
+ # serv.save_image(url)
176
+ #
177
+ # # or save as "save_image.gif"
178
+ # serv.save_image(url, "save_image.gif")
179
+ #
180
+ # * Bio::KEGG::API#get_entries(entry_id_list)
181
+ # * Bio::KEGG::API#get_aaseqs(entry_id_list)
182
+ # * Bio::KEGG::API#get_naseqs(entry_id_list)
183
+ # * Bio::KEGG::API#get_definitions(entry_id_list)
184
+ #
185
+ # These methods are for the shortcut and backward compatibility
186
+ # (these methods existed in the older version of the KEGG API).
187
+ #
30
188
  class API < Bio::SOAPWSDL
31
189
 
32
190
  SERVER_URI = "http://soap.genome.jp/KEGG.wsdl"
33
191
 
192
+ # Connect to the KEGG API's SOAP server. A WSDL file will be automatically
193
+ # downloaded and parsed to generate the SOAP client driver. The default URL
194
+ # for the WSDL is http://soap.genome.jp/KEGG.wsdl but it can be changed by
195
+ # the argument or by wsdl= method.
34
196
  def initialize(wsdl = nil)
35
197
  @wsdl = wsdl || SERVER_URI
36
198
  @log = nil
@@ -38,7 +200,17 @@ class API < Bio::SOAPWSDL
38
200
  @max_results = 100
39
201
  create_driver
40
202
  end
41
- attr_accessor :start, :max_results
203
+
204
+ # Returns current value for the 'start' count for the methods having
205
+ # start/max_results argument pairs or changes the default value for
206
+ # the 'start' count.
207
+ attr_accessor :start
208
+
209
+ # Returns current value for the 'max_results' number for the methods having
210
+ # start/max_results argument pairs or changes the default value for the
211
+ # 'max_results' count. If your request timeouts, try smaller value for
212
+ # the max_results.
213
+ attr_accessor :max_results
42
214
 
43
215
  def method_missing(*arg)
44
216
  begin
@@ -50,6 +222,7 @@ class API < Bio::SOAPWSDL
50
222
  return results
51
223
  end
52
224
 
225
+
53
226
  # def get_all_neighbors_by_gene(genes_id, org)
54
227
  # get_all(:get_neighbors_by_gene, genes_id, org)
55
228
  # end
@@ -95,7 +268,7 @@ class API < Bio::SOAPWSDL
95
268
  schema, user, host, port, reg, path, = URI.split(url)
96
269
  filename ||= File.basename(path)
97
270
 
98
- http = Net::HTTP.new(host, port)
271
+ http = Bio::Command.new_http(host, port)
99
272
  response, = http.get(path)
100
273
  File.open(filename, "w+") do |f|
101
274
  f.print response.body
@@ -200,7 +373,7 @@ if __FILE__ == $0
200
373
  serv = Bio::KEGG::API.new
201
374
  # serv.log = STDERR
202
375
 
203
- puts "--- parameters"
376
+ puts "# * parameters"
204
377
  puts " wsdl : #{serv.wsdl}"
205
378
  puts " log : #{serv.log}"
206
379
  puts " start : #{serv.start}"
@@ -252,19 +425,19 @@ if __FILE__ == $0
252
425
  puts "### btit('eco:b0002 eco:b0003')"
253
426
  puts serv.btit("eco:b0002 eco:b0003")
254
427
 
255
- puts "--- get_entries(['eco:b0002', 'eco:b0003'])"
428
+ puts "# * get_entries(['eco:b0002', 'eco:b0003'])"
256
429
  puts serv.get_entries(["eco:b0002", "eco:b0003"])
257
430
 
258
- puts "--- get_aaseqs(['eco:b0002', 'eco:b0003'])"
431
+ puts "# * get_aaseqs(['eco:b0002', 'eco:b0003'])"
259
432
  puts serv.get_aaseqs(["eco:b0002", "eco:b0003"])
260
433
 
261
- puts "--- get_naseqs(['eco:b0002', 'eco:b0003'])"
434
+ puts "# * get_naseqs(['eco:b0002', 'eco:b0003'])"
262
435
  puts serv.get_naseqs(["eco:b0002", "eco:b0003"])
263
436
 
264
- puts "--- get_definitions(['eco:b0002', 'eco:b0003'])"
437
+ puts "# * get_definitions(['eco:b0002', 'eco:b0003'])"
265
438
  puts serv.get_definitions(["eco:b0002", "eco:b0003"])
266
439
 
267
- puts "--- get_definitions(('eco:b0001'..'eco:b0200').to_a)"
440
+ puts "# * get_definitions(('eco:b0001'..'eco:b0200').to_a)"
268
441
  puts serv.get_definitions(("eco:b0001".."eco:b0200").to_a)
269
442
 
270
443
  puts "=== LinkDB"
@@ -275,7 +448,7 @@ if __FILE__ == $0
275
448
  puts [ link.entry_id1, link.entry_id2, link.type, link.path ].join("\t")
276
449
  end
277
450
 
278
- puts "--- get_all_linkdb_by_entry('eco:b0002', 'pathway')"
451
+ puts "# * get_all_linkdb_by_entry('eco:b0002', 'pathway')"
279
452
  list = serv.get_all_linkdb_by_entry("eco:b0002", "pathway")
280
453
  list.each do |link|
281
454
  puts [ link.entry_id1, link.entry_id2, link.type, link.path ].join("\t")
@@ -289,7 +462,7 @@ if __FILE__ == $0
289
462
  puts [ hit.genes_id1, hit.genes_id2, hit.sw_score ].join("\t")
290
463
  end
291
464
 
292
- puts "--- get_all_neighbors_by_gene('eco:b0002', 'bsu')"
465
+ puts "# * get_all_neighbors_by_gene('eco:b0002', 'bsu')"
293
466
  list = serv.get_all_neighbors_by_gene("eco:b0002", "bsu")
294
467
  list.each do |hit|
295
468
  puts [ hit.genes_id1, hit.genes_id2, hit.sw_score ].join("\t")
@@ -301,7 +474,7 @@ if __FILE__ == $0
301
474
  puts [ hit.genes_id1, hit.genes_id2, hit.sw_score ].join("\t")
302
475
  end
303
476
 
304
- puts "--- get_all_best_best_neighbors_by_gene('eco:b0002')"
477
+ puts "# * get_all_best_best_neighbors_by_gene('eco:b0002')"
305
478
  list = serv.get_all_best_best_neighbors_by_gene("eco:b0002")
306
479
  list.each do |hit|
307
480
  puts [ hit.genes_id1, hit.genes_id2, hit.sw_score ].join("\t")
@@ -313,7 +486,7 @@ if __FILE__ == $0
313
486
  puts [ hit.genes_id1, hit.genes_id2, hit.sw_score ].join("\t")
314
487
  end
315
488
 
316
- puts "--- get_all_best_neighbors_by_gene('eco:b0002')"
489
+ puts "# * get_all_best_neighbors_by_gene('eco:b0002')"
317
490
  list = serv.get_all_best_neighbors_by_gene("eco:b0002")
318
491
  list.each do |hit|
319
492
  puts [ hit.genes_id1, hit.genes_id2, hit.sw_score ].join("\t")
@@ -325,7 +498,7 @@ if __FILE__ == $0
325
498
  puts [ hit.genes_id1, hit.genes_id2, hit.sw_score ].join("\t")
326
499
  end
327
500
 
328
- puts "--- get_all_reverse_best_neighbors_by_gene('eco:b0002')"
501
+ puts "# * get_all_reverse_best_neighbors_by_gene('eco:b0002')"
329
502
  list = serv.get_all_reverse_best_neighbors_by_gene("eco:b0002")
330
503
  list.each do |hit|
331
504
  puts [ hit.genes_id1, hit.genes_id2, hit.sw_score ].join("\t")
@@ -337,7 +510,7 @@ if __FILE__ == $0
337
510
  puts [ hit.genes_id1, hit.genes_id2, hit.sw_score ].join("\t")
338
511
  end
339
512
 
340
- puts "--- get_all_paralogs_by_gene('eco:b0002')"
513
+ puts "# * get_all_paralogs_by_gene('eco:b0002')"
341
514
  list = serv.get_all_paralogs_by_gene("eco:b0002")
342
515
  list.each do |hit|
343
516
  puts [ hit.genes_id1, hit.genes_id2, hit.sw_score ].join("\t")
@@ -391,7 +564,7 @@ if __FILE__ == $0
391
564
  puts "### get_motifs_by_gene('eco:b0002', 'all')"
392
565
  list = serv.get_motifs_by_gene("eco:b0002", "all")
393
566
  list.each do |motif|
394
- puts "--- motif result"
567
+ puts "# * motif result"
395
568
  puts " motif_id : #{motif.motif_id}"
396
569
  puts " definition : #{motif.definition}"
397
570
  puts " genes_id : #{motif.genes_id}"
@@ -407,7 +580,7 @@ if __FILE__ == $0
407
580
  puts [ gene.entry_id, gene.definition ].join("\t")
408
581
  end
409
582
 
410
- puts "--- get_all_genes_by_motifs(['pf:ACT', 'ps:ASPARTOKINASE'])"
583
+ puts "# * get_all_genes_by_motifs(['pf:ACT', 'ps:ASPARTOKINASE'])"
411
584
  list = serv.get_all_genes_by_motifs(["pf:ACT", "ps:ASPARTOKINASE"])
412
585
  list.each do |gene|
413
586
  puts [ gene.entry_id, gene.definition ].join("\t")
@@ -433,7 +606,7 @@ if __FILE__ == $0
433
606
  puts gene
434
607
  end
435
608
 
436
- puts "--- get_all_oc_members_by_gene('eco:b0002')"
609
+ puts "# * get_all_oc_members_by_gene('eco:b0002')"
437
610
  list = serv.get_all_oc_members_by_gene("eco:b0002")
438
611
  list.each do |gene|
439
612
  puts gene
@@ -445,7 +618,7 @@ if __FILE__ == $0
445
618
  puts gene
446
619
  end
447
620
 
448
- puts "--- get_all_pc_members_by_gene('eco:b0002')"
621
+ puts "# * get_all_pc_members_by_gene('eco:b0002')"
449
622
  list = serv.get_all_pc_members_by_gene("eco:b0002")
450
623
  list.each do |gene|
451
624
  puts gene
@@ -471,7 +644,7 @@ if __FILE__ == $0
471
644
  url = serv.color_pathway_by_objects("path:eco00053", obj_list, fg_list, bg_list)
472
645
  puts url
473
646
 
474
- #puts "--- save_image(#{url})"
647
+ #puts "# * save_image(#{url})"
475
648
  #filename = serv.save_image(url, "test.gif")
476
649
  #filename = serv.save_image(url)
477
650
  #puts filename
@@ -616,7 +789,7 @@ if __FILE__ == $0
616
789
  puts gene
617
790
  end
618
791
 
619
- puts "--- get_all_genes_by_organism('mge')"
792
+ puts "# * get_all_genes_by_organism('mge')"
620
793
  list = serv.get_all_genes_by_organism("mge")
621
794
  list.each do |gene|
622
795
  puts gene
@@ -629,235 +802,3 @@ if __FILE__ == $0
629
802
 
630
803
  end
631
804
 
632
-
633
- =begin
634
-
635
- = Bio::KEGG::API
636
-
637
- KEGG API is a web service to use KEGG system via SOAP/WSDL. For more
638
- informations on KEGG API, see the following site and its reference manual.
639
-
640
- * ((<URL:http://www.genome.jp/kegg/soap/>))
641
-
642
- --- Bio::KEGG::API.new(wsdl = nil)
643
-
644
- Connect to the KEGG API's SOAP server. A WSDL file will be automatically
645
- downloaded and parsed to generate the SOAP client driver. The default URL
646
- for the WSDL is http://soap.genome.jp/KEGG.wsdl but it can be changed by
647
- the argument or by wsdl= method.
648
-
649
- --- Bio::KEGG::API#wsdl
650
-
651
- Returns URL of the current WSDL file.
652
-
653
- --- Bio::KEGG::API#wsdl=(url)
654
-
655
- Change the URL for WSDL file of the KEGG API if needed for some reason:
656
-
657
- serv = Bio::KEGG::API.new("http://133.103.100.186/KEGG.wsdl")
658
-
659
- or
660
-
661
- serv = Bio::KEGG::API.new
662
- serv.wsdl = "http://133.103.100.186/KEGG.wsdl"
663
-
664
- note that both can't read two or more different WSDL files.
665
-
666
- --- Bio::KEGG::API#log
667
-
668
- Returns current logging IO.
669
-
670
- --- Bio::KEGG::API#log=(io)
671
-
672
- Change the IO for logging. The argument is passed to wiredump_dev method
673
- of the SOAP4R, thus
674
-
675
- serv = Bio::KEGG::API.new
676
- serv.log = STDERR
677
-
678
- will print all the SOAP transactions in standard error.
679
- This feature is especially useful for debug.
680
-
681
- --- Bio::KEGG::API#start
682
-
683
- Returns current value for the 'start' count for the methods having
684
- start/max_results argument pairs.
685
-
686
- --- Bio::KEGG::API#start=(number)
687
-
688
- Changes the default value for the 'start' count.
689
-
690
- --- Bio::KEGG::API#max_results
691
-
692
- Returns current value for the 'max_results' number for the methods having
693
- start/max_results argument pairs.
694
-
695
- --- Bio::KEGG::API#max_results=(number)
696
-
697
- Changes the default value for the 'max_results' count.
698
- If your request timeouts, try smaller value for the max_results.
699
-
700
- === KEGG API methods implemented only in BioRuby
701
-
702
- In BioRuby, returned values are added filter method to pick up
703
- values in a complex data type as an array.
704
-
705
- #!/usr/bin/env ruby
706
-
707
- require 'bio'
708
-
709
- serv = Bio::KEGG::API.new
710
- results = serv.get_best_neighbors_by_gene("eco:b0002", "bsu")
711
-
712
- # case 0 : without filter
713
- results.each do |hit|
714
- print hit.genes_id1, "\t", hit.genes_id2, "\t", hit.sw_score, "\n"
715
- end
716
-
717
- # case 1 : select gene names and SW score only
718
- fields = [:genes_id1, :genes_id2, :sw_score]
719
- results.each do |hit|
720
- puts hit.filter(fields).join("\t")
721
- end
722
-
723
- # case 2 : also uses aligned position in each amino acid sequence etc.
724
- fields1 = [:genes_id1, :start_position1, :end_position1, :best_flag_1to2]
725
- fields2 = [:genes_id2, :start_position2, :end_position2, :best_flag_2to1]
726
- results.each do |hit|
727
- print "> score: ", hit.sw_score, ", identity: ", hit.identity, "\n"
728
- print "1:\t", hit.filter(fields1).join("\t"), "\n"
729
- print "2:\t", hit.filter(fields2).join("\t"), "\n"
730
- end
731
-
732
- Using filter method will make it easy to change fields to select and
733
- keep the script clean.
734
-
735
-
736
- --- Bio::KEGG::API#get_all_neighbors_by_gene(genes_id, org)
737
- --- Bio::KEGG::API#get_all_best_best_neighbors_by_gene(genes_id)
738
- --- Bio::KEGG::API#get_all_best_neighbors_by_gene(genes_id)
739
- --- Bio::KEGG::API#get_all_reverse_best_neighbors_by_gene(genes_id)
740
- --- Bio::KEGG::API#get_all_paralogs_by_gene(genes_id)
741
- --- Bio::KEGG::API#get_all_genes_by_motifs(motif_id_list)
742
- --- Bio::KEGG::API#get_all_oc_members_by_gene(genes_id)
743
- --- Bio::KEGG::API#get_all_pc_members_by_gene(genes_id)
744
- --- Bio::KEGG::API#get_all_genes_by_organism(org)
745
-
746
- These methods are wrapper for the methods without _all_ in its name
747
- and internally iterate to retrive all the results using start/max_results
748
- value pairs described above. For example,
749
-
750
- #!/usr/bin/env ruby
751
-
752
- require 'soap/wsdlDriver'
753
-
754
- wsdl = "http://soap.genome.jp/KEGG.wsdl"
755
- serv = SOAP::WSDLDriverFactory.new(wsdl).create_driver
756
- serv.generate_explicit_type = true
757
-
758
- start = 1
759
- max_results = 100
760
-
761
- loop do
762
- results = serv.get_best_neighbors_by_gene('eco:b0002', start, max_results)
763
- break unless results # when no more results returned
764
- results.each do |hit|
765
- print hit.genes_id1, "\t", hit.genes_id2, "\t", hit.sw_score, "\n"
766
- end
767
- start += max_results
768
- end
769
-
770
- can be witten as
771
-
772
- #!/usr/bin/env ruby
773
-
774
- require 'bio'
775
-
776
- serv = Bio::KEGG::API.new
777
-
778
- results = serv.get_all_best_neighbors_by_gene('eco:b0002')
779
- results.each do |hit|
780
- print hit.genes_id1, "\t", hit.genes_id2, "\t", hit.sw_score, "\n"
781
- end
782
-
783
-
784
- --- Bio::KEGG::API#save_image(url, filename = nil)
785
-
786
- Some methods of the KEGG API will return a URL of the generated image.
787
- This method save an image specified by the URL. The filename can be
788
- specified by its second argument, otherwise basename of the URL will
789
- be used.
790
-
791
- #!/usr/bin/env ruby
792
-
793
- require 'bio'
794
-
795
- serv = Bio::KEGG::API.new("http://soap.genome.jp/v3.0/KEGG.wsdl")
796
-
797
- list = ["eco:b1002", "eco:b2388"]
798
- url = serv.mark_pathway_by_objects("path:eco00010", list)
799
-
800
- # Save with the original filename (eco00010.gif in this case)
801
- serv.save_image(url)
802
-
803
- # or save as "save_image.gif"
804
- serv.save_image(url, "save_image.gif")
805
-
806
- --- Bio::KEGG::API#get_entries(entry_id_list)
807
- --- Bio::KEGG::API#get_aaseqs(entry_id_list)
808
- --- Bio::KEGG::API#get_naseqs(entry_id_list)
809
- --- Bio::KEGG::API#get_definitions(entry_id_list)
810
-
811
- For the shortcut and backward compatibility.
812
-
813
-
814
- === General KEGG API methods
815
-
816
- For the methods listed below, consult the KEGG API manual at
817
-
818
- * ((<URL:http://www.genome.jp/kegg/soap/doc/keggapi_manual.html>))
819
-
820
- --- list_databases
821
- --- list_organisms
822
- --- list_pathways(org)
823
- --- binfo(string)
824
- --- bget(string)
825
- --- bfind(string)
826
- --- btit(string)
827
- --- get_linkdb_by_entry(entry_id, db, start, max_results)
828
- #--- get_neighbors_by_gene(genes_id, org, start, max_results)
829
- --- get_best_best_neighbors_by_gene(genes_id, start, max_results)
830
- --- get_best_neighbors_by_gene(genes_id, start, max_results)
831
- --- get_reverse_best_neighbors_by_gene(genes_id, start, max_results)
832
- --- get_paralogs_by_gene(genes_id, start, max_results)
833
- --- get_similarity_between_genes(genes_id1, genes_id2)
834
- --- get_motifs_by_gene(genes_id, db)
835
- --- get_genes_by_motifs(motif_id_list, start, max_results)
836
- --- get_ko_by_gene(genes_id)
837
- --- get_ko_members(ko_id)
838
- --- get_oc_members_by_gene(genes_id, start, max_results)
839
- --- get_pc_members_by_gene(genes_id, start, max_results)
840
- --- mark_pathway_by_objects(pathway_id, object_id_list)
841
- --- color_pathway_by_objects(pathway_id, object_id_list, fg_color_list, bg_color_list)
842
- --- get_genes_by_pathway(pathway_id)
843
- --- get_enzymes_by_pathway(pathway_id)
844
- --- get_compounds_by_pathway(pathway_id)
845
- --- get_reactions_by_pathway(pathway_id)
846
- --- get_pathways_by_genes(genes_id_list)
847
- --- get_pathways_by_enzymes(enzyme_id_list)
848
- --- get_pathways_by_compounds(compound_id_list)
849
- --- get_pathways_by_reactions(reaction_id_list)
850
- --- get_linked_pathways(pathway_id)
851
- --- get_genes_by_enzyme(enzyme_id, org)
852
- --- get_enzymes_by_gene(genes_id)
853
- --- get_enzymes_by_compound(compound_id)
854
- --- get_enzymes_by_reaction(reaction_id)
855
- --- get_compounds_by_enzyme(enzyme_id)
856
- --- get_compounds_by_reaction(reaction_id)
857
- --- get_reactions_by_enzyme(enzyme_id)
858
- --- get_reactions_by_compound(compound_id)
859
- --- get_genes_by_organism(org, start, max_results)
860
- --- get_number_of_genes_by_organism(org)
861
-
862
- =end
863
-