bio-nexml 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +15 -0
- data/Gemfile.lock +24 -0
- data/LICENSE.txt +20 -0
- data/README.rdoc +47 -0
- data/Rakefile +55 -0
- data/TODO.txt +6 -0
- data/VERSION +1 -0
- data/bio-nexml.gemspec +126 -0
- data/extconf.rb +2 -0
- data/lib/bio-nexml.rb +0 -0
- data/lib/bio.rb +321 -0
- data/lib/bio/db/nexml.rb +109 -0
- data/lib/bio/db/nexml/mapper.rb +113 -0
- data/lib/bio/db/nexml/mapper/framework.rb +157 -0
- data/lib/bio/db/nexml/mapper/inflection.rb +99 -0
- data/lib/bio/db/nexml/mapper/repository.rb +59 -0
- data/lib/bio/db/nexml/matrix.rb +1046 -0
- data/lib/bio/db/nexml/parser.rb +622 -0
- data/lib/bio/db/nexml/schema/README.txt +21 -0
- data/lib/bio/db/nexml/schema/abstract.xsd +159 -0
- data/lib/bio/db/nexml/schema/characters/README.txt +1 -0
- data/lib/bio/db/nexml/schema/characters/abstractcharacters.xsd +361 -0
- data/lib/bio/db/nexml/schema/characters/characters.xsd +22 -0
- data/lib/bio/db/nexml/schema/characters/continuous.xsd +190 -0
- data/lib/bio/db/nexml/schema/characters/dna.xsd +282 -0
- data/lib/bio/db/nexml/schema/characters/protein.xsd +280 -0
- data/lib/bio/db/nexml/schema/characters/restriction.xsd +239 -0
- data/lib/bio/db/nexml/schema/characters/rna.xsd +283 -0
- data/lib/bio/db/nexml/schema/characters/standard.xsd +261 -0
- data/lib/bio/db/nexml/schema/external/sawsdl.xsd +21 -0
- data/lib/bio/db/nexml/schema/external/xhtml-datatypes-1.xsd +177 -0
- data/lib/bio/db/nexml/schema/external/xlink.xsd +75 -0
- data/lib/bio/db/nexml/schema/external/xml.xsd +145 -0
- data/lib/bio/db/nexml/schema/meta/README.txt +2 -0
- data/lib/bio/db/nexml/schema/meta/annotations.xsd +100 -0
- data/lib/bio/db/nexml/schema/meta/meta.xsd +294 -0
- data/lib/bio/db/nexml/schema/nexml.xsd +104 -0
- data/lib/bio/db/nexml/schema/taxa/README.txt +2 -0
- data/lib/bio/db/nexml/schema/taxa/taxa.xsd +39 -0
- data/lib/bio/db/nexml/schema/trees/README.txt +2 -0
- data/lib/bio/db/nexml/schema/trees/abstracttrees.xsd +135 -0
- data/lib/bio/db/nexml/schema/trees/network.xsd +113 -0
- data/lib/bio/db/nexml/schema/trees/tree.xsd +149 -0
- data/lib/bio/db/nexml/schema/trees/trees.xsd +36 -0
- data/lib/bio/db/nexml/taxa.rb +147 -0
- data/lib/bio/db/nexml/trees.rb +663 -0
- data/lib/bio/db/nexml/writer.rb +265 -0
- data/test/data/nexml/test.xml +69 -0
- data/test/test_bio-nexml.rb +17 -0
- data/test/unit/bio/db/nexml/tc_factory.rb +119 -0
- data/test/unit/bio/db/nexml/tc_mapper.rb +78 -0
- data/test/unit/bio/db/nexml/tc_matrix.rb +551 -0
- data/test/unit/bio/db/nexml/tc_parser.rb +21 -0
- data/test/unit/bio/db/nexml/tc_taxa.rb +118 -0
- data/test/unit/bio/db/nexml/tc_trees.rb +370 -0
- data/test/unit/bio/db/nexml/tc_writer.rb +633 -0
- metadata +253 -0
data/Gemfile
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
source "http://rubygems.org"
|
2
|
+
# Add dependencies required to use your gem here.
|
3
|
+
# Example:
|
4
|
+
# gem "activesupport", ">= 2.3.5"
|
5
|
+
|
6
|
+
# Add dependencies to develop your gem here.
|
7
|
+
# Include everything needed to run rake, tests, features, etc.
|
8
|
+
group :development do
|
9
|
+
gem "shoulda", ">= 0"
|
10
|
+
gem "bundler", "~> 1.0.0"
|
11
|
+
gem "jeweler", "~> 1.5.2"
|
12
|
+
gem "rcov", ">= 0"
|
13
|
+
gem "bio", ">= 1.4.1"
|
14
|
+
gem "libxml-ruby", ">= 1.1.4"
|
15
|
+
end
|
data/Gemfile.lock
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
GEM
|
2
|
+
remote: http://rubygems.org/
|
3
|
+
specs:
|
4
|
+
bio (1.4.1)
|
5
|
+
git (1.2.5)
|
6
|
+
jeweler (1.5.2)
|
7
|
+
bundler (~> 1.0.0)
|
8
|
+
git (>= 1.2.5)
|
9
|
+
rake
|
10
|
+
libxml-ruby (1.1.4)
|
11
|
+
rake (0.8.7)
|
12
|
+
rcov (0.9.9)
|
13
|
+
shoulda (2.11.3)
|
14
|
+
|
15
|
+
PLATFORMS
|
16
|
+
ruby
|
17
|
+
|
18
|
+
DEPENDENCIES
|
19
|
+
bio (>= 1.4.1)
|
20
|
+
bundler (~> 1.0.0)
|
21
|
+
jeweler (~> 1.5.2)
|
22
|
+
libxml-ruby (>= 1.1.4)
|
23
|
+
rcov
|
24
|
+
shoulda
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2011 rvosa
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.rdoc
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
= bio-nexml
|
2
|
+
|
3
|
+
NeXML is a file format for phylogenetic data. It is inspired by the modular
|
4
|
+
architecture of the commonly-used NEXUS file format (hence the name) in that
|
5
|
+
a NeXML instance document can contain:
|
6
|
+
* sets of Operational Taxonomic Units (OTUs), i.e. the tips in phylogenetic
|
7
|
+
trees, and that which comparative observations are made on. Often these are
|
8
|
+
species ("taxa").
|
9
|
+
* sets of phylogenetic trees (or reticulate trees, i.e. networks)
|
10
|
+
* sets of comparative data, i.e. molecular sequences, morphological categorical
|
11
|
+
data, continuous data, and other types.
|
12
|
+
|
13
|
+
The elements in a NeXML document can be annotated using RDFa
|
14
|
+
(http://en.wikipedia.org/wiki/RDFa), which means that every object that can
|
15
|
+
be parsed out of a NeXML document must be an object that, in turn, can be
|
16
|
+
annotated with predicates (and their namespaces) and other objects (with,
|
17
|
+
perhaps, their own namespaces). The advantage over previous file formats is
|
18
|
+
that we can retain all metadata for all objects within one file, regardless
|
19
|
+
where the metadata come from.
|
20
|
+
|
21
|
+
NeXML can be transformed to RDF using an XSL stylesheet. As such, NeXML forms
|
22
|
+
an intermediate format between traditional flat file formats (with predictable
|
23
|
+
structure but no semantics) and RDF (with loose structure, but lots of
|
24
|
+
semantics) that is both easy to work with, yet ready for the Semantic Web.
|
25
|
+
|
26
|
+
To learn more, visit http://www.nexml.org
|
27
|
+
|
28
|
+
== Contributing to bio-nexml
|
29
|
+
|
30
|
+
* Check out the latest master to make sure the feature hasn't been implemented
|
31
|
+
or the bug hasn't been fixed yet
|
32
|
+
* Check out the issue tracker to make sure someone already hasn't requested it
|
33
|
+
and/or contributed it
|
34
|
+
* Fork the project
|
35
|
+
* Start a feature/bugfix branch
|
36
|
+
* Commit and push until you are happy with your contribution
|
37
|
+
* Make sure to add tests for it. This is important so I don't break it in a
|
38
|
+
future version unintentionally.
|
39
|
+
* Please try not to mess with the Rakefile, version, or history. If you want to
|
40
|
+
have your own version, or is otherwise necessary, that is fine, but please
|
41
|
+
isolate to its own commit so I can cherry-pick around it.
|
42
|
+
|
43
|
+
== Copyright
|
44
|
+
|
45
|
+
Copyright (c) 2011 rvosa. See LICENSE.txt for
|
46
|
+
further details.
|
47
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'bundler'
|
3
|
+
begin
|
4
|
+
Bundler.setup(:default, :development)
|
5
|
+
rescue Bundler::BundlerError => e
|
6
|
+
$stderr.puts e.message
|
7
|
+
$stderr.puts "Run `bundle install` to install missing gems"
|
8
|
+
exit e.status_code
|
9
|
+
end
|
10
|
+
require 'rake'
|
11
|
+
|
12
|
+
require 'jeweler'
|
13
|
+
Jeweler::Tasks.new do |gem|
|
14
|
+
# gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
|
15
|
+
gem.name = "bio-nexml"
|
16
|
+
gem.homepage = "http://github.com/rvosa/bioruby-nexml"
|
17
|
+
gem.license = "MIT"
|
18
|
+
gem.summary = %Q{BioRuby plugin for reading and writing NeXML (http://nexml.org)}
|
19
|
+
gem.description = %Q{This plugin reads, writes and generates NeXML}
|
20
|
+
gem.email = "rutgeraldo@gmail.com"
|
21
|
+
gem.authors = ["rvosa"]
|
22
|
+
gem.add_runtime_dependency 'libxml-ruby', '1.1.4'
|
23
|
+
gem.add_development_dependency 'libxml-ruby', '1.1.4'
|
24
|
+
# Include your dependencies below. Runtime dependencies are required when using your gem,
|
25
|
+
# and development dependencies are only needed for development (ie running rake tasks, tests, etc)
|
26
|
+
# gem.add_runtime_dependency 'jabber4r', '> 0.1'
|
27
|
+
# gem.add_development_dependency 'rspec', '> 1.2.3'
|
28
|
+
end
|
29
|
+
Jeweler::RubygemsDotOrgTasks.new
|
30
|
+
|
31
|
+
require 'rake/testtask'
|
32
|
+
Rake::TestTask.new(:test) do |test|
|
33
|
+
test.libs << 'lib' << 'test'
|
34
|
+
test.pattern = 'test/**/test_*.rb'
|
35
|
+
test.verbose = true
|
36
|
+
end
|
37
|
+
|
38
|
+
require 'rcov/rcovtask'
|
39
|
+
Rcov::RcovTask.new do |test|
|
40
|
+
test.libs << 'test'
|
41
|
+
test.pattern = 'test/**/test_*.rb'
|
42
|
+
test.verbose = true
|
43
|
+
end
|
44
|
+
|
45
|
+
task :default => :test
|
46
|
+
|
47
|
+
require 'rake/rdoctask'
|
48
|
+
Rake::RDocTask.new do |rdoc|
|
49
|
+
version = File.exist?('VERSION') ? File.read('VERSION') : ""
|
50
|
+
|
51
|
+
rdoc.rdoc_dir = 'rdoc'
|
52
|
+
rdoc.title = "bio-nexml #{version}"
|
53
|
+
rdoc.rdoc_files.include('README*')
|
54
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
55
|
+
end
|
data/TODO.txt
ADDED
@@ -0,0 +1,6 @@
|
|
1
|
+
* it would be good if objects could only be instantiated in the right nesting
|
2
|
+
order, e.g. you wouldn't do cell = Cell.new, but you'd do
|
3
|
+
cell = Row.create_cell and the nesting is automatically handled for you.
|
4
|
+
I think the way to do this is to require the containing object to be passed
|
5
|
+
(recursively) to the constructors, while create_foo internally does this,
|
6
|
+
passing self to the constructor.
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.0.1
|
data/bio-nexml.gemspec
ADDED
@@ -0,0 +1,126 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = %q{bio-nexml}
|
8
|
+
s.version = "0.0.1"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["rvosa"]
|
12
|
+
s.date = %q{2011-03-01}
|
13
|
+
s.description = %q{This plugin reads, writes and generates NeXML}
|
14
|
+
s.email = %q{rutgeraldo@gmail.com}
|
15
|
+
s.extra_rdoc_files = [
|
16
|
+
"LICENSE.txt",
|
17
|
+
"README.rdoc"
|
18
|
+
]
|
19
|
+
s.files = [
|
20
|
+
"Gemfile",
|
21
|
+
"Gemfile.lock",
|
22
|
+
"LICENSE.txt",
|
23
|
+
"README.rdoc",
|
24
|
+
"Rakefile",
|
25
|
+
"TODO.txt",
|
26
|
+
"VERSION",
|
27
|
+
"bio-nexml.gemspec",
|
28
|
+
"extconf.rb",
|
29
|
+
"lib/bio-nexml.rb",
|
30
|
+
"lib/bio.rb",
|
31
|
+
"lib/bio/db/nexml.rb",
|
32
|
+
"lib/bio/db/nexml/mapper.rb",
|
33
|
+
"lib/bio/db/nexml/mapper/framework.rb",
|
34
|
+
"lib/bio/db/nexml/mapper/inflection.rb",
|
35
|
+
"lib/bio/db/nexml/mapper/repository.rb",
|
36
|
+
"lib/bio/db/nexml/matrix.rb",
|
37
|
+
"lib/bio/db/nexml/parser.rb",
|
38
|
+
"lib/bio/db/nexml/schema/README.txt",
|
39
|
+
"lib/bio/db/nexml/schema/abstract.xsd",
|
40
|
+
"lib/bio/db/nexml/schema/characters/README.txt",
|
41
|
+
"lib/bio/db/nexml/schema/characters/abstractcharacters.xsd",
|
42
|
+
"lib/bio/db/nexml/schema/characters/characters.xsd",
|
43
|
+
"lib/bio/db/nexml/schema/characters/continuous.xsd",
|
44
|
+
"lib/bio/db/nexml/schema/characters/dna.xsd",
|
45
|
+
"lib/bio/db/nexml/schema/characters/protein.xsd",
|
46
|
+
"lib/bio/db/nexml/schema/characters/restriction.xsd",
|
47
|
+
"lib/bio/db/nexml/schema/characters/rna.xsd",
|
48
|
+
"lib/bio/db/nexml/schema/characters/standard.xsd",
|
49
|
+
"lib/bio/db/nexml/schema/external/sawsdl.xsd",
|
50
|
+
"lib/bio/db/nexml/schema/external/xhtml-datatypes-1.xsd",
|
51
|
+
"lib/bio/db/nexml/schema/external/xlink.xsd",
|
52
|
+
"lib/bio/db/nexml/schema/external/xml.xsd",
|
53
|
+
"lib/bio/db/nexml/schema/meta/README.txt",
|
54
|
+
"lib/bio/db/nexml/schema/meta/annotations.xsd",
|
55
|
+
"lib/bio/db/nexml/schema/meta/meta.xsd",
|
56
|
+
"lib/bio/db/nexml/schema/nexml.xsd",
|
57
|
+
"lib/bio/db/nexml/schema/taxa/README.txt",
|
58
|
+
"lib/bio/db/nexml/schema/taxa/taxa.xsd",
|
59
|
+
"lib/bio/db/nexml/schema/trees/README.txt",
|
60
|
+
"lib/bio/db/nexml/schema/trees/abstracttrees.xsd",
|
61
|
+
"lib/bio/db/nexml/schema/trees/network.xsd",
|
62
|
+
"lib/bio/db/nexml/schema/trees/tree.xsd",
|
63
|
+
"lib/bio/db/nexml/schema/trees/trees.xsd",
|
64
|
+
"lib/bio/db/nexml/taxa.rb",
|
65
|
+
"lib/bio/db/nexml/trees.rb",
|
66
|
+
"lib/bio/db/nexml/writer.rb",
|
67
|
+
"test/data/nexml/test.xml",
|
68
|
+
"test/test_bio-nexml.rb",
|
69
|
+
"test/unit/bio/db/nexml/tc_factory.rb",
|
70
|
+
"test/unit/bio/db/nexml/tc_mapper.rb",
|
71
|
+
"test/unit/bio/db/nexml/tc_matrix.rb",
|
72
|
+
"test/unit/bio/db/nexml/tc_parser.rb",
|
73
|
+
"test/unit/bio/db/nexml/tc_taxa.rb",
|
74
|
+
"test/unit/bio/db/nexml/tc_trees.rb",
|
75
|
+
"test/unit/bio/db/nexml/tc_writer.rb"
|
76
|
+
]
|
77
|
+
s.homepage = %q{http://github.com/rvosa/bioruby-nexml}
|
78
|
+
s.licenses = ["MIT"]
|
79
|
+
s.require_paths = ["lib"]
|
80
|
+
s.rubygems_version = %q{1.4.2}
|
81
|
+
s.summary = %q{BioRuby plugin for reading and writing NeXML (http://nexml.org)}
|
82
|
+
s.test_files = [
|
83
|
+
"test/test_bio-nexml.rb",
|
84
|
+
"test/unit/bio/db/nexml/tc_factory.rb",
|
85
|
+
"test/unit/bio/db/nexml/tc_mapper.rb",
|
86
|
+
"test/unit/bio/db/nexml/tc_matrix.rb",
|
87
|
+
"test/unit/bio/db/nexml/tc_parser.rb",
|
88
|
+
"test/unit/bio/db/nexml/tc_taxa.rb",
|
89
|
+
"test/unit/bio/db/nexml/tc_trees.rb",
|
90
|
+
"test/unit/bio/db/nexml/tc_writer.rb"
|
91
|
+
]
|
92
|
+
|
93
|
+
if s.respond_to? :specification_version then
|
94
|
+
s.specification_version = 3
|
95
|
+
|
96
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
97
|
+
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
98
|
+
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
99
|
+
s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
|
100
|
+
s.add_development_dependency(%q<rcov>, [">= 0"])
|
101
|
+
s.add_development_dependency(%q<bio>, [">= 1.4.1"])
|
102
|
+
s.add_development_dependency(%q<libxml-ruby>, [">= 1.1.4"])
|
103
|
+
s.add_runtime_dependency(%q<libxml-ruby>, ["= 1.1.4"])
|
104
|
+
s.add_development_dependency(%q<libxml-ruby>, ["= 1.1.4"])
|
105
|
+
else
|
106
|
+
s.add_dependency(%q<shoulda>, [">= 0"])
|
107
|
+
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
108
|
+
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
109
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
110
|
+
s.add_dependency(%q<bio>, [">= 1.4.1"])
|
111
|
+
s.add_dependency(%q<libxml-ruby>, [">= 1.1.4"])
|
112
|
+
s.add_dependency(%q<libxml-ruby>, ["= 1.1.4"])
|
113
|
+
s.add_dependency(%q<libxml-ruby>, ["= 1.1.4"])
|
114
|
+
end
|
115
|
+
else
|
116
|
+
s.add_dependency(%q<shoulda>, [">= 0"])
|
117
|
+
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
118
|
+
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
119
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
120
|
+
s.add_dependency(%q<bio>, [">= 1.4.1"])
|
121
|
+
s.add_dependency(%q<libxml-ruby>, [">= 1.1.4"])
|
122
|
+
s.add_dependency(%q<libxml-ruby>, ["= 1.1.4"])
|
123
|
+
s.add_dependency(%q<libxml-ruby>, ["= 1.1.4"])
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
data/extconf.rb
ADDED
data/lib/bio-nexml.rb
ADDED
File without changes
|
data/lib/bio.rb
ADDED
@@ -0,0 +1,321 @@
|
|
1
|
+
#
|
2
|
+
# = bio.rb - Loading all BioRuby modules
|
3
|
+
#
|
4
|
+
# Copyright:: Copyright (C) 2001-2007
|
5
|
+
# Toshiaki Katayama <k@bioruby.org>
|
6
|
+
# License:: The Ruby License
|
7
|
+
#
|
8
|
+
# $Id:$
|
9
|
+
#
|
10
|
+
|
11
|
+
module Bio
|
12
|
+
|
13
|
+
autoload :BIORUBY_VERSION, 'bio/version'
|
14
|
+
autoload :BIORUBY_EXTRA_VERSION, 'bio/version'
|
15
|
+
autoload :BIORUBY_VERSION_ID, 'bio/version'
|
16
|
+
|
17
|
+
### Basic data types
|
18
|
+
|
19
|
+
## Sequence
|
20
|
+
|
21
|
+
autoload :Sequence, 'bio/sequence'
|
22
|
+
## below are described in bio/sequence.rb
|
23
|
+
#class Sequence
|
24
|
+
# autoload :Common, 'bio/sequence/common'
|
25
|
+
# autoload :NA, 'bio/sequence/na'
|
26
|
+
# autoload :AA, 'bio/sequence/aa'
|
27
|
+
# autoload :Generic, 'bio/sequence/generic'
|
28
|
+
# autoload :Format, 'bio/sequence/format'
|
29
|
+
# autoload :Adapter, 'bio/sequence/adapter'
|
30
|
+
#end
|
31
|
+
|
32
|
+
## Locations/Location
|
33
|
+
|
34
|
+
autoload :Location, 'bio/location'
|
35
|
+
autoload :Locations, 'bio/location'
|
36
|
+
|
37
|
+
## Features/Feature
|
38
|
+
|
39
|
+
autoload :Feature, 'bio/feature'
|
40
|
+
autoload :Features, 'bio/compat/features'
|
41
|
+
|
42
|
+
## References/Reference
|
43
|
+
|
44
|
+
autoload :Reference, 'bio/reference'
|
45
|
+
autoload :References, 'bio/compat/references'
|
46
|
+
|
47
|
+
## Pathway/Relation
|
48
|
+
|
49
|
+
autoload :Pathway, 'bio/pathway'
|
50
|
+
autoload :Relation, 'bio/pathway'
|
51
|
+
|
52
|
+
## Alignment
|
53
|
+
|
54
|
+
autoload :Alignment, 'bio/alignment'
|
55
|
+
|
56
|
+
## Tree
|
57
|
+
autoload :Tree, 'bio/tree'
|
58
|
+
|
59
|
+
## Map
|
60
|
+
autoload :Map, 'bio/map'
|
61
|
+
|
62
|
+
### Constants
|
63
|
+
|
64
|
+
autoload :NucleicAcid, 'bio/data/na'
|
65
|
+
autoload :AminoAcid, 'bio/data/aa'
|
66
|
+
autoload :CodonTable, 'bio/data/codontable'
|
67
|
+
|
68
|
+
|
69
|
+
### DB parsers
|
70
|
+
|
71
|
+
autoload :DB, 'bio/db'
|
72
|
+
autoload :NCBIDB, 'bio/db'
|
73
|
+
autoload :KEGGDB, 'bio/db'
|
74
|
+
autoload :EMBLDB, 'bio/db'
|
75
|
+
|
76
|
+
## GenBank/RefSeq/DDBJ
|
77
|
+
|
78
|
+
autoload :GenBank, 'bio/db/genbank/genbank'
|
79
|
+
autoload :GenPept, 'bio/db/genbank/genpept'
|
80
|
+
autoload :RefSeq, 'bio/db/genbank/refseq'
|
81
|
+
autoload :DDBJ, 'bio/db/genbank/ddbj'
|
82
|
+
## below are described in bio/db/genbank/ddbj.rb
|
83
|
+
#class DDBJ
|
84
|
+
# autoload :XML, 'bio/io/ddbjxml'
|
85
|
+
#end
|
86
|
+
|
87
|
+
## EMBL/TrEMBL/Swiss-Prot/SPTR
|
88
|
+
|
89
|
+
autoload :EMBL, 'bio/db/embl/embl'
|
90
|
+
autoload :SPTR, 'bio/db/embl/sptr'
|
91
|
+
autoload :TrEMBL, 'bio/db/embl/trembl'
|
92
|
+
autoload :UniProt, 'bio/db/embl/uniprot'
|
93
|
+
autoload :SwissProt, 'bio/db/embl/swissprot'
|
94
|
+
|
95
|
+
## KEGG
|
96
|
+
|
97
|
+
class KEGG
|
98
|
+
autoload :GENOME, 'bio/db/kegg/genome'
|
99
|
+
autoload :GENES, 'bio/db/kegg/genes'
|
100
|
+
autoload :ENZYME, 'bio/db/kegg/enzyme'
|
101
|
+
autoload :COMPOUND, 'bio/db/kegg/compound'
|
102
|
+
autoload :DRUG, 'bio/db/kegg/drug'
|
103
|
+
autoload :GLYCAN, 'bio/db/kegg/glycan'
|
104
|
+
autoload :REACTION, 'bio/db/kegg/reaction'
|
105
|
+
autoload :BRITE, 'bio/db/kegg/brite'
|
106
|
+
autoload :CELL, 'bio/db/kegg/cell'
|
107
|
+
autoload :EXPRESSION, 'bio/db/kegg/expression'
|
108
|
+
autoload :ORTHOLOGY, 'bio/db/kegg/orthology'
|
109
|
+
autoload :KGML, 'bio/db/kegg/kgml'
|
110
|
+
autoload :Taxonomy, 'bio/db/kegg/taxonomy'
|
111
|
+
end
|
112
|
+
|
113
|
+
## other formats
|
114
|
+
|
115
|
+
autoload :FastaFormat, 'bio/db/fasta'
|
116
|
+
autoload :FastaNumericFormat, 'bio/db/fasta/qual' # change to FastaFormat::Numeric ?
|
117
|
+
autoload :FastaDefline, 'bio/db/fasta/defline' # change to FastaFormat::Defline ?
|
118
|
+
autoload :Fastq, 'bio/db/fastq'
|
119
|
+
autoload :GFF, 'bio/db/gff'
|
120
|
+
autoload :AAindex, 'bio/db/aaindex'
|
121
|
+
autoload :AAindex1, 'bio/db/aaindex' # change to AAindex::AAindex1 ?
|
122
|
+
autoload :AAindex2, 'bio/db/aaindex' # change to AAindex::AAindex2 ?
|
123
|
+
autoload :TRANSFAC, 'bio/db/transfac'
|
124
|
+
autoload :PROSITE, 'bio/db/prosite'
|
125
|
+
autoload :LITDB, 'bio/db/litdb'
|
126
|
+
autoload :MEDLINE, 'bio/db/medline'
|
127
|
+
autoload :FANTOM, 'bio/db/fantom'
|
128
|
+
autoload :GO, 'bio/db/go'
|
129
|
+
autoload :PDB, 'bio/db/pdb'
|
130
|
+
autoload :NBRF, 'bio/db/nbrf'
|
131
|
+
autoload :REBASE, 'bio/db/rebase'
|
132
|
+
autoload :SOFT, 'bio/db/soft'
|
133
|
+
autoload :Lasergene, 'bio/db/lasergene'
|
134
|
+
autoload :SangerChromatogram, 'bio/db/sanger_chromatogram/chromatogram'
|
135
|
+
autoload :Scf, 'bio/db/sanger_chromatogram/scf'
|
136
|
+
autoload :Abif, 'bio/db/sanger_chromatogram/abif'
|
137
|
+
|
138
|
+
autoload :Newick, 'bio/db/newick'
|
139
|
+
autoload :Nexus, 'bio/db/nexus'
|
140
|
+
|
141
|
+
autoload :PhyloXML, 'bio/db/phyloxml/phyloxml_elements'
|
142
|
+
# Bio::Taxonomy will be moved to other file
|
143
|
+
autoload :Taxonomy, 'bio/db/phyloxml/phyloxml_elements'
|
144
|
+
## below are described in bio/db/phyloxml/phyloxml_elements.rb
|
145
|
+
#module PhyloXML
|
146
|
+
# autoload :Parser, 'bio/db/phyloxml/phyloxml_parser'
|
147
|
+
# autoload :Writer, 'bio/db/phyloxml/phyloxml_writer'
|
148
|
+
#end
|
149
|
+
|
150
|
+
### IO interface modules
|
151
|
+
|
152
|
+
autoload :Registry, 'bio/io/registry'
|
153
|
+
autoload :Fetch, 'bio/io/fetch'
|
154
|
+
autoload :SQL, 'bio/io/sql'
|
155
|
+
autoload :SOAPWSDL, 'bio/io/soapwsdl'
|
156
|
+
autoload :FlatFile, 'bio/io/flatfile'
|
157
|
+
autoload :FlatFileIndex, 'bio/io/flatfile/index' # chage to FlatFile::Index ?
|
158
|
+
## below are described in bio/io/flatfile/index.rb
|
159
|
+
#class FlatFileIndex
|
160
|
+
# autoload :Indexer, 'bio/io/flatfile/indexer'
|
161
|
+
# autoload :BDBdefault, 'bio/io/flatfile/bdb'
|
162
|
+
# autoload :BDBwrapper, 'bio/io/flatfile/bdb'
|
163
|
+
# autoload :BDB_1, 'bio/io/flatfile/bdb'
|
164
|
+
#end
|
165
|
+
|
166
|
+
autoload :PubMed, 'bio/io/pubmed'
|
167
|
+
autoload :DAS, 'bio/io/das'
|
168
|
+
autoload :DBGET, 'bio/io/dbget'
|
169
|
+
|
170
|
+
autoload :Ensembl, 'bio/io/ensembl'
|
171
|
+
autoload :Hinv, 'bio/io/hinv'
|
172
|
+
|
173
|
+
## below are described in bio/appl/blast.rb
|
174
|
+
#class Blast
|
175
|
+
# autoload :Fastacmd, 'bio/io/fastacmd'
|
176
|
+
#end
|
177
|
+
|
178
|
+
class KEGG
|
179
|
+
autoload :API, 'bio/io/keggapi'
|
180
|
+
end
|
181
|
+
|
182
|
+
## below are described in bio/db/genbank/ddbj.rb
|
183
|
+
#class DDBJ
|
184
|
+
# autoload :XML, 'bio/io/ddbjxml'
|
185
|
+
#end
|
186
|
+
|
187
|
+
class HGC
|
188
|
+
autoload :HiGet, 'bio/io/higet'
|
189
|
+
end
|
190
|
+
|
191
|
+
class EBI
|
192
|
+
autoload :SOAP, 'bio/io/ebisoap'
|
193
|
+
end
|
194
|
+
|
195
|
+
autoload :NCBI, 'bio/io/ncbirest'
|
196
|
+
## below are described in bio/io/ncbirest.rb
|
197
|
+
#class NCBI
|
198
|
+
# autoload :SOAP, 'bio/io/ncbisoap'
|
199
|
+
# autoload :REST, 'bio/io/ncbirest'
|
200
|
+
#end
|
201
|
+
|
202
|
+
autoload :TogoWS, 'bio/io/togows'
|
203
|
+
|
204
|
+
### Applications
|
205
|
+
|
206
|
+
autoload :Fasta, 'bio/appl/fasta'
|
207
|
+
## below are described in bio/appl/fasta.rb
|
208
|
+
#class Fasta
|
209
|
+
# autoload :Report, 'bio/appl/fasta/format10'
|
210
|
+
#end
|
211
|
+
|
212
|
+
autoload :Blast, 'bio/appl/blast'
|
213
|
+
## below are described in bio/appl/blast.rb
|
214
|
+
#class Blast
|
215
|
+
# autoload :Fastacmd, 'bio/io/fastacmd'
|
216
|
+
# autoload :Report, 'bio/appl/blast/report'
|
217
|
+
# autoload :Default, 'bio/appl/blast/format0'
|
218
|
+
# autoload :WU, 'bio/appl/blast/wublast'
|
219
|
+
# autoload :Bl2seq, 'bio/appl/bl2seq/report'
|
220
|
+
# autoload :RPSBlast, 'bio/appl/blast/rpsblast'
|
221
|
+
# autoload :NCBIOptions, 'bio/appl/blast/ncbioptions'
|
222
|
+
# autoload :Remote, 'bio/appl/blast/remote'
|
223
|
+
#end
|
224
|
+
|
225
|
+
autoload :HMMER, 'bio/appl/hmmer'
|
226
|
+
## below are described in bio/appl/hmmer.rb
|
227
|
+
#class HMMER
|
228
|
+
# autoload :Report, 'bio/appl/hmmer/report'
|
229
|
+
#end
|
230
|
+
|
231
|
+
autoload :EMBOSS, 'bio/appl/emboss' # use bio/command, improve
|
232
|
+
|
233
|
+
autoload :PSORT, 'bio/appl/psort'
|
234
|
+
## below are described in bio/appl/psort.rb
|
235
|
+
#class PSORT
|
236
|
+
# class PSORT1
|
237
|
+
# autoload :Report, 'bio/appl/psort/report'
|
238
|
+
# end
|
239
|
+
# class PSORT2
|
240
|
+
# autoload :Report, 'bio/appl/psort/report'
|
241
|
+
# end
|
242
|
+
#end
|
243
|
+
|
244
|
+
autoload :TMHMM, 'bio/appl/tmhmm/report'
|
245
|
+
autoload :TargetP, 'bio/appl/targetp/report'
|
246
|
+
autoload :SOSUI, 'bio/appl/sosui/report'
|
247
|
+
autoload :Genscan, 'bio/appl/genscan/report'
|
248
|
+
|
249
|
+
autoload :ClustalW, 'bio/appl/clustalw'
|
250
|
+
## below are described in bio/appl/clustalw.rb
|
251
|
+
#class ClustalW
|
252
|
+
# autoload :Report, 'bio/appl/clustalw/report'
|
253
|
+
#end
|
254
|
+
|
255
|
+
autoload :MAFFT, 'bio/appl/mafft'
|
256
|
+
## below are described in bio/appl/mafft.rb
|
257
|
+
#class MAFFT
|
258
|
+
# autoload :Report, 'bio/appl/mafft/report'
|
259
|
+
#end
|
260
|
+
|
261
|
+
autoload :Tcoffee, 'bio/appl/tcoffee'
|
262
|
+
autoload :Muscle, 'bio/appl/muscle'
|
263
|
+
autoload :Probcons, 'bio/appl/probcons'
|
264
|
+
|
265
|
+
autoload :Sim4, 'bio/appl/sim4'
|
266
|
+
## below are described in bio/appl/sim4.rb
|
267
|
+
#class Sim4
|
268
|
+
# autoload :Report, 'bio/appl/sim4/report'
|
269
|
+
#end
|
270
|
+
|
271
|
+
autoload :Spidey, 'bio/appl/spidey/report'
|
272
|
+
autoload :Blat, 'bio/appl/blat/report'
|
273
|
+
|
274
|
+
module GCG
|
275
|
+
autoload :Msf, 'bio/appl/gcg/msf'
|
276
|
+
autoload :Seq, 'bio/appl/gcg/seq'
|
277
|
+
end
|
278
|
+
|
279
|
+
module Phylip
|
280
|
+
autoload :PhylipFormat, 'bio/appl/phylip/alignment'
|
281
|
+
autoload :DistanceMatrix, 'bio/appl/phylip/distance_matrix'
|
282
|
+
end
|
283
|
+
|
284
|
+
autoload :Iprscan, 'bio/appl/iprscan/report'
|
285
|
+
|
286
|
+
autoload :PAML, 'bio/appl/paml/common'
|
287
|
+
## below are described in bio/appl/paml/common.rb
|
288
|
+
# module PAML
|
289
|
+
# autoload :Codeml, 'bio/appl/paml/codeml'
|
290
|
+
# autoload :Baseml, 'bio/appl/paml/baseml'
|
291
|
+
# autoload :Yn00, 'bio/appl/paml/yn00'
|
292
|
+
# end
|
293
|
+
|
294
|
+
### Utilities
|
295
|
+
|
296
|
+
autoload :SiRNA, 'bio/util/sirna'
|
297
|
+
autoload :ColorScheme, 'bio/util/color_scheme'
|
298
|
+
autoload :ContingencyTable, 'bio/util/contingency_table'
|
299
|
+
autoload :RestrictionEnzyme, 'bio/util/restriction_enzyme'
|
300
|
+
|
301
|
+
### Service libraries
|
302
|
+
autoload :Command, 'bio/command'
|
303
|
+
|
304
|
+
### NeXML lib
|
305
|
+
autoload :NeXML, 'bio/db/nexml'
|
306
|
+
|
307
|
+
### Provide BioRuby shell 'command' also as 'Bio.command' (like ChemRuby)
|
308
|
+
|
309
|
+
def self.method_missing(*args)
|
310
|
+
require 'bio/shell'
|
311
|
+
extend Bio::Shell
|
312
|
+
public_class_method(*Bio::Shell.private_instance_methods)
|
313
|
+
if Bio.respond_to?(args.first)
|
314
|
+
Bio.send(*args)
|
315
|
+
else
|
316
|
+
raise NameError
|
317
|
+
end
|
318
|
+
end
|
319
|
+
|
320
|
+
end
|
321
|
+
|