biodiversity 1.0.10 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/spec/parser/todo.txt CHANGED
@@ -26,3 +26,30 @@ Polypodium lineare C.Chr. f. caudatoattenuatum Takeda Polypodium
26
26
 
27
27
  Rosa gallica × tomentosa var. eglandulosa R.Keller Rosa gallica
28
28
  Rosa gallica × afzeliana subsp. vosagiaca forma subcomplicata R.Keller Rosa gallica
29
+
30
+ Salmonella sp. (ser.) brancaster Macdonald, Sivell, Emms and Taylor 1948
31
+
32
+ Stanhopea tigrina Bateman ex Lindl. x S. ecornuta Lem.
33
+
34
+
35
+ Junellia o'donelli Moldenke, 1946
36
+
37
+ 119052670 | Human rhinovirus A11 |
38
+
39
+ Rubus idaeus monst. obtusifolius (Willd.) Focke | Rubus idaeus
40
+
41
+ Kerana var. cameroni |Kerana var
42
+
43
+ A. alba
44
+ A.alba
45
+
46
+ Bangalaia viridis sbsp. distinctemaculata Lepesme & Breuning, 1956
47
+
48
+ Clostridium sp. enrichment culture clone M4C16
49
+
50
+
51
+ 000913765 Rubus x gracilidens Sudre
52
+ Rubus gracilidens | 1
53
+
54
+
55
+ Salix myrtilloides x starkeana ssp. starkeana
metadata CHANGED
@@ -1,137 +1,178 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: biodiversity
3
- version: !ruby/object:Gem::Version
4
- hash: 3
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.0.0
5
5
  prerelease:
6
- segments:
7
- - 1
8
- - 0
9
- - 10
10
- version: 1.0.10
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Dmitry Mozzherin
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2012-01-25 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
21
- version_requirements: &id001 !ruby/object:Gem::Requirement
22
- none: false
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- hash: 3
27
- segments:
28
- - 0
29
- version: "0"
30
- requirement: *id001
12
+ date: 2013-05-08 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rake
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '10.0'
22
+ type: :runtime
31
23
  prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '10.0'
30
+ - !ruby/object:Gem::Dependency
32
31
  name: treetop
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
37
+ version: '1.4'
33
38
  type: :runtime
34
- - !ruby/object:Gem::Dependency
35
- version_requirements: &id002 !ruby/object:Gem::Requirement
36
- none: false
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- hash: 3
41
- segments:
42
- - 0
43
- version: "0"
44
- requirement: *id002
45
39
  prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: '1.4'
46
+ - !ruby/object:Gem::Dependency
46
47
  name: parallel
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: '0.6'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '0.6'
62
+ - !ruby/object:Gem::Dependency
63
+ name: unicode_utils
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ~>
68
+ - !ruby/object:Gem::Version
69
+ version: '1.4'
47
70
  type: :runtime
48
- - !ruby/object:Gem::Dependency
49
- version_requirements: &id003 !ruby/object:Gem::Requirement
50
- none: false
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- hash: 3
55
- segments:
56
- - 0
57
- version: "0"
58
- requirement: *id003
59
71
  prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: '1.4'
78
+ - !ruby/object:Gem::Dependency
79
+ name: debugger
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ~>
84
+ - !ruby/object:Gem::Version
85
+ version: '1.5'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: '1.5'
94
+ - !ruby/object:Gem::Dependency
60
95
  name: jeweler
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ~>
100
+ - !ruby/object:Gem::Version
101
+ version: '1.8'
61
102
  type: :development
62
- - !ruby/object:Gem::Dependency
63
- version_requirements: &id004 !ruby/object:Gem::Requirement
64
- none: false
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- hash: 3
69
- segments:
70
- - 0
71
- version: "0"
72
- requirement: *id004
73
103
  prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: '1.8'
110
+ - !ruby/object:Gem::Dependency
74
111
  name: treetop
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
75
118
  type: :runtime
