bio-nexml 0.0.1
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/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
|
+
|