rdf-rdfxml 0.2.3 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
data/rdf-rdfxml.gemspec CHANGED
@@ -5,18 +5,17 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{rdf-rdfxml}
8
- s.version = "0.2.3"
8
+ s.version = "0.3.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Gregg Kellogg"]
12
- s.date = %q{2010-08-31}
13
- s.description = %q{ RDF::RDFXML is an RDF/XML reader and writer for Ruby using the RDF.rb library suite.
14
- }
12
+ s.date = %q{2010-12-27}
13
+ s.description = %q{RDF::RDFXML is an RDF/XML reader and writer for Ruby using the RDF.rb library suite.}
15
14
  s.email = %q{gregg@kellogg-assoc.com}
16
15
  s.extra_rdoc_files = [
17
16
  "AUTHORS",
18
17
  "CONTRIBUTORS",
19
- "History.txt",
18
+ "History.rdoc",
20
19
  "README.rdoc"
21
20
  ]
22
21
  s.files = [
@@ -24,7 +23,7 @@ Gem::Specification.new do |s|
24
23
  ".yardopts",
25
24
  "AUTHORS",
26
25
  "CONTRIBUTORS",
27
- "History.txt",
26
+ "History.rdoc",
28
27
  "README.rdoc",
29
28
  "Rakefile",
30
29
  "VERSION",
@@ -37,9 +36,6 @@ Gem::Specification.new do |s|
37
36
  "lib/rdf/rdfxml/patches/graph_properties.rb",
38
37
  "lib/rdf/rdfxml/patches/literal_hacks.rb",
39
38
  "lib/rdf/rdfxml/patches/nokogiri_hacks.rb",
40
- "lib/rdf/rdfxml/patches/qname_hacks.rb",
41
- "lib/rdf/rdfxml/patches/seq.rb",
42
- "lib/rdf/rdfxml/patches/uri_hacks.rb",
43
39
  "lib/rdf/rdfxml/reader.rb",
44
40
  "lib/rdf/rdfxml/version.rb",
45
41
  "lib/rdf/rdfxml/vocab.rb",
@@ -415,7 +411,6 @@ Gem::Specification.new do |s|
415
411
  "spec/reader_spec.rb",
416
412
  "spec/spec.opts",
417
413
  "spec/spec_helper.rb",
418
- "spec/uri_spec.rb",
419
414
  "spec/writer_spec.rb"
420
415
  ]
421
416
  s.homepage = %q{http://github.com/gkellogg/rdf-rdfxml}
@@ -431,7 +426,6 @@ Gem::Specification.new do |s|
431
426
  "spec/rdf_helper.rb",
432
427
  "spec/reader_spec.rb",
433
428
  "spec/spec_helper.rb",
434
- "spec/uri_spec.rb",
435
429
  "spec/writer_spec.rb"
436
430
  ]
437
431
 
@@ -440,25 +434,25 @@ Gem::Specification.new do |s|
440
434
  s.specification_version = 3
441
435
 
442
436
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
443
- s.add_runtime_dependency(%q<rdf>, [">= 0.2.2"])
437
+ s.add_runtime_dependency(%q<rdf>, [">= 0.3.0"])
444
438
  s.add_runtime_dependency(%q<nokogiri>, [">= 1.3.3"])
445
- s.add_development_dependency(%q<rspec>, [">= 0"])
446
- s.add_development_dependency(%q<rdf-spec>, [">= 0.2.2"])
439
+ s.add_development_dependency(%q<rspec>, [">= 2.1.0"])
440
+ s.add_development_dependency(%q<rdf-spec>, [">= 0"])
447
441
  s.add_development_dependency(%q<rdf-isomorphic>, [">= 0"])
448
442
  s.add_development_dependency(%q<yard>, [">= 0"])
449
443
  else
450
- s.add_dependency(%q<rdf>, [">= 0.2.2"])
444
+ s.add_dependency(%q<rdf>, [">= 0.3.0"])
451
445
  s.add_dependency(%q<nokogiri>, [">= 1.3.3"])
