次はRubyRDFです.特徴は以下の通りです.
- Store: Memory, Sesami
- Query: 独自の構文
特定のフォーマットの入出力には対応しておらず,メモリ上(またはSesami)でグラフを作り,それに対して独自のクエリを投げられるだけのようです.また,残念ながら開発が止まっており,かつRuby1.8.xでしか動きません.Ruby1.9.1では駄目でした.メリットが何もないので少し試しただけで止めました.
使い方
gemから入れます.
$ gem install rubyrdf
とりあえず試すには以下のコード(ほぼサンプルのまま)を入れれば良いです.
#!/usr/bin/ruby
require 'rubygems'
require 'rubyrdf'
RDF::Namespace.register(:dc, "http://purl.org/dc/elements/1.1/")
g = RDF::Graph::Memory.new
g.add(RDF::UriNode.new("http://paul.stadig.name/"), DC::author,
g.new_blank_node("test"))
q = RDF::Query.new
q.select(:x, :y).where(:x, DC::author, :y)
result = g.execute(q)
result.bindings.each do |b|
puts "x = #{b[:x]}"
puts "y = #{b[:y]}"
end