rdf 0.3.0 → 0.3.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/README +2 -0
- data/VERSION +1 -1
- data/lib/rdf/mixin/enumerable.rb +4 -1
- data/lib/rdf/model/uri.rb +4 -2
- data/lib/rdf/reader.rb +5 -4
- data/lib/rdf/version.rb +1 -1
- data/lib/rdf/writer.rb +7 -4
- metadata +5 -5
data/README
CHANGED
@@ -5,9 +5,11 @@ This is a pure-Ruby library for working with [Resource Description Framework
|
|
5
5
|
(RDF)][RDF] data.
|
6
6
|
|
7
7
|
* <http://github.com/bendiken/rdf>
|
8
|
+
* <http://blog.datagraph.org/2010/12/rdf-for-ruby>
|
8
9
|
* <http://blog.datagraph.org/2010/03/rdf-for-ruby>
|
9
10
|
* <http://blog.datagraph.org/2010/04/parsing-rdf-with-ruby>
|
10
11
|
* <http://blog.datagraph.org/2010/04/rdf-repository-howto>
|
12
|
+
* <http://semanticweb.org/wiki/Getting_data_from_the_Semantic_Web_(Ruby)>
|
11
13
|
|
12
14
|
Features
|
13
15
|
--------
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.3.
|
1
|
+
0.3.1
|
data/lib/rdf/mixin/enumerable.rb
CHANGED
@@ -607,11 +607,14 @@ module RDF
|
|
607
607
|
# ntriples = enumerable.dump(:ntriples)
|
608
608
|
#
|
609
609
|
# @param [Array<Object>] args
|
610
|
+
# if the last argument is a hash, it is passed as keyword options to
|
611
|
+
# {RDF::Writer.dump}.
|
610
612
|
# @return [String]
|
611
613
|
# @see RDF::Writer.dump
|
612
614
|
# @since 0.2.0
|
613
615
|
def dump(*args)
|
614
|
-
|
616
|
+
options = args.last.is_a?(Hash) ? args.pop : {}
|
617
|
+
RDF::Writer.for(*args).dump(self, nil, options)
|
615
618
|
end
|
616
619
|
end # Enumerable
|
617
620
|
end # RDF
|
data/lib/rdf/model/uri.rb
CHANGED
@@ -370,15 +370,17 @@ module RDF
|
|
370
370
|
vocab_uri = local_name.empty? ? self.to_s : self.to_s[0...-(local_name.length)]
|
371
371
|
Vocabulary.each do |vocab|
|
372
372
|
if vocab.to_uri == vocab_uri
|
373
|
-
|
373
|
+
prefix = vocab.equal?(RDF) ? :rdf : vocab.__prefix__
|
374
|
+
return [prefix, local_name.empty? ? nil : local_name.to_sym]
|
374
375
|
end
|
375
376
|
end
|
376
377
|
else
|
377
378
|
Vocabulary.each do |vocab|
|
378
379
|
vocab_uri = vocab.to_uri
|
379
380
|
if self.start_with?(vocab_uri)
|
381
|
+
prefix = vocab.equal?(RDF) ? :rdf : vocab.__prefix__
|
380
382
|
local_name = self.to_s[vocab_uri.length..-1]
|
381
|
-
return [
|
383
|
+
return [prefix, local_name.empty? ? nil : local_name.to_sym]
|
382
384
|
end
|
383
385
|
end
|
384
386
|
end
|
data/lib/rdf/reader.rb
CHANGED
@@ -107,7 +107,7 @@ module RDF
|
|
107
107
|
#
|
108
108
|
# @param [String, #to_s] filename
|
109
109
|
# @param [Hash{Symbol => Object}] options
|
110
|
-
# any additional options (see {RDF::Reader#initialize})
|
110
|
+
# any additional options (see {RDF::Reader#initialize} and {RDF::Format.for})
|
111
111
|
# @option options [Symbol] :format (:ntriples)
|
112
112
|
# @yield [reader]
|
113
113
|
# @yieldparam [RDF::Reader] reader
|
@@ -115,9 +115,10 @@ module RDF
|
|
115
115
|
# @raise [RDF::FormatError] if no reader found for the specified format
|
116
116
|
def self.open(filename, options = {}, &block)
|
117
117
|
Util::File.open_file(filename, options) do |file|
|
118
|
-
|
119
|
-
content_type
|
120
|
-
|
118
|
+
format_options = options.dup
|
119
|
+
format_options[:content_type] ||= file.content_type if file.respond_to?(:content_type)
|
120
|
+
format_options[:file_name] ||= filename
|
121
|
+
reader = self.for(format_options)
|
121
122
|
if reader
|
122
123
|
reader.new(file, options, &block)
|
123
124
|
else
|
data/lib/rdf/version.rb
CHANGED
data/lib/rdf/writer.rb
CHANGED
@@ -102,22 +102,25 @@ module RDF
|
|
102
102
|
end
|
103
103
|
|
104
104
|
##
|
105
|
-
# @param [
|
106
|
-
#
|
105
|
+
# @param [RDF::Enumerable, #each] data
|
106
|
+
# the graph or repository to dump
|
107
|
+
# @param [IO, File] io
|
108
|
+
# the output stream or file to write to
|
107
109
|
# @param [Hash{Symbol => Object}] options
|
110
|
+
# passed to {RDF::Writer.new} or {RDF::Writer.buffer}
|
108
111
|
# @return [void]
|
109
112
|
def self.dump(data, io = nil, options = {})
|
110
113
|
io = File.open(io, 'w') if io.is_a?(String)
|
111
114
|
method = data.respond_to?(:each_statement) ? :each_statement : :each
|
112
115
|
if io
|
113
|
-
new(io) do |writer|
|
116
|
+
new(io, options) do |writer|
|
114
117
|
data.send(method) do |statement|
|
115
118
|
writer << statement
|
116
119
|
end
|
117
120
|
writer.flush
|
118
121
|
end
|
119
122
|
else
|
120
|
-
buffer do |writer|
|
123
|
+
buffer(options) do |writer|
|
121
124
|
data.send(method) do |statement|
|
122
125
|
writer << statement
|
123
126
|
end
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 3
|
8
|
-
-
|
9
|
-
version: 0.3.
|
8
|
+
- 1
|
9
|
+
version: 0.3.1
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Arto Bendiken
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date:
|
19
|
+
date: 2011-01-13 00:00:00 +01:00
|
20
20
|
default_executable: rdf
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|
@@ -70,8 +70,8 @@ dependencies:
|
|
70
70
|
segments:
|
71
71
|
- 0
|
72
72
|
- 3
|
73
|
-
-
|
74
|
-
version: 0.3.
|
73
|
+
- 1
|
74
|
+
version: 0.3.1
|
75
75
|
type: :development
|
76
76
|
version_requirements: *id004
|
77
77
|
description: RDF.rb is a pure-Ruby library for working with Resource Description Framework (RDF) data.
|