openbel-api 1.0.4-java → 1.1.0-java

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 00a36abdeadf9bbfeaf6bd2251e2f7cd32b051bf
4
- data.tar.gz: 29e80343fd5d984c9df84266fe707ded3fc10658
3
+ metadata.gz: 21f37fc7e4b79123c240c3ff5032cf636ce08b2e
4
+ data.tar.gz: 9e132e96f9542dff268447a45ae9a3d38440239d
5
5
  SHA512:
6
- metadata.gz: 0f417e1ab2ae9a477ed14d4ce15fbc048b83ce31e0fb2254c02ad16f11d4f1e187e18c2011420abf589367e9dcdabb230866b21af71b1517b9c866d29564aa76
7
- data.tar.gz: 5a9377f4e826f6287883c89b414f4b5df48f5872fb72569da9ec1c577dcb04f716a1e0241ff85cb3376e31e5b9b2d710929da3c13ff5a775f21a737aaffdd229
6
+ metadata.gz: a2103e8d840b56fd1ab1bb3e5018542f2c4bc89517718643a3bc5aa96798b6518795593d1ff499eeca5ec5a3813a0dc039a803cf1a79fc6de342e8f4f21061b7
7
+ data.tar.gz: 45596461fe4067da77a3307ff48a3ecdca51f492c1d32d50df6e7df105b89d9d708f29e45dea55151d98f0d4fc3eae36004ffaf0feb371cf8cf8e3a7a181d2ce
data/.gemspec CHANGED
@@ -11,7 +11,7 @@ Gem::Specification.new do |spec|
11
11
  'Nick Bargnesi',
12
12
  'William Hayes'
13
13
  ]
14
- spec.date = %q{2016-03-23}
14
+ spec.date = %q{2017-01-13}
15
15
  spec.email = %q{abargnesi@selventa.com}
16
16
  spec.files = [
17
17
  Dir.glob('app/**/*.{json,rb,ru}'),
@@ -33,24 +33,21 @@ Gem::Specification.new do |spec|
33
33
 
34
34
  # Dependencies
35
35
 
36
- ## bel.rb
37
- spec.add_runtime_dependency 'bel', '~> 1.0.0'
36
+ ## bel.rb + plugins
37
+ spec.add_runtime_dependency 'bel', '~> 1.1.0'
38
+ spec.add_runtime_dependency 'bel-search-sqlite', '~> 1.1.0'
39
+ spec.add_runtime_dependency 'bel-rdf-jena', '~> 1.1.0'
38
40
 
39
41
  ## bel.rb translator dependencies
40
42
  spec.add_runtime_dependency 'json-ld', '2.0.0'
41
43
  spec.add_runtime_dependency 'rdf-json', '2.0.0'
42
44
  spec.add_runtime_dependency 'rdf-rdfa', '2.0.0'
45
+ spec.add_runtime_dependency 'rdf-xsd', '2.0.0'
43
46
  spec.add_runtime_dependency 'rdf-rdfxml', '2.0.0'
44
47
  spec.add_runtime_dependency 'rdf-trig', '2.0.0'
45
48
  spec.add_runtime_dependency 'rdf-trix', '2.0.0'
46
49
  spec.add_runtime_dependency 'rdf-turtle', '2.0.0'
47
50
 
48
- ## bel.rb plugin - annotation/namespace search
49
- spec.add_runtime_dependency 'bel-search-sqlite', '~> 1.0.0'
50
-
51
- ## bel.rb plugin - RDF repository using Apache Jena
52
- spec.add_runtime_dependency 'bel-rdf-jena', '~> 1.0.0'
53
-
54
51
  ## Mongo - Faceted search of nanopub.
55
52
  spec.add_runtime_dependency 'mongo', '1.12.5'
56
53
  spec.add_runtime_dependency 'bson', '1.12.5'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.4
1
+ 1.1.0
@@ -8,12 +8,12 @@ module OpenBEL
8
8
  adapter Oat::Adapters::HAL
9
9
  schema do
10
10
  type :completion
11
- property :type, item[:type]
12
- property :label, item[:label]
13
- property :value, item[:value]
14
- property :highlight, item[:highlight]
15
- property :actions, item[:actions]
16
- property :id, item[:id]
11
+ property :type, item[:type]
12
+ property :id, item[:id]
13
+ property :label, item[:label]
14
+ property :value, item[:value]
15
+ property :caret_position, item[:caret_position]
16
+ property :validation, item[:validation]
17
17
  end
18
18
  end
19
19
 
@@ -25,19 +25,11 @@ module OpenBEL
25
25
  p.completion item
26
26
  end
27
27
 
28
- link :self, link_self(item[:id])
29
28
  link :describedby, link_described_by(item[:type], item[:id])
30
29
  end
31
30
 
32
31
  private
33
32
 
34
- def link_self(id)
35
- {
36
- :type => 'completion',
37
- :href => "#{base_url}/api/expressions/#{id}/completions"
38
- }
39
- end
40
-
41
33
  def link_described_by(type, id)
42
34
  case type
43
35
  when :function
@@ -55,6 +47,11 @@ module OpenBEL
55
47
  :type => 'namespace_value',
56
48
  :href => "#{base_url}/api/namespaces/hgnc/#{id}"
57
49
  }
50
+ when :relationship
51
+ {
52
+ :type => 'relationship',
53
+ :href => "#{base_url}/api/relationships/#{id}"
54
+ }
58
55
  else
59
56
  raise NotImplementedError.new("Unexpected resource type, #{type}")
60
57
  end
@@ -71,13 +71,23 @@ module OpenBEL
71
71
  end
72
72
 
73
73
  def base_url
74
- env['HTTP_X_REAL_BASE_URL'] ||
75
- "#{env['rack.url_scheme']}://#{env['SERVER_NAME']}:#{env['SERVER_PORT']}"
74
+ if env['SERVER_PORT'] == 443
75
+ scheme = 'https'
76
+ else
77
+ scheme = 'http'
78
+ end
79
+
80
+ "#{scheme}://#{env['HTTP_HOST']}"
76
81
  end
77
82
 
78
83
  def url
79
- env['HTTP_X_REAL_URL'] ||
80
- "#{env['rack.url_scheme']}://#{env['SERVER_NAME']}:#{env['SERVER_PORT']}/#{env['PATH_INFO']}"
84
+ if env['SERVER_PORT'] == 443
85
+ scheme = 'https'
86
+ else
87
+ scheme = 'http'
88
+ end
89
+
90
+ "#{scheme}://#{env['HTTP_HOST']}/#{env['PATH_INFO']}"
81
91
  end
82
92
 
83
93
  def schema_url(name)
@@ -1,9 +1,15 @@
1
1
  require 'cgi'
2
2
  require 'bel'
3
3
  require 'uri'
4
+ require 'bel_parser/ast_filter'
5
+ require 'bel_parser/ast_generator'
6
+ require 'bel_parser/completion'
4
7
  require 'bel_parser/expression/model'
5
8
  require 'bel_parser/expression/parser'
6
9
  require 'bel_parser/expression/validator'
10
+ require 'bel_parser/language/expression_validator'
11
+ require 'bel_parser/language/semantics'
12
+ require 'bel_parser/parsers/serializer'
7
13
  require 'bel_parser/resources'
8
14
  require 'bel_parser/resource/jena_tdb_reader'
9
15
 
@@ -11,6 +17,7 @@ module OpenBEL
11
17
  module Routes
12
18
 
13
19
  class Expressions < Base
20
+ include BELParser::Parsers
14
21
 
15
22
  def initialize(app)
16
23
  super
@@ -170,7 +177,7 @@ module OpenBEL
170
177
  halt 400 unless bel and caret_position
171
178
 
172
179
  begin
173
- completions = BEL::Completion.complete(bel, @spec, @search, @namespaces, caret_position)
180
+ completions = BELParser::Completion.complete(bel, @spec, @search, @supported_namespaces, caret_position)
174
181
  rescue IndexError => ex
175
182
  halt(
176
183
  400,
@@ -192,13 +199,22 @@ module OpenBEL
192
199
  bel = params[:splat].first
193
200
  flatten = as_bool(params[:flatten])
194
201
 
195
- statement =
196
- BELParser::Expression.parse_statements(
197
- bel,
198
- @spec,
199
- @supported_namespaces
200
- )
201
- halt 404 unless statement
202
+ begin
203
+ statement =
204
+ BELParser::Expression.parse_statements(
205
+ bel,
206
+ @spec,
207
+ @supported_namespaces
208
+ )
209
+ halt 404 unless statement
210
+ rescue Exception => ex
211
+ halt(
212
+ 422,
213
+ {'Content-Type' => 'application/json'},
214
+ render_json({ :status => 422, :status_name => 'UNPROCESSABLE ENTITY', :msg => ex.to_s })
215
+ )
216
+ end
217
+
202
218
 
203
219
  response.headers['Content-Type'] = 'application/json'
204
220
  MultiJson.dump({
@@ -254,13 +270,105 @@ module OpenBEL
254
270
  # Produce validation result for BEL expression using the current language.
255
271
  get '/api/expressions/*/validation/?' do
256
272
  bel = params[:splat].first
257
- response.headers['Content-Type'] = 'text/plain'
258
273
 
259
- @expression_validator.each(
260
- StringIO.new("#{bel}\n")
261
- ) do |(num, line, ast, result)|
274
+ if request.accept.any? { |accept| accept.to_s == 'application/json' }
275
+ filter =
276
+ BELParser::ASTFilter.new(
277
+ BELParser::ASTGenerator.new("#{bel}\n"),
278
+ :simple_statement,
279
+ :observed_term,
280
+ :nested_statement
281
+ )
282
+ _, _, ast = filter.each.first
283
+
284
+ if ast.nil? || ast.empty?
285
+ response.headers['Content-Type'] = 'application/json'
286
+ return render_json(
287
+ {
288
+ valid_syntax: false,
289
+ valid_semantics: false,
290
+ message: 'Invalid syntax.',
291
+ warnings: [],
292
+ term_signatures: []
293
+ }
294
+ )
295
+ end
296
+
297
+ message = ''
298
+ terms = ast.first.traverse.select { |node| node.type == :term }.to_a
299
+ semantics_functions =
300
+ BELParser::Language::Semantics.semantics_functions.reject { |fun|
301
+ fun == BELParser::Language::Semantics::SignatureMapping
302
+ }
303
+
304
+ semantic_warnings =
305
+ ast
306
+ .first
307
+ .traverse
308
+ .flat_map { |node|
309
+ semantics_functions.flat_map { |func|
310
+ func.map(node, @spec, @supported_namespaces)
311
+ }
312
+ }
313
+ .compact
314
+
315
+ if semantic_warnings.empty?
316
+ valid = true
317
+ else
318
+ valid = false
319
+ message =
320
+ semantic_warnings.reduce('') { |msg, warning|
321
+ msg << "#{warning}\n"
322
+ }
323
+ message << "\n"
324
+ end
325
+
326
+ urir = BELParser::Resource.default_uri_reader
327
+ urlr = BELParser::Resource.default_url_reader
328
+ validator = BELParser::Language::ExpressionValidator.new(@spec, @supported_namespaces, urir, urlr)
329
+ term_semantics =
330
+ terms.map { |term|
331
+ term_result = validator.validate(term)
332
+ valid &= term_result.valid_semantics?
333
+ bel_term = serialize(term)
334
+
335
+ unless valid
336
+ message << "Term: #{bel_term}\n"
337
+ term_result.invalid_signature_mappings.map { |m|
338
+ message << " #{m}\n"
339
+ }
340
+ message << "\n"
341
+ end
342
+
343
+ {
344
+ term: bel_term,
345
+ valid_signatures: term_result.valid_signature_mappings.map(&:to_s),
346
+ invalid_signatures: term_result.invalid_signature_mappings.map(&:to_s)
347
+ }
348
+ }
349
+
350
+ response.headers['Content-Type'] = 'application/json'
351
+ render_json(
352
+ {
353
+ validation: {
354
+ expression: bel,
355
+ valid_syntax: true,
356
+ valid_semantics: valid,
357
+ message: valid ? 'Valid semantics' : message,
358
+ warnings: semantic_warnings.map(&:to_s),
359
+ term_signatures: term_semantics
360
+ }
361
+ }
362
+ )
363
+ else
364
+ response.headers['Content-Type'] = 'text/plain'
365
+ @expression_validator.each(
366
+ StringIO.new("#{bel}\n")
367
+ ) do |(_, _, _, result)|
368
+ return result.to_s
369
+ end
262
370
 
263
- return result.to_s
371
+ return "Invalid syntax."
264
372
  end
265
373
  end
266
374
  end
@@ -21,14 +21,14 @@ module OpenBEL
21
21
  mongo = OpenBEL::Settings[:nanopub_store][:mongo]
22
22
  @api = OpenBEL::Nanopub::Nanopub.new(mongo)
23
23
 
24
- # RdfRepository using Jena
25
- @rr = BEL::RdfRepository.plugins[:jena].create_repository(
26
- :tdb_directory => OpenBEL::Settings[:resource_rdf][:jena][:tdb_directory]
27
- )
24
+ # RdfRepository using Jena.
25
+ tdb = OpenBEL::Settings[:resource_rdf][:jena][:tdb_directory]
26
+ @rr = BEL::RdfRepository.plugins[:jena].create_repository(:tdb_directory => tdb)
27
+
28
28
 
29
29
  # Annotations using RdfRepository
30
- annotations = BEL::Resource::Annotations.new(@rr)
31
- @annotation_transform = AnnotationTransform.new(annotations)
30
+ @annotations = BEL::Resource::Annotations.new(@rr)
31
+ @annotation_transform = AnnotationTransform.new(@annotations)
32
32
  @annotation_grouping_transform = AnnotationGroupingTransform.new
33
33
  end
34
34
 
@@ -116,7 +116,7 @@ module OpenBEL
116
116
  # Validate BNJ.
117
117
  validate_media_type! "application/json"
118
118
  nanopub_obj = read_json
119
-
119
+ # STDERR.puts "DBG: nanopub_obj Variable config is #{nanopub_obj.inspect}"
120
120
  schema_validation = validate_schema(keys_to_s_deep(nanopub_obj), :nanopub)
121
121
  unless schema_validation[0]
122
122
  halt(
@@ -127,6 +127,7 @@ module OpenBEL
127
127
  end
128
128
 
129
129
  nanopub = ::BEL::Nanopub::Nanopub.create(nanopub_obj[:nanopub])
130
+ # STDERR.puts "DBG: nanopub Variable config is #{nanopub.inspect}"
130
131
 
131
132
  # Standardize annotations.
132
133
  @annotation_transform.transform_nanopub!(nanopub, base_url)
@@ -135,12 +136,22 @@ module OpenBEL
135
136
  facets = map_nanopub_facets(nanopub)
136
137
  hash = nanopub.to_h
137
138
  hash[:bel_statement] = hash.fetch(:bel_statement, nil).to_s
139
+
140
+ # STDERR.puts "DBG: Variable config is #{hash.inspect}"
141
+
138
142
  hash[:facets] = facets
139
143
  _id = @api.create_nanopub(hash)
140
144
 
141
145
  # Return Location information (201).
142
146
  status 201
143
147
  headers "Location" => "#{base_url}/api/nanopubs/#{_id}"
148
+ headers "Content-Type" => 'application/json'
149
+ render_json(
150
+ {
151
+ :status => 201,
152
+ :location => "#{base_url}/api/nanopubs/#{_id}"
153
+ }
154
+ )
144
155
  end
145
156
 
146
157
  get '/api/nanopubs-stream', provides: 'application/json' do
@@ -3,27 +3,28 @@
3
3
  "title": "Nanopub Resource",
4
4
  "description": "A single nanopub resource.",
5
5
  "type": "object",
6
- "additionalProperties": false,
7
6
  "required": [
8
7
  "nanopub"
9
8
  ],
10
9
  "properties": {
11
- "allOf": [
12
- {
13
- "$ref":"nanopub.schema.json"
14
- },
15
- {
16
- "type": "object",
17
- "additionalProperties": false,
18
- "required": [
19
- "links"
20
- ],
21
- "properties": {
22
- "links": {
23
- "type": "object"
10
+ "nanopub_resource": {
11
+ "allOf": [
12
+ {
13
+ "$ref": "nanopub.schema.json"
14
+ },
15
+ {
16
+ "type": "object",
17
+ "additionalProperties": false,
18
+ "required": [
19
+ "links"
20
+ ],
21
+ "properties": {
22
+ "links": {
23
+ "type": "object"
24
+ }
24
25
  }
25
26
  }
26
- }
27
- ]
27
+ ]
28
+ }
28
29
  }
29
- }
30
+ }
data/config/config.yml CHANGED
@@ -8,7 +8,7 @@ bel:
8
8
  # (BEL version 1.0 specification)
9
9
  # 2.0
10
10
  # (BEL version 2.0 specification)
11
- version: 1.0
11
+ version: 2.0
12
12
 
13
13
  # Storage of nanopubs through the Mongo database.
14
14
  nanopub_store:
@@ -16,7 +16,7 @@ nanopub_store:
16
16
 
17
17
  # The MongoDB host to connect to. For example if MongoDB's net.bindIp
18
18
  # setting is configured as 127.0.0.1 we should be able to connect using
19
- # 'localhost'. We use 'mongodb' for use in the docker-compose file.
19
+ # 'localhost'. We use 'mongodb' for use with docker-compose.
20
20
  host: 'mongodb'
21
21
 
22
22
  # The default MongoDB port. Configured under MongoDB's `net.port` setting.
@@ -56,7 +56,7 @@ resource_rdf:
56
56
  # Full-text search over annotation and namespace values using SQLite.
57
57
  resource_search:
58
58
  sqlite:
59
- database_file: '/data/rdf_resources/biological-concepts-rdf.db'
59
+ database_file: '/data/rdf_resources.db'
60
60
 
61
61
  # Set a secret used during session creation....
62
62
  session_secret: 'changeme'
@@ -66,8 +66,5 @@ auth:
66
66
  # Controls whether the API requires authentication
67
67
  enabled: false
68
68
  # Used by the auth middleware to decode and verify the JWT
69
- secret: |
70
- -----BEGIN PUBLIC KEY-----
71
- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu77nUtVw7SIIcUTSiStzMPB7BGB/9eS+CpppsUaiyZyWCXlrALT3YdqneSlpX4Ta+0wvhOkKQtoSS8dCH8GIi7esAmfdHetHfRgeDXHAlXo8HIzshUzODg3ysT7j+Ha3eJsO+LNS/omHDhsarP8Z2eThW876iKJCCc/mB76a6u1e4Id+52K5lG++m8Pn4Gs+cqd2sKUKcMJ9CkJ6dBIdGlXHMoOHj4C33SPrEG/vEBv5cu0l5PP3RiBAuaZHpLKzfIiaLOpj/k4dD/weVt5gwTIJn16AEgPD7173Xef0HgoPlQInDFrJwsGpYCnIPZWSxRbvjKkya2Auj0QZyMCrXwIDAQAB
72
- -----END PUBLIC KEY-----
69
+ #secret: 'JWT secret here'
73
70
 
metadata CHANGED
@@ -1,348 +1,362 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openbel-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.1.0
5
5
  platform: java
6
6
  authors:
7
7
  - Anthony Bargnesi
8
8
  - Nick Bargnesi
9
9
  - William Hayes
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-03-23 00:00:00.000000000 Z
13
+ date: 2017-01-13 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- name: bel
17
16
  requirement: !ruby/object:Gem::Requirement
18
17
  requirements:
19
18
  - - "~>"
20
19
  - !ruby/object:Gem::Version
21
- version: 1.0.0
22
- type: :runtime
20
+ version: 1.1.0
21
+ name: bel
23
22
  prerelease: false
23
+ type: :runtime
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - "~>"
27
27
  - !ruby/object:Gem::Version
28
- version: 1.0.0
28
+ version: 1.1.0
29
29
  - !ruby/object:Gem::Dependency
30
- name: json-ld
31
30
  requirement: !ruby/object:Gem::Requirement
32
31
  requirements:
33
- - - '='
32
+ - - "~>"
34
33
  - !ruby/object:Gem::Version
35
- version: 2.0.0
34
+ version: 1.1.0
35
+ name: bel-search-sqlite
36
+ prerelease: false
36
37
  type: :runtime
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: 1.1.0
43
+ - !ruby/object:Gem::Dependency
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - "~>"
47
+ - !ruby/object:Gem::Version
48
+ version: 1.1.0
49
+ name: bel-rdf-jena
37
50
  prerelease: false
51
+ type: :runtime
38
52
  version_requirements: !ruby/object:Gem::Requirement
39
53
  requirements:
40
- - - '='
54
+ - - "~>"
41
55
  - !ruby/object:Gem::Version
42
- version: 2.0.0
56
+ version: 1.1.0
43
57
  - !ruby/object:Gem::Dependency
44
- name: rdf-json
45
58
  requirement: !ruby/object:Gem::Requirement
46
59
  requirements:
47
60
  - - '='
48
61
  - !ruby/object:Gem::Version
49
62
  version: 2.0.0
50
- type: :runtime
63
+ name: json-ld
51
64
  prerelease: false
65
+ type: :runtime
52
66
  version_requirements: !ruby/object:Gem::Requirement
53
67
  requirements:
54
68
  - - '='
55
69
  - !ruby/object:Gem::Version
56
70
  version: 2.0.0
57
71
  - !ruby/object:Gem::Dependency
58
- name: rdf-rdfa
59
72
  requirement: !ruby/object:Gem::Requirement
60
73
  requirements:
61
74
  - - '='
62
75
  - !ruby/object:Gem::Version
63
76
  version: 2.0.0
64
- type: :runtime
77
+ name: rdf-json
65
78
  prerelease: false
79
+ type: :runtime
66
80
  version_requirements: !ruby/object:Gem::Requirement
67
81
  requirements:
68
82
  - - '='
69
83
  - !ruby/object:Gem::Version
70
84
  version: 2.0.0
71
85
  - !ruby/object:Gem::Dependency
72
- name: rdf-rdfxml
73
86
  requirement: !ruby/object:Gem::Requirement
74
87
  requirements:
75
88
  - - '='
76
89
  - !ruby/object:Gem::Version
77
90
  version: 2.0.0
78
- type: :runtime
91
+ name: rdf-rdfa
79
92
  prerelease: false
93
+ type: :runtime
80
94
  version_requirements: !ruby/object:Gem::Requirement
81
95
  requirements:
82
96
  - - '='
83
97
  - !ruby/object:Gem::Version
84
98
  version: 2.0.0
85
99
  - !ruby/object:Gem::Dependency
86
- name: rdf-trig
87
100
  requirement: !ruby/object:Gem::Requirement
88
101
  requirements:
89
102
  - - '='
90
103
  - !ruby/object:Gem::Version
91
104
  version: 2.0.0
92
- type: :runtime
105
+ name: rdf-xsd
93
106
  prerelease: false
107
+ type: :runtime
94
108
  version_requirements: !ruby/object:Gem::Requirement
95
109
  requirements:
96
110
  - - '='
97
111
  - !ruby/object:Gem::Version
98
112
  version: 2.0.0
99
113
  - !ruby/object:Gem::Dependency
100
- name: rdf-trix
101
114
  requirement: !ruby/object:Gem::Requirement
102
115
  requirements:
103
116
  - - '='
104
117
  - !ruby/object:Gem::Version
105
118
  version: 2.0.0
106
- type: :runtime
119
+ name: rdf-rdfxml
107
120
  prerelease: false
121
+ type: :runtime
108
122
  version_requirements: !ruby/object:Gem::Requirement
109
123
  requirements:
110
124
  - - '='
111
125
  - !ruby/object:Gem::Version
112
126
  version: 2.0.0
113
127
  - !ruby/object:Gem::Dependency
114
- name: rdf-turtle
115
128
  requirement: !ruby/object:Gem::Requirement
116
129
  requirements:
117
130
  - - '='
118
131
  - !ruby/object:Gem::Version
119
132
  version: 2.0.0
120
- type: :runtime
133
+ name: rdf-trig
121
134
  prerelease: false
135
+ type: :runtime
122
136
  version_requirements: !ruby/object:Gem::Requirement
123
137
  requirements:
124
138
  - - '='
125
139
  - !ruby/object:Gem::Version
126
140
  version: 2.0.0
127
141
  - !ruby/object:Gem::Dependency
128
- name: bel-search-sqlite
129
142
  requirement: !ruby/object:Gem::Requirement
130
143
  requirements:
131
- - - "~>"
144
+ - - '='
132
145
  - !ruby/object:Gem::Version
133
- version: 1.0.0
134
- type: :runtime
146
+ version: 2.0.0
147
+ name: rdf-trix
135
148
  prerelease: false
149
+ type: :runtime
136
150
  version_requirements: !ruby/object:Gem::Requirement
137
151
  requirements:
138
- - - "~>"
152
+ - - '='
139
153
  - !ruby/object:Gem::Version
140
- version: 1.0.0
154
+ version: 2.0.0
141
155
  - !ruby/object:Gem::Dependency
142
- name: bel-rdf-jena
143
156
  requirement: !ruby/object:Gem::Requirement
144
157
  requirements:
145
- - - "~>"
158
+ - - '='
146
159
  - !ruby/object:Gem::Version
147
- version: 1.0.0
148
- type: :runtime
160
+ version: 2.0.0
161
+ name: rdf-turtle
149
162
  prerelease: false
163
+ type: :runtime
150
164
  version_requirements: !ruby/object:Gem::Requirement
151
165
  requirements:
152
- - - "~>"
166
+ - - '='
153
167
  - !ruby/object:Gem::Version
154
- version: 1.0.0
168
+ version: 2.0.0
155
169
  - !ruby/object:Gem::Dependency
156
- name: mongo
157
170
  requirement: !ruby/object:Gem::Requirement
158
171
  requirements:
159
172
  - - '='
160
173
  - !ruby/object:Gem::Version
161
174
  version: 1.12.5
162
- type: :runtime
175
+ name: mongo
163
176
  prerelease: false
177
+ type: :runtime
164
178
  version_requirements: !ruby/object:Gem::Requirement
165
179
  requirements:
166
180
  - - '='
167
181
  - !ruby/object:Gem::Version
168
182
  version: 1.12.5
169
183
  - !ruby/object:Gem::Dependency
170
- name: bson
171
184
  requirement: !ruby/object:Gem::Requirement
172
185
  requirements:
173
186
  - - '='
174
187
  - !ruby/object:Gem::Version
175
188
  version: 1.12.5
176
- type: :runtime
189
+ name: bson
177
190
  prerelease: false
191
+ type: :runtime
178
192
  version_requirements: !ruby/object:Gem::Requirement
179
193
  requirements:
180
194
  - - '='
181
195
  - !ruby/object:Gem::Version
182
196
  version: 1.12.5
183
197
  - !ruby/object:Gem::Dependency
184
- name: dot_hash
185
198
  requirement: !ruby/object:Gem::Requirement
186
199
  requirements:
187
200
  - - '='
188
201
  - !ruby/object:Gem::Version
189
202
  version: 0.5.9
190
- type: :runtime
203
+ name: dot_hash
191
204
  prerelease: false
205
+ type: :runtime
192
206
  version_requirements: !ruby/object:Gem::Requirement
193
207
  requirements:
194
208
  - - '='
195
209
  - !ruby/object:Gem::Version
196
210
  version: 0.5.9
197
211
  - !ruby/object:Gem::Dependency
198
- name: jrjackson
199
212
  requirement: !ruby/object:Gem::Requirement
200
213
  requirements:
201
214
  - - '='
202
215
  - !ruby/object:Gem::Version
203
216
  version: 0.3.7
204
- type: :runtime
217
+ name: jrjackson
205
218
  prerelease: false
219
+ type: :runtime
206
220
  version_requirements: !ruby/object:Gem::Requirement
207
221
  requirements:
208
222
  - - '='
209
223
  - !ruby/object:Gem::Version
210
224
  version: 0.3.7
211
225
  - !ruby/object:Gem::Dependency
212
- name: json_schema
213
226
  requirement: !ruby/object:Gem::Requirement
214
227
  requirements:
215
228
  - - '='
216
229
  - !ruby/object:Gem::Version
217
230
  version: 0.10.0
218
- type: :runtime
231
+ name: json_schema
219
232
  prerelease: false
233
+ type: :runtime
220
234
  version_requirements: !ruby/object:Gem::Requirement
221
235
  requirements:
222
236
  - - '='
223
237
  - !ruby/object:Gem::Version
224
238
  version: 0.10.0
225
239
  - !ruby/object:Gem::Dependency
226
- name: multi_json
227
240
  requirement: !ruby/object:Gem::Requirement
228
241
  requirements:
229
242
  - - '='
230
243
  - !ruby/object:Gem::Version
231
244
  version: 1.11.2
232
- type: :runtime
245
+ name: multi_json
233
246
  prerelease: false
247
+ type: :runtime
234
248
  version_requirements: !ruby/object:Gem::Requirement
235
249
  requirements:
236
250
  - - '='
237
251
  - !ruby/object:Gem::Version
238
252
  version: 1.11.2
239
253
  - !ruby/object:Gem::Dependency
240
- name: oat
241
254
  requirement: !ruby/object:Gem::Requirement
242
255
  requirements:
243
256
  - - '='
244
257
  - !ruby/object:Gem::Version
245
258
  version: 0.4.6
246
- type: :runtime
259
+ name: oat
247
260
  prerelease: false
261
+ type: :runtime
248
262
  version_requirements: !ruby/object:Gem::Requirement
249
263
  requirements:
250
264
  - - '='
251
265
  - !ruby/object:Gem::Version
252
266
  version: 0.4.6
253
267
  - !ruby/object:Gem::Dependency
254
- name: puma
255
268
  requirement: !ruby/object:Gem::Requirement
256
269
  requirements:
257
270
  - - '='
258
271
  - !ruby/object:Gem::Version
259
272
  version: 3.1.0
260
- type: :runtime
273
+ name: puma
261
274
  prerelease: false
275
+ type: :runtime
262
276
  version_requirements: !ruby/object:Gem::Requirement
263
277
  requirements:
264
278
  - - '='
265
279
  - !ruby/object:Gem::Version
266
280
  version: 3.1.0
267
281
  - !ruby/object:Gem::Dependency
268
- name: rack
269
282
  requirement: !ruby/object:Gem::Requirement
270
283
  requirements:
271
284
  - - '='
272
285
  - !ruby/object:Gem::Version
273
286
  version: 1.6.4
274
- type: :runtime
287
+ name: rack
275
288
  prerelease: false
289
+ type: :runtime
276
290
  version_requirements: !ruby/object:Gem::Requirement
277
291
  requirements:
278
292
  - - '='
279
293
  - !ruby/object:Gem::Version
280
294
  version: 1.6.4
281
295
  - !ruby/object:Gem::Dependency
282
- name: rack-cors
283
296
  requirement: !ruby/object:Gem::Requirement
284
297
  requirements:
285
298
  - - '='
286
299
  - !ruby/object:Gem::Version
287
300
  version: 0.4.0
288
- type: :runtime
301
+ name: rack-cors
289
302
  prerelease: false
303
+ type: :runtime
290
304
  version_requirements: !ruby/object:Gem::Requirement
291
305
  requirements:
292
306
  - - '='
293
307
  - !ruby/object:Gem::Version
294
308
  version: 0.4.0
295
309
  - !ruby/object:Gem::Dependency
296
- name: rack-handlers
297
310
  requirement: !ruby/object:Gem::Requirement
298
311
  requirements:
299
312
  - - '='
300
313
  - !ruby/object:Gem::Version
301
314
  version: 0.7.0
302
- type: :runtime
315
+ name: rack-handlers
303
316
  prerelease: false
317
+ type: :runtime
304
318
  version_requirements: !ruby/object:Gem::Requirement
305
319
  requirements:
306
320
  - - '='
307
321
  - !ruby/object:Gem::Version
308
322
  version: 0.7.0
309
323
  - !ruby/object:Gem::Dependency
310
- name: sinatra
311
324
  requirement: !ruby/object:Gem::Requirement
312
325
  requirements:
313
326
  - - '='
314
327
  - !ruby/object:Gem::Version
315
328
  version: 1.4.6
316
- type: :runtime
329
+ name: sinatra
317
330
  prerelease: false
331
+ type: :runtime
318
332
  version_requirements: !ruby/object:Gem::Requirement
319
333
  requirements:
320
334
  - - '='
321
335
  - !ruby/object:Gem::Version
322
336
  version: 1.4.6
323
337
  - !ruby/object:Gem::Dependency
324
- name: sinatra-contrib
325
338
  requirement: !ruby/object:Gem::Requirement
326
339
  requirements:
327
340
  - - '='
328
341
  - !ruby/object:Gem::Version
329
342
  version: 1.4.6
330
- type: :runtime
343
+ name: sinatra-contrib
331
344
  prerelease: false
345
+ type: :runtime
332
346
  version_requirements: !ruby/object:Gem::Requirement
333
347
  requirements:
334
348
  - - '='
335
349
  - !ruby/object:Gem::Version
336
350
  version: 1.4.6
337
351
  - !ruby/object:Gem::Dependency
338
- name: jwt
339
352
  requirement: !ruby/object:Gem::Requirement
340
353
  requirements:
341
354
  - - '='
342
355
  - !ruby/object:Gem::Version
343
356
  version: 1.5.2
344
- type: :runtime
357
+ name: jwt
345
358
  prerelease: false
359
+ type: :runtime
346
360
  version_requirements: !ruby/object:Gem::Requirement
347
361
  requirements:
348
362
  - - '='
@@ -351,9 +365,9 @@ dependencies:
351
365
  description: The OpenBEL API provides a RESTful API over HTTP to manage BEL knowledge.
352
366
  email: abargnesi@selventa.com
353
367
  executables:
368
+ - setup-docker.sh
354
369
  - openbel-api
355
370
  - openbel-config
356
- - setup-docker.sh
357
371
  extensions: []
358
372
  extra_rdoc_files: []
359
373
  files:
@@ -434,7 +448,7 @@ homepage: https://github.com/OpenBEL/openbel-api
434
448
  licenses:
435
449
  - Apache-2.0
436
450
  metadata: {}
437
- post_install_message:
451
+ post_install_message:
438
452
  rdoc_options: []
439
453
  require_paths:
440
454
  - app
@@ -450,9 +464,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
450
464
  - !ruby/object:Gem::Version
451
465
  version: '0'
452
466
  requirements: []
453
- rubyforge_project:
454
- rubygems_version: 2.4.6
455
- signing_key:
467
+ rubyforge_project:
468
+ rubygems_version: 2.6.8
469
+ signing_key:
456
470
  specification_version: 4
457
471
  summary: The OpenBEL API provided over RESTful HTTP endpoints.
458
472
  test_files: []