76
- - !ruby/object:Gem::Dependency
77
- version_requirements: &id005 !ruby/object:Gem::Requirement
78
- none: false
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- hash: 3
83
- segments:
84
- - 0
85
- version: "0"
86
- requirement: *id005
87
119
  prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
88
127
  name: parallel
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
89
134
  type: :runtime
90
- - !ruby/object:Gem::Dependency
91
- version_requirements: &id006 !ruby/object:Gem::Requirement
92
- none: false
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- hash: 3
97
- segments:
98
- - 0
99
- version: "0"
100
- requirement: *id006
101
- prerelease: false
102
- name: json
103
- type: :runtime
104
- - !ruby/object:Gem::Dependency
105
- version_requirements: &id007 !ruby/object:Gem::Requirement
106
- none: false
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- hash: 3
111
- segments:
112
- - 0
113
- version: "0"
114
- requirement: *id007
115
135
  prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ - !ruby/object:Gem::Dependency
116
143
  name: rspec
144
+ requirement: !ruby/object:Gem::Requirement
145
+ none: false
146
+ requirements:
147
+ - - ! '>='
148
+ - !ruby/object:Gem::Version
149
+ version: '0'
117
150
  type: :development
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
118
158
  description: Tools for biodiversity informatics
119
159
  email: dmozzherin@gmail.com
120
- executables:
160
+ executables:
121
161
  - nnparse
122
162
  - parserver
123
163
  extensions: []
124
-
125
- extra_rdoc_files:
164
+ extra_rdoc_files:
126
165
  - LICENSE
127
- - README.rdoc
128
- files:
166
+ - README.md
167
+ files:
129
168
  - .document
130
169
  - .rvmrc
170
+ - .travis.yml
171
+ - CHANGELOG
131
172
  - Gemfile
132
173
  - Gemfile.lock
133
174
  - LICENSE
134
- - README.rdoc
175
+ - README.md
135
176
  - Rakefile
136
177
  - VERSION
137
178
  - bin/nnparse
@@ -158,36 +199,29 @@ files:
158
199
  - spec/spec_helper.rb
159
200
  homepage: http://github.com/GlobalNamesArchitecture/biodiversity
160
201
  licenses: []
161
-
162
202
  post_install_message:
163
203
  rdoc_options: []
164
-
165
- require_paths:
204
+ require_paths:
166
205
  - lib
167
- required_ruby_version: !ruby/object:Gem::Requirement
206
+ required_ruby_version: !ruby/object:Gem::Requirement
168
207
  none: false
169
- requirements:
170
- - - ">="
171
- - !ruby/object:Gem::Version
172
- hash: 3
173
- segments:
208
+ requirements:
209
+ - - ! '>='
210
+ - !ruby/object:Gem::Version
211
+ version: '0'
212
+ segments:
174
213
  - 0
175
- version: "0"
176
- required_rubygems_version: !ruby/object:Gem::Requirement
214
+ hash: -3993295929745438801
215
+ required_rubygems_version: !ruby/object:Gem::Requirement
177
216
  none: false
178
- requirements:
179
- - - ">="
180
- - !ruby/object:Gem::Version
181
- hash: 3
182
- segments:
183
- - 0
184
- version: "0"
217
+ requirements:
218
+ - - ! '>='
219
+ - !ruby/object:Gem::Version
220
+ version: '0'
185
221
  requirements: []
186
-
187
222
  rubyforge_project:
188
- rubygems_version: 1.8.10
223
+ rubygems_version: 1.8.25
189
224
  signing_key:
190
225
  specification_version: 3
191
226
  summary: Parser of scientific names
192
227
  test_files: []