452
- s.add_dependency(%q<rspec>, [">= 0"])
453
- s.add_dependency(%q<rdf-spec>, [">= 0.2.2"])
446
+ s.add_dependency(%q<rspec>, [">= 2.1.0"])
447
+ s.add_dependency(%q<rdf-spec>, [">= 0"])
454
448
  s.add_dependency(%q<rdf-isomorphic>, [">= 0"])
455
449
  s.add_dependency(%q<yard>, [">= 0"])
456
450
  end
457
451
  else
458
- s.add_dependency(%q<rdf>, [">= 0.2.2"])
452
+ s.add_dependency(%q<rdf>, [">= 0.3.0"])
459
453
  s.add_dependency(%q<nokogiri>, [">= 1.3.3"])
460
- s.add_dependency(%q<rspec>, [">= 0"])
461
- s.add_dependency(%q<rdf-spec>, [">= 0.2.2"])
454
+ s.add_dependency(%q<rspec>, [">= 2.1.0"])
455
+ s.add_dependency(%q<rdf-spec>, [">= 0"])
462
456
  s.add_dependency(%q<rdf-isomorphic>, [">= 0"])
463
457
  s.add_dependency(%q<yard>, [">= 0"])
464
458
  end
data/script/parse CHANGED
@@ -1,22 +1,26 @@
1
- #!/usr/bin/env ruby -s
1
+ #!/usr/bin/env ruby
2
2
  require 'rubygems'
3
3
  $:.unshift(File.expand_path(File.join(File.dirname(__FILE__), "..", 'lib')))
4
4
  require 'rdf/rdfxml'
5
+ require 'rdf/n3' rescue nil
5
6
  require 'getoptlong'
7
+ require 'open-uri'
6
8
 
7
9
  def parse(input, base)
