Skip to content

Instantly share code, notes, and snippets.

@sandsfish
Created December 18, 2012 21:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sandsfish/4332227 to your computer and use it in GitHub Desktop.
Save sandsfish/4332227 to your computer and use it in GitHub Desktop.
RDF.rb transaction delete failing with gems/rdf-0.3.11/lib/rdf/mixin/mutable.rb:124:in `delete': undefined method `query' for #<RDF::Transaction:0x1e2bde(graph: nil, deletes: 0, inserts: 0)> (NoMethodError)
#!/Users/sands/.rvm/rubies/ruby-1.8.7-p371-i386/bin/ruby
require 'rubygems'
require 'rdf'
require 'rdf/ntriples'
include RDF
repository = RDF::Repository.load("http://rdf.rubyforge.org/doap.nt")
# reports correct predicate URI...
# DOAP.name: http://usefulinc.com/ns/doap#name
puts "DOAP.name: #{DOAP.name}"
# reports triple present:
# <http://rubygems.org/gems/rdf> <http://usefulinc.com/ns/doap#name> "RDF.rb" .
puts RDF::Writer.for(:ntriples).dump(repository)
# Delete one statement and insert another, atomically:
repository.transaction do |tx|
subject2 = RDF::URI('http://rubygems.org/gems/rdf')
tx.delete [subject2, DOAP.documenter, nil]
tx.insert [subject2, DOAP.name, "RDF.rb 0.3.0"]
end
@sandsfish
Copy link
Author

Error detail:

/Users/sands/.rvm/gems/ruby-1.8.7-p371-i386@rdf/gems/rdf-0.3.11/lib/rdf/mixin/mutable.rb:124:in delete': undefined methodquery' for #<RDF::Transaction:0x1e2bde(graph: nil, deletes: 0, inserts: 0)> (NoMethodError)
from /Users/sands/.rvm/gems/ruby-1.8.7-p371-i386@rdf/gems/rdf-0.3.11/lib/rdf/mixin/mutable.rb:116:in map!' from /Users/sands/.rvm/gems/ruby-1.8.7-p371-i386@rdf/gems/rdf-0.3.11/lib/rdf/mixin/mutable.rb:116:indelete'
from ./try-tx.rb:21
from /Users/sands/.rvm/gems/ruby-1.8.7-p371-i386@rdf/gems/rdf-0.3.11/lib/rdf/repository.rb:154:in call' from /Users/sands/.rvm/gems/ruby-1.8.7-p371-i386@rdf/gems/rdf-0.3.11/lib/rdf/repository.rb:154:intransaction'
from ./try-tx.rb:18

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment