oba-client 2.0.3 → 2.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.
@@ -0,0 +1,6 @@
1
+ doc
2
+ pkg
3
+ .yardoc
4
+ .buildpath
5
+ .project
6
+
data/History.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## 2.0.4 / 2010-07-17
2
+ No notes were provided for this release.
3
+
1
4
  ## 2.0.3 / 2010-07-17
2
5
  Quick fix in docs.
3
6
 
data/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  # oba-client
2
2
 
3
- * [RubyForge project](http://rubyforge.org/projects/oba-client "RubyForge project")
3
+ * [GitHub](github.com/rtirrell/oba-client_ruby)
4
4
 
5
5
  ## DESCRIPTION:
6
6
 
7
- A client for accessing the NCBO's Open Biomedical Annotator service.
7
+ A client for accessing the NCBO's Open Biomedical Annotator web service.
8
8
  See [the Annotator documentation](http://www.bioontology.org/wiki/index.php/Annotator_User_Guide "Documentation") for much more information.
9
9
 
10
10
  ## FEATURES:
data/Rakefile CHANGED
@@ -1,17 +1,71 @@
1
1
  require "rubygems"
2
- require "hoe"
2
+ require File.dirname(__FILE__) + "/lib/oba-client.rb"
3
+ #require "hoe"
3
4
 
4
- Hoe.plugin :yard
5
+ #Hoe.plugin :yard
5
6
 
6
- Hoe.spec "oba-client" do
7
- self.developer "Rob Tirrell", "rpt@stanford.edu"
8
- self.url = "http://rubyforge.org/projects/oba-client"
9
-
10
- self.yard_title = "OBAClient Documentation"
11
- self.yard_options = ["--default-return", "void"]
12
- self.yard_markup = "markdown"
13
- self.remote_yard_dir = ""
7
+ #Hoe.spec "oba-client" do
8
+ # self.developer "Rob Tirrell", "rpt@stanford.edu"
9
+ # self.url = "http://rubyforge.org/projects/oba-client"
10
+ #
11
+ # self.yard_title = "OBAClient Documentation"
12
+ # self.yard_options = ["--default-return", "void"]
13
+ # self.yard_markup = "markdown"
14
+ # self.remote_yard_dir = ""
15
+ #
16
+ # self.rubyforge_name = "oba-client"
17
+ #end
14
18
 
15
- self.rubyforge_name = "oba-client"
19
+ require "rubygems"
20
+ require "rake"
21
+
22
+ begin
23
+ require "jeweler"
24
+ Jeweler::Tasks.new do |gem|
25
+ gem.name = "oba-client"
26
+ gem.summary = "A client for the Open Biomedical Annotator."
27
+ gem.description = "See above."
28
+ gem.email = "rpt@stanford.edu"
29
+ gem.homepage = "http://github.com/rtirrell/oba-client"
30
+ gem.authors = ["Rob Tirrell"]
31
+ gem.add_development_dependency "thoughtbot-shoulda", ">= 0"
32
+ gem.add_development_dependency "yard", ">= 0"
33
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
34
+ end
35
+ Jeweler::GemcutterTasks.new
36
+ rescue LoadError
37
+ puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
16
38
  end
17
39
 
40
+ require "rake/testtask"
41
+ Rake::TestTask.new(:test) do |test|
42
+ test.libs << "lib" << "test"
43
+ test.pattern = "test/**/test_*.rb"
44
+ test.verbose = true
45
+ end
46
+
47
+ begin
48
+ require "rcov/rcovtask"
49
+ Rcov::RcovTask.new do |test|
50
+ test.libs << "test"
51
+ test.pattern = "test/**/test_*.rb"
52
+ test.verbose = true
53
+ end
54
+ rescue LoadError
55
+ task :rcov do
56
+ abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
57
+ end
58
+ end
59
+
60
+ task :test => :check_dependencies
61
+
62
+ task :default => :test
63
+
64
+ begin
65
+ require "yard"
66
+ YARD::Rake::YardocTask.new
67
+ rescue LoadError
68
+ task :yardoc do
69
+ abort "YARD is not available. In order to run yardoc, you must: sudo gem install yard"
70
+ end
71
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 2.1.0
@@ -9,7 +9,7 @@ require "uri"
9
9
  # things we do: get text, and parse it. We can do both independently or
10
10
  # serially.
11
11
  class OBAClient
12
- VERSION = "2.0.3"
12
+ VERSION = "2.0.4"
13
13
 
14
14
  ##
15
15
  # A high HTTP read timeout, as the service sometimes takes awhile to respond.
@@ -50,10 +50,13 @@ class OBAClient
50
50
  # Instantiate the class with a set of reused options. Options used by the
51
51
  # method are:
52
52
  #
53
- # * [String] uri: the URI of the annotator service (default: {DEFAULT_URI}).
54
- # * [Fixnum] timeout: the length of the read timeout (default: {DEFAULT_TIMEOUT}).
55
- # * [Boolean] parse_xml: whether to parse the received text (default: false).
56
- # * [Array<String>] ontologies: a pseudo-parameter which will set both
53
+ # * {String} **uri**: the URI of the annotator service (default:
54
+ # {DEFAULT_URI}).
55
+ # * {Fixnum} **timeout**: the length of the read timeout (default:
56
+ # {DEFAULT_TIMEOUT}).
57
+ # * {Boolean} **parse_xml**: whether to parse the received text (default:
58
+ # false).
59
+ # * {Array}<{String}> **ontologies**: a pseudo-parameter which sets both
57
60
  # ontologiesToExpand and ontologiesToKeepInResult.
58
61
  # @param [Hash<String, String>] options Parameters for the annotation.
59
62
  def initialize(options = {})
@@ -83,7 +86,8 @@ class OBAClient
83
86
  end
84
87
 
85
88
  if !@options.include?(:email)
86
- puts "TIP: as a courtesy, consider including your email in the request (:email => 'a@b.com')"
89
+ puts "TIP: as a courtesy, consider including your email in the " +
90
+ "request (:email => 'a@b.com')"
87
91
  end
88
92
  end
89
93
 
@@ -187,9 +191,11 @@ class OBAClient
187
191
  }
188
192
 
189
193
  ##
190
- # Parse a context - an annotation, or a mapping/mgrep context bean.
194
+ # Parse a context: an annotation, or a mapping/mgrep context bean.
195
+ #
191
196
  # @param [Nokgiri::XML::Node] context The root node of the context.
192
- # @return Hash<Symbol, Object> The parsed context.
197
+ #
198
+ # @return [Hash<Symbol, Object>] The parsed context.
193
199
  def self.parse_context(context)
194
200
  # Annotations (annotationBeans) do not have a class, so we'll refer to them
195
201
  # as annotationContextBeans. context_class will be one of the types in
@@ -206,9 +212,11 @@ class OBAClient
206
212
  end
207
213
 
208
214
  ##
209
- # Parse a concept - a toplevel annotation concept, or an annotation's
215
+ # Parse a concept: a toplevel annotation concept, or an annotation's
210
216
  # mapping concept.
217
+ #
211
218
  # @param [Nokogiri::XML::Node] concept The root node of the concept.
219
+ #
212
220
  # @return [Hash<Symbol, Object>] The parsed concept.
213
221
  def self.parse_concept(concept)
214
222
  Hash[CONCEPT_ATTRIBUTES.map do |k, v|
@@ -222,9 +230,11 @@ class OBAClient
222
230
  # statistics (annotations by mapping type, etc., as a Hash), an Array of
223
231
  # each annotation (as a Hash), and an Array of ontologies used (also as
224
232
  # a Hash).
225
- # @param [String] xml The XMl we'll be parsing.
233
+ #
234
+ # @param [String] xml The XML we'll be parsing.
235
+ #
226
236
  # @return [Hash<Symbol, Object>] A Hash representation of the XML, as
227
- # described above.
237
+ # described in the README.
228
238
  def self.parse(xml)
229
239
  puts "WARNING: text is empty!" if (xml.gsub(/\n/, "") == "")
230
240
  doc = Nokogiri::XML.parse(xml)
@@ -257,7 +267,9 @@ class OBAClient
257
267
  ##
258
268
  # A little helper: convert a string true/false or 1/0 value to boolean.
259
269
  # AFAIK, there's no better way to do this.
270
+ #
260
271
  # @param [String] value The value to convert.
272
+ #
261
273
  # @return [true, false]
262
274
  def self.to_b(value)
263
275
  case value
@@ -0,0 +1,53 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{oba-client}
8
+ s.version = "2.1.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Rob Tirrell"]
12
+ s.date = %q{2010-07-26}
13
+ s.description = %q{See above.}
14
+ s.email = %q{rpt@stanford.edu}
15
+ s.extra_rdoc_files = [
16
+ "README.md"
17
+ ]
18
+ s.files = [
19
+ ".gitignore",
20
+ "History.md",
21
+ "README.md",
22
+ "Rakefile",
23
+ "VERSION",
24
+ "lib/oba-client.rb",
25
+ "oba-client.gemspec",
26
+ "test/test_oba_client.rb"
27
+ ]
28
+ s.homepage = %q{http://github.com/rtirrell/oba-client}
29
+ s.rdoc_options = ["--charset=UTF-8"]
30
+ s.require_paths = ["lib"]
31
+ s.rubygems_version = %q{1.3.7}
32
+ s.summary = %q{A client for the Open Biomedical Annotator.}
33
+ s.test_files = [
34
+ "test/test_oba_client.rb"
35
+ ]
36
+
37
+ if s.respond_to? :specification_version then
38
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
39
+ s.specification_version = 3
40
+
41
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
42
+ s.add_development_dependency(%q<thoughtbot-shoulda>, [">= 0"])
43
+ s.add_development_dependency(%q<yard>, [">= 0"])
44
+ else
45
+ s.add_dependency(%q<thoughtbot-shoulda>, [">= 0"])
46
+ s.add_dependency(%q<yard>, [">= 0"])
47
+ end
48
+ else
49
+ s.add_dependency(%q<thoughtbot-shoulda>, [">= 0"])
50
+ s.add_dependency(%q<yard>, [">= 0"])
51
+ end
52
+ end
53
+
@@ -3,10 +3,10 @@ require "oba-client"
3
3
 
4
4
  TEST_TEXTS = [
5
5
  "Mexico,, Disease Thing \o\r\m\n\t\v\l\rzebrafish !!! cancer of the thorax. large intestine thorax",
6
- # %Q{LOROE aonuhaso unseu anoeuhs aeuhsaonuh asoneuhason uaosenuh aosenuhaose
7
- # aoneuhasonuhaoenuh anoeuhasn euhasoneu haosneuhaosenuhaoesunahoeusnaoeuteeano
8
- # aot tt t t t t t t tae \n!!@)$@(#)%@#!)@# asoeuaohsenutahoeusaheou
9
- # }
6
+ %Q{LOROE aonuhaso unseu anoeuhs aeuhsaonuh asoneuhason uaosenuh aosenuhaose
7
+ aoneuhasonuhaoenuh anoeuhasn euhasoneu haosneuhaosenuhaoesunahoeusnaoeuteeano
8
+ aot tt t t t t t t tae \n!!@)$@(#)%@\#!)@# asoeuaohsenutahoeusaheou
9
+ }
10
10
  ]
11
11
 
12
12
  class TestOBAClient < Test::Unit::TestCase
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oba-client
3
3
  version: !ruby/object:Gem::Version
4
- hash: 9
4
+ hash: 11
5
5
  prerelease: false
6
6
  segments:
7
7
  - 2
8
+ - 1
8
9
  - 0
9
- - 3
10
- version: 2.0.3
10
+ version: 2.1.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Rob Tirrell
@@ -15,90 +15,61 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-07-16 00:00:00 -07:00
18
+ date: 2010-07-26 00:00:00 -07:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: rubyforge
22
+ name: thoughtbot-shoulda
23
23
  prerelease: false
24
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- hash: 7
29
+ hash: 3
30
30
  segments:
31
- - 2
32
31
  - 0
33
- - 4
34
- version: 2.0.4
32
+ version: "0"
35
33
  type: :development
36
34
  version_requirements: *id001
37
35
  - !ruby/object:Gem::Dependency
38
- name: hoe-yard
36
+ name: yard
39
37
  prerelease: false
40
38
  requirement: &id002 !ruby/object:Gem::Requirement
41
39
  none: false
42
40
  requirements:
43
41
  - - ">="
44
42
  - !ruby/object:Gem::Version
45
- hash: 31
43
+ hash: 3
46
44
  segments:
47
45
  - 0
48
- - 1
49
- - 2
50
- version: 0.1.2
46
+ version: "0"
51
47
  type: :development
52
48
  version_requirements: *id002
53
- - !ruby/object:Gem::Dependency
54
- name: hoe
55
- prerelease: false
56
- requirement: &id003 !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- hash: 21
62
- segments:
63
- - 2
64
- - 6
65
- - 1
66
- version: 2.6.1
67
- type: :development
68
- version_requirements: *id003
69
- description: |-
70
- A client for accessing the NCBO's Open Biomedical Annotator service.
71
- See [the Annotator documentation](http://www.bioontology.org/wiki/index.php/Annotator_User_Guide "Documentation") for much more information.
72
- email:
73
- - rpt@stanford.edu
49
+ description: See above.
50
+ email: rpt@stanford.edu
74
51
  executables: []
75
52
 
76
53
  extensions: []
77
54
 
78
55
  extra_rdoc_files:
79
- - Manifest.txt
80
- - History.md
56
+ - README.md
81
57
  files:
82
- - .autotest
58
+ - .gitignore
83
59
  - History.md
84
- - Manifest.txt
85
60
  - README.md
86
61
  - Rakefile
62
+ - VERSION
87
63
  - lib/oba-client.rb
64
+ - oba-client.gemspec
88
65
  - test/test_oba_client.rb
89
- has_rdoc: yard
90
- homepage: http://rubyforge.org/projects/oba-client
66
+ has_rdoc: true
67
+ homepage: http://github.com/rtirrell/oba-client
91
68
  licenses: []
92
69
 
93
70
  post_install_message:
94
71
  rdoc_options:
95
- - --default-return
96
- - void
97
- - --title
98
- - OBAClient Documentation
99
- - --markup
100
- - markdown
101
- - --quiet
72
+ - --charset=UTF-8
102
73
  require_paths:
103
74
  - lib
104
75
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -121,10 +92,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
121
92
  version: "0"
122
93
  requirements: []
123
94
 
124
- rubyforge_project: oba-client
95
+ rubyforge_project:
125
96
  rubygems_version: 1.3.7
126
97
  signing_key:
127
98
  specification_version: 3
128
- summary: A client for accessing the NCBO's Open Biomedical Annotator service
99
+ summary: A client for the Open Biomedical Annotator.
129
100
  test_files:
130
101
  - test/test_oba_client.rb
data/.autotest DELETED
@@ -1,23 +0,0 @@
1
- # -*- ruby -*-
2
-
3
- require 'autotest/restart'
4
-
5
- # Autotest.add_hook :initialize do |at|
6
- # at.extra_files << "../some/external/dependency.rb"
7
- #
8
- # at.libs << ":../some/external"
9
- #
10
- # at.add_exception 'vendor'
11
- #
12
- # at.add_mapping(/dependency.rb/) do |f, _|
13
- # at.files_matching(/test_.*rb$/)
14
- # end
15
- #
16
- # %w(TestA TestB).each do |klass|
17
- # at.extra_class_map[klass] = "test/test_misc.rb"
18
- # end
19
- # end
20
-
21
- # Autotest.add_hook :run_command do |at|
22
- # system "rake build"
23
- # end
@@ -1,7 +0,0 @@
1
- .autotest
2
- History.md
3
- Manifest.txt
4
- README.md
5
- Rakefile
6
- lib/oba-client.rb
7
- test/test_oba_client.rb