8
- puts RDF::Writer.for($format.to_sym).buffer { |writer|
9
- RDF::RDFXML::Reader.new(input, :base_uri => base, :strict => true).each do |statement|
10
+ reader_class = RDF::Reader.for($input_format.to_sym)
11
+ writer_class = RDF::Writer.for($output_format.to_sym)
12
+ raise "Reader not found for #{$input_format}" unless reader_class
13
+ raise "Writer not found for #{$output_format}" unless writer_class
14
+ puts writer_class.buffer { |writer|
15
+ reader_class.new(input, :base_uri => base, :validate => true).each do |statement|
10
16
  writer << statement
11
17
  end
12
18
  }
13
19
  end
14
20
 
15
- mode = ARGV.shift
16
- raise "Mode must be one of 'parse'" unless mode == "parse"
17
-
18
21
  $verbose = false
19
- $format = :ntriples
22
+ $output_format = :ntriples
23
+ $input_format = :rdfxml
20
24
  base_uri = "http://example.com"
21
25
  input = nil
22
26
 
@@ -25,6 +29,7 @@ opts = GetoptLong.new(
25
29
  ["--verbose", GetoptLong::NO_ARGUMENT],
26
30
  ["--quiet", GetoptLong::NO_ARGUMENT],
27
31
  ["--format", GetoptLong::REQUIRED_ARGUMENT],
32
+ ["--input-format", GetoptLong::REQUIRED_ARGUMENT],
28
33
  ["--execute", "-e", GetoptLong::REQUIRED_ARGUMENT],
29
34
  ["--uri", GetoptLong::REQUIRED_ARGUMENT]
30
35
  )
@@ -32,9 +37,10 @@ opts.each do |opt, arg|
32
37
  case opt
33
38
  when '--verbose' then $verbose = true
34
39
  when '--quiet' then $quiet = true
35
- when '--debug' then $DEBUG = true
40
+ when '--debug' then ::RDF::RDFXML::debug = true
36
41
  when '--execute' then input = arg
37
- when '--format' then $format = arg
42
+ when '--format' then $output_format = arg
43
+ when '--input-format' then $input_format = arg
38
44
  when '--uri' then base_uri = arg
39
45
  end
40
46
  end
@@ -44,6 +50,6 @@ if ARGV.empty?
44
50
  parse(StringIO.new(s), base_uri)
45
51
  else
46
52
  ARGV.each do |test_file|
47
- parse(File.open(test_file), base_uri)
53
+ parse(Kernel.open(test_file), base_uri)
48
54
  end
49
55
  end
data/script/tc CHANGED
@@ -2,38 +2,39 @@
2
2
  require 'rubygems'
3
3
  $:.unshift(File.expand_path(File.join(File.dirname(__FILE__), "..", 'lib')))
4
4
  require 'rdf/rdfxml'
5
- require 'spec/rdf_helper'
5
+ require File.expand_path(File.join(File.dirname(__FILE__), "..", 'spec', 'rdfa_helper'))
6
6
  require 'getoptlong'
7
7
 
8
8
  def run_tc(tc)
9
9
  puts "run #{tc.name}"
10
- puts RDF::Writer.for($format.to_sym).buffer { |writer|
11
- RDF::RDFXML::Reader.new(tc.input, :base_uri => tc.about, :strict => $strict).each do |statement|
10
+ puts tc.input if $verbose
11
+ puts RDF::Writer.for($output_format.to_sym).buffer { |writer|
12
+ RDF::RDFXML::Reader.new(tc.input, :base_uri => tc.about, :validate => $validate).each do |statement|
12
13
  writer << statement
13
14
  end
14
15
  }
15
16
  end
16
17
 
17
18
  $verbose = false
18
- $format = :ntriples
19
- $strict = false
19
+ $output_format = :ntriples
20
+ $validate = false
20
21
  suite = "rdfxml"
21
22
  opts = GetoptLong.new(
22
23
  ["--debug", GetoptLong::NO_ARGUMENT],
23
24
  ["--verbose", GetoptLong::NO_ARGUMENT],
24
25
  ["--quiet", GetoptLong::NO_ARGUMENT],
25
26
  ["--suite", GetoptLong::OPTIONAL_ARGUMENT],
26
- ["--strict", GetoptLong::NO_ARGUMENT],
27
+ ["--validate", GetoptLong::NO_ARGUMENT],
27
28
  ["--format", GetoptLong::REQUIRED_ARGUMENT]
28
29
  )
29
30
  opts.each do |opt, arg|
30
31
  case opt
31
32
  when '--verbose' then $verbose = true
32
33
  when '--quiet' then $quiet = true
33
- when '--debug' then $DEBUG = true
34
- when '--format' then $format = arg
34
+ when '--debug' then ::RDF::RDFXML::debug = true
35
+ when '--format' then $output_format = arg
35
36
  when '--suite' then suite = arg
36
- when '--strict' then $strict = true
37
+ when '--validate' then $validate = true
37
38
  end
38
39
  end
39
40
 
data/spec/graph_spec.rb CHANGED
@@ -1,7 +1,6 @@
1
1
  $:.unshift "."
2
2
  require File.join(File.dirname(__FILE__), 'spec_helper')
3
3
  require 'rdf/rdfxml/patches/graph_properties'
4
- require 'rdf/rdfxml/patches/seq'
5
4
 
6
5
  class EX < RDF::Vocabulary("http://example.com/"); end
7
6
 
@@ -57,19 +56,4 @@ describe RDF::Graph do
57
56
  subject.type_of(EX.a).should == []
58
57
  end
59
58
  end
60
-
61
- describe "rdf:_n sequences" do
62
- subject {
63
- g = RDF::Graph.new
64
- g << [EX.Seq, RDF.type, RDF.Seq]
65
- g << [EX.Seq, RDF._1, EX.john]
66
- g << [EX.Seq, RDF._2, EX.jane]
67
- g << [EX.Seq, RDF._3, EX.rick]
68
- g
69
- }
70
-
71
- it "should return object list" do
72
- subject.seq(EX.Seq).should == [EX.john, EX.jane, EX.rick]
73
- end
74
- end
75
59
  end
data/spec/literal_spec.rb CHANGED
@@ -1,7 +1,6 @@
1
1
  # coding: utf-8
2
2
  $:.unshift "."
3
3
  require File.join(File.dirname(__FILE__), 'spec_helper')
4
- require 'nokogiri'
5
4
 
6
5
  describe RDF::Literal do
7
6
  require 'nokogiri' rescue nil
@@ -73,7 +72,7 @@ describe RDF::Literal do
73
72
  :dc => "http://purl.org/dc/terms/",
74
73
  })
