rdf-sesame 0.1.0 → 0.2.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.
- data/README +45 -13
- data/VERSION +1 -1
- data/lib/rdf/sesame.rb +0 -21
- data/lib/rdf/sesame/connection.rb +6 -4
- data/lib/rdf/sesame/repository.rb +109 -55
- data/lib/rdf/sesame/server.rb +10 -10
- data/lib/rdf/sesame/version.rb +9 -6
- metadata +72 -33
data/README
CHANGED
@@ -1,32 +1,59 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
Sesame 2.0 Adapter for RDF.rb
|
2
|
+
=============================
|
3
3
|
|
4
|
-
This is an [RDF.rb]
|
5
|
-
|
6
|
-
[HTTP API](http://www.openrdf.org/doc/sesame2/system/ch08.html).
|
4
|
+
This is an [RDF.rb][] plugin that adds support for [Sesame 2.0][]-compatible
|
5
|
+
RDF repositories accessed using Sesame's [HTTP API][Sesame API].
|
7
6
|
|
8
7
|
* <http://github.com/bendiken/rdf-sesame>
|
9
8
|
|
10
|
-
### About Sesame
|
11
|
-
|
12
|
-
* <http://www.openrdf.org/>
|
13
|
-
|
14
9
|
Documentation
|
15
10
|
-------------
|
16
11
|
|
17
12
|
* {RDF::Sesame}
|
13
|
+
* {RDF::Sesame::Connection}
|
14
|
+
* {RDF::Sesame::Repository}
|
15
|
+
* {RDF::Sesame::Server}
|
16
|
+
|
17
|
+
This adapter implements the [`RDF::Repository`][RDF::Repository] interface;
|
18
|
+
refer to the relevant RDF.rb API documentation for further usage instructions.
|
19
|
+
|
20
|
+
Limitations
|
21
|
+
-----------
|
22
|
+
|
23
|
+
* This adapter does not contain any SPARQL support. To use a Sesame endpoint
|
24
|
+
with SPARQL, see the [`SPARQL::Client`](http://sparql.rubyforge.org/client/)
|
25
|
+
gem.
|
26
|
+
* This adapter is not yet optimized for RDF.rb 0.2.x's bulk-operation APIs,
|
27
|
+
meaning that statement insertions and deletions are currently performed
|
28
|
+
one by one; this may affect the performance of loading large datasets into
|
29
|
+
Sesame. This will be addressed in an upcoming version.
|
30
|
+
* This adapter is not yet optimized for RDF.rb 0.2.x's enhanced query APIs;
|
31
|
+
this may adversely affect triple pattern query performance. This
|
32
|
+
will be addressed in an upcoming version.
|
33
|
+
|
34
|
+
Caveats
|
35
|
+
-------
|
36
|
+
|
37
|
+
* Sesame rewrites blank node identifiers on inserted statements. For
|
38
|
+
example, if you supply a `_:foobar` identifier, it becomes something like
|
39
|
+
`_:node156oo6equx12769` as soon as you insert it into a Sesame repository.
|
40
|
+
This means that you can't construct and insert a statement containing a
|
41
|
+
blank node term and then expect to successfully be able check for its
|
42
|
+
existence using the `Repository#has_statement?` method. This is also the
|
43
|
+
reason that 7 specs for `RDF::Repository` currently fail with this
|
44
|
+
adapter.
|
18
45
|
|
19
46
|
Dependencies
|
20
47
|
------------
|
21
48
|
|
22
|
-
* [RDF.rb](http://
|
23
|
-
* [JSON](http://
|
49
|
+
* [RDF.rb](http://rubygems.org/gems/rdf) (>= 0.2.2)
|
50
|
+
* [JSON](http://rubygems.org/gems/json_pure) (>= 1.4.3)
|
24
51
|
|
25
52
|
Installation
|
26
53
|
------------
|
27
54
|
|
28
|
-
The recommended installation method is via RubyGems.
|
29
|
-
official release
|
55
|
+
The recommended installation method is via [RubyGems](http://rubygems.org/).
|
56
|
+
To install the latest official release of the `RDF::Sesame` gem, do:
|
30
57
|
|
31
58
|
% [sudo] gem install rdf-sesame
|
32
59
|
|
@@ -52,3 +79,8 @@ License
|
|
52
79
|
|
53
80
|
`RDF::Sesame` is free and unencumbered public domain software. For more
|
54
81
|
information, see <http://unlicense.org/> or the accompanying UNLICENSE file.
|
82
|
+
|
83
|
+
[RDF.rb]: http://rdf.rubyforge.org/
|
84
|
+
[RDF::Repository]: http://rdf.rubyforge.org/RDF/Repository.html
|
85
|
+
[Sesame 2.0]: http://www.openrdf.org/
|
86
|
+
[Sesame API]: http://www.openrdf.org/doc/sesame2/system/ch08.html
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.2.0
|
data/lib/rdf/sesame.rb
CHANGED
@@ -4,27 +4,6 @@ module RDF
|
|
4
4
|
##
|
5
5
|
# **`RDF::Sesame`** is a Sesame 2.0 adapter for RDF.rb.
|
6
6
|
#
|
7
|
-
# Dependencies
|
8
|
-
# ------------
|
9
|
-
#
|
10
|
-
# * [RDF.rb](http://gemcutter.org/gems/rdf) (>= 0.0.9)
|
11
|
-
# * [JSON](http://gemcutter.org/gems/json_pure) (>= 1.2.0)
|
12
|
-
#
|
13
|
-
# Installation
|
14
|
-
# ------------
|
15
|
-
#
|
16
|
-
# The recommended installation method is via RubyGems. To install the latest
|
17
|
-
# official release from Gemcutter, do:
|
18
|
-
#
|
19
|
-
# % [sudo] gem install rdf-sesame
|
20
|
-
#
|
21
|
-
# Documentation
|
22
|
-
# -------------
|
23
|
-
#
|
24
|
-
# * {RDF::Sesame::Connection}
|
25
|
-
# * {RDF::Sesame::Repository}
|
26
|
-
# * {RDF::Sesame::Server}
|
27
|
-
#
|
28
7
|
# @example Requiring the `RDF::Sesame` module
|
29
8
|
# require 'rdf/sesame'
|
30
9
|
#
|
@@ -21,17 +21,19 @@ module RDF::Sesame
|
|
21
21
|
# call {#close} explicitly.
|
22
22
|
#
|
23
23
|
# @example Opening a connection to a Sesame server (1)
|
24
|
-
# url = RDF::URI
|
24
|
+
# url = RDF::URI("http://localhost:8080/openrdf-sesame")
|
25
25
|
# conn = RDF::Sesame::Connection.open(url)
|
26
26
|
# ...
|
27
27
|
# conn.close
|
28
28
|
#
|
29
29
|
# @example Opening a connection to a Sesame server (2)
|
30
|
+
# url = RDF::URI("http://localhost:8080/openrdf-sesame")
|
30
31
|
# RDF::Sesame::Connection.open(url) do |conn|
|
31
32
|
# ...
|
32
33
|
# end
|
33
34
|
#
|
34
35
|
# @example Performing an HTTP GET on a Sesame server
|
36
|
+
# url = RDF::URI("http://localhost:8080/openrdf-sesame")
|
35
37
|
# RDF::Sesame::Connection.open(url) do |conn|
|
36
38
|
# conn.get("/openrdf-sesame/protocol") do |response|
|
37
39
|
# version = response.body.to_i
|
@@ -332,7 +334,7 @@ module RDF::Sesame
|
|
332
334
|
# @yieldparam [Net::HTTPResponse] response
|
333
335
|
# @return [Net::HTTPResponse]
|
334
336
|
def put(path, headers = {}, &block)
|
335
|
-
# TODO
|
337
|
+
raise NotImplementedError, "#{self.class}#put" # TODO
|
336
338
|
end
|
337
339
|
|
338
340
|
##
|
@@ -353,5 +355,5 @@ module RDF::Sesame
|
|
353
355
|
end
|
354
356
|
end
|
355
357
|
end
|
356
|
-
end
|
357
|
-
end
|
358
|
+
end # class Connection
|
359
|
+
end # module RDF::Sesame
|
@@ -18,10 +18,11 @@ module RDF::Sesame
|
|
18
18
|
# repository = server.repository(:SYSTEM)
|
19
19
|
#
|
20
20
|
# @see RDF::Sesame
|
21
|
+
# @see http://rdf.rubyforge.org/RDF/Repository.html
|
21
22
|
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html
|
22
23
|
class Repository < RDF::Repository
|
23
24
|
# @return [RDF::URI]
|
24
|
-
attr_reader
|
25
|
+
attr_reader :url
|
25
26
|
alias_method :uri, :url
|
26
27
|
|
27
28
|
# @return [String]
|
@@ -67,8 +68,8 @@ module RDF::Sesame
|
|
67
68
|
@options = {}
|
68
69
|
|
69
70
|
when Hash
|
70
|
-
raise ArgumentError
|
71
|
-
raise ArgumentError
|
71
|
+
raise ArgumentError, "missing options[:server]" unless url_or_options.has_key?(:server)
|
72
|
+
raise ArgumentError, "missing options[:id]" unless url_or_options.has_key?(:id)
|
72
73
|
@options = url_or_options.dup
|
73
74
|
@server = @options.delete(:server)
|
74
75
|
@id = @options.delete(:id)
|
@@ -76,7 +77,7 @@ module RDF::Sesame
|
|
76
77
|
@title = @options.delete(:title)
|
77
78
|
|
78
79
|
else
|
79
|
-
raise ArgumentError
|
80
|
+
raise ArgumentError, "expected String, RDF::URI or Hash, but got #{url_or_options.inspect}"
|
80
81
|
end
|
81
82
|
|
82
83
|
if block_given?
|
@@ -100,12 +101,13 @@ module RDF::Sesame
|
|
100
101
|
when RDF::Statement
|
101
102
|
writer = RDF::NTriples::Writer.new
|
102
103
|
query = {
|
103
|
-
:subj
|
104
|
-
:pred
|
105
|
-
:obj
|
104
|
+
:subj => writer.format_value(query.subject),
|
105
|
+
:pred => writer.format_value(query.predicate),
|
106
|
+
:obj => writer.format_value(query.object),
|
107
|
+
:context => query.has_context? ? writer.format_value(query.context) : 'null',
|
106
108
|
}
|
107
109
|
url.query_values = query
|
108
|
-
when Hash
|
110
|
+
when Hash
|
109
111
|
url.query_values = query unless query.empty?
|
110
112
|
end
|
111
113
|
end
|
@@ -115,80 +117,135 @@ module RDF::Sesame
|
|
115
117
|
alias_method :uri, :url
|
116
118
|
|
117
119
|
##
|
118
|
-
#
|
119
|
-
#
|
120
|
-
|
120
|
+
# @private
|
121
|
+
# @see RDF::Repository#supports?
|
122
|
+
def supports?(feature)
|
123
|
+
case feature.to_sym
|
124
|
+
when :context then true # statement contexts / named graphs
|
125
|
+
else super
|
126
|
+
end
|
127
|
+
end
|
128
|
+
|
129
|
+
##
|
130
|
+
# @private
|
131
|
+
# @see RDF::Durable#durable?
|
121
132
|
def durable?
|
122
|
-
true #
|
133
|
+
true # TODO: would need to query the SYSTEM repository for this information
|
123
134
|
end
|
124
135
|
|
125
136
|
##
|
126
|
-
#
|
127
|
-
#
|
128
|
-
# @return [Boolean]
|
137
|
+
# @private
|
138
|
+
# @see RDF::Countable#empty?
|
129
139
|
def empty?
|
130
140
|
count.zero?
|
131
141
|
end
|
132
142
|
|
133
143
|
##
|
134
|
-
#
|
135
|
-
#
|
136
|
-
# @
|
137
|
-
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html#d0e569
|
144
|
+
# @private
|
145
|
+
# @see RDF::Countable#count
|
146
|
+
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html#d0e569
|
138
147
|
def count
|
139
148
|
server.get(url(:size)) do |response|
|
140
149
|
case response
|
141
150
|
when Net::HTTPSuccess
|
142
151
|
size = response.body
|
143
152
|
size.to_i rescue 0
|
144
|
-
else
|
153
|
+
else -1 # FIXME: raise error
|
145
154
|
end
|
146
155
|
end
|
147
156
|
end
|
148
157
|
|
149
158
|
##
|
150
|
-
#
|
151
|
-
#
|
152
|
-
|
153
|
-
|
154
|
-
|
159
|
+
# @private
|
160
|
+
# @see RDF::Enumerable#has_triple?
|
161
|
+
def has_triple?(triple)
|
162
|
+
has_statement?(RDF::Statement.from(triple))
|
163
|
+
end
|
164
|
+
|
165
|
+
##
|
166
|
+
# @private
|
167
|
+
# @see RDF::Enumerable#has_quad?
|
168
|
+
def has_quad?(quad)
|
169
|
+
has_statement?(RDF::Statement.new(quad[0], quad[1], quad[2], :context => quad[3]))
|
170
|
+
end
|
171
|
+
|
172
|
+
##
|
173
|
+
# @private
|
174
|
+
# @see RDF::Enumerable#has_statement?
|
175
|
+
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html#d0e304
|
155
176
|
def has_statement?(statement)
|
156
177
|
server.get(url(:statements, statement), 'Accept' => 'text/plain') do |response|
|
157
178
|
case response
|
158
179
|
when Net::HTTPSuccess
|
159
|
-
|
160
|
-
reader.include?(statement)
|
180
|
+
!response.body.empty?
|
161
181
|
else false
|
162
182
|
end
|
163
183
|
end
|
164
184
|
end
|
165
185
|
|
166
186
|
##
|
167
|
-
#
|
168
|
-
#
|
169
|
-
# @
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
187
|
+
# @private
|
188
|
+
# @see RDF::Enumerable#each_statement
|
189
|
+
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html#d0e304
|
190
|
+
def each_statement(&block)
|
191
|
+
return enum_statement unless block_given?
|
192
|
+
|
193
|
+
[nil, *enum_context].uniq.each do |context|
|
194
|
+
ctxt = context ? RDF::NTriples.serialize(context) : 'null'
|
195
|
+
server.get(url(:statements, :context => ctxt), 'Accept' => 'text/plain') do |response|
|
196
|
+
case response
|
197
|
+
when Net::HTTPSuccess
|
198
|
+
reader = RDF::NTriples::Reader.new(response.body)
|
199
|
+
reader.each_statement do |statement|
|
200
|
+
statement.context = context
|
201
|
+
block.call(statement)
|
202
|
+
end
|
203
|
+
end
|
204
|
+
end
|
205
|
+
end
|
206
|
+
end
|
207
|
+
|
208
|
+
alias_method :each, :each_statement
|
209
|
+
|
210
|
+
##
|
211
|
+
# @private
|
212
|
+
# @see RDF::Enumerable#each_context
|
213
|
+
def each_context(&block)
|
214
|
+
return enum_context unless block_given?
|
215
|
+
|
216
|
+
require 'json' unless defined?(::JSON)
|
217
|
+
server.get(url(:contexts), Server::ACCEPT_JSON) do |response|
|
175
218
|
case response
|
176
219
|
when Net::HTTPSuccess
|
177
|
-
|
178
|
-
|
220
|
+
json = ::JSON.parse(response.body)
|
221
|
+
json['results']['bindings'].map { |binding| binding['contextID'] }.each do |context_id|
|
222
|
+
context = case context_id['type'].to_s.to_sym
|
223
|
+
when :bnode then RDF::Node.new(context_id['value'])
|
224
|
+
when :uri then RDF::URI.new(context_id['value'])
|
225
|
+
end
|
226
|
+
block.call(context) if context
|
227
|
+
end
|
179
228
|
end
|
180
229
|
end
|
181
230
|
end
|
182
231
|
|
232
|
+
protected
|
233
|
+
|
183
234
|
##
|
184
|
-
#
|
185
|
-
#
|
186
|
-
|
187
|
-
|
188
|
-
|
235
|
+
# @private
|
236
|
+
# @see RDF::Queryable#query
|
237
|
+
def query_pattern(pattern, &block)
|
238
|
+
super # TODO
|
239
|
+
end
|
240
|
+
|
241
|
+
##
|
242
|
+
# @private
|
243
|
+
# @see RDF::Mutable#insert
|
244
|
+
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html#d0e304
|
189
245
|
def insert_statement(statement)
|
190
|
-
|
191
|
-
|
246
|
+
ctxt = statement.has_context? ? RDF::NTriples.serialize(statement.context) : 'null'
|
247
|
+
data = RDF::NTriples.serialize(statement)
|
248
|
+
server.post(url(:statements, :context => ctxt), data, 'Content-Type' => 'text/plain') do |response|
|
192
249
|
case response
|
193
250
|
when Net::HTTPSuccess then true
|
194
251
|
else false
|
@@ -197,11 +254,9 @@ module RDF::Sesame
|
|
197
254
|
end
|
198
255
|
|
199
256
|
##
|
200
|
-
#
|
201
|
-
#
|
202
|
-
# @
|
203
|
-
# @return [Boolean]
|
204
|
-
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html#d0e304
|
257
|
+
# @private
|
258
|
+
# @see RDF::Mutable#delete
|
259
|
+
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html#d0e304
|
205
260
|
def delete_statement(statement)
|
206
261
|
server.delete(url(:statements, statement)) do |response|
|
207
262
|
case response
|
@@ -212,10 +267,9 @@ module RDF::Sesame
|
|
212
267
|
end
|
213
268
|
|
214
269
|
##
|
215
|
-
#
|
216
|
-
#
|
217
|
-
# @
|
218
|
-
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html#d0e304
|
270
|
+
# @private
|
271
|
+
# @see RDF::Mutable#clear
|
272
|
+
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html#d0e304
|
219
273
|
def clear_statements
|
220
274
|
server.delete(url(:statements)) do |response|
|
221
275
|
case response
|
@@ -224,5 +278,5 @@ module RDF::Sesame
|
|
224
278
|
end
|
225
279
|
end
|
226
280
|
end
|
227
|
-
end
|
228
|
-
end
|
281
|
+
end # class Repository
|
282
|
+
end # module RDF::Sesame
|
data/lib/rdf/sesame/server.rb
CHANGED
@@ -6,7 +6,7 @@ module RDF::Sesame
|
|
6
6
|
# one or more readable and/or writable RDF {Repository repositories}.
|
7
7
|
#
|
8
8
|
# @example Connecting to a Sesame server
|
9
|
-
# url = RDF::URI
|
9
|
+
# url = RDF::URI("http://localhost:8080/openrdf-sesame")
|
10
10
|
# server = RDF::Sesame::Server.new(url)
|
11
11
|
#
|
12
12
|
# @example Retrieving the server's protocol version
|
@@ -145,7 +145,7 @@ module RDF::Sesame
|
|
145
145
|
#
|
146
146
|
# @yield [repository]
|
147
147
|
# @yieldparam [Repository] repository
|
148
|
-
# @return [
|
148
|
+
# @return [Enumerator]
|
149
149
|
# @see #repository
|
150
150
|
# @see #repositories
|
151
151
|
def each_repository(&block)
|
@@ -155,9 +155,9 @@ module RDF::Sesame
|
|
155
155
|
alias_method :each, :each_repository
|
156
156
|
|
157
157
|
##
|
158
|
-
# Returns `true` if
|
158
|
+
# Returns `true` if this server has a repository identified by `id`.
|
159
159
|
#
|
160
|
-
# @param [
|
160
|
+
# @param [String] id
|
161
161
|
# @return [Boolean]
|
162
162
|
def has_repository?(id)
|
163
163
|
repositories.has_key?(id.to_s)
|
@@ -184,20 +184,20 @@ module RDF::Sesame
|
|
184
184
|
# @see #each_repository
|
185
185
|
# @see http://www.openrdf.org/doc/sesame2/system/ch08.html#d0e204
|
186
186
|
def repositories
|
187
|
-
require 'json' unless defined?(JSON)
|
187
|
+
require 'json' unless defined?(::JSON)
|
188
188
|
|
189
189
|
get(url(:repositories), ACCEPT_JSON) do |response|
|
190
190
|
case response
|
191
191
|
when Net::HTTPSuccess
|
192
|
-
json = JSON.parse(response.body)
|
192
|
+
json = ::JSON.parse(response.body)
|
193
193
|
json['results']['bindings'].inject({}) do |repositories, binding|
|
194
194
|
repository = Repository.new({
|
195
195
|
:server => self,
|
196
196
|
:uri => (uri = RDF::URI.new(binding['uri']['value'])),
|
197
197
|
:id => (id = binding['id']['value']),
|
198
198
|
:title => (title = binding['title']['value']),
|
199
|
-
:readable => binding['readable']['value'] == 'true',
|
200
|
-
:writable => binding['writable']['value'] == 'true',
|
199
|
+
:readable => binding['readable']['value'].to_s == 'true',
|
200
|
+
:writable => binding['writable']['value'].to_s == 'true',
|
201
201
|
})
|
202
202
|
repositories.merge({id => repository})
|
203
203
|
end
|
@@ -223,5 +223,5 @@ module RDF::Sesame
|
|
223
223
|
self.connection.delete(path, headers, &block)
|
224
224
|
end
|
225
225
|
end
|
226
|
-
end
|
227
|
-
end
|
226
|
+
end # class Server
|
227
|
+
end # module RDF::Sesame
|
data/lib/rdf/sesame/version.rb
CHANGED
@@ -1,19 +1,22 @@
|
|
1
|
-
module RDF module Sesame
|
1
|
+
module RDF; module Sesame
|
2
2
|
module VERSION
|
3
3
|
MAJOR = 0
|
4
|
-
MINOR =
|
4
|
+
MINOR = 2
|
5
5
|
TINY = 0
|
6
6
|
EXTRA = nil
|
7
7
|
|
8
|
-
STRING = [MAJOR, MINOR, TINY].join('.')
|
9
|
-
STRING << "-#{EXTRA}" if EXTRA
|
8
|
+
STRING = [MAJOR, MINOR, TINY, EXTRA].compact.join('.')
|
10
9
|
|
11
10
|
##
|
12
11
|
# @return [String]
|
13
|
-
def self.to_s()
|
12
|
+
def self.to_s() STRING end
|
14
13
|
|
15
14
|
##
|
16
15
|
# @return [String]
|
17
16
|
def self.to_str() STRING end
|
17
|
+
|
18
|
+
##
|
19
|
+
# @return [Array(Integer, Integer, Integer)]
|
20
|
+
def self.to_a() [MAJOR, MINOR, TINY] end
|
18
21
|
end
|
19
|
-
end end
|
22
|
+
end; end
|
metadata
CHANGED
@@ -1,7 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rdf-sesame
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 2
|
8
|
+
- 0
|
9
|
+
version: 0.2.0
|
5
10
|
platform: ruby
|
6
11
|
authors:
|
7
12
|
- Arto Bendiken
|
@@ -9,51 +14,81 @@ autorequire:
|
|
9
14
|
bindir: bin
|
10
15
|
cert_chain: []
|
11
16
|
|
12
|
-
date: 2010-
|
17
|
+
date: 2010-07-08 00:00:00 +02:00
|
13
18
|
default_executable:
|
14
19
|
dependencies:
|
15
20
|
- !ruby/object:Gem::Dependency
|
16
|
-
name:
|
17
|
-
|
18
|
-
|
19
|
-
version_requirements: !ruby/object:Gem::Requirement
|
21
|
+
name: json_pure
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
20
24
|
requirements:
|
21
|
-
- -
|
25
|
+
- - ~>
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
segments:
|
28
|
+
- 1
|
29
|
+
- 4
|
30
|
+
- 3
|
31
|
+
version: 1.4.3
|
32
|
+
type: :runtime
|
33
|
+
version_requirements: *id001
|
34
|
+
- !ruby/object:Gem::Dependency
|
35
|
+
name: rdf
|
36
|
+
prerelease: false
|
37
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - ~>
|
22
40
|
- !ruby/object:Gem::Version
|
23
|
-
|
24
|
-
|
41
|
+
segments:
|
42
|
+
- 0
|
43
|
+
- 2
|
44
|
+
- 2
|
45
|
+
version: 0.2.2
|
46
|
+
type: :runtime
|
47
|
+
version_requirements: *id002
|
25
48
|
- !ruby/object:Gem::Dependency
|
26
49
|
name: yard
|
27
|
-
|
28
|
-
|
29
|
-
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
prerelease: false
|
51
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
30
52
|
requirements:
|
31
53
|
- - ">="
|
32
54
|
- !ruby/object:Gem::Version
|
33
|
-
|
34
|
-
|
55
|
+
segments:
|
56
|
+
- 0
|
57
|
+
- 5
|
58
|
+
- 8
|
59
|
+
version: 0.5.8
|
60
|
+
type: :development
|
61
|
+
version_requirements: *id003
|
35
62
|
- !ruby/object:Gem::Dependency
|
36
|
-
name:
|
37
|
-
|
38
|
-
|
39
|
-
version_requirements: !ruby/object:Gem::Requirement
|
63
|
+
name: rspec
|
64
|
+
prerelease: false
|
65
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
40
66
|
requirements:
|
41
67
|
- - ">="
|
42
68
|
- !ruby/object:Gem::Version
|
43
|
-
|
44
|
-
|
69
|
+
segments:
|
70
|
+
- 1
|
71
|
+
- 3
|
72
|
+
- 0
|
73
|
+
version: 1.3.0
|
74
|
+
type: :development
|
75
|
+
version_requirements: *id004
|
45
76
|
- !ruby/object:Gem::Dependency
|
46
|
-
name:
|
47
|
-
|
48
|
-
|
49
|
-
version_requirements: !ruby/object:Gem::Requirement
|
77
|
+
name: rdf-spec
|
78
|
+
prerelease: false
|
79
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
50
80
|
requirements:
|
51
|
-
- -
|
81
|
+
- - ~>
|
52
82
|
- !ruby/object:Gem::Version
|
53
|
-
|
54
|
-
|
83
|
+
segments:
|
84
|
+
- 0
|
85
|
+
- 2
|
86
|
+
- 2
|
87
|
+
version: 0.2.2
|
88
|
+
type: :development
|
89
|
+
version_requirements: *id005
|
55
90
|
description: RDF.rb plugin providing a Sesame 2.0 storage adapter.
|
56
|
-
email:
|
91
|
+
email: public-rdf-ruby@w3.org
|
57
92
|
executables: []
|
58
93
|
|
59
94
|
extensions: []
|
@@ -71,7 +106,7 @@ files:
|
|
71
106
|
- lib/rdf/sesame/version.rb
|
72
107
|
- lib/rdf/sesame.rb
|
73
108
|
has_rdoc: false
|
74
|
-
homepage: http://rdf.rubyforge.org/
|
109
|
+
homepage: http://rdf.rubyforge.org/sesame/
|
75
110
|
licenses:
|
76
111
|
- Public Domain
|
77
112
|
post_install_message:
|
@@ -83,18 +118,22 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
83
118
|
requirements:
|
84
119
|
- - ">="
|
85
120
|
- !ruby/object:Gem::Version
|
86
|
-
|
87
|
-
|
121
|
+
segments:
|
122
|
+
- 1
|
123
|
+
- 8
|
124
|
+
- 1
|
125
|
+
version: 1.8.1
|
88
126
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
89
127
|
requirements:
|
90
128
|
- - ">="
|
91
129
|
- !ruby/object:Gem::Version
|
130
|
+
segments:
|
131
|
+
- 0
|
92
132
|
version: "0"
|
93
|
-
version:
|
94
133
|
requirements: []
|
95
134
|
|
96
135
|
rubyforge_project: rdf
|
97
|
-
rubygems_version: 1.3.
|
136
|
+
rubygems_version: 1.3.6
|
98
137
|
signing_key:
|
99
138
|
specification_version: 3
|
100
139
|
summary: Sesame 2.0 adapter for RDF.rb.
|