193
-
data/README.rdoc DELETED
@@ -1,99 +0,0 @@
1
- = Biodiversity
2
-
3
- Parses taxonomic scientific name and breaks it into semantic elements.
4
-
5
- == Installation
6
-
7
- To install gem you need RubyGems >= 1.3.6
8
-
9
- $ sudo gem install biodiversity #for ruby 1.8.x
10
- $ sudo gem install biodiversity19 #for ruby 1.9.x
11
-
12
- == Example usage
13
-
14
- === As a command line script
15
-
16
- You can parse file with taxonomic names from command line. File should contain one scientific name per line
17
-
18
- nnparser file_with_names
19
-
20
- === As a socket server
21
-
22
- If you do not use ruby and need a fast access to the parser functionality you can use a socket server
23
-
24
- parserver
25
-
26
- options:
27
-
28
- parserver --output=canonical
29
-
30
- to return a canonical form of the name string
31
-
32
- parserver --output=canonical_with_rank
33
-
34
- the same as above, but infraspecies' rank is shown if available
35
-
36
- parserver --port 5555
37
-
38
- run socket server on a different port
39
-
40
- Then you can access it via 4334 port using a socket client library of your programming language. You can find socket client script example in the examples directory of the gem.
41
-
42
- If you want to check if socket server works for you:
43
-
44
- #run server in one terminal
45
- parserver
46
-
47
- #in another terminal window type
48
- telnet localhost 4334
49
-
50
- If you enter a line with a scientific name server will send you back parsed information in json format.
51
-
52
- To stop telnet client type any of 'end','exit','q', '.' (without quotes) instead of scientific name
53
-
54
- $ telnet localhost 4334
55
- Trying ::1...
56
- Connected to localhost.
57
- Escape character is '^]'.
58
- Acacia abyssinica Hochst. ex Benth. ssp. calophylla Brenan
59
- {"scientificName":{"canonical":"Acacia abyssinica calophylla","parsed":true,"parser_run":1,"verbatim":"Acacia abyssinica Hochst. ex Benth. ssp. calophylla Brenan\r\n","positions":{"0":["genus",6],"18":["author_word",25],"29":["author_word",35],"7":["species",17],"41":["infraspecies",51],"52":["author_word",58]},"hybrid":false,"normalized":"Acacia abyssinica Hochst. ex Benth. ssp. calophylla Brenan","details":[{"species":{"basionymAuthorTeam":{"exAuthorTeam":{"author":["Benth."],"authorTeam":"Benth."},"author":["Hochst."],"authorTeam":"Hochst."},"string":"abyssinica","authorship":"Hochst. ex Benth."},"infraspecies":[{"basionymAuthorTeam":{"author":["Brenan"],"authorTeam":"Brenan"},"string":"calophylla","rank":"ssp.","authorship":"Brenan"}],"genus":{"string":"Acacia"}}]}}
60
-
61
-
62
- === As a library
63
-
64
- You can use it as a library
65
-
66
- require 'biodiversity'
67
-
68
- parser = ScientificNameParser.new
69
-
70
- # to parse a scientific name into a ruby hash
71
- parser.parse("Plantago major")
72
-
73
- #to get json representation
74
- parser.parse("Plantago").to_json
75
- #or
76
- parser.parse("Plantago")
77
- parser.all_json
78
-
79
- # to clean name up
80
- parser.parse(" Plantago major ")[:scientificName][:normalized]
81
-
82
- # to get only cleaned up latin part of the name
83
- parser.parse("Pseudocercospora dendrobii (H.C. Burnett) U. Braun & Crous 2003")[:scientificName][:canonical]
84
-
85
- # to get detailed information about elements of the name
86
- parser.parse("Pseudocercospora dendrobii (H.C. Burnett 1883) U. Braun & Crous 2003")[:scientificName][:details]
87
-
88
- # to parse using several CPUs (4 seem to be optimal)
89
- parser = ParallelParser.new # ParallelParser.new(4) will try to run 4 processes if hardware allows
90
- array_of_names = ["Betula alba", "Homo sapiens"....]
91
- parser.parse(array_of_names) # -> {"Betula alba" => {:scientificName...}, "Homo sapiens" => {:scientificName...}, ...}
92
-
93
- parallel parser takes list of names and returns back a hash with names as keys and parsed data as values
94
-
95
- # to resolve lsid and get back RDF file
96
- LsidResolver.resolve("urn:lsid:ubio.org:classificationbank:2232671")
97
-
98
- Copyright (c) 2009-2011 Marine Biological Laboratory. See LICENSE.txt for
99
- further details.