- From: Dan Brickley <danbri@danbri.org>
- Date: Tue, 30 Sep 2008 15:27:22 +0200
- To: RDFa <public-rdf-in-xhtml-tf@w3.org>, Patrick.Sinclair@bbc.co.uk, tom@tommorris.org
Hello Ruby people,
I'm trying to parse the N-Triples dumps from http://lcsh.info/ in Ruby.
This was a good excuse to try the repackaged 'Rena' tools from Tom
Morris, Patrick Sinclair and friends. I downloaded a tar.gz from GitHub
and tried to make it go. http://github.com/tommorris/rena
First - I had to make some edits to rena.gemspec before I could make it
build and install a Gem package. Those edits are here:
http://pastebin.com/f4c1b3d25
Secondly, I'm trying to parse ntriples or even n3 input (assuming the
former is a subset of the latter). I get an error in
/Users/danbri/.gem/ruby/1.8/gems/rena-0.0.1/lib/rena/n3parser.rb:28:in
`initialize': undefined local variable or method `string' for
#<Rena::N3Parser:0x12b59ac> (NameError)
code is:
puts "Expected #{tf.expected_string.inspect} (#{tf.index})-
'#{string[tf.index,10].inspect}'"
If I comment out the string bit, it runs (but still fails to parse).
Input is http://svn.foaf-project.org/foaftown/2008/lcshplus/_bristol.nt
which parses fine with Redland's rapper parser, either with -i ntriples,
or -i turtle.
Help welcomed. Is this code ready to use? If someone could at least help
fix the 'string' error above it might be possible to get more
understandable error messages...
cheers,
Dan
My script is just:
#!/usr/bin/ruby
require 'rena'
include Rena
filepath='_bristol.nt'
n3_string = File.read(filepath)
parser = N3Parser.new(n3_string)
ntriples = parser.graph.to_ntriples
ntriples.gsub!(/_:bn\d+/, '_:node1')
ntriples = sort_ntriples(ntriples)
Received on Tuesday, 30 September 2008 13:27:59 UTC