>slower to add new nodes to a root node triples that have the new nodes as 
>subject.


is your entire graph contained in blank nodes hanging off a single subject? a 
pathological case that could be slow in any framework, (rebalancing, 
node-finding, isomorphism checks, yadda. see  
http://blog.datagraph.org/2010/03/rdf-isomorphism )

> I just want my triples printed out

simplesy way is #yield parse_as_stream.(example 
http://gitorious.org/element/element/blobs/master/ruby/W/rdf.rb#line40 and 
theres gem using FFI rather than SWIG (possibly faster, possibly not) 
http://rdf.rubyforge.org/raptor/)




to print pass triple-yield a function: 

eg resourcename.raptor{|s,p,o|
 puts"s "+s.class.to_s+" "+s.to_s+"\n"+
     "p "+p.class.to_s+" "+p.to_s+"\n"+
     "o "+o.class.to_s+" "+o.to_s}



almost surely faster using a JSON model w/o SWIG sitting between: 


  def fromStream m,*i
    send(*i) do |s,p,o|
      m[s] ||= {'uri'=>s}
      m[s][p] ||= []
      m[s][p].push o
    end; m
  end


model={}

(E 'somefile.rdf').fromStream m, :redland

(  i rarely use blank nodes, but when i do theyre just JSON objects in the 
literal position of a statement without a 'uri' field..)


for just parsing, Raptor is extremely fast, perhaps the fastest...
_______________________________________________
redland-dev mailing list
[email protected]
http://lists.librdf.org/mailman/listinfo/redland-dev

Reply via email to