75
74
  }
76
- it "should add namespace" do subject.to_s.should == "<svg:svg xmlns:svg=\"http://www.w3.org/2000/svg\"></svg:svg>" end
75
+ it "should add namespace" do subject.to_s.should == "<svg:svg xmlns:svg=\"http://www.w3.org/2000/svg\" xmlns:dc=\"http://purl.org/dc/terms/\"></svg:svg>" end
77
76
  end
78
77
 
79
78
  describe "and language with an existing language embedded" do
@@ -91,7 +90,7 @@ describe RDF::Literal do
91
90
  describe "with a default namespace" do
92
91
  subject {
93
92
  @new.call("foo <sup>bar</sup> baz!", :datatype => RDF.XMLLiteral,
94
- :namespaces => {:__default__ => RDF::DC.to_s})
93
+ :namespaces => {"" => RDF::DC.to_s})
95
94
  }
96
95
 
97
96
  it "should add namespace" do subject.to_s.should == "foo <sup xmlns=\"http://purl.org/dc/terms/\">bar</sup> baz!" end
data/spec/rdf_helper.rb CHANGED
@@ -36,24 +36,24 @@ module RdfHelper
36
36
  pred = statement.predicate.to_s.split(/[\#\/]/).last
37
37
  obj = statement.object.is_a?(RDF::Literal) ? statement.object.value : statement.object.to_s
38
38
 
39
- puts "#{pred}: #{obj}" if $DEBUG
39
+ puts "#{pred}: #{obj}" if ::RDF::RDFXML::debug?
40
40
  if statement.predicate == RDF.type
41
41
  self.rdf_type = obj.to_s.split(/[\#\/]/).last
42
42
  #puts statement.subject.to_s
43
43
  elsif pred =~ /Document\Z/i
44
- puts "sub #{uri_prefix} in #{obj} for #{test_dir}" if $DEBUG
44
+ puts "sub #{uri_prefix} in #{obj} for #{test_dir}" if ::RDF::RDFXML::debug?
45
45
  about = obj.dup
46
46
  obj.sub!(uri_prefix, test_dir)
47
- puts " => #{obj}" if $DEBUG
47
+ puts " => #{obj}" if ::RDF::RDFXML::debug?
48
48
  self.send("#{pred}=", obj)
49
49
  if pred == "inputDocument"
50
50
  self.about ||= about
51
51
  self.name ||= statement.subject.to_s.split(/[\#\/]/).last
52
52
  end
53
53
  elsif pred == "referenceOutput"
54
- puts "referenceOutput: #{obj}" if $DEBUG
54
+ puts "referenceOutput: #{obj}" if ::RDF::RDFXML::debug?
55
55
  outputDocument = obj.sub(uri_prefix, test_dir)
56
- puts "referenceOutput: " + self.send(pred) if $DEBUG
56
+ puts "referenceOutput: " + self.send(pred) if ::RDF::RDFXML::debug?
57
57
  elsif self.respond_to?("#{pred}=")
58
58
  self.send("#{pred}=", obj)
59
59
  end
@@ -96,7 +96,7 @@ module RdfHelper
96
96
  return unless output
97
97
 
98
98
  output_graph = RDF::Graph.load(self.outputDocument)
99
- puts "result: #{CGI.escapeHTML(graph.to_ntriples)}" if $DEBUG
99
+ puts "result: #{CGI.escapeHTML(graph.to_ntriples)}" if ::RDF::RDFXML::debug?
100
100
  graph.should Matchers::be_equivalent_graph(output_graph, self)
101
101
  end
102
102
 
data/spec/reader_spec.rb CHANGED
@@ -84,7 +84,7 @@ EOF
84
84
  it "should recognise and create single triple for empty non-RDF root" do
85
85
  sampledoc = %(<?xml version="1.0" ?>
86
86
  <NotRDF />)
87
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
87
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
88
88
  graph.size.should == 1
89
89
  statement = graph.statements.first
90
90
  statement.subject.class.should == RDF::Node
@@ -109,7 +109,7 @@ EOF
109
109
  </rdf:RDF>
110
110
  </GenericXML>
111
111
  EOF
112
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
112
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
113
113
  objects = graph.statements.map {|s| s.object.value}.sort
114
114
  objects.should == ["Bar", "Foo"]
115
115
  end
@@ -141,7 +141,7 @@ xmlns:ex="http://www.example.org/" xml:lang="en" xml:base="http://www.example.or
141
141
  </rdf:RDF>
142
142
  EOF
143
143
 
144
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
144
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
145
145
  #puts @debug
146
146
  graph.size.should == 10
147
147
  # print graph.to_ntriples
@@ -160,7 +160,7 @@ EOF
160
160
  </rdf:Bag>
161
161
  </rdf:RDF>
162
162
  EOF
163
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
163
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
164
164
  graph.predicates.map(&:to_s).should include("http://www.w3.org/1999/02/22-rdf-syntax-ns#_1", "http://www.w3.org/1999/02/22-rdf-syntax-ns#_2")
165
165
  end
166
166
  end
@@ -185,7 +185,7 @@ EOF
185
185
  EOF
186
186
 
187
187
  lambda do
188
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
188
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
189
189
  end.should raise_error(RDF::ReaderError, /Obsolete attribute .*aboutEach/)
190
190
  end
191
191
 
@@ -208,7 +208,7 @@ EOF
208
208
  EOF
209
209
 
210
210
  lambda do
211
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
211
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
212
212
  end.should raise_error(RDF::ReaderError, /Obsolete attribute .*aboutEachPrefix/)
213
213
  end
214
214
 
@@ -221,7 +221,7 @@ EOF
221
221
  EOF
222
222
 
223
223
  lambda do
224
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
224
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
225
225
  end.should raise_error(RDF::ReaderError, /ID addtribute '.*' must be a NCName/)
226
226
  end
227
227
 
@@ -237,7 +237,7 @@ EOF
237
237
  EOF
238
238
 
239
239
  lambda do
240
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
240
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
241
241
  end.should raise_error(RDF::ReaderError, /ID addtribute '.*' must be a NCName/)
242
242
  end
243
243
 
@@ -251,7 +251,7 @@ EOF
251
251
  EOF
252
252
 
253
253
  lambda do
254
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
254
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
255
255
  end.should raise_error(RDF::ReaderError, "ID addtribute 'a/b' must be a NCName")
256
256
  end
257
257
 
@@ -264,7 +264,7 @@ EOF
264
264
  EOF
265
265
 
266
266
  lambda do
267
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
267
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
268
268
  puts @debug
269
269
  end.should raise_error(RDF::ReaderError, /Obsolete attribute .*bagID/)
270
270
  end
@@ -291,7 +291,7 @@ EOF
291
291
  <http://example.org/triples/#triple1> <http://www.w3.org/1999/02/22-rdf-syntax-ns#object> \"blah\" .
292
292
  EOF
293
293
 
294
- graph = parse(sampledoc, :base_uri => "http://example.com", :strict => true)
294
+ graph = parse(sampledoc, :base_uri => "http://example.com", :validate => true)
295
295
  graph.should be_equivalent_graph(triples, :about => "http://example.com/", :trace => @debug)
296
296
  end
297
297
  end
@@ -299,7 +299,7 @@ EOF
299
299
  context "parsing rdf files" do
300
300
  def test_file(filepath, uri)
301
301
  rdf_string = File.read(filepath)
302
- graph = parse(rdf_string, :base_uri => uri, :strict => true)
302
+ graph = parse(rdf_string, :base_uri => uri, :validate => true)
303
303
 
304
304
  nt_string = File.read(filepath.sub('.rdf', '.nt'))
305
305
  nt_graph = RDF::Graph.new
@@ -381,7 +381,7 @@ EOF
381
381
  EOF
382
382
  uri = "http://www.w3.org/2000/10/rdf-tests/rdfcore/xmlbase/Manifest.rdf#test001"
383
383
 
384
- graph = parse(sampledoc, :base_uri => uri, :strict => true)
384
+ graph = parse(sampledoc, :base_uri => uri, :validate => true)
385
385
  graph.should be_equivalent_graph(triples, :about => uri, :trace => @debug)
386
386
  end
387
387
 
@@ -398,14 +398,14 @@ EOF
398
398
  g = RDF::Graph.new
399
399
  @reader.new(rdf_string,
400
400
  :base_uri => t.about,
401
- :strict => true,
401
+ :validate => false,
402
402
  :debug => t.debug).each do |statement|
403
403
  g << statement
404
404
  end
405
405
  g
406
406
  end
407
- rescue Spec::Expectations::ExpectationNotMetError => e
408
- if t.inputDocument =~ %r(rdfms-xml-literal-namespaces/test001.rdf)
407
+ rescue RSpec::Expectations::ExpectationNotMetError => e
408
+ if t.inputDocument =~ %r(xml-literal|xml-canon)
409
409
  pending("XMLLiteral canonicalization not implemented yet")
410
410
  else
411
411
  raise
@@ -426,7 +426,7 @@ EOF
426
426
  g = RDF::Graph.new
427
427
  @reader.new(rdf_string,
428
428
  :base_uri => t.about,
429
- :strict => true).each do |statement|
429
+ :validate => true).each do |statement|
430
430
  g << statement
431
431
  end
432
432
  g.should be_empty
data/spec/spec_helper.rb CHANGED
@@ -3,12 +3,13 @@ $:.unshift(File.join(File.dirname(__FILE__), '..', '..', 'rdf-n3', 'lib'))
3
3
  $:.unshift File.dirname(__FILE__)
4
4
 
5
5
  require 'rubygems'
6
- require 'spec'
6
+ require 'rspec'
7
7
  require 'matchers'
8
8
  require 'bigdecimal' # XXX Remove Me
9
9
  require 'rdf/rdfxml'
10
10
  require 'rdf/ntriples'
11
11
  require 'rdf/spec'
12
+ require 'rdf/spec/matchers'
12
13
  require 'rdf/isomorphic'
13
14
 
14
15
  include Matchers
@@ -28,8 +29,14 @@ module RDF
28
29
  end
29
30
  end
30
31
 
31
- Spec::Runner.configure do |config|
32
- config.include(RDF::Spec::Matchers)
32
+ ::RSpec.configure do |c|
33
+ c.filter_run :focus => true
34
+ c.run_all_when_everything_filtered = true
35
+ c.exclusion_filter = {
36
+ :ruby => lambda { |version| !(RUBY_VERSION.to_s =~ /^#{version.to_s}/) },
37
+ }
38
+ c.include(Matchers)
39
+ c.include(RDF::Spec::Matchers)
33
40
  end
34
41
 
35
42
  # Heuristically detect the input stream
@@ -45,7 +52,7 @@ def detect_format(stream)
45
52
  case string
46
53
  when /<\w+:RDF/ then RDF::RDFXML::Reader
47
54
  when /<RDF/ then RDF::RDFXML::Reader
48
- when /<html/i then RDF::RDFa::Reader
55
+ #when /<html/i then RDF::RDFa::Reader
49
56
  when /@prefix/i then RDF::N3::Reader
50
57
  else RDF::NTriples::Reader
51
